@flamingo-stack/openframe-frontend-core 0.0.239 → 0.0.241

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 (131) hide show
  1. package/dist/{chunk-PN64LWNT.js → chunk-2GMHLKEO.js} +8 -8
  2. package/dist/{chunk-36G2QXYZ.cjs → chunk-3TDLFCCS.cjs} +37 -23
  3. package/dist/chunk-3TDLFCCS.cjs.map +1 -0
  4. package/dist/{chunk-ORJREQ2W.js → chunk-4XLJWX2N.js} +4 -4
  5. package/dist/chunk-5KAQW6Q3.js +285 -0
  6. package/dist/chunk-5KAQW6Q3.js.map +1 -0
  7. package/dist/{chunk-7LLS3TWN.js → chunk-6IFN7F3C.js} +5 -5
  8. package/dist/{chunk-5VU66BD2.cjs → chunk-EFT34DLB.cjs} +498 -461
  9. package/dist/chunk-EFT34DLB.cjs.map +1 -0
  10. package/dist/{chunk-Y6463TD6.js → chunk-FEZSQQTH.js} +2 -2
  11. package/dist/{chunk-IJOJWBME.cjs → chunk-GRD7M6IZ.cjs} +27 -27
  12. package/dist/{chunk-IJOJWBME.cjs.map → chunk-GRD7M6IZ.cjs.map} +1 -1
  13. package/dist/{chunk-ELMYRGWG.cjs → chunk-JEPYFYQP.cjs} +12 -12
  14. package/dist/{chunk-ELMYRGWG.cjs.map → chunk-JEPYFYQP.cjs.map} +1 -1
  15. package/dist/{chunk-Y7DCQUNL.js → chunk-KOHE4F6Q.js} +91 -54
  16. package/dist/chunk-KOHE4F6Q.js.map +1 -0
  17. package/dist/{chunk-JDQY7JCV.js → chunk-MKVKVJQQ.js} +36 -22
  18. package/dist/chunk-MKVKVJQQ.js.map +1 -0
  19. package/dist/{chunk-MTROCWO4.cjs → chunk-QJULZ4PB.cjs} +7 -7
  20. package/dist/{chunk-MTROCWO4.cjs.map → chunk-QJULZ4PB.cjs.map} +1 -1
  21. package/dist/{chunk-FSS2MIEA.cjs → chunk-SGJBUL2Y.cjs} +20 -3
  22. package/dist/chunk-SGJBUL2Y.cjs.map +1 -0
  23. package/dist/{chunk-SZ3BBI6H.cjs → chunk-SWXWKVCC.cjs} +12 -12
  24. package/dist/{chunk-SZ3BBI6H.cjs.map → chunk-SWXWKVCC.cjs.map} +1 -1
  25. package/dist/{chunk-LJGBFD52.js → chunk-VAUI3CND.js} +18 -1
  26. package/dist/chunk-VAUI3CND.js.map +1 -0
  27. package/dist/{chunk-OB45JHDY.cjs → chunk-VFKQMAUF.cjs} +3 -3
  28. package/dist/{chunk-OB45JHDY.cjs.map → chunk-VFKQMAUF.cjs.map} +1 -1
  29. package/dist/chunk-WKZS5HWH.cjs +285 -0
  30. package/dist/chunk-WKZS5HWH.cjs.map +1 -0
  31. package/dist/{chunk-G6YZ7O27.js → chunk-Z3657YGL.js} +6 -6
  32. package/dist/components/chat/hooks/use-chat-card-item.d.ts.map +1 -1
  33. package/dist/components/chat/index.cjs +6 -6
  34. package/dist/components/chat/index.js +5 -5
  35. package/dist/components/chat/types/entities/content-ref.d.ts +5 -20
  36. package/dist/components/chat/types/entities/content-ref.d.ts.map +1 -1
  37. package/dist/components/chevron-button.d.ts +3 -1
  38. package/dist/components/chevron-button.d.ts.map +1 -1
  39. package/dist/components/contact/index.cjs +7 -7
  40. package/dist/components/contact/index.js +6 -6
  41. package/dist/components/faq/faq-section.d.ts +8 -2
  42. package/dist/components/faq/faq-section.d.ts.map +1 -1
  43. package/dist/components/faq/index.cjs +3 -3
  44. package/dist/components/faq/index.js +2 -2
  45. package/dist/components/faq/json-ld.cjs +1 -1
  46. package/dist/components/faq/json-ld.cjs.map +1 -1
  47. package/dist/components/faq/{faq-json-ld.d.ts → json-ld.d.ts} +1 -1
  48. package/dist/components/faq/json-ld.d.ts.map +1 -0
  49. package/dist/components/faq/json-ld.js +1 -1
  50. package/dist/components/faq/json-ld.js.map +1 -1
  51. package/dist/components/faq-accordion.d.ts.map +1 -1
  52. package/dist/components/features/index.cjs +6 -6
  53. package/dist/components/features/index.js +5 -5
  54. package/dist/components/index.cjs +89 -85
  55. package/dist/components/index.cjs.map +1 -1
  56. package/dist/components/index.d.ts +1 -0
  57. package/dist/components/index.d.ts.map +1 -1
  58. package/dist/components/index.js +31 -27
  59. package/dist/components/index.js.map +1 -1
  60. package/dist/components/navigation/index.cjs +6 -6
  61. package/dist/components/navigation/index.js +5 -5
  62. package/dist/components/onboarding-guides/index.cjs +30 -30
  63. package/dist/components/onboarding-guides/index.cjs.map +1 -1
  64. package/dist/components/onboarding-guides/index.js +11 -11
  65. package/dist/components/related-content/index.cjs +26 -0
  66. package/dist/components/related-content/index.cjs.map +1 -0
  67. package/dist/components/related-content/index.d.ts +2 -0
  68. package/dist/components/related-content/index.d.ts.map +1 -0
  69. package/dist/components/related-content/index.js +26 -0
  70. package/dist/components/related-content/index.js.map +1 -0
  71. package/dist/components/related-content/related-content-section.d.ts +141 -0
  72. package/dist/components/related-content/related-content-section.d.ts.map +1 -0
  73. package/dist/components/tickets/index.cjs +73 -73
  74. package/dist/components/tickets/index.cjs.map +1 -1
  75. package/dist/components/tickets/index.js +15 -15
  76. package/dist/components/ui/index.cjs +11 -11
  77. package/dist/components/ui/index.cjs.map +1 -1
  78. package/dist/components/ui/index.js +13 -13
  79. package/dist/embed-shims/index.cjs +3 -3
  80. package/dist/embed-shims/index.cjs.map +1 -1
  81. package/dist/embed-shims/index.js +5 -5
  82. package/dist/index.cjs +27 -11
  83. package/dist/index.cjs.map +1 -1
  84. package/dist/index.js +55 -39
  85. package/dist/types/content-ref.d.ts +35 -0
  86. package/dist/types/content-ref.d.ts.map +1 -0
  87. package/dist/types/index.d.ts +1 -0
  88. package/dist/types/index.d.ts.map +1 -1
  89. package/dist/utils/content-ref-groups.d.ts +58 -0
  90. package/dist/utils/content-ref-groups.d.ts.map +1 -0
  91. package/dist/utils/extract-items.d.ts +18 -0
  92. package/dist/utils/extract-items.d.ts.map +1 -0
  93. package/dist/utils/index.cjs +81 -0
  94. package/dist/utils/index.cjs.map +1 -1
  95. package/dist/utils/index.d.ts +4 -1
  96. package/dist/utils/index.d.ts.map +1 -1
  97. package/dist/utils/index.js +74 -1
  98. package/dist/utils/index.js.map +1 -1
  99. package/dist/utils/list-url.d.ts +6 -0
  100. package/dist/utils/list-url.d.ts.map +1 -1
  101. package/dist/utils/suggestion-url.d.ts +26 -0
  102. package/dist/utils/suggestion-url.d.ts.map +1 -0
  103. package/package.json +7 -1
  104. package/src/components/chat/hooks/use-chat-card-item.ts +3 -38
  105. package/src/components/chat/types/entities/content-ref.ts +5 -21
  106. package/src/components/chevron-button.tsx +5 -1
  107. package/src/components/faq/faq-section.tsx +71 -26
  108. package/src/components/faq-accordion.tsx +2 -1
  109. package/src/components/index.ts +1 -0
  110. package/src/components/related-content/index.ts +9 -0
  111. package/src/components/related-content/related-content-section.tsx +603 -0
  112. package/src/types/content-ref.ts +34 -0
  113. package/src/types/index.ts +1 -0
  114. package/src/utils/content-ref-groups.ts +89 -0
  115. package/src/utils/extract-items.ts +48 -0
  116. package/src/utils/index.ts +16 -1
  117. package/src/utils/list-url.ts +9 -0
  118. package/src/utils/suggestion-url.ts +39 -0
  119. package/dist/chunk-36G2QXYZ.cjs.map +0 -1
  120. package/dist/chunk-5VU66BD2.cjs.map +0 -1
  121. package/dist/chunk-FSS2MIEA.cjs.map +0 -1
  122. package/dist/chunk-JDQY7JCV.js.map +0 -1
  123. package/dist/chunk-LJGBFD52.js.map +0 -1
  124. package/dist/chunk-Y7DCQUNL.js.map +0 -1
  125. package/dist/components/faq/faq-json-ld.d.ts.map +0 -1
  126. /package/dist/{chunk-PN64LWNT.js.map → chunk-2GMHLKEO.js.map} +0 -0
  127. /package/dist/{chunk-ORJREQ2W.js.map → chunk-4XLJWX2N.js.map} +0 -0
  128. /package/dist/{chunk-7LLS3TWN.js.map → chunk-6IFN7F3C.js.map} +0 -0
  129. /package/dist/{chunk-Y6463TD6.js.map → chunk-FEZSQQTH.js.map} +0 -0
  130. /package/dist/{chunk-G6YZ7O27.js.map → chunk-Z3657YGL.js.map} +0 -0
  131. /package/src/components/faq/{faq-json-ld.ts → json-ld.ts} +0 -0
@@ -2,13 +2,10 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkMEAR2WHScjs = require('./chunk-MEAR2WHS.cjs');
6
5
 
7
6
 
8
- var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
9
7
 
10
8
 
11
- var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
12
9
 
13
10
 
14
11
 
@@ -21,20 +18,23 @@ var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
21
18
 
22
19
 
23
20
 
21
+ var _chunk27VVOBDBcjs = require('./chunk-27VVOBDB.cjs');
24
22
 
25
23
 
26
24
 
25
+ var _chunkMEAR2WHScjs = require('./chunk-MEAR2WHS.cjs');
27
26
 
28
- var _chunkGRTZ23GLcjs = require('./chunk-GRTZ23GL.cjs');
29
27
 
28
+ var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
30
29
 
31
30
 
32
- var _chunkWBR7H6E3cjs = require('./chunk-WBR7H6E3.cjs');
31
+ var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
33
32
 
34
33
 
35
34
 
36
35
 
37
36
 
37
+ var _chunkG7UE6RKVcjs = require('./chunk-G7UE6RKV.cjs');
38
38
 
39
39
 
40
40
 
@@ -49,13 +49,13 @@ var _chunkWBR7H6E3cjs = require('./chunk-WBR7H6E3.cjs');
49
49
 
50
50
 
51
51
 
52
- var _chunk27VVOBDBcjs = require('./chunk-27VVOBDB.cjs');
53
52
 
54
53
 
54
+ var _chunkGRTZ23GLcjs = require('./chunk-GRTZ23GL.cjs');
55
55
 
56
56
 
57
57
 
58
- var _chunkG7UE6RKVcjs = require('./chunk-G7UE6RKV.cjs');
58
+ var _chunkWBR7H6E3cjs = require('./chunk-WBR7H6E3.cjs');
59
59
 
60
60
 
61
61
 
@@ -17132,6 +17132,9 @@ function scrollElementIntoView(target, options = {}) {
17132
17132
 
17133
17133
  // src/utils/list-url.ts
17134
17134
  var ALIASES = { blog_post_existing: "blog_post" };
17135
+ function canonicalContentRefType(contentRefType) {
17136
+ return _nullishCoalesce(ALIASES[contentRefType], () => ( contentRefType));
17137
+ }
17135
17138
  var BUILDERS = {
17136
17139
  roadmap_item: (ids, b) => `${b}/api/roadmap?task_ids=${ids.join(",")}`,
17137
17140
  delivery_item: (ids, b) => `${b}/api/delivery?task_ids=${ids.join(",")}`,
@@ -17156,6 +17159,60 @@ function buildListUrl(contentRefType, ids, base = "") {
17156
17159
  return fn ? fn(ids, base) : null;
17157
17160
  }
17158
17161
 
17162
+ // src/utils/content-ref-groups.ts
17163
+ var CONTENT_REF_GROUPS = {
17164
+ investor_update: { label: "Investor Updates", order: 1, layout: "grid", gridSize: "default" },
17165
+ product_release: { label: "Product Releases", order: 2, layout: "list", gridSize: "lg" },
17166
+ podcast: { label: "Podcasts", order: 3, layout: "list", gridSize: "default" },
17167
+ webinar: { label: "Webinars", order: 4, layout: "list", gridSize: "default" },
17168
+ case_study: { label: "Case Studies", order: 5, layout: "grid", gridSize: "default" },
17169
+ event: { label: "Events", order: 6, layout: "list", gridSize: "default" },
17170
+ blog_post_existing: { label: "Blog Posts", order: 7, layout: "grid", gridSize: "default" },
17171
+ customer_interview: { label: "Customer Interviews", order: 8, layout: "grid", gridSize: "default" },
17172
+ onboarding_guide: { label: "Onboarding Guides", order: 9, layout: "grid", gridSize: "default" }
17173
+ };
17174
+ function getContentRefLabel(type) {
17175
+ return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _312 => _312[type], 'optionalAccess', _313 => _313.label]), () => ( null));
17176
+ }
17177
+ function getContentRefLabelOrTitleCase(type) {
17178
+ return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _314 => _314[type], 'optionalAccess', _315 => _315.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
17179
+ }
17180
+ function orderContentRefTypes(present) {
17181
+ const presentSet = new Set(present);
17182
+ const registeredInOrder = Object.entries(CONTENT_REF_GROUPS).sort(([, a], [, b]) => a.order - b.order).map(([type]) => type).filter((type) => presentSet.has(type));
17183
+ const unregistered = [...presentSet].filter((type) => !CONTENT_REF_GROUPS[type]);
17184
+ return [...registeredInOrder, ...unregistered];
17185
+ }
17186
+
17187
+ // src/utils/extract-items.ts
17188
+ function extractItems(data) {
17189
+ if (!data || typeof data !== "object") return [];
17190
+ const obj = data;
17191
+ if (Array.isArray(obj.items)) return obj.items;
17192
+ if (Array.isArray(obj.posts)) return obj.posts;
17193
+ if (Array.isArray(obj.campaigns)) return obj.campaigns;
17194
+ if (Array.isArray(obj.completed) || Array.isArray(obj.inProgress)) {
17195
+ const completed = Array.isArray(obj.completed) ? obj.completed : [];
17196
+ const inProgress = Array.isArray(obj.inProgress) ? obj.inProgress : [];
17197
+ return [...completed, ...inProgress];
17198
+ }
17199
+ if (Array.isArray(obj.data)) return obj.data;
17200
+ if (Array.isArray(data)) return data;
17201
+ return [];
17202
+ }
17203
+ function extractItemId(type, item) {
17204
+ if (!item || typeof item !== "object") return null;
17205
+ const obj = item;
17206
+ if (type === "roadmap_item" || type === "delivery_item" || type === "internal_task") {
17207
+ const ext = obj.external_id;
17208
+ if (typeof ext === "string") return ext;
17209
+ }
17210
+ const id = obj.id;
17211
+ if (typeof id === "string") return id;
17212
+ if (typeof id === "number") return String(id);
17213
+ return null;
17214
+ }
17215
+
17159
17216
  // src/utils/content-href.ts
17160
17217
  var DEFAULT_CONTENT_SUFFIXES = {
17161
17218
  onboarding_guide: "onboarding-guides",
@@ -17832,26 +17889,26 @@ function DeviceCard({
17832
17889
  ] }),
17833
17890
  device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate", title: device.organization, children: device.organization })
17834
17891
  ] }),
17835
- _optionalChain([actions, 'access', _312 => _312.moreButton, 'optionalAccess', _313 => _313.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17892
+ _optionalChain([actions, 'access', _316 => _316.moreButton, 'optionalAccess', _317 => _317.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17836
17893
  "div",
17837
17894
  {
17838
17895
  className: "flex items-center justify-center p-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
17839
17896
  onClick: (e) => {
17840
17897
  e.stopPropagation();
17841
- _optionalChain([actions, 'access', _314 => _314.moreButton, 'optionalAccess', _315 => _315.onClick, 'optionalCall', _316 => _316()]);
17898
+ _optionalChain([actions, 'access', _318 => _318.moreButton, 'optionalAccess', _319 => _319.onClick, 'optionalCall', _320 => _320()]);
17842
17899
  },
17843
17900
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
17844
17901
  }
17845
17902
  ),
17846
- _optionalChain([actions, 'access', _317 => _317.detailsButton, 'optionalAccess', _318 => _318.visible]) !== false && _optionalChain([actions, 'access', _319 => _319.detailsButton, 'optionalAccess', _320 => _320.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
17847
- _optionalChain([actions, 'access', _321 => _321.customActions, 'optionalAccess', _322 => _322.map, 'call', _323 => _323(
17903
+ _optionalChain([actions, 'access', _321 => _321.detailsButton, 'optionalAccess', _322 => _322.visible]) !== false && _optionalChain([actions, 'access', _323 => _323.detailsButton, 'optionalAccess', _324 => _324.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
17904
+ _optionalChain([actions, 'access', _325 => _325.customActions, 'optionalAccess', _326 => _326.map, 'call', _327 => _327(
17848
17905
  (action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17849
17906
  "div",
17850
17907
  {
17851
17908
  className: "flex items-center justify-center px-4 py-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
17852
17909
  onClick: (e) => {
17853
17910
  e.stopPropagation();
17854
- _optionalChain([action, 'access', _324 => _324.onClick, 'optionalCall', _325 => _325()]);
17911
+ _optionalChain([action, 'access', _328 => _328.onClick, 'optionalCall', _329 => _329()]);
17855
17912
  },
17856
17913
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
17857
17914
  },
@@ -18351,7 +18408,7 @@ function MoreActionsMenu({
18351
18408
  ] });
18352
18409
  const handleActivate = (e) => {
18353
18410
  e.stopPropagation();
18354
- if (!item.disabled) _optionalChain([item, 'access', _326 => _326.onClick, 'optionalCall', _327 => _327()]);
18411
+ if (!item.disabled) _optionalChain([item, 'access', _330 => _330.onClick, 'optionalCall', _331 => _331()]);
18355
18412
  };
18356
18413
  if (item.href) {
18357
18414
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -18418,7 +18475,7 @@ function OrganizationCard({
18418
18475
  const handleActionClick = (e) => {
18419
18476
  e.preventDefault();
18420
18477
  e.stopPropagation();
18421
- _optionalChain([actionButton, 'optionalAccess', _328 => _328.onClick, 'call', _329 => _329(organization, e)]);
18478
+ _optionalChain([actionButton, 'optionalAccess', _332 => _332.onClick, 'call', _333 => _333(organization, e)]);
18422
18479
  };
18423
18480
  const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
18424
18481
  "div",
@@ -19323,10 +19380,10 @@ var getContentDimensions = (config) => {
19323
19380
  const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
19324
19381
  const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
19325
19382
  const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
19326
- const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _330 => _330.mobileContentDimensions, 'optionalAccess', _331 => _331.width]))), () => ( defaultMobile.width));
19327
- const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _332 => _332.mobileContentDimensions, 'optionalAccess', _333 => _333.height]))), () => ( defaultMobile.height));
19328
- const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _334 => _334.desktopContentDimensions, 'optionalAccess', _335 => _335.width]))), () => ( defaultDesktop.width));
19329
- const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _336 => _336.desktopContentDimensions, 'optionalAccess', _337 => _337.height]))), () => ( defaultDesktop.height));
19383
+ const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _334 => _334.mobileContentDimensions, 'optionalAccess', _335 => _335.width]))), () => ( defaultMobile.width));
19384
+ const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _336 => _336.mobileContentDimensions, 'optionalAccess', _337 => _337.height]))), () => ( defaultMobile.height));
19385
+ const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _338 => _338.desktopContentDimensions, 'optionalAccess', _339 => _339.width]))), () => ( defaultDesktop.width));
19386
+ const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _340 => _340.desktopContentDimensions, 'optionalAccess', _341 => _341.height]))), () => ( defaultDesktop.height));
19330
19387
  return {
19331
19388
  mobile: { width: mobileWidth, height: mobileHeight },
19332
19389
  desktop: { width: desktopWidth, height: desktopHeight }
@@ -19460,7 +19517,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
19460
19517
  const contentDimensions = getContentDimensions(config);
19461
19518
  const mobileHeight = contentDimensions.mobile.height;
19462
19519
  const calculatedHeight = Math.max(mobileHeight + 100, 400);
19463
- return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _338 => _338.innerHeight]) * 0.85 || 650)}px`;
19520
+ return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _342 => _342.innerHeight]) * 0.85 || 650)}px`;
19464
19521
  })(),
19465
19522
  minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
19466
19523
  const contentDimensions = getContentDimensions(config);
@@ -19565,7 +19622,7 @@ var FigmaPrototypeViewer = ({
19565
19622
  const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
19566
19623
  const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
19567
19624
  const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
19568
- config.defaultSectionId || _optionalChain([config, 'access', _339 => _339.sections, 'access', _340 => _340[0], 'optionalAccess', _341 => _341.id]) || ""
19625
+ config.defaultSectionId || _optionalChain([config, 'access', _343 => _343.sections, 'access', _344 => _344[0], 'optionalAccess', _345 => _345.id]) || ""
19569
19626
  );
19570
19627
  const activeSection = externalActiveSection || internalActiveSection;
19571
19628
  const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
@@ -19655,7 +19712,7 @@ var FigmaPrototypeViewer = ({
19655
19712
  const handleMessage = (event) => {
19656
19713
  if (event.origin !== "https://www.figma.com") return;
19657
19714
  const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
19658
- if (_optionalChain([event, 'access', _342 => _342.data, 'optionalAccess', _343 => _343.type]) && validEvents.includes(event.data.type)) {
19715
+ if (_optionalChain([event, 'access', _346 => _346.data, 'optionalAccess', _347 => _347.type]) && validEvents.includes(event.data.type)) {
19659
19716
  const figmaEvent = event.data;
19660
19717
  console.log("[Figma Event]", figmaEvent.type, viewMode);
19661
19718
  switch (figmaEvent.type) {
@@ -19665,19 +19722,19 @@ var FigmaPrototypeViewer = ({
19665
19722
  setIframeState("READY");
19666
19723
  break;
19667
19724
  case "PRESENTED_NODE_CHANGED":
19668
- if (_optionalChain([figmaEvent, 'access', _344 => _344.data, 'optionalAccess', _345 => _345.presentedNodeId])) {
19725
+ if (_optionalChain([figmaEvent, 'access', _348 => _348.data, 'optionalAccess', _349 => _349.presentedNodeId])) {
19669
19726
  setCurrentNodeId(figmaEvent.data.presentedNodeId);
19670
19727
  if (!isNavigating) {
19671
19728
  const matchingSection = config.sections.find((s) => {
19672
- const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _346 => _346.data, 'optionalAccess', _347 => _347.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _348 => _348.data, 'optionalAccess', _349 => _349.presentedNodeId]);
19673
- const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _350 => _350.data, 'optionalAccess', _351 => _351.presentedNodeId]) || _optionalChain([s, 'access', _352 => _352.mobileStartingNodeId, 'optionalAccess', _353 => _353.replace, 'call', _354 => _354(":", "-")]) === _optionalChain([figmaEvent, 'access', _355 => _355.data, 'optionalAccess', _356 => _356.presentedNodeId]);
19729
+ const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _350 => _350.data, 'optionalAccess', _351 => _351.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _352 => _352.data, 'optionalAccess', _353 => _353.presentedNodeId]);
19730
+ const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _354 => _354.data, 'optionalAccess', _355 => _355.presentedNodeId]) || _optionalChain([s, 'access', _356 => _356.mobileStartingNodeId, 'optionalAccess', _357 => _357.replace, 'call', _358 => _358(":", "-")]) === _optionalChain([figmaEvent, 'access', _359 => _359.data, 'optionalAccess', _360 => _360.presentedNodeId]);
19674
19731
  return desktopMatch || mobileMatch;
19675
19732
  });
19676
19733
  if (matchingSection && matchingSection.id !== activeSection) {
19677
19734
  if (!externalActiveSection) {
19678
19735
  setInternalActiveSection(matchingSection.id);
19679
19736
  }
19680
- _optionalChain([config, 'access', _357 => _357.onSectionChange, 'optionalCall', _358 => _358(matchingSection.id)]);
19737
+ _optionalChain([config, 'access', _361 => _361.onSectionChange, 'optionalCall', _362 => _362(matchingSection.id)]);
19681
19738
  }
19682
19739
  }
19683
19740
  }
@@ -19690,7 +19747,7 @@ var FigmaPrototypeViewer = ({
19690
19747
  }, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
19691
19748
  const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
19692
19749
  const section = config.sections.find((s) => s.id === sectionId);
19693
- if (!section || !_optionalChain([iframeRef, 'access', _359 => _359.current, 'optionalAccess', _360 => _360.contentWindow]) || !isInitialized) {
19750
+ if (!section || !_optionalChain([iframeRef, 'access', _363 => _363.current, 'optionalAccess', _364 => _364.contentWindow]) || !isInitialized) {
19694
19751
  return;
19695
19752
  }
19696
19753
  setIsNavigating(true);
@@ -19698,7 +19755,7 @@ var FigmaPrototypeViewer = ({
19698
19755
  if (!externalActiveSection) {
19699
19756
  setInternalActiveSection(sectionId);
19700
19757
  }
19701
- _optionalChain([config, 'access', _361 => _361.onSectionChange, 'optionalCall', _362 => _362(sectionId)]);
19758
+ _optionalChain([config, 'access', _365 => _365.onSectionChange, 'optionalCall', _366 => _366(sectionId)]);
19702
19759
  const command = {
19703
19760
  type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
19704
19761
  data: { nodeId }
@@ -20018,7 +20075,7 @@ var FiltersDropdown = ({
20018
20075
  defaults[section.id] = section.defaultSelected || [];
20019
20076
  });
20020
20077
  setSelectedFilters(defaults);
20021
- _optionalChain([onReset, 'optionalCall', _363 => _363()]);
20078
+ _optionalChain([onReset, 'optionalCall', _367 => _367()]);
20022
20079
  setIsOpen(false);
20023
20080
  };
20024
20081
  const handleApply = () => {
@@ -20311,7 +20368,7 @@ function MediaGalleryManager({
20311
20368
  const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
20312
20369
  const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
20313
20370
  const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
20314
- const file = _optionalChain([event, 'access', _364 => _364.target, 'access', _365 => _365.files, 'optionalAccess', _366 => _366[0]]);
20371
+ const file = _optionalChain([event, 'access', _368 => _368.target, 'access', _369 => _369.files, 'optionalAccess', _370 => _370[0]]);
20315
20372
  if (!file) return;
20316
20373
  let mediaType;
20317
20374
  if (file.type.startsWith("image/")) {
@@ -20426,7 +20483,7 @@ function MediaGalleryManager({
20426
20483
  {
20427
20484
  type: "button",
20428
20485
  variant: "outline",
20429
- onClick: () => _optionalChain([fileInputRef, 'access', _367 => _367.current, 'optionalAccess', _368 => _368.click, 'call', _369 => _369()]),
20486
+ onClick: () => _optionalChain([fileInputRef, 'access', _371 => _371.current, 'optionalAccess', _372 => _372.click, 'call', _373 => _373()]),
20430
20487
  disabled: isUploading,
20431
20488
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
20432
20489
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -21077,7 +21134,7 @@ function ReleaseMediaManager({
21077
21134
  const fileInputRef = _react.useRef.call(void 0, null);
21078
21135
  const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
21079
21136
  const handleFileSelect = async (event) => {
21080
- const file = _optionalChain([event, 'access', _370 => _370.target, 'access', _371 => _371.files, 'optionalAccess', _372 => _372[0]]);
21137
+ const file = _optionalChain([event, 'access', _374 => _374.target, 'access', _375 => _375.files, 'optionalAccess', _376 => _376[0]]);
21081
21138
  if (!file) return;
21082
21139
  let mediaType;
21083
21140
  if (file.type.startsWith("image/")) {
@@ -21157,7 +21214,7 @@ function ReleaseMediaManager({
21157
21214
  {
21158
21215
  type: "button",
21159
21216
  variant: "outline",
21160
- onClick: () => _optionalChain([fileInputRef, 'access', _373 => _373.current, 'optionalAccess', _374 => _374.click, 'call', _375 => _375()]),
21217
+ onClick: () => _optionalChain([fileInputRef, 'access', _377 => _377.current, 'optionalAccess', _378 => _378.click, 'call', _379 => _379()]),
21161
21218
  disabled: uploadingIndex !== null,
21162
21219
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
21163
21220
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -21370,7 +21427,7 @@ function SEOEditorPreview({
21370
21427
  const displayImage = hasOgImage || hasFeaturedImage;
21371
21428
  const handleImageUpload = async (event) => {
21372
21429
  if (!onOgImageUpload) return;
21373
- const file = _optionalChain([event, 'access', _376 => _376.target, 'access', _377 => _377.files, 'optionalAccess', _378 => _378[0]]);
21430
+ const file = _optionalChain([event, 'access', _380 => _380.target, 'access', _381 => _381.files, 'optionalAccess', _382 => _382[0]]);
21374
21431
  if (!file) return;
21375
21432
  setIsUploading(true);
21376
21433
  try {
@@ -21501,7 +21558,7 @@ function SEOEditorPreview({
21501
21558
  type: "button",
21502
21559
  variant: "outline",
21503
21560
  size: "icon",
21504
- onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _379 => _379.click, 'call', _380 => _380()]),
21561
+ onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _383 => _383.click, 'call', _384 => _384()]),
21505
21562
  disabled: disabled || isUploading,
21506
21563
  className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
21507
21564
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
@@ -21524,7 +21581,7 @@ function SEOEditorPreview({
21524
21581
  "div",
21525
21582
  {
21526
21583
  className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
21527
- onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _381 => _381.click, 'call', _382 => _382()]),
21584
+ onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _385 => _385.click, 'call', _386 => _386()]),
21528
21585
  children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
21529
21586
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
21530
21587
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
@@ -21609,7 +21666,7 @@ function SocialLinksManager({
21609
21666
  className = ""
21610
21667
  }) {
21611
21668
  const addLink = () => {
21612
- const firstPlatform = _optionalChain([platforms, 'access', _383 => _383[0], 'optionalAccess', _384 => _384.name]) || "website";
21669
+ const firstPlatform = _optionalChain([platforms, 'access', _387 => _387[0], 'optionalAccess', _388 => _388.name]) || "website";
21613
21670
  onChange([...links, { platform: firstPlatform, url: "" }]);
21614
21671
  };
21615
21672
  const removeLink = (index) => {
@@ -21621,7 +21678,7 @@ function SocialLinksManager({
21621
21678
  onChange(updated);
21622
21679
  };
21623
21680
  const getIcon = (link, platform) => {
21624
- const iconKey = _optionalChain([platform, 'optionalAccess', _385 => _385.icon_name]) || link.platform;
21681
+ const iconKey = _optionalChain([platform, 'optionalAccess', _389 => _389.icon_name]) || link.platform;
21625
21682
  const IconComponent = iconMap[iconKey];
21626
21683
  return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
21627
21684
  };
@@ -21646,7 +21703,7 @@ function SocialLinksManager({
21646
21703
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21647
21704
  _chunkGRTZ23GLcjs.Input,
21648
21705
  {
21649
- placeholder: _optionalChain([platform, 'optionalAccess', _386 => _386.placeholder]) || "Profile URL",
21706
+ placeholder: _optionalChain([platform, 'optionalAccess', _390 => _390.placeholder]) || "Profile URL",
21650
21707
  value: link.url,
21651
21708
  onChange: (e) => updateLink(index, "url", e.target.value),
21652
21709
  onKeyDown: (e) => {
@@ -21998,7 +22055,7 @@ function useVideoOriginPreconnect({
21998
22055
  supabaseStorageOrigin
21999
22056
  } = {}) {
22000
22057
  const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
22001
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _387 => _387.endpoints, 'access', _388 => _388.supabaseStorageOrigin])));
22058
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _391 => _391.endpoints, 'access', _392 => _392.supabaseStorageOrigin])));
22002
22059
  try {
22003
22060
  ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
22004
22061
  ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
@@ -22017,13 +22074,13 @@ function useVideoWarmup({
22017
22074
  nearMargin = "1000px"
22018
22075
  } = {}) {
22019
22076
  const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
22020
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _389 => _389.endpoints, 'access', _390 => _390.supabaseStorageOrigin])));
22077
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _393 => _393.endpoints, 'access', _394 => _394.supabaseStorageOrigin])));
22021
22078
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
22022
22079
  const { ref, isNear } = _chunk27VVOBDBcjs.useNearViewport.call(void 0, nearMargin);
22023
22080
  _react.useEffect.call(void 0, () => {
22024
22081
  if (!isNear || !videoUrl || !resolvedOrigin) return;
22025
22082
  const conn = navigator.connection;
22026
- if (_optionalChain([conn, 'optionalAccess', _391 => _391.saveData]) === true) return;
22083
+ if (_optionalChain([conn, 'optionalAccess', _395 => _395.saveData]) === true) return;
22027
22084
  let videoOrigin;
22028
22085
  try {
22029
22086
  videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
@@ -22092,7 +22149,7 @@ function VideoSourceSelector({
22092
22149
  input.accept = "video/*";
22093
22150
  input.onchange = async (e) => {
22094
22151
  const target = e.target;
22095
- const file = _optionalChain([target, 'access', _392 => _392.files, 'optionalAccess', _393 => _393[0]]);
22152
+ const file = _optionalChain([target, 'access', _396 => _396.files, 'optionalAccess', _397 => _397[0]]);
22096
22153
  if (!file) return;
22097
22154
  setIsUploading(true);
22098
22155
  setUploadProgress(0);
@@ -22422,7 +22479,7 @@ function TranscriptSummaryEditor({
22422
22479
  {
22423
22480
  id: "subtitles",
22424
22481
  value: subtitles || "",
22425
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _394 => _394(e.target.value)]),
22482
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _398 => _398(e.target.value)]),
22426
22483
  placeholder: subtitlesPlaceholder,
22427
22484
  disabled: disabled || !onSubtitlesChange,
22428
22485
  className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
@@ -22575,7 +22632,7 @@ var AIEnrichSection = ({
22575
22632
  }) => {
22576
22633
  const hasResults = status === "success" || status === "error";
22577
22634
  const shouldDisable = disabled || !canEnrich;
22578
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _395 => _395.filter, 'call', _396 => _396((f) => !f.isFilled)]) || [];
22635
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _399 => _399.filter, 'call', _400 => _400((f) => !f.isFilled)]) || [];
22579
22636
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
22580
22637
  "div",
22581
22638
  {
@@ -22613,7 +22670,7 @@ var AIEnrichSection = ({
22613
22670
  {
22614
22671
  id: "ai-enrich-custom-instructions",
22615
22672
  value: _nullishCoalesce(customInstructions, () => ( "")),
22616
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _397 => _397(e.target.value)]),
22673
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _401 => _401(e.target.value)]),
22617
22674
  placeholder: customInstructionsPlaceholder,
22618
22675
  disabled: loading,
22619
22676
  maxLength: customInstructionsMaxLength,
@@ -22742,7 +22799,7 @@ function HighlightVideoSection({
22742
22799
  input.accept = "video/*";
22743
22800
  input.onchange = async (e) => {
22744
22801
  const target = e.target;
22745
- const file = _optionalChain([target, 'access', _398 => _398.files, 'optionalAccess', _399 => _399[0]]);
22802
+ const file = _optionalChain([target, 'access', _402 => _402.files, 'optionalAccess', _403 => _403[0]]);
22746
22803
  if (!file) return;
22747
22804
  setUploadError(null);
22748
22805
  try {
@@ -23244,7 +23301,7 @@ function HighlightVideoPreview({
23244
23301
  input.accept = "video/*";
23245
23302
  input.onchange = async (e) => {
23246
23303
  const target = e.target;
23247
- const file = _optionalChain([target, 'access', _400 => _400.files, 'optionalAccess', _401 => _401[0]]);
23304
+ const file = _optionalChain([target, 'access', _404 => _404.files, 'optionalAccess', _405 => _405[0]]);
23248
23305
  if (!file) return;
23249
23306
  await onUpload(file);
23250
23307
  };
@@ -23431,7 +23488,7 @@ function HighlightVideoCombinedSection({
23431
23488
  input.accept = "video/*";
23432
23489
  input.onchange = async (e) => {
23433
23490
  const target = e.target;
23434
- const file = _optionalChain([target, 'access', _402 => _402.files, 'optionalAccess', _403 => _403[0]]);
23491
+ const file = _optionalChain([target, 'access', _406 => _406.files, 'optionalAccess', _407 => _407[0]]);
23435
23492
  if (!file) return;
23436
23493
  await onUpload(file);
23437
23494
  };
@@ -23728,7 +23785,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
23728
23785
  return editMode ? "Set Global Permission" : "";
23729
23786
  }
23730
23787
  const option = approvalLevelOptions.find((opt) => opt.value === level);
23731
- return _optionalChain([option, 'optionalAccess', _404 => _404.label]) || level;
23788
+ return _optionalChain([option, 'optionalAccess', _408 => _408.label]) || level;
23732
23789
  };
23733
23790
  var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
23734
23791
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
@@ -23941,12 +23998,12 @@ function PhoneInput({
23941
23998
  const runValidation = _react.useCallback.call(void 0, (phone) => {
23942
23999
  if (!phone || digitCount(phone) === 0) {
23943
24000
  setIsInvalid(false);
23944
- _optionalChain([onValidationChange, 'optionalCall', _405 => _405(false)]);
24001
+ _optionalChain([onValidationChange, 'optionalCall', _409 => _409(false)]);
23945
24002
  return;
23946
24003
  }
23947
24004
  const invalid = !validatePhoneNumber(phone, countryCode);
23948
24005
  setIsInvalid(invalid);
23949
- _optionalChain([onValidationChange, 'optionalCall', _406 => _406(invalid)]);
24006
+ _optionalChain([onValidationChange, 'optionalCall', _410 => _410(invalid)]);
23950
24007
  }, [countryCode, digitCount, onValidationChange]);
23951
24008
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
23952
24009
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -23995,7 +24052,7 @@ function PhoneInput({
23995
24052
  debouncedValidation(val);
23996
24053
  } else if (digitCount(val) === 0) {
23997
24054
  setIsInvalid(false);
23998
- _optionalChain([onValidationChange, 'optionalCall', _407 => _407(false)]);
24055
+ _optionalChain([onValidationChange, 'optionalCall', _411 => _411(false)]);
23999
24056
  }
24000
24057
  }
24001
24058
  },
@@ -24331,19 +24388,19 @@ function NotificationsProvider({
24331
24388
  }, []);
24332
24389
  const markRead = React81.useCallback((id) => {
24333
24390
  dispatch({ type: "markRead", id });
24334
- void _optionalChain([actionsRef, 'access', _408 => _408.current, 'optionalAccess', _409 => _409.onMarkRead, 'optionalCall', _410 => _410(id)]);
24391
+ void _optionalChain([actionsRef, 'access', _412 => _412.current, 'optionalAccess', _413 => _413.onMarkRead, 'optionalCall', _414 => _414(id)]);
24335
24392
  }, []);
24336
24393
  const markAllRead = React81.useCallback(() => {
24337
24394
  dispatch({ type: "markAllRead" });
24338
- void _optionalChain([actionsRef, 'access', _411 => _411.current, 'optionalAccess', _412 => _412.onMarkAllRead, 'optionalCall', _413 => _413()]);
24395
+ void _optionalChain([actionsRef, 'access', _415 => _415.current, 'optionalAccess', _416 => _416.onMarkAllRead, 'optionalCall', _417 => _417()]);
24339
24396
  }, []);
24340
24397
  const markSettled = React81.useCallback((id) => {
24341
24398
  dispatch({ type: "markSettled", id });
24342
- void _optionalChain([actionsRef, 'access', _414 => _414.current, 'optionalAccess', _415 => _415.onMarkSettled, 'optionalCall', _416 => _416(id)]);
24399
+ void _optionalChain([actionsRef, 'access', _418 => _418.current, 'optionalAccess', _419 => _419.onMarkSettled, 'optionalCall', _420 => _420(id)]);
24343
24400
  }, []);
24344
24401
  const remove = React81.useCallback((id) => {
24345
24402
  dispatch({ type: "remove", id });
24346
- void _optionalChain([actionsRef, 'access', _417 => _417.current, 'optionalAccess', _418 => _418.onRemove, 'optionalCall', _419 => _419(id)]);
24403
+ void _optionalChain([actionsRef, 'access', _421 => _421.current, 'optionalAccess', _422 => _422.onRemove, 'optionalCall', _423 => _423(id)]);
24347
24404
  }, []);
24348
24405
  const clear = React81.useCallback(() => dispatch({ type: "clear" }), []);
24349
24406
  const open = React81.useCallback(() => setIsOpen(true), []);
@@ -24352,7 +24409,7 @@ function NotificationsProvider({
24352
24409
  const setShowPopups = React81.useCallback(
24353
24410
  (value2) => {
24354
24411
  setShowPopupsState(value2);
24355
- _optionalChain([onShowPopupsChange, 'optionalCall', _420 => _420(value2)]);
24412
+ _optionalChain([onShowPopupsChange, 'optionalCall', _424 => _424(value2)]);
24356
24413
  },
24357
24414
  [onShowPopupsChange]
24358
24415
  );
@@ -24449,7 +24506,7 @@ function NotificationTile({
24449
24506
  if (!counting) return;
24450
24507
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
24451
24508
  const timer = window.setTimeout(() => {
24452
- _optionalChain([onSettle, 'optionalCall', _421 => _421(id)]);
24509
+ _optionalChain([onSettle, 'optionalCall', _425 => _425(id)]);
24453
24510
  }, remaining);
24454
24511
  return () => window.clearTimeout(timer);
24455
24512
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -24511,7 +24568,7 @@ function NotificationTile({
24511
24568
  "button",
24512
24569
  {
24513
24570
  type: "button",
24514
- onClick: () => _optionalChain([onSettle, 'optionalCall', _422 => _422(id)]),
24571
+ onClick: () => _optionalChain([onSettle, 'optionalCall', _426 => _426(id)]),
24515
24572
  "aria-label": "Dismiss notification",
24516
24573
  tabIndex: isLive ? 0 : -1,
24517
24574
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
@@ -24630,7 +24687,7 @@ function DrawerScrollList({
24630
24687
  if (!sentinel || !root) return;
24631
24688
  const observer = new IntersectionObserver(
24632
24689
  (entries) => {
24633
- if (_optionalChain([entries, 'access', _423 => _423[0], 'optionalAccess', _424 => _424.isIntersecting])) _optionalChain([loadMoreRef, 'access', _425 => _425.current, 'optionalCall', _426 => _426()]);
24690
+ if (_optionalChain([entries, 'access', _427 => _427[0], 'optionalAccess', _428 => _428.isIntersecting])) _optionalChain([loadMoreRef, 'access', _429 => _429.current, 'optionalCall', _430 => _430()]);
24634
24691
  },
24635
24692
  { root, rootMargin: loadMoreRootMargin }
24636
24693
  );
@@ -24645,7 +24702,7 @@ function DrawerScrollList({
24645
24702
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
24646
24703
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
24647
24704
  unreadNotifications.map((n) => {
24648
- const custom = _optionalChain([renderTile, 'optionalCall', _427 => _427(n, { onComplete, onSettle, liveDurationMs })]);
24705
+ const custom = _optionalChain([renderTile, 'optionalCall', _431 => _431(n, { onComplete, onSettle, liveDurationMs })]);
24649
24706
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
24650
24707
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24651
24708
  NotificationTile,
@@ -24774,7 +24831,7 @@ function NotificationPopups({
24774
24831
  className
24775
24832
  ),
24776
24833
  children: live.map((n) => {
24777
- const custom = _optionalChain([renderTile, 'optionalCall', _428 => _428(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
24834
+ const custom = _optionalChain([renderTile, 'optionalCall', _432 => _432(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
24778
24835
  if (custom) {
24779
24836
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
24780
24837
  }
@@ -24813,19 +24870,19 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
24813
24870
  // src/components/features/notifications/types.ts
24814
24871
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
24815
24872
  function isApprovalNotification(notification) {
24816
- return _optionalChain([notification, 'access', _429 => _429.meta, 'optionalAccess', _430 => _430.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
24873
+ return _optionalChain([notification, 'access', _433 => _433.meta, 'optionalAccess', _434 => _434.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
24817
24874
  }
24818
24875
  function getApprovalMeta(notification) {
24819
24876
  if (!isApprovalNotification(notification)) return null;
24820
24877
  const meta = notification.meta;
24821
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _431 => _431.approvalRequestId]);
24822
- const toolCalls = _optionalChain([meta, 'optionalAccess', _432 => _432.toolCalls]);
24878
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _435 => _435.approvalRequestId]);
24879
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _436 => _436.toolCalls]);
24823
24880
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
24824
24881
  return {
24825
24882
  approvalRequestId,
24826
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _433 => _433.dialogId]), () => ( null)),
24827
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _434 => _434.ticketId]), () => ( null)),
24828
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _435 => _435.approvalType]), () => ( null)),
24883
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _437 => _437.dialogId]), () => ( null)),
24884
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _438 => _438.ticketId]), () => ( null)),
24885
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _439 => _439.approvalType]), () => ( null)),
24829
24886
  toolCalls
24830
24887
  };
24831
24888
  }
@@ -25086,15 +25143,15 @@ function TicketCard({
25086
25143
  transform: _utilities.CSS.Transform.toString(sortable.transform),
25087
25144
  transition: sortable.transition
25088
25145
  };
25089
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _436 => _436.deviceHostnames, 'optionalAccess', _437 => _437.length]) || ticket.organizationName);
25146
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _440 => _440.deviceHostnames, 'optionalAccess', _441 => _441.length]) || ticket.organizationName);
25090
25147
  const deviceText = [
25091
- _optionalChain([ticket, 'access', _438 => _438.deviceHostnames, 'optionalAccess', _439 => _439.join, 'call', _440 => _440(", ")]),
25148
+ _optionalChain([ticket, 'access', _442 => _442.deviceHostnames, 'optionalAccess', _443 => _443.join, 'call', _444 => _444(", ")]),
25092
25149
  ticket.organizationName
25093
25150
  ].filter(Boolean).join(", ");
25094
25151
  const handleClick = (e) => {
25095
25152
  if (sortable.isDragging) e.preventDefault();
25096
25153
  };
25097
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _441 => _441.assignees, 'optionalAccess', _442 => _442.length]) || renderAssignSlot);
25154
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _445 => _445.assignees, 'optionalAccess', _446 => _446.length]) || renderAssignSlot);
25098
25155
  const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
25099
25156
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25100
25157
  _chunkC6ASEPZLcjs.Flag02Icon,
@@ -25103,7 +25160,7 @@ function TicketCard({
25103
25160
  "aria-label": `Priority: ${ticket.priority}`
25104
25161
  }
25105
25162
  ),
25106
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _443 => _443.assignees, 'optionalAccess', _444 => _444.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
25163
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _447 => _447.assignees, 'optionalAccess', _448 => _448.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
25107
25164
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25108
25165
  SquareAvatar,
25109
25166
  {
@@ -25132,7 +25189,7 @@ function TicketCard({
25132
25189
  ] }),
25133
25190
  rightSection
25134
25191
  ] }),
25135
- _optionalChain([ticket, 'access', _445 => _445.tags, 'optionalAccess', _446 => _446.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null
25192
+ _optionalChain([ticket, 'access', _449 => _449.tags, 'optionalAccess', _450 => _450.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null
25136
25193
  ] });
25137
25194
  const cardClasses = _chunkFIG2RKZFcjs.cn.call(void 0,
25138
25195
  "relative flex flex-col gap-[var(--spacing-system-sf)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-sf)] select-none text-left",
@@ -25307,7 +25364,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
25307
25364
  const observer = new IntersectionObserver(
25308
25365
  (entries) => {
25309
25366
  if (entries.some((e) => e.isIntersecting)) {
25310
- _optionalChain([loadMoreRef, 'access', _447 => _447.current, 'optionalCall', _448 => _448(columnIdRef.current)]);
25367
+ _optionalChain([loadMoreRef, 'access', _451 => _451.current, 'optionalCall', _452 => _452(columnIdRef.current)]);
25311
25368
  }
25312
25369
  },
25313
25370
  { root, rootMargin: loadMoreRootMargin }
@@ -25336,7 +25393,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
25336
25393
  {
25337
25394
  ticket: t,
25338
25395
  columnId: column.id,
25339
- href: _optionalChain([getTicketHref, 'optionalCall', _449 => _449(t.id)]),
25396
+ href: _optionalChain([getTicketHref, 'optionalCall', _453 => _453(t.id)]),
25340
25397
  renderAssignSlot,
25341
25398
  dragDisabled: column.dragDisabled
25342
25399
  },
@@ -25432,17 +25489,17 @@ function Board({
25432
25489
  const pointer = _core.pointerWithin.call(void 0, args);
25433
25490
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
25434
25491
  const ticketHit = intersections.find(
25435
- (c) => _optionalChain([c, 'access', _450 => _450.data, 'optionalAccess', _451 => _451.droppableContainer, 'optionalAccess', _452 => _452.data, 'optionalAccess', _453 => _453.current, 'optionalAccess', _454 => _454.type]) === "ticket"
25492
+ (c) => _optionalChain([c, 'access', _454 => _454.data, 'optionalAccess', _455 => _455.droppableContainer, 'optionalAccess', _456 => _456.data, 'optionalAccess', _457 => _457.current, 'optionalAccess', _458 => _458.type]) === "ticket"
25436
25493
  );
25437
25494
  if (ticketHit) return [ticketHit];
25438
25495
  const columnHit = intersections.find(
25439
- (c) => _optionalChain([c, 'access', _455 => _455.data, 'optionalAccess', _456 => _456.droppableContainer, 'optionalAccess', _457 => _457.data, 'optionalAccess', _458 => _458.current, 'optionalAccess', _459 => _459.type]) === "column"
25496
+ (c) => _optionalChain([c, 'access', _459 => _459.data, 'optionalAccess', _460 => _460.droppableContainer, 'optionalAccess', _461 => _461.data, 'optionalAccess', _462 => _462.current, 'optionalAccess', _463 => _463.type]) === "column"
25440
25497
  );
25441
25498
  if (columnHit) {
25442
- const columnId = _optionalChain([columnHit, 'access', _460 => _460.data, 'optionalAccess', _461 => _461.droppableContainer, 'optionalAccess', _462 => _462.data, 'optionalAccess', _463 => _463.current, 'optionalAccess', _464 => _464.columnId]);
25499
+ const columnId = _optionalChain([columnHit, 'access', _464 => _464.data, 'optionalAccess', _465 => _465.droppableContainer, 'optionalAccess', _466 => _466.data, 'optionalAccess', _467 => _467.current, 'optionalAccess', _468 => _468.columnId]);
25443
25500
  const ticketsInColumn = args.droppableContainers.filter((c) => {
25444
25501
  const d = c.data.current;
25445
- return _optionalChain([d, 'optionalAccess', _465 => _465.type]) === "ticket" && d.columnId === columnId;
25502
+ return _optionalChain([d, 'optionalAccess', _469 => _469.type]) === "ticket" && d.columnId === columnId;
25446
25503
  });
25447
25504
  if (ticketsInColumn.length > 0) {
25448
25505
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -25467,20 +25524,20 @@ function Board({
25467
25524
  const overId = String(over.id);
25468
25525
  if (activeId === overId) return;
25469
25526
  const overData = over.data.current;
25470
- const fromColumnId = _optionalChain([locate, 'call', _466 => _466(items, activeId), 'optionalAccess', _467 => _467.columnId]);
25471
- const toColumnId = _optionalChain([overData, 'optionalAccess', _468 => _468.columnId]);
25527
+ const fromColumnId = _optionalChain([locate, 'call', _470 => _470(items, activeId), 'optionalAccess', _471 => _471.columnId]);
25528
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _472 => _472.columnId]);
25472
25529
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
25473
25530
  const origin = dragOriginRef.current;
25474
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _469 => _469.fromColumnId]) === toColumnId;
25531
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _473 => _473.fromColumnId]) === toColumnId;
25475
25532
  const targetCol = items.find((c) => c.id === toColumnId);
25476
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _470 => _470.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
25477
- if (_optionalChain([targetCol, 'optionalAccess', _471 => _471.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
25533
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _474 => _474.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
25534
+ if (_optionalChain([targetCol, 'optionalAccess', _475 => _475.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
25478
25535
  setItems((prev) => {
25479
25536
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
25480
25537
  const toCol = prev.find((c) => c.id === toColumnId);
25481
25538
  if (fromIndex < 0 || !toCol) return prev;
25482
25539
  let toIndex;
25483
- if (_optionalChain([overData, 'optionalAccess', _472 => _472.type]) === "column") {
25540
+ if (_optionalChain([overData, 'optionalAccess', _476 => _476.type]) === "column") {
25484
25541
  toIndex = toCol.tickets.length;
25485
25542
  } else {
25486
25543
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -25522,14 +25579,14 @@ function Board({
25522
25579
  const toColumnId = located.columnId;
25523
25580
  const isCrossColumn = origin.fromColumnId !== toColumnId;
25524
25581
  const targetCol = items.find((c) => c.id === toColumnId);
25525
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _473 => _473.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _474 => _474.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
25582
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _477 => _477.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _478 => _478.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
25526
25583
  setItems(columns);
25527
25584
  return;
25528
25585
  }
25529
25586
  let finalIndex = located.index;
25530
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _475 => _475.find, 'call', _476 => _476((c) => c.id === toColumnId), 'optionalAccess', _477 => _477.tickets]), () => ( []));
25587
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _479 => _479.find, 'call', _480 => _480((c) => c.id === toColumnId), 'optionalAccess', _481 => _481.tickets]), () => ( []));
25531
25588
  const overData = over.data.current;
25532
- if (_optionalChain([overData, 'optionalAccess', _478 => _478.type]) === "ticket") {
25589
+ if (_optionalChain([overData, 'optionalAccess', _482 => _482.type]) === "ticket") {
25533
25590
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
25534
25591
  if (overIndex >= 0 && overIndex !== located.index) {
25535
25592
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -25549,8 +25606,8 @@ function Board({
25549
25606
  ticketId: origin.ticketId,
25550
25607
  fromColumnId: origin.fromColumnId,
25551
25608
  toColumnId,
25552
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _479 => _479[finalIndex - 1], 'optionalAccess', _480 => _480.id]), () => ( null)),
25553
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _481 => _481[finalIndex + 1], 'optionalAccess', _482 => _482.id]), () => ( null))
25609
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _483 => _483[finalIndex - 1], 'optionalAccess', _484 => _484.id]), () => ( null)),
25610
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _485 => _485[finalIndex + 1], 'optionalAccess', _486 => _486.id]), () => ( null))
25554
25611
  });
25555
25612
  };
25556
25613
  const handleDragCancel = () => {
@@ -25579,8 +25636,8 @@ function Board({
25579
25636
  children: items.map((column, i) => {
25580
25637
  const prev = items[i - 1];
25581
25638
  const next = items[i + 1];
25582
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _483 => _483.system]));
25583
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _484 => _484.system]));
25639
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _487 => _487.system]));
25640
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _488 => _488.system]));
25584
25641
  const showGap = i > 0 && !joinLeft;
25585
25642
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React85.Fragment, { children: [
25586
25643
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -25639,7 +25696,7 @@ function locate(cols, ticketId) {
25639
25696
  return null;
25640
25697
  }
25641
25698
  function findIndexInColumn(cols, columnId, ticketId) {
25642
- return _nullishCoalesce(_optionalChain([cols, 'access', _485 => _485.find, 'call', _486 => _486((c) => c.id === columnId), 'optionalAccess', _487 => _487.tickets, 'access', _488 => _488.findIndex, 'call', _489 => _489((t) => t.id === ticketId)]), () => ( -1));
25699
+ return _nullishCoalesce(_optionalChain([cols, 'access', _489 => _489.find, 'call', _490 => _490((c) => c.id === columnId), 'optionalAccess', _491 => _491.tickets, 'access', _492 => _492.findIndex, 'call', _493 => _493((t) => t.id === ticketId)]), () => ( -1));
25643
25700
  }
25644
25701
 
25645
25702
  // src/components/features/board/types.ts
@@ -25887,7 +25944,7 @@ function Header2({ config, platform }) {
25887
25944
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
25888
25945
  "flex justify-start w-full",
25889
25946
  "font-bold text-[16px] leading-none tracking-[-0.32px]",
25890
- index < (_nullishCoalesce(_optionalChain([item, 'access', _490 => _490.children, 'optionalAccess', _491 => _491.length]), () => ( 0))) - 1 && "mb-1",
25947
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _494 => _494.children, 'optionalAccess', _495 => _495.length]), () => ( 0))) - 1 && "mb-1",
25891
25948
  "text-ods-text-primary",
25892
25949
  // All dropdown items use primary text color
25893
25950
  child.isActive && "bg-ods-bg-hover"
@@ -25979,7 +26036,7 @@ function Header2({ config, platform }) {
25979
26036
  style: config.style,
25980
26037
  children: [
25981
26038
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
25982
- _optionalChain([config, 'access', _492 => _492.actions, 'optionalAccess', _493 => _493.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
26039
+ _optionalChain([config, 'access', _496 => _496.actions, 'optionalAccess', _497 => _497.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
25983
26040
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href: config.logo.href, className: "transition-opacity duration-200 hover:opacity-80", children: config.logo.element })
25984
26041
  ] }),
25985
26042
  config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -25996,7 +26053,7 @@ function Header2({ config, platform }) {
25996
26053
  }
25997
26054
  ),
25998
26055
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
25999
- _optionalChain([config, 'access', _494 => _494.actions, 'optionalAccess', _495 => _495.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
26056
+ _optionalChain([config, 'access', _498 => _498.actions, 'optionalAccess', _499 => _499.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
26000
26057
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26001
26058
  _chunkGRTZ23GLcjs.Button,
26002
26059
  {
@@ -26004,10 +26061,10 @@ function Header2({ config, platform }) {
26004
26061
  size: "icon",
26005
26062
  className: "flex md:hidden",
26006
26063
  onClick: () => {
26007
- _optionalChain([config, 'access', _496 => _496.mobile, 'optionalAccess', _497 => _497.onToggle, 'optionalCall', _498 => _498()]);
26064
+ _optionalChain([config, 'access', _500 => _500.mobile, 'optionalAccess', _501 => _501.onToggle, 'optionalCall', _502 => _502()]);
26008
26065
  },
26009
- "aria-label": _optionalChain([config, 'access', _499 => _499.mobile, 'optionalAccess', _500 => _500.isOpen]) ? "Close menu" : "Open menu",
26010
- leftIcon: _optionalChain([config, 'access', _501 => _501.mobile, 'optionalAccess', _502 => _502.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Menu01Icon, {})
26066
+ "aria-label": _optionalChain([config, 'access', _503 => _503.mobile, 'optionalAccess', _504 => _504.isOpen]) ? "Close menu" : "Open menu",
26067
+ leftIcon: _optionalChain([config, 'access', _505 => _505.mobile, 'optionalAccess', _506 => _506.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Menu01Icon, {})
26011
26068
  }
26012
26069
  )
26013
26070
  ] })
@@ -26024,10 +26081,10 @@ function Header2({ config, platform }) {
26024
26081
  // src/components/navigation/header-skeleton.tsx
26025
26082
 
26026
26083
  function HeaderSkeleton({ config }) {
26027
- const showNavigation = _optionalChain([config, 'optionalAccess', _503 => _503.navigation]) && config.navigation.items.length > 0;
26028
- const showActions = _optionalChain([config, 'optionalAccess', _504 => _504.actions, 'optionalAccess', _505 => _505.right]) && config.actions.right.length > 0;
26029
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _506 => _506.mobile, 'optionalAccess', _507 => _507.enabled]);
26030
- const isAdminHeader = _optionalChain([config, 'optionalAccess', _508 => _508.className, 'optionalAccess', _509 => _509.includes, 'call', _510 => _510("admin")]);
26084
+ const showNavigation = _optionalChain([config, 'optionalAccess', _507 => _507.navigation]) && config.navigation.items.length > 0;
26085
+ const showActions = _optionalChain([config, 'optionalAccess', _508 => _508.actions, 'optionalAccess', _509 => _509.right]) && config.actions.right.length > 0;
26086
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _510 => _510.mobile, 'optionalAccess', _511 => _511.enabled]);
26087
+ const isAdminHeader = _optionalChain([config, 'optionalAccess', _512 => _512.className, 'optionalAccess', _513 => _513.includes, 'call', _514 => _514("admin")]);
26031
26088
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
26032
26089
  "header",
26033
26090
  {
@@ -26036,11 +26093,11 @@ function HeaderSkeleton({ config }) {
26036
26093
  "bg-ods-card border-b border-ods-border backdrop-blur-sm",
26037
26094
  "px-6 py-3",
26038
26095
  "transition-opacity duration-300 ease-in-out",
26039
- _optionalChain([config, 'optionalAccess', _511 => _511.className])
26096
+ _optionalChain([config, 'optionalAccess', _515 => _515.className])
26040
26097
  ),
26041
26098
  children: [
26042
26099
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
26043
- isAdminHeader && _optionalChain([config, 'optionalAccess', _512 => _512.actions, 'optionalAccess', _513 => _513.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
26100
+ isAdminHeader && _optionalChain([config, 'optionalAccess', _516 => _516.actions, 'optionalAccess', _517 => _517.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
26044
26101
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
26045
26102
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
26046
26103
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
@@ -26048,8 +26105,8 @@ function HeaderSkeleton({ config }) {
26048
26105
  ] }),
26049
26106
  showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
26050
26107
  "hidden md:flex items-center gap-2",
26051
- _optionalChain([config, 'optionalAccess', _514 => _514.navigation, 'optionalAccess', _515 => _515.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
26052
- _optionalChain([config, 'optionalAccess', _516 => _516.navigation, 'optionalAccess', _517 => _517.position]) === "right" && "ml-auto mr-4"
26108
+ _optionalChain([config, 'optionalAccess', _518 => _518.navigation, 'optionalAccess', _519 => _519.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
26109
+ _optionalChain([config, 'optionalAccess', _520 => _520.navigation, 'optionalAccess', _521 => _521.position]) === "right" && "ml-auto mr-4"
26053
26110
  ), children: [
26054
26111
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
26055
26112
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
@@ -26097,7 +26154,7 @@ function MobileNavPanel({ isOpen, config }) {
26097
26154
  _react.useEffect.call(void 0, () => {
26098
26155
  const handleKeyDown = (e) => {
26099
26156
  if (e.key === "Escape" && isOpen) {
26100
- _optionalChain([config, 'access', _518 => _518.onClose, 'optionalCall', _519 => _519()]);
26157
+ _optionalChain([config, 'access', _522 => _522.onClose, 'optionalCall', _523 => _523()]);
26101
26158
  }
26102
26159
  };
26103
26160
  if (isOpen) {
@@ -26114,7 +26171,7 @@ function MobileNavPanel({ isOpen, config }) {
26114
26171
  if (item.onClick) {
26115
26172
  item.onClick();
26116
26173
  }
26117
- _optionalChain([config, 'access', _520 => _520.onClose, 'optionalCall', _521 => _521()]);
26174
+ _optionalChain([config, 'access', _524 => _524.onClose, 'optionalCall', _525 => _525()]);
26118
26175
  };
26119
26176
  if (item.href) {
26120
26177
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -26332,7 +26389,7 @@ function SlidingSidebar({ config }) {
26332
26389
  variant: "transparent",
26333
26390
  size: "default",
26334
26391
  onClick: () => {
26335
- _optionalChain([item, 'access', _522 => _522.onClick, 'optionalCall', _523 => _523()]);
26392
+ _optionalChain([item, 'access', _526 => _526.onClick, 'optionalCall', _527 => _527()]);
26336
26393
  config.onClose();
26337
26394
  },
26338
26395
  leftIcon: item.icon,
@@ -26355,7 +26412,7 @@ function SlidingSidebar({ config }) {
26355
26412
  variant: "transparent",
26356
26413
  size: "default",
26357
26414
  onClick: () => {
26358
- _optionalChain([item, 'access', _524 => _524.onClick, 'optionalCall', _525 => _525()]);
26415
+ _optionalChain([item, 'access', _528 => _528.onClick, 'optionalCall', _529 => _529()]);
26359
26416
  config.onClose();
26360
26417
  },
26361
26418
  leftIcon: item.icon,
@@ -26482,7 +26539,7 @@ function StickySectionNav({
26482
26539
  ] });
26483
26540
  }
26484
26541
  function useSectionNavigation(sections, options) {
26485
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _526 => _526[0], 'optionalAccess', _527 => _527.id]) || "");
26542
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _530 => _530[0], 'optionalAccess', _531 => _531.id]) || "");
26486
26543
  const isScrollingFromClick = _react.useRef.call(void 0, false);
26487
26544
  const { offset: offset2 = 100 } = options || {};
26488
26545
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -26506,7 +26563,7 @@ function useSectionNavigation(sections, options) {
26506
26563
  const handleScroll = () => {
26507
26564
  if (isScrollingFromClick.current) return;
26508
26565
  const scrollPosition = window.scrollY + offset2 + 50;
26509
- let currentSection = _optionalChain([sections, 'access', _528 => _528[0], 'optionalAccess', _529 => _529.id]) || "";
26566
+ let currentSection = _optionalChain([sections, 'access', _532 => _532[0], 'optionalAccess', _533 => _533.id]) || "";
26510
26567
  for (let i = sections.length - 1; i >= 0; i--) {
26511
26568
  const element = document.getElementById(sections[i].id);
26512
26569
  if (element && scrollPosition >= element.offsetTop) {
@@ -26701,7 +26758,7 @@ function NavigationSidebar({ config, disabled = false }) {
26701
26758
  } else {
26702
26759
  setDesktopMinimized((prev) => !prev);
26703
26760
  }
26704
- _optionalChain([config, 'access', _530 => _530.onToggleMinimized, 'optionalCall', _531 => _531()]);
26761
+ _optionalChain([config, 'access', _534 => _534.onToggleMinimized, 'optionalCall', _535 => _535()]);
26705
26762
  }, [isTablet, setDesktopMinimized, config]);
26706
26763
  const closeOverlay = _react.useCallback.call(void 0, () => {
26707
26764
  setTabletMinimized(true);
@@ -26715,11 +26772,11 @@ function NavigationSidebar({ config, disabled = false }) {
26715
26772
  return () => document.removeEventListener("keydown", handleKeyDown);
26716
26773
  }, [isOverlayOpen, closeOverlay]);
26717
26774
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
26718
- _optionalChain([event, 'optionalAccess', _532 => _532.stopPropagation, 'call', _533 => _533()]);
26775
+ _optionalChain([event, 'optionalAccess', _536 => _536.stopPropagation, 'call', _537 => _537()]);
26719
26776
  if (item.onClick) {
26720
26777
  item.onClick();
26721
26778
  } else if (item.path) {
26722
- _optionalChain([config, 'access', _534 => _534.onNavigate, 'optionalCall', _535 => _535(item.path)]);
26779
+ _optionalChain([config, 'access', _538 => _538.onNavigate, 'optionalCall', _539 => _539(item.path)]);
26723
26780
  }
26724
26781
  if (isTablet) setTabletMinimized(true);
26725
26782
  }, [config, isTablet]);
@@ -26864,11 +26921,11 @@ function HeaderGlobalSearch({
26864
26921
  };
26865
26922
  const handleSubmit = (e) => {
26866
26923
  e.preventDefault();
26867
- _optionalChain([onSubmit, 'optionalCall', _536 => _536(currentValue)]);
26924
+ _optionalChain([onSubmit, 'optionalCall', _540 => _540(currentValue)]);
26868
26925
  };
26869
26926
  const handleKeyDown = (e) => {
26870
26927
  if (e.key === "Enter") {
26871
- _optionalChain([onSubmit, 'optionalCall', _537 => _537(currentValue)]);
26928
+ _optionalChain([onSubmit, 'optionalCall', _541 => _541(currentValue)]);
26872
26929
  }
26873
26930
  };
26874
26931
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -26962,8 +27019,8 @@ function HeaderOrganizationFilter({
26962
27019
  className
26963
27020
  }) {
26964
27021
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
26965
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _538 => _538.name]) || "All Organizations";
26966
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _539 => _539.deviceCount]), () => ( totalDeviceCount));
27022
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _542 => _542.name]) || "All Organizations";
27023
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _543 => _543.deviceCount]), () => ( totalDeviceCount));
26967
27024
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGRTZ23GLcjs.DropdownMenu, { children: [
26968
27025
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
26969
27026
  "button",
@@ -26988,11 +27045,11 @@ function HeaderOrganizationFilter({
26988
27045
  }
26989
27046
  ) }),
26990
27047
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
26991
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _540 => _540("")]), children: "All Organizations" }),
27048
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _544 => _544("")]), children: "All Organizations" }),
26992
27049
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26993
27050
  _chunkGRTZ23GLcjs.DropdownMenuItem,
26994
27051
  {
26995
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _541 => _541(org.id)]),
27052
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _545 => _545(org.id)]),
26996
27053
  children: org.name
26997
27054
  },
26998
27055
  org.id
@@ -27177,9 +27234,9 @@ function NotificationsHeaderButton({
27177
27234
  dimmedClass
27178
27235
  }) {
27179
27236
  const ctx = useOptionalNotifications();
27180
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _542 => _542.unreadCount]), () => ( fallbackUnreadCount))) > 0;
27181
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _543 => _543.isOpen]), () => ( false));
27182
- const onClick = _optionalChain([ctx, 'optionalAccess', _544 => _544.toggle]);
27237
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _546 => _546.unreadCount]), () => ( fallbackUnreadCount))) > 0;
27238
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _547 => _547.isOpen]), () => ( false));
27239
+ const onClick = _optionalChain([ctx, 'optionalAccess', _548 => _548.toggle]);
27183
27240
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27184
27241
  HeaderButton,
27185
27242
  {
@@ -27243,7 +27300,7 @@ var MobileBurgerMenu = React101.default.memo(function MobileBurgerMenu2({
27243
27300
  if (item.onClick) {
27244
27301
  item.onClick();
27245
27302
  } else if (item.path) {
27246
- _optionalChain([config, 'access', _545 => _545.onNavigate, 'optionalCall', _546 => _546(item.path)]);
27303
+ _optionalChain([config, 'access', _549 => _549.onNavigate, 'optionalCall', _550 => _550(item.path)]);
27247
27304
  }
27248
27305
  onClose();
27249
27306
  }, [config, onClose]);
@@ -27486,7 +27543,7 @@ var AppLayoutDrawerRoot = ({
27486
27543
  const handleOpenChange = React94.useCallback(
27487
27544
  (next) => {
27488
27545
  if (!isControlled) setInternalOpen(next);
27489
- _optionalChain([onOpenChange, 'optionalCall', _547 => _547(next)]);
27546
+ _optionalChain([onOpenChange, 'optionalCall', _551 => _551(next)]);
27490
27547
  },
27491
27548
  [isControlled, onOpenChange]
27492
27549
  );
@@ -27867,10 +27924,10 @@ var AppLayoutDrawerContent = React94.forwardRef(
27867
27924
  ),
27868
27925
  style,
27869
27926
  onInteractOutside: (event) => {
27870
- _optionalChain([onInteractOutside, 'optionalCall', _548 => _548(event)]);
27927
+ _optionalChain([onInteractOutside, 'optionalCall', _552 => _552(event)]);
27871
27928
  if (event.defaultPrevented) return;
27872
27929
  const target = event.target;
27873
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _549 => _549.contains, 'call', _550 => _550(target)]);
27930
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _553 => _553.contains, 'call', _554 => _554(target)]);
27874
27931
  if (!isInsideContainer) {
27875
27932
  event.preventDefault();
27876
27933
  return;
@@ -28059,7 +28116,7 @@ var ShellTypeBadge = ({
28059
28116
  className,
28060
28117
  iconClassName
28061
28118
  }) => {
28062
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _551 => _551.toUpperCase, 'call', _552 => _552()]);
28119
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _555 => _555.toUpperCase, 'call', _556 => _556()]);
28063
28120
  const label = getShellLabel(normalizedType);
28064
28121
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
28065
28122
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -28446,12 +28503,12 @@ function OnboardingWalkthrough({
28446
28503
  }
28447
28504
  }, [state.completedSteps, markComplete]);
28448
28505
  const handleStepSkip = (step) => {
28449
- _optionalChain([step, 'access', _553 => _553.onSkip, 'optionalCall', _554 => _554()]);
28506
+ _optionalChain([step, 'access', _557 => _557.onSkip, 'optionalCall', _558 => _558()]);
28450
28507
  markSkipped(step.id);
28451
28508
  };
28452
28509
  const handleDismiss = () => {
28453
28510
  dismissOnboarding();
28454
- _optionalChain([onDismiss, 'optionalCall', _555 => _555()]);
28511
+ _optionalChain([onDismiss, 'optionalCall', _559 => _559()]);
28455
28512
  };
28456
28513
  if (state.dismissed) {
28457
28514
  return null;
@@ -28581,7 +28638,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
28581
28638
  onKeyDown: (e) => {
28582
28639
  if (e.key === "Enter" || e.key === " ") {
28583
28640
  e.preventDefault();
28584
- _optionalChain([onClick, 'optionalCall', _556 => _556()]);
28641
+ _optionalChain([onClick, 'optionalCall', _560 => _560()]);
28585
28642
  }
28586
28643
  },
28587
28644
  children: [
@@ -28682,7 +28739,7 @@ var LogsList = React98.forwardRef(({
28682
28739
  log,
28683
28740
  isLast: index === logs.length - 1,
28684
28741
  showConnector,
28685
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _557 => _557(log)])
28742
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _561 => _561(log)])
28686
28743
  },
28687
28744
  log.id
28688
28745
  ))
@@ -28783,7 +28840,7 @@ var Slider = React100.forwardRef(
28783
28840
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
28784
28841
  const handleChange = (e) => {
28785
28842
  const newValue = [Number(e.target.value)];
28786
- _optionalChain([onValueChange, 'optionalCall', _558 => _558(newValue)]);
28843
+ _optionalChain([onValueChange, 'optionalCall', _562 => _562(newValue)]);
28787
28844
  };
28788
28845
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28789
28846
  "input",
@@ -29214,7 +29271,7 @@ function CursorPaginationSimple({
29214
29271
  {
29215
29272
  variant: "transparent",
29216
29273
  size: "icon",
29217
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _559 => _559("")]),
29274
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _563 => _563("")]),
29218
29275
  disabled: !hasPreviousPage || loading,
29219
29276
  className: "h-8 w-8",
29220
29277
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -29226,7 +29283,7 @@ function CursorPaginationSimple({
29226
29283
  {
29227
29284
  variant: "transparent",
29228
29285
  size: "icon",
29229
- onClick: () => _optionalChain([onNext, 'optionalCall', _560 => _560("")]),
29286
+ onClick: () => _optionalChain([onNext, 'optionalCall', _564 => _564("")]),
29230
29287
  disabled: !hasNextPage || loading,
29231
29288
  className: "h-8 w-8",
29232
29289
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -29286,7 +29343,7 @@ function TableColumnFilterDropdown({
29286
29343
  placement = "bottom-start",
29287
29344
  dropdownClassName = "min-w-[240px]"
29288
29345
  }) {
29289
- const activeCount = _optionalChain([filters, 'optionalAccess', _561 => _561[columnKey], 'optionalAccess', _562 => _562.length]) || 0;
29346
+ const activeCount = _optionalChain([filters, 'optionalAccess', _565 => _565[columnKey], 'optionalAccess', _566 => _566.length]) || 0;
29290
29347
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29291
29348
  FiltersDropdown,
29292
29349
  {
@@ -29329,7 +29386,7 @@ function TableColumnFilterDropdown({
29329
29386
  delete newFilters[columnKey];
29330
29387
  onFilterChange(newFilters);
29331
29388
  },
29332
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _563 => _563[columnKey]]) || [] },
29389
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _567 => _567[columnKey]]) || [] },
29333
29390
  placement,
29334
29391
  dropdownClassName
29335
29392
  }
@@ -29626,7 +29683,7 @@ function TableRow({
29626
29683
  const keys = column.key.split(".");
29627
29684
  let value = item;
29628
29685
  for (const key of keys) {
29629
- value = _optionalChain([value, 'optionalAccess', _564 => _564[key]]);
29686
+ value = _optionalChain([value, 'optionalAccess', _568 => _568[key]]);
29630
29687
  }
29631
29688
  if (value === null || value === void 0) {
29632
29689
  return "-";
@@ -29696,7 +29753,7 @@ function TableRow({
29696
29753
  // src/components/ui/table/table.tsx
29697
29754
 
29698
29755
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
29699
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _565 => _565.length])) || Boolean(renderRowActions);
29756
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _569 => _569.length])) || Boolean(renderRowActions);
29700
29757
  const result = [...columns];
29701
29758
  if (hasActions) {
29702
29759
  const actionsColumn = {
@@ -29790,7 +29847,7 @@ function Table({
29790
29847
  return rowKey(item);
29791
29848
  }
29792
29849
  const key = item[rowKey];
29793
- return _optionalChain([key, 'optionalAccess', _566 => _566.toString, 'call', _567 => _567()]) || index.toString();
29850
+ return _optionalChain([key, 'optionalAccess', _570 => _570.toString, 'call', _571 => _571()]) || index.toString();
29794
29851
  };
29795
29852
  const getRowClassName = (item, index) => {
29796
29853
  if (typeof rowClassName === "function") {
@@ -29824,23 +29881,23 @@ function Table({
29824
29881
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
29825
29882
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
29826
29883
  const sentinelRef = _react.useRef.call(void 0, null);
29827
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _568 => _568.onLoadMore]));
29828
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _569 => _569.onLoadMore]);
29884
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _572 => _572.onLoadMore]));
29885
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _573 => _573.onLoadMore]);
29829
29886
  _react.useEffect.call(void 0, () => {
29830
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _570 => _570.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
29887
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _574 => _574.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
29831
29888
  const sentinel = sentinelRef.current;
29832
29889
  if (!sentinel) return;
29833
29890
  const observer = new IntersectionObserver(
29834
29891
  (entries) => {
29835
- if (_optionalChain([entries, 'access', _571 => _571[0], 'optionalAccess', _572 => _572.isIntersecting])) {
29836
- _optionalChain([onLoadMoreRef, 'access', _573 => _573.current, 'optionalCall', _574 => _574()]);
29892
+ if (_optionalChain([entries, 'access', _575 => _575[0], 'optionalAccess', _576 => _576.isIntersecting])) {
29893
+ _optionalChain([onLoadMoreRef, 'access', _577 => _577.current, 'optionalCall', _578 => _578()]);
29837
29894
  }
29838
29895
  },
29839
29896
  { rootMargin: "200px" }
29840
29897
  );
29841
29898
  observer.observe(sentinel);
29842
29899
  return () => observer.disconnect();
29843
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _575 => _575.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _576 => _576.isFetchingNextPage])]);
29900
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _579 => _579.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _580 => _580.isFetchingNextPage])]);
29844
29901
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
29845
29902
  showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
29846
29903
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
@@ -29911,7 +29968,7 @@ function Table({
29911
29968
  },
29912
29969
  getRowKey(item, index)
29913
29970
  )),
29914
- _optionalChain([infiniteScroll, 'optionalAccess', _577 => _577.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29971
+ _optionalChain([infiniteScroll, 'optionalAccess', _581 => _581.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29915
29972
  TableCardSkeleton,
29916
29973
  {
29917
29974
  columns,
@@ -29920,7 +29977,7 @@ function Table({
29920
29977
  hasChevron: Boolean(rowHref)
29921
29978
  }
29922
29979
  ),
29923
- _optionalChain([infiniteScroll, 'optionalAccess', _578 => _578.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
29980
+ _optionalChain([infiniteScroll, 'optionalAccess', _582 => _582.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
29924
29981
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
29925
29982
  "div",
29926
29983
  {
@@ -30278,7 +30335,7 @@ function QueryReportTable({
30278
30335
  );
30279
30336
  const handleExport = () => {
30280
30337
  exportToCSV(data, columns, exportFilename);
30281
- _optionalChain([onExport, 'optionalCall', _579 => _579()]);
30338
+ _optionalChain([onExport, 'optionalCall', _583 => _583()]);
30282
30339
  };
30283
30340
  const tableMinWidth = columns.length * (columnWidth + 16);
30284
30341
  const {
@@ -30451,7 +30508,7 @@ function DataTableColumnFilter({
30451
30508
  align = "left"
30452
30509
  }) {
30453
30510
  const currentValue = column.getFilterValue();
30454
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _580 => _580.length]), () => ( 0));
30511
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _584 => _584.length]), () => ( 0));
30455
30512
  const sections = _react.useMemo.call(void 0,
30456
30513
  () => [
30457
30514
  {
@@ -30531,7 +30588,7 @@ function DataTableHeader({
30531
30588
  const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
30532
30589
  if (header.isPlaceholder) return false;
30533
30590
  if (isLgUp) return true;
30534
- return Boolean(_optionalChain([header, 'access', _581 => _581.column, 'access', _582 => _582.columnDef, 'access', _583 => _583.meta, 'optionalAccess', _584 => _584.filter]));
30591
+ return Boolean(_optionalChain([header, 'access', _585 => _585.column, 'access', _586 => _586.columnDef, 'access', _587 => _587.meta, 'optionalAccess', _588 => _588.filter]));
30535
30592
  });
30536
30593
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30537
30594
  "div",
@@ -30561,20 +30618,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
30561
30618
  if (header.isPlaceholder) return null;
30562
30619
  const column = header.column;
30563
30620
  const meta = column.columnDef.meta;
30564
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _585 => _585.filter]));
30565
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _586 => _586.align]), () => ( "left"));
30566
- const canSort = _optionalChain([meta, 'optionalAccess', _587 => _587.sortable]) === true;
30567
- const sortDir = _optionalChain([sort, 'optionalAccess', _588 => _588.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
30621
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _589 => _589.filter]));
30622
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _590 => _590.align]), () => ( "left"));
30623
+ const canSort = _optionalChain([meta, 'optionalAccess', _591 => _591.sortable]) === true;
30624
+ const sortDir = _optionalChain([sort, 'optionalAccess', _592 => _592.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
30568
30625
  if (!isLgUp && !hasFilter) return null;
30569
30626
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30570
30627
  "div",
30571
30628
  {
30572
30629
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
30573
30630
  "flex items-stretch",
30574
- isLgUp && (_optionalChain([meta, 'optionalAccess', _589 => _589.width]) || "flex-1 min-w-0"),
30575
- _optionalChain([meta, 'optionalAccess', _590 => _590.headerClassName]),
30631
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _593 => _593.width]) || "flex-1 min-w-0"),
30632
+ _optionalChain([meta, 'optionalAccess', _594 => _594.headerClassName]),
30576
30633
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
30577
- !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _591 => _591.hideAt]))
30634
+ !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _595 => _595.hideAt]))
30578
30635
  ),
30579
30636
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30580
30637
  DataTableColumnFilter,
@@ -30593,7 +30650,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
30593
30650
  isLgUp && alignJustify(align),
30594
30651
  canSort && "group cursor-pointer"
30595
30652
  ),
30596
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _592 => _592(column.id)]) : void 0,
30653
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _596 => _596(column.id)]) : void 0,
30597
30654
  children: [
30598
30655
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
30599
30656
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -30677,7 +30734,7 @@ function DataTableSkeleton({
30677
30734
  }) {
30678
30735
  const table = useDataTableContext();
30679
30736
  const columns = table.getVisibleFlatColumns();
30680
- const firstColumnId = _optionalChain([columns, 'access', _593 => _593[0], 'optionalAccess', _594 => _594.id]);
30737
+ const firstColumnId = _optionalChain([columns, 'access', _597 => _597[0], 'optionalAccess', _598 => _598.id]);
30681
30738
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30682
30739
  "div",
30683
30740
  {
@@ -30701,7 +30758,7 @@ function DataTableSkeleton({
30701
30758
  {
30702
30759
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
30703
30760
  "flex flex-col justify-center shrink-0",
30704
- _optionalChain([meta, 'optionalAccess', _595 => _595.width]) || "flex-1"
30761
+ _optionalChain([meta, 'optionalAccess', _599 => _599.width]) || "flex-1"
30705
30762
  ),
30706
30763
  children: [
30707
30764
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -30750,7 +30807,7 @@ function DataTableRowImpl({
30750
30807
  const handleClick = _react.useCallback.call(void 0,
30751
30808
  (e) => {
30752
30809
  const target = e.target;
30753
- if (!_optionalChain([containerRef, 'access', _596 => _596.current, 'optionalAccess', _597 => _597.contains, 'call', _598 => _598(target)])) {
30810
+ if (!_optionalChain([containerRef, 'access', _600 => _600.current, 'optionalAccess', _601 => _601.contains, 'call', _602 => _602(target)])) {
30754
30811
  if (isLinkMode) e.preventDefault();
30755
30812
  return;
30756
30813
  }
@@ -30758,7 +30815,7 @@ function DataTableRowImpl({
30758
30815
  if (isLinkMode) e.preventDefault();
30759
30816
  return;
30760
30817
  }
30761
- _optionalChain([onClick, 'optionalCall', _599 => _599(row.original)]);
30818
+ _optionalChain([onClick, 'optionalCall', _603 => _603(row.original)]);
30762
30819
  },
30763
30820
  [onClick, row.original, isLinkMode]
30764
30821
  );
@@ -30783,10 +30840,10 @@ function DataTableRowImpl({
30783
30840
  {
30784
30841
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
30785
30842
  "flex flex-col overflow-hidden",
30786
- alignJustify(_optionalChain([meta, 'optionalAccess', _600 => _600.align])),
30787
- _optionalChain([meta, 'optionalAccess', _601 => _601.width]) || "flex-1 min-w-0",
30788
- _optionalChain([meta, 'optionalAccess', _602 => _602.cellClassName]),
30789
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _603 => _603.hideAt]))
30843
+ alignJustify(_optionalChain([meta, 'optionalAccess', _604 => _604.align])),
30844
+ _optionalChain([meta, 'optionalAccess', _605 => _605.width]) || "flex-1 min-w-0",
30845
+ _optionalChain([meta, 'optionalAccess', _606 => _606.cellClassName]),
30846
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _607 => _607.hideAt]))
30790
30847
  ),
30791
30848
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
30792
30849
  },
@@ -30864,7 +30921,7 @@ function DataTableBody({
30864
30921
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
30865
30922
  rows.map((row, index) => {
30866
30923
  const item = row.original;
30867
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _604 => _604(item)]), () => ( void 0));
30924
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _608 => _608(item)]), () => ( void 0));
30868
30925
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
30869
30926
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30870
30927
  DataTableRow,
@@ -30874,7 +30931,7 @@ function DataTableBody({
30874
30931
  href,
30875
30932
  compact,
30876
30933
  className: cls,
30877
- subRow: _optionalChain([renderSubRow, 'optionalCall', _605 => _605(item)])
30934
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _609 => _609(item)])
30878
30935
  },
30879
30936
  row.id
30880
30937
  );
@@ -30929,7 +30986,7 @@ function DataTableInfiniteFooter({
30929
30986
  if (!sentinel) return;
30930
30987
  const observer = new IntersectionObserver(
30931
30988
  (entries) => {
30932
- if (_optionalChain([entries, 'access', _606 => _606[0], 'optionalAccess', _607 => _607.isIntersecting])) onLoadMoreRef.current();
30989
+ if (_optionalChain([entries, 'access', _610 => _610[0], 'optionalAccess', _611 => _611.isIntersecting])) onLoadMoreRef.current();
30933
30990
  },
30934
30991
  { rootMargin }
30935
30992
  );
@@ -30977,7 +31034,7 @@ function DataTableRowCount({
30977
31034
  const table = useDataTableContext();
30978
31035
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
30979
31036
  if (hideWhenEmpty && count === 0) return null;
30980
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _608 => _608(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
31037
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _612 => _612(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
30981
31038
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30982
31039
  "span",
30983
31040
  {
@@ -31136,7 +31193,7 @@ function SearchInput({
31136
31193
  if (!showHiddenTags) return;
31137
31194
  const handleClick = (e) => {
31138
31195
  const target = e.target;
31139
- if (!_optionalChain([hiddenTagsRef, 'access', _609 => _609.current, 'optionalAccess', _610 => _610.contains, 'call', _611 => _611(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _612 => _612.current, 'optionalAccess', _613 => _613.contains, 'call', _614 => _614(target)])) {
31196
+ if (!_optionalChain([hiddenTagsRef, 'access', _613 => _613.current, 'optionalAccess', _614 => _614.contains, 'call', _615 => _615(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _616 => _616.current, 'optionalAccess', _617 => _617.contains, 'call', _618 => _618(target)])) {
31140
31197
  setShowHiddenTags(false);
31141
31198
  }
31142
31199
  };
@@ -31184,10 +31241,10 @@ function SearchInput({
31184
31241
  } else {
31185
31242
  setInternalValue("");
31186
31243
  }
31187
- _optionalChain([inputRef, 'access', _615 => _615.current, 'optionalAccess', _616 => _616.focus, 'call', _617 => _617()]);
31244
+ _optionalChain([inputRef, 'access', _619 => _619.current, 'optionalAccess', _620 => _620.focus, 'call', _621 => _621()]);
31188
31245
  };
31189
31246
  const handleResultClick = (result, e) => {
31190
- _optionalChain([onResultSelect, 'optionalCall', _618 => _618(
31247
+ _optionalChain([onResultSelect, 'optionalCall', _622 => _622(
31191
31248
  result,
31192
31249
  e ? {
31193
31250
  metaKey: e.metaKey,
@@ -31219,7 +31276,7 @@ function SearchInput({
31219
31276
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
31220
31277
  handleResultClick(flatResults[highlightedIndex]);
31221
31278
  } else {
31222
- _optionalChain([onSubmit, 'optionalCall', _619 => _619(currentValue)]);
31279
+ _optionalChain([onSubmit, 'optionalCall', _623 => _623(currentValue)]);
31223
31280
  }
31224
31281
  break;
31225
31282
  case "Escape":
@@ -31297,7 +31354,7 @@ function SearchInput({
31297
31354
  dropdownVisible && "!border-ods-accent"
31298
31355
  ),
31299
31356
  onClick: () => {
31300
- _optionalChain([inputRef, 'access', _620 => _620.current, 'optionalAccess', _621 => _621.focus, 'call', _622 => _622()]);
31357
+ _optionalChain([inputRef, 'access', _624 => _624.current, 'optionalAccess', _625 => _625.focus, 'call', _626 => _626()]);
31301
31358
  setIsOpen(true);
31302
31359
  },
31303
31360
  children: [
@@ -31381,10 +31438,10 @@ function SearchInput({
31381
31438
  align: "start",
31382
31439
  onOpenAutoFocus: (e) => {
31383
31440
  e.preventDefault();
31384
- _optionalChain([inputRef, 'access', _623 => _623.current, 'optionalAccess', _624 => _624.focus, 'call', _625 => _625()]);
31441
+ _optionalChain([inputRef, 'access', _627 => _627.current, 'optionalAccess', _628 => _628.focus, 'call', _629 => _629()]);
31385
31442
  },
31386
31443
  onInteractOutside: (e) => {
31387
- if (_optionalChain([containerRef, 'access', _626 => _626.current, 'optionalAccess', _627 => _627.contains, 'call', _628 => _628(e.target)])) {
31444
+ if (_optionalChain([containerRef, 'access', _630 => _630.current, 'optionalAccess', _631 => _631.contains, 'call', _632 => _632(e.target)])) {
31388
31445
  e.preventDefault();
31389
31446
  }
31390
31447
  },
@@ -31401,10 +31458,10 @@ function SearchInput({
31401
31458
  ref: hiddenTagsPopupRef,
31402
31459
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
31403
31460
  style: {
31404
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _629 => _629.current, 'optionalAccess', _630 => _630.getBoundingClientRect, 'call', _631 => _631(), 'access', _632 => _632.left]), () => ( 0))) : 0
31461
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _633 => _633.current, 'optionalAccess', _634 => _634.getBoundingClientRect, 'call', _635 => _635(), 'access', _636 => _636.left]), () => ( 0))) : 0
31405
31462
  },
31406
31463
  onRemove: (value2) => {
31407
- _optionalChain([onFilterRemove, 'optionalCall', _633 => _633(value2)]);
31464
+ _optionalChain([onFilterRemove, 'optionalCall', _637 => _637(value2)]);
31408
31465
  if (hiddenCount <= 1) setShowHiddenTags(false);
31409
31466
  }
31410
31467
  }
@@ -31455,7 +31512,7 @@ function FilterListItem({
31455
31512
  }) {
31456
31513
  const handleToggle = () => {
31457
31514
  if (disabled) return;
31458
- _optionalChain([onToggle, 'optionalCall', _634 => _634(!selected)]);
31515
+ _optionalChain([onToggle, 'optionalCall', _638 => _638(!selected)]);
31459
31516
  };
31460
31517
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
31461
31518
  "div",
@@ -31502,7 +31559,7 @@ function FilterListItem({
31502
31559
  CheckboxPrimitive4.Root,
31503
31560
  {
31504
31561
  checked: selected,
31505
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _635 => _635(c === true)]),
31562
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _639 => _639(c === true)]),
31506
31563
  onClick: (e) => e.stopPropagation(),
31507
31564
  disabled,
31508
31565
  "aria-label": title,
@@ -31601,7 +31658,7 @@ function TagSearchInput({
31601
31658
  if (!showHiddenTags) return;
31602
31659
  const handleClick = (e) => {
31603
31660
  const target = e.target;
31604
- if (!_optionalChain([hiddenTagsRef, 'access', _636 => _636.current, 'optionalAccess', _637 => _637.contains, 'call', _638 => _638(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _639 => _639.current, 'optionalAccess', _640 => _640.contains, 'call', _641 => _641(target)])) {
31661
+ if (!_optionalChain([hiddenTagsRef, 'access', _640 => _640.current, 'optionalAccess', _641 => _641.contains, 'call', _642 => _642(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _643 => _643.current, 'optionalAccess', _644 => _644.contains, 'call', _645 => _645(target)])) {
31605
31662
  setShowHiddenTags(false);
31606
31663
  }
31607
31664
  };
@@ -31617,13 +31674,13 @@ function TagSearchInput({
31617
31674
  e.preventDefault();
31618
31675
  onSubmit(searchValue);
31619
31676
  }
31620
- _optionalChain([onKeyDown, 'optionalCall', _642 => _642(e)]);
31677
+ _optionalChain([onKeyDown, 'optionalCall', _646 => _646(e)]);
31621
31678
  };
31622
31679
  const handleClearAll = (e) => {
31623
31680
  e.stopPropagation();
31624
31681
  e.preventDefault();
31625
- _optionalChain([onClearAll, 'optionalCall', _643 => _643()]);
31626
- _optionalChain([inputRef, 'access', _644 => _644.current, 'optionalAccess', _645 => _645.focus, 'call', _646 => _646()]);
31682
+ _optionalChain([onClearAll, 'optionalCall', _647 => _647()]);
31683
+ _optionalChain([inputRef, 'access', _648 => _648.current, 'optionalAccess', _649 => _649.focus, 'call', _650 => _650()]);
31627
31684
  };
31628
31685
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
31629
31686
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -31640,7 +31697,7 @@ function TagSearchInput({
31640
31697
  className
31641
31698
  ),
31642
31699
  onClick: () => {
31643
- if (!disabled) _optionalChain([inputRef, 'access', _647 => _647.current, 'optionalAccess', _648 => _648.focus, 'call', _649 => _649()]);
31700
+ if (!disabled) _optionalChain([inputRef, 'access', _651 => _651.current, 'optionalAccess', _652 => _652.focus, 'call', _653 => _653()]);
31644
31701
  },
31645
31702
  children: [
31646
31703
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
@@ -31712,7 +31769,7 @@ function TagSearchInput({
31712
31769
  items: hiddenTags,
31713
31770
  disabled,
31714
31771
  style: {
31715
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _650 => _650.current, 'optionalAccess', _651 => _651.getBoundingClientRect, 'call', _652 => _652(), 'access', _653 => _653.left]), () => ( 0))) : 0
31772
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _654 => _654.current, 'optionalAccess', _655 => _655.getBoundingClientRect, 'call', _656 => _656(), 'access', _657 => _657.left]), () => ( 0))) : 0
31716
31773
  },
31717
31774
  onRemove: (value) => {
31718
31775
  onTagRemove(value);
@@ -31813,7 +31870,7 @@ function MarkdownEditor({
31813
31870
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
31814
31871
  _react.useEffect.call(void 0, () => {
31815
31872
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
31816
- if (_optionalChain([mod, 'access', _654 => _654.commands, 'optionalAccess', _655 => _655.getExtraCommands])) {
31873
+ if (_optionalChain([mod, 'access', _658 => _658.commands, 'optionalAccess', _659 => _659.getExtraCommands])) {
31817
31874
  setDefaultExtraCommands(mod.commands.getExtraCommands());
31818
31875
  }
31819
31876
  });
@@ -31847,7 +31904,7 @@ function MarkdownEditor({
31847
31904
  const isImage = file.type.startsWith("image/");
31848
31905
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
31849
31906
  insertTextAtCursor(markdown);
31850
- _optionalChain([onFileUploaded, 'optionalCall', _656 => _656(url, file.name)]);
31907
+ _optionalChain([onFileUploaded, 'optionalCall', _660 => _660(url, file.name)]);
31851
31908
  } catch (error) {
31852
31909
  console.error("File upload failed:", error);
31853
31910
  setUploadProgress("Upload failed. Please try again.");
@@ -31860,7 +31917,7 @@ function MarkdownEditor({
31860
31917
  );
31861
31918
  const handleFileInputChange = _react.useCallback.call(void 0,
31862
31919
  (e) => {
31863
- const file = _optionalChain([e, 'access', _657 => _657.target, 'access', _658 => _658.files, 'optionalAccess', _659 => _659[0]]);
31920
+ const file = _optionalChain([e, 'access', _661 => _661.target, 'access', _662 => _662.files, 'optionalAccess', _663 => _663[0]]);
31864
31921
  if (file) {
31865
31922
  handleFileUpload(file);
31866
31923
  e.target.value = "";
@@ -31871,7 +31928,7 @@ function MarkdownEditor({
31871
31928
  const handlePaste = _react.useCallback.call(void 0,
31872
31929
  (e) => {
31873
31930
  if (!onUploadFile) return;
31874
- const items = _optionalChain([e, 'access', _660 => _660.clipboardData, 'optionalAccess', _661 => _661.items]);
31931
+ const items = _optionalChain([e, 'access', _664 => _664.clipboardData, 'optionalAccess', _665 => _665.items]);
31875
31932
  if (!items) return;
31876
31933
  for (const item of items) {
31877
31934
  if (item.type.startsWith("image/")) {
@@ -31896,7 +31953,7 @@ function MarkdownEditor({
31896
31953
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
31897
31954
  icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
31898
31955
  execute: () => {
31899
- _optionalChain([fileInputRef, 'access', _662 => _662.current, 'optionalAccess', _663 => _663.click, 'call', _664 => _664()]);
31956
+ _optionalChain([fileInputRef, 'access', _666 => _666.current, 'optionalAccess', _667 => _667.click, 'call', _668 => _668()]);
31900
31957
  }
31901
31958
  } : null;
31902
31959
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -31908,7 +31965,7 @@ function MarkdownEditor({
31908
31965
  const EDGE_ZONE = 60;
31909
31966
  const MAX_SCROLL_SPEED = 15;
31910
31967
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
31911
- let node = _optionalChain([el, 'optionalAccess', _665 => _665.parentElement]);
31968
+ let node = _optionalChain([el, 'optionalAccess', _669 => _669.parentElement]);
31912
31969
  while (node && node !== document.documentElement) {
31913
31970
  const { overflowY } = window.getComputedStyle(node);
31914
31971
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -32051,7 +32108,7 @@ function matchesAccept(file, accept) {
32051
32108
  });
32052
32109
  }
32053
32110
  function dragHasFiles(e) {
32054
- const types = _optionalChain([e, 'access', _666 => _666.dataTransfer, 'optionalAccess', _667 => _667.types]);
32111
+ const types = _optionalChain([e, 'access', _670 => _670.dataTransfer, 'optionalAccess', _671 => _671.types]);
32055
32112
  if (!types) return false;
32056
32113
  for (let i = 0; i < types.length; i++) {
32057
32114
  if (types[i] === "Files") return true;
@@ -32146,7 +32203,7 @@ function FileUpload({
32146
32203
  e.stopPropagation();
32147
32204
  setDragActive(false);
32148
32205
  if (disabled) return;
32149
- if (_optionalChain([e, 'access', _668 => _668.dataTransfer, 'access', _669 => _669.files, 'optionalAccess', _670 => _670.length])) {
32206
+ if (_optionalChain([e, 'access', _672 => _672.dataTransfer, 'access', _673 => _673.files, 'optionalAccess', _674 => _674.length])) {
32150
32207
  handleFiles(e.dataTransfer.files);
32151
32208
  }
32152
32209
  };
@@ -32174,7 +32231,7 @@ function FileUpload({
32174
32231
  e.preventDefault();
32175
32232
  dragCounter = 0;
32176
32233
  setDragActive(false);
32177
- if (_optionalChain([e, 'access', _671 => _671.dataTransfer, 'optionalAccess', _672 => _672.files, 'optionalAccess', _673 => _673.length])) {
32234
+ if (_optionalChain([e, 'access', _675 => _675.dataTransfer, 'optionalAccess', _676 => _676.files, 'optionalAccess', _677 => _677.length])) {
32178
32235
  handleFilesRef.current(e.dataTransfer.files);
32179
32236
  }
32180
32237
  };
@@ -32196,7 +32253,7 @@ function FileUpload({
32196
32253
  };
32197
32254
  }, [acceptWindowDrops, disabled]);
32198
32255
  const handleFileSelect = (e) => {
32199
- if (_optionalChain([e, 'access', _674 => _674.target, 'access', _675 => _675.files, 'optionalAccess', _676 => _676.length])) {
32256
+ if (_optionalChain([e, 'access', _678 => _678.target, 'access', _679 => _679.files, 'optionalAccess', _680 => _680.length])) {
32200
32257
  handleFiles(e.target.files);
32201
32258
  }
32202
32259
  };
@@ -32213,7 +32270,7 @@ function FileUpload({
32213
32270
  };
32214
32271
  const openDialog = async () => {
32215
32272
  if (disabled) return;
32216
- _optionalChain([fileInputRef, 'access', _677 => _677.current, 'optionalAccess', _678 => _678.click, 'call', _679 => _679()]);
32273
+ _optionalChain([fileInputRef, 'access', _681 => _681.current, 'optionalAccess', _682 => _682.click, 'call', _683 => _683()]);
32217
32274
  };
32218
32275
  const displayError = error || validationError || void 0;
32219
32276
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -32291,7 +32348,7 @@ function FileUpload({
32291
32348
  "button",
32292
32349
  {
32293
32350
  type: "button",
32294
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _680 => _680(entry.id)]),
32351
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _684 => _684(entry.id)]),
32295
32352
  className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
32296
32353
  "aria-label": `Remove ${entry.fileName}`,
32297
32354
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
@@ -32414,7 +32471,7 @@ function ImageUploader({
32414
32471
  onChange(file);
32415
32472
  };
32416
32473
  const handleFileSelect = (e) => {
32417
- validateAndEmit(_optionalChain([e, 'access', _681 => _681.target, 'access', _682 => _682.files, 'optionalAccess', _683 => _683[0]]));
32474
+ validateAndEmit(_optionalChain([e, 'access', _685 => _685.target, 'access', _686 => _686.files, 'optionalAccess', _687 => _687[0]]));
32418
32475
  if (inputRef.current) inputRef.current.value = "";
32419
32476
  };
32420
32477
  const handleDrag = (e) => {
@@ -32429,11 +32486,11 @@ function ImageUploader({
32429
32486
  e.stopPropagation();
32430
32487
  setDragActive(false);
32431
32488
  if (!interactive) return;
32432
- validateAndEmit(_optionalChain([e, 'access', _684 => _684.dataTransfer, 'access', _685 => _685.files, 'optionalAccess', _686 => _686[0]]));
32489
+ validateAndEmit(_optionalChain([e, 'access', _688 => _688.dataTransfer, 'access', _689 => _689.files, 'optionalAccess', _690 => _690[0]]));
32433
32490
  };
32434
32491
  const openDialog = () => {
32435
32492
  if (!interactive) return;
32436
- _optionalChain([inputRef, 'access', _687 => _687.current, 'optionalAccess', _688 => _688.click, 'call', _689 => _689()]);
32493
+ _optionalChain([inputRef, 'access', _691 => _691.current, 'optionalAccess', _692 => _692.click, 'call', _693 => _693()]);
32437
32494
  };
32438
32495
  const handleRootKeyDown = (e) => {
32439
32496
  if (hasImage || !interactive) return;
@@ -32623,8 +32680,8 @@ function ColorPresetSelect({
32623
32680
  }) {
32624
32681
  const selectedPreset = presets.find((p) => p.key === presetKey);
32625
32682
  const isCustom = !selectedPreset;
32626
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _690 => _690.label]), () => ( "Custom"));
32627
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _691 => _691.color]), () => ( value));
32683
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _694 => _694.label]), () => ( "Custom"));
32684
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _695 => _695.color]), () => ( value));
32628
32685
  const groups = [
32629
32686
  {
32630
32687
  items: [
@@ -32914,7 +32971,7 @@ function TicketStatusConfigRow({
32914
32971
  _chunkGRTZ23GLcjs.Input,
32915
32972
  {
32916
32973
  value: name,
32917
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _692 => _692(e.target.value)]),
32974
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _696 => _696(e.target.value)]),
32918
32975
  disabled: isSystem,
32919
32976
  readOnly: isSystem,
32920
32977
  "aria-label": "Status name",
@@ -32997,7 +33054,7 @@ function CompactAssigneeDropdown({
32997
33054
  return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
32998
33055
  }, [filtered, currentAssignee]);
32999
33056
  const handleSelect = (userId) => {
33000
- const next = _optionalChain([currentAssignee, 'optionalAccess', _693 => _693.id]) === userId ? null : userId;
33057
+ const next = _optionalChain([currentAssignee, 'optionalAccess', _697 => _697.id]) === userId ? null : userId;
33001
33058
  onAssign(next);
33002
33059
  setIsOpen(false);
33003
33060
  };
@@ -33062,7 +33119,7 @@ function CompactAssigneeDropdown({
33062
33119
  }
33063
33120
  ) }),
33064
33121
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "max-h-80 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "Loading\u2026" }) : orderedOptions.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "No users found" }) : orderedOptions.map((opt) => {
33065
- const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _694 => _694.id]) === opt.value;
33122
+ const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _698 => _698.id]) === opt.value;
33066
33123
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33067
33124
  "button",
33068
33125
  {
@@ -33131,7 +33188,7 @@ function DefaultAssigneeDropdown({
33131
33188
  Autocomplete,
33132
33189
  {
33133
33190
  options,
33134
- value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _695 => _695.id]), () => ( null)),
33191
+ value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _699 => _699.id]), () => ( null)),
33135
33192
  onChange: (val) => {
33136
33193
  onAssign(val);
33137
33194
  setIsEditing(false);
@@ -33520,14 +33577,14 @@ function TicketInfoSection({
33520
33577
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33521
33578
  SquareAvatar,
33522
33579
  {
33523
- src: _optionalChain([organization, 'optionalAccess', _696 => _696.imageSrc]),
33524
- alt: _optionalChain([organization, 'optionalAccess', _697 => _697.name]),
33525
- fallback: _optionalChain([organization, 'optionalAccess', _698 => _698.name]) || "Org",
33580
+ src: _optionalChain([organization, 'optionalAccess', _700 => _700.imageSrc]),
33581
+ alt: _optionalChain([organization, 'optionalAccess', _701 => _701.name]),
33582
+ fallback: _optionalChain([organization, 'optionalAccess', _702 => _702.name]) || "Org",
33526
33583
  size: "md",
33527
33584
  className: "shrink-0"
33528
33585
  }
33529
33586
  ),
33530
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _699 => _699.name]) || "Unassigned", label: "Organization" })
33587
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _703 => _703.name]) || "Unassigned", label: "Organization" })
33531
33588
  ] }),
33532
33589
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33533
33590
  AssigneeDropdown,
@@ -33548,10 +33605,10 @@ function TicketInfoSection({
33548
33605
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33549
33606
  InfoCell2,
33550
33607
  {
33551
- value: _optionalChain([device, 'optionalAccess', _700 => _700.name]) || "Unassigned",
33608
+ value: _optionalChain([device, 'optionalAccess', _704 => _704.name]) || "Unassigned",
33552
33609
  label: "Device",
33553
- icon: _optionalChain([device, 'optionalAccess', _701 => _701.icon]),
33554
- onClick: _optionalChain([device, 'optionalAccess', _702 => _702.onClick])
33610
+ icon: _optionalChain([device, 'optionalAccess', _705 => _705.icon]),
33611
+ onClick: _optionalChain([device, 'optionalAccess', _706 => _706.onClick])
33555
33612
  }
33556
33613
  ),
33557
33614
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -33880,7 +33937,7 @@ function RoadmapCard({
33880
33937
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
33881
33938
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
33882
33939
  const hasFigma = !!item.figmaUrl;
33883
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _703 => _703.screenshots, 'optionalAccess', _704 => _704.length]), () => ( 0))) > 0;
33940
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _707 => _707.screenshots, 'optionalAccess', _708 => _708.length]), () => ( 0))) > 0;
33884
33941
  const typeLabel = getTaskTypeLabel(item.customItemId);
33885
33942
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
33886
33943
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -33899,7 +33956,7 @@ function RoadmapCard({
33899
33956
  unoptimized: true,
33900
33957
  className: "h-8 w-8 object-contain"
33901
33958
  }
33902
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _705 => _705.title, 'optionalAccess', _706 => _706.substring, 'call', _707 => _707(0, 2)]) || "??" })
33959
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _709 => _709.title, 'optionalAccess', _710 => _710.substring, 'call', _711 => _711(0, 2)]) || "??" })
33903
33960
  }
33904
33961
  ),
33905
33962
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -33974,7 +34031,7 @@ function RoadmapCard({
33974
34031
  unoptimized: true,
33975
34032
  className: "object-contain p-1"
33976
34033
  }
33977
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _708 => _708.title, 'optionalAccess', _709 => _709.substring, 'call', _710 => _710(0, 2)]) || "??" }) }),
34034
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _712 => _712.title, 'optionalAccess', _713 => _713.substring, 'call', _714 => _714(0, 2)]) || "??" }) }),
33978
34035
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
33979
34036
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
33980
34037
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
@@ -34484,7 +34541,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
34484
34541
  ] }) : null,
34485
34542
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
34486
34543
  ] }),
34487
- _optionalChain([anchorProps, 'optionalAccess', _711 => _711.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
34544
+ _optionalChain([anchorProps, 'optionalAccess', _715 => _715.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
34488
34545
  ] });
34489
34546
  if (!anchorProps) {
34490
34547
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -34554,7 +34611,7 @@ function getDefaultOptions() {
34554
34611
  // node_modules/date-fns/startOfWeek.mjs
34555
34612
  function startOfWeek(date, options) {
34556
34613
  const defaultOptions2 = getDefaultOptions();
34557
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _712 => _712.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _713 => _713.locale, 'optionalAccess', _714 => _714.options, 'optionalAccess', _715 => _715.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _716 => _716.locale, 'optionalAccess', _717 => _717.options, 'optionalAccess', _718 => _718.weekStartsOn]))), () => ( 0));
34614
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _716 => _716.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _717 => _717.locale, 'optionalAccess', _718 => _718.options, 'optionalAccess', _719 => _719.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _720 => _720.locale, 'optionalAccess', _721 => _721.options, 'optionalAccess', _722 => _722.weekStartsOn]))), () => ( 0));
34558
34615
  const _date = toDate(date);
34559
34616
  const day = _date.getDay();
34560
34617
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -34729,7 +34786,7 @@ var formatDistance = (token, count, options) => {
34729
34786
  } else {
34730
34787
  result = tokenValue.other.replace("{{count}}", count.toString());
34731
34788
  }
34732
- if (_optionalChain([options, 'optionalAccess', _719 => _719.addSuffix])) {
34789
+ if (_optionalChain([options, 'optionalAccess', _723 => _723.addSuffix])) {
34733
34790
  if (options.comparison && options.comparison > 0) {
34734
34791
  return "in " + result;
34735
34792
  } else {
@@ -34796,15 +34853,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
34796
34853
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
34797
34854
  function buildLocalizeFn(args) {
34798
34855
  return (value, options) => {
34799
- const context = _optionalChain([options, 'optionalAccess', _720 => _720.context]) ? String(options.context) : "standalone";
34856
+ const context = _optionalChain([options, 'optionalAccess', _724 => _724.context]) ? String(options.context) : "standalone";
34800
34857
  let valuesArray;
34801
34858
  if (context === "formatting" && args.formattingValues) {
34802
34859
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
34803
- const width = _optionalChain([options, 'optionalAccess', _721 => _721.width]) ? String(options.width) : defaultWidth;
34860
+ const width = _optionalChain([options, 'optionalAccess', _725 => _725.width]) ? String(options.width) : defaultWidth;
34804
34861
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
34805
34862
  } else {
34806
34863
  const defaultWidth = args.defaultWidth;
34807
- const width = _optionalChain([options, 'optionalAccess', _722 => _722.width]) ? String(options.width) : args.defaultWidth;
34864
+ const width = _optionalChain([options, 'optionalAccess', _726 => _726.width]) ? String(options.width) : args.defaultWidth;
34808
34865
  valuesArray = args.values[width] || args.values[defaultWidth];
34809
34866
  }
34810
34867
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -35184,7 +35241,7 @@ function getWeekYear(date, options) {
35184
35241
  const _date = toDate(date);
35185
35242
  const year = _date.getFullYear();
35186
35243
  const defaultOptions2 = getDefaultOptions();
35187
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _723 => _723.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _724 => _724.locale, 'optionalAccess', _725 => _725.options, 'optionalAccess', _726 => _726.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _727 => _727.locale, 'optionalAccess', _728 => _728.options, 'optionalAccess', _729 => _729.firstWeekContainsDate]))), () => ( 1));
35244
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _727 => _727.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _728 => _728.locale, 'optionalAccess', _729 => _729.options, 'optionalAccess', _730 => _730.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _731 => _731.locale, 'optionalAccess', _732 => _732.options, 'optionalAccess', _733 => _733.firstWeekContainsDate]))), () => ( 1));
35188
35245
  const firstWeekOfNextYear = constructFrom(date, 0);
35189
35246
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
35190
35247
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -35205,7 +35262,7 @@ function getWeekYear(date, options) {
35205
35262
  // node_modules/date-fns/startOfWeekYear.mjs
35206
35263
  function startOfWeekYear(date, options) {
35207
35264
  const defaultOptions2 = getDefaultOptions();
35208
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _730 => _730.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _731 => _731.locale, 'optionalAccess', _732 => _732.options, 'optionalAccess', _733 => _733.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _734 => _734.locale, 'optionalAccess', _735 => _735.options, 'optionalAccess', _736 => _736.firstWeekContainsDate]))), () => ( 1));
35265
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _734 => _734.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _735 => _735.locale, 'optionalAccess', _736 => _736.options, 'optionalAccess', _737 => _737.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _738 => _738.locale, 'optionalAccess', _739 => _739.options, 'optionalAccess', _740 => _740.firstWeekContainsDate]))), () => ( 1));
35209
35266
  const year = getWeekYear(date, options);
35210
35267
  const firstWeek = constructFrom(date, 0);
35211
35268
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -36020,9 +36077,9 @@ var doubleQuoteRegExp = /''/g;
36020
36077
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
36021
36078
  function format(date, formatStr, options) {
36022
36079
  const defaultOptions2 = getDefaultOptions();
36023
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _737 => _737.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
36024
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _738 => _738.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _739 => _739.locale, 'optionalAccess', _740 => _740.options, 'optionalAccess', _741 => _741.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _742 => _742.locale, 'optionalAccess', _743 => _743.options, 'optionalAccess', _744 => _744.firstWeekContainsDate]))), () => ( 1));
36025
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _745 => _745.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _746 => _746.locale, 'optionalAccess', _747 => _747.options, 'optionalAccess', _748 => _748.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _749 => _749.locale, 'optionalAccess', _750 => _750.options, 'optionalAccess', _751 => _751.weekStartsOn]))), () => ( 0));
36080
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _741 => _741.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
36081
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _742 => _742.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _743 => _743.locale, 'optionalAccess', _744 => _744.options, 'optionalAccess', _745 => _745.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _746 => _746.locale, 'optionalAccess', _747 => _747.options, 'optionalAccess', _748 => _748.firstWeekContainsDate]))), () => ( 1));
36082
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _749 => _749.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _750 => _750.locale, 'optionalAccess', _751 => _751.options, 'optionalAccess', _752 => _752.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _753 => _753.locale, 'optionalAccess', _754 => _754.options, 'optionalAccess', _755 => _755.weekStartsOn]))), () => ( 0));
36026
36083
  const originalDate = toDate(date);
36027
36084
  if (!isValid(originalDate)) {
36028
36085
  throw new RangeError("Invalid time value");
@@ -36063,7 +36120,7 @@ function format(date, formatStr, options) {
36063
36120
  return parts.map((part) => {
36064
36121
  if (!part.isToken) return part.value;
36065
36122
  const token = part.value;
36066
- if (!_optionalChain([options, 'optionalAccess', _752 => _752.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _753 => _753.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
36123
+ if (!_optionalChain([options, 'optionalAccess', _756 => _756.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _757 => _757.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
36067
36124
  warnOrThrowProtectedError(token, formatStr, String(date));
36068
36125
  }
36069
36126
  const formatter = formatters[token[0]];
@@ -36241,7 +36298,7 @@ function ProgramCard({
36241
36298
  const dur = formatDurationFromRange(w.start_at, w.end_at);
36242
36299
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
36243
36300
  }
36244
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _754 => _754.labels, 'optionalAccess', _755 => _755.singular])].filter(
36301
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _758 => _758.labels, 'optionalAccess', _759 => _759.singular])].filter(
36245
36302
  (s) => typeof s === "string" && s.length > 0
36246
36303
  );
36247
36304
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -36398,7 +36455,7 @@ function ProgramCard({
36398
36455
 
36399
36456
 
36400
36457
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
36401
- const goalsCount = _optionalChain([campaign, 'access', _756 => _756.goals, 'optionalAccess', _757 => _757.length]) || 0;
36458
+ const goalsCount = _optionalChain([campaign, 'access', _760 => _760.goals, 'optionalAccess', _761 => _761.length]) || 0;
36402
36459
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
36403
36460
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
36404
36461
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -36489,33 +36546,6 @@ _chunkG7UE6RKVcjs.init_next_navigation.call(void 0, );
36489
36546
 
36490
36547
  // src/components/chat/hooks/use-chat-card-item.ts
36491
36548
  var _reactquery = require('@tanstack/react-query');
36492
- function extractItems(data) {
36493
- if (!data || typeof data !== "object") return [];
36494
- const obj = data;
36495
- if (Array.isArray(obj.items)) return obj.items;
36496
- if (Array.isArray(obj.posts)) return obj.posts;
36497
- if (Array.isArray(obj.campaigns)) return obj.campaigns;
36498
- if (Array.isArray(obj.completed) || Array.isArray(obj.inProgress)) {
36499
- const completed = Array.isArray(obj.completed) ? obj.completed : [];
36500
- const inProgress = Array.isArray(obj.inProgress) ? obj.inProgress : [];
36501
- return [...completed, ...inProgress];
36502
- }
36503
- if (Array.isArray(obj.data)) return obj.data;
36504
- if (Array.isArray(data)) return data;
36505
- return [];
36506
- }
36507
- function extractItemId(type, item) {
36508
- if (!item || typeof item !== "object") return null;
36509
- const obj = item;
36510
- if (type === "roadmap_item" || type === "delivery_item" || type === "internal_task") {
36511
- const ext = obj.external_id;
36512
- if (typeof ext === "string") return ext;
36513
- }
36514
- const id = obj.id;
36515
- if (typeof id === "string") return id;
36516
- if (typeof id === "number") return String(id);
36517
- return null;
36518
- }
36519
36549
  function useChatCardItem(type, id) {
36520
36550
  const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
36521
36551
  const url = runtime.endpoints.buildListUrl(type, [id]);
@@ -36587,7 +36617,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
36587
36617
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
36588
36618
  const safePath = sanitizePath(row.path);
36589
36619
  if (safePath) {
36590
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _758 => _758.docPlatformTargets, 'optionalAccess', _759 => _759[row.documentType]]) : void 0;
36620
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _762 => _762.docPlatformTargets, 'optionalAccess', _763 => _763[row.documentType]]) : void 0;
36591
36621
  if (docTarget) {
36592
36622
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
36593
36623
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -36802,8 +36832,8 @@ function cardMenuGroups(href, discuss, openDetails) {
36802
36832
  if (href) {
36803
36833
  items.push({
36804
36834
  id: "open-details",
36805
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _760 => _760.label]), () => ( "Open Details")),
36806
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _761 => _761.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.EyeIcon, { size: 20 }))),
36835
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _764 => _764.label]), () => ( "Open Details")),
36836
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _765 => _765.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.EyeIcon, { size: 20 }))),
36807
36837
  // Main row → open the entity (same tab, soft Link nav).
36808
36838
  href,
36809
36839
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -36833,8 +36863,8 @@ function HubspotTicketChatCard({
36833
36863
  isNewTab,
36834
36864
  discuss
36835
36865
  }) {
36836
- const status = typeof _optionalChain([chatRef, 'access', _762 => _762.metadata, 'optionalAccess', _763 => _763.status]) === "string" ? chatRef.metadata.status : void 0;
36837
- const statusLabel = typeof _optionalChain([chatRef, 'access', _764 => _764.metadata, 'optionalAccess', _765 => _765.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
36866
+ const status = typeof _optionalChain([chatRef, 'access', _766 => _766.metadata, 'optionalAccess', _767 => _767.status]) === "string" ? chatRef.metadata.status : void 0;
36867
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _768 => _768.metadata, 'optionalAccess', _769 => _769.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
36838
36868
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
36839
36869
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36840
36870
  MingoInfoCard,
@@ -36857,7 +36887,7 @@ function SlackChatCard({
36857
36887
  isNewTab,
36858
36888
  discuss
36859
36889
  }) {
36860
- const channelName = typeof _optionalChain([chatRef, 'access', _766 => _766.metadata, 'optionalAccess', _767 => _767.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
36890
+ const channelName = typeof _optionalChain([chatRef, 'access', _770 => _770.metadata, 'optionalAccess', _771 => _771.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
36861
36891
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
36862
36892
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
36863
36893
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -36897,7 +36927,7 @@ function GenericFinancialChatCard({
36897
36927
  isNewTab,
36898
36928
  discuss
36899
36929
  }) {
36900
- const subtitle = typeof _optionalChain([chatRef, 'access', _768 => _768.metadata, 'optionalAccess', _769 => _769.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
36930
+ const subtitle = typeof _optionalChain([chatRef, 'access', _772 => _772.metadata, 'optionalAccess', _773 => _773.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
36901
36931
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36902
36932
  MingoInfoCard,
36903
36933
  {
@@ -36966,12 +36996,12 @@ function ProductReleaseChatCard({
36966
36996
  discuss
36967
36997
  }) {
36968
36998
  const releaseProps = buildProps(item);
36969
- const status = _optionalChain([item, 'optionalAccess', _770 => _770.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
36999
+ const status = _optionalChain([item, 'optionalAccess', _774 => _774.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
36970
37000
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36971
37001
  EntityMingoCard,
36972
37002
  {
36973
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _771 => _771.title]), () => ( "")),
36974
- description: _optionalChain([item, 'optionalAccess', _772 => _772.summary]) || releaseProps.formattedDate || void 0,
37003
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _775 => _775.title]), () => ( "")),
37004
+ description: _optionalChain([item, 'optionalAccess', _776 => _776.summary]) || releaseProps.formattedDate || void 0,
36975
37005
  cover: releaseProps.coverImage || void 0,
36976
37006
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Rocket02Icon, { size: 24 }),
36977
37007
  status,
@@ -36988,17 +37018,17 @@ function CampaignChatCard({
36988
37018
  isNewTab,
36989
37019
  discuss
36990
37020
  }) {
36991
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _773 => _773.goals])) ? item.goals.length : 0;
37021
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _777 => _777.goals])) ? item.goals.length : 0;
36992
37022
  const meta = [
36993
- _optionalChain([item, 'optionalAccess', _774 => _774.start_date]) ? formatDateShort(item.start_date) : null,
37023
+ _optionalChain([item, 'optionalAccess', _778 => _778.start_date]) ? formatDateShort(item.start_date) : null,
36994
37024
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
36995
37025
  "Marketing campaign"
36996
37026
  ].filter(Boolean).join(" \xB7 ");
36997
37027
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36998
37028
  EntityMingoCard,
36999
37029
  {
37000
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _775 => _775.name]), () => ( "")),
37001
- description: meta || _optionalChain([item, 'optionalAccess', _776 => _776.description]) || void 0,
37030
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _779 => _779.name]), () => ( "")),
37031
+ description: meta || _optionalChain([item, 'optionalAccess', _780 => _780.description]) || void 0,
37002
37032
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Megaphone01Icon, { size: 24 }),
37003
37033
  chatRef,
37004
37034
  isNewTab,
@@ -37051,14 +37081,14 @@ function BlogChatCard({
37051
37081
  hasEmbeddedVideo,
37052
37082
  discuss
37053
37083
  }) {
37054
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _777 => _777.categories])) ? _optionalChain([item, 'access', _778 => _778.categories, 'access', _779 => _779.find, 'call', _780 => _780((c) => c && c.name), 'optionalAccess', _781 => _781.name]) : void 0;
37084
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _781 => _781.categories])) ? _optionalChain([item, 'access', _782 => _782.categories, 'access', _783 => _783.find, 'call', _784 => _784((c) => c && c.name), 'optionalAccess', _785 => _785.name]) : void 0;
37055
37085
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
37056
37086
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37057
37087
  EntityMingoCard,
37058
37088
  {
37059
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _782 => _782.title]), () => ( "")),
37060
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _783 => _783.summary]), () => ( void 0)),
37061
- cover: entityCover(_optionalChain([item, 'optionalAccess', _784 => _784.featured_image]), ogPlaceholder),
37089
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _786 => _786.title]), () => ( "")),
37090
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _787 => _787.summary]), () => ( void 0)),
37091
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _788 => _788.featured_image]), ogPlaceholder),
37062
37092
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.NewspaperIcon, { size: 24 }),
37063
37093
  status,
37064
37094
  chatRef,
@@ -37075,13 +37105,13 @@ function CaseStudyChatCard({
37075
37105
  ogPlaceholder,
37076
37106
  discuss
37077
37107
  }) {
37078
- const meta = [_optionalChain([item, 'optionalAccess', _785 => _785.msp, 'optionalAccess', _786 => _786.name]), _optionalChain([item, 'optionalAccess', _787 => _787.user, 'optionalAccess', _788 => _788.full_name])].filter(Boolean).join(" \xB7 ");
37108
+ const meta = [_optionalChain([item, 'optionalAccess', _789 => _789.msp, 'optionalAccess', _790 => _790.name]), _optionalChain([item, 'optionalAccess', _791 => _791.user, 'optionalAccess', _792 => _792.full_name])].filter(Boolean).join(" \xB7 ");
37079
37109
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37080
37110
  EntityMingoCard,
37081
37111
  {
37082
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _789 => _789.title]), () => ( "")),
37083
- description: _optionalChain([item, 'optionalAccess', _790 => _790.summary]) || meta || void 0,
37084
- cover: entityCover(_optionalChain([item, 'optionalAccess', _791 => _791.featured_image]), ogPlaceholder),
37112
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _793 => _793.title]), () => ( "")),
37113
+ description: _optionalChain([item, 'optionalAccess', _794 => _794.summary]) || meta || void 0,
37114
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _795 => _795.featured_image]), ogPlaceholder),
37085
37115
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TrophyIcon, { size: 24 }),
37086
37116
  status: { label: "Case study", variant: "grey" },
37087
37117
  chatRef,
@@ -37098,13 +37128,13 @@ function CustomerInterviewChatCard({
37098
37128
  ogPlaceholder,
37099
37129
  discuss
37100
37130
  }) {
37101
- const meta = [_optionalChain([item, 'optionalAccess', _792 => _792.user, 'optionalAccess', _793 => _793.full_name]), _optionalChain([item, 'optionalAccess', _794 => _794.msp, 'optionalAccess', _795 => _795.name])].filter(Boolean).join(" \xB7 ");
37131
+ const meta = [_optionalChain([item, 'optionalAccess', _796 => _796.user, 'optionalAccess', _797 => _797.full_name]), _optionalChain([item, 'optionalAccess', _798 => _798.msp, 'optionalAccess', _799 => _799.name])].filter(Boolean).join(" \xB7 ");
37102
37132
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37103
37133
  EntityMingoCard,
37104
37134
  {
37105
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _796 => _796.title]), () => ( "")),
37106
- description: _optionalChain([item, 'optionalAccess', _797 => _797.video_summary]) || meta || void 0,
37107
- cover: entityCover(_optionalChain([item, 'optionalAccess', _798 => _798.featured_image]), ogPlaceholder),
37135
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _800 => _800.title]), () => ( "")),
37136
+ description: _optionalChain([item, 'optionalAccess', _801 => _801.video_summary]) || meta || void 0,
37137
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _802 => _802.featured_image]), ogPlaceholder),
37108
37138
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 }),
37109
37139
  status: { label: "Interview", variant: "grey" },
37110
37140
  chatRef,
@@ -37121,13 +37151,13 @@ function InvestorUpdateChatCard({
37121
37151
  ogPlaceholder,
37122
37152
  discuss
37123
37153
  }) {
37124
- const title = _optionalChain([item, 'optionalAccess', _799 => _799.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _800 => _800.update_number]), () => ( "?"))}`;
37154
+ const title = _optionalChain([item, 'optionalAccess', _803 => _803.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _804 => _804.update_number]), () => ( "?"))}`;
37125
37155
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37126
37156
  EntityMingoCard,
37127
37157
  {
37128
37158
  title,
37129
- description: _optionalChain([item, 'optionalAccess', _801 => _801.strategic_update]) || _optionalChain([item, 'optionalAccess', _802 => _802.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _803 => _803.period_start]), _optionalChain([item, 'optionalAccess', _804 => _804.period_end])) || void 0,
37130
- cover: entityCover(_optionalChain([item, 'optionalAccess', _805 => _805.featured_image]), ogPlaceholder),
37159
+ description: _optionalChain([item, 'optionalAccess', _805 => _805.strategic_update]) || _optionalChain([item, 'optionalAccess', _806 => _806.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _807 => _807.period_start]), _optionalChain([item, 'optionalAccess', _808 => _808.period_end])) || void 0,
37160
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _809 => _809.featured_image]), ogPlaceholder),
37131
37161
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationLineIcon, { size: 24 }),
37132
37162
  status: { label: "Investor update", variant: "grey" },
37133
37163
  chatRef,
@@ -37144,12 +37174,12 @@ function OnboardingGuideChatCard({
37144
37174
  ogPlaceholder,
37145
37175
  discuss
37146
37176
  }) {
37147
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _806 => _806.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _807 => _807.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _808 => _808.og_image_url]), ogPlaceholder)));
37177
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _810 => _810.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _811 => _811.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _812 => _812.og_image_url]), ogPlaceholder)));
37148
37178
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37149
37179
  EntityMingoCard,
37150
37180
  {
37151
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _809 => _809.title]), () => ( "")),
37152
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _810 => _810.summary]), () => ( _optionalChain([item, 'optionalAccess', _811 => _811.description]))), () => ( void 0)),
37181
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _813 => _813.title]), () => ( "")),
37182
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _814 => _814.summary]), () => ( _optionalChain([item, 'optionalAccess', _815 => _815.description]))), () => ( void 0)),
37153
37183
  cover,
37154
37184
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CompassIcon, { size: 24 }),
37155
37185
  status: { label: "Guide", variant: "grey" },
@@ -37170,25 +37200,25 @@ function ProgramChatCard({
37170
37200
  discuss
37171
37201
  }) {
37172
37202
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 });
37173
- const isScheduled = _optionalChain([item, 'optionalAccess', _812 => _812.status]) === "scheduled";
37203
+ const isScheduled = _optionalChain([item, 'optionalAccess', _816 => _816.status]) === "scheduled";
37174
37204
  let typeMeta;
37175
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _813 => _813.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
37205
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _817 => _817.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
37176
37206
  typeMeta = formatDurationCompact(item.duration_seconds);
37177
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _814 => _814.location_name]) === "string" && item.location_name.trim().length > 0) {
37207
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _818 => _818.location_name]) === "string" && item.location_name.trim().length > 0) {
37178
37208
  typeMeta = item.location_name;
37179
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _815 => _815.start_at])) {
37209
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _819 => _819.start_at])) {
37180
37210
  const time = formatTimeWithTimezone(item.start_at, null);
37181
37211
  const dur = formatDurationFromRange(item.start_at, item.end_at);
37182
37212
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
37183
37213
  }
37184
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _816 => _816.date]), () => ( null)), { fallback: "", timezone: "local" });
37214
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _820 => _820.date]), () => ( null)), { fallback: "", timezone: "local" });
37185
37215
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
37186
37216
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37187
37217
  EntityMingoCard,
37188
37218
  {
37189
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _817 => _817.title]), () => ( "")),
37190
- description: meta || _optionalChain([item, 'optionalAccess', _818 => _818.description]) || void 0,
37191
- cover: entityCover(_optionalChain([item, 'optionalAccess', _819 => _819.cover_url]), ogPlaceholder),
37219
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _821 => _821.title]), () => ( "")),
37220
+ description: meta || _optionalChain([item, 'optionalAccess', _822 => _822.description]) || void 0,
37221
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _823 => _823.cover_url]), ogPlaceholder),
37192
37222
  fallbackIcon: icon,
37193
37223
  status: { label, variant: "grey" },
37194
37224
  chatRef,
@@ -37205,10 +37235,10 @@ function RoadmapChatCard({
37205
37235
  cardType,
37206
37236
  discuss
37207
37237
  }) {
37208
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _820 => _820.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
37209
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _821 => _821.customItemId]) != null;
37238
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _824 => _824.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
37239
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _825 => _825.customItemId]) != null;
37210
37240
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MapIcon, { size: 24 });
37211
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _822 => _822.customItemId]), className: "size-6" }) : logoUrl ? (
37241
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _826 => _826.customItemId]), className: "size-6" }) : logoUrl ? (
37212
37242
  // Contained (not full-bleed) so the integration logo keeps its aspect
37213
37243
  // ratio inside the bordered icon box — matches RoadmapCard.
37214
37244
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -37216,10 +37246,10 @@ function RoadmapChatCard({
37216
37246
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37217
37247
  EntityMingoCard,
37218
37248
  {
37219
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _823 => _823.title]), () => ( "")),
37220
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _824 => _824.description]), () => ( void 0)),
37249
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _827 => _827.title]), () => ( "")),
37250
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _828 => _828.description]), () => ( void 0)),
37221
37251
  fallbackIcon: icon,
37222
- status: statusPill(_optionalChain([item, 'optionalAccess', _825 => _825.status])),
37252
+ status: statusPill(_optionalChain([item, 'optionalAccess', _829 => _829.status])),
37223
37253
  chatRef,
37224
37254
  isNewTab,
37225
37255
  discuss,
@@ -37305,7 +37335,7 @@ function programRegistryEntries() {
37305
37335
  discuss: opts.discuss,
37306
37336
  configKey: cfg.configKey,
37307
37337
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
37308
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _826 => _826.extras, 'optionalAccess', _827 => _827.buildOgPlaceholderUrl, 'optionalCall', _828 => _828(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _829 => _829.title]), () => ( "")))]), () => ( null))
37338
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _830 => _830.extras, 'optionalAccess', _831 => _831.buildOgPlaceholderUrl, 'optionalCall', _832 => _832(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _833 => _833.title]), () => ( "")))]), () => ( null))
37309
37339
  }
37310
37340
  )
37311
37341
  };
@@ -37451,8 +37481,8 @@ var CHAT_CARD_REGISTRY = {
37451
37481
  chatRef,
37452
37482
  isNewTab: opts.isNewTab,
37453
37483
  discuss: opts.discuss,
37454
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _830 => _830.extras, 'optionalAccess', _831 => _831.buildOgPlaceholderUrl, 'optionalCall', _832 => _832(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _833 => _833.title]), () => ( "")))]), () => ( null)),
37455
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _834 => _834.metadata, 'optionalAccess', _835 => _835.hasEmbeddedVideo]) === true
37484
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _834 => _834.extras, 'optionalAccess', _835 => _835.buildOgPlaceholderUrl, 'optionalCall', _836 => _836(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _837 => _837.title]), () => ( "")))]), () => ( null)),
37485
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _838 => _838.metadata, 'optionalAccess', _839 => _839.hasEmbeddedVideo]) === true
37456
37486
  }
37457
37487
  )
37458
37488
  },
@@ -37469,7 +37499,7 @@ var CHAT_CARD_REGISTRY = {
37469
37499
  chatRef,
37470
37500
  isNewTab: opts.isNewTab,
37471
37501
  discuss: opts.discuss,
37472
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _836 => _836.extras, 'optionalAccess', _837 => _837.buildOgPlaceholderUrl, 'optionalCall', _838 => _838(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _839 => _839.title]), () => ( "")))]), () => ( null))
37502
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _840 => _840.extras, 'optionalAccess', _841 => _841.buildOgPlaceholderUrl, 'optionalCall', _842 => _842(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _843 => _843.title]), () => ( "")))]), () => ( null))
37473
37503
  }
37474
37504
  )
37475
37505
  },
@@ -37486,7 +37516,7 @@ var CHAT_CARD_REGISTRY = {
37486
37516
  chatRef,
37487
37517
  isNewTab: opts.isNewTab,
37488
37518
  discuss: opts.discuss,
37489
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _840 => _840.extras, 'optionalAccess', _841 => _841.buildOgPlaceholderUrl, 'optionalCall', _842 => _842(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _843 => _843.title]), () => ( "")))]), () => ( null))
37519
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _844 => _844.extras, 'optionalAccess', _845 => _845.buildOgPlaceholderUrl, 'optionalCall', _846 => _846(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _847 => _847.title]), () => ( "")))]), () => ( null))
37490
37520
  }
37491
37521
  )
37492
37522
  },
@@ -37497,7 +37527,7 @@ var CHAT_CARD_REGISTRY = {
37497
37527
  bareInline: true,
37498
37528
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
37499
37529
  render: (item, chatRef, opts) => {
37500
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _844 => _844.extras, 'optionalAccess', _845 => _845.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
37530
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _848 => _848.extras, 'optionalAccess', _849 => _849.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
37501
37531
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37502
37532
  ProductReleaseChatCard,
37503
37533
  {
@@ -37524,7 +37554,7 @@ var CHAT_CARD_REGISTRY = {
37524
37554
  chatRef,
37525
37555
  isNewTab: opts.isNewTab,
37526
37556
  discuss: opts.discuss,
37527
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _846 => _846.extras, 'optionalAccess', _847 => _847.buildOgPlaceholderUrl, 'optionalCall', _848 => _848(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _849 => _849.title]), () => ( "")))]), () => ( null))
37557
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _850 => _850.extras, 'optionalAccess', _851 => _851.buildOgPlaceholderUrl, 'optionalCall', _852 => _852(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _853 => _853.title]), () => ( "")))]), () => ( null))
37528
37558
  }
37529
37559
  )
37530
37560
  },
@@ -37543,7 +37573,7 @@ var CHAT_CARD_REGISTRY = {
37543
37573
  chatRef,
37544
37574
  isNewTab: opts.isNewTab,
37545
37575
  discuss: opts.discuss,
37546
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _850 => _850.extras, 'optionalAccess', _851 => _851.buildOgPlaceholderUrl, 'optionalCall', _852 => _852(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _853 => _853.title]), () => ( "")))]), () => ( null))
37576
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _854 => _854.extras, 'optionalAccess', _855 => _855.buildOgPlaceholderUrl, 'optionalCall', _856 => _856(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _857 => _857.title]), () => ( "")))]), () => ( null))
37547
37577
  }
37548
37578
  )
37549
37579
  },
@@ -37555,7 +37585,7 @@ var CHAT_CARD_REGISTRY = {
37555
37585
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
37556
37586
  // No public viewer — synthesize the hub-internal admin URL post-fetch
37557
37587
  // so the wrapper + isNewTab computation see the actual destination.
37558
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _854 => _854.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
37588
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _858 => _858.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
37559
37589
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37560
37590
  CampaignChatCard,
37561
37591
  {
@@ -37581,12 +37611,12 @@ function ChatCardNavWrap({
37581
37611
  const onClickCapture = (e) => {
37582
37612
  if (!href) return;
37583
37613
  const targetEl = e.target;
37584
- if (_optionalChain([targetEl, 'optionalAccess', _855 => _855.closest, 'optionalCall', _856 => _856("button")])) return;
37585
- if (!_optionalChain([targetEl, 'optionalAccess', _857 => _857.closest, 'optionalCall', _858 => _858("a")])) return;
37614
+ if (_optionalChain([targetEl, 'optionalAccess', _859 => _859.closest, 'optionalCall', _860 => _860("button")])) return;
37615
+ if (!_optionalChain([targetEl, 'optionalAccess', _861 => _861.closest, 'optionalCall', _862 => _862("a")])) return;
37586
37616
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
37587
37617
  if (!handled) return;
37588
37618
  e.stopPropagation();
37589
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _859 => _859.closeChat])) panel.closeChat();
37619
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _863 => _863.closeChat])) panel.closeChat();
37590
37620
  };
37591
37621
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
37592
37622
  }
@@ -37608,7 +37638,7 @@ function ChatCardLoader({
37608
37638
  title: chatRef.title,
37609
37639
  externalUrl: chatRef.url,
37610
37640
  targetPlatform: chatRef.targetPlatform,
37611
- path: typeof _optionalChain([chatRef, 'access', _860 => _860.metadata, 'optionalAccess', _861 => _861.path]) === "string" ? chatRef.metadata.path : null
37641
+ path: typeof _optionalChain([chatRef, 'access', _864 => _864.metadata, 'optionalAccess', _865 => _865.path]) === "string" ? chatRef.metadata.path : null
37612
37642
  },
37613
37643
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
37614
37644
  );
@@ -37622,7 +37652,7 @@ function ChatCardLoader({
37622
37652
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
37623
37653
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
37624
37654
  const { item, isLoading } = useChatCardItem(
37625
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _862 => _862.contentRefType]), () => ( "")),
37655
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _866 => _866.contentRefType]), () => ( "")),
37626
37656
  fetchEntry ? resolvedChatRef.id : ""
37627
37657
  );
37628
37658
  if (!entry) return null;
@@ -37653,7 +37683,7 @@ function ChatCardLoader({
37653
37683
  isNewTab,
37654
37684
  discuss
37655
37685
  };
37656
- const path = typeof _optionalChain([finalChatRef, 'access', _863 => _863.metadata, 'optionalAccess', _864 => _864.path]) === "string" ? finalChatRef.metadata.path : null;
37686
+ const path = typeof _optionalChain([finalChatRef, 'access', _867 => _867.metadata, 'optionalAccess', _868 => _868.path]) === "string" ? finalChatRef.metadata.path : null;
37657
37687
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37658
37688
  ChatCardNavWrap,
37659
37689
  {
@@ -38179,7 +38209,7 @@ function useJetStreamDialogSubscription({
38179
38209
  const lifecycle = _chunkOZ3GH6OQcjs.startConnectionLifecycle.call(void 0, {
38180
38210
  conn: sharedConn,
38181
38211
  wsUrl,
38182
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _865 => _865.current, 'optionalCall', _866 => _866()]),
38212
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _869 => _869.current, 'optionalCall', _870 => _870()]),
38183
38213
  backoff: reconnectionBackoffRef.current,
38184
38214
  getFreshUrl: () => getNatsWsUrlRef.current(),
38185
38215
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -38194,7 +38224,7 @@ function useJetStreamDialogSubscription({
38194
38224
  setReconnectionCount((c) => c + 1);
38195
38225
  }
38196
38226
  hadConnectionBeforeRef.current = true;
38197
- _optionalChain([onConnectRef, 'access', _867 => _867.current, 'optionalCall', _868 => _868()]);
38227
+ _optionalChain([onConnectRef, 'access', _871 => _871.current, 'optionalCall', _872 => _872()]);
38198
38228
  }
38199
38229
  if (status === "error") {
38200
38230
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -38204,7 +38234,7 @@ function useJetStreamDialogSubscription({
38204
38234
  setIsConnected(false);
38205
38235
  setIsSubscribed(false);
38206
38236
  tearDownSubscription();
38207
- _optionalChain([onDisconnectRef, 'access', _869 => _869.current, 'optionalCall', _870 => _870()]);
38237
+ _optionalChain([onDisconnectRef, 'access', _873 => _873.current, 'optionalCall', _874 => _874()]);
38208
38238
  }
38209
38239
  }
38210
38240
  });
@@ -38283,7 +38313,7 @@ function useJetStreamDialogSubscription({
38283
38313
  }
38284
38314
  subscriptionRef.current = handle;
38285
38315
  setIsSubscribed(true);
38286
- _optionalChain([onSubscribedRef, 'access', _871 => _871.current, 'optionalCall', _872 => _872()]);
38316
+ _optionalChain([onSubscribedRef, 'access', _875 => _875.current, 'optionalCall', _876 => _876()]);
38287
38317
  } catch (e35) {
38288
38318
  if (!cancelled) {
38289
38319
  setIsSubscribed(false);
@@ -38396,20 +38426,20 @@ function useNatsDialogSubscription({
38396
38426
  const tearDownSubscriptions = () => {
38397
38427
  subscriptionRefs.current.forEach((sub) => {
38398
38428
  try {
38399
- _optionalChain([sub, 'optionalAccess', _873 => _873.unsubscribe, 'call', _874 => _874()]);
38429
+ _optionalChain([sub, 'optionalAccess', _877 => _877.unsubscribe, 'call', _878 => _878()]);
38400
38430
  } catch (e37) {
38401
38431
  }
38402
38432
  });
38403
38433
  subscriptionRefs.current.clear();
38404
38434
  lastSubscribedDialogIdRef.current = null;
38405
- _optionalChain([abortControllerRef, 'access', _875 => _875.current, 'optionalAccess', _876 => _876.abort, 'call', _877 => _877()]);
38435
+ _optionalChain([abortControllerRef, 'access', _879 => _879.current, 'optionalAccess', _880 => _880.abort, 'call', _881 => _881()]);
38406
38436
  abortControllerRef.current = null;
38407
38437
  };
38408
38438
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected" || status === "error";
38409
38439
  const lifecycle = _chunkOZ3GH6OQcjs.startConnectionLifecycle.call(void 0, {
38410
38440
  conn: sharedConn,
38411
38441
  wsUrl,
38412
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _878 => _878.current, 'optionalCall', _879 => _879()]),
38442
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _882 => _882.current, 'optionalCall', _883 => _883()]),
38413
38443
  backoff: reconnectionBackoffRef.current,
38414
38444
  getFreshUrl: () => getNatsWsUrlRef.current(),
38415
38445
  shouldRetryOn: isDisconnectStatus,
@@ -38420,13 +38450,13 @@ function useNatsDialogSubscription({
38420
38450
  setReconnectionCount((c) => c + 1);
38421
38451
  }
38422
38452
  hadConnectionBeforeRef.current = true;
38423
- _optionalChain([onConnectRef, 'access', _880 => _880.current, 'optionalCall', _881 => _881()]);
38453
+ _optionalChain([onConnectRef, 'access', _884 => _884.current, 'optionalCall', _885 => _885()]);
38424
38454
  }
38425
38455
  if (isDisconnectStatus(status)) {
38426
38456
  setIsConnected(false);
38427
38457
  setIsSubscribed(false);
38428
38458
  tearDownSubscriptions();
38429
- _optionalChain([onDisconnectRef, 'access', _882 => _882.current, 'optionalCall', _883 => _883()]);
38459
+ _optionalChain([onDisconnectRef, 'access', _886 => _886.current, 'optionalCall', _887 => _887()]);
38430
38460
  }
38431
38461
  }
38432
38462
  });
@@ -38457,13 +38487,13 @@ function useNatsDialogSubscription({
38457
38487
  setIsSubscribed(false);
38458
38488
  subscriptionRefs.current.forEach((sub) => {
38459
38489
  try {
38460
- _optionalChain([sub, 'optionalAccess', _884 => _884.unsubscribe, 'call', _885 => _885()]);
38490
+ _optionalChain([sub, 'optionalAccess', _888 => _888.unsubscribe, 'call', _889 => _889()]);
38461
38491
  } catch (e38) {
38462
38492
  }
38463
38493
  });
38464
38494
  subscriptionRefs.current.clear();
38465
38495
  lastSubscribedDialogIdRef.current = null;
38466
- _optionalChain([abortControllerRef, 'access', _886 => _886.current, 'optionalAccess', _887 => _887.abort, 'call', _888 => _888()]);
38496
+ _optionalChain([abortControllerRef, 'access', _890 => _890.current, 'optionalAccess', _891 => _891.abort, 'call', _892 => _892()]);
38467
38497
  abortControllerRef.current = null;
38468
38498
  }
38469
38499
  return;
@@ -38475,12 +38505,12 @@ function useNatsDialogSubscription({
38475
38505
  if (subscriptionRefs.current.size > 0) {
38476
38506
  subscriptionRefs.current.forEach((sub) => {
38477
38507
  try {
38478
- _optionalChain([sub, 'optionalAccess', _889 => _889.unsubscribe, 'call', _890 => _890()]);
38508
+ _optionalChain([sub, 'optionalAccess', _893 => _893.unsubscribe, 'call', _894 => _894()]);
38479
38509
  } catch (e39) {
38480
38510
  }
38481
38511
  });
38482
38512
  subscriptionRefs.current.clear();
38483
- _optionalChain([abortControllerRef, 'access', _891 => _891.current, 'optionalAccess', _892 => _892.abort, 'call', _893 => _893()]);
38513
+ _optionalChain([abortControllerRef, 'access', _895 => _895.current, 'optionalAccess', _896 => _896.abort, 'call', _897 => _897()]);
38484
38514
  }
38485
38515
  abortControllerRef.current = new AbortController();
38486
38516
  const abort = abortControllerRef.current;
@@ -38512,7 +38542,7 @@ function useNatsDialogSubscription({
38512
38542
  });
38513
38543
  lastSubscribedDialogIdRef.current = dialogId;
38514
38544
  setIsSubscribed(true);
38515
- _optionalChain([onSubscribedRef, 'access', _894 => _894.current, 'optionalCall', _895 => _895()]);
38545
+ _optionalChain([onSubscribedRef, 'access', _898 => _898.current, 'optionalCall', _899 => _899()]);
38516
38546
  };
38517
38547
  if (isConnectedRef.current) {
38518
38548
  createSubscriptions();
@@ -38522,7 +38552,7 @@ function useNatsDialogSubscription({
38522
38552
  abort.abort();
38523
38553
  subscriptionRefs.current.forEach((sub) => {
38524
38554
  try {
38525
- _optionalChain([sub, 'optionalAccess', _896 => _896.unsubscribe, 'call', _897 => _897()]);
38555
+ _optionalChain([sub, 'optionalAccess', _900 => _900.unsubscribe, 'call', _901 => _901()]);
38526
38556
  } catch (e41) {
38527
38557
  }
38528
38558
  });
@@ -38563,7 +38593,7 @@ function useNatsDialogSubscription({
38563
38593
  });
38564
38594
  lastSubscribedDialogIdRef.current = dialogId2;
38565
38595
  setIsSubscribed(true);
38566
- _optionalChain([onSubscribedRef, 'access', _898 => _898.current, 'optionalCall', _899 => _899()]);
38596
+ _optionalChain([onSubscribedRef, 'access', _902 => _902.current, 'optionalCall', _903 => _903()]);
38567
38597
  } else if (subscriptionRefs.current.size > 0) {
38568
38598
  setIsSubscribed(true);
38569
38599
  }
@@ -38571,10 +38601,10 @@ function useNatsDialogSubscription({
38571
38601
  return { isConnected, isSubscribed, reconnectionCount };
38572
38602
  }
38573
38603
  function buildNatsWsUrl(apiBaseUrl, options) {
38574
- const path = _optionalChain([options, 'optionalAccess', _900 => _900.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
38604
+ const path = _optionalChain([options, 'optionalAccess', _904 => _904.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
38575
38605
  const u = new URL(path, apiBaseUrl);
38576
38606
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
38577
- if (_optionalChain([options, 'optionalAccess', _901 => _901.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _902 => _902.token])) {
38607
+ if (_optionalChain([options, 'optionalAccess', _905 => _905.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _906 => _906.token])) {
38578
38608
  u.searchParams.set("authorization", options.token);
38579
38609
  }
38580
38610
  return u.toString();
@@ -38892,8 +38922,8 @@ var MessageSegmentAccumulator = class {
38892
38922
  type: "tool_execution",
38893
38923
  data: {
38894
38924
  ...toolData,
38895
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _903 => _903.data, 'access', _904 => _904.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _905 => _905.toolTitle]))),
38896
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _906 => _906.parameters])
38925
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _907 => _907.data, 'access', _908 => _908.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _909 => _909.toolTitle]))),
38926
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _910 => _910.parameters])
38897
38927
  }
38898
38928
  };
38899
38929
  if (existingIndex !== -1) {
@@ -38917,8 +38947,8 @@ var MessageSegmentAccumulator = class {
38917
38947
  if (seg.type !== "approval_batch") return seg;
38918
38948
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
38919
38949
  if (!hasCall) return seg;
38920
- const prev = _optionalChain([seg, 'access', _907 => _907.data, 'access', _908 => _908.executions, 'optionalAccess', _909 => _909[execId]]);
38921
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _910 => _910.result]), success: _optionalChain([prev, 'optionalAccess', _911 => _911.success]) };
38950
+ const prev = _optionalChain([seg, 'access', _911 => _911.data, 'access', _912 => _912.executions, 'optionalAccess', _913 => _913[execId]]);
38951
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _914 => _914.result]), success: _optionalChain([prev, 'optionalAccess', _915 => _915.success]) };
38922
38952
  matched = true;
38923
38953
  return {
38924
38954
  ...seg,
@@ -39038,10 +39068,10 @@ var MessageSegmentAccumulator = class {
39038
39068
  const segment = {
39039
39069
  type: "approval_request",
39040
39070
  data: {
39041
- command: _optionalChain([pendingApproval, 'optionalAccess', _912 => _912.command]) || "",
39042
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _913 => _913.explanation]),
39071
+ command: _optionalChain([pendingApproval, 'optionalAccess', _916 => _916.command]) || "",
39072
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _917 => _917.explanation]),
39043
39073
  requestId,
39044
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _914 => _914.approvalType]) || approvalType
39074
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _918 => _918.approvalType]) || approvalType
39045
39075
  },
39046
39076
  status,
39047
39077
  onApprove: this.callbacks.onApprove,
@@ -39231,7 +39261,7 @@ function useRealtimeChunkProcessor(options) {
39231
39261
  if (initialState.escalatedApprovals) {
39232
39262
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
39233
39263
  initialState.escalatedApprovals.forEach((data, requestId) => {
39234
- _optionalChain([callbacks, 'access', _915 => _915.onEscalatedApproval, 'optionalCall', _916 => _916(requestId, data)]);
39264
+ _optionalChain([callbacks, 'access', _919 => _919.onEscalatedApproval, 'optionalCall', _920 => _920(requestId, data)]);
39235
39265
  });
39236
39266
  }
39237
39267
  hasEverStreamedRef.current = true;
@@ -39258,7 +39288,7 @@ function useRealtimeChunkProcessor(options) {
39258
39288
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
39259
39289
  if (isInStreamRef.current) {
39260
39290
  isInStreamRef.current = false;
39261
- _optionalChain([callbacks, 'access', _917 => _917.onStreamEnd, 'optionalCall', _918 => _918()]);
39291
+ _optionalChain([callbacks, 'access', _921 => _921.onStreamEnd, 'optionalCall', _922 => _922()]);
39262
39292
  accumulator.resetSegments();
39263
39293
  }
39264
39294
  return;
@@ -39267,32 +39297,32 @@ function useRealtimeChunkProcessor(options) {
39267
39297
  case "message_start":
39268
39298
  isInStreamRef.current = true;
39269
39299
  hasEverStreamedRef.current = true;
39270
- _optionalChain([callbacks, 'access', _919 => _919.onStreamStart, 'optionalCall', _920 => _920()]);
39300
+ _optionalChain([callbacks, 'access', _923 => _923.onStreamStart, 'optionalCall', _924 => _924()]);
39271
39301
  accumulator.resetSegments();
39272
39302
  break;
39273
39303
  case "message_end":
39274
39304
  isInStreamRef.current = false;
39275
- _optionalChain([callbacks, 'access', _921 => _921.onStreamEnd, 'optionalCall', _922 => _922()]);
39305
+ _optionalChain([callbacks, 'access', _925 => _925.onStreamEnd, 'optionalCall', _926 => _926()]);
39276
39306
  accumulator.resetSegments();
39277
39307
  break;
39278
39308
  case "metadata":
39279
- _optionalChain([callbacks, 'access', _923 => _923.onMetadata, 'optionalCall', _924 => _924(action)]);
39309
+ _optionalChain([callbacks, 'access', _927 => _927.onMetadata, 'optionalCall', _928 => _928(action)]);
39280
39310
  break;
39281
39311
  case "text": {
39282
39312
  const segments = accumulator.appendText(action.text);
39283
39313
  if (isInStreamRef.current || !hasEverStreamedRef.current) {
39284
- _optionalChain([callbacks, 'access', _925 => _925.onSegmentsUpdate, 'optionalCall', _926 => _926(segments)]);
39314
+ _optionalChain([callbacks, 'access', _929 => _929.onSegmentsUpdate, 'optionalCall', _930 => _930(segments)]);
39285
39315
  } else {
39286
- _optionalChain([callbacks, 'access', _927 => _927.onSegmentsUpdate, 'optionalCall', _928 => _928([{ type: "text", text: action.text }], { append: true })]);
39316
+ _optionalChain([callbacks, 'access', _931 => _931.onSegmentsUpdate, 'optionalCall', _932 => _932([{ type: "text", text: action.text }], { append: true })]);
39287
39317
  }
39288
39318
  break;
39289
39319
  }
39290
39320
  case "thinking": {
39291
39321
  const segments = accumulator.appendThinking(action.text);
39292
39322
  if (isInStreamRef.current || !hasEverStreamedRef.current) {
39293
- _optionalChain([callbacks, 'access', _929 => _929.onSegmentsUpdate, 'optionalCall', _930 => _930(segments)]);
39323
+ _optionalChain([callbacks, 'access', _933 => _933.onSegmentsUpdate, 'optionalCall', _934 => _934(segments)]);
39294
39324
  } else {
39295
- _optionalChain([callbacks, 'access', _931 => _931.onSegmentsUpdate, 'optionalCall', _932 => _932([{ type: "thinking", text: action.text }], { append: true })]);
39325
+ _optionalChain([callbacks, 'access', _935 => _935.onSegmentsUpdate, 'optionalCall', _936 => _936([{ type: "thinking", text: action.text }], { append: true })]);
39296
39326
  }
39297
39327
  break;
39298
39328
  }
@@ -39302,7 +39332,7 @@ function useRealtimeChunkProcessor(options) {
39302
39332
  break;
39303
39333
  }
39304
39334
  const segments = accumulator.addToolExecution(action.segment);
39305
- _optionalChain([callbacks, 'access', _933 => _933.onSegmentsUpdate, 'optionalCall', _934 => _934(segments)]);
39335
+ _optionalChain([callbacks, 'access', _937 => _937.onSegmentsUpdate, 'optionalCall', _938 => _938(segments)]);
39306
39336
  break;
39307
39337
  }
39308
39338
  case "approval_request": {
@@ -39316,10 +39346,10 @@ function useRealtimeChunkProcessor(options) {
39316
39346
  approvalType,
39317
39347
  status
39318
39348
  );
39319
- _optionalChain([callbacks, 'access', _935 => _935.onSegmentsUpdate, 'optionalCall', _936 => _936(segments)]);
39349
+ _optionalChain([callbacks, 'access', _939 => _939.onSegmentsUpdate, 'optionalCall', _940 => _940(segments)]);
39320
39350
  } else {
39321
39351
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
39322
- _optionalChain([callbacks, 'access', _937 => _937.onEscalatedApproval, 'optionalCall', _938 => _938(requestId, { command, explanation, approvalType })]);
39352
+ _optionalChain([callbacks, 'access', _941 => _941.onEscalatedApproval, 'optionalCall', _942 => _942(requestId, { command, explanation, approvalType })]);
39323
39353
  }
39324
39354
  break;
39325
39355
  }
@@ -39331,20 +39361,20 @@ function useRealtimeChunkProcessor(options) {
39331
39361
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
39332
39362
  pendingEscalatedRef.current.set(requestId, {
39333
39363
  command: summary,
39334
- explanation: _optionalChain([required, 'optionalAccess', _939 => _939.toolExplanation]),
39364
+ explanation: _optionalChain([required, 'optionalAccess', _943 => _943.toolExplanation]),
39335
39365
  approvalType,
39336
39366
  toolCalls
39337
39367
  });
39338
- _optionalChain([callbacks, 'access', _940 => _940.onEscalatedApproval, 'optionalCall', _941 => _941(requestId, {
39368
+ _optionalChain([callbacks, 'access', _944 => _944.onEscalatedApproval, 'optionalCall', _945 => _945(requestId, {
39339
39369
  command: summary,
39340
- explanation: _optionalChain([required, 'optionalAccess', _942 => _942.toolExplanation]),
39370
+ explanation: _optionalChain([required, 'optionalAccess', _946 => _946.toolExplanation]),
39341
39371
  approvalType
39342
39372
  })]);
39343
39373
  break;
39344
39374
  }
39345
39375
  if (batchApprovalsEnabled) {
39346
39376
  const segments2 = accumulator.addApprovalBatch(requestId, approvalType, toolCalls, status);
39347
- _optionalChain([callbacks, 'access', _943 => _943.onSegmentsUpdate, 'optionalCall', _944 => _944(segments2)]);
39377
+ _optionalChain([callbacks, 'access', _947 => _947.onSegmentsUpdate, 'optionalCall', _948 => _948(segments2)]);
39348
39378
  break;
39349
39379
  }
39350
39380
  let segments = accumulator.getSegments();
@@ -39358,7 +39388,7 @@ function useRealtimeChunkProcessor(options) {
39358
39388
  status
39359
39389
  );
39360
39390
  }
39361
- _optionalChain([callbacks, 'access', _945 => _945.onSegmentsUpdate, 'optionalCall', _946 => _946(segments)]);
39391
+ _optionalChain([callbacks, 'access', _949 => _949.onSegmentsUpdate, 'optionalCall', _950 => _950(segments)]);
39362
39392
  break;
39363
39393
  }
39364
39394
  case "approval_result": {
@@ -39367,7 +39397,7 @@ function useRealtimeChunkProcessor(options) {
39367
39397
  const status = approved ? "approved" : "rejected";
39368
39398
  if (escalatedData) {
39369
39399
  pendingEscalatedRef.current.delete(requestId);
39370
- _optionalChain([callbacks, 'access', _947 => _947.onEscalatedApprovalResult, 'optionalCall', _948 => _948(requestId, approved, {
39400
+ _optionalChain([callbacks, 'access', _951 => _951.onEscalatedApprovalResult, 'optionalCall', _952 => _952(requestId, approved, {
39371
39401
  command: escalatedData.command,
39372
39402
  explanation: escalatedData.explanation,
39373
39403
  approvalType: escalatedData.approvalType
@@ -39380,7 +39410,7 @@ function useRealtimeChunkProcessor(options) {
39380
39410
  escalatedData.toolCalls,
39381
39411
  status
39382
39412
  );
39383
- _optionalChain([callbacks, 'access', _949 => _949.onSegmentsUpdate, 'optionalCall', _950 => _950(segments)]);
39413
+ _optionalChain([callbacks, 'access', _953 => _953.onSegmentsUpdate, 'optionalCall', _954 => _954(segments)]);
39384
39414
  } else {
39385
39415
  let segments = accumulator.getSegments();
39386
39416
  for (const call of escalatedData.toolCalls) {
@@ -39393,7 +39423,7 @@ function useRealtimeChunkProcessor(options) {
39393
39423
  status
39394
39424
  );
39395
39425
  }
39396
- _optionalChain([callbacks, 'access', _951 => _951.onSegmentsUpdate, 'optionalCall', _952 => _952(segments)]);
39426
+ _optionalChain([callbacks, 'access', _955 => _955.onSegmentsUpdate, 'optionalCall', _956 => _956(segments)]);
39397
39427
  }
39398
39428
  } else {
39399
39429
  const segments = accumulator.addApprovalRequest(
@@ -39403,37 +39433,37 @@ function useRealtimeChunkProcessor(options) {
39403
39433
  escalatedData.approvalType,
39404
39434
  status
39405
39435
  );
39406
- _optionalChain([callbacks, 'access', _953 => _953.onSegmentsUpdate, 'optionalCall', _954 => _954(segments)]);
39436
+ _optionalChain([callbacks, 'access', _957 => _957.onSegmentsUpdate, 'optionalCall', _958 => _958(segments)]);
39407
39437
  }
39408
39438
  } else {
39409
39439
  accumulator.updateApprovalStatus(requestId, status);
39410
39440
  if (!callbacks.onApprovalResolved) {
39411
- _optionalChain([callbacks, 'access', _955 => _955.onSegmentsUpdate, 'optionalCall', _956 => _956(accumulator.getSegments())]);
39441
+ _optionalChain([callbacks, 'access', _959 => _959.onSegmentsUpdate, 'optionalCall', _960 => _960(accumulator.getSegments())]);
39412
39442
  }
39413
39443
  }
39414
- _optionalChain([callbacks, 'access', _957 => _957.onApprovalResolved, 'optionalCall', _958 => _958(requestId, status, approvalType)]);
39444
+ _optionalChain([callbacks, 'access', _961 => _961.onApprovalResolved, 'optionalCall', _962 => _962(requestId, status, approvalType)]);
39415
39445
  break;
39416
39446
  }
39417
39447
  case "error": {
39418
39448
  let message2;
39419
- if ("details" in action && _optionalChain([action, 'optionalAccess', _959 => _959.details])) {
39449
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _963 => _963.details])) {
39420
39450
  try {
39421
- message2 = _optionalChain([JSON, 'access', _960 => _960.parse, 'call', _961 => _961(action.details), 'optionalAccess', _962 => _962.error, 'optionalAccess', _963 => _963.message]);
39451
+ message2 = _optionalChain([JSON, 'access', _964 => _964.parse, 'call', _965 => _965(action.details), 'optionalAccess', _966 => _966.error, 'optionalAccess', _967 => _967.message]);
39422
39452
  } catch (e43) {
39423
39453
  message2 = action.details;
39424
39454
  }
39425
39455
  }
39426
39456
  const segments = accumulator.addError(action.error, message2);
39427
- _optionalChain([callbacks, 'access', _964 => _964.onSegmentsUpdate, 'optionalCall', _965 => _965(segments)]);
39428
- _optionalChain([callbacks, 'access', _966 => _966.onError, 'optionalCall', _967 => _967(action.error, message2)]);
39457
+ _optionalChain([callbacks, 'access', _968 => _968.onSegmentsUpdate, 'optionalCall', _969 => _969(segments)]);
39458
+ _optionalChain([callbacks, 'access', _970 => _970.onError, 'optionalCall', _971 => _971(action.error, message2)]);
39429
39459
  break;
39430
39460
  }
39431
39461
  case "system": {
39432
- _optionalChain([callbacks, 'access', _968 => _968.onSystemMessage, 'optionalCall', _969 => _969(action.text)]);
39462
+ _optionalChain([callbacks, 'access', _972 => _972.onSystemMessage, 'optionalCall', _973 => _973(action.text)]);
39433
39463
  break;
39434
39464
  }
39435
39465
  case "direct_message": {
39436
- _optionalChain([callbacks, 'access', _970 => _970.onDirectMessage, 'optionalCall', _971 => _971(action.text, {
39466
+ _optionalChain([callbacks, 'access', _974 => _974.onDirectMessage, 'optionalCall', _975 => _975(action.text, {
39437
39467
  ownerType: action.ownerType,
39438
39468
  displayName: action.displayName,
39439
39469
  userId: action.userId
@@ -39441,29 +39471,29 @@ function useRealtimeChunkProcessor(options) {
39441
39471
  break;
39442
39472
  }
39443
39473
  case "message_request":
39444
- _optionalChain([callbacks, 'access', _972 => _972.onUserMessage, 'optionalCall', _973 => _973(action.text, {
39474
+ _optionalChain([callbacks, 'access', _976 => _976.onUserMessage, 'optionalCall', _977 => _977(action.text, {
39445
39475
  ownerType: action.ownerType,
39446
39476
  displayName: action.displayName,
39447
39477
  userId: action.userId
39448
39478
  })]);
39449
39479
  break;
39450
39480
  case "token_usage":
39451
- _optionalChain([callbacks, 'access', _974 => _974.onTokenUsage, 'optionalCall', _975 => _975(action.data)]);
39481
+ _optionalChain([callbacks, 'access', _978 => _978.onTokenUsage, 'optionalCall', _979 => _979(action.data)]);
39452
39482
  break;
39453
39483
  case "context_compaction_start": {
39454
39484
  const standalone = !isInStreamRef.current;
39455
39485
  const segments = accumulator.addContextCompaction();
39456
- _optionalChain([callbacks, 'access', _976 => _976.onSegmentsUpdate, 'optionalCall', _977 => _977(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
39486
+ _optionalChain([callbacks, 'access', _980 => _980.onSegmentsUpdate, 'optionalCall', _981 => _981(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
39457
39487
  break;
39458
39488
  }
39459
39489
  case "context_compaction_end": {
39460
39490
  const standalone = !isInStreamRef.current;
39461
39491
  const segments = accumulator.completeContextCompaction(action.summary);
39462
- _optionalChain([callbacks, 'access', _978 => _978.onSegmentsUpdate, 'optionalCall', _979 => _979(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
39492
+ _optionalChain([callbacks, 'access', _982 => _982.onSegmentsUpdate, 'optionalCall', _983 => _983(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
39463
39493
  break;
39464
39494
  }
39465
39495
  case "dialog_closed":
39466
- _optionalChain([callbacks, 'access', _980 => _980.onDialogClosed, 'optionalCall', _981 => _981()]);
39496
+ _optionalChain([callbacks, 'access', _984 => _984.onDialogClosed, 'optionalCall', _985 => _985()]);
39467
39497
  break;
39468
39498
  default:
39469
39499
  break;
@@ -39525,7 +39555,7 @@ function useSlashCommands(prefix, commandsUrl) {
39525
39555
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
39526
39556
  if (!cancelled) setCommands(next);
39527
39557
  } catch (err) {
39528
- if (!cancelled && _optionalChain([err, 'optionalAccess', _982 => _982.name]) !== "AbortError") {
39558
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _986 => _986.name]) !== "AbortError") {
39529
39559
  console.warn("[use-slash-commands] fetch failed:", err);
39530
39560
  }
39531
39561
  } finally {
@@ -39544,7 +39574,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
39544
39574
  const query = _reactquery.useQuery.call(void 0, {
39545
39575
  queryKey: ["chat-slash-commands", commandsUrl],
39546
39576
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
39547
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _983 => _983.enabled]), () => ( true)),
39577
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _987 => _987.enabled]), () => ( true)),
39548
39578
  staleTime: Infinity,
39549
39579
  gcTime: Infinity
39550
39580
  });
@@ -39565,7 +39595,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
39565
39595
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
39566
39596
  function uploadWithProgress(url, file, token, onProgress, signal) {
39567
39597
  return new Promise((resolve, reject) => {
39568
- if (_optionalChain([signal, 'optionalAccess', _984 => _984.aborted])) {
39598
+ if (_optionalChain([signal, 'optionalAccess', _988 => _988.aborted])) {
39569
39599
  reject(new Error("Upload cancelled"));
39570
39600
  return;
39571
39601
  }
@@ -39579,7 +39609,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
39579
39609
  xhr.removeEventListener("error", handleError);
39580
39610
  xhr.removeEventListener("abort", handleAbort);
39581
39611
  xhr.removeEventListener("timeout", handleTimeout);
39582
- _optionalChain([signal, 'optionalAccess', _985 => _985.removeEventListener, 'call', _986 => _986("abort", handleSignalAbort)]);
39612
+ _optionalChain([signal, 'optionalAccess', _989 => _989.removeEventListener, 'call', _990 => _990("abort", handleSignalAbort)]);
39583
39613
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
39584
39614
  };
39585
39615
  const handleProgress = (event) => {
@@ -39615,7 +39645,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
39615
39645
  const handleSignalAbort = () => {
39616
39646
  xhr.abort();
39617
39647
  };
39618
- _optionalChain([signal, 'optionalAccess', _987 => _987.addEventListener, 'call', _988 => _988("abort", handleSignalAbort, { once: true })]);
39648
+ _optionalChain([signal, 'optionalAccess', _991 => _991.addEventListener, 'call', _992 => _992("abort", handleSignalAbort, { once: true })]);
39619
39649
  xhr.upload.addEventListener("progress", handleProgress);
39620
39650
  xhr.addEventListener("load", handleLoad);
39621
39651
  xhr.addEventListener("error", handleError);
@@ -39659,12 +39689,12 @@ function useChatAttachments() {
39659
39689
  try {
39660
39690
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
39661
39691
  } catch (err) {
39662
- if (_optionalChain([ctrl, 'optionalAccess', _989 => _989.signal, 'access', _990 => _990.aborted])) return;
39692
+ if (_optionalChain([ctrl, 'optionalAccess', _993 => _993.signal, 'access', _994 => _994.aborted])) return;
39663
39693
  throw new Error(
39664
39694
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
39665
39695
  );
39666
39696
  }
39667
- if (_optionalChain([ctrl, 'optionalAccess', _991 => _991.signal, 'access', _992 => _992.aborted])) return;
39697
+ if (_optionalChain([ctrl, 'optionalAccess', _995 => _995.signal, 'access', _996 => _996.aborted])) return;
39668
39698
  if (!sniffed) {
39669
39699
  throw new Error("Unrecognized file format");
39670
39700
  }
@@ -39678,7 +39708,7 @@ function useChatAttachments() {
39678
39708
  const urlResp = await embedAuthedFetch(uploadUrlEndpoint, {
39679
39709
  method: "POST",
39680
39710
  headers: { "Content-Type": "application/json" },
39681
- signal: _optionalChain([ctrl, 'optionalAccess', _993 => _993.signal]),
39711
+ signal: _optionalChain([ctrl, 'optionalAccess', _997 => _997.signal]),
39682
39712
  body: JSON.stringify({
39683
39713
  fileName: att.file.name,
39684
39714
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -39704,9 +39734,9 @@ function useChatAttachments() {
39704
39734
  (pct) => {
39705
39735
  updateOne(att.id, { progress: pct });
39706
39736
  },
39707
- _optionalChain([ctrl, 'optionalAccess', _994 => _994.signal])
39737
+ _optionalChain([ctrl, 'optionalAccess', _998 => _998.signal])
39708
39738
  );
39709
- if (_optionalChain([ctrl, 'optionalAccess', _995 => _995.signal, 'access', _996 => _996.aborted])) return;
39739
+ if (_optionalChain([ctrl, 'optionalAccess', _999 => _999.signal, 'access', _1000 => _1000.aborted])) return;
39710
39740
  updateOne(att.id, {
39711
39741
  status: "ready",
39712
39742
  progress: 100,
@@ -39714,7 +39744,7 @@ function useChatAttachments() {
39714
39744
  viewToken: mintData.viewToken
39715
39745
  });
39716
39746
  } catch (err) {
39717
- if (_optionalChain([ctrl, 'optionalAccess', _997 => _997.signal, 'access', _998 => _998.aborted])) return;
39747
+ if (_optionalChain([ctrl, 'optionalAccess', _1001 => _1001.signal, 'access', _1002 => _1002.aborted])) return;
39718
39748
  const message2 = err instanceof Error ? err.message : String(err);
39719
39749
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
39720
39750
  } finally {
@@ -39865,7 +39895,7 @@ var ANON_DEFAULTS = {
39865
39895
  function useResolveChatIdentity(enabled) {
39866
39896
  const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
39867
39897
  const url = runtime.endpoints.identityUrl;
39868
- const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call', _999 => _999(), 'optionalAccess', _1000 => _1000.email]), () => ( null));
39898
+ const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call', _1003 => _1003(), 'optionalAccess', _1004 => _1004.email]), () => ( null));
39869
39899
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
39870
39900
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
39871
39901
  _react.useEffect.call(void 0, () => {
@@ -39953,7 +39983,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
39953
39983
  yield chunk;
39954
39984
  }
39955
39985
  } catch (err) {
39956
- if (_optionalChain([err, 'optionalAccess', _1001 => _1001.name]) === "AbortError" || ctrl.signal.aborted) {
39986
+ if (_optionalChain([err, 'optionalAccess', _1005 => _1005.name]) === "AbortError" || ctrl.signal.aborted) {
39957
39987
  return;
39958
39988
  }
39959
39989
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -40004,7 +40034,7 @@ function useChat({
40004
40034
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
40005
40035
  onMessagesChangeRef.current = onMessagesChange;
40006
40036
  _react.useEffect.call(void 0, () => {
40007
- _optionalChain([onMessagesChangeRef, 'access', _1002 => _1002.current, 'optionalCall', _1003 => _1003(messages)]);
40037
+ _optionalChain([onMessagesChangeRef, 'access', _1006 => _1006.current, 'optionalCall', _1007 => _1007(messages)]);
40008
40038
  }, [messages]);
40009
40039
  const {
40010
40040
  streamMessage,
@@ -40041,7 +40071,7 @@ function useChat({
40041
40071
  name: "You",
40042
40072
  content: text,
40043
40073
  timestamp: /* @__PURE__ */ new Date(),
40044
- ..._optionalChain([options, 'optionalAccess', _1004 => _1004.hidden]) ? { hidden: true } : {}
40074
+ ..._optionalChain([options, 'optionalAccess', _1008 => _1008.hidden]) ? { hidden: true } : {}
40045
40075
  };
40046
40076
  addMessage(userMessage);
40047
40077
  setIsTyping(true);
@@ -40103,7 +40133,7 @@ function useChat({
40103
40133
  currentTextSegment = "";
40104
40134
  }
40105
40135
  const seg = segment;
40106
- const proposalId = _optionalChain([seg, 'access', _1005 => _1005.data, 'optionalAccess', _1006 => _1006.requestId]);
40136
+ const proposalId = _optionalChain([seg, 'access', _1009 => _1009.data, 'optionalAccess', _1010 => _1010.requestId]);
40107
40137
  const updateApprovalMessage = (transform) => {
40108
40138
  setMessages((prev) => {
40109
40139
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -40112,7 +40142,7 @@ function useChat({
40112
40142
  if (!Array.isArray(m.content)) continue;
40113
40143
  const segments = m.content;
40114
40144
  const hasMatch = segments.some(
40115
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1007 => _1007.data, 'optionalAccess', _1008 => _1008.requestId]) === proposalId
40145
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1011 => _1011.data, 'optionalAccess', _1012 => _1012.requestId]) === proposalId
40116
40146
  );
40117
40147
  if (!hasMatch) continue;
40118
40148
  const next = [...prev];
@@ -40154,11 +40184,11 @@ function useChat({
40154
40184
  if (!Array.isArray(m.content)) continue;
40155
40185
  const segments = m.content;
40156
40186
  const hasMatch = segments.some(
40157
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1009 => _1009.data, 'optionalAccess', _1010 => _1010.requestId]) === decision.proposalId
40187
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1013 => _1013.data, 'optionalAccess', _1014 => _1014.requestId]) === decision.proposalId
40158
40188
  );
40159
40189
  if (!hasMatch) continue;
40160
40190
  const flipped = segments.map(
40161
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1011 => _1011.data, 'optionalAccess', _1012 => _1012.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
40191
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1015 => _1015.data, 'optionalAccess', _1016 => _1016.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
40162
40192
  );
40163
40193
  const next = [...prev];
40164
40194
  next[i] = { ...m, content: flipped };
@@ -40320,8 +40350,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
40320
40350
  })),
40321
40351
  { role: "user", content: message2 }
40322
40352
  ];
40323
- const targetPath = _optionalChain([extra, 'optionalAccess', _1013 => _1013.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
40324
- const requestBody = _optionalChain([extra, 'optionalAccess', _1014 => _1014.approvalAction]) ? {
40353
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1017 => _1017.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
40354
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1018 => _1018.approvalAction]) ? {
40325
40355
  proposal_id: extra.approvalAction.proposalId,
40326
40356
  action: extra.approvalAction.action,
40327
40357
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -40330,8 +40360,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
40330
40360
  }))
40331
40361
  } : {
40332
40362
  messages: apiMessages,
40333
- ..._optionalChain([extra, 'optionalAccess', _1015 => _1015.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
40334
- ..._optionalChain([extra, 'optionalAccess', _1016 => _1016.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
40363
+ ..._optionalChain([extra, 'optionalAccess', _1019 => _1019.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
40364
+ ..._optionalChain([extra, 'optionalAccess', _1020 => _1020.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
40335
40365
  };
40336
40366
  const response = await embedAuthedFetch(targetPath, {
40337
40367
  method: "POST",
@@ -40341,7 +40371,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
40341
40371
  if (!response.ok) {
40342
40372
  throw new Error(`Chat request failed: ${response.status}`);
40343
40373
  }
40344
- const reader = _optionalChain([response, 'access', _1017 => _1017.body, 'optionalAccess', _1018 => _1018.getReader, 'call', _1019 => _1019()]);
40374
+ const reader = _optionalChain([response, 'access', _1021 => _1021.body, 'optionalAccess', _1022 => _1022.getReader, 'call', _1023 => _1023()]);
40345
40375
  if (!reader) throw new Error("No response body");
40346
40376
  const decoder = new TextDecoder();
40347
40377
  let buffer = "";
@@ -40424,7 +40454,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
40424
40454
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
40425
40455
  const result = _nullishCoalesce(meta.result, () => ( null));
40426
40456
  const card = _nullishCoalesce(meta.card, () => ( null));
40427
- if (_optionalChain([card, 'optionalAccess', _1020 => _1020.ref, 'optionalAccess', _1021 => _1021.id]) && _optionalChain([card, 'optionalAccess', _1022 => _1022.type])) {
40457
+ if (_optionalChain([card, 'optionalAccess', _1024 => _1024.ref, 'optionalAccess', _1025 => _1025.id]) && _optionalChain([card, 'optionalAccess', _1026 => _1026.type])) {
40428
40458
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
40429
40459
  const key = buildChatRefKey(card.type, card.ref.id);
40430
40460
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -40437,8 +40467,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
40437
40467
  willAutoContinue: meta.willAutoContinue === true,
40438
40468
  ...toolName ? { toolName } : {},
40439
40469
  ...result ? { result } : {},
40440
- ..._optionalChain([card, 'optionalAccess', _1023 => _1023.marker]) ? { marker: card.marker } : {},
40441
- ..._optionalChain([card, 'optionalAccess', _1024 => _1024.ref]) ? { cardRef: card.ref } : {},
40470
+ ..._optionalChain([card, 'optionalAccess', _1027 => _1027.marker]) ? { marker: card.marker } : {},
40471
+ ..._optionalChain([card, 'optionalAccess', _1028 => _1028.ref]) ? { cardRef: card.ref } : {},
40442
40472
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
40443
40473
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
40444
40474
  };
@@ -40557,7 +40587,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
40557
40587
  var chatStorageKey = (source) => {
40558
40588
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
40559
40589
  const auth = getEmbedProxyAuth();
40560
- if (_optionalChain([auth, 'optionalAccess', _1025 => _1025.email])) {
40590
+ if (_optionalChain([auth, 'optionalAccess', _1029 => _1029.email])) {
40561
40591
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
40562
40592
  }
40563
40593
  return base;
@@ -40612,7 +40642,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
40612
40642
  const { active = true } = runtimeOptions;
40613
40643
  const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
40614
40644
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
40615
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1026 => _1026.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
40645
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1030 => _1030.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
40616
40646
  const persistedRef = _react.useRef.call(void 0, null);
40617
40647
  if (persistedRef.current === null) {
40618
40648
  pruneStaleChatStorage(source);
@@ -40717,7 +40747,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
40717
40747
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
40718
40748
  sources = sourcesMapRef.current.get(lookupIdx);
40719
40749
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
40720
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1027 => _1027.current, 'access', _1028 => _1028.get, 'call', _1029 => _1029(lookupIdx), 'optionalAccess', _1030 => _1030.scrollAnchor]), () => ( void 0));
40750
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1031 => _1031.current, 'access', _1032 => _1032.get, 'call', _1033 => _1033(lookupIdx), 'optionalAccess', _1034 => _1034.scrollAnchor]), () => ( void 0));
40721
40751
  }
40722
40752
  return {
40723
40753
  id: m.id,
@@ -40765,7 +40795,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
40765
40795
  );
40766
40796
  return;
40767
40797
  }
40768
- const refSlug = typeof _optionalChain([reference, 'access', _1031 => _1031.metadata, 'optionalAccess', _1032 => _1032.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
40798
+ const refSlug = typeof _optionalChain([reference, 'access', _1035 => _1035.metadata, 'optionalAccess', _1036 => _1036.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
40769
40799
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
40770
40800
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
40771
40801
  const text = `/${cmdId} display "${escaped}"`;
@@ -40837,18 +40867,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
40837
40867
  clearMessages,
40838
40868
  streamingPhase,
40839
40869
  /** Provider key for the lib's `<ModelDisplay>` icon. */
40840
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1033 => _1033.provider]), () => ( null)),
40841
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1034 => _1034.modelLabel]), () => ( null)),
40842
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1035 => _1035.contextWindowMaxTokens]), () => ( null)),
40870
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1037 => _1037.provider]), () => ( null)),
40871
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1038 => _1038.modelLabel]), () => ( null)),
40872
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1039 => _1039.contextWindowMaxTokens]), () => ( null)),
40843
40873
  /** Input tokens (known after server's message_start frame; null until). */
40844
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1036 => _1036.inputTokens]), () => ( null)),
40874
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1040 => _1040.inputTokens]), () => ( null)),
40845
40875
  /** Output tokens (known only after server's trailing usage frame). */
40846
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1037 => _1037.outputTokens]), () => ( null)),
40876
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1041 => _1041.outputTokens]), () => ( null)),
40847
40877
  /** Cache hit % (read / total-input × 100). null during streaming. */
40848
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1038 => _1038.cacheHitRatePct]), () => ( null)),
40878
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1042 => _1042.cacheHitRatePct]), () => ( null)),
40849
40879
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
40850
40880
  * token counts). null until the trailing usage frame lands. */
40851
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1039 => _1039.breakdown]), () => ( null)),
40881
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1043 => _1043.breakdown]), () => ( null)),
40852
40882
  // ─── Dialog management — stubs for v1 ────────────────────────────────
40853
40883
  // Guide mode currently keeps its history in `localStorage` opaquely
40854
40884
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -40906,15 +40936,15 @@ var noopRejectRequest = async (_id, _reason) => {
40906
40936
 
40907
40937
  // src/components/chat/utils/process-historical-messages.ts
40908
40938
  function getOwnerDisplayName(owner) {
40909
- if (_optionalChain([owner, 'optionalAccess', _1040 => _1040.type]) === OWNER_TYPE.ADMIN && owner.user) {
40939
+ if (_optionalChain([owner, 'optionalAccess', _1044 => _1044.type]) === OWNER_TYPE.ADMIN && owner.user) {
40910
40940
  const { firstName, lastName } = owner.user;
40911
40941
  const name = [firstName, lastName].filter(Boolean).join(" ");
40912
40942
  if (name) return name;
40913
40943
  }
40914
- return _optionalChain([owner, 'optionalAccess', _1041 => _1041.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
40944
+ return _optionalChain([owner, 'optionalAccess', _1045 => _1045.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
40915
40945
  }
40916
40946
  function getOwnerAvatar(owner) {
40917
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1042 => _1042.user, 'optionalAccess', _1043 => _1043.image, 'optionalAccess', _1044 => _1044.imageUrl]), () => ( void 0));
40947
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1046 => _1046.user, 'optionalAccess', _1047 => _1047.image, 'optionalAccess', _1048 => _1048.imageUrl]), () => ( void 0));
40918
40948
  }
40919
40949
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
40920
40950
  messageDataArray.forEach((data) => {
@@ -40977,10 +41007,10 @@ function processHistoricalMessages(messages, options = {}) {
40977
41007
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
40978
41008
  return;
40979
41009
  }
40980
- const isUserMessage = _optionalChain([msg, 'access', _1045 => _1045.owner, 'optionalAccess', _1046 => _1046.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1047 => _1047.owner, 'optionalAccess', _1048 => _1048.type]) === OWNER_TYPE.ADMIN;
41010
+ const isUserMessage = _optionalChain([msg, 'access', _1049 => _1049.owner, 'optionalAccess', _1050 => _1050.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1051 => _1051.owner, 'optionalAccess', _1052 => _1052.type]) === OWNER_TYPE.ADMIN;
40981
41011
  if (isUserMessage) {
40982
41012
  flushAssistantMessage();
40983
- const userAuthorType = _optionalChain([msg, 'access', _1049 => _1049.owner, 'optionalAccess', _1050 => _1050.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
41013
+ const userAuthorType = _optionalChain([msg, 'access', _1053 => _1053.owner, 'optionalAccess', _1054 => _1054.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
40984
41014
  messageDataArray.forEach((data) => {
40985
41015
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
40986
41016
  processedMessages.push({
@@ -41005,7 +41035,7 @@ function processHistoricalMessages(messages, options = {}) {
41005
41035
  });
41006
41036
  const nextMsg = messages[index + 1];
41007
41037
  const isLastMessage = index === messages.length - 1;
41008
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1051 => _1051.owner, 'optionalAccess', _1052 => _1052.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1053 => _1053.owner, 'optionalAccess', _1054 => _1054.type]) === OWNER_TYPE.ADMIN);
41038
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1055 => _1055.owner, 'optionalAccess', _1056 => _1056.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1057 => _1057.owner, 'optionalAccess', _1058 => _1058.type]) === OWNER_TYPE.ADMIN);
41009
41039
  if (isLastMessage || nextIsFromUser) {
41010
41040
  flushAssistantMessage();
41011
41041
  }
@@ -41115,7 +41145,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
41115
41145
  }
41116
41146
  }
41117
41147
  } else {
41118
- _optionalChain([escalatedApprovals, 'optionalAccess', _1055 => _1055.set, 'call', _1056 => _1056(data.approvalRequestId, {
41148
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1059 => _1059.set, 'call', _1060 => _1060(data.approvalRequestId, {
41119
41149
  command: data.command || "",
41120
41150
  explanation: data.explanation,
41121
41151
  approvalType,
@@ -41128,8 +41158,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
41128
41158
  if ("approvalRequestId" in data && data.approvalRequestId) {
41129
41159
  const existingStatus = approvalStatuses[data.approvalRequestId];
41130
41160
  const status = existingStatus || (data.approved ? "approved" : "rejected");
41131
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1057 => _1057.get, 'call', _1058 => _1058(data.approvalRequestId)]);
41132
- if (_optionalChain([escalatedData, 'optionalAccess', _1059 => _1059.toolCalls]) && escalatedData.toolCalls.length > 0) {
41161
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1061 => _1061.get, 'call', _1062 => _1062(data.approvalRequestId)]);
41162
+ if (_optionalChain([escalatedData, 'optionalAccess', _1063 => _1063.toolCalls]) && escalatedData.toolCalls.length > 0) {
41133
41163
  if (batchApprovalsEnabled) {
41134
41164
  accumulator.addApprovalBatch(
41135
41165
  data.approvalRequestId,
@@ -41149,7 +41179,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
41149
41179
  );
41150
41180
  }
41151
41181
  }
41152
- _optionalChain([escalatedApprovals, 'optionalAccess', _1060 => _1060.delete, 'call', _1061 => _1061(data.approvalRequestId)]);
41182
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1064 => _1064.delete, 'call', _1065 => _1065(data.approvalRequestId)]);
41153
41183
  break;
41154
41184
  }
41155
41185
  if (escalatedData) {
@@ -41158,7 +41188,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
41158
41188
  explanation: escalatedData.explanation,
41159
41189
  approvalType: escalatedData.approvalType
41160
41190
  });
41161
- _optionalChain([escalatedApprovals, 'optionalAccess', _1062 => _1062.delete, 'call', _1063 => _1063(data.approvalRequestId)]);
41191
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1066 => _1066.delete, 'call', _1067 => _1067(data.approvalRequestId)]);
41162
41192
  }
41163
41193
  const before = accumulator.getSegments();
41164
41194
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status);
@@ -41174,9 +41204,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
41174
41204
  case MESSAGE_TYPE.ERROR:
41175
41205
  if ("error" in data) {
41176
41206
  let message2;
41177
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1064 => _1064.details])) {
41207
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1068 => _1068.details])) {
41178
41208
  try {
41179
- message2 = _optionalChain([JSON, 'access', _1065 => _1065.parse, 'call', _1066 => _1066(data.details), 'optionalAccess', _1067 => _1067.error, 'optionalAccess', _1068 => _1068.message]);
41209
+ message2 = _optionalChain([JSON, 'access', _1069 => _1069.parse, 'call', _1070 => _1070(data.details), 'optionalAccess', _1071 => _1071.error, 'optionalAccess', _1072 => _1072.message]);
41180
41210
  } catch (e50) {
41181
41211
  message2 = data.details;
41182
41212
  }
@@ -41259,10 +41289,10 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
41259
41289
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
41260
41290
  return;
41261
41291
  }
41262
- const isUserMessage = _optionalChain([msg, 'access', _1069 => _1069.owner, 'optionalAccess', _1070 => _1070.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1071 => _1071.owner, 'optionalAccess', _1072 => _1072.type]) === OWNER_TYPE.ADMIN;
41292
+ const isUserMessage = _optionalChain([msg, 'access', _1073 => _1073.owner, 'optionalAccess', _1074 => _1074.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1075 => _1075.owner, 'optionalAccess', _1076 => _1076.type]) === OWNER_TYPE.ADMIN;
41263
41293
  if (isUserMessage) {
41264
41294
  flushAssistantMessage();
41265
- const userAuthorType = _optionalChain([msg, 'access', _1073 => _1073.owner, 'optionalAccess', _1074 => _1074.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
41295
+ const userAuthorType = _optionalChain([msg, 'access', _1077 => _1077.owner, 'optionalAccess', _1078 => _1078.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
41266
41296
  messageDataArray.forEach((data) => {
41267
41297
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
41268
41298
  processedMessages.push({
@@ -41287,7 +41317,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
41287
41317
  });
41288
41318
  const nextMsg = messages[index + 1];
41289
41319
  const isLastMessage = index === messages.length - 1;
41290
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1075 => _1075.owner, 'optionalAccess', _1076 => _1076.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1077 => _1077.owner, 'optionalAccess', _1078 => _1078.type]) === OWNER_TYPE.ADMIN);
41320
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1079 => _1079.owner, 'optionalAccess', _1080 => _1080.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1081 => _1081.owner, 'optionalAccess', _1082 => _1082.type]) === OWNER_TYPE.ADMIN);
41291
41321
  if (isLastMessage || nextIsFromUser) {
41292
41322
  flushAssistantMessage();
41293
41323
  }
@@ -41625,7 +41655,7 @@ function useNatsChatAdapter(config, options = {}) {
41625
41655
  }, [active, fetchDialogs, loadDialogsPage]);
41626
41656
  const sendMessage = _react.useCallback.call(void 0,
41627
41657
  async (text, sendOptions) => {
41628
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1079 => _1079.hidden]), () => ( false));
41658
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1083 => _1083.hidden]), () => ( false));
41629
41659
  setMessages((prev) => [
41630
41660
  ...prev,
41631
41661
  {
@@ -41789,11 +41819,11 @@ function useNatsChatAdapter(config, options = {}) {
41789
41819
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
41790
41820
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
41791
41821
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
41792
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1080 => _1080.provider]), () => ( modelProvider)), () => ( null)),
41793
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1081 => _1081.modelLabel]), () => ( modelLabel)), () => ( null)),
41794
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1082 => _1082.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1083 => _1083.contextWindowMaxTokens]))), () => ( null)),
41795
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1084 => _1084.inputTokensSize]), () => ( null)),
41796
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1085 => _1085.outputTokensSize]), () => ( null)),
41822
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1084 => _1084.provider]), () => ( modelProvider)), () => ( null)),
41823
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1085 => _1085.modelLabel]), () => ( modelLabel)), () => ( null)),
41824
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1086 => _1086.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1087 => _1087.contextWindowMaxTokens]))), () => ( null)),
41825
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1088 => _1088.inputTokensSize]), () => ( null)),
41826
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1089 => _1089.outputTokensSize]), () => ( null)),
41797
41827
  currentCacheHitRatePct: null,
41798
41828
  currentUsageBreakdown: null,
41799
41829
  // Dialog management
@@ -42041,7 +42071,7 @@ function extractIncompleteMessageState(lastMessage) {
42041
42071
  break;
42042
42072
  case "approval_batch": {
42043
42073
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
42044
- (c) => _optionalChain([segment, 'access', _1086 => _1086.data, 'access', _1087 => _1087.executions, 'optionalAccess', _1088 => _1088[c.toolExecutionRequestId], 'optionalAccess', _1089 => _1089.status]) === "done"
42074
+ (c) => _optionalChain([segment, 'access', _1090 => _1090.data, 'access', _1091 => _1091.executions, 'optionalAccess', _1092 => _1092[c.toolExecutionRequestId], 'optionalAccess', _1093 => _1093.status]) === "done"
42045
42075
  );
42046
42076
  if (segment.status !== "rejected" && !allDone) {
42047
42077
  hasIncompleteState = true;
@@ -42249,7 +42279,7 @@ function useChatDialogManager({
42249
42279
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
42250
42280
  if (restoreTarget) {
42251
42281
  try {
42252
- await _optionalChain([unarchiveDialog, 'optionalCall', _1090 => _1090(restoreTarget.id)]);
42282
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1094 => _1094(restoreTarget.id)]);
42253
42283
  } catch (err) {
42254
42284
  console.error("[useChatDialogManager] unarchive failed:", err);
42255
42285
  return;
@@ -42648,7 +42678,7 @@ function EmbeddableChatInner({
42648
42678
  }),
42649
42679
  [commandsUrl]
42650
42680
  );
42651
- const userName = _optionalChain([identityUser, 'optionalAccess', _1091 => _1091.firstName, 'optionalAccess', _1092 => _1092.trim, 'call', _1093 => _1093()]) || _optionalChain([identityUser, 'optionalAccess', _1094 => _1094.name, 'optionalAccess', _1095 => _1095.split, 'call', _1096 => _1096(" "), 'access', _1097 => _1097[0], 'optionalAccess', _1098 => _1098.trim, 'call', _1099 => _1099()]) || void 0;
42681
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1095 => _1095.firstName, 'optionalAccess', _1096 => _1096.trim, 'call', _1097 => _1097()]) || _optionalChain([identityUser, 'optionalAccess', _1098 => _1098.name, 'optionalAccess', _1099 => _1099.split, 'call', _1100 => _1100(" "), 'access', _1101 => _1101[0], 'optionalAccess', _1102 => _1102.trim, 'call', _1103 => _1103()]) || void 0;
42652
42682
  const effectiveModes = _react.useMemo.call(void 0, () => {
42653
42683
  if (modes) return modes;
42654
42684
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -42657,17 +42687,17 @@ function EmbeddableChatInner({
42657
42687
  const mingoCaps = _react.useMemo.call(void 0, () => {
42658
42688
  if (mingoState) {
42659
42689
  return {
42660
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1100 => _1100.canRename]), () => ( false)),
42661
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1101 => _1101.canArchive]), () => ( false)),
42662
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1102 => _1102.fetchArchivedDialogs]),
42663
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1103 => _1103.unarchiveDialog])
42690
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1104 => _1104.canRename]), () => ( false)),
42691
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1105 => _1105.canArchive]), () => ( false)),
42692
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1106 => _1106.fetchArchivedDialogs]),
42693
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1107 => _1107.unarchiveDialog])
42664
42694
  };
42665
42695
  }
42666
42696
  return {
42667
- canRename: !!_optionalChain([effectiveModes, 'access', _1104 => _1104.mingo, 'optionalAccess', _1105 => _1105.renameDialog]),
42668
- canArchive: !!_optionalChain([effectiveModes, 'access', _1106 => _1106.mingo, 'optionalAccess', _1107 => _1107.archiveDialog]),
42669
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1108 => _1108.mingo, 'optionalAccess', _1109 => _1109.fetchArchivedDialogs]),
42670
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1110 => _1110.mingo, 'optionalAccess', _1111 => _1111.unarchiveDialog])
42697
+ canRename: !!_optionalChain([effectiveModes, 'access', _1108 => _1108.mingo, 'optionalAccess', _1109 => _1109.renameDialog]),
42698
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1110 => _1110.mingo, 'optionalAccess', _1111 => _1111.archiveDialog]),
42699
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1112 => _1112.mingo, 'optionalAccess', _1113 => _1113.fetchArchivedDialogs]),
42700
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1114 => _1114.mingo, 'optionalAccess', _1115 => _1115.unarchiveDialog])
42671
42701
  };
42672
42702
  }, [mingoState, mingoDialogCapabilities, effectiveModes]);
42673
42703
  const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
@@ -42679,7 +42709,7 @@ function EmbeddableChatInner({
42679
42709
  if (controlledActiveMode === void 0) {
42680
42710
  setUncontrolledActiveMode(next);
42681
42711
  }
42682
- _optionalChain([onActiveModeChange, 'optionalCall', _1112 => _1112(next)]);
42712
+ _optionalChain([onActiveModeChange, 'optionalCall', _1116 => _1116(next)]);
42683
42713
  },
42684
42714
  [controlledActiveMode, onActiveModeChange]
42685
42715
  );
@@ -42886,9 +42916,9 @@ function EmbeddableChatInner({
42886
42916
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
42887
42917
  const lastSources = _react.useMemo.call(void 0, () => {
42888
42918
  if (chatLoading) return void 0;
42889
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1113 => _1113.sources]);
42919
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1117 => _1117.sources]);
42890
42920
  if (!sources || sources.length === 0) return void 0;
42891
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1114 => _1114.content]) || "";
42921
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1118 => _1118.content]) || "";
42892
42922
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
42893
42923
  (m) => parseInt(m[1], 10)
42894
42924
  );
@@ -42935,7 +42965,7 @@ function EmbeddableChatInner({
42935
42965
  ChatPanelHeader,
42936
42966
  {
42937
42967
  showBack: hasConversation || guideCanReturnToMingo,
42938
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1115 => _1115.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
42968
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1119 => _1119.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
42939
42969
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
42940
42970
  isArchivedView: isViewingArchived,
42941
42971
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -43040,10 +43070,10 @@ function EmbeddableChatInner({
43040
43070
  subtitle: _nullishCoalesce(emptyStateGreeting, () => ( void 0)),
43041
43071
  ...guideWelcome,
43042
43072
  onQuickAction: (action) => {
43043
- _optionalChain([chatInputRef, 'access', _1116 => _1116.current, 'optionalAccess', _1117 => _1117.setValue, 'call', _1118 => _1118(
43073
+ _optionalChain([chatInputRef, 'access', _1120 => _1120.current, 'optionalAccess', _1121 => _1121.setValue, 'call', _1122 => _1122(
43044
43074
  _nullishCoalesce(action.prompt, () => ( action.label))
43045
43075
  )]);
43046
- _optionalChain([chatInputRef, 'access', _1119 => _1119.current, 'optionalAccess', _1120 => _1120.focus, 'call', _1121 => _1121()]);
43076
+ _optionalChain([chatInputRef, 'access', _1123 => _1123.current, 'optionalAccess', _1124 => _1124.focus, 'call', _1125 => _1125()]);
43047
43077
  },
43048
43078
  children: (chipCommands.length > 0 || !commandsLoaded) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-md border border-ods-border", children: [
43049
43079
  !commandsLoaded && chipCommands.length === 0 && SKELETON_ROW_VARIANTS.map((variant, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -43990,5 +44020,12 @@ function EmbeddableChatInner({
43990
44020
 
43991
44021
 
43992
44022
 
43993
- exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; 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.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.HEX_PATTERN = HEX_PATTERN; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.getAppType = getAppType; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.embedAuthedFetch = embedAuthedFetch; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.PageHeading = PageHeading; exports.EntityImage = EntityImage; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.hexToRgb = hexToRgb2; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.scrollElementIntoView = scrollElementIntoView; exports.buildListUrl = buildListUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderButton = HeaderButton; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
43994
- //# sourceMappingURL=chunk-5VU66BD2.cjs.map
44023
+
44024
+
44025
+
44026
+
44027
+
44028
+
44029
+
44030
+ exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; 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.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.HEX_PATTERN = HEX_PATTERN; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.getAppType = getAppType; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.embedAuthedFetch = embedAuthedFetch; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.PageHeading = PageHeading; exports.EntityImage = EntityImage; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.hexToRgb = hexToRgb2; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.scrollElementIntoView = scrollElementIntoView; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderButton = HeaderButton; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
44031
+ //# sourceMappingURL=chunk-EFT34DLB.cjs.map