@carlonicora/nextjs-jsonapi 6.18.0 → 6.19.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 (32) hide show
  1. package/dist/{BlockNoteEditor-KSOVYIOL.mjs → BlockNoteEditor-5HSL74IX.mjs} +2 -2
  2. package/dist/{BlockNoteEditor-HHTAZKRO.js → BlockNoteEditor-6RZXGMSD.js} +9 -9
  3. package/dist/{BlockNoteEditor-HHTAZKRO.js.map → BlockNoteEditor-6RZXGMSD.js.map} +1 -1
  4. package/dist/billing/index.js +378 -378
  5. package/dist/billing/index.mjs +1 -1
  6. package/dist/{chunk-B6WMZXRY.js → chunk-B4ZH2FOC.js} +343 -307
  7. package/dist/chunk-B4ZH2FOC.js.map +1 -0
  8. package/dist/{chunk-MBLF236G.mjs → chunk-HEDHJAKT.mjs} +43 -7
  9. package/dist/chunk-HEDHJAKT.mjs.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 +7 -1
  13. package/dist/components/index.d.ts +7 -1
  14. package/dist/components/index.js +2 -2
  15. package/dist/components/index.mjs +1 -1
  16. package/dist/contexts/index.js +2 -2
  17. package/dist/contexts/index.mjs +1 -1
  18. package/dist/email-automations/index.js +78 -78
  19. package/dist/email-automations/index.mjs +1 -1
  20. package/dist/features/analytics/index.js +96 -96
  21. package/dist/features/analytics/index.mjs +1 -1
  22. package/dist/features/blog/index.js +93 -93
  23. package/dist/features/blog/index.mjs +1 -1
  24. package/dist/features/help/index.js +31 -31
  25. package/dist/features/help/index.mjs +1 -1
  26. package/dist/features/tokenusage/index.js +102 -102
  27. package/dist/features/tokenusage/index.mjs +1 -1
  28. package/package.json +1 -1
  29. package/src/components/forms/FormDateTime.tsx +55 -3
  30. package/dist/chunk-B6WMZXRY.js.map +0 -1
  31. package/dist/chunk-MBLF236G.mjs.map +0 -1
  32. /package/dist/{BlockNoteEditor-KSOVYIOL.mjs.map → BlockNoteEditor-5HSL74IX.mjs.map} +0 -0
@@ -10867,7 +10867,7 @@ FileInput.displayName = "FileInput";
10867
10867
  var _dynamic = require('next/dynamic'); var _dynamic2 = _interopRequireDefault(_dynamic);
10868
10868
 
10869
10869
 
10870
- var BlockNoteEditor = _dynamic2.default.call(void 0, () => Promise.resolve().then(() => _interopRequireWildcard(require("./BlockNoteEditor-HHTAZKRO.js"))), {
10870
+ var BlockNoteEditor = _dynamic2.default.call(void 0, () => Promise.resolve().then(() => _interopRequireWildcard(require("./BlockNoteEditor-6RZXGMSD.js"))), {
10871
10871
  ssr: false
10872
10872
  });
10873
10873
  var BlockNoteEditorContainer = React2.default.memo(/* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, function EditorContainer(props) {
@@ -11153,6 +11153,12 @@ _chunk7QVYU63Ejs.__name.call(void 0, FormDate, "FormDate");
11153
11153
 
11154
11154
 
11155
11155
 
11156
+ function snapToFiveMinutes(date) {
11157
+ const snapped = new Date(date);
11158
+ snapped.setMinutes(Math.round(snapped.getMinutes() / 5) * 5, 0, 0);
11159
+ return snapped;
11160
+ }
11161
+ _chunk7QVYU63Ejs.__name.call(void 0, snapToFiveMinutes, "snapToFiveMinutes");
11156
11162
  function FormDateTime({
11157
11163
  form,
11158
11164
  id,
@@ -11163,7 +11169,9 @@ function FormDateTime({
11163
11169
  defaultMonth,
11164
11170
  placeholder,
11165
11171
  isRequired,
11166
- description
11172
+ description,
11173
+ reference,
11174
+ markedDate
11167
11175
  }) {
11168
11176
  const [open, setOpen] = _react.useState.call(void 0, false);
11169
11177
  const t = _chunkA7Y5YW7Qjs.useI18nTranslations.call(void 0, );
@@ -11171,7 +11179,7 @@ function FormDateTime({
11171
11179
  const dateFnsLocale = _chunkA7Y5YW7Qjs.useI18nDateFnsLocale.call(void 0, );
11172
11180
  const [displayMonth, setDisplayMonth] = _react.useState.call(void 0, () => {
11173
11181
  const currentValue = form.getValues(id);
11174
- return currentValue || defaultMonth || /* @__PURE__ */ new Date();
11182
+ return currentValue || defaultMonth || _optionalChain([reference, 'optionalAccess', _295 => _295.date]) || /* @__PURE__ */ new Date();
11175
11183
  });
11176
11184
  const dateTimeFormatter = _react.useMemo.call(void 0,
11177
11185
  () => new Intl.DateTimeFormat(locale, {
@@ -11185,8 +11193,17 @@ function FormDateTime({
11185
11193
  [locale]
11186
11194
  );
11187
11195
  const formatDateTime = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (date) => dateTimeFormatter.format(date), "formatDateTime");
11188
- const [selectedHours, setSelectedHours] = _react.useState.call(void 0, (/* @__PURE__ */ new Date()).getHours());
11189
- const [selectedMinutes, setSelectedMinutes] = _react.useState.call(void 0, roundToNearestFiveMinutes((/* @__PURE__ */ new Date()).getMinutes()));
11196
+ const initialTime = reference ? snapToFiveMinutes(reference.date) : /* @__PURE__ */ new Date();
11197
+ const [selectedHours, setSelectedHours] = _react.useState.call(void 0, initialTime.getHours());
11198
+ const [selectedMinutes, setSelectedMinutes] = _react.useState.call(void 0, roundToNearestFiveMinutes(initialTime.getMinutes()));
11199
+ const dayModifiers = {
11200
+ ...reference ? { reference: reference.date } : {},
11201
+ ...markedDate ? { marked: markedDate } : {}
11202
+ };
11203
+ const dayModifiersClassNames = {
11204
+ reference: "rounded-(--cell-radius) ring-1 ring-primary ring-offset-1 ring-offset-background",
11205
+ marked: "[&>button]:underline [&>button]:decoration-2 [&>button]:underline-offset-4"
11206
+ };
11190
11207
  const hoursOptions = Array.from({ length: 24 }, (_, i) => {
11191
11208
  const hour = i;
11192
11209
  return {
@@ -11207,6 +11224,15 @@ function FormDateTime({
11207
11224
  return Math.round(minutes / 5) * 5 % 60;
11208
11225
  }
11209
11226
  _chunk7QVYU63Ejs.__name.call(void 0, roundToNearestFiveMinutes, "roundToNearestFiveMinutes");
11227
+ const handleUseReference = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
11228
+ if (!reference) return;
11229
+ const referenceDate = snapToFiveMinutes(reference.date);
11230
+ form.setValue(id, referenceDate);
11231
+ if (onChange) onChange(referenceDate);
11232
+ setDisplayMonth(referenceDate);
11233
+ setSelectedHours(referenceDate.getHours());
11234
+ setSelectedMinutes(referenceDate.getMinutes());
11235
+ }, "handleUseReference");
11210
11236
  const handleTimeChange = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (hours, minutes) => {
11211
11237
  const currentDate = form.getValues(id);
11212
11238
  if (currentDate) {
@@ -11275,9 +11301,19 @@ function FormDateTime({
11275
11301
  locale: dateFnsLocale,
11276
11302
  weekStartsOn: 1,
11277
11303
  startMonth: new Date(1900, 0),
11278
- endMonth: new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 11)
11304
+ endMonth: new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 11),
11305
+ modifiers: dayModifiers,
11306
+ modifiersClassNames: dayModifiersClassNames
11279
11307
  }
11280
11308
  ),
11309
+ _optionalChain([reference, 'optionalAccess', _296 => _296.label]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-row items-center justify-between gap-x-4 border-t pt-4", children: [
11310
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-muted-foreground text-sm", children: [
11311
+ reference.label,
11312
+ ": ",
11313
+ formatDateTime(reference.date)
11314
+ ] }),
11315
+ reference.actionLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Button, { type: "button", variant: "outline", size: "sm", onClick: handleUseReference, children: reference.actionLabel })
11316
+ ] }),
11281
11317
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-row items-end justify-center space-x-4", children: [
11282
11318
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col space-y-2", children: [
11283
11319
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { htmlFor: "hours-select", children: t(`common.hours`) }),
@@ -11620,11 +11656,11 @@ function FormPlaceAutocomplete({
11620
11656
  const data = await response.json();
11621
11657
  if (data.suggestions) {
11622
11658
  const formattedSuggestions = data.suggestions.map((suggestion) => ({
11623
- place_id: _optionalChain([suggestion, 'access', _295 => _295.placePrediction, 'optionalAccess', _296 => _296.placeId]) || "",
11624
- description: _optionalChain([suggestion, 'access', _297 => _297.placePrediction, 'optionalAccess', _298 => _298.text, 'optionalAccess', _299 => _299.text]) || "",
11659
+ place_id: _optionalChain([suggestion, 'access', _297 => _297.placePrediction, 'optionalAccess', _298 => _298.placeId]) || "",
11660
+ description: _optionalChain([suggestion, 'access', _299 => _299.placePrediction, 'optionalAccess', _300 => _300.text, 'optionalAccess', _301 => _301.text]) || "",
11625
11661
  structured_formatting: {
11626
- main_text: _optionalChain([suggestion, 'access', _300 => _300.placePrediction, 'optionalAccess', _301 => _301.structuredFormat, 'optionalAccess', _302 => _302.mainText, 'optionalAccess', _303 => _303.text]) || "",
11627
- secondary_text: _optionalChain([suggestion, 'access', _304 => _304.placePrediction, 'optionalAccess', _305 => _305.structuredFormat, 'optionalAccess', _306 => _306.secondaryText, 'optionalAccess', _307 => _307.text]) || ""
11662
+ main_text: _optionalChain([suggestion, 'access', _302 => _302.placePrediction, 'optionalAccess', _303 => _303.structuredFormat, 'optionalAccess', _304 => _304.mainText, 'optionalAccess', _305 => _305.text]) || "",
11663
+ secondary_text: _optionalChain([suggestion, 'access', _306 => _306.placePrediction, 'optionalAccess', _307 => _307.structuredFormat, 'optionalAccess', _308 => _308.secondaryText, 'optionalAccess', _309 => _309.text]) || ""
11628
11664
  }
11629
11665
  }));
11630
11666
  setSuggestions(formattedSuggestions);
@@ -11771,8 +11807,8 @@ function FormPlaceAutocomplete({
11771
11807
  className: "hover:bg-muted cursor-pointer px-3 py-2 text-sm",
11772
11808
  onClick: () => handleSuggestionSelect(suggestion),
11773
11809
  children: [
11774
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "font-medium", children: _optionalChain([suggestion, 'access', _308 => _308.structured_formatting, 'optionalAccess', _309 => _309.main_text]) }),
11775
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-muted-foreground", children: _optionalChain([suggestion, 'access', _310 => _310.structured_formatting, 'optionalAccess', _311 => _311.secondary_text]) })
11810
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "font-medium", children: _optionalChain([suggestion, 'access', _310 => _310.structured_formatting, 'optionalAccess', _311 => _311.main_text]) }),
11811
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-muted-foreground", children: _optionalChain([suggestion, 'access', _312 => _312.structured_formatting, 'optionalAccess', _313 => _313.secondary_text]) })
11776
11812
  ]
11777
11813
  },
11778
11814
  suggestion.place_id || index
@@ -11820,7 +11856,7 @@ function FormSelect({
11820
11856
  disabled,
11821
11857
  "data-testid": testId,
11822
11858
  children: [
11823
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, { children: field.value ? _optionalChain([values, 'access', _312 => _312.find, 'call', _313 => _313((v) => v.id === field.value), 'optionalAccess', _314 => _314.text]) : _nullishCoalesce(placeholder, () => ( "")) }) }),
11859
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectValue, { children: field.value ? _optionalChain([values, 'access', _314 => _314.find, 'call', _315 => _315((v) => v.id === field.value), 'optionalAccess', _316 => _316.text]) : _nullishCoalesce(placeholder, () => ( "")) }) }),
11824
11860
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SelectContent, { children: [
11825
11861
  allowEmpty && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: EMPTY_VALUE, className: "text-muted-foreground", children: _nullishCoalesce(placeholder, () => ( "")) }),
11826
11862
  values.map((type) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: type.id, children: type.text }, type.id))
@@ -12000,7 +12036,7 @@ var FilePreviewItem = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ fi
12000
12036
  setObjectUrl(null);
12001
12037
  }, [file]);
12002
12038
  const getFileIcon = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
12003
- const extension = _optionalChain([file, 'access', _315 => _315.name, 'access', _316 => _316.split, 'call', _317 => _317("."), 'access', _318 => _318.pop, 'call', _319 => _319(), 'optionalAccess', _320 => _320.toLowerCase, 'call', _321 => _321()]);
12039
+ const extension = _optionalChain([file, 'access', _317 => _317.name, 'access', _318 => _318.split, 'call', _319 => _319("."), 'access', _320 => _320.pop, 'call', _321 => _321(), 'optionalAccess', _322 => _322.toLowerCase, 'call', _323 => _323()]);
12004
12040
  if (file.type.startsWith("image/")) {
12005
12041
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.FileImageIcon, { className: "text-muted h-10 w-10 sm:h-12 sm:w-12" });
12006
12042
  }
@@ -12050,7 +12086,7 @@ function UserAvatar({ user, className, showFull, showLink, showTooltip = true })
12050
12086
  }, "getInitials");
12051
12087
  const getAvatar = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
12052
12088
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "*:ring-border *:ring-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Avatar, { className: `h-6 w-6 ${className}`, children: [
12053
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarImage, { className: "object-cover", src: _optionalChain([user, 'optionalAccess', _322 => _322.avatar]) }),
12089
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarImage, { className: "object-cover", src: _optionalChain([user, 'optionalAccess', _324 => _324.avatar]) }),
12054
12090
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarFallback, { children: getInitials3(user.name) })
12055
12091
  ] }) });
12056
12092
  }, "getAvatar");
@@ -12256,7 +12292,7 @@ var useUserTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0,
12256
12292
  })
12257
12293
  };
12258
12294
  const columns = _react.useMemo.call(void 0, () => {
12259
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _323 => _323[field], 'optionalCall', _324 => _324()])).filter((col) => col !== void 0);
12295
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _325 => _325[field], 'optionalCall', _326 => _326()])).filter((col) => col !== void 0);
12260
12296
  }, [params.fields, fieldColumnMap, t, generateUrl]);
12261
12297
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
12262
12298
  }, "useUserTableStructure");
@@ -12371,10 +12407,10 @@ function UserSelector({ id, form, label, placeholder, onChange, isRequired = fal
12371
12407
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-row items-center justify-between", children: [
12372
12408
  /* @__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.jsxs.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: [
12373
12409
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "*:ring-border *:ring-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Avatar, { className: `me-2 h-4 w-4`, children: [
12374
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarImage, { src: _optionalChain([field, 'access', _325 => _325.value, 'optionalAccess', _326 => _326.avatar]) }),
12375
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarFallback, { children: _optionalChain([field, 'access', _327 => _327.value, 'optionalAccess', _328 => _328.name]) ? _optionalChain([field, 'access', _329 => _329.value, 'optionalAccess', _330 => _330.name, 'access', _331 => _331.split, 'call', _332 => _332(" "), 'access', _333 => _333.map, 'call', _334 => _334((name) => name.charAt(0).toUpperCase())]) : "X" })
12410
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarImage, { src: _optionalChain([field, 'access', _327 => _327.value, 'optionalAccess', _328 => _328.avatar]) }),
12411
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarFallback, { children: _optionalChain([field, 'access', _329 => _329.value, 'optionalAccess', _330 => _330.name]) ? _optionalChain([field, 'access', _331 => _331.value, 'optionalAccess', _332 => _332.name, 'access', _333 => _333.split, 'call', _334 => _334(" "), 'access', _335 => _335.map, 'call', _336 => _336((name) => name.charAt(0).toUpperCase())]) : "X" })
12376
12412
  ] }) }),
12377
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _nullishCoalesce(_optionalChain([field, 'access', _335 => _335.value, 'optionalAccess', _336 => _336.name]), () => ( "")) })
12413
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _nullishCoalesce(_optionalChain([field, 'access', _337 => _337.value, 'optionalAccess', _338 => _338.name]), () => ( "")) })
12378
12414
  ] }) : /* @__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(`ui.search.placeholder`, { type: t(`entities.users`, { count: 1 }) }))) }) }) }),
12379
12415
  field.value && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12380
12416
  _lucidereact.CircleX,
@@ -12592,7 +12628,7 @@ function UserContent({ user }) {
12592
12628
  const updated = await _chunkOO2DBP6Ljs.UserService.patchAvatar({ id: user.id, avatar: imageKey });
12593
12629
  setUser(updated);
12594
12630
  },
12595
- companyId: _nullishCoalesce(_optionalChain([company, 'optionalAccess', _337 => _337.id]), () => ( "")),
12631
+ companyId: _nullishCoalesce(_optionalChain([company, 'optionalAccess', _339 => _339.id]), () => ( "")),
12596
12632
  className: "h-24 w-24",
12597
12633
  fallbackClassName: "text-2xl"
12598
12634
  }
@@ -12748,7 +12784,7 @@ function CompanyUsersList({ isDeleted, fullWidth }) {
12748
12784
  const data = useDataListRetriever({
12749
12785
  ready: !!company,
12750
12786
  retriever: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => _chunkOO2DBP6Ljs.UserService.findAllUsers(params), "retriever"),
12751
- retrieverParams: { companyId: _optionalChain([company, 'optionalAccess', _338 => _338.id]), isDeleted },
12787
+ retrieverParams: { companyId: _optionalChain([company, 'optionalAccess', _340 => _340.id]), isDeleted },
12752
12788
  module: _chunkA7Y5YW7Qjs.Modules.User
12753
12789
  });
12754
12790
  _react.useEffect.call(void 0, () => {
@@ -12856,11 +12892,11 @@ function UserListInAdd({ data, existingUsers, setSelectedUser, setLevelOpen }) {
12856
12892
  value: user.id,
12857
12893
  onClick: (_e) => {
12858
12894
  setSelectedUser(user);
12859
- _optionalChain([setLevelOpen, 'optionalCall', _339 => _339(true)]);
12895
+ _optionalChain([setLevelOpen, 'optionalCall', _341 => _341(true)]);
12860
12896
  },
12861
12897
  onSelect: (_e) => {
12862
12898
  setSelectedUser(user);
12863
- _optionalChain([setLevelOpen, 'optionalCall', _340 => _340(true)]);
12899
+ _optionalChain([setLevelOpen, 'optionalCall', _342 => _342(true)]);
12864
12900
  },
12865
12901
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-row items-center justify-between px-4 py-1", children: [
12866
12902
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UserAvatar, { user }),
@@ -13001,7 +13037,7 @@ function CompanyContent({ company, actions }) {
13001
13037
  company.legal_address
13002
13038
  ] }),
13003
13039
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-y-1", children: [
13004
- _optionalChain([company, 'access', _341 => _341.configurations, 'optionalAccess', _342 => _342.country]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground text-sm", children: [
13040
+ _optionalChain([company, 'access', _343 => _343.configurations, 'optionalAccess', _344 => _344.country]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground text-sm", children: [
13005
13041
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "font-medium", children: [
13006
13042
  t("features.configuration.country"),
13007
13043
  ":"
@@ -13009,7 +13045,7 @@ function CompanyContent({ company, actions }) {
13009
13045
  " ",
13010
13046
  company.configurations.country
13011
13047
  ] }),
13012
- _optionalChain([company, 'access', _343 => _343.configurations, 'optionalAccess', _344 => _344.currency]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground text-sm", children: [
13048
+ _optionalChain([company, 'access', _345 => _345.configurations, 'optionalAccess', _346 => _346.currency]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground text-sm", children: [
13013
13049
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "font-medium", children: [
13014
13050
  t("features.configuration.currency"),
13015
13051
  ":"
@@ -13255,7 +13291,7 @@ function CompanyEditorInternal({
13255
13291
  _chunk7QVYU63Ejs.__name.call(void 0, fetchFeatures, "fetchFeatures");
13256
13292
  fetchFeatures();
13257
13293
  }
13258
- _optionalChain([onDialogOpenChange, 'optionalCall', _345 => _345(open)]);
13294
+ _optionalChain([onDialogOpenChange, 'optionalCall', _347 => _347(open)]);
13259
13295
  },
13260
13296
  [features.length, canAccessFeatures, hasRole, onDialogOpenChange]
13261
13297
  );
@@ -13300,12 +13336,12 @@ function CompanyEditorInternal({
13300
13336
  );
13301
13337
  const getDefaultValues = _react.useCallback.call(void 0, () => {
13302
13338
  return {
13303
- id: _optionalChain([company, 'optionalAccess', _346 => _346.id]) || _uuid.v4.call(void 0, ),
13304
- name: _optionalChain([company, 'optionalAccess', _347 => _347.name]) || "",
13305
- featureIds: _optionalChain([company, 'optionalAccess', _348 => _348.features, 'access', _349 => _349.map, 'call', _350 => _350((feature) => feature.id)]) || [],
13306
- moduleIds: _optionalChain([company, 'optionalAccess', _351 => _351.modules, 'access', _352 => _352.map, 'call', _353 => _353((module) => module.id)]) || [],
13307
- logo: _optionalChain([company, 'optionalAccess', _354 => _354.logo]) || "",
13308
- legal_address: _optionalChain([company, 'optionalAccess', _355 => _355.legal_address]) || ""
13339
+ id: _optionalChain([company, 'optionalAccess', _348 => _348.id]) || _uuid.v4.call(void 0, ),
13340
+ name: _optionalChain([company, 'optionalAccess', _349 => _349.name]) || "",
13341
+ featureIds: _optionalChain([company, 'optionalAccess', _350 => _350.features, 'access', _351 => _351.map, 'call', _352 => _352((feature) => feature.id)]) || [],
13342
+ moduleIds: _optionalChain([company, 'optionalAccess', _353 => _353.modules, 'access', _354 => _354.map, 'call', _355 => _355((module) => module.id)]) || [],
13343
+ logo: _optionalChain([company, 'optionalAccess', _356 => _356.logo]) || "",
13344
+ legal_address: _optionalChain([company, 'optionalAccess', _357 => _357.legal_address]) || ""
13309
13345
  };
13310
13346
  }, [company]);
13311
13347
  const form = _reacthookform.useForm.call(void 0, {
@@ -13317,7 +13353,7 @@ function CompanyEditorInternal({
13317
13353
  {
13318
13354
  form,
13319
13355
  entityType: t(`entities.companies`, { count: 1 }),
13320
- entityName: _optionalChain([company, 'optionalAccess', _356 => _356.name]),
13356
+ entityName: _optionalChain([company, 'optionalAccess', _358 => _358.name]),
13321
13357
  isEdit: !!company,
13322
13358
  module: _chunkA7Y5YW7Qjs.Modules.Company,
13323
13359
  propagateChanges,
@@ -13342,7 +13378,7 @@ function CompanyEditorInternal({
13342
13378
  throw new Error(t("company.fiscal_data_invalid"));
13343
13379
  }
13344
13380
  const payload = {
13345
- id: _nullishCoalesce(_optionalChain([company, 'optionalAccess', _357 => _357.id]), () => ( _uuid.v4.call(void 0, ))),
13381
+ id: _nullishCoalesce(_optionalChain([company, 'optionalAccess', _359 => _359.id]), () => ( _uuid.v4.call(void 0, ))),
13346
13382
  name: values.name,
13347
13383
  logo: files && contentType ? values.logo : void 0,
13348
13384
  featureIds: values.featureIds,
@@ -13373,14 +13409,14 @@ function CompanyEditorInternal({
13373
13409
  dialogOpen,
13374
13410
  onDialogOpenChange: handleDialogOpenChange,
13375
13411
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start justify-between gap-x-4", children: [
13376
- /* @__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, FileUploader, { value: files, onValueChange: setFiles, dropzoneOptions: dropzone2, className: "w-full p-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FileInput, { className: "text-muted-foreground/50 rounded-lg outline-1 outline-dashed", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-col items-center justify-center pt-3 pb-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-col items-center justify-center pt-3 pb-4", children: file || _optionalChain([company, 'optionalAccess', _358 => _358.logo]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13412
+ /* @__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, FileUploader, { value: files, onValueChange: setFiles, dropzoneOptions: dropzone2, className: "w-full p-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FileInput, { className: "text-muted-foreground/50 rounded-lg outline-1 outline-dashed", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-col items-center justify-center pt-3 pb-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-col items-center justify-center pt-3 pb-4", children: file || _optionalChain([company, 'optionalAccess', _360 => _360.logo]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
13377
13413
  _image2.default,
13378
13414
  {
13379
- src: file ? URL.createObjectURL(file) : _optionalChain([company, 'optionalAccess', _359 => _359.logo]) || "",
13415
+ src: file ? URL.createObjectURL(file) : _optionalChain([company, 'optionalAccess', _361 => _361.logo]) || "",
13380
13416
  alt: t("company.logo_alt"),
13381
13417
  width: 200,
13382
13418
  height: 200,
13383
- unoptimized: _chunkOO2DBP6Ljs.isRemoteImageSrc.call(void 0, file ? void 0 : _optionalChain([company, 'optionalAccess', _360 => _360.logo]))
13419
+ unoptimized: _chunkOO2DBP6Ljs.isRemoteImageSrc.call(void 0, file ? void 0 : _optionalChain([company, 'optionalAccess', _362 => _362.logo]))
13384
13420
  }
13385
13421
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
13386
13422
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.UploadIcon, { className: "my-4 h-8 w-8" }),
@@ -13411,7 +13447,7 @@ function CompanyEditorInternal({
13411
13447
  }
13412
13448
  ),
13413
13449
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SectionHeader, { className: "mt-2", children: t(`company.sections.fiscal_data`) }),
13414
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ItalianFiscalData_default, { ref: fiscalRef, initialData: parseFiscalData(_optionalChain([company, 'optionalAccess', _361 => _361.fiscal_data])) })
13450
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ItalianFiscalData_default, { ref: fiscalRef, initialData: parseFiscalData(_optionalChain([company, 'optionalAccess', _363 => _363.fiscal_data])) })
13415
13451
  ] }),
13416
13452
  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 }) }) })
13417
13453
  ] })
@@ -13777,7 +13813,7 @@ function NotificationToast(notification, t, generateUrl, reouter, locale) {
13777
13813
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col", children: [
13778
13814
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
13779
13815
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: chunks }), "strong"),
13780
- actor: _nullishCoalesce(_optionalChain([data, 'access', _362 => _362.actor, 'optionalAccess', _363 => _363.name]), () => ( "")),
13816
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _364 => _364.actor, 'optionalAccess', _365 => _365.name]), () => ( "")),
13781
13817
  title: data.title,
13782
13818
  message: _nullishCoalesce(notification.message, () => ( ""))
13783
13819
  }) }),
@@ -13815,7 +13851,7 @@ function NotificationMenuItem({ notification, closePopover }) {
13815
13851
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
13816
13852
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-foreground text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
13817
13853
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { className: "font-medium", children: chunks }), "strong"),
13818
- actor: _nullishCoalesce(_optionalChain([data, 'access', _364 => _364.actor, 'optionalAccess', _365 => _365.name]), () => ( "")),
13854
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _366 => _366.actor, 'optionalAccess', _367 => _367.name]), () => ( "")),
13819
13855
  title: data.title,
13820
13856
  message: _nullishCoalesce(notification.message, () => ( ""))
13821
13857
  }) }),
@@ -13886,7 +13922,7 @@ var NotificationContextProvider = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(v
13886
13922
  _react.useEffect.call(void 0, () => {
13887
13923
  if (hasInitiallyLoaded || !currentUser) return;
13888
13924
  if (_chunkG4JR3SFVjs.isRolesConfigured.call(void 0, )) {
13889
- const isAdmin = _optionalChain([currentUser, 'access', _366 => _366.roles, 'optionalAccess', _367 => _367.some, 'call', _368 => _368((role) => role.id === _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator)]);
13925
+ const isAdmin = _optionalChain([currentUser, 'access', _368 => _368.roles, 'optionalAccess', _369 => _369.some, 'call', _370 => _370((role) => role.id === _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator)]);
13890
13926
  if (isAdmin) {
13891
13927
  setHasInitiallyLoaded(true);
13892
13928
  return;
@@ -14072,7 +14108,7 @@ function OnboardingProvider({
14072
14108
  const id = activeTourIdRef.current;
14073
14109
  cleanupRoots();
14074
14110
  resetState();
14075
- if (id) _optionalChain([onTourEnd, 'optionalCall', _369 => _369(id, reason)]);
14111
+ if (id) _optionalChain([onTourEnd, 'optionalCall', _371 => _371(id, reason)]);
14076
14112
  },
14077
14113
  [cleanupRoots, resetState, onTourEnd]
14078
14114
  );
@@ -14085,14 +14121,14 @@ function OnboardingProvider({
14085
14121
  cleanupRoots();
14086
14122
  resetState();
14087
14123
  }, [cleanupRoots, resetState, teardown]);
14088
- const nextStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _370 => _370.current, 'optionalAccess', _371 => _371.moveNext, 'call', _372 => _372()]), []);
14089
- const previousStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _373 => _373.current, 'optionalAccess', _374 => _374.movePrevious, 'call', _375 => _375()]), []);
14090
- const goToStep = _react.useCallback.call(void 0, (index) => _optionalChain([driverRef, 'access', _376 => _376.current, 'optionalAccess', _377 => _377.moveTo, 'call', _378 => _378(index)]), []);
14124
+ const nextStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _372 => _372.current, 'optionalAccess', _373 => _373.moveNext, 'call', _374 => _374()]), []);
14125
+ const previousStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _375 => _375.current, 'optionalAccess', _376 => _376.movePrevious, 'call', _377 => _377()]), []);
14126
+ const goToStep = _react.useCallback.call(void 0, (index) => _optionalChain([driverRef, 'access', _378 => _378.current, 'optionalAccess', _379 => _379.moveTo, 'call', _380 => _380(index)]), []);
14091
14127
  const startTour = _react.useCallback.call(void 0,
14092
14128
  (tourId, steps) => {
14093
14129
  if (typeof window === "undefined") return;
14094
14130
  if (driverRef.current) closeTour();
14095
- const tourSteps = _nullishCoalesce(steps, () => ( _optionalChain([tours, 'access', _379 => _379.find, 'call', _380 => _380((t) => t.id === tourId), 'optionalAccess', _381 => _381.steps])));
14131
+ const tourSteps = _nullishCoalesce(steps, () => ( _optionalChain([tours, 'access', _381 => _381.find, 'call', _382 => _382((t) => t.id === tourId), 'optionalAccess', _383 => _383.steps])));
14096
14132
  if (!tourSteps || tourSteps.length === 0) {
14097
14133
  console.warn(`No steps found for tour: ${tourId}`);
14098
14134
  return;
@@ -14110,12 +14146,12 @@ function OnboardingProvider({
14110
14146
  else instance2.movePrevious();
14111
14147
  if (driverRef.current === instance2 && !instance2.isActive()) teardown("dismissed");
14112
14148
  }, "go");
14113
- if (_optionalChain([target, 'optionalAccess', _382 => _382.showDelay])) setTimeout(go, target.showDelay);
14149
+ if (_optionalChain([target, 'optionalAccess', _384 => _384.showDelay])) setTimeout(go, target.showDelay);
14114
14150
  else go();
14115
14151
  }, "move");
14116
14152
  const end = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (reason) => {
14117
14153
  endReasonRef.current = reason;
14118
- _optionalChain([driverRef, 'access', _383 => _383.current, 'optionalAccess', _384 => _384.destroy, 'call', _385 => _385()]);
14154
+ _optionalChain([driverRef, 'access', _385 => _385.current, 'optionalAccess', _386 => _386.destroy, 'call', _387 => _387()]);
14119
14155
  teardown(reason);
14120
14156
  }, "end");
14121
14157
  const driveSteps = tourSteps.map((stepConfig, index) => {
@@ -14157,10 +14193,10 @@ function OnboardingProvider({
14157
14193
  onHighlightStarted: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
14158
14194
  setIsTourActive(true);
14159
14195
  setCurrentStepIndex(index);
14160
- _optionalChain([stepConfig, 'access', _386 => _386.onShow, 'optionalCall', _387 => _387()]);
14196
+ _optionalChain([stepConfig, 'access', _388 => _388.onShow, 'optionalCall', _389 => _389()]);
14161
14197
  }, "onHighlightStarted"),
14162
14198
  onDeselected: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
14163
- _optionalChain([stepConfig, 'access', _388 => _388.onHide, 'optionalCall', _389 => _389()]);
14199
+ _optionalChain([stepConfig, 'access', _390 => _390.onHide, 'optionalCall', _391 => _391()]);
14164
14200
  const root = rootsRef.current.get(index);
14165
14201
  if (root) {
14166
14202
  rootsRef.current.delete(index);
@@ -14188,7 +14224,7 @@ function OnboardingProvider({
14188
14224
  );
14189
14225
  _react.useEffect.call(void 0, () => {
14190
14226
  return () => {
14191
- _optionalChain([driverRef, 'access', _390 => _390.current, 'optionalAccess', _391 => _391.destroy, 'call', _392 => _392()]);
14227
+ _optionalChain([driverRef, 'access', _392 => _392.current, 'optionalAccess', _393 => _393.destroy, 'call', _394 => _394()]);
14192
14228
  cleanupRoots();
14193
14229
  };
14194
14230
  }, [cleanupRoots]);
@@ -14321,7 +14357,7 @@ function HowToMultiSelector({
14321
14357
  retriever: (params) => _chunkOO2DBP6Ljs.HowToService.findMany(params),
14322
14358
  module: _chunkA7Y5YW7Qjs.Modules.HowTo,
14323
14359
  getLabel: (howTo) => howTo.name,
14324
- excludeId: _optionalChain([currentHowTo, 'optionalAccess', _393 => _393.id]),
14360
+ excludeId: _optionalChain([currentHowTo, 'optionalAccess', _395 => _395.id]),
14325
14361
  onChange
14326
14362
  }
14327
14363
  );
@@ -14429,17 +14465,17 @@ function HowToEditorInternal({
14429
14465
  );
14430
14466
  const getDefaultValues = _react.useCallback.call(void 0,
14431
14467
  () => ({
14432
- id: _optionalChain([howTo, 'optionalAccess', _394 => _394.id]) || _uuid.v4.call(void 0, ),
14433
- name: _optionalChain([howTo, 'optionalAccess', _395 => _395.name]) || "",
14434
- description: _optionalChain([howTo, 'optionalAccess', _396 => _396.description]) || [],
14435
- pages: _chunkOO2DBP6Ljs.HowTo.parsePagesFromString(_optionalChain([howTo, 'optionalAccess', _397 => _397.pages])),
14436
- howToType: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _398 => _398.howToType]), () => ( "how-to")),
14437
- slug: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _399 => _399.slug]), () => ( "")),
14438
- order: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _400 => _400.order]), () => ( 0)),
14439
- summary: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _401 => _401.summary]), () => ( "")),
14440
- tags: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _402 => _402.tags]), () => ( []))).join(", "),
14441
- contextualKeys: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _403 => _403.contextualKeys]), () => ( []))).join(", "),
14442
- draft: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _404 => _404.draft]), () => ( false)),
14468
+ id: _optionalChain([howTo, 'optionalAccess', _396 => _396.id]) || _uuid.v4.call(void 0, ),
14469
+ name: _optionalChain([howTo, 'optionalAccess', _397 => _397.name]) || "",
14470
+ description: _optionalChain([howTo, 'optionalAccess', _398 => _398.description]) || [],
14471
+ pages: _chunkOO2DBP6Ljs.HowTo.parsePagesFromString(_optionalChain([howTo, 'optionalAccess', _399 => _399.pages])),
14472
+ howToType: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _400 => _400.howToType]), () => ( "how-to")),
14473
+ slug: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _401 => _401.slug]), () => ( "")),
14474
+ order: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _402 => _402.order]), () => ( 0)),
14475
+ summary: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _403 => _403.summary]), () => ( "")),
14476
+ tags: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _404 => _404.tags]), () => ( []))).join(", "),
14477
+ contextualKeys: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _405 => _405.contextualKeys]), () => ( []))).join(", "),
14478
+ draft: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _406 => _406.draft]), () => ( false)),
14443
14479
  relatedArticles: []
14444
14480
  }),
14445
14481
  [howTo]
@@ -14450,7 +14486,7 @@ function HowToEditorInternal({
14450
14486
  });
14451
14487
  const initialRelatedIds = _react.useRef.call(void 0, []);
14452
14488
  _react.useEffect.call(void 0, () => {
14453
- if (!_optionalChain([howTo, 'optionalAccess', _405 => _405.howToType]) || !_optionalChain([howTo, 'optionalAccess', _406 => _406.slug])) return;
14489
+ if (!_optionalChain([howTo, 'optionalAccess', _407 => _407.howToType]) || !_optionalChain([howTo, 'optionalAccess', _408 => _408.slug])) return;
14454
14490
  let active = true;
14455
14491
  _chunkOO2DBP6Ljs.HowToService.findRelated({ howToType: howTo.howToType, slug: howTo.slug }).then((list) => {
14456
14492
  if (!active) return;
@@ -14489,7 +14525,7 @@ function HowToEditorInternal({
14489
14525
  {
14490
14526
  form,
14491
14527
  entityType: t(`entities.howtos`, { count: 1 }),
14492
- entityName: _optionalChain([howTo, 'optionalAccess', _407 => _407.name]),
14528
+ entityName: _optionalChain([howTo, 'optionalAccess', _409 => _409.name]),
14493
14529
  isEdit: !!howTo,
14494
14530
  module: _chunkA7Y5YW7Qjs.Modules.HowTo,
14495
14531
  propagateChanges,
@@ -14866,7 +14902,7 @@ function withPatchedTitle(source, title) {
14866
14902
  return _chunkOO2DBP6Ljs.rehydrate.call(void 0, _chunkA7Y5YW7Qjs.Modules.Assistant, {
14867
14903
  jsonApi: {
14868
14904
  ...dehydrated.jsonApi,
14869
- attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _408 => _408.jsonApi, 'optionalAccess', _409 => _409.attributes]), () => ( {})), title }
14905
+ attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _410 => _410.jsonApi, 'optionalAccess', _411 => _411.attributes]), () => ( {})), title }
14870
14906
  },
14871
14907
  included: dehydrated.included
14872
14908
  });
@@ -14901,7 +14937,7 @@ function AssistantProvider({
14901
14937
  const [status, setStatus] = _react.useState.call(void 0, void 0);
14902
14938
  const [failedMessageIds, setFailedMessageIds] = _react.useState.call(void 0, () => /* @__PURE__ */ new Set());
14903
14939
  const [operatorMode, setOperatorMode] = _react.useState.call(void 0,
14904
- () => _optionalChain([dehydratedAssistant, 'optionalAccess', _410 => _410.jsonApi, 'optionalAccess', _411 => _411.attributes, 'optionalAccess', _412 => _412.engine]) === "operator"
14940
+ () => _optionalChain([dehydratedAssistant, 'optionalAccess', _412 => _412.jsonApi, 'optionalAccess', _413 => _413.attributes, 'optionalAccess', _414 => _414.engine]) === "operator"
14905
14941
  );
14906
14942
  const [pendingScope, setPendingScope] = _react.useState.call(void 0, scope);
14907
14943
  const { socket } = useSocketContext();
@@ -14911,7 +14947,7 @@ function AssistantProvider({
14911
14947
  if (!trimmed) return;
14912
14948
  const optimistic = _chunkOO2DBP6Ljs.AssistantMessage.buildOptimistic({
14913
14949
  content: trimmed,
14914
- assistantId: _optionalChain([assistant, 'optionalAccess', _413 => _413.id]),
14950
+ assistantId: _optionalChain([assistant, 'optionalAccess', _415 => _415.id]),
14915
14951
  position: nextPosition(messages)
14916
14952
  });
14917
14953
  setMessages((prev) => [...prev, optimistic]);
@@ -14921,22 +14957,22 @@ function AssistantProvider({
14921
14957
  if (assistant && payload.assistantId && payload.assistantId !== assistant.id) return;
14922
14958
  if (typeof payload.status === "string") setStatus(payload.status);
14923
14959
  }, "handler");
14924
- _optionalChain([socket, 'optionalAccess', _414 => _414.on, 'call', _415 => _415("assistant:status", handler)]);
14960
+ _optionalChain([socket, 'optionalAccess', _416 => _416.on, 'call', _417 => _417("assistant:status", handler)]);
14925
14961
  let createdHandled = false;
14926
14962
  const createdHandler = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (payload) => {
14927
14963
  if (createdHandled) return;
14928
- const data = _optionalChain([payload, 'optionalAccess', _416 => _416.assistant, 'optionalAccess', _417 => _417.data]);
14964
+ const data = _optionalChain([payload, 'optionalAccess', _418 => _418.assistant, 'optionalAccess', _419 => _419.data]);
14929
14965
  if (!data || typeof data !== "object" || typeof data.id !== "string" || !data.id) return;
14930
14966
  let thread;
14931
14967
  try {
14932
14968
  thread = _chunkOO2DBP6Ljs.rehydrate.call(void 0, _chunkA7Y5YW7Qjs.Modules.Assistant, {
14933
14969
  jsonApi: data,
14934
- included: _nullishCoalesce(_optionalChain([payload, 'access', _418 => _418.assistant, 'optionalAccess', _419 => _419.included]), () => ( []))
14970
+ included: _nullishCoalesce(_optionalChain([payload, 'access', _420 => _420.assistant, 'optionalAccess', _421 => _421.included]), () => ( []))
14935
14971
  });
14936
14972
  } catch (e9) {
14937
14973
  return;
14938
14974
  }
14939
- if (!_optionalChain([thread, 'optionalAccess', _420 => _420.id])) return;
14975
+ if (!_optionalChain([thread, 'optionalAccess', _422 => _422.id])) return;
14940
14976
  createdHandled = true;
14941
14977
  setAssistant(thread);
14942
14978
  setThreads((prev) => [thread, ...prev.filter((row) => row.id !== thread.id)]);
@@ -14944,16 +14980,16 @@ function AssistantProvider({
14944
14980
  window.history.replaceState(null, "", resolveThreadUrl(thread.id));
14945
14981
  }
14946
14982
  }, "createdHandler");
14947
- if (!assistant) _optionalChain([socket, 'optionalAccess', _421 => _421.on, 'call', _422 => _422("assistant:created", createdHandler)]);
14983
+ if (!assistant) _optionalChain([socket, 'optionalAccess', _423 => _423.on, 'call', _424 => _424("assistant:created", createdHandler)]);
14948
14984
  try {
14949
14985
  if (!assistant) {
14950
14986
  const input = {
14951
14987
  firstMessage: trimmed,
14952
- howToMode: _optionalChain([opts, 'optionalAccess', _423 => _423.howToMode]),
14953
- limitToHowToId: _optionalChain([opts, 'optionalAccess', _424 => _424.limitToHowToId]),
14954
- handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _425 => _425.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _426 => _426.handbookMode]))),
14955
- limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _427 => _427.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _428 => _428.limitToHandbookPageId]))),
14956
- contentBlocks: _optionalChain([opts, 'optionalAccess', _429 => _429.contentBlocks]),
14988
+ howToMode: _optionalChain([opts, 'optionalAccess', _425 => _425.howToMode]),
14989
+ limitToHowToId: _optionalChain([opts, 'optionalAccess', _426 => _426.limitToHowToId]),
14990
+ handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _427 => _427.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _428 => _428.handbookMode]))),
14991
+ limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _429 => _429.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _430 => _430.limitToHandbookPageId]))),
14992
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _431 => _431.contentBlocks]),
14957
14993
  boundContent: pendingScope
14958
14994
  };
14959
14995
  const created = operatorMode ? await _chunkOO2DBP6Ljs.AssistantService.createOperator(input) : await _chunkOO2DBP6Ljs.AssistantService.create(input);
@@ -14970,15 +15006,15 @@ function AssistantProvider({
14970
15006
  const result = operatorMode ? await _chunkOO2DBP6Ljs.AssistantService.appendMessageOperator({
14971
15007
  assistantId: assistant.id,
14972
15008
  content: trimmed,
14973
- contentBlocks: _optionalChain([opts, 'optionalAccess', _430 => _430.contentBlocks])
15009
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _432 => _432.contentBlocks])
14974
15010
  }) : await _chunkOO2DBP6Ljs.AssistantService.appendMessage({
14975
15011
  assistantId: assistant.id,
14976
15012
  content: trimmed,
14977
- howToMode: _optionalChain([opts, 'optionalAccess', _431 => _431.howToMode]),
14978
- limitToHowToId: _optionalChain([opts, 'optionalAccess', _432 => _432.limitToHowToId]),
14979
- handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _433 => _433.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _434 => _434.handbookMode]))),
14980
- limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _435 => _435.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _436 => _436.limitToHandbookPageId]))),
14981
- contentBlocks: _optionalChain([opts, 'optionalAccess', _437 => _437.contentBlocks])
15013
+ howToMode: _optionalChain([opts, 'optionalAccess', _433 => _433.howToMode]),
15014
+ limitToHowToId: _optionalChain([opts, 'optionalAccess', _434 => _434.limitToHowToId]),
15015
+ handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _435 => _435.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _436 => _436.handbookMode]))),
15016
+ limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _437 => _437.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _438 => _438.limitToHandbookPageId]))),
15017
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _439 => _439.contentBlocks])
14982
15018
  });
14983
15019
  setMessages((prev) => [...stripOptimistic(prev), ...result]);
14984
15020
  }
@@ -14989,8 +15025,8 @@ function AssistantProvider({
14989
15025
  return next;
14990
15026
  });
14991
15027
  } finally {
14992
- _optionalChain([socket, 'optionalAccess', _438 => _438.off, 'call', _439 => _439("assistant:status", handler)]);
14993
- if (!assistant) _optionalChain([socket, 'optionalAccess', _440 => _440.off, 'call', _441 => _441("assistant:created", createdHandler)]);
15028
+ _optionalChain([socket, 'optionalAccess', _440 => _440.off, 'call', _441 => _441("assistant:status", handler)]);
15029
+ if (!assistant) _optionalChain([socket, 'optionalAccess', _442 => _442.off, 'call', _443 => _443("assistant:created", createdHandler)]);
14994
15030
  setSending(false);
14995
15031
  setStatus(void 0);
14996
15032
  }
@@ -15056,7 +15092,7 @@ function AssistantProvider({
15056
15092
  await _chunkOO2DBP6Ljs.AssistantService.delete({ id });
15057
15093
  setThreads((prev) => prev.filter((t2) => t2.id !== id));
15058
15094
  setAssistant((prev) => {
15059
- if (_optionalChain([prev, 'optionalAccess', _442 => _442.id]) === id) {
15095
+ if (_optionalChain([prev, 'optionalAccess', _444 => _444.id]) === id) {
15060
15096
  setMessages([]);
15061
15097
  return void 0;
15062
15098
  }
@@ -15068,7 +15104,7 @@ function AssistantProvider({
15068
15104
  (async () => {
15069
15105
  setThreadsLoading(true);
15070
15106
  try {
15071
- const loaded = await _chunkOO2DBP6Ljs.AssistantService.findMany({ boundType: _optionalChain([scope, 'optionalAccess', _443 => _443.type]), boundId: _optionalChain([scope, 'optionalAccess', _444 => _444.id]) });
15107
+ const loaded = await _chunkOO2DBP6Ljs.AssistantService.findMany({ boundType: _optionalChain([scope, 'optionalAccess', _445 => _445.type]), boundId: _optionalChain([scope, 'optionalAccess', _446 => _446.id]) });
15072
15108
  if (!cancelled) setThreads(loaded);
15073
15109
  } finally {
15074
15110
  if (!cancelled) setThreadsLoading(false);
@@ -15077,7 +15113,7 @@ function AssistantProvider({
15077
15113
  return () => {
15078
15114
  cancelled = true;
15079
15115
  };
15080
- }, [_optionalChain([scope, 'optionalAccess', _445 => _445.type]), _optionalChain([scope, 'optionalAccess', _446 => _446.id])]);
15116
+ }, [_optionalChain([scope, 'optionalAccess', _447 => _447.type]), _optionalChain([scope, 'optionalAccess', _448 => _448.id])]);
15081
15117
  const value = _react.useMemo.call(void 0,
15082
15118
  () => ({
15083
15119
  assistant,
@@ -15129,7 +15165,7 @@ function AssistantProvider({
15129
15165
  const response = {
15130
15166
  type: _nullishCoalesce(titleOverride, () => ( t("entities.assistants", { count: assistant ? 1 : 2 })))
15131
15167
  };
15132
- if (_optionalChain([assistant, 'optionalAccess', _447 => _447.title])) {
15168
+ if (_optionalChain([assistant, 'optionalAccess', _449 => _449.title])) {
15133
15169
  response.element = assistant.title.length > 25 ? `${assistant.title.substring(0, 25)}...` : assistant.title;
15134
15170
  }
15135
15171
  response.functions = [
@@ -15292,10 +15328,10 @@ function readEntityTitle() {
15292
15328
  const title = document.title;
15293
15329
  if (title.includes("]")) {
15294
15330
  const afterEntityType = title.split("]")[1];
15295
- return _optionalChain([afterEntityType, 'optionalAccess', _448 => _448.split, 'call', _449 => _449("|"), 'access', _450 => _450[0], 'optionalAccess', _451 => _451.trim, 'call', _452 => _452()]) || null;
15331
+ return _optionalChain([afterEntityType, 'optionalAccess', _450 => _450.split, 'call', _451 => _451("|"), 'access', _452 => _452[0], 'optionalAccess', _453 => _453.trim, 'call', _454 => _454()]) || null;
15296
15332
  }
15297
15333
  if (!title.includes("|")) return null;
15298
- return _optionalChain([title, 'access', _453 => _453.split, 'call', _454 => _454("|"), 'access', _455 => _455[0], 'access', _456 => _456.split, 'call', _457 => _457("\xB7"), 'access', _458 => _458[0], 'optionalAccess', _459 => _459.trim, 'call', _460 => _460()]) || null;
15334
+ return _optionalChain([title, 'access', _455 => _455.split, 'call', _456 => _456("|"), 'access', _457 => _457[0], 'access', _458 => _458.split, 'call', _459 => _459("\xB7"), 'access', _460 => _460[0], 'optionalAccess', _461 => _461.trim, 'call', _462 => _462()]) || null;
15299
15335
  }
15300
15336
  _chunk7QVYU63Ejs.__name.call(void 0, readEntityTitle, "readEntityTitle");
15301
15337
  function usePageTracker() {
@@ -15324,7 +15360,7 @@ function usePageTracker() {
15324
15360
  const existing = prev.find((page) => page.url === baseUrl);
15325
15361
  const refreshed = {
15326
15362
  url: baseUrl,
15327
- title: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _461 => _461.title]), () => ( foundModule.name)),
15363
+ title: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _463 => _463.title]), () => ( foundModule.name)),
15328
15364
  moduleType: foundModule.name,
15329
15365
  timestamp: Date.now()
15330
15366
  };
@@ -15382,7 +15418,7 @@ function urlBase64ToUint8Array(base64String) {
15382
15418
  _chunk7QVYU63Ejs.__name.call(void 0, urlBase64ToUint8Array, "urlBase64ToUint8Array");
15383
15419
  function usePushNotifications(params) {
15384
15420
  const { currentUser, canSubscribe } = params;
15385
- const userId = _optionalChain([currentUser, 'optionalAccess', _462 => _462.id]);
15421
+ const userId = _optionalChain([currentUser, 'optionalAccess', _464 => _464.id]);
15386
15422
  _react.useEffect.call(void 0, () => {
15387
15423
  if (!userId || !canSubscribe) return;
15388
15424
  const register = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async () => {
@@ -15432,7 +15468,7 @@ function usePushNotifications(params) {
15432
15468
  if (!("serviceWorker" in navigator)) return;
15433
15469
  const sessionKey = `push_registered_${userId}`;
15434
15470
  const onMessage = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (event) => {
15435
- if (_optionalChain([event, 'access', _463 => _463.data, 'optionalAccess', _464 => _464.type]) !== "PUSH_RESUBSCRIBED" || !event.data.subscription) return;
15471
+ if (_optionalChain([event, 'access', _465 => _465.data, 'optionalAccess', _466 => _466.type]) !== "PUSH_RESUBSCRIBED" || !event.data.subscription) return;
15436
15472
  const subscription = event.data.subscription;
15437
15473
  const subscriptionHash = btoa(JSON.stringify(subscription));
15438
15474
  if (sessionStorage.getItem(sessionKey) === subscriptionHash) return;
@@ -15515,14 +15551,14 @@ function useSocket({ token, paused = false }) {
15515
15551
  });
15516
15552
  }, "handleMessage");
15517
15553
  const handleNotification = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (data) => {
15518
- const resource = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _465 => _465.data]), () => ( _optionalChain([data, 'optionalAccess', _466 => _466.jsonApi])));
15519
- if (!_optionalChain([resource, 'optionalAccess', _467 => _467.type])) {
15554
+ const resource = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _467 => _467.data]), () => ( _optionalChain([data, 'optionalAccess', _468 => _468.jsonApi])));
15555
+ if (!_optionalChain([resource, 'optionalAccess', _469 => _469.type])) {
15520
15556
  console.warn("[useSocket] ignoring notification with unexpected payload shape", data);
15521
15557
  return;
15522
15558
  }
15523
15559
  const notification = _chunkOO2DBP6Ljs.rehydrate.call(void 0, _chunkA7Y5YW7Qjs.Modules.Notification, {
15524
15560
  jsonApi: resource,
15525
- included: _optionalChain([data, 'optionalAccess', _468 => _468.included]) || []
15561
+ included: _optionalChain([data, 'optionalAccess', _470 => _470.included]) || []
15526
15562
  });
15527
15563
  if (notification) {
15528
15564
  setSocketNotifications((prev) => {
@@ -15660,11 +15696,11 @@ function BreadcrumbMobile({
15660
15696
  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 }) }) }) });
15661
15697
  }
15662
15698
  if (allItems.length <= 1) {
15663
- 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', _469 => _469.name]) });
15699
+ 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', _471 => _471.name]) });
15664
15700
  }
15665
15701
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DropdownMenu, { open, onOpenChange: setOpen, children: [
15666
15702
  /* @__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: [
15667
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _optionalChain([lastItem, 'optionalAccess', _470 => _470.name]) }),
15703
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _optionalChain([lastItem, 'optionalAccess', _472 => _472.name]) }),
15668
15704
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDownIcon, { className: "text-muted-foreground size-3.5 shrink-0" })
15669
15705
  ] }),
15670
15706
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuContent, { align: "start", children: allItems.map(
@@ -15682,8 +15718,8 @@ function BreadcrumbMobile({
15682
15718
  href: item.href,
15683
15719
  className: _chunkOO2DBP6Ljs.cn.call(void 0, props.className, "text-foreground font-normal"),
15684
15720
  onClick: (event) => {
15685
- _optionalChain([props, 'access', _471 => _471.onClick, 'optionalCall', _472 => _472(event)]);
15686
- _optionalChain([item, 'access', _473 => _473.onClick, 'optionalCall', _474 => _474()]);
15721
+ _optionalChain([props, 'access', _473 => _473.onClick, 'optionalCall', _474 => _474(event)]);
15722
+ _optionalChain([item, 'access', _475 => _475.onClick, 'optionalCall', _476 => _476()]);
15687
15723
  },
15688
15724
  children: props.children
15689
15725
  }
@@ -15701,7 +15737,7 @@ function BreadcrumbNavigation({ items, rootLabel, showRoot = true }) {
15701
15737
  const generateUrl = usePageUrlGenerator();
15702
15738
  const t = _nextintl.useTranslations.call(void 0, );
15703
15739
  const isMobile = _chunkOO2DBP6Ljs.useIsMobile.call(void 0, );
15704
- const root = _optionalChain([rootLabel, 'optionalAccess', _475 => _475.trim, 'call', _476 => _476()]) ? rootLabel : t(`common.home`);
15740
+ const root = _optionalChain([rootLabel, 'optionalAccess', _477 => _477.trim, 'call', _478 => _478()]) ? rootLabel : t(`common.home`);
15705
15741
  if (isMobile) {
15706
15742
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BreadcrumbMobile, { items, generateUrl, rootLabel: root, showRoot });
15707
15743
  }
@@ -16108,12 +16144,12 @@ var _remarkgfm = require('remark-gfm'); var _remarkgfm2 = _interopRequireDefault
16108
16144
 
16109
16145
  function mermaidSourceOf(node) {
16110
16146
  const pre = node;
16111
- const code = _optionalChain([pre, 'optionalAccess', _477 => _477.children, 'optionalAccess', _478 => _478[0]]);
16112
- if (_optionalChain([code, 'optionalAccess', _479 => _479.tagName]) !== "code") return void 0;
16113
- const classNames = Array.isArray(_optionalChain([code, 'access', _480 => _480.properties, 'optionalAccess', _481 => _481.className])) ? code.properties.className : [];
16147
+ const code = _optionalChain([pre, 'optionalAccess', _479 => _479.children, 'optionalAccess', _480 => _480[0]]);
16148
+ if (_optionalChain([code, 'optionalAccess', _481 => _481.tagName]) !== "code") return void 0;
16149
+ const classNames = Array.isArray(_optionalChain([code, 'access', _482 => _482.properties, 'optionalAccess', _483 => _483.className])) ? code.properties.className : [];
16114
16150
  if (!classNames.includes("language-mermaid")) return void 0;
16115
- const text = _optionalChain([code, 'access', _482 => _482.children, 'optionalAccess', _483 => _483[0]]);
16116
- if (_optionalChain([text, 'optionalAccess', _484 => _484.type]) !== "text" || typeof text.value !== "string") return void 0;
16151
+ const text = _optionalChain([code, 'access', _484 => _484.children, 'optionalAccess', _485 => _485[0]]);
16152
+ if (_optionalChain([text, 'optionalAccess', _486 => _486.type]) !== "text" || typeof text.value !== "string") return void 0;
16117
16153
  return text.value;
16118
16154
  }
16119
16155
  _chunk7QVYU63Ejs.__name.call(void 0, mermaidSourceOf, "mermaidSourceOf");
@@ -16370,7 +16406,7 @@ var railTriggerClass = _chunkOO2DBP6Ljs.cn.call(void 0,
16370
16406
  "data-active:text-primary dark:data-active:text-primary",
16371
16407
  "data-active:font-medium data-active:shadow-none"
16372
16408
  );
16373
- var tabValue = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (tab) => _nullishCoalesce(_nullishCoalesce(tab.sectionKey, () => ( _optionalChain([tab, 'access', _485 => _485.key, 'optionalAccess', _486 => _486.name]))), () => ( tab.label)), "tabValue");
16409
+ var tabValue = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (tab) => _nullishCoalesce(_nullishCoalesce(tab.sectionKey, () => ( _optionalChain([tab, 'access', _487 => _487.key, 'optionalAccess', _488 => _488.name]))), () => ( tab.label)), "tabValue");
16374
16410
  function RoundPageContainer({
16375
16411
  module,
16376
16412
  id,
@@ -16402,7 +16438,7 @@ function RoundPageContainer({
16402
16438
  const [mounted, setMounted] = _react.useState.call(void 0, false);
16403
16439
  _react.useEffect.call(void 0, () => {
16404
16440
  const match = document.cookie.split("; ").find((row) => row.startsWith(`${detailsCookieName}=`));
16405
- const stored = _optionalChain([match, 'optionalAccess', _487 => _487.split, 'call', _488 => _488("="), 'access', _489 => _489[1]]);
16441
+ const stored = _optionalChain([match, 'optionalAccess', _489 => _489.split, 'call', _490 => _490("="), 'access', _491 => _491[1]]);
16406
16442
  if (stored === "true") setShowDetailsState(true);
16407
16443
  else if (stored === "false") setShowDetailsState(false);
16408
16444
  }, []);
@@ -16417,7 +16453,7 @@ function RoundPageContainer({
16417
16453
  const clip = isFixed ? `overflow-hidden` : ``;
16418
16454
  const scrollY = isFixed ? `overflow-y-auto` : ``;
16419
16455
  const mobileBarClass = isFixed ? `` : `sticky bottom-0 z-30`;
16420
- const detailsCookieName = _optionalChain([module, 'optionalAccess', _490 => _490.name]) ? `${DETAILS_COOKIE_NAME}_${module.name}` : DETAILS_COOKIE_NAME;
16456
+ const detailsCookieName = _optionalChain([module, 'optionalAccess', _492 => _492.name]) ? `${DETAILS_COOKIE_NAME}_${module.name}` : DETAILS_COOKIE_NAME;
16421
16457
  const setShowDetails = _react.useCallback.call(void 0,
16422
16458
  (value) => {
16423
16459
  setShowDetailsState(value);
@@ -16450,13 +16486,13 @@ function RoundPageContainer({
16450
16486
  } else {
16451
16487
  rewriteUrl({ page: window.location.pathname, additionalParameters: { section: key }, mode: "push" });
16452
16488
  }
16453
- _optionalChain([onSectionChange, 'optionalCall', _491 => _491(key)]);
16489
+ _optionalChain([onSectionChange, 'optionalCall', _493 => _493(key)]);
16454
16490
  },
16455
16491
  [module, id, rewriteUrl, onSectionChange]
16456
16492
  );
16457
- const activeTabDefinition = _optionalChain([tabs, 'optionalAccess', _492 => _492.find, 'call', _493 => _493((t2) => tabValue(t2) === activeTab)]);
16458
- const activeFillHeight = _optionalChain([activeTabDefinition, 'optionalAccess', _494 => _494.fillHeight]) === true;
16459
- const activeConstrainWidth = _optionalChain([activeTabDefinition, 'optionalAccess', _495 => _495.constrainWidth]) === true;
16493
+ const activeTabDefinition = _optionalChain([tabs, 'optionalAccess', _494 => _494.find, 'call', _495 => _495((t2) => tabValue(t2) === activeTab)]);
16494
+ const activeFillHeight = _optionalChain([activeTabDefinition, 'optionalAccess', _496 => _496.fillHeight]) === true;
16495
+ const activeConstrainWidth = _optionalChain([activeTabDefinition, 'optionalAccess', _497 => _497.constrainWidth]) === true;
16460
16496
  const { ungrouped, groups } = _react.useMemo.call(void 0, () => partitionTabs(_nullishCoalesce(tabs, () => ( []))), [tabs]);
16461
16497
  const tabItems = _react.useMemo.call(void 0,
16462
16498
  () => Object.fromEntries((_nullishCoalesce(tabs, () => ( []))).map((tab) => [tabValue(tab), _nullishCoalesce(tab.contentLabel, () => ( tab.label))])),
@@ -16467,7 +16503,7 @@ function RoundPageContainer({
16467
16503
  const mobileFlow = isMobile && isFixed && (!activeFillHeight || activeDocumentTab) && !fullWidth;
16468
16504
  const innerClip = mobileFlow ? `` : clip;
16469
16505
  const innerScrollY = mobileFlow ? `` : scrollY;
16470
- const showMobileSectionPicker = (_nullishCoalesce(_optionalChain([tabs, 'optionalAccess', _496 => _496.length]), () => ( 0))) > 1;
16506
+ const showMobileSectionPicker = (_nullishCoalesce(_optionalChain([tabs, 'optionalAccess', _498 => _498.length]), () => ( 0))) > 1;
16471
16507
  if (!isReady) {
16472
16508
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16473
16509
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -16867,14 +16903,14 @@ function BlockNoteEditorMentionHoverCard({
16867
16903
  const entityType = target.dataset.mentionType;
16868
16904
  const alias = target.dataset.mentionAlias;
16869
16905
  setHovered((prev) => {
16870
- if (_optionalChain([prev, 'optionalAccess', _497 => _497.id]) === id && _optionalChain([prev, 'optionalAccess', _498 => _498.element]) === target) return prev;
16906
+ if (_optionalChain([prev, 'optionalAccess', _499 => _499.id]) === id && _optionalChain([prev, 'optionalAccess', _500 => _500.element]) === target) return prev;
16871
16907
  return { id, entityType, alias, element: target };
16872
16908
  });
16873
16909
  }, "handleMouseOver");
16874
16910
  const handleMouseOut = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (e) => {
16875
16911
  const target = e.target.closest("[data-mention-id]");
16876
16912
  if (!target) return;
16877
- const related = _optionalChain([e, 'access', _499 => _499.relatedTarget, 'optionalAccess', _500 => _500.closest, 'call', _501 => _501("[data-mention-id]")]);
16913
+ const related = _optionalChain([e, 'access', _501 => _501.relatedTarget, 'optionalAccess', _502 => _502.closest, 'call', _503 => _503("[data-mention-id]")]);
16878
16914
  if (related) return;
16879
16915
  scheduleClose();
16880
16916
  }, "handleMouseOut");
@@ -16888,7 +16924,7 @@ function BlockNoteEditorMentionHoverCard({
16888
16924
  }, [containerRef, mentionResolveFn, cancelClose, scheduleClose]);
16889
16925
  if (!hovered || !mentionResolveFn) return null;
16890
16926
  const resolved = mentionResolveFn(hovered.id, hovered.entityType, hovered.alias);
16891
- if (!_optionalChain([resolved, 'optionalAccess', _502 => _502.HoverContent])) return null;
16927
+ if (!_optionalChain([resolved, 'optionalAccess', _504 => _504.HoverContent])) return null;
16892
16928
  const ContentComponent = resolved.HoverContent;
16893
16929
  const rect = hovered.element.getBoundingClientRect();
16894
16930
  return _reactdom.createPortal.call(void 0,
@@ -16932,28 +16968,28 @@ var parseMentionElement = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (
16932
16968
  }, "parseMentionElement");
16933
16969
  var createMentionInlineContentSpec = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (resolveFn, disableMention, nameResolver) => {
16934
16970
  const MentionExternalHTML = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (props) => {
16935
- const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _503 => _503(props.id, props.entityType, props.alias)]), () => ( props.alias));
16971
+ const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _505 => _505(props.id, props.entityType, props.alias)]), () => ( props.alias));
16936
16972
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { "data-mention-id": props.id, "data-mention-type": props.entityType, "data-mention-alias": props.alias, children: [
16937
16973
  "@",
16938
16974
  displayName
16939
16975
  ] });
16940
16976
  }, "MentionExternalHTML");
16941
16977
  const Mention = React2.default.memo(/* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, function Mention2(props) {
16942
- const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _504 => _504(props.id, props.entityType, props.alias)]), () => ( props.alias));
16978
+ const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _506 => _506(props.id, props.entityType, props.alias)]), () => ( props.alias));
16943
16979
  if (disableMention) {
16944
- const resolved2 = _optionalChain([resolveFn, 'optionalCall', _505 => _505(props.id, props.entityType, displayName)]);
16945
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _link2.default, { href: _nullishCoalesce(_optionalChain([resolved2, 'optionalAccess', _506 => _506.url]), () => ( "#")), className: "text-primary", children: [
16980
+ const resolved2 = _optionalChain([resolveFn, 'optionalCall', _507 => _507(props.id, props.entityType, displayName)]);
16981
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _link2.default, { href: _nullishCoalesce(_optionalChain([resolved2, 'optionalAccess', _508 => _508.url]), () => ( "#")), className: "text-primary", children: [
16946
16982
  "@",
16947
16983
  displayName
16948
16984
  ] });
16949
16985
  }
16950
- const resolved = _optionalChain([resolveFn, 'optionalCall', _507 => _507(props.id, props.entityType, displayName)]);
16951
- if (_optionalChain([resolved, 'optionalAccess', _508 => _508.Inline])) {
16986
+ const resolved = _optionalChain([resolveFn, 'optionalCall', _509 => _509(props.id, props.entityType, displayName)]);
16987
+ if (_optionalChain([resolved, 'optionalAccess', _510 => _510.Inline])) {
16952
16988
  const Custom = resolved.Inline;
16953
16989
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Custom, { ...props, alias: displayName });
16954
16990
  }
16955
- const href = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _509 => _509.url]), () => ( "#"));
16956
- const handleClick = _optionalChain([resolved, 'optionalAccess', _510 => _510.onActivate]) ? (e) => resolved.onActivate(e, props) : void 0;
16991
+ const href = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _511 => _511.url]), () => ( "#"));
16992
+ const handleClick = _optionalChain([resolved, 'optionalAccess', _512 => _512.onActivate]) ? (e) => resolved.onActivate(e, props) : void 0;
16957
16993
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16958
16994
  _link2.default,
16959
16995
  {
@@ -17061,7 +17097,7 @@ function BlockNoteEditorMentionSuggestionMenu({
17061
17097
  if (!suggestionMenuComponent) return void 0;
17062
17098
  const Component2 = suggestionMenuComponent;
17063
17099
  const Wrapped = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (props) => {
17064
- const isSentinelOnly = props.items.length === 1 && _optionalChain([props, 'access', _511 => _511.items, 'access', _512 => _512[0], 'optionalAccess', _513 => _513.title]) === KEEP_OPEN_SENTINEL_TITLE;
17100
+ const isSentinelOnly = props.items.length === 1 && _optionalChain([props, 'access', _513 => _513.items, 'access', _514 => _514[0], 'optionalAccess', _515 => _515.title]) === KEEP_OPEN_SENTINEL_TITLE;
17065
17101
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17066
17102
  Component2,
17067
17103
  {
@@ -17070,7 +17106,7 @@ function BlockNoteEditorMentionSuggestionMenu({
17070
17106
  selectedIndex: isSentinelOnly ? void 0 : props.selectedIndex,
17071
17107
  onItemClick: (item) => {
17072
17108
  if (item.title === KEEP_OPEN_SENTINEL_TITLE) return;
17073
- _optionalChain([props, 'access', _514 => _514.onItemClick, 'optionalCall', _515 => _515(item)]);
17109
+ _optionalChain([props, 'access', _516 => _516.onItemClick, 'optionalCall', _517 => _517(item)]);
17074
17110
  }
17075
17111
  }
17076
17112
  );
@@ -17317,10 +17353,10 @@ var cellId = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => {
17317
17353
  cell: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ row }) => params.toggleId ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17318
17354
  SelectRowCheckbox,
17319
17355
  {
17320
- checked: _optionalChain([params, 'access', _516 => _516.checkedIds, 'optionalAccess', _517 => _517.includes, 'call', _518 => _518(row.getValue(params.name))]) || false,
17356
+ checked: _optionalChain([params, 'access', _518 => _518.checkedIds, 'optionalAccess', _519 => _519.includes, 'call', _520 => _520(row.getValue(params.name))]) || false,
17321
17357
  onCheckedChange: (value) => {
17322
17358
  row.toggleSelected(!!value);
17323
- _optionalChain([params, 'access', _519 => _519.toggleId, 'optionalCall', _520 => _520(row.getValue(params.name))]);
17359
+ _optionalChain([params, 'access', _521 => _521.toggleId, 'optionalCall', _522 => _522(row.getValue(params.name))]);
17324
17360
  }
17325
17361
  }
17326
17362
  ) : null, "cell"),
@@ -17378,7 +17414,7 @@ function useJsonApiGet(params) {
17378
17414
  const [response, setResponse] = _react.useState.call(void 0, null);
17379
17415
  const isMounted = _react.useRef.call(void 0, true);
17380
17416
  const fetchData = _react.useCallback.call(void 0, async () => {
17381
- if (_optionalChain([params, 'access', _521 => _521.options, 'optionalAccess', _522 => _522.enabled]) === false) return;
17417
+ if (_optionalChain([params, 'access', _523 => _523.options, 'optionalAccess', _524 => _524.enabled]) === false) return;
17382
17418
  setLoading(true);
17383
17419
  setError(null);
17384
17420
  try {
@@ -17405,9 +17441,9 @@ function useJsonApiGet(params) {
17405
17441
  setLoading(false);
17406
17442
  }
17407
17443
  }
17408
- }, [params.classKey, params.endpoint, params.companyId, _optionalChain([params, 'access', _523 => _523.options, 'optionalAccess', _524 => _524.enabled])]);
17444
+ }, [params.classKey, params.endpoint, params.companyId, _optionalChain([params, 'access', _525 => _525.options, 'optionalAccess', _526 => _526.enabled])]);
17409
17445
  const fetchNextPage = _react.useCallback.call(void 0, async () => {
17410
- if (!_optionalChain([response, 'optionalAccess', _525 => _525.nextPage])) return;
17446
+ if (!_optionalChain([response, 'optionalAccess', _527 => _527.nextPage])) return;
17411
17447
  setLoading(true);
17412
17448
  try {
17413
17449
  const nextResponse = await response.nextPage();
@@ -17428,7 +17464,7 @@ function useJsonApiGet(params) {
17428
17464
  }
17429
17465
  }, [response]);
17430
17466
  const fetchPreviousPage = _react.useCallback.call(void 0, async () => {
17431
- if (!_optionalChain([response, 'optionalAccess', _526 => _526.prevPage])) return;
17467
+ if (!_optionalChain([response, 'optionalAccess', _528 => _528.prevPage])) return;
17432
17468
  setLoading(true);
17433
17469
  try {
17434
17470
  const prevResponse = await response.prevPage();
@@ -17454,15 +17490,15 @@ function useJsonApiGet(params) {
17454
17490
  return () => {
17455
17491
  isMounted.current = false;
17456
17492
  };
17457
- }, [fetchData, ..._optionalChain([params, 'access', _527 => _527.options, 'optionalAccess', _528 => _528.deps]) || []]);
17493
+ }, [fetchData, ..._optionalChain([params, 'access', _529 => _529.options, 'optionalAccess', _530 => _530.deps]) || []]);
17458
17494
  return {
17459
17495
  data,
17460
17496
  loading,
17461
17497
  error,
17462
17498
  response,
17463
17499
  refetch: fetchData,
17464
- hasNextPage: !!_optionalChain([response, 'optionalAccess', _529 => _529.next]),
17465
- hasPreviousPage: !!_optionalChain([response, 'optionalAccess', _530 => _530.prev]),
17500
+ hasNextPage: !!_optionalChain([response, 'optionalAccess', _531 => _531.next]),
17501
+ hasPreviousPage: !!_optionalChain([response, 'optionalAccess', _532 => _532.prev]),
17466
17502
  fetchNextPage,
17467
17503
  fetchPreviousPage
17468
17504
  };
@@ -17540,17 +17576,17 @@ function useJsonApiMutation(config) {
17540
17576
  if (apiResponse.ok) {
17541
17577
  const resultData = apiResponse.data;
17542
17578
  setData(resultData);
17543
- _optionalChain([config, 'access', _531 => _531.onSuccess, 'optionalCall', _532 => _532(resultData)]);
17579
+ _optionalChain([config, 'access', _533 => _533.onSuccess, 'optionalCall', _534 => _534(resultData)]);
17544
17580
  return resultData;
17545
17581
  } else {
17546
17582
  setError(apiResponse.error);
17547
- _optionalChain([config, 'access', _533 => _533.onError, 'optionalCall', _534 => _534(apiResponse.error)]);
17583
+ _optionalChain([config, 'access', _535 => _535.onError, 'optionalCall', _536 => _536(apiResponse.error)]);
17548
17584
  return null;
17549
17585
  }
17550
17586
  } catch (err) {
17551
17587
  const errorMessage = err instanceof Error ? err.message : "Unknown error";
17552
17588
  setError(errorMessage);
17553
- _optionalChain([config, 'access', _535 => _535.onError, 'optionalCall', _536 => _536(errorMessage)]);
17589
+ _optionalChain([config, 'access', _537 => _537.onError, 'optionalCall', _538 => _538(errorMessage)]);
17554
17590
  return null;
17555
17591
  } finally {
17556
17592
  setLoading(false);
@@ -17623,7 +17659,7 @@ var useCompanyTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17623
17659
  {
17624
17660
  href: hasRole(_chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator) ? generateUrl({
17625
17661
  page: "/administration",
17626
- id: _optionalChain([_chunkA7Y5YW7Qjs.Modules, 'access', _537 => _537.Company, 'access', _538 => _538.pageUrl, 'optionalAccess', _539 => _539.substring, 'call', _540 => _540(1)]),
17662
+ id: _optionalChain([_chunkA7Y5YW7Qjs.Modules, 'access', _539 => _539.Company, 'access', _540 => _540.pageUrl, 'optionalAccess', _541 => _541.substring, 'call', _542 => _542(1)]),
17627
17663
  childPage: company.id
17628
17664
  }) : generateUrl({ page: _chunkA7Y5YW7Qjs.Modules.Company, id: company.id }),
17629
17665
  children: row.getValue("name")
@@ -17639,7 +17675,7 @@ var useCompanyTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17639
17675
  })
17640
17676
  };
17641
17677
  const columns = _react.useMemo.call(void 0, () => {
17642
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _541 => _541[field], 'optionalCall', _542 => _542()])).filter((col) => col !== void 0);
17678
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _543 => _543[field], 'optionalCall', _544 => _544()])).filter((col) => col !== void 0);
17643
17679
  }, [params.fields, fieldColumnMap, t, generateUrl, hasRole]);
17644
17680
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17645
17681
  }, "useCompanyTableStructure");
@@ -17652,7 +17688,7 @@ var DAY_MS = 1e3 * 60 * 60 * 24;
17652
17688
  var isAdministrator = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (currentUser) => {
17653
17689
  if (!currentUser || !_chunkG4JR3SFVjs.isRolesConfigured.call(void 0, )) return false;
17654
17690
  const adminRoleId = _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator;
17655
- return !!_optionalChain([currentUser, 'access', _543 => _543.roles, 'optionalAccess', _544 => _544.some, 'call', _545 => _545((role) => role.id === adminRoleId)]);
17691
+ return !!_optionalChain([currentUser, 'access', _545 => _545.roles, 'optionalAccess', _546 => _546.some, 'call', _547 => _547((role) => role.id === adminRoleId)]);
17656
17692
  }, "isAdministrator");
17657
17693
  function useSubscriptionStatus() {
17658
17694
  const { company, currentUser } = useCurrentUserContext();
@@ -17769,7 +17805,7 @@ var useRoleTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0,
17769
17805
  })
17770
17806
  };
17771
17807
  const columns = _react.useMemo.call(void 0, () => {
17772
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _546 => _546[field], 'optionalCall', _547 => _547()])).filter((col) => col !== void 0);
17808
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _548 => _548[field], 'optionalCall', _549 => _549()])).filter((col) => col !== void 0);
17773
17809
  }, [params.fields, fieldColumnMap, t, generateUrl]);
17774
17810
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17775
17811
  }, "useRoleTableStructure");
@@ -17809,12 +17845,12 @@ _chunk7QVYU63Ejs.__name.call(void 0, useBillingFormatOptions, "useBillingFormatO
17809
17845
 
17810
17846
  // src/features/billing/components/utils/discount.ts
17811
17847
  function promotionCodeDiscount(code) {
17812
- if (!_optionalChain([code, 'optionalAccess', _548 => _548.valid]) || !code.discountType || !code.discountValue) return null;
17848
+ if (!_optionalChain([code, 'optionalAccess', _550 => _550.valid]) || !code.discountType || !code.discountValue) return null;
17813
17849
  return { discountType: code.discountType, discountValue: code.discountValue, currency: code.currency };
17814
17850
  }
17815
17851
  _chunk7QVYU63Ejs.__name.call(void 0, promotionCodeDiscount, "promotionCodeDiscount");
17816
17852
  function subscriptionDiscount(subscription) {
17817
- const discount = _optionalChain([subscription, 'optionalAccess', _549 => _549.discount]);
17853
+ const discount = _optionalChain([subscription, 'optionalAccess', _551 => _551.discount]);
17818
17854
  if (!discount) return null;
17819
17855
  if (discount.percentOff) return { discountType: "percent_off", discountValue: discount.percentOff };
17820
17856
  if (discount.amountOff) {
@@ -17836,8 +17872,8 @@ var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(
17836
17872
  const t = _nextintl.useTranslations.call(void 0, );
17837
17873
  const fmt = useBillingFormatOptions();
17838
17874
  const generateUrl = usePageUrlGenerator();
17839
- const onClone = _optionalChain([params, 'access', _550 => _550.context, 'optionalAccess', _551 => _551.onClone]);
17840
- const onExport = _optionalChain([params, 'access', _552 => _552.context, 'optionalAccess', _553 => _553.onExport]);
17875
+ const onClone = _optionalChain([params, 'access', _552 => _552.context, 'optionalAccess', _553 => _553.onClone]);
17876
+ const onExport = _optionalChain([params, 'access', _554 => _554.context, 'optionalAccess', _555 => _555.onExport]);
17841
17877
  const tableData = _react.useMemo.call(void 0, () => {
17842
17878
  return params.data.map((price) => {
17843
17879
  const entry = { jsonApiData: price };
@@ -17902,7 +17938,7 @@ var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(
17902
17938
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex flex-wrap items-center gap-1", children: [
17903
17939
  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") }),
17904
17940
  price.isTrial && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.trial") }),
17905
- _optionalChain([price, 'access', _554 => _554.recurring, 'optionalAccess', _555 => _555.usageType]) === "metered" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.metered") })
17941
+ _optionalChain([price, 'access', _556 => _556.recurring, 'optionalAccess', _557 => _557.usageType]) === "metered" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.metered") })
17906
17942
  ] });
17907
17943
  }, "cell"),
17908
17944
  enableSorting: false,
@@ -17950,7 +17986,7 @@ var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(
17950
17986
  })
17951
17987
  };
17952
17988
  const columns = _react.useMemo.call(void 0, () => {
17953
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _556 => _556[field], 'optionalCall', _557 => _557()])).filter((col) => col !== void 0);
17989
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _558 => _558[field], 'optionalCall', _559 => _559()])).filter((col) => col !== void 0);
17954
17990
  }, [params.fields, fieldColumnMap, t, fmt, generateUrl, onClone, onExport]);
17955
17991
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17956
17992
  }, "useStripePriceTableStructure");
@@ -18009,7 +18045,7 @@ var useStripeProductTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.cal
18009
18045
  })
18010
18046
  };
18011
18047
  const columns = _react.useMemo.call(void 0, () => {
18012
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _558 => _558[field], 'optionalCall', _559 => _559()])).filter((col) => col !== void 0);
18048
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _560 => _560[field], 'optionalCall', _561 => _561()])).filter((col) => col !== void 0);
18013
18049
  }, [params.fields, fieldColumnMap, t, generateUrl]);
18014
18050
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
18015
18051
  }, "useStripeProductTableStructure");
@@ -18093,7 +18129,7 @@ var useStripeCouponTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
18093
18129
  })
18094
18130
  };
18095
18131
  const columns = _react.useMemo.call(void 0, () => {
18096
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _560 => _560[field], 'optionalCall', _561 => _561()])).filter((col) => col !== void 0);
18132
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _562 => _562[field], 'optionalCall', _563 => _563()])).filter((col) => col !== void 0);
18097
18133
  }, [params.fields, fieldColumnMap, t, generateUrl]);
18098
18134
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
18099
18135
  }, "useStripeCouponTableStructure");
@@ -18222,13 +18258,13 @@ var toCouponCodeInput = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (va
18222
18258
  firstTimeTransaction: values.firstTimeTransaction,
18223
18259
  automatic: values.automatic
18224
18260
  };
18225
- if (_optionalChain([values, 'access', _562 => _562.code, 'optionalAccess', _563 => _563.trim, 'call', _564 => _564()])) input.code = values.code.trim();
18261
+ if (_optionalChain([values, 'access', _564 => _564.code, 'optionalAccess', _565 => _565.trim, 'call', _566 => _566()])) input.code = values.code.trim();
18226
18262
  const minimumAmount = parseOptionalDecimal(values.minimumAmount);
18227
18263
  if (minimumAmount !== void 0) {
18228
18264
  input.minimumAmount = Math.round(minimumAmount * 100);
18229
18265
  input.minimumAmountCurrency = values.minimumAmountCurrency;
18230
18266
  }
18231
- if (_optionalChain([values, 'access', _565 => _565.stripeCustomerId, 'optionalAccess', _566 => _566.trim, 'call', _567 => _567()])) input.stripeCustomerId = values.stripeCustomerId.trim();
18267
+ if (_optionalChain([values, 'access', _567 => _567.stripeCustomerId, 'optionalAccess', _568 => _568.trim, 'call', _569 => _569()])) input.stripeCustomerId = values.stripeCustomerId.trim();
18232
18268
  if (values.expiresAt) input.expiresAt = values.expiresAt;
18233
18269
  const maxRedemptions = parseOptionalPositiveInt(values.maxRedemptions);
18234
18270
  if (maxRedemptions !== void 0) input.maxRedemptions = maxRedemptions;
@@ -18397,7 +18433,7 @@ function toCouponInput(values) {
18397
18433
  ...toDiscountInput(values),
18398
18434
  ...toDurationInput(values)
18399
18435
  };
18400
- if (_optionalChain([values, 'access', _568 => _568.stripeCouponId, 'optionalAccess', _569 => _569.trim, 'call', _570 => _570()])) payload.stripeCouponId = values.stripeCouponId.trim();
18436
+ if (_optionalChain([values, 'access', _570 => _570.stripeCouponId, 'optionalAccess', _571 => _571.trim, 'call', _572 => _572()])) payload.stripeCouponId = values.stripeCouponId.trim();
18401
18437
  if (values.products.length > 0) payload.productIds = values.products.map((product) => product.id);
18402
18438
  if (values.redeemBy) payload.redeemBy = values.redeemBy;
18403
18439
  const maxRedemptions = parseOptionalPositiveInt(values.maxRedemptions);
@@ -18720,9 +18756,9 @@ var CouponProvider = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ chi
18720
18756
  const [catalogueVersion, setCatalogueVersion] = _react.useState.call(void 0, 0);
18721
18757
  const refreshCatalogue = _react.useCallback.call(void 0, () => setCatalogueVersion((value2) => value2 + 1), []);
18722
18758
  const reloadCoupon = _react.useCallback.call(void 0, async () => {
18723
- if (!_optionalChain([coupon, 'optionalAccess', _571 => _571.id])) return;
18759
+ if (!_optionalChain([coupon, 'optionalAccess', _573 => _573.id])) return;
18724
18760
  setCoupon(await _chunkOO2DBP6Ljs.StripeCouponService.getCoupon({ id: coupon.id }));
18725
- }, [_optionalChain([coupon, 'optionalAccess', _572 => _572.id])]);
18761
+ }, [_optionalChain([coupon, 'optionalAccess', _574 => _574.id])]);
18726
18762
  const createCoupon = _react.useCallback.call(void 0,
18727
18763
  async (input) => {
18728
18764
  const saved = await _chunkOO2DBP6Ljs.StripeCouponService.createCoupon(input);
@@ -18742,13 +18778,13 @@ var CouponProvider = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ chi
18742
18778
  );
18743
18779
  const refreshCounts = _react.useCallback.call(void 0,
18744
18780
  async (id) => {
18745
- const target = _nullishCoalesce(id, () => ( _optionalChain([coupon, 'optionalAccess', _573 => _573.id])));
18781
+ const target = _nullishCoalesce(id, () => ( _optionalChain([coupon, 'optionalAccess', _575 => _575.id])));
18746
18782
  if (!target) return;
18747
18783
  const saved = await _chunkOO2DBP6Ljs.StripeCouponService.refreshCounts({ id: target });
18748
- if (_optionalChain([coupon, 'optionalAccess', _574 => _574.id]) === target) setCoupon(saved);
18784
+ if (_optionalChain([coupon, 'optionalAccess', _576 => _576.id]) === target) setCoupon(saved);
18749
18785
  refreshCatalogue();
18750
18786
  },
18751
- [_optionalChain([coupon, 'optionalAccess', _575 => _575.id]), refreshCatalogue]
18787
+ [_optionalChain([coupon, 'optionalAccess', _577 => _577.id]), refreshCatalogue]
18752
18788
  );
18753
18789
  const createCode = _react.useCallback.call(void 0,
18754
18790
  async (input) => {
@@ -18986,7 +19022,7 @@ var useStripeCouponCodeTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.
18986
19022
  })
18987
19023
  };
18988
19024
  const columns = _react.useMemo.call(void 0, () => {
18989
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _576 => _576[field], 'optionalCall', _577 => _577()])).filter((col) => col !== void 0);
19025
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _578 => _578[field], 'optionalCall', _579 => _579()])).filter((col) => col !== void 0);
18990
19026
  }, [params.fields, fieldColumnMap, t, coupon, now]);
18991
19027
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
18992
19028
  }, "useStripeCouponCodeTableStructure");
@@ -19012,7 +19048,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, formatSignupSource, "formatSignupSource");
19012
19048
  var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => {
19013
19049
  const t = _nextintl.useTranslations.call(void 0, );
19014
19050
  const locale = _chunkA7Y5YW7Qjs.useI18nLocale.call(void 0, );
19015
- const onInvite = _optionalChain([params, 'access', _578 => _578.context, 'optionalAccess', _579 => _579.onInvite]);
19051
+ const onInvite = _optionalChain([params, 'access', _580 => _580.context, 'optionalAccess', _581 => _581.onInvite]);
19016
19052
  const tableData = _react.useMemo.call(void 0, () => {
19017
19053
  return params.data.map((entry) => {
19018
19054
  const row = { jsonApiData: entry };
@@ -19107,7 +19143,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(voi
19107
19143
  cell: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ row }) => {
19108
19144
  const entry = row.original.jsonApiData;
19109
19145
  if (entry.status === "confirmed") {
19110
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Button, { size: "sm", variant: "outline", onClick: () => _optionalChain([onInvite, 'optionalCall', _580 => _580(entry)]), children: [
19146
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Button, { size: "sm", variant: "outline", onClick: () => _optionalChain([onInvite, 'optionalCall', _582 => _582(entry)]), children: [
19111
19147
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Send, { className: "me-2 h-4 w-4" }),
19112
19148
  t("waitlist.admin.actions.invite")
19113
19149
  ] });
@@ -19125,7 +19161,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(voi
19125
19161
  })
19126
19162
  };
19127
19163
  const columns = _react.useMemo.call(void 0, () => {
19128
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _581 => _581[field], 'optionalCall', _582 => _582()])).filter((col) => col !== void 0);
19164
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _583 => _583[field], 'optionalCall', _584 => _584()])).filter((col) => col !== void 0);
19129
19165
  }, [params.fields, fieldColumnMap, t, locale]);
19130
19166
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
19131
19167
  }, "useWaitlistTableStructure");
@@ -19226,11 +19262,11 @@ var useContentTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
19226
19262
  return params.fields.map((field) => {
19227
19263
  const localHandler = fieldColumnMap[field];
19228
19264
  if (localHandler) return localHandler();
19229
- const customHandler = _optionalChain([params, 'access', _583 => _583.context, 'optionalAccess', _584 => _584.customCells, 'optionalAccess', _585 => _585[field]]);
19265
+ const customHandler = _optionalChain([params, 'access', _585 => _585.context, 'optionalAccess', _586 => _586.customCells, 'optionalAccess', _587 => _587[field]]);
19230
19266
  if (customHandler) return customHandler({ t });
19231
19267
  return void 0;
19232
19268
  }).filter((col) => col !== void 0);
19233
- }, [params.fields, fieldColumnMap, t, generateUrl, _optionalChain([params, 'access', _586 => _586.context, 'optionalAccess', _587 => _587.customCells])]);
19269
+ }, [params.fields, fieldColumnMap, t, generateUrl, _optionalChain([params, 'access', _588 => _588.context, 'optionalAccess', _589 => _589.customCells])]);
19234
19270
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
19235
19271
  }, "useContentTableStructure");
19236
19272
 
@@ -19465,17 +19501,17 @@ function useOAuthConsent(params, options) {
19465
19501
  const [error, setError] = _react.useState.call(void 0, null);
19466
19502
  const [isSubmitting, setIsSubmitting] = _react.useState.call(void 0, false);
19467
19503
  const [companyId, setCompanyId] = _react.useState.call(void 0, void 0);
19468
- const contextCompanyId = _optionalChain([useCurrentUserContextOptional, 'call', _588 => _588(), 'optionalAccess', _589 => _589.company, 'optionalAccess', _590 => _590.id]);
19469
- const currentCompanyId = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _591 => _591.defaultCompanyId]), () => ( contextCompanyId));
19504
+ const contextCompanyId = _optionalChain([useCurrentUserContextOptional, 'call', _590 => _590(), 'optionalAccess', _591 => _591.company, 'optionalAccess', _592 => _592.id]);
19505
+ const currentCompanyId = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _593 => _593.defaultCompanyId]), () => ( contextCompanyId));
19470
19506
  const t = _nextintl.useTranslations.call(void 0, );
19471
19507
  const tRef = _react.useRef.call(void 0, t);
19472
19508
  tRef.current = t;
19473
19509
  _react.useEffect.call(void 0, () => {
19474
- const companies = _nullishCoalesce(_optionalChain([clientInfo, 'optionalAccess', _592 => _592.companies]), () => ( []));
19510
+ const companies = _nullishCoalesce(_optionalChain([clientInfo, 'optionalAccess', _594 => _594.companies]), () => ( []));
19475
19511
  if (companies.length === 0) return;
19476
19512
  if (companyId && companies.some((company) => company.id === companyId)) return;
19477
19513
  const current = currentCompanyId ? companies.find((company) => company.id === currentCompanyId) : void 0;
19478
- setCompanyId(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _593 => _593.id]), () => ( _optionalChain([companies, 'access', _594 => _594[0], 'optionalAccess', _595 => _595.id]))));
19514
+ setCompanyId(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _595 => _595.id]), () => ( _optionalChain([companies, 'access', _596 => _596[0], 'optionalAccess', _597 => _597.id]))));
19479
19515
  }, [clientInfo, currentCompanyId, companyId]);
19480
19516
  _react.useEffect.call(void 0, () => {
19481
19517
  const fetchInfo = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async () => {
@@ -19561,7 +19597,7 @@ function useOAuthScopeText() {
19561
19597
  };
19562
19598
  }
19563
19599
  const info = typeof scope === "string" ? void 0 : scope;
19564
- return { name: _optionalChain([info, 'optionalAccess', _596 => _596.name]) || id, description: _nullishCoalesce(_optionalChain([info, 'optionalAccess', _597 => _597.description]), () => ( "")) };
19600
+ return { name: _optionalChain([info, 'optionalAccess', _598 => _598.name]) || id, description: _nullishCoalesce(_optionalChain([info, 'optionalAccess', _599 => _599.description]), () => ( "")) };
19565
19601
  },
19566
19602
  [t]
19567
19603
  );
@@ -19617,7 +19653,7 @@ function ContentTableSearch({ data }) {
19617
19653
  const handleSearchIconClick = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
19618
19654
  if (!isExpanded) {
19619
19655
  setIsFocused(true);
19620
- setTimeout(() => _optionalChain([inputRef, 'access', _598 => _598.current, 'optionalAccess', _599 => _599.focus, 'call', _600 => _600()]), 50);
19656
+ setTimeout(() => _optionalChain([inputRef, 'access', _600 => _600.current, 'optionalAccess', _601 => _601.focus, 'call', _602 => _602()]), 50);
19621
19657
  }
19622
19658
  }, "handleSearchIconClick");
19623
19659
  const handleBlur = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
@@ -19703,7 +19739,7 @@ function getGroupKeys(item, field) {
19703
19739
  return [String(_nullishCoalesce(value, () => ( "")))];
19704
19740
  }
19705
19741
  _chunk7QVYU63Ejs.__name.call(void 0, getGroupKeys, "getGroupKeys");
19706
- var isClassComponent = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (component) => typeof component === "function" && !!_optionalChain([component, 'access', _601 => _601.prototype, 'optionalAccess', _602 => _602.isReactComponent]), "isClassComponent");
19742
+ var isClassComponent = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (component) => typeof component === "function" && !!_optionalChain([component, 'access', _603 => _603.prototype, 'optionalAccess', _604 => _604.isReactComponent]), "isClassComponent");
19707
19743
  function StableCell({ render, context }) {
19708
19744
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: render(context) });
19709
19745
  }
@@ -19727,7 +19763,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19727
19763
  if (data.isLoaded) setPendingDirection(null);
19728
19764
  }, [data.isLoaded]);
19729
19765
  const { data: tableData, columns: tableColumns } = useTableGenerator(props.tableGeneratorType, {
19730
- data: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _603 => _603.data]), () => ( EMPTY_ARRAY)),
19766
+ data: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _605 => _605.data]), () => ( EMPTY_ARRAY)),
19731
19767
  fields,
19732
19768
  checkedIds,
19733
19769
  toggleId,
@@ -19757,7 +19793,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19757
19793
  ...props.renderExpandedRow && {
19758
19794
  getExpandedRowModel: _reacttable.getExpandedRowModel.call(void 0, ),
19759
19795
  // Key rows by record id so an expansion stays with its record when a search or filter reorders the rows.
19760
- getRowId: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (row, index) => _nullishCoalesce(_optionalChain([row, 'access', _604 => _604.jsonApiData, 'optionalAccess', _605 => _605.id]), () => ( String(index))), "getRowId"),
19796
+ getRowId: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (row, index) => _nullishCoalesce(_optionalChain([row, 'access', _606 => _606.jsonApiData, 'optionalAccess', _607 => _607.id]), () => ( String(index))), "getRowId"),
19761
19797
  getRowCanExpand: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => true, "getRowCanExpand"),
19762
19798
  onExpandedChange: setExpanded,
19763
19799
  state: { expanded }
@@ -19774,7 +19810,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19774
19810
  });
19775
19811
  const rowModel = tableData ? table.getRowModel() : null;
19776
19812
  const groupedRows = _react.useMemo.call(void 0, () => {
19777
- if (!props.groupBy || !_optionalChain([rowModel, 'optionalAccess', _606 => _606.rows, 'optionalAccess', _607 => _607.length])) return null;
19813
+ if (!props.groupBy || !_optionalChain([rowModel, 'optionalAccess', _608 => _608.rows, 'optionalAccess', _609 => _609.length])) return null;
19778
19814
  const groupMap = /* @__PURE__ */ new Map();
19779
19815
  for (const row of rowModel.rows) {
19780
19816
  const keys = getGroupKeys(row.original, props.groupBy);
@@ -19853,20 +19889,20 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19853
19889
  ) }),
19854
19890
  !props.hideHeader && table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableRow, { children: headerGroup.headers.map((header) => {
19855
19891
  const meta = header.column.columnDef.meta;
19856
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableHead, { className: _optionalChain([meta, 'optionalAccess', _608 => _608.className]), children: header.isPlaceholder ? null : _reacttable.flexRender.call(void 0, header.column.columnDef.header, header.getContext()) }, header.id);
19892
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableHead, { className: _optionalChain([meta, 'optionalAccess', _610 => _610.className]), children: header.isPlaceholder ? null : _reacttable.flexRender.call(void 0, header.column.columnDef.header, header.getContext()) }, header.id);
19857
19893
  }) }, headerGroup.id))
19858
19894
  ] }),
19859
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: rowModel && _optionalChain([rowModel, 'access', _609 => _609.rows, 'optionalAccess', _610 => _610.length]) ? groupedRows ? groupedRows.map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
19860
- /* @__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', _611 => _611.groupLabel, 'optionalCall', _612 => _612(group.groupKey)]), () => ( group.groupKey)) }) }) }),
19895
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: rowModel && _optionalChain([rowModel, 'access', _611 => _611.rows, 'optionalAccess', _612 => _612.length]) ? groupedRows ? groupedRows.map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
19896
+ /* @__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', _613 => _613.groupLabel, 'optionalCall', _614 => _614(group.groupKey)]), () => ( group.groupKey)) }) }) }),
19861
19897
  group.rows.map((row) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
19862
19898
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19863
19899
  TableRow,
19864
19900
  {
19865
- onClick: () => _optionalChain([onRowClick, 'optionalCall', _613 => _613(row.original.jsonApiData)]),
19901
+ onClick: () => _optionalChain([onRowClick, 'optionalCall', _615 => _615(row.original.jsonApiData)]),
19866
19902
  className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
19867
19903
  children: row.getVisibleCells().map((cell) => {
19868
19904
  const meta = cell.column.columnDef.meta;
19869
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _614 => _614.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
19905
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _616 => _616.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
19870
19906
  })
19871
19907
  }
19872
19908
  ),
@@ -19876,11 +19912,11 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19876
19912
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19877
19913
  TableRow,
19878
19914
  {
19879
- onClick: () => _optionalChain([onRowClick, 'optionalCall', _615 => _615(row.original.jsonApiData)]),
19915
+ onClick: () => _optionalChain([onRowClick, 'optionalCall', _617 => _617(row.original.jsonApiData)]),
19880
19916
  className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
19881
19917
  children: row.getVisibleCells().map((cell) => {
19882
19918
  const meta = cell.column.columnDef.meta;
19883
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _616 => _616.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
19919
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _618 => _618.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
19884
19920
  })
19885
19921
  }
19886
19922
  ),
@@ -19895,7 +19931,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19895
19931
  onClick: (e) => {
19896
19932
  e.preventDefault();
19897
19933
  setPendingDirection("prev");
19898
- _optionalChain([data, 'access', _617 => _617.previous, 'optionalCall', _618 => _618(true)]);
19934
+ _optionalChain([data, 'access', _619 => _619.previous, 'optionalCall', _620 => _620(true)]);
19899
19935
  },
19900
19936
  disabled: !data.previous || pendingDirection !== null,
19901
19937
  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" })
@@ -19910,7 +19946,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
19910
19946
  onClick: (e) => {
19911
19947
  e.preventDefault();
19912
19948
  setPendingDirection("next");
19913
- _optionalChain([data, 'access', _619 => _619.next, 'optionalCall', _620 => _620(true)]);
19949
+ _optionalChain([data, 'access', _621 => _621.next, 'optionalCall', _622 => _622(true)]);
19914
19950
  },
19915
19951
  disabled: !data.next || pendingDirection !== null,
19916
19952
  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" })
@@ -19932,7 +19968,7 @@ function ContentListGrid(props) {
19932
19968
  if (!data.next || !sentinelRef.current) return;
19933
19969
  const observer = new IntersectionObserver(
19934
19970
  (entries) => {
19935
- if (_optionalChain([entries, 'access', _621 => _621[0], 'optionalAccess', _622 => _622.isIntersecting])) _optionalChain([data, 'access', _623 => _623.next, 'optionalCall', _624 => _624()]);
19971
+ if (_optionalChain([entries, 'access', _623 => _623[0], 'optionalAccess', _624 => _624.isIntersecting])) _optionalChain([data, 'access', _625 => _625.next, 'optionalCall', _626 => _626()]);
19936
19972
  },
19937
19973
  { threshold: 0.1, rootMargin: "200px" }
19938
19974
  );
@@ -20784,7 +20820,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
20784
20820
  newDigits[index] = digit;
20785
20821
  setDigits(newDigits);
20786
20822
  if (digit && index < 5) {
20787
- _optionalChain([inputRefs, 'access', _625 => _625.current, 'access', _626 => _626[index + 1], 'optionalAccess', _627 => _627.focus, 'call', _628 => _628()]);
20823
+ _optionalChain([inputRefs, 'access', _627 => _627.current, 'access', _628 => _628[index + 1], 'optionalAccess', _629 => _629.focus, 'call', _630 => _630()]);
20788
20824
  }
20789
20825
  const code = newDigits.join("");
20790
20826
  if (code.length === 6 && newDigits.every((d) => d !== "")) {
@@ -20793,7 +20829,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
20793
20829
  }, "handleChange");
20794
20830
  const handleKeyDown = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (index, e) => {
20795
20831
  if (e.key === "Backspace" && !digits[index] && index > 0) {
20796
- _optionalChain([inputRefs, 'access', _629 => _629.current, 'access', _630 => _630[index - 1], 'optionalAccess', _631 => _631.focus, 'call', _632 => _632()]);
20832
+ _optionalChain([inputRefs, 'access', _631 => _631.current, 'access', _632 => _632[index - 1], 'optionalAccess', _633 => _633.focus, 'call', _634 => _634()]);
20797
20833
  }
20798
20834
  }, "handleKeyDown");
20799
20835
  const handlePaste = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (e) => {
@@ -20802,7 +20838,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
20802
20838
  if (pastedData.length === 6) {
20803
20839
  const newDigits = pastedData.split("");
20804
20840
  setDigits(newDigits);
20805
- _optionalChain([inputRefs, 'access', _633 => _633.current, 'access', _634 => _634[5], 'optionalAccess', _635 => _635.focus, 'call', _636 => _636()]);
20841
+ _optionalChain([inputRefs, 'access', _635 => _635.current, 'access', _636 => _636[5], 'optionalAccess', _637 => _637.focus, 'call', _638 => _638()]);
20806
20842
  onComplete(pastedData);
20807
20843
  }
20808
20844
  }, "handlePaste");
@@ -21014,8 +21050,8 @@ function PasskeySetupDialog({ open, onOpenChange, onSuccess }) {
21014
21050
  try {
21015
21051
  const registrationData = await _chunkOO2DBP6Ljs.TwoFactorService.getPasskeyRegistrationOptions({
21016
21052
  id: _uuid.v4.call(void 0, ),
21017
- userName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _637 => _637.email]), () => ( "")),
21018
- userDisplayName: _optionalChain([currentUser, 'optionalAccess', _638 => _638.name])
21053
+ userName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _639 => _639.email]), () => ( "")),
21054
+ userDisplayName: _optionalChain([currentUser, 'optionalAccess', _640 => _640.name])
21019
21055
  });
21020
21056
  const credential = await _browser.startRegistration.call(void 0, { optionsJSON: registrationData.options });
21021
21057
  await _chunkOO2DBP6Ljs.TwoFactorService.verifyPasskeyRegistration({
@@ -21167,7 +21203,7 @@ function TotpSetupDialog({ onSuccess, trigger }) {
21167
21203
  const setup = await _chunkOO2DBP6Ljs.TwoFactorService.setupTotp({
21168
21204
  id: _uuid.v4.call(void 0, ),
21169
21205
  name: name.trim(),
21170
- accountName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _639 => _639.email]), () => ( ""))
21206
+ accountName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _641 => _641.email]), () => ( ""))
21171
21207
  });
21172
21208
  setQrCodeUri(setup.qrCodeUri);
21173
21209
  setAuthenticatorId(setup.authenticatorId);
@@ -21301,7 +21337,7 @@ function TwoFactorSettings() {
21301
21337
  if (isLoading) {
21302
21338
  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") }) }) });
21303
21339
  }
21304
- const isEnabled = _nullishCoalesce(_optionalChain([status, 'optionalAccess', _640 => _640.isEnabled]), () => ( false));
21340
+ const isEnabled = _nullishCoalesce(_optionalChain([status, 'optionalAccess', _642 => _642.isEnabled]), () => ( false));
21305
21341
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Card, { children: [
21306
21342
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardHeader, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
21307
21343
  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" }),
@@ -21339,7 +21375,7 @@ function TwoFactorSettings() {
21339
21375
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-medium", children: t("auth.two_factor.backup_codes") }),
21340
21376
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm text-muted-foreground", children: t("auth.two_factor.backup_codes_description") })
21341
21377
  ] }),
21342
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BackupCodesDialog, { remainingCodes: _nullishCoalesce(_optionalChain([status, 'optionalAccess', _641 => _641.backupCodesCount]), () => ( 0)), onRegenerate: handleRefresh })
21378
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BackupCodesDialog, { remainingCodes: _nullishCoalesce(_optionalChain([status, 'optionalAccess', _643 => _643.backupCodesCount]), () => ( 0)), onRegenerate: handleRefresh })
21343
21379
  ] }) }),
21344
21380
  !isEnabled && (authenticators.length > 0 || passkeys.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
21345
21381
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Separator, {}),
@@ -21521,9 +21557,9 @@ function AcceptInvitation() {
21521
21557
  });
21522
21558
  const onSubmit = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (values) => {
21523
21559
  try {
21524
- if (!_optionalChain([params, 'optionalAccess', _642 => _642.code])) return;
21560
+ if (!_optionalChain([params, 'optionalAccess', _644 => _644.code])) return;
21525
21561
  const payload = {
21526
- code: _optionalChain([params, 'optionalAccess', _643 => _643.code]),
21562
+ code: _optionalChain([params, 'optionalAccess', _645 => _645.code]),
21527
21563
  password: values.password
21528
21564
  };
21529
21565
  await _chunkOO2DBP6Ljs.AuthService.acceptInvitation(payload);
@@ -21896,14 +21932,14 @@ function RefreshUser() {
21896
21932
  setUser(fullUser);
21897
21933
  const token = {
21898
21934
  userId: fullUser.id,
21899
- companyId: _optionalChain([fullUser, 'access', _644 => _644.company, 'optionalAccess', _645 => _645.id]),
21935
+ companyId: _optionalChain([fullUser, 'access', _646 => _646.company, 'optionalAccess', _647 => _647.id]),
21900
21936
  roles: fullUser.roles.map((role) => role.id),
21901
- features: _nullishCoalesce(_optionalChain([fullUser, 'access', _646 => _646.company, 'optionalAccess', _647 => _647.features, 'optionalAccess', _648 => _648.map, 'call', _649 => _649((feature) => feature.id)]), () => ( [])),
21937
+ features: _nullishCoalesce(_optionalChain([fullUser, 'access', _648 => _648.company, 'optionalAccess', _649 => _649.features, 'optionalAccess', _650 => _650.map, 'call', _651 => _651((feature) => feature.id)]), () => ( [])),
21902
21938
  modules: fullUser.modules.map((module) => {
21903
21939
  return { id: module.id, permissions: module.permissions };
21904
21940
  })
21905
21941
  };
21906
- await _optionalChain([_chunkOO2DBP6Ljs.getTokenHandler.call(void 0, ), 'optionalAccess', _650 => _650.updateToken, 'call', _651 => _651(token)]);
21942
+ await _optionalChain([_chunkOO2DBP6Ljs.getTokenHandler.call(void 0, ), 'optionalAccess', _652 => _652.updateToken, 'call', _653 => _653(token)]);
21907
21943
  _cookiesnext.deleteCookie.call(void 0, "reloadData");
21908
21944
  }
21909
21945
  }, "loadFullUser");
@@ -21967,9 +22003,9 @@ function ResetPassword() {
21967
22003
  });
21968
22004
  const onSubmit = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (values) => {
21969
22005
  try {
21970
- if (!_optionalChain([params, 'optionalAccess', _652 => _652.code])) return;
22006
+ if (!_optionalChain([params, 'optionalAccess', _654 => _654.code])) return;
21971
22007
  const payload = {
21972
- code: _optionalChain([params, 'optionalAccess', _653 => _653.code]),
22008
+ code: _optionalChain([params, 'optionalAccess', _655 => _655.code]),
21973
22009
  password: values.password
21974
22010
  };
21975
22011
  await _chunkOO2DBP6Ljs.AuthService.resetPassword(payload);
@@ -22509,7 +22545,7 @@ function AiConnectionEditor({
22509
22545
  const registryRows = _react.useMemo.call(void 0, () => _nullishCoalesce(providerRegistry[connectionType], () => ( [])), [providerRegistry, connectionType]);
22510
22546
  const providers = _react.useMemo.call(void 0, () => registryRows.map((row) => row.provider), [registryRows]);
22511
22547
  const fieldsFor = _react.useCallback.call(void 0,
22512
- (provider) => _nullishCoalesce(_optionalChain([registryRows, 'access', _654 => _654.find, 'call', _655 => _655((row) => row.provider === provider), 'optionalAccess', _656 => _656.fields]), () => ( [])),
22548
+ (provider) => _nullishCoalesce(_optionalChain([registryRows, 'access', _656 => _656.find, 'call', _657 => _657((row) => row.provider === provider), 'optionalAccess', _658 => _658.fields]), () => ( [])),
22513
22549
  [registryRows]
22514
22550
  );
22515
22551
  const defaultsFor = _react.useCallback.call(void 0,
@@ -22518,7 +22554,7 @@ function AiConnectionEditor({
22518
22554
  const seeded = {};
22519
22555
  fieldsFor(provider).forEach((descriptor) => {
22520
22556
  if (descriptor.kind === "boolean") {
22521
- const current2 = _optionalChain([stored, 'optionalAccess', _657 => _657[descriptor.field]]);
22557
+ const current2 = _optionalChain([stored, 'optionalAccess', _659 => _659[descriptor.field]]);
22522
22558
  seeded[descriptor.field] = current2 !== void 0 && current2 !== null ? current2 === true : descriptor.default === true;
22523
22559
  return;
22524
22560
  }
@@ -22526,7 +22562,7 @@ function AiConnectionEditor({
22526
22562
  seeded[descriptor.field] = "";
22527
22563
  return;
22528
22564
  }
22529
- const current = _optionalChain([stored, 'optionalAccess', _658 => _658[descriptor.field]]);
22565
+ const current = _optionalChain([stored, 'optionalAccess', _660 => _660[descriptor.field]]);
22530
22566
  if (current !== void 0 && current !== null) seeded[descriptor.field] = String(current);
22531
22567
  else seeded[descriptor.field] = descriptor.default !== void 0 ? String(descriptor.default) : "";
22532
22568
  });
@@ -22552,7 +22588,7 @@ function AiConnectionEditor({
22552
22588
  values: _zod3.z.record(_zod3.z.string(), _zod3.z.any())
22553
22589
  }).superRefine((data, ctx) => {
22554
22590
  fieldsFor(data.provider).filter((descriptor) => descriptor.required).forEach((descriptor) => {
22555
- const value = _optionalChain([data, 'access', _659 => _659.values, 'optionalAccess', _660 => _660[descriptor.field]]);
22591
+ const value = _optionalChain([data, 'access', _661 => _661.values, 'optionalAccess', _662 => _662[descriptor.field]]);
22556
22592
  const filled = descriptor.kind === "secret" ? !!value || hasStoredSecret(descriptor.field) : descriptor.kind === "boolean" ? value !== void 0 : value !== void 0 && value !== null && String(value).trim() !== "";
22557
22593
  if (filled) return;
22558
22594
  ctx.addIssue({
@@ -22566,11 +22602,11 @@ function AiConnectionEditor({
22566
22602
  );
22567
22603
  const getDefaultValues = _react.useCallback.call(void 0,
22568
22604
  () => ({
22569
- id: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _661 => _661.id]), () => ( _uuid.v4.call(void 0, ))),
22570
- name: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _662 => _662.name]), () => ( "")),
22571
- provider: _nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _663 => _663.provider]), () => ( providers[0])), () => ( "")),
22572
- enabled: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _664 => _664.enabled]), () => ( true)),
22573
- values: defaultsFor(_nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _665 => _665.provider]), () => ( providers[0])), () => ( "")))
22605
+ id: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _663 => _663.id]), () => ( _uuid.v4.call(void 0, ))),
22606
+ name: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _664 => _664.name]), () => ( "")),
22607
+ provider: _nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _665 => _665.provider]), () => ( providers[0])), () => ( "")),
22608
+ enabled: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _666 => _666.enabled]), () => ( true)),
22609
+ values: defaultsFor(_nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _667 => _667.provider]), () => ( providers[0])), () => ( "")))
22574
22610
  }),
22575
22611
  [connection, providers, defaultsFor]
22576
22612
  );
@@ -22581,7 +22617,7 @@ function AiConnectionEditor({
22581
22617
  _react.useEffect.call(void 0, () => {
22582
22618
  if (registryRows.length === 0) return;
22583
22619
  const currentProvider = form.getValues("provider");
22584
- const provider = currentProvider || _optionalChain([connection, 'optionalAccess', _666 => _666.provider]) || providers[0] || "";
22620
+ const provider = currentProvider || _optionalChain([connection, 'optionalAccess', _668 => _668.provider]) || providers[0] || "";
22585
22621
  if (!provider) return;
22586
22622
  if (provider !== currentProvider) form.setValue("provider", provider);
22587
22623
  const currentValues = form.getValues("values");
@@ -22652,7 +22688,7 @@ function AiConnectionEditor({
22652
22688
  {
22653
22689
  form,
22654
22690
  entityType: t("ai_connections.admin.entity"),
22655
- entityName: _optionalChain([connection, 'optionalAccess', _667 => _667.name]),
22691
+ entityName: _optionalChain([connection, 'optionalAccess', _669 => _669.name]),
22656
22692
  isEdit,
22657
22693
  module: _chunkA7Y5YW7Qjs.Modules.AiConnection,
22658
22694
  size: "md",
@@ -22660,7 +22696,7 @@ function AiConnectionEditor({
22660
22696
  onSubmit: async (values) => {
22661
22697
  const attributes = {};
22662
22698
  fieldsFor(values.provider).forEach((descriptor) => {
22663
- const coerced = coerce(descriptor, _optionalChain([values, 'access', _668 => _668.values, 'optionalAccess', _669 => _669[descriptor.field]]));
22699
+ const coerced = coerce(descriptor, _optionalChain([values, 'access', _670 => _670.values, 'optionalAccess', _671 => _671[descriptor.field]]));
22664
22700
  if (coerced !== void 0) attributes[descriptor.field] = coerced;
22665
22701
  });
22666
22702
  const payload = {
@@ -22890,7 +22926,7 @@ function AiConnectionTypeCard({ connectionType }) {
22890
22926
  ),
22891
22927
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-muted/40 flex flex-wrap items-center gap-2 px-3 py-2", children: [
22892
22928
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softGray", children: t("ai_connections.admin.env_fallback") }),
22893
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-muted-foreground truncate text-xs", children: [_optionalChain([envDefault, 'optionalAccess', _670 => _670.provider]), _optionalChain([envDefault, 'optionalAccess', _671 => _671.model]), _optionalChain([envDefault, 'optionalAccess', _672 => _672.url])].filter(Boolean).join(" \xB7 ") })
22929
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-muted-foreground truncate text-xs", children: [_optionalChain([envDefault, 'optionalAccess', _672 => _672.provider]), _optionalChain([envDefault, 'optionalAccess', _673 => _673.model]), _optionalChain([envDefault, 'optionalAccess', _674 => _674.url])].filter(Boolean).join(" \xB7 ") })
22894
22930
  ] })
22895
22931
  ] })
22896
22932
  ] })
@@ -23179,7 +23215,7 @@ var useEmailBlastTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(v
23179
23215
  )
23180
23216
  };
23181
23217
  const columns = _react.useMemo.call(void 0, () => {
23182
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _673 => _673[field], 'optionalCall', _674 => _674()])).filter((col) => col !== void 0);
23218
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _675 => _675[field], 'optionalCall', _676 => _676()])).filter((col) => col !== void 0);
23183
23219
  }, [params.fields, fieldColumnMap, t, generateUrl, locale]);
23184
23220
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
23185
23221
  }, "useEmailBlastTableStructure");
@@ -23222,12 +23258,12 @@ function EmailBlastEditorInternal({
23222
23258
  );
23223
23259
  const getDefaultValues = _react.useCallback.call(void 0,
23224
23260
  () => ({
23225
- id: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _675 => _675.id]), () => ( _uuid.v4.call(void 0, ))),
23226
- subject: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _676 => _676.subject]), () => ( "")),
23227
- body: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _677 => _677.body]), () => ( "")),
23228
- replyTo: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _678 => _678.replyTo]), () => ( "")),
23261
+ id: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _677 => _677.id]), () => ( _uuid.v4.call(void 0, ))),
23262
+ subject: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _678 => _678.subject]), () => ( "")),
23263
+ body: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _679 => _679.body]), () => ( "")),
23264
+ replyTo: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _680 => _680.replyTo]), () => ( "")),
23229
23265
  // No preselected value on create: the form refuses to save without a choice.
23230
- purpose: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _679 => _679.purpose]), () => ( ""))
23266
+ purpose: _nullishCoalesce(_optionalChain([blast, 'optionalAccess', _681 => _681.purpose]), () => ( ""))
23231
23267
  }),
23232
23268
  [blast]
23233
23269
  );
@@ -23249,7 +23285,7 @@ function EmailBlastEditorInternal({
23249
23285
  {
23250
23286
  form,
23251
23287
  entityType: t("emailBlasts.editor.title"),
23252
- entityName: _optionalChain([blast, 'optionalAccess', _680 => _680.subject]),
23288
+ entityName: _optionalChain([blast, 'optionalAccess', _682 => _682.subject]),
23253
23289
  title: isEdit ? t("emailBlasts.editor.editTitle") : t("emailBlasts.editor.title"),
23254
23290
  isEdit,
23255
23291
  module: _chunkA7Y5YW7Qjs.Modules.EmailBlast,
@@ -23393,7 +23429,7 @@ function EmailBlastSendDialog({ blast, onSuccess }) {
23393
23429
  setIsSending(true);
23394
23430
  try {
23395
23431
  await _chunkOO2DBP6Ljs.EmailBlastService.send({ id: blast.id });
23396
- await _optionalChain([onSuccess, 'optionalCall', _681 => _681()]);
23432
+ await _optionalChain([onSuccess, 'optionalCall', _683 => _683()]);
23397
23433
  setOpen(false);
23398
23434
  } catch (error) {
23399
23435
  errorToast({ title: t("common.errors.error"), error });
@@ -23600,7 +23636,7 @@ function extractHeadings(blocks) {
23600
23636
  function processBlocks(blockArray) {
23601
23637
  for (const block of blockArray) {
23602
23638
  if (block.type === "heading") {
23603
- const level = _optionalChain([block, 'access', _682 => _682.props, 'optionalAccess', _683 => _683.level]) || 1;
23639
+ const level = _optionalChain([block, 'access', _684 => _684.props, 'optionalAccess', _685 => _685.level]) || 1;
23604
23640
  const text = extractTextFromContent(block.content);
23605
23641
  if (text.trim()) {
23606
23642
  headings.push({
@@ -23960,7 +23996,7 @@ var useHowToTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0
23960
23996
  })
23961
23997
  };
23962
23998
  const columns = _react.useMemo.call(void 0, () => {
23963
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _684 => _684[field], 'optionalCall', _685 => _685()])).filter((col) => col !== void 0);
23999
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _686 => _686[field], 'optionalCall', _687 => _687()])).filter((col) => col !== void 0);
23964
24000
  }, [params.fields, fieldColumnMap, t, generateUrl]);
23965
24001
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
23966
24002
  }, "useHowToTableStructure");
@@ -24086,7 +24122,7 @@ function HowToSelector({
24086
24122
  }, "setHowTo");
24087
24123
  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: [
24088
24124
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-row items-center justify-between", children: [
24089
- /* @__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', _686 => _686.value, 'optionalAccess', _687 => _687.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 }) }))) }) }) }),
24125
+ /* @__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', _688 => _688.value, 'optionalAccess', _689 => _689.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 }) }))) }) }) }),
24090
24126
  field.value && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24091
24127
  _lucidereact.CircleX,
24092
24128
  {
@@ -24391,10 +24427,10 @@ function CitationsTab({ citations, sources }) {
24391
24427
  ] }) }),
24392
24428
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: sorted.map((chunk) => {
24393
24429
  const isOpen = expanded.has(chunk.id);
24394
- const resolved = chunk.nodeId ? _optionalChain([sources, 'optionalAccess', _688 => _688.get, 'call', _689 => _689(chunk.nodeId)]) : void 0;
24430
+ const resolved = chunk.nodeId ? _optionalChain([sources, 'optionalAccess', _690 => _690.get, 'call', _691 => _691(chunk.nodeId)]) : void 0;
24395
24431
  const typeLabel = chunk.nodeType ? entityLabel(chunk.nodeType) : t("features.assistant.message.sources.source");
24396
24432
  const fallbackName = chunk.nodeId ? `${typeLabel} ${chunk.nodeId.slice(0, 8)}` : typeLabel;
24397
- const sourceName = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _690 => _690.name]), () => ( fallbackName));
24433
+ const sourceName = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _692 => _692.name]), () => ( fallbackName));
24398
24434
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react.Fragment, { children: [
24399
24435
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, TableRow, { children: [
24400
24436
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -24458,7 +24494,7 @@ function ContentsTab({ citations, sources }) {
24458
24494
  for (const c of citations) {
24459
24495
  const id = c.nodeId;
24460
24496
  if (!id) continue;
24461
- const source = _optionalChain([sources, 'optionalAccess', _691 => _691.get, 'call', _692 => _692(id)]);
24497
+ const source = _optionalChain([sources, 'optionalAccess', _693 => _693.get, 'call', _694 => _694(id)]);
24462
24498
  if (!source) continue;
24463
24499
  const existing = map.get(id);
24464
24500
  if (existing) {
@@ -24525,7 +24561,7 @@ function UsersTab({ users, citations, sources }) {
24525
24561
  const generate = usePageUrlGenerator();
24526
24562
  const userMap = /* @__PURE__ */ new Map();
24527
24563
  for (const u of users) {
24528
- if (!_optionalChain([u, 'optionalAccess', _693 => _693.id])) continue;
24564
+ if (!_optionalChain([u, 'optionalAccess', _695 => _695.id])) continue;
24529
24565
  userMap.set(u.id, { user: u, contentCount: 0, citationCount: 0 });
24530
24566
  }
24531
24567
  if (citations && sources) {
@@ -24596,7 +24632,7 @@ function SuggestedQuestionsTab({ questions, onSelect }) {
24596
24632
  {
24597
24633
  type: "button",
24598
24634
  disabled: !onSelect,
24599
- onClick: () => _optionalChain([onSelect, 'optionalCall', _694 => _694(q)]),
24635
+ onClick: () => _optionalChain([onSelect, 'optionalCall', _696 => _696(q)]),
24600
24636
  className: "border-border bg-muted/30 hover:bg-muted disabled:hover:bg-muted/30 rounded-md border px-3 py-1.5 text-start text-sm disabled:cursor-not-allowed disabled:opacity-50",
24601
24637
  children: q
24602
24638
  },
@@ -24631,7 +24667,7 @@ function MessageSourcesPanel({ message, isLatestAssistant, onSelectFollowUp, sou
24631
24667
  }
24632
24668
  return ids.size;
24633
24669
  }, [message.citations, sources]);
24634
- const usersCount = _nullishCoalesce(_optionalChain([users, 'optionalAccess', _695 => _695.length]), () => ( 0));
24670
+ const usersCount = _nullishCoalesce(_optionalChain([users, 'optionalAccess', _697 => _697.length]), () => ( 0));
24635
24671
  const total = refsCount + citationsCount + contentsCount + usersCount + suggestionsCount;
24636
24672
  const visibleTabs = [];
24637
24673
  if (suggestionsCount > 0) visibleTabs.push("suggested");
@@ -24774,7 +24810,7 @@ function MessageSourcesContainer({ message, isLatestAssistant, onSelectFollowUp
24774
24810
  return void 0;
24775
24811
  }
24776
24812
  })()));
24777
- if (_optionalChain([author, 'optionalAccess', _696 => _696.id])) userMap.set(author.id, author);
24813
+ if (_optionalChain([author, 'optionalAccess', _698 => _698.id])) userMap.set(author.id, author);
24778
24814
  }
24779
24815
  return Array.from(userMap.values());
24780
24816
  }, [resolved]);
@@ -24809,7 +24845,7 @@ function MessageItem({
24809
24845
  }) {
24810
24846
  const t = _nextintl.useTranslations.call(void 0, );
24811
24847
  const isUser = message.role === "user";
24812
- const isFailed = isUser && !!_optionalChain([failedMessageIds, 'optionalAccess', _697 => _697.has, 'call', _698 => _698(message.id)]);
24848
+ const isFailed = isUser && !!_optionalChain([failedMessageIds, 'optionalAccess', _699 => _699.has, 'call', _700 => _700(message.id)]);
24813
24849
  const markdownComponents = _react.useMemo.call(void 0,
24814
24850
  () => ({
24815
24851
  a: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ href, children }) => {
@@ -24826,7 +24862,7 @@ function MessageItem({
24826
24862
  isFailed && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-destructive flex items-center gap-2 text-xs", children: [
24827
24863
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertCircle, { className: "h-3.5 w-3.5" }),
24828
24864
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: t("features.assistant.send_failed") }),
24829
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: () => _optionalChain([onRetry, 'optionalCall', _699 => _699(message.id)]), children: t("features.assistant.retry") })
24865
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: () => _optionalChain([onRetry, 'optionalCall', _701 => _701(message.id)]), children: t("features.assistant.retry") })
24830
24866
  ] })
24831
24867
  ] });
24832
24868
  }
@@ -24917,7 +24953,7 @@ function AssistantThread({
24917
24953
  }) {
24918
24954
  const lastMessageRef = _react.useRef.call(void 0, null);
24919
24955
  _react.useEffect.call(void 0, () => {
24920
- _optionalChain([lastMessageRef, 'access', _700 => _700.current, 'optionalAccess', _701 => _701.scrollIntoView, 'call', _702 => _702({ block: "start", behavior: "smooth" })]);
24956
+ _optionalChain([lastMessageRef, 'access', _702 => _702.current, 'optionalAccess', _703 => _703.scrollIntoView, 'call', _704 => _704({ block: "start", behavior: "smooth" })]);
24921
24957
  }, [messages.length, sending]);
24922
24958
  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: [
24923
24959
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -24956,7 +24992,7 @@ ${message.sources.map((source) => `- \`${source}\``).join("\n")}`;
24956
24992
  return _chunkOO2DBP6Ljs.rehydrate.call(void 0, _chunkA7Y5YW7Qjs.Modules.HandbookThreadMessage, {
24957
24993
  jsonApi: {
24958
24994
  ...dehydrated.jsonApi,
24959
- attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _703 => _703.jsonApi, 'optionalAccess', _704 => _704.attributes]), () => ( {})), content }
24995
+ attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _705 => _705.jsonApi, 'optionalAccess', _706 => _706.attributes]), () => ( {})), content }
24960
24996
  },
24961
24997
  included: dehydrated.included
24962
24998
  });
@@ -24965,8 +25001,8 @@ _chunk7QVYU63Ejs.__name.call(void 0, withSourcesInContent, "withSourcesInContent
24965
25001
  function useHandbookAsk(params) {
24966
25002
  const t = _nextintl.useTranslations.call(void 0, );
24967
25003
  const generateUrl = usePageUrlGenerator();
24968
- const shouldSyncUrl = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _705 => _705.syncUrl]), () => ( true));
24969
- const handbookThreadId = _optionalChain([params, 'optionalAccess', _706 => _706.handbookThreadId]);
25004
+ const shouldSyncUrl = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _707 => _707.syncUrl]), () => ( true));
25005
+ const handbookThreadId = _optionalChain([params, 'optionalAccess', _708 => _708.handbookThreadId]);
24970
25006
  const [threads, setThreads] = _react.useState.call(void 0, []);
24971
25007
  const [thread, setThread] = _react.useState.call(void 0, void 0);
24972
25008
  const [messages, setMessages] = _react.useState.call(void 0, []);
@@ -25028,12 +25064,12 @@ function useHandbookAsk(params) {
25028
25064
  ]);
25029
25065
  setSending(true);
25030
25066
  try {
25031
- let id = _optionalChain([thread, 'optionalAccess', _707 => _707.id]);
25067
+ let id = _optionalChain([thread, 'optionalAccess', _709 => _709.id]);
25032
25068
  if (id === void 0) {
25033
25069
  const created = await _chunkOO2DBP6Ljs.HandbookThreadService.create({
25034
25070
  id: _uuid.v4.call(void 0, ),
25035
25071
  question: trimmed,
25036
- handbookPageId: _optionalChain([options, 'optionalAccess', _708 => _708.handbookPageId])
25072
+ handbookPageId: _optionalChain([options, 'optionalAccess', _710 => _710.handbookPageId])
25037
25073
  });
25038
25074
  id = created.id;
25039
25075
  setThreads((current) => [created, ...current]);
@@ -25042,7 +25078,7 @@ function useHandbookAsk(params) {
25042
25078
  id: _uuid.v4.call(void 0, ),
25043
25079
  threadId: id,
25044
25080
  question: trimmed,
25045
- handbookPageId: _optionalChain([options, 'optionalAccess', _709 => _709.handbookPageId])
25081
+ handbookPageId: _optionalChain([options, 'optionalAccess', _711 => _711.handbookPageId])
25046
25082
  });
25047
25083
  }
25048
25084
  const loaded = await _chunkOO2DBP6Ljs.HandbookThreadService.findOne({ id });
@@ -25063,7 +25099,7 @@ function useHandbookAsk(params) {
25063
25099
  setSending(false);
25064
25100
  }
25065
25101
  },
25066
- [messages.length, sending, syncUrl, t, _optionalChain([thread, 'optionalAccess', _710 => _710.id])]
25102
+ [messages.length, sending, syncUrl, t, _optionalChain([thread, 'optionalAccess', _712 => _712.id])]
25067
25103
  );
25068
25104
  return { threads, thread, messages, sending, ask, selectThread, startNew };
25069
25105
  }
@@ -25619,7 +25655,7 @@ function HandbookPageContainer({ handbookPageId }) {
25619
25655
  };
25620
25656
  }, []);
25621
25657
  const section = _react.useMemo.call(void 0,
25622
- () => sections.find((candidate) => candidate.key === _optionalChain([handbookPage, 'optionalAccess', _711 => _711.section])),
25658
+ () => sections.find((candidate) => candidate.key === _optionalChain([handbookPage, 'optionalAccess', _713 => _713.section])),
25623
25659
  [sections, handbookPage]
25624
25660
  );
25625
25661
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -25708,7 +25744,7 @@ function AssistantSidebar({
25708
25744
  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"),
25709
25745
  children: [
25710
25746
  thread.title,
25711
- _optionalChain([renderThreadBadge, 'optionalCall', _712 => _712(thread)])
25747
+ _optionalChain([renderThreadBadge, 'optionalCall', _714 => _714(thread)])
25712
25748
  ]
25713
25749
  },
25714
25750
  thread.id
@@ -25744,7 +25780,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
25744
25780
  AssistantSidebar,
25745
25781
  {
25746
25782
  threads,
25747
- activeId: _optionalChain([thread, 'optionalAccess', _713 => _713.id]),
25783
+ activeId: _optionalChain([thread, 'optionalAccess', _715 => _715.id]),
25748
25784
  onSelect: selectThread,
25749
25785
  onNew: startNew,
25750
25786
  newLabel: t("handbook.chat.new"),
@@ -25752,7 +25788,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
25752
25788
  }
25753
25789
  ) })
25754
25790
  ),
25755
- [selectThread, startNew, t, _optionalChain([thread, 'optionalAccess', _714 => _714.id]), threads]
25791
+ [selectThread, startNew, t, _optionalChain([thread, 'optionalAccess', _716 => _716.id]), threads]
25756
25792
  );
25757
25793
  return (
25758
25794
  // `RoundPageContainer` reads the page heading from the shared context, and
@@ -25764,7 +25800,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
25764
25800
  RoundPageContainer,
25765
25801
  {
25766
25802
  module: _chunkA7Y5YW7Qjs.Modules.HandbookPage,
25767
- id: _optionalChain([thread, 'optionalAccess', _715 => _715.id]),
25803
+ id: _optionalChain([thread, 'optionalAccess', _717 => _717.id]),
25768
25804
  fullWidth: true,
25769
25805
  forceHeader: true,
25770
25806
  defaultDetailsOpen: true,
@@ -25816,7 +25852,7 @@ function EntityMentionLinkView({ type, id, alias }) {
25816
25852
  } catch (e25) {
25817
25853
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
25818
25854
  }
25819
- if (!_optionalChain([module, 'optionalAccess', _716 => _716.pageUrl])) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
25855
+ if (!_optionalChain([module, 'optionalAccess', _718 => _718.pageUrl])) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
25820
25856
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Link, { href: generate({ page: module, id }), children: alias });
25821
25857
  }
25822
25858
  _chunk7QVYU63Ejs.__name.call(void 0, EntityMentionLinkView, "EntityMentionLinkView");
@@ -25948,13 +25984,13 @@ function AssistantContainer({
25948
25984
  AssistantSidebar,
25949
25985
  {
25950
25986
  threads: ctx.threads,
25951
- activeId: _optionalChain([ctx, 'access', _717 => _717.assistant, 'optionalAccess', _718 => _718.id]),
25987
+ activeId: _optionalChain([ctx, 'access', _719 => _719.assistant, 'optionalAccess', _720 => _720.id]),
25952
25988
  onSelect: ctx.selectThread,
25953
25989
  renderThreadBadge
25954
25990
  }
25955
25991
  ) })
25956
25992
  ),
25957
- [ctx.threads, _optionalChain([ctx, 'access', _719 => _719.assistant, 'optionalAccess', _720 => _720.id]), ctx.selectThread, renderThreadBadge]
25993
+ [ctx.threads, _optionalChain([ctx, 'access', _721 => _721.assistant, 'optionalAccess', _722 => _722.id]), ctx.selectThread, renderThreadBadge]
25958
25994
  );
25959
25995
  const thread = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: !showThread ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25960
25996
  AssistantEmptyState,
@@ -25962,7 +25998,7 @@ function AssistantContainer({
25962
25998
  onSend: ctx.sendMessage,
25963
25999
  operatorMode: ctx.operatorMode,
25964
26000
  onOperatorModeChange: showOperatorToggle ? ctx.setOperatorMode : void 0,
25965
- composerLeading: _optionalChain([renderScopePicker, 'optionalCall', _721 => _721()])
26001
+ composerLeading: _optionalChain([renderScopePicker, 'optionalCall', _723 => _723()])
25966
26002
  }
25967
26003
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
25968
26004
  ctx.assistant ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -25994,7 +26030,7 @@ function AssistantContainer({
25994
26030
  AssistantSidebar,
25995
26031
  {
25996
26032
  threads: ctx.threads,
25997
- activeId: _optionalChain([ctx, 'access', _722 => _722.assistant, 'optionalAccess', _723 => _723.id]),
26033
+ activeId: _optionalChain([ctx, 'access', _724 => _724.assistant, 'optionalAccess', _725 => _725.id]),
25998
26034
  onSelect: ctx.selectThread,
25999
26035
  onNew: ctx.startNew,
26000
26036
  renderThreadBadge
@@ -26007,7 +26043,7 @@ function AssistantContainer({
26007
26043
  RoundPageContainer,
26008
26044
  {
26009
26045
  module: _chunkA7Y5YW7Qjs.Modules.Assistant,
26010
- id: _optionalChain([ctx, 'access', _724 => _724.assistant, 'optionalAccess', _725 => _725.id]),
26046
+ id: _optionalChain([ctx, 'access', _726 => _726.assistant, 'optionalAccess', _727 => _727.id]),
26011
26047
  fullWidth: true,
26012
26048
  forceHeader: true,
26013
26049
  defaultDetailsOpen: true,
@@ -26035,7 +26071,7 @@ function flattenBlocks(blocks) {
26035
26071
  if (typeof inline === "string") return inline;
26036
26072
  if (!inline || typeof inline !== "object") return "";
26037
26073
  const node = inline;
26038
- if (node.type === "mention") return _nullishCoalesce(_optionalChain([node, 'access', _726 => _726.props, 'optionalAccess', _727 => _727.alias]), () => ( ""));
26074
+ if (node.type === "mention") return _nullishCoalesce(_optionalChain([node, 'access', _728 => _728.props, 'optionalAccess', _729 => _729.alias]), () => ( ""));
26039
26075
  if (typeof node.text === "string") return node.text;
26040
26076
  if (Array.isArray(node.content)) return node.content.map(readInline).join("");
26041
26077
  return "";
@@ -26152,7 +26188,7 @@ function AssistantPageContainer({
26152
26188
  AssistantSidebar,
26153
26189
  {
26154
26190
  threads: ctx.threads,
26155
- activeId: _optionalChain([ctx, 'access', _728 => _728.assistant, 'optionalAccess', _729 => _729.id]),
26191
+ activeId: _optionalChain([ctx, 'access', _730 => _730.assistant, 'optionalAccess', _731 => _731.id]),
26156
26192
  onSelect: ctx.selectThread,
26157
26193
  onNew: ctx.startNew
26158
26194
  }
@@ -26428,14 +26464,14 @@ function ApprovalActionCard({ actionId, summary, onResolved, hiddenRelationshipK
26428
26464
  const presented = _react.useMemo.call(void 0, () => parseOperatorProposal(actionProposal), [actionProposal]);
26429
26465
  const legacy = _react.useMemo.call(void 0, () => presented ? void 0 : parseLegacyProposal(toolArgs), [presented, toolArgs]);
26430
26466
  const isUpdate = toolName === "update_entity";
26431
- const entityType = _nullishCoalesce(_nullishCoalesce(_optionalChain([presented, 'optionalAccess', _730 => _730.type]), () => ( _optionalChain([legacy, 'optionalAccess', _731 => _731.type]))), () => ( ""));
26467
+ const entityType = _nullishCoalesce(_nullishCoalesce(_optionalChain([presented, 'optionalAccess', _732 => _732.type]), () => ( _optionalChain([legacy, 'optionalAccess', _733 => _733.type]))), () => ( ""));
26432
26468
  const loose = t;
26433
26469
  const entityLabel = entityName(loose, entityType);
26434
- const targetLabel = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _732 => _732.target, 'optionalAccess', _733 => _733.label]), () => ( ""));
26470
+ const targetLabel = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _734 => _734.target, 'optionalAccess', _735 => _735.label]), () => ( ""));
26435
26471
  const rows = _react.useMemo.call(void 0, () => {
26436
26472
  const yes = t("features.assistant.approval.proposal.yes");
26437
26473
  const no = t("features.assistant.approval.proposal.no");
26438
- const attributes = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _734 => _734.attributes]), () => ( _optionalChain([legacy, 'optionalAccess', _735 => _735.attributes])));
26474
+ const attributes = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _736 => _736.attributes]), () => ( _optionalChain([legacy, 'optionalAccess', _737 => _737.attributes])));
26439
26475
  const attributeRows = Object.entries(_nullishCoalesce(attributes, () => ( {}))).flatMap(([key, value]) => {
26440
26476
  const text = formatAttribute(value, yes, no);
26441
26477
  return text === void 0 ? [] : [{ key: `attribute:${key}`, label: fieldLabel(loose, entityType, key), value: text }];
@@ -26473,7 +26509,7 @@ function ApprovalActionCard({ actionId, summary, onResolved, hiddenRelationshipK
26473
26509
  try {
26474
26510
  const message = kind === "approve" ? await _chunkOO2DBP6Ljs.AssistantActionService.approve({ id: actionId }) : await _chunkOO2DBP6Ljs.AssistantActionService.deny({ id: actionId });
26475
26511
  setStatus(kind === "approve" ? "executed" : "denied");
26476
- if (message) _optionalChain([onResolved, 'optionalCall', _736 => _736(message)]);
26512
+ if (message) _optionalChain([onResolved, 'optionalCall', _738 => _738(message)]);
26477
26513
  } catch (error) {
26478
26514
  console.error(`ApprovalActionCard: failed to ${kind} assistant action ${actionId}`, error);
26479
26515
  setFailed(true);
@@ -26618,10 +26654,10 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
26618
26654
  const dateLocale = _chunkOO2DBP6Ljs.dateFormatLocale.call(void 0, _chunkA7Y5YW7Qjs.useI18nLocale.call(void 0, ));
26619
26655
  const generateUrl = usePageUrlGenerator();
26620
26656
  const { loadNotifications } = useNotificationContext();
26621
- const archived = _optionalChain([params, 'access', _737 => _737.context, 'optionalAccess', _738 => _738.archived]) === true;
26657
+ const archived = _optionalChain([params, 'access', _739 => _739.context, 'optionalAccess', _740 => _740.archived]) === true;
26622
26658
  const archiveNotification = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (notification) => {
26623
26659
  await _chunkOO2DBP6Ljs.NotificationService.archive({ id: notification.id });
26624
- _optionalChain([params, 'access', _739 => _739.dataRetriever, 'optionalAccess', _740 => _740.removeElement, 'call', _741 => _741(notification)]);
26660
+ _optionalChain([params, 'access', _741 => _741.dataRetriever, 'optionalAccess', _742 => _742.removeElement, 'call', _743 => _743(notification)]);
26625
26661
  await loadNotifications();
26626
26662
  }, "archiveNotification");
26627
26663
  const tableData = _react.useMemo.call(void 0, () => {
@@ -26660,7 +26696,7 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
26660
26696
  const data = generateNotificationData({ notification, generateUrl });
26661
26697
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-foreground text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
26662
26698
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { className: "font-medium", children: chunks }), "strong"),
26663
- actor: _nullishCoalesce(_optionalChain([data, 'access', _742 => _742.actor, 'optionalAccess', _743 => _743.name]), () => ( "")),
26699
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _744 => _744.actor, 'optionalAccess', _745 => _745.name]), () => ( "")),
26664
26700
  title: data.title,
26665
26701
  message: _nullishCoalesce(notification.message, () => ( ""))
26666
26702
  }) });
@@ -26715,7 +26751,7 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
26715
26751
  })
26716
26752
  };
26717
26753
  const columns = _react.useMemo.call(void 0, () => {
26718
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _744 => _744[field], 'optionalCall', _745 => _745()])).filter((col) => col !== void 0);
26754
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _746 => _746[field], 'optionalCall', _747 => _747()])).filter((col) => col !== void 0);
26719
26755
  }, [params.fields, fieldColumnMap, t, generateUrl]);
26720
26756
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
26721
26757
  }, "useNotificationTableStructure");
@@ -27125,11 +27161,11 @@ _chunk7QVYU63Ejs.__name.call(void 0, useReferralStats, "useReferralStats");
27125
27161
  // src/features/referral/components/ReferralWidget.tsx
27126
27162
 
27127
27163
  function inviteErrorCode(err) {
27128
- return _optionalChain([err, 'optionalAccess', _746 => _746.body, 'optionalAccess', _747 => _747.errors, 'optionalAccess', _748 => _748[0], 'optionalAccess', _749 => _749.code]);
27164
+ return _optionalChain([err, 'optionalAccess', _748 => _748.body, 'optionalAccess', _749 => _749.errors, 'optionalAccess', _750 => _750[0], 'optionalAccess', _751 => _751.code]);
27129
27165
  }
27130
27166
  _chunk7QVYU63Ejs.__name.call(void 0, inviteErrorCode, "inviteErrorCode");
27131
27167
  async function copyToClipboard(text) {
27132
- if (_optionalChain([navigator, 'access', _750 => _750.clipboard, 'optionalAccess', _751 => _751.writeText])) {
27168
+ if (_optionalChain([navigator, 'access', _752 => _752.clipboard, 'optionalAccess', _753 => _753.writeText])) {
27133
27169
  try {
27134
27170
  await navigator.clipboard.writeText(text);
27135
27171
  return true;
@@ -27192,7 +27228,7 @@ function ReferralWidget({
27192
27228
  const linkInputRef = _react.useRef.call(void 0, null);
27193
27229
  const config = _chunkI5BQLY7Vjs.getReferralConfig.call(void 0, );
27194
27230
  const baseUrl = config.referralUrlBase || (typeof window !== "undefined" ? window.location.origin : "");
27195
- const referralUrl = _optionalChain([stats, 'optionalAccess', _752 => _752.referralCode]) ? `${baseUrl}${config.referralPath}?${config.urlParamName}=${stats.referralCode}` : "";
27231
+ const referralUrl = _optionalChain([stats, 'optionalAccess', _754 => _754.referralCode]) ? `${baseUrl}${config.referralPath}?${config.urlParamName}=${stats.referralCode}` : "";
27196
27232
  if (!_chunkI5BQLY7Vjs.isReferralEnabled.call(void 0, )) {
27197
27233
  return null;
27198
27234
  }
@@ -27202,7 +27238,7 @@ function ReferralWidget({
27202
27238
  if (success) {
27203
27239
  setCopied(true);
27204
27240
  _chunkOO2DBP6Ljs.showToast.call(void 0, text.copiedMessage);
27205
- _optionalChain([onLinkCopied, 'optionalCall', _753 => _753()]);
27241
+ _optionalChain([onLinkCopied, 'optionalCall', _755 => _755()]);
27206
27242
  setTimeout(() => setCopied(false), 2e3);
27207
27243
  } else {
27208
27244
  _chunkOO2DBP6Ljs.showError.call(void 0, text.copyError);
@@ -27216,14 +27252,14 @@ function ReferralWidget({
27216
27252
  try {
27217
27253
  await sendInvite(email);
27218
27254
  _chunkOO2DBP6Ljs.showToast.call(void 0, text.inviteSent);
27219
- _optionalChain([onInviteSent, 'optionalCall', _754 => _754(email)]);
27255
+ _optionalChain([onInviteSent, 'optionalCall', _756 => _756(email)]);
27220
27256
  setEmail("");
27221
27257
  } catch (err) {
27222
27258
  const code = inviteErrorCode(err);
27223
27259
  _chunkOO2DBP6Ljs.showError.call(void 0,
27224
27260
  code === "REFERRAL_ALREADY_INVITED" ? text.alreadyInvited : code === "REFERRAL_ALREADY_REGISTERED" ? text.alreadyRegistered : text.inviteError
27225
27261
  );
27226
- _optionalChain([onInviteError, 'optionalCall', _755 => _755(err instanceof Error ? err : new Error(text.inviteError))]);
27262
+ _optionalChain([onInviteError, 'optionalCall', _757 => _757(err instanceof Error ? err : new Error(text.inviteError))]);
27227
27263
  }
27228
27264
  }, [
27229
27265
  email,
@@ -27363,7 +27399,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, ReferralDialog, "ReferralDialog");
27363
27399
 
27364
27400
 
27365
27401
  function createUsageFormatters(locale, currency) {
27366
- const symbol = _nullishCoalesce(_optionalChain([new Intl.NumberFormat(locale, { style: "currency", currency, currencyDisplay: "narrowSymbol" }), 'access', _756 => _756.formatToParts, 'call', _757 => _757(0), 'access', _758 => _758.find, 'call', _759 => _759((part) => part.type === "currency"), 'optionalAccess', _760 => _760.value]), () => ( currency));
27402
+ const symbol = _nullishCoalesce(_optionalChain([new Intl.NumberFormat(locale, { style: "currency", currency, currencyDisplay: "narrowSymbol" }), 'access', _758 => _758.formatToParts, 'call', _759 => _759(0), 'access', _760 => _760.find, 'call', _761 => _761((part) => part.type === "currency"), 'optionalAccess', _762 => _762.value]), () => ( currency));
27367
27403
  const decimal = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (value, decimals) => value.toLocaleString(locale, { minimumFractionDigits: decimals, maximumFractionDigits: decimals }), "decimal");
27368
27404
  const dayFormat = new Intl.DateTimeFormat(locale, { day: "numeric", month: "short", timeZone: "UTC" });
27369
27405
  const monthFormat = new Intl.DateTimeFormat(locale, { month: "short", year: "numeric", timeZone: "UTC" });
@@ -27477,7 +27513,7 @@ var useReferralAdminReferralTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__
27477
27513
  })
27478
27514
  };
27479
27515
  const columns = _react.useMemo.call(void 0, () => {
27480
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _761 => _761[field], 'optionalCall', _762 => _762()])).filter((col) => col !== void 0);
27516
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _763 => _763[field], 'optionalCall', _764 => _764()])).filter((col) => col !== void 0);
27481
27517
  }, [params.fields, fieldColumnMap, t, decimal]);
27482
27518
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
27483
27519
  }, "useReferralAdminReferralTableStructure");
@@ -27511,7 +27547,7 @@ var useReferralAdminReferrerTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__
27511
27547
  });
27512
27548
  }, [params.data]);
27513
27549
  const sortableHeader = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (sort, label) => () => {
27514
- const active = _optionalChain([context, 'optionalAccess', _763 => _763.sort]) === sort;
27550
+ const active = _optionalChain([context, 'optionalAccess', _765 => _765.sort]) === sort;
27515
27551
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27516
27552
  Button,
27517
27553
  {
@@ -27522,7 +27558,7 @@ var useReferralAdminReferrerTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__
27522
27558
  title: t("referral.admin.referrers.sortBy"),
27523
27559
  "aria-sort": active ? "descending" : void 0,
27524
27560
  "data-testid": active ? "referrals-referrers-sort" : void 0,
27525
- onClick: () => _optionalChain([context, 'optionalAccess', _764 => _764.onSort, 'call', _765 => _765(sort)]),
27561
+ onClick: () => _optionalChain([context, 'optionalAccess', _766 => _766.onSort, 'call', _767 => _767(sort)]),
27526
27562
  children: label
27527
27563
  }
27528
27564
  );
@@ -27634,8 +27670,8 @@ var useReferralAdminReferrerTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__
27634
27670
  })
27635
27671
  };
27636
27672
  const columns = _react.useMemo.call(void 0, () => {
27637
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _766 => _766[field], 'optionalCall', _767 => _767()])).filter((col) => col !== void 0);
27638
- }, [params.fields, fieldColumnMap, t, decimal, _optionalChain([context, 'optionalAccess', _768 => _768.sort])]);
27673
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _768 => _768[field], 'optionalCall', _769 => _769()])).filter((col) => col !== void 0);
27674
+ }, [params.fields, fieldColumnMap, t, decimal, _optionalChain([context, 'optionalAccess', _770 => _770.sort])]);
27639
27675
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
27640
27676
  }, "useReferralAdminReferrerTableStructure");
27641
27677
  registerTableGenerator("referrals/administration/referrers", useReferralAdminReferrerTableStructure);
@@ -27684,10 +27720,10 @@ function ReferralsAdminFunnel({ summary }) {
27684
27720
  const { decimal } = useUsageFormatters();
27685
27721
  const current = summary.find((row) => row.window === "current");
27686
27722
  const steps = [
27687
- { label: t("referral.admin.tiles.visits"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _769 => _769.visits]), () => ( 0)) },
27688
- { label: t("referral.admin.tiles.invites"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _770 => _770.invitesSent]), () => ( 0)) },
27689
- { label: t("referral.admin.tiles.signups"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _771 => _771.signups]), () => ( 0)) },
27690
- { label: t("referral.admin.tiles.paying"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _772 => _772.paying]), () => ( 0)) }
27723
+ { label: t("referral.admin.tiles.visits"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _771 => _771.visits]), () => ( 0)) },
27724
+ { label: t("referral.admin.tiles.invites"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _772 => _772.invitesSent]), () => ( 0)) },
27725
+ { label: t("referral.admin.tiles.signups"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _773 => _773.signups]), () => ( 0)) },
27726
+ { label: t("referral.admin.tiles.paying"), value: _nullishCoalesce(_optionalChain([current, 'optionalAccess', _774 => _774.paying]), () => ( 0)) }
27691
27727
  ];
27692
27728
  const max = Math.max(...steps.map((step) => step.value), 0);
27693
27729
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "data-testid": "referrals-funnel", className: "grid gap-2", children: [
@@ -28652,7 +28688,7 @@ function OAuthClientList({
28652
28688
  OAuthClientCard,
28653
28689
  {
28654
28690
  client,
28655
- onClick: () => _optionalChain([onClientClick, 'optionalCall', _773 => _773(client)]),
28691
+ onClick: () => _optionalChain([onClientClick, 'optionalCall', _775 => _775(client)]),
28656
28692
  onEdit: onEditClick ? () => onEditClick(client) : void 0,
28657
28693
  onDelete: onDeleteClick ? () => onDeleteClick(client) : void 0
28658
28694
  },
@@ -28677,11 +28713,11 @@ function OAuthClientForm({
28677
28713
  const t = _nextintl.useTranslations.call(void 0, );
28678
28714
  const isEditMode = !!client;
28679
28715
  const [formState, setFormState] = _react.useState.call(void 0, {
28680
- name: _optionalChain([client, 'optionalAccess', _774 => _774.name]) || "",
28681
- description: _optionalChain([client, 'optionalAccess', _775 => _775.description]) || "",
28682
- redirectUris: _optionalChain([client, 'optionalAccess', _776 => _776.redirectUris, 'optionalAccess', _777 => _777.length]) ? client.redirectUris : [""],
28716
+ name: _optionalChain([client, 'optionalAccess', _776 => _776.name]) || "",
28717
+ description: _optionalChain([client, 'optionalAccess', _777 => _777.description]) || "",
28718
+ redirectUris: _optionalChain([client, 'optionalAccess', _778 => _778.redirectUris, 'optionalAccess', _779 => _779.length]) ? client.redirectUris : [""],
28683
28719
  allowedScopes: client ? client.allowedScopes || [] : defaultScopes,
28684
- isConfidential: _nullishCoalesce(_optionalChain([client, 'optionalAccess', _778 => _778.isConfidential]), () => ( true))
28720
+ isConfidential: _nullishCoalesce(_optionalChain([client, 'optionalAccess', _780 => _780.isConfidential]), () => ( true))
28685
28721
  });
28686
28722
  const [errors, setErrors] = _react.useState.call(void 0, {});
28687
28723
  const validate = _react.useCallback.call(void 0, () => {
@@ -29091,7 +29127,7 @@ function OAuthConsentScreen({
29091
29127
  if (error || !clientInfo) {
29092
29128
  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: [
29093
29129
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertTriangle, { className: "h-4 w-4" }),
29094
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDescription, { children: _optionalChain([error, 'optionalAccess', _779 => _779.message]) || t("oauth.consent.invalid_request") })
29130
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDescription, { children: _optionalChain([error, 'optionalAccess', _781 => _781.message]) || t("oauth.consent.invalid_request") })
29095
29131
  ] }) }) }) });
29096
29132
  }
29097
29133
  const { client, scopes } = clientInfo;
@@ -29314,7 +29350,7 @@ function WaitlistForm({ onSuccess }) {
29314
29350
  source: _chunkI5BQLY7Vjs.getSignupSource.call(void 0, )
29315
29351
  });
29316
29352
  setIsSuccess(true);
29317
- _optionalChain([onSuccess, 'optionalCall', _780 => _780()]);
29353
+ _optionalChain([onSuccess, 'optionalCall', _782 => _782()]);
29318
29354
  } catch (e) {
29319
29355
  errorToast({ title: t("common.errors.error"), error: e });
29320
29356
  } finally {
@@ -29525,11 +29561,11 @@ function WaitlistList({ fullWidth } = {}) {
29525
29561
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Button, { variant: "outline", size: "icon", onClick: refresh, disabled: !data.isLoaded, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.RefreshCw, { className: `h-4 w-4 ${!data.isLoaded ? "animate-spin" : ""}` }) })
29526
29562
  ] });
29527
29563
  const totals = [
29528
- { key: "total", label: t("waitlist.admin.total"), value: _optionalChain([stats, 'optionalAccess', _781 => _781.total]) },
29529
- { key: "pending", label: t("waitlist.admin.status.pending"), value: _optionalChain([stats, 'optionalAccess', _782 => _782.pending]) },
29530
- { key: "confirmed", label: t("waitlist.admin.status.confirmed"), value: _optionalChain([stats, 'optionalAccess', _783 => _783.confirmed]) },
29531
- { key: "invited", label: t("waitlist.admin.status.invited"), value: _optionalChain([stats, 'optionalAccess', _784 => _784.invited]) },
29532
- { key: "registered", label: t("waitlist.admin.status.registered"), value: _optionalChain([stats, 'optionalAccess', _785 => _785.registered]) }
29564
+ { key: "total", label: t("waitlist.admin.total"), value: _optionalChain([stats, 'optionalAccess', _783 => _783.total]) },
29565
+ { key: "pending", label: t("waitlist.admin.status.pending"), value: _optionalChain([stats, 'optionalAccess', _784 => _784.pending]) },
29566
+ { key: "confirmed", label: t("waitlist.admin.status.confirmed"), value: _optionalChain([stats, 'optionalAccess', _785 => _785.confirmed]) },
29567
+ { key: "invited", label: t("waitlist.admin.status.invited"), value: _optionalChain([stats, 'optionalAccess', _786 => _786.invited]) },
29568
+ { key: "registered", label: t("waitlist.admin.status.registered"), value: _optionalChain([stats, 'optionalAccess', _787 => _787.registered]) }
29533
29569
  ];
29534
29570
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4", children: [
29535
29571
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "dl", { className: "grid grid-cols-5 divide-x divide-border rounded-md border", "data-testid": "waitlist-totals", children: totals.map((total) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col-reverse items-center gap-1 p-3", children: [
@@ -29884,7 +29920,7 @@ var ModuleEditor = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs.__n
29884
29920
  ] }),
29885
29921
  roleIds.map((roleId) => {
29886
29922
  const roleTokens = block[roleId];
29887
- const roleLabel = _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _786 => _786[roleId]]), () => ( roleId));
29923
+ const roleLabel = _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _788 => _788[roleId]]), () => ( roleId));
29888
29924
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { className: "border-b last:border-b-0", children: [
29889
29925
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: roleLabel }),
29890
29926
  _chunkI5BQLY7Vjs.ACTION_TYPES.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-2 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -29921,7 +29957,7 @@ function RbacContainer() {
29921
29957
  }, []);
29922
29958
  const sortedModuleIds = _react.useMemo.call(void 0, () => {
29923
29959
  if (!matrix) return [];
29924
- return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _787 => _787[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _788 => _788[b]]), () => ( b))));
29960
+ return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _789 => _789[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _790 => _790[b]]), () => ( b))));
29925
29961
  }, [matrix, moduleNames]);
29926
29962
  const roleIds = _react.useMemo.call(void 0, () => {
29927
29963
  if (roleNames) {
@@ -29984,7 +30020,7 @@ function RbacContainer() {
29984
30020
  id === selectedModuleId && "bg-muted font-medium text-foreground",
29985
30021
  id !== selectedModuleId && "text-muted-foreground"
29986
30022
  ),
29987
- children: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _789 => _789[id]]), () => ( id))
30023
+ children: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _791 => _791[id]]), () => ( id))
29988
30024
  }
29989
30025
  ) }, id)) }) }),
29990
30026
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "section", { className: "flex-1 overflow-y-auto p-4", children: selectedModuleId && selectedBlock ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -29992,7 +30028,7 @@ function RbacContainer() {
29992
30028
  {
29993
30029
  moduleId: selectedModuleId,
29994
30030
  block: selectedBlock,
29995
- moduleLabel: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _790 => _790[selectedModuleId]]), () => ( selectedModuleId)),
30031
+ moduleLabel: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _792 => _792[selectedModuleId]]), () => ( selectedModuleId)),
29996
30032
  roleIds,
29997
30033
  roleNames,
29998
30034
  onOpenPicker: openPicker
@@ -30003,12 +30039,12 @@ function RbacContainer() {
30003
30039
  RbacPermissionPicker,
30004
30040
  {
30005
30041
  open: !!activePicker,
30006
- anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _791 => _791.anchor]), () => ( null)),
30042
+ anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _793 => _793.anchor]), () => ( null)),
30007
30043
  value: activeValue,
30008
- isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _792 => _792.isRoleColumn]), () => ( false)),
30044
+ isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _794 => _794.isRoleColumn]), () => ( false)),
30009
30045
  knownSegments: activeSegments,
30010
30046
  onSetValue: handleSetValue,
30011
- onClear: _optionalChain([activePicker, 'optionalAccess', _793 => _793.isRoleColumn]) ? handleClear : void 0,
30047
+ onClear: _optionalChain([activePicker, 'optionalAccess', _795 => _795.isRoleColumn]) ? handleClear : void 0,
30012
30048
  onClose: closePicker
30013
30049
  }
30014
30050
  )
@@ -30075,7 +30111,7 @@ function RbacByRoleContainer() {
30075
30111
  }, [roleNames]);
30076
30112
  const sortedModuleIds = _react.useMemo.call(void 0, () => {
30077
30113
  if (!matrix) return [];
30078
- return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _794 => _794[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _795 => _795[b]]), () => ( b))));
30114
+ return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _796 => _796[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _797 => _797[b]]), () => ( b))));
30079
30115
  }, [matrix, moduleNames]);
30080
30116
  _react.useEffect.call(void 0, () => {
30081
30117
  if (!selectedRoleId && sortedRoleIds.length > 0) {
@@ -30124,7 +30160,7 @@ function RbacByRoleContainer() {
30124
30160
  id === selectedRoleId && "bg-muted font-medium text-foreground",
30125
30161
  id !== selectedRoleId && "text-muted-foreground"
30126
30162
  ),
30127
- children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _796 => _796[id]]), () => ( id))
30163
+ children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _798 => _798[id]]), () => ( id))
30128
30164
  }
30129
30165
  ) }, id)) }) }),
30130
30166
  /* @__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: [
@@ -30144,7 +30180,7 @@ function RbacByRoleContainer() {
30144
30180
  if (!block) return null;
30145
30181
  const defaultTokens = _nullishCoalesce(block.default, () => ( []));
30146
30182
  const roleTokens = block[selectedRoleId];
30147
- const moduleLabel = _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _797 => _797[moduleId]]), () => ( moduleId));
30183
+ const moduleLabel = _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _799 => _799[moduleId]]), () => ( moduleId));
30148
30184
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react.Fragment, { children: [
30149
30185
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "tr", { className: "border-b bg-muted/40", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30150
30186
  "td",
@@ -30159,7 +30195,7 @@ function RbacByRoleContainer() {
30159
30195
  _chunkI5BQLY7Vjs.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))
30160
30196
  ] }),
30161
30197
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { className: "border-b last:border-b-0", children: [
30162
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _798 => _798[selectedRoleId]]), () => ( selectedRoleId)) }),
30198
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _800 => _800[selectedRoleId]]), () => ( selectedRoleId)) }),
30163
30199
  _chunkI5BQLY7Vjs.ACTION_TYPES.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-2 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30164
30200
  CellButton3,
30165
30201
  {
@@ -30180,12 +30216,12 @@ function RbacByRoleContainer() {
30180
30216
  RbacPermissionPicker,
30181
30217
  {
30182
30218
  open: !!activePicker,
30183
- anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _799 => _799.anchor]), () => ( null)),
30219
+ anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _801 => _801.anchor]), () => ( null)),
30184
30220
  value: activeValue,
30185
- isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _800 => _800.isRoleColumn]), () => ( false)),
30221
+ isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _802 => _802.isRoleColumn]), () => ( false)),
30186
30222
  knownSegments: activeSegments,
30187
30223
  onSetValue: handleSetValue,
30188
- onClear: _optionalChain([activePicker, 'optionalAccess', _801 => _801.isRoleColumn]) ? handleClear : void 0,
30224
+ onClear: _optionalChain([activePicker, 'optionalAccess', _803 => _803.isRoleColumn]) ? handleClear : void 0,
30189
30225
  onClose: closePicker
30190
30226
  }
30191
30227
  )
@@ -30845,4 +30881,4 @@ _chunk7QVYU63Ejs.__name.call(void 0, RbacByRoleContainer, "RbacByRoleContainer")
30845
30881
 
30846
30882
 
30847
30883
  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.errorToast = errorToast; 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.Input = Input; exports.Label = Label; exports.isAccountDeletionEnabled = isAccountDeletionEnabled; exports.AccountDeletionAdminTrigger = AccountDeletionAdminTrigger; 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.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.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.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.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.BlockNoteStaticViewer = BlockNoteStaticViewer; 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.AccountDeletionCancelledNotice = AccountDeletionCancelledNotice; exports.AccountDeletionKeepContainer = AccountDeletionKeepContainer; 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.ADMIN_PLATFORM_SECTIONS = ADMIN_PLATFORM_SECTIONS; exports.AdminIndexGrid = AdminIndexGrid; exports.AdminIndexContainer = AdminIndexContainer; exports.ADMINISTRATION_I18N_KEYS = ADMINISTRATION_I18N_KEYS; exports.AI_CONNECTIONS_I18N_KEYS = AI_CONNECTIONS_I18N_KEYS; 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.CreditWarningBanner = CreditWarningBanner; 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.EmailBlastEditor = EmailBlastEditor; exports.EmailBlastsList = EmailBlastsList; exports.EmailBlastsListContainer = EmailBlastsListContainer; exports.EmailBlastSendDialog = EmailBlastSendDialog; exports.EmailBlastContainer = EmailBlastContainer; 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.usePushNotifications = usePushNotifications; exports.PushNotificationProvider = PushNotificationProvider; exports.OnboardingCard = OnboardingCard; exports.ReferralCodeCapture = ReferralCodeCapture; exports.ReferralWidget = ReferralWidget; exports.ReferralDialog = ReferralDialog; exports.createUsageFormatters = createUsageFormatters; exports.useUsageFormatters = useUsageFormatters; exports.CATEGORICAL_CEILING = CATEGORICAL_CEILING; exports.OTHER_COLOR = OTHER_COLOR; exports.SEQUENTIAL_RAMP = SEQUENTIAL_RAMP; exports.seriesColor = seriesColor; exports.seriesTheme = seriesTheme; exports.ReferralsAdminFunnel = ReferralsAdminFunnel; exports.metricValue = metricValue; exports.cacheHitPercentage = cacheHitPercentage; exports.percentageDelta = percentageDelta; exports.ReferralsAdminTiles = ReferralsAdminTiles; exports.ReferralsAdminContainer = ReferralsAdminContainer; exports.SignupSourceCapture = SignupSourceCapture; 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.useOAuthScopeText = useOAuthScopeText; 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.formatDate = formatDate2; exports.useBillingFormatOptions = useBillingFormatOptions; exports.promotionCodeDiscount = promotionCodeDiscount; exports.subscriptionDiscount = subscriptionDiscount; exports.applyDiscount = applyDiscount; exports.CouponRefresher = CouponRefresher; exports.couponPageModule = couponPageModule; exports.parseOptionalPositiveInt = parseOptionalPositiveInt; exports.parseOptionalDecimal = parseOptionalDecimal; exports.optionalPositiveInt = optionalPositiveInt; exports.optionalDecimal = optionalDecimal; exports.optionalDate = optionalDate; exports.couponCodeSchema = couponCodeSchema; exports.couponCodeDefaults = couponCodeDefaults; exports.toCouponCodeInput = toCouponCodeInput; exports.couponCurrencyOptions = couponCurrencyOptions; exports.CouponCodeFields = CouponCodeFields; exports.CouponEditor = CouponEditor; exports.CouponProvider = CouponProvider; exports.useCouponContext = useCouponContext; exports.CouponCodeActions = CouponCodeActions; exports.useContentTableStructure = useContentTableStructure; exports.useOAuthClients = useOAuthClients; exports.useOAuthClient = useOAuthClient;
30848
- //# sourceMappingURL=chunk-B6WMZXRY.js.map
30884
+ //# sourceMappingURL=chunk-B4ZH2FOC.js.map