@flamingo-stack/openframe-frontend-core 0.0.534 → 0.0.535-1763.4621.1

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 (127) hide show
  1. package/dist/{chunk-NCUKKJRG.cjs → chunk-2P4J2YLI.cjs} +98 -98
  2. package/dist/{chunk-NCUKKJRG.cjs.map → chunk-2P4J2YLI.cjs.map} +1 -1
  3. package/dist/{chunk-GS4HJA2G.js → chunk-4A736Z6S.js} +74 -20
  4. package/dist/chunk-4A736Z6S.js.map +1 -0
  5. package/dist/{chunk-O6VJZX2N.js → chunk-4DTUUM5V.js} +95 -58
  6. package/dist/chunk-4DTUUM5V.js.map +1 -0
  7. package/dist/{chunk-UWB33C6R.cjs → chunk-4HQFV4PK.cjs} +14 -14
  8. package/dist/{chunk-UWB33C6R.cjs.map → chunk-4HQFV4PK.cjs.map} +1 -1
  9. package/dist/{chunk-GYONSC3U.cjs → chunk-4QYUNDS3.cjs} +3 -3
  10. package/dist/{chunk-GYONSC3U.cjs.map → chunk-4QYUNDS3.cjs.map} +1 -1
  11. package/dist/{chunk-M5ODB6RQ.cjs → chunk-5OLF6WXF.cjs} +40 -40
  12. package/dist/{chunk-M5ODB6RQ.cjs.map → chunk-5OLF6WXF.cjs.map} +1 -1
  13. package/dist/{chunk-SXLEPNY2.cjs → chunk-5RJUHUCI.cjs} +106 -52
  14. package/dist/chunk-5RJUHUCI.cjs.map +1 -0
  15. package/dist/{chunk-RHKH4YUY.cjs → chunk-7MHYRBBQ.cjs} +5 -5
  16. package/dist/{chunk-RHKH4YUY.cjs.map → chunk-7MHYRBBQ.cjs.map} +1 -1
  17. package/dist/{chunk-LYRGM25P.cjs → chunk-E3YB55RR.cjs} +223 -186
  18. package/dist/chunk-E3YB55RR.cjs.map +1 -0
  19. package/dist/{chunk-W4MXOBEW.js → chunk-EHPQKXXW.js} +3 -3
  20. package/dist/{chunk-LBZEPB4Y.cjs → chunk-GV4FDDFV.cjs} +18 -18
  21. package/dist/{chunk-LBZEPB4Y.cjs.map → chunk-GV4FDDFV.cjs.map} +1 -1
  22. package/dist/{chunk-D62VYSTL.js → chunk-JVO5CYMK.js} +8 -8
  23. package/dist/{chunk-BSE2UT6L.js → chunk-K6566PEB.js} +3 -3
  24. package/dist/{chunk-WBYRBTAS.js → chunk-KLFGP6PR.js} +2 -2
  25. package/dist/{chunk-KZ6PWFHK.js → chunk-LIQJAC6Z.js} +2 -2
  26. package/dist/{chunk-MTCU5MQN.js → chunk-LIX5OUHH.js} +2 -2
  27. package/dist/{chunk-RCBRCZUF.js → chunk-LQPHB2YF.js} +2 -2
  28. package/dist/{chunk-BUVD2OAI.js → chunk-MZVFZMQ6.js} +6 -6
  29. package/dist/{chunk-ZLLXYE2G.js → chunk-N3AEJTCK.js} +5 -5
  30. package/dist/{chunk-ONIYUMTO.js → chunk-NB6BP6JB.js} +3 -3
  31. package/dist/{chunk-ZKQXE2P4.cjs → chunk-P65EZEBW.cjs} +12 -12
  32. package/dist/{chunk-ZKQXE2P4.cjs.map → chunk-P65EZEBW.cjs.map} +1 -1
  33. package/dist/{chunk-VYOGAQLM.js → chunk-PLGITXT7.js} +2 -2
  34. package/dist/{chunk-YW2ZU7LC.cjs → chunk-PSBL3S2B.cjs} +7 -7
  35. package/dist/{chunk-YW2ZU7LC.cjs.map → chunk-PSBL3S2B.cjs.map} +1 -1
  36. package/dist/{chunk-H4W4LENJ.js → chunk-QUVIT4JP.js} +6 -6
  37. package/dist/{chunk-2YJ2CVRC.cjs → chunk-RO67OOKJ.cjs} +40 -40
  38. package/dist/{chunk-2YJ2CVRC.cjs.map → chunk-RO67OOKJ.cjs.map} +1 -1
  39. package/dist/{chunk-67MWXMNT.cjs → chunk-TS2EHMEX.cjs} +29 -29
  40. package/dist/{chunk-67MWXMNT.cjs.map → chunk-TS2EHMEX.cjs.map} +1 -1
  41. package/dist/{chunk-UMDGRL6A.cjs → chunk-U2Q7GEX2.cjs} +32 -32
  42. package/dist/{chunk-UMDGRL6A.cjs.map → chunk-U2Q7GEX2.cjs.map} +1 -1
  43. package/dist/{chunk-2ALT6CTY.js → chunk-VPDTDKO5.js} +2 -2
  44. package/dist/{chunk-MLILEBJU.cjs → chunk-Y55XQFJK.cjs} +75 -75
  45. package/dist/{chunk-MLILEBJU.cjs.map → chunk-Y55XQFJK.cjs.map} +1 -1
  46. package/dist/{chunk-POFCTXNH.js → chunk-Y72MXG5N.js} +4 -4
  47. package/dist/{chunk-JELZAWSM.cjs → chunk-ZKKEKG73.cjs} +3 -3
  48. package/dist/{chunk-JELZAWSM.cjs.map → chunk-ZKKEKG73.cjs.map} +1 -1
  49. package/dist/{chunk-EBSZWSC5.cjs → chunk-ZR5CJTNR.cjs} +4 -4
  50. package/dist/{chunk-EBSZWSC5.cjs.map → chunk-ZR5CJTNR.cjs.map} +1 -1
  51. package/dist/components/case-studies/index.cjs +9 -9
  52. package/dist/components/case-studies/index.js +3 -3
  53. package/dist/components/chat/chat-input.d.ts.map +1 -1
  54. package/dist/components/chat/index.cjs +3 -3
  55. package/dist/components/chat/index.js +2 -2
  56. package/dist/components/contact/index.cjs +4 -4
  57. package/dist/components/contact/index.js +3 -3
  58. package/dist/components/docs/index.cjs +6 -6
  59. package/dist/components/docs/index.js +5 -5
  60. package/dist/components/embeds/index.cjs +4 -4
  61. package/dist/components/embeds/index.js +3 -3
  62. package/dist/components/faq/index.cjs +5 -5
  63. package/dist/components/faq/index.js +4 -4
  64. package/dist/components/features/index.cjs +3 -3
  65. package/dist/components/features/index.js +2 -2
  66. package/dist/components/help-center-pages/index.cjs +24 -24
  67. package/dist/components/help-center-pages/index.js +15 -15
  68. package/dist/components/index.cjs +138 -138
  69. package/dist/components/index.js +13 -13
  70. package/dist/components/meeting-scheduler/index.cjs +40 -40
  71. package/dist/components/meeting-scheduler/index.js +4 -4
  72. package/dist/components/navigation/index.cjs +3 -3
  73. package/dist/components/navigation/index.js +2 -2
  74. package/dist/components/onboarding-guides/index.cjs +7 -7
  75. package/dist/components/onboarding-guides/index.js +6 -6
  76. package/dist/components/popover.d.ts.map +1 -1
  77. package/dist/components/related-content/index.cjs +5 -5
  78. package/dist/components/related-content/index.js +4 -4
  79. package/dist/components/tickets/index.cjs +7 -7
  80. package/dist/components/tickets/index.js +6 -6
  81. package/dist/components/ui/autocomplete.d.ts.map +1 -1
  82. package/dist/components/ui/file-upload.d.ts.map +1 -1
  83. package/dist/components/ui/index.cjs +3 -3
  84. package/dist/components/ui/index.js +2 -2
  85. package/dist/components/ui/search-input.d.ts.map +1 -1
  86. package/dist/components/ui/searchable-select.d.ts.map +1 -1
  87. package/dist/components/ui/tag-select-dropdown.d.ts.map +1 -1
  88. package/dist/components/ui/tags-manager.d.ts.map +1 -1
  89. package/dist/hooks/index.cjs +4 -2
  90. package/dist/hooks/index.cjs.map +1 -1
  91. package/dist/hooks/index.js +3 -1
  92. package/dist/hooks/ui/index.d.ts +1 -0
  93. package/dist/hooks/ui/index.d.ts.map +1 -1
  94. package/dist/hooks/ui/use-keyboard-collision-padding.d.ts +2 -0
  95. package/dist/hooks/ui/use-keyboard-collision-padding.d.ts.map +1 -0
  96. package/dist/index.cjs +5 -3
  97. package/dist/index.cjs.map +1 -1
  98. package/dist/index.js +4 -2
  99. package/package.json +1 -1
  100. package/src/components/chat/chat-input.tsx +84 -32
  101. package/src/components/popover.tsx +22 -14
  102. package/src/components/ui/autocomplete.tsx +9 -2
  103. package/src/components/ui/file-upload.tsx +5 -1
  104. package/src/components/ui/search-input.tsx +9 -2
  105. package/src/components/ui/searchable-select.tsx +9 -2
  106. package/src/components/ui/tag-select-dropdown.tsx +8 -2
  107. package/src/components/ui/tags-manager.tsx +9 -2
  108. package/src/hooks/ui/index.ts +1 -0
  109. package/src/hooks/ui/use-keyboard-collision-padding.ts +101 -0
  110. package/dist/chunk-GS4HJA2G.js.map +0 -1
  111. package/dist/chunk-LYRGM25P.cjs.map +0 -1
  112. package/dist/chunk-O6VJZX2N.js.map +0 -1
  113. package/dist/chunk-SXLEPNY2.cjs.map +0 -1
  114. /package/dist/{chunk-W4MXOBEW.js.map → chunk-EHPQKXXW.js.map} +0 -0
  115. /package/dist/{chunk-D62VYSTL.js.map → chunk-JVO5CYMK.js.map} +0 -0
  116. /package/dist/{chunk-BSE2UT6L.js.map → chunk-K6566PEB.js.map} +0 -0
  117. /package/dist/{chunk-WBYRBTAS.js.map → chunk-KLFGP6PR.js.map} +0 -0
  118. /package/dist/{chunk-KZ6PWFHK.js.map → chunk-LIQJAC6Z.js.map} +0 -0
  119. /package/dist/{chunk-MTCU5MQN.js.map → chunk-LIX5OUHH.js.map} +0 -0
  120. /package/dist/{chunk-RCBRCZUF.js.map → chunk-LQPHB2YF.js.map} +0 -0
  121. /package/dist/{chunk-BUVD2OAI.js.map → chunk-MZVFZMQ6.js.map} +0 -0
  122. /package/dist/{chunk-ZLLXYE2G.js.map → chunk-N3AEJTCK.js.map} +0 -0
  123. /package/dist/{chunk-ONIYUMTO.js.map → chunk-NB6BP6JB.js.map} +0 -0
  124. /package/dist/{chunk-VYOGAQLM.js.map → chunk-PLGITXT7.js.map} +0 -0
  125. /package/dist/{chunk-H4W4LENJ.js.map → chunk-QUVIT4JP.js.map} +0 -0
  126. /package/dist/{chunk-2ALT6CTY.js.map → chunk-VPDTDKO5.js.map} +0 -0
  127. /package/dist/{chunk-POFCTXNH.js.map → chunk-Y72MXG5N.js.map} +0 -0
@@ -51,7 +51,8 @@ var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
51
51
 
52
52
 
53
53
 
54
- var _chunkSXLEPNY2cjs = require('./chunk-SXLEPNY2.cjs');
54
+
55
+ var _chunk5RJUHUCIcjs = require('./chunk-5RJUHUCI.cjs');
55
56
 
56
57
 
57
58
 
@@ -699,7 +700,7 @@ var disabledTagClasses = [
699
700
  ];
700
701
  function TagLabel({ label, labelClassName }) {
701
702
  const isString = typeof label === "string";
702
- const { ref, isTruncated } = _chunkSXLEPNY2cjs.useIsTruncated.call(void 0, isString ? label : null);
703
+ const { ref, isTruncated } = _chunk5RJUHUCIcjs.useIsTruncated.call(void 0, isString ? label : null);
703
704
  if (!isString) {
704
705
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "truncate", labelClassName), children: label });
705
706
  }
@@ -1011,7 +1012,7 @@ function ToolCallRow({ call, expanded, onToggle, batchStatus, execution, showExe
1011
1012
  onClick: onToggle,
1012
1013
  className: "flex gap-[var(--spacing-system-xsf)] items-start w-full p-[var(--spacing-system-sf)] cursor-pointer text-left",
1013
1014
  children: [
1014
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSXLEPNY2cjs.ToolIcon, { toolType, size: 16 }) }),
1015
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RJUHUCIcjs.ToolIcon, { toolType, size: 16 }) }),
1015
1016
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1016
1017
  "div",
1017
1018
  {
@@ -1852,7 +1853,7 @@ function findInlineCodeRanges(source) {
1852
1853
  while (pos <= len) {
1853
1854
  let end = source.indexOf("\n", pos);
1854
1855
  if (end === -1) end = len;
1855
- const blank = _chunkSXLEPNY2cjs.isBlankLine.call(void 0, source.slice(pos, end));
1856
+ const blank = _chunk5RJUHUCIcjs.isBlankLine.call(void 0, source.slice(pos, end));
1856
1857
  if (blank && segStart !== -1) break;
1857
1858
  if (!blank) {
1858
1859
  if (segStart === -1) segStart = pos;
@@ -1934,7 +1935,7 @@ function toMaskLines(source) {
1934
1935
  return out;
1935
1936
  }
1936
1937
  function blankFencedRegions(masked, lines) {
1937
- const fences = _chunkSXLEPNY2cjs.createFenceTracker.call(void 0, );
1938
+ const fences = _chunk5RJUHUCIcjs.createFenceTracker.call(void 0, );
1938
1939
  const ranges = [];
1939
1940
  let openStart = null;
1940
1941
  let lastEnd = 0;
@@ -1973,7 +1974,7 @@ function blankIndentedCode(masked, lines) {
1973
1974
  const listContentCols = [];
1974
1975
  const ranges = [];
1975
1976
  for (const line of lines) {
1976
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, line.content)) continue;
1977
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, line.content)) continue;
1977
1978
  const indent = leadingIndent(line.content);
1978
1979
  const top = listContentCols.length ? listContentCols[listContentCols.length - 1] : 0;
1979
1980
  if (indent >= top + 4) {
@@ -2064,7 +2065,7 @@ function contPrefixLen(c) {
2064
2065
  function findLabelClose(lines, i, from) {
2065
2066
  for (let j = i; j < lines.length; j++) {
2066
2067
  const c = stripCr(lines[j].content);
2067
- if (j > i && _chunkSXLEPNY2cjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
2068
+ if (j > i && _chunk5RJUHUCIcjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
2068
2069
  for (let q = j === i ? from : contPrefixLen(c); q < c.length; q = skipEscaped(c, q)) {
2069
2070
  if (c[q] === "[") return { stoppedAt: j };
2070
2071
  if (c[q] !== "]") continue;
@@ -2082,7 +2083,7 @@ function blankLinkDefinitions(masked, lines) {
2082
2083
  let k = from;
2083
2084
  for (; k < lines.length; k++) {
2084
2085
  const c = stripCr(lines[k].content);
2085
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, c)) break;
2086
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, c)) break;
2086
2087
  blankLine(lines[k]);
2087
2088
  if (stop(c)) {
2088
2089
  k++;
@@ -2125,7 +2126,7 @@ function blankLinkDefinitions(masked, lines) {
2125
2126
  const k = j + 1;
2126
2127
  if (k >= lines.length) break;
2127
2128
  const c = stripCr(lines[k].content);
2128
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, c)) break;
2129
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, c)) break;
2129
2130
  const at = contPrefixLen(c);
2130
2131
  const next = tail.k === "needDest" ? parseDefTail(c, at) : parseTitleTail(c, skipSpaces(c, at));
2131
2132
  if (next.k === "decline") break;
@@ -2195,7 +2196,7 @@ function blankUnreferencedFootnotes(masked, lines, folded) {
2195
2196
  let sawBlank = false;
2196
2197
  for (let k = i + 1; k < lines.length; k++) {
2197
2198
  const c = text(lines[k]);
2198
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, c)) {
2199
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, c)) {
2199
2200
  sawBlank = true;
2200
2201
  continue;
2201
2202
  }
@@ -2298,7 +2299,7 @@ function paragraphEnd(s, from) {
2298
2299
  lineStart += 1;
2299
2300
  const next = s.indexOf("\n", lineStart);
2300
2301
  const line = s.slice(lineStart, next === -1 ? s.length : next);
2301
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, line)) return lineStart;
2302
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, line)) return lineStart;
2302
2303
  if (next === -1) break;
2303
2304
  lineStart = next;
2304
2305
  }
@@ -2452,7 +2453,7 @@ function blankListItemCode(masked, lines, depth = 0) {
2452
2453
  run = [];
2453
2454
  };
2454
2455
  for (const line of lines) {
2455
- if (_chunkSXLEPNY2cjs.isBlankLine.call(void 0, line.content)) {
2456
+ if (_chunk5RJUHUCIcjs.isBlankLine.call(void 0, line.content)) {
2456
2457
  if (run.length > 0) run.push({ ...line, content: "" });
2457
2458
  continue;
2458
2459
  }
@@ -2678,7 +2679,7 @@ function htmlBlockStartKind(line, inParagraph) {
2678
2679
  function computeHtmlBlockRanges(text) {
2679
2680
  if (text.indexOf("<") === -1) return [];
2680
2681
  const ranges = [];
2681
- const fences = _chunkSXLEPNY2cjs.createFenceTracker.call(void 0, );
2682
+ const fences = _chunk5RJUHUCIcjs.createFenceTracker.call(void 0, );
2682
2683
  let kind = null;
2683
2684
  let start = 0;
2684
2685
  let lastEnd = 0;
@@ -2693,9 +2694,9 @@ function computeHtmlBlockRanges(text) {
2693
2694
  const expanded = expandTabs(line);
2694
2695
  const norm = stripContainerPrefix(expanded, listContentCol);
2695
2696
  if (norm.openedListCol >= 0) listContentCol = norm.openedListCol;
2696
- else if (!_chunkSXLEPNY2cjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
2697
- const normBlank = _chunkSXLEPNY2cjs.isBlankLine.call(void 0, norm.text);
2698
- const blank = openPrefixLen > 0 ? _chunkSXLEPNY2cjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunkSXLEPNY2cjs.isBlankLine.call(void 0, line);
2697
+ else if (!_chunk5RJUHUCIcjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
2698
+ const normBlank = _chunk5RJUHUCIcjs.isBlankLine.call(void 0, norm.text);
2699
+ const blank = openPrefixLen > 0 ? _chunk5RJUHUCIcjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunk5RJUHUCIcjs.isBlankLine.call(void 0, line);
2699
2700
  if (kind !== null) {
2700
2701
  if (kind >= 6) {
2701
2702
  if (blank) {
@@ -2925,14 +2926,14 @@ function buildHeadingIdMap(content, sectionIds) {
2925
2926
  for (const section of sectionIds) {
2926
2927
  sectionIdMap.set(section.title, section.id);
2927
2928
  sectionIdMap.set(section.title.toLowerCase(), section.id);
2928
- sectionIdMap.set(_chunkSXLEPNY2cjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
2929
+ sectionIdMap.set(_chunk5RJUHUCIcjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
2929
2930
  }
2930
2931
  }
2931
- const dedupe = _chunkSXLEPNY2cjs.createHeadingIdDeduper.call(void 0, );
2932
+ const dedupe = _chunk5RJUHUCIcjs.createHeadingIdDeduper.call(void 0, );
2932
2933
  const map = /* @__PURE__ */ new Map();
2933
2934
  let sectionOrdinal = 0;
2934
2935
  let headingOrdinal = 0;
2935
- for (const { line, level, text: rawText } of _chunkSXLEPNY2cjs.scanHeadings.call(void 0, content)) {
2936
+ for (const { line, level, text: rawText } of _chunk5RJUHUCIcjs.scanHeadings.call(void 0, content)) {
2936
2937
  const text = stripInlineMarkdown(rawText).trim();
2937
2938
  headingOrdinal++;
2938
2939
  if (level <= EXTRACTOR_MAX_LEVEL) sectionOrdinal++;
@@ -2941,8 +2942,8 @@ function buildHeadingIdMap(content, sectionIds) {
2941
2942
  for (const variation of [
2942
2943
  text,
2943
2944
  text.toLowerCase(),
2944
- _chunkSXLEPNY2cjs.stripHeadingEmojis.call(void 0, text),
2945
- _chunkSXLEPNY2cjs.stripHeadingEmojis.call(void 0, text).toLowerCase()
2945
+ _chunk5RJUHUCIcjs.stripHeadingEmojis.call(void 0, text),
2946
+ _chunk5RJUHUCIcjs.stripHeadingEmojis.call(void 0, text).toLowerCase()
2946
2947
  ]) {
2947
2948
  const id = sectionIdMap.get(variation);
2948
2949
  if (id) {
@@ -2952,7 +2953,7 @@ function buildHeadingIdMap(content, sectionIds) {
2952
2953
  }
2953
2954
  }
2954
2955
  if (assigned === void 0) {
2955
- const baseId = _chunkSXLEPNY2cjs.slugifyHeadingText.call(void 0, text);
2956
+ const baseId = _chunk5RJUHUCIcjs.slugifyHeadingText.call(void 0, text);
2956
2957
  assigned = dedupe(
2957
2958
  baseId || (level <= EXTRACTOR_MAX_LEVEL ? `section-${sectionOrdinal}` : `heading-${headingOrdinal}`)
2958
2959
  );
@@ -3208,7 +3209,7 @@ var MermaidDiagram = ({ chart }) => {
3208
3209
  // src/components/ui/markdown/base-components.tsx
3209
3210
 
3210
3211
  var MarkdownContentImage = ({ src, alt }) => {
3211
- const resolvedSrc = _chunkSXLEPNY2cjs.useAuthedImageSrc.call(void 0, src);
3212
+ const resolvedSrc = _chunk5RJUHUCIcjs.useAuthedImageSrc.call(void 0, src);
3212
3213
  if (!resolvedSrc) return null;
3213
3214
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3214
3215
  _chunkXL4V2PYGcjs.next_image_default,
@@ -3278,7 +3279,7 @@ function buildBaseComponents({
3278
3279
  const mapped = useHeadingId(node);
3279
3280
  const taken = useAssignedHeadingIds();
3280
3281
  const explicit = typeof _optionalChain([node, 'optionalAccess', _40 => _40.properties, 'optionalAccess', _41 => _41.id]) === "string" && node.properties.id !== "" ? node.properties.id : void 0;
3281
- const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunkSXLEPNY2cjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
3282
+ const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunk5RJUHUCIcjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
3282
3283
  const EffectiveTag = Tag2 === "h1" && demoteMarkdownH1ToH2 ? "h2" : Tag2;
3283
3284
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EffectiveTag, { id: id || void 0, className: headingClassName, children });
3284
3285
  }
@@ -3347,10 +3348,10 @@ function buildBaseComponents({
3347
3348
  const isInPageAnchor = typeof href === "string" && href.startsWith("#") && href.length > 1;
3348
3349
  const handleAnchorClick = (e) => {
3349
3350
  if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0) return;
3350
- const target = _chunkSXLEPNY2cjs.getHashTargetElement.call(void 0, href.slice(1));
3351
+ const target = _chunk5RJUHUCIcjs.getHashTargetElement.call(void 0, href.slice(1));
3351
3352
  if (!_optionalChain([target, 'optionalAccess', _42 => _42.id])) return;
3352
3353
  e.preventDefault();
3353
- _chunkSXLEPNY2cjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunkSXLEPNY2cjs.HUB_HEADER_OFFSET_PX });
3354
+ _chunk5RJUHUCIcjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunk5RJUHUCIcjs.HUB_HEADER_OFFSET_PX });
3354
3355
  };
3355
3356
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3356
3357
  "a",
@@ -3436,7 +3437,7 @@ var HTML_BLOCK_START_RE = /^\s{0,7}<\/?[a-zA-Z]/;
3436
3437
  var HTML_LATCH_LINE_LIMIT = 200;
3437
3438
  function createScanState() {
3438
3439
  return {
3439
- fences: _chunkSXLEPNY2cjs.createFenceTracker.call(void 0, ),
3440
+ fences: _chunk5RJUHUCIcjs.createFenceTracker.call(void 0, ),
3440
3441
  htmlDepth: 0,
3441
3442
  pendingOpenTag: null,
3442
3443
  htmlLatchLines: 0
@@ -3497,7 +3498,7 @@ function splitStreamingBlocks(content) {
3497
3498
  const isListOrQuote = (line) => /^\s{0,3}(?:[-+*]\s|\d{1,9}[.)]\s|>)/.test(line);
3498
3499
  const firstNonBlank = (arr) => {
3499
3500
  for (const line of arr) {
3500
- if (!_chunkSXLEPNY2cjs.isBlankLine.call(void 0, line)) return line;
3501
+ if (!_chunk5RJUHUCIcjs.isBlankLine.call(void 0, line)) return line;
3501
3502
  }
3502
3503
  return void 0;
3503
3504
  };
@@ -3509,10 +3510,10 @@ function splitStreamingBlocks(content) {
3509
3510
  if (state.htmlDepth !== depthBefore || state.pendingOpenTag !== pendingBefore || htmlLatched(state))
3510
3511
  currentTouchedHtml = true;
3511
3512
  current.push(line);
3512
- const isBlank = _chunkSXLEPNY2cjs.isBlankLine.call(void 0, line);
3513
+ const isBlank = _chunk5RJUHUCIcjs.isBlankLine.call(void 0, line);
3513
3514
  if (!isBlank || state.fences.openChar() !== null || htmlBlocksCut(state)) continue;
3514
3515
  let j = i + 1;
3515
- while (j < lines.length && _chunkSXLEPNY2cjs.isBlankLine.call(void 0, lines[j])) j++;
3516
+ while (j < lines.length && _chunk5RJUHUCIcjs.isBlankLine.call(void 0, lines[j])) j++;
3516
3517
  if (j >= lines.length) continue;
3517
3518
  const next = lines[j];
3518
3519
  if (/^\s/.test(next)) continue;
@@ -3520,7 +3521,7 @@ function splitStreamingBlocks(content) {
3520
3521
  if (isListOrQuote(next) && unitOpener !== void 0 && isListOrQuote(unitOpener)) {
3521
3522
  continue;
3522
3523
  }
3523
- if (current.every(_chunkSXLEPNY2cjs.isBlankLine)) continue;
3524
+ if (current.every(_chunk5RJUHUCIcjs.isBlankLine)) continue;
3524
3525
  units.push(current);
3525
3526
  unitTouchedHtml.push(currentTouchedHtml);
3526
3527
  current = [];
@@ -4327,7 +4328,7 @@ function formatBioText(aboutHtml, fallback = "") {
4327
4328
 
4328
4329
  var SquareAvatar = React4.memo(React4.forwardRef(
4329
4330
  ({ className, src, alt, size: size2 = "md", sizePx, fallback, variant = "square", initialsClassName, style, ...props }, ref) => {
4330
- const resolvedSrc = _chunkSXLEPNY2cjs.useAuthedImageSrc.call(void 0, src);
4331
+ const resolvedSrc = _chunk5RJUHUCIcjs.useAuthedImageSrc.call(void 0, src);
4331
4332
  const sizeClasses2 = {
4332
4333
  // xs (24px): dense card meta rows — avatar stacks on delivery/
4333
4334
  // roadmap cards. Part of the shared scale so no caller ever
@@ -6530,6 +6531,7 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6530
6531
  // contenteditable div, not a <textarea>, so spreading them would warn.
6531
6532
  } = rest;
6532
6533
  const [value, setValue] = _react.useState.call(void 0, "");
6534
+ const [hasChips, setHasChips] = _react.useState.call(void 0, false);
6533
6535
  const [focused, setFocused] = _react.useState.call(void 0, false);
6534
6536
  const [isStopping, setIsStopping] = _react.useState.call(void 0, false);
6535
6537
  const [previewDismissed, setPreviewDismissed] = _react.useState.call(void 0, false);
@@ -6565,26 +6567,32 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6565
6567
  if (typeof caret === "number") placeCaretAtOffset(el, caret);
6566
6568
  else placeCaretAtEnd(el);
6567
6569
  }
6570
+ setHasChips(el.querySelector("[data-token]") !== null);
6568
6571
  }
6572
+ valueRef.current = next;
6569
6573
  setValue(next);
6570
6574
  }, []);
6571
6575
  const fire = _react.useCallback.call(void 0,
6572
6576
  (message2) => {
6573
6577
  const can = (message2.length > 0 || allowEmptySend) && !sending && !disabled;
6574
6578
  if (!can || !onSend) return;
6575
- const result = onSend(message2);
6576
- const done = () => {
6577
- metaRef.current = /* @__PURE__ */ new Map();
6578
- applyValue("");
6579
- shouldRefocusRef.current = true;
6580
- focusEditor();
6579
+ const sentMeta = metaRef.current;
6580
+ metaRef.current = /* @__PURE__ */ new Map();
6581
+ applyValue("");
6582
+ shouldRefocusRef.current = true;
6583
+ focusEditor();
6584
+ const restore = () => {
6585
+ if (valueRef.current.length > 0) return;
6586
+ metaRef.current = sentMeta;
6587
+ applyValue(message2);
6581
6588
  };
6589
+ const result = onSend(message2);
6582
6590
  if (result instanceof Promise) {
6583
6591
  void result.then((ok) => {
6584
- if (ok !== false) done();
6592
+ if (ok === false) restore();
6585
6593
  });
6586
- } else if (result !== false) {
6587
- done();
6594
+ } else if (result === false) {
6595
+ restore();
6588
6596
  }
6589
6597
  },
6590
6598
  [allowEmptySend, sending, disabled, onSend, focusEditor, applyValue]
@@ -6673,6 +6681,7 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6673
6681
  const syncFromDom = _react.useCallback.call(void 0, () => {
6674
6682
  const el = editorRef.current;
6675
6683
  if (!el) return;
6684
+ setHasChips(el.querySelector("[data-token]") !== null);
6676
6685
  setValue(serialize(el));
6677
6686
  }, []);
6678
6687
  const handleInput = _react.useCallback.call(void 0, () => {
@@ -6778,8 +6787,7 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6778
6787
  const hasContent2 = value.trim().length > 0 || allowEmptySend;
6779
6788
  const sendDisabled = sending || disabled || !hasContent2;
6780
6789
  const isEmpty = value.length === 0;
6781
- const isDisabled = sending || disabled;
6782
- const showPreview = !isDisabled && !!previewText && !previewDismissed;
6790
+ const showPreview = !sending && !disabled && !!previewText && !previewDismissed;
6783
6791
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6784
6792
  "div",
6785
6793
  {
@@ -6813,23 +6821,24 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6813
6821
  },
6814
6822
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
6815
6823
  // `items-center` keeps the empty single-line text AND a mention chip
6816
- // vertically centered the same way. `py-1.5` (6px) pairs with the
6817
- // editor's `leading-9` (36px) → a single line is exactly 48px
6818
- // (36 + 2*6). The 36px line box is just barely above the 32px chip
6819
- // (incl. its ~3.5px vertical-align overhead), so there's almost no
6820
- // slack for the chip to drift in → it reads as centered, and the row
6821
- // never overflows past 48px.
6824
+ // vertically centered the same way. With a chip in the box, `py-1.5`
6825
+ // (6px) pairs with the editor's `leading-9` (36px) → that row is
6826
+ // 36 + 2*6 = 48px. The 36px line box is just barely above the 32px
6827
+ // chip (incl. its ~3.5px vertical-align overhead), so there's almost
6828
+ // no slack for the chip to drift in → it reads as centered.
6829
+ // A chipless row is shorter than its content box and the `min-h-*`
6830
+ // here is what sets its height: 48px from `md` up, 44px below.
6822
6831
  "flex w-full items-center gap-2 px-3 py-1.5 min-h-11 md:min-h-12 cursor-text group transition-colors duration-200",
6823
6832
  !hideBorder && "rounded-[6px] border bg-ods-card border-ods-border",
6824
- !hideBorder && (focused ? "border-ods-accent" : !isDisabled && "hover:bg-ods-bg-hover hover:border-ods-border-hover"),
6825
- !hideBorder && isDisabled && "!cursor-not-allowed bg-ods-bg",
6833
+ !hideBorder && (focused ? "border-ods-accent" : !disabled && "hover:bg-ods-bg-hover hover:border-ods-border-hover"),
6834
+ !hideBorder && disabled && "!cursor-not-allowed bg-ods-bg",
6826
6835
  hideBorder && "bg-transparent"
6827
6836
  ),
6828
6837
  children: [
6829
6838
  startIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-6 shrink-0 items-center", children: startIcon }),
6830
6839
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex-1 min-w-0", children: [
6831
- isEmpty && !showPreview && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "pointer-events-none absolute left-0 top-0 select-none text-h4 !leading-9 text-ods-text-secondary", children: disabled ? "Connection lost. Waiting to reconnect..." : placeholder }),
6832
- showPreview && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-none absolute inset-x-0 top-0 m-0 select-none truncate text-h4 !leading-9 text-ods-text-secondary", children: previewText }),
6840
+ isEmpty && !showPreview && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "pointer-events-none absolute left-0 top-0 select-none text-h4 text-ods-text-secondary", children: disabled ? "Connection lost. Waiting to reconnect..." : placeholder }),
6841
+ showPreview && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "pointer-events-none absolute inset-x-0 top-0 m-0 select-none truncate text-h4 text-ods-text-secondary", hasChips && "!leading-9"), children: previewText }),
6833
6842
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6834
6843
  "div",
6835
6844
  {
@@ -6838,7 +6847,7 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6838
6847
  role: "textbox",
6839
6848
  "aria-multiline": "true",
6840
6849
  "aria-label": typeof placeholder === "string" ? placeholder : "Message",
6841
- contentEditable: !isDisabled,
6850
+ contentEditable: !disabled,
6842
6851
  suppressContentEditableWarning: true,
6843
6852
  spellCheck: true,
6844
6853
  onInput: handleInput,
@@ -6861,17 +6870,25 @@ var ChatInput = _react.forwardRef.call(void 0, (allProps, ref) => {
6861
6870
  // see the preview comment above) and is only made transparent;
6862
6871
  // the absolutely-positioned single-line preview paints over it.
6863
6872
  showPreview && "opacity-0",
6864
- // `leading-9` (36px) sits just above the 32px chip's line-box need
6865
- // (~35.5px incl. vertical-align overhead): the LINE drives row
6866
- // height (deterministic 48px, no overflow) AND the near-zero slack
6867
- // keeps the chip centered. ~4px gap between wrapped chip rows.
6868
- // `min-h-9` pins that single-line box even when EMPTY: a non-editable
6869
- // (`contentEditable=false`, i.e. disabled/sending) empty div would
6870
- // otherwise collapse to 0px, and `items-center` would re-center the
6871
- // shorter wrapper in the row — dropping the `top-0` placeholder down.
6872
- "min-h-9 text-h4 text-ods-text-primary !leading-9",
6873
+ // WITH chips, `leading-9` (36px) sits just above the 32px chip's
6874
+ // line-box need (~35.5px incl. vertical-align overhead): the LINE
6875
+ // drives row height (deterministic 48px, no overflow) AND the
6876
+ // near-zero slack keeps the chip centered against the `align-top`
6877
+ // `h-9` wrapper `buildChipEl` gives it. ~4px gap between wrapped
6878
+ // chip rows.
6879
+ // WITHOUT chips there is nothing tall to center, and forcing the
6880
+ // same 36px box on 14px phone text (`text-h4`) put a blank line's
6881
+ // worth of air between every wrapped row — so plain drafts keep
6882
+ // `text-h4`'s own responsive line-height (20px / 24px at md).
6883
+ // `min-h-*` pins the single-line box even when EMPTY: a
6884
+ // non-editable (`contentEditable=false`, i.e. `disabled`) empty div
6885
+ // would otherwise collapse to 0px, and `items-center` would
6886
+ // re-center the shorter wrapper in the row — dropping the `top-0`
6887
+ // placeholder down.
6888
+ "text-h4 text-ods-text-primary",
6889
+ hasChips ? "min-h-9 !leading-9" : "min-h-[var(--font-line-space-h4-body)]",
6873
6890
  "scrollbar-thin scrollbar-track-transparent scrollbar-thumb-ods-border/30 hover:scrollbar-thumb-ods-text-secondary/30",
6874
- isDisabled && "cursor-not-allowed"
6891
+ disabled && "cursor-not-allowed"
6875
6892
  )
6876
6893
  }
6877
6894
  )
@@ -7076,7 +7093,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
7076
7093
  return null;
7077
7094
  };
7078
7095
  const headerContent = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
7079
- !isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSXLEPNY2cjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
7096
+ !isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RJUHUCIcjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
7080
7097
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7081
7098
  "div",
7082
7099
  {
@@ -9135,7 +9152,7 @@ function CloneCopy({
9135
9152
  style,
9136
9153
  children
9137
9154
  }) {
9138
- const ref = _chunkSXLEPNY2cjs.useSuppressCloneFocus.call(void 0, true);
9155
+ const ref = _chunk5RJUHUCIcjs.useSuppressCloneFocus.call(void 0, true);
9139
9156
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, "aria-hidden": true, "data-marquee-copy": "clone", className, style, children });
9140
9157
  }
9141
9158
  function MarqueeWall({
@@ -9162,7 +9179,7 @@ function MarqueeWall({
9162
9179
  const containerRef = React15.useRef(null);
9163
9180
  const trackRef = React15.useRef(null);
9164
9181
  const copyRef = React15.useRef(null);
9165
- const reducedMotion = _nullishCoalesce(_chunkSXLEPNY2cjs.useMediaQuery.call(void 0, "(prefers-reduced-motion: reduce)"), () => ( false));
9182
+ const reducedMotion = _nullishCoalesce(_chunk5RJUHUCIcjs.useMediaQuery.call(void 0, "(prefers-reduced-motion: reduce)"), () => ( false));
9166
9183
  const [overflows, setOverflows] = React15.useState(false);
9167
9184
  const copySizeRef = React15.useRef(0);
9168
9185
  const wrapSizeRef = React15.useRef(0);
@@ -9195,7 +9212,7 @@ function MarqueeWall({
9195
9212
  if (!el || typeof IntersectionObserver === "undefined") return;
9196
9213
  const io = new IntersectionObserver(
9197
9214
  (entries) => setNearViewport(_nullishCoalesce(_optionalChain([entries, 'access', _163 => _163[0], 'optionalAccess', _164 => _164.isIntersecting]), () => ( true))),
9198
- { rootMargin: _chunkSXLEPNY2cjs.NEAR_VIEWPORT_ROOT_MARGIN }
9215
+ { rootMargin: _chunk5RJUHUCIcjs.NEAR_VIEWPORT_ROOT_MARGIN }
9199
9216
  );
9200
9217
  io.observe(el);
9201
9218
  return () => io.disconnect();
@@ -9212,7 +9229,7 @@ function MarqueeWall({
9212
9229
  if (e.pointerType === "touch") return;
9213
9230
  pointerInsideRef.current = false;
9214
9231
  }, []);
9215
- _chunkSXLEPNY2cjs.useResetOnPageHidden.call(void 0, clearPointerInside);
9232
+ _chunk5RJUHUCIcjs.useResetOnPageHidden.call(void 0, clearPointerInside);
9216
9233
  const draggingRef = React15.useRef(false);
9217
9234
  const dragSuppressUntilRef = React15.useRef(0);
9218
9235
  const applyTransform = React15.useCallback(
@@ -9267,7 +9284,7 @@ function MarqueeWall({
9267
9284
  }
9268
9285
  };
9269
9286
  }, [sync, applyTransform]);
9270
- const { posRef, wrap } = _chunkSXLEPNY2cjs.useMarqueeEngine.call(void 0, {
9287
+ const { posRef, wrap } = _chunk5RJUHUCIcjs.useMarqueeEngine.call(void 0, {
9271
9288
  active: marqueeActive && nearViewport && isDriver,
9272
9289
  speed,
9273
9290
  isPaused: (now) => pauseOnHover && pointerInsideRef.current || draggingRef.current || now < dragSuppressUntilRef.current || document.visibilityState === "hidden",
@@ -11161,7 +11178,7 @@ function ChatHeaderSearchField({
11161
11178
  className
11162
11179
  }) {
11163
11180
  const [value, setValue] = React29.useState(_nullishCoalesce(initialValue, () => ( "")));
11164
- const debounced = _chunkSXLEPNY2cjs.useDebounce.call(void 0, value, 300);
11181
+ const debounced = _chunk5RJUHUCIcjs.useDebounce.call(void 0, value, 300);
11165
11182
  const lastEmitted = React29.useRef(_nullishCoalesce(initialValue, () => ( "")));
11166
11183
  const [exiting, setExiting] = React29.useState(false);
11167
11184
  const collapsedRef = React29.useRef(false);
@@ -12508,7 +12525,7 @@ function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
12508
12525
  return;
12509
12526
  }
12510
12527
  const target = stripSameOriginToPath(href);
12511
- if (target.includes("#") && _chunkSXLEPNY2cjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkSXLEPNY2cjs.STICKY_HEADER_OFFSET_PX })) {
12528
+ if (target.includes("#") && _chunk5RJUHUCIcjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunk5RJUHUCIcjs.STICKY_HEADER_OFFSET_PX })) {
12512
12529
  return;
12513
12530
  }
12514
12531
  const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _220 => _220.navigation, 'access', _221 => _221.navigate, 'optionalCall', _222 => _222({ href, path, targetPlatform })]), () => ( false));
@@ -12977,7 +12994,7 @@ function EntityPortraitCard({
12977
12994
  setIsWide(img.naturalWidth / img.naturalHeight >= MIN_WIDE_RATIO);
12978
12995
  }
12979
12996
  };
12980
- const edgeColor = _chunkSXLEPNY2cjs.useImageEdgeColor.call(void 0, isWide === false ? src : null, "var(--color-bg-surface)");
12997
+ const edgeColor = _chunk5RJUHUCIcjs.useImageEdgeColor.call(void 0, isWide === false ? src : null, "var(--color-bg-surface)");
12981
12998
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", { href, target, rel, className: _chunkKI4EGKNVcjs.cn.call(void 0, "block h-full", className), "aria-label": `Open ${title}`, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Card, { className: "bg-ods-card border border-ods-border hover:border-ods-accent hover:shadow-lg hover:shadow-ods-accent/[0.08] transition-all duration-200 p-6 flex flex-col gap-6 overflow-hidden h-full", children: [
12982
12999
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12983
13000
  "div",
@@ -13284,7 +13301,7 @@ function AdminContentCard({
13284
13301
  const [imageError, setImageError] = _react.useState.call(void 0, false);
13285
13302
  const [imageLoaded, setImageLoaded] = _react.useState.call(void 0, false);
13286
13303
  const displayUrl = imageUrl && !imageError ? imageUrl : placeholderUrl;
13287
- const imageBgColor = _chunkSXLEPNY2cjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
13304
+ const imageBgColor = _chunk5RJUHUCIcjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
13288
13305
  _react.useEffect.call(void 0, () => {
13289
13306
  setImageLoaded(false);
13290
13307
  }, [displayUrl]);
@@ -13585,7 +13602,7 @@ function useVideoWarmup({
13585
13602
  const runtime = _chunk7OPWSWEJcjs.useChatRuntime.call(void 0, );
13586
13603
  const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _235 => _235.endpoints, 'access', _236 => _236.supabaseStorageOrigin])));
13587
13604
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
13588
- const { ref, isNear } = _chunkSXLEPNY2cjs.useNearViewport.call(void 0, nearMargin);
13605
+ const { ref, isNear } = _chunk5RJUHUCIcjs.useNearViewport.call(void 0, nearMargin);
13589
13606
  _react.useEffect.call(void 0, () => {
13590
13607
  if (!isNear || !videoUrl || !resolvedOrigin) return;
13591
13608
  if (saveDataEnabled()) return;
@@ -14396,7 +14413,7 @@ function VideoHoverPreviewSurface({
14396
14413
  if (!el || typeof IntersectionObserver === "undefined") return;
14397
14414
  const io = new IntersectionObserver(
14398
14415
  (entries) => setIsNear(_nullishCoalesce(_optionalChain([entries, 'access', _316 => _316[0], 'optionalAccess', _317 => _317.isIntersecting]), () => ( false))),
14399
- { rootMargin: _chunkSXLEPNY2cjs.NEAR_VIEWPORT_ROOT_MARGIN }
14416
+ { rootMargin: _chunk5RJUHUCIcjs.NEAR_VIEWPORT_ROOT_MARGIN }
14400
14417
  );
14401
14418
  io.observe(el);
14402
14419
  return () => io.disconnect();
@@ -14624,7 +14641,7 @@ function ManagedCell({
14624
14641
  }) {
14625
14642
  const hintedWidth = React130.default.isValidElement(item) ? item.props["data-strip-cell-width"] : void 0;
14626
14643
  const desktopWidth = typeof hintedWidth === "number" ? hintedWidth : cardWidthDesktop;
14627
- const cloneRef = _chunkSXLEPNY2cjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
14644
+ const cloneRef = _chunk5RJUHUCIcjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
14628
14645
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14629
14646
  "div",
14630
14647
  {
@@ -14787,7 +14804,7 @@ function CardsStrip(props) {
14787
14804
  const current = activeKeyRef.current;
14788
14805
  if (current !== null) deactivate(current);
14789
14806
  }, [deactivate]);
14790
- _chunkSXLEPNY2cjs.useResetOnPageHidden.call(void 0, clearHover);
14807
+ _chunk5RJUHUCIcjs.useResetOnPageHidden.call(void 0, clearHover);
14791
14808
  const syncHoverIfScrolled = _react.useCallback.call(void 0, () => {
14792
14809
  const scroller = scrollerRef.current;
14793
14810
  if (!scroller) return;
@@ -14800,7 +14817,7 @@ function CardsStrip(props) {
14800
14817
  const viewport = _nullishCoalesce(_optionalChain([scrollerRef, 'access', _328 => _328.current, 'optionalAccess', _329 => _329.clientWidth]), () => ( 0));
14801
14818
  return Math.max(0, Math.min(200, half / 4, half - viewport - TRACK_GAP_PX - 1));
14802
14819
  }, []);
14803
- const { posRef: marqueePosRef, glideBy } = _chunkSXLEPNY2cjs.useMarqueeEngine.call(void 0, {
14820
+ const { posRef: marqueePosRef, glideBy } = _chunk5RJUHUCIcjs.useMarqueeEngine.call(void 0, {
14804
14821
  // Viewport gates `active` (the rAF fully stops off-screen — a paused
14805
14822
  // engine would keep scheduling frames forever), same treatment as
14806
14823
  // <MarqueeWall>; the envelope persists, so re-entry resumes at cruise.
@@ -14840,7 +14857,7 @@ function CardsStrip(props) {
14840
14857
  }
14841
14858
  return next;
14842
14859
  });
14843
- }, { rootMargin: _chunkSXLEPNY2cjs.NEAR_VIEWPORT_ROOT_MARGIN });
14860
+ }, { rootMargin: _chunk5RJUHUCIcjs.NEAR_VIEWPORT_ROOT_MARGIN });
14844
14861
  cardObserverRef.current = io;
14845
14862
  cardElIdxRef.current.forEach((_idx, el) => io.observe(el));
14846
14863
  return () => {
@@ -15988,7 +16005,7 @@ function useEntityCardPlaceholder({
15988
16005
  siteName = "",
15989
16006
  aspect = "wide"
15990
16007
  }) {
15991
- const derived = _chunkSXLEPNY2cjs.useOgPlaceholderUrl.call(void 0, { title, siteName, aspect });
16008
+ const derived = _chunk5RJUHUCIcjs.useOgPlaceholderUrl.call(void 0, { title, siteName, aspect });
15992
16009
  return placeholderUrl !== void 0 ? placeholderUrl : derived;
15993
16010
  }
15994
16011
 
@@ -17290,7 +17307,7 @@ function TruncateText({
17290
17307
  as = "div"
17291
17308
  }) {
17292
17309
  const isMultiLine = lines > 1;
17293
- const { ref, isTruncated } = _chunkSXLEPNY2cjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
17310
+ const { ref, isTruncated } = _chunk5RJUHUCIcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
17294
17311
  const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
17295
17312
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17296
17313
  FloatingTooltip,
@@ -17422,6 +17439,7 @@ function AutocompleteInner(props, ref) {
17422
17439
  };
17423
17440
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
17424
17441
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
17442
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
17425
17443
  const containerRef = _react.useRef.call(void 0, null);
17426
17444
  const hiddenTagsPopupRef = _react.useRef.call(void 0, null);
17427
17445
  const isInvalid = invalid || !!error;
@@ -17431,7 +17449,7 @@ function AutocompleteInner(props, ref) {
17431
17449
  }, [valueArray, options]);
17432
17450
  const selectedOption = !multiple && selectedOptions.length > 0 ? selectedOptions[0] : null;
17433
17451
  const inputPlaceholder = multiple ? valueArray.length === 0 ? placeholder : "Add More..." : placeholder;
17434
- const autoLimitTags = _chunkSXLEPNY2cjs.useAutoLimitTags.call(void 0, {
17452
+ const autoLimitTags = _chunk5RJUHUCIcjs.useAutoLimitTags.call(void 0, {
17435
17453
  count: multiple ? selectedOptions.length : 0,
17436
17454
  limitTags: multiple ? limitTagsProp : 0,
17437
17455
  placeholder: inputPlaceholder
@@ -17728,12 +17746,14 @@ function AutocompleteInner(props, ref) {
17728
17746
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
17729
17747
  "z-50 w-[var(--radix-popover-trigger-width)] mt-1",
17730
17748
  "bg-ods-card border border-ods-border rounded-[4px]",
17749
+ "flex flex-col overflow-hidden max-h-[var(--radix-popper-available-height)]",
17731
17750
  "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
17732
17751
  "data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2",
17733
17752
  dropdownClassName
17734
17753
  ),
17735
17754
  sideOffset: 4,
17736
17755
  align: "start",
17756
+ collisionPadding: { bottom: keyboardPadding },
17737
17757
  onOpenAutoFocus: (e) => {
17738
17758
  e.preventDefault();
17739
17759
  _optionalChain([autoLimitTags, 'access', _451 => _451.inputRef, 'access', _452 => _452.current, 'optionalAccess', _453 => _453.focus, 'call', _454 => _454()]);
@@ -17743,8 +17763,8 @@ function AutocompleteInner(props, ref) {
17743
17763
  e.preventDefault();
17744
17764
  }
17745
17765
  },
17746
- children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive.Root, { className: "overflow-hidden", children: [
17747
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive.Viewport, { className: "max-h-[240px] w-full [&>div]:!block", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "listbox", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-3 py-2 text-ods-text-secondary text-h6", children: loadingText }) : filteredOptions.length === 0 ? showCreateOption ? isCreateTooLong ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center h-11 md:h-12 px-[var(--spacing-system-mf)] text-h5 text-ods-error min-w-0", children: [
17766
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive.Root, { className: "flex min-h-0 flex-col overflow-hidden", children: [
17767
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive.Viewport, { className: "min-h-0 max-h-[240px] w-full [&>div]:!block", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "listbox", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-3 py-2 text-ods-text-secondary text-h6", children: loadingText }) : filteredOptions.length === 0 ? showCreateOption ? isCreateTooLong ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center h-11 md:h-12 px-[var(--spacing-system-mf)] text-h5 text-ods-error min-w-0", children: [
17748
17768
  "Maximum ",
17749
17769
  maxCreateLength,
17750
17770
  " characters"
@@ -18217,7 +18237,7 @@ function DatePickerCalendar({
18217
18237
  fluid = false
18218
18238
  }) {
18219
18239
  const today = /* @__PURE__ */ new Date();
18220
- const isMdUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useMdUp.call(void 0, ), () => ( true));
18240
+ const isMdUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useMdUp.call(void 0, ), () => ( true));
18221
18241
  const monthsToShow = isMdUp ? numberOfMonths : 1;
18222
18242
  const [draftRange, setDraftRange] = React49.useState(
18223
18243
  mode === "range" ? selected : void 0
@@ -19401,7 +19421,7 @@ var ProgressBar = ({
19401
19421
  mobileHeight = 8,
19402
19422
  inverted = false
19403
19423
  }) => {
19404
- const isMdUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useMdUp.call(void 0, ), () => ( true));
19424
+ const isMdUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useMdUp.call(void 0, ), () => ( true));
19405
19425
  const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
19406
19426
  const effectiveHeight = isMdUp ? height : mobileHeight;
19407
19427
  const containerRef = _react.useRef.call(void 0, null);
@@ -19528,7 +19548,7 @@ function InfoCardFooter({ footer }) {
19528
19548
  ] });
19529
19549
  }
19530
19550
  function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
19531
- const { copy, copied } = _chunkSXLEPNY2cjs.useCopyToClipboard.call(void 0, );
19551
+ const { copy, copied } = _chunk5RJUHUCIcjs.useCopyToClipboard.call(void 0, );
19532
19552
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 items-center gap-[var(--spacing-system-xs)] self-stretch w-full", children: [
19533
19553
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary whitespace-nowrap", children: showLabel ? label : "" }),
19534
19554
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 h-px bg-ods-divider" }),
@@ -19632,6 +19652,7 @@ function SearchableSelect({
19632
19652
  }) {
19633
19653
  const [isOpen, setIsOpen] = React54.useState(false);
19634
19654
  const [search, setSearch] = React54.useState("");
19655
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
19635
19656
  React54.useEffect(() => {
19636
19657
  if (!isOpen) setSearch("");
19637
19658
  }, [isOpen]);
@@ -19683,8 +19704,10 @@ function SearchableSelect({
19683
19704
  {
19684
19705
  align,
19685
19706
  sideOffset: 6,
19707
+ collisionPadding: { bottom: keyboardPadding },
19686
19708
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
19687
19709
  "z-50 min-w-[var(--radix-popover-trigger-width)] bg-ods-card border border-ods-border rounded-md shadow-lg overflow-hidden",
19710
+ "flex flex-col max-h-[var(--radix-popper-available-height)]",
19688
19711
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
19689
19712
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
19690
19713
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -19692,7 +19715,7 @@ function SearchableSelect({
19692
19715
  contentClassName
19693
19716
  ),
19694
19717
  children: [
19695
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19718
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19696
19719
  _chunk3NECEXDFcjs.Input,
19697
19720
  {
19698
19721
  autoFocus: true,
@@ -19703,7 +19726,7 @@ function SearchableSelect({
19703
19726
  className: "rounded-none border-0"
19704
19727
  }
19705
19728
  ) }),
19706
- /* @__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: loadingText }) : filtered.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: emptyText }) : filtered.map((opt) => {
19729
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-0 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: loadingText }) : filtered.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: emptyText }) : filtered.map((opt) => {
19707
19730
  const isSelected = value === opt.value;
19708
19731
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19709
19732
  "button",
@@ -20530,6 +20553,7 @@ function TagSelectDropdown({
20530
20553
  }) {
20531
20554
  const [isOpen, setIsOpen] = React63.useState(false);
20532
20555
  const [search, setSearch] = React63.useState("");
20556
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
20533
20557
  React63.useEffect(() => {
20534
20558
  if (!isOpen) setSearch("");
20535
20559
  }, [isOpen]);
@@ -20573,15 +20597,17 @@ function TagSelectDropdown({
20573
20597
  {
20574
20598
  align,
20575
20599
  sideOffset: 6,
20600
+ collisionPadding: { bottom: keyboardPadding },
20576
20601
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
20577
20602
  "z-50 w-72 bg-ods-card border border-ods-border rounded-[6px] shadow-lg overflow-hidden",
20603
+ "flex flex-col max-h-[var(--radix-popper-available-height)]",
20578
20604
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
20579
20605
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
20580
20606
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
20581
20607
  "data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2"
20582
20608
  ),
20583
20609
  children: [
20584
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20610
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20585
20611
  _chunk3NECEXDFcjs.Input,
20586
20612
  {
20587
20613
  autoFocus: true,
@@ -20598,7 +20624,7 @@ function TagSelectDropdown({
20598
20624
  className: "rounded-none border-0"
20599
20625
  }
20600
20626
  ) }),
20601
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "max-h-72 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: [
20627
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 max-h-72 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: [
20602
20628
  ordered.map((opt) => {
20603
20629
  const isSelected = selectedIds.includes(opt.id);
20604
20630
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -20839,6 +20865,7 @@ function TagsManager({
20839
20865
  }) {
20840
20866
  const [open, setOpen] = React65.useState(false);
20841
20867
  const [search, setSearch] = React65.useState("");
20868
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
20842
20869
  const [editingId, setEditingId] = React65.useState(null);
20843
20870
  const [editingName, setEditingName] = React65.useState("");
20844
20871
  const editInputRef = React65.useRef(null);
@@ -20989,6 +21016,7 @@ function TagsManager({
20989
21016
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
20990
21017
  "z-50 w-[var(--radix-popover-trigger-width)] mt-1",
20991
21018
  "bg-ods-card border border-ods-border rounded",
21019
+ "flex flex-col overflow-hidden max-h-[var(--radix-popper-available-height)]",
20992
21020
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
20993
21021
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
20994
21022
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -20996,6 +21024,7 @@ function TagsManager({
20996
21024
  ),
20997
21025
  sideOffset: 4,
20998
21026
  align: "start",
21027
+ collisionPadding: { bottom: keyboardPadding },
20999
21028
  onOpenAutoFocus: (e) => {
21000
21029
  e.preventDefault();
21001
21030
  _optionalChain([inputRef, 'access', _496 => _496.current, 'optionalAccess', _497 => _497.focus, 'call', _498 => _498()]);
@@ -21005,8 +21034,8 @@ function TagsManager({
21005
21034
  e.preventDefault();
21006
21035
  }
21007
21036
  },
21008
- children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive2.Root, { className: "overflow-hidden", children: [
21009
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive2.Viewport, { className: "max-h-60 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { role: "listbox", children: [
21037
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive2.Root, { className: "flex min-h-0 flex-col overflow-hidden", children: [
21038
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive2.Viewport, { className: "min-h-0 max-h-60 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { role: "listbox", children: [
21010
21039
  filtered.map((tag) => {
21011
21040
  const isSelected = selectedIds.includes(tag.id);
21012
21041
  const isEditing = editingId === tag.id;
@@ -22084,7 +22113,7 @@ var DrawerContent = React73.forwardRef(
22084
22113
  const resolvedSide = _nullishCoalesce(side, () => ( "right"));
22085
22114
  const isHorizontal = HORIZONTAL_SIDES.has(resolvedSide);
22086
22115
  const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
22087
- const headerHeight = _chunkSXLEPNY2cjs.useHeaderHeight.call(void 0, );
22116
+ const headerHeight = _chunk5RJUHUCIcjs.useHeaderHeight.call(void 0, );
22088
22117
  const [isMobile, setIsMobile] = React73.useState(false);
22089
22118
  React73.useEffect(() => {
22090
22119
  if (typeof window === "undefined") return;
@@ -24189,7 +24218,7 @@ var OGLinkPreview = ({
24189
24218
  const hasImage = !!resolvedImageUrl;
24190
24219
  const isFallbackImage = resolvedImageUrl === fallbackImage;
24191
24220
  const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
24192
- const bgColor = _chunkSXLEPNY2cjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--color-bg-surface)");
24221
+ const bgColor = _chunk5RJUHUCIcjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--color-bg-surface)");
24193
24222
  const renderSkeleton = () => isCompact ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "my-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-row border border-ods-border rounded-lg overflow-hidden bg-ods-card h-[120px]", children: [
24194
24223
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[200px] h-full flex-shrink-0 bg-ods-border animate-pulse" }),
24195
24224
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 p-3 flex flex-col justify-center", children: [
@@ -26312,7 +26341,7 @@ function ListPageLayout({
26312
26341
  }) {
26313
26342
  const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
26314
26343
  const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
26315
- const debouncedSearchValue = _chunkSXLEPNY2cjs.useDebounce.call(void 0, localSearchValue, 500);
26344
+ const debouncedSearchValue = _chunk5RJUHUCIcjs.useDebounce.call(void 0, localSearchValue, 500);
26316
26345
  _react.useEffect.call(void 0, () => {
26317
26346
  setLocalSearchValue(searchValue);
26318
26347
  }, [searchValue]);
@@ -26393,7 +26422,7 @@ _chunkKI4EGKNVcjs.init_cn.call(void 0, );
26393
26422
  _chunkKI4EGKNVcjs.init_cn.call(void 0, );
26394
26423
 
26395
26424
  function EntityImage({ src, alt, fallbackText, className }) {
26396
- const resolvedSrc = _chunkSXLEPNY2cjs.useAuthedImageSrc.call(void 0, src);
26425
+ const resolvedSrc = _chunk5RJUHUCIcjs.useAuthedImageSrc.call(void 0, src);
26397
26426
  const [imageFailed, setImageFailed] = React130.default.useState(false);
26398
26427
  React130.default.useEffect(() => {
26399
26428
  setImageFailed(false);
@@ -26467,8 +26496,8 @@ function TitleBlock({
26467
26496
  const titleClass = titleSize === "h1" ? "text-h1" : "text-h2";
26468
26497
  const titleOverflowClass = titleWrap ? "break-words" : "truncate";
26469
26498
  const skeletonSize = TITLE_SKELETON_SIZE[titleSize];
26470
- const { ref: titleRef, isTruncated: titleTruncated } = _chunkSXLEPNY2cjs.useIsTruncated.call(void 0, loading ? null : title);
26471
- const { ref: subtitleRef, isTruncated: subtitleTruncated } = _chunkSXLEPNY2cjs.useIsTruncated.call(void 0,
26499
+ const { ref: titleRef, isTruncated: titleTruncated } = _chunk5RJUHUCIcjs.useIsTruncated.call(void 0, loading ? null : title);
26500
+ const { ref: subtitleRef, isTruncated: subtitleTruncated } = _chunk5RJUHUCIcjs.useIsTruncated.call(void 0,
26472
26501
  loading ? null : subtitle
26473
26502
  );
26474
26503
  const titleNode = loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TitleTextSkeleton, { widthClass: skeletonSize.width, heightClass: skeletonSize.height }) : title;
@@ -27015,7 +27044,7 @@ function toToolLabel(input) {
27015
27044
  if (!input) return "";
27016
27045
  const toolType = normalizeToolType(input);
27017
27046
  if (toolType) {
27018
- return _chunkSXLEPNY2cjs.toolLabels[toolType];
27047
+ return _chunk5RJUHUCIcjs.toolLabels[toolType];
27019
27048
  }
27020
27049
  return input;
27021
27050
  }
@@ -27026,7 +27055,7 @@ function getToolTypeAliases(toolType) {
27026
27055
  return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
27027
27056
  }
27028
27057
  function getToolLabel(toolType) {
27029
- return _chunkSXLEPNY2cjs.toolLabels[toolType] || toolType;
27058
+ return _chunk5RJUHUCIcjs.toolLabels[toolType] || toolType;
27030
27059
  }
27031
27060
 
27032
27061
  // src/types/shell.types.ts
@@ -27518,7 +27547,7 @@ var HIDDEN_GRACE_MS = 45e3;
27518
27547
  function createSseSubscription(options) {
27519
27548
  const {
27520
27549
  url,
27521
- fetchImpl = _chunkSXLEPNY2cjs.embedAuthedFetch,
27550
+ fetchImpl = _chunk5RJUHUCIcjs.embedAuthedFetch,
27522
27551
  onEvent,
27523
27552
  onStatusChange,
27524
27553
  onConnectedChange,
@@ -28586,8 +28615,8 @@ var DEFAULT_OPTIONS = {
28586
28615
  function extractSections(markdown, options = {}) {
28587
28616
  const opts = { ...DEFAULT_OPTIONS, ...options };
28588
28617
  const sections = [];
28589
- const dedupe = _chunkSXLEPNY2cjs.createHeadingIdDeduper.call(void 0, );
28590
- const scanned = _chunkSXLEPNY2cjs.scanHeadings.call(void 0, markdown, {
28618
+ const dedupe = _chunk5RJUHUCIcjs.createHeadingIdDeduper.call(void 0, );
28619
+ const scanned = _chunk5RJUHUCIcjs.scanHeadings.call(void 0, markdown, {
28591
28620
  skipFrontmatter: opts.skipCodeAndYamlBlocks,
28592
28621
  skipFences: opts.skipCodeAndYamlBlocks
28593
28622
  });
@@ -28597,8 +28626,8 @@ function extractSections(markdown, options = {}) {
28597
28626
  if (opts.stripFormattingMarkers) {
28598
28627
  title = stripInlineMarkdown(title).trim();
28599
28628
  }
28600
- const baseId = _chunkSXLEPNY2cjs.slugifyHeadingBase.call(void 0,
28601
- opts.removeEmojis ? _chunkSXLEPNY2cjs.stripHeadingEmojis.call(void 0, title) : title
28629
+ const baseId = _chunk5RJUHUCIcjs.slugifyHeadingBase.call(void 0,
28630
+ opts.removeEmojis ? _chunk5RJUHUCIcjs.stripHeadingEmojis.call(void 0, title) : title
28602
28631
  );
28603
28632
  const cleanId = baseId || `section-${sections.length + 1}`;
28604
28633
  sections.push({
@@ -28664,7 +28693,7 @@ function sanitizeLandingUrl(url) {
28664
28693
  }
28665
28694
  }
28666
28695
  function makeAdapter() {
28667
- return _chunkSXLEPNY2cjs.createLocalStorageAdapter.call(void 0, {
28696
+ return _chunk5RJUHUCIcjs.createLocalStorageAdapter.call(void 0, {
28668
28697
  key: FIRST_TOUCH_ATTRIBUTION_KEY,
28669
28698
  backend: "session",
28670
28699
  logTag: "[first-touch-attribution]",
@@ -30405,10 +30434,10 @@ function CompleteAccountForm({
30405
30434
  children
30406
30435
  }) {
30407
30436
  const fieldsDisabled = disabled || loading;
30408
- const firstNameErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _663 => _663.firstName]), firstName);
30409
- const lastNameErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _664 => _664.lastName]), lastName);
30410
- const passwordErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _665 => _665.password]), password);
30411
- const confirmErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _666 => _666.confirmPassword]), confirmPassword);
30437
+ const firstNameErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _663 => _663.firstName]), firstName);
30438
+ const lastNameErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _664 => _664.lastName]), lastName);
30439
+ const passwordErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _665 => _665.password]), password);
30440
+ const confirmErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _666 => _666.confirmPassword]), confirmPassword);
30412
30441
  const handleKeyDown = (event) => {
30413
30442
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
30414
30443
  onSubmit();
@@ -30599,9 +30628,9 @@ function CreateOrganizationForm({
30599
30628
  }) {
30600
30629
  const hasSso = !!ssoProviders && ssoProviders.length > 0;
30601
30630
  const fieldsDisabled = disabled || loading;
30602
- const emailErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _667 => _667.email]), email);
30603
- const orgNameErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _668 => _668.organizationName]), organizationName);
30604
- const domainErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _669 => _669.domain]), domain);
30631
+ const emailErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _667 => _667.email]), email);
30632
+ const orgNameErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _668 => _668.organizationName]), organizationName);
30633
+ const domainErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _669 => _669.domain]), domain);
30605
30634
  const handleKeyDown = (event) => {
30606
30635
  if (event.key === "Enter" && !fieldsDisabled) {
30607
30636
  onSubmit();
@@ -30755,7 +30784,7 @@ function LoginForm({
30755
30784
  className
30756
30785
  }) {
30757
30786
  const fieldDisabled = disabled || loading;
30758
- const emailErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _675 => _675.email]), email);
30787
+ const emailErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _675 => _675.email]), email);
30759
30788
  const handleKeyDown = (event) => {
30760
30789
  if (event.key === "Enter" && !fieldDisabled) {
30761
30790
  _optionalChain([onSubmit, 'optionalCall', _676 => _676()]);
@@ -30829,8 +30858,8 @@ function OpenFrameSsoLoginForm({
30829
30858
  className
30830
30859
  }) {
30831
30860
  const fieldsDisabled = disabled || loading;
30832
- const emailErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _679 => _679.email]), email);
30833
- const passwordErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _680 => _680.password]), password);
30861
+ const emailErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _679 => _679.email]), email);
30862
+ const passwordErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _680 => _680.password]), password);
30834
30863
  const handleKeyDown = (event) => {
30835
30864
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
30836
30865
  onSubmit();
@@ -30937,11 +30966,11 @@ function OpenFrameSsoSignUpForm({
30937
30966
  className
30938
30967
  }) {
30939
30968
  const fieldsDisabled = disabled || loading;
30940
- const emailErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _681 => _681.email]), email);
30941
- const firstNameErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _682 => _682.firstName]), firstName);
30942
- const lastNameErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _683 => _683.lastName]), lastName);
30943
- const passwordErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _684 => _684.password]), password);
30944
- const confirmErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _685 => _685.confirmPassword]), confirmPassword);
30969
+ const emailErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _681 => _681.email]), email);
30970
+ const firstNameErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _682 => _682.firstName]), firstName);
30971
+ const lastNameErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _683 => _683.lastName]), lastName);
30972
+ const passwordErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _684 => _684.password]), password);
30973
+ const confirmErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _685 => _685.confirmPassword]), confirmPassword);
30945
30974
  const handleKeyDown = (event) => {
30946
30975
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
30947
30976
  onSubmit();
@@ -31084,8 +31113,8 @@ function PasswordResetForm({
31084
31113
  className
31085
31114
  }) {
31086
31115
  const fieldsDisabled = disabled || loading;
31087
- const passwordErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _686 => _686.password]), password);
31088
- const confirmErr = _chunkSXLEPNY2cjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _687 => _687.confirmPassword]), confirmPassword);
31116
+ const passwordErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _686 => _686.password]), password);
31117
+ const confirmErr = _chunk5RJUHUCIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _687 => _687.confirmPassword]), confirmPassword);
31089
31118
  const handleKeyDown = (event) => {
31090
31119
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
31091
31120
  onSubmit();
@@ -33371,7 +33400,7 @@ function PlatformFilterComponent({
33371
33400
  variant: selectedPlatform === platform.value ? "accent" : "outline",
33372
33401
  size: size2,
33373
33402
  onClick: () => onPlatformChange(platform.value),
33374
- leftIcon: showIcons ? _chunkSXLEPNY2cjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
33403
+ leftIcon: showIcons ? _chunk5RJUHUCIcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
33375
33404
  className: "text-h3",
33376
33405
  children: platform.label
33377
33406
  },
@@ -36728,7 +36757,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
36728
36757
  if (level) onPermissionChange(categoryId, policy.id, level);
36729
36758
  };
36730
36759
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b last:border-b-0 border-ods-border flex gap-[var(--spacing-system-m)] items-start md:items-center px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)]", children: [
36731
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8 shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSXLEPNY2cjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
36760
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8 shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RJUHUCIcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
36732
36761
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 flex flex-col min-w-0", children: [
36733
36762
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary truncate", title: policy.name, children: policy.name }),
36734
36763
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary break-all", children: policy.commandPattern }),
@@ -37022,8 +37051,8 @@ function WaitlistForm({
37022
37051
  const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
37023
37052
  const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
37024
37053
  const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
37025
- const { toast } = _chunkSXLEPNY2cjs.useToast.call(void 0, );
37026
- const { honeypotInputProps, getSignals, resetSignals } = _chunkSXLEPNY2cjs.useHumanitySignals.call(void 0, );
37054
+ const { toast } = _chunk5RJUHUCIcjs.useToast.call(void 0, );
37055
+ const { honeypotInputProps, getSignals, resetSignals } = _chunk5RJUHUCIcjs.useHumanitySignals.call(void 0, );
37027
37056
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
37028
37057
  const [isClient, setIsClient] = _react.useState.call(void 0, false);
37029
37058
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
@@ -38005,7 +38034,7 @@ function NotificationTile({
38005
38034
  onError: () => setFailedImageUrl(image),
38006
38035
  className: "size-4 rounded-[2px] object-cover"
38007
38036
  }
38008
- ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkSXLEPNY2cjs.dotColorByVariant[accentVariant]) })))
38037
+ ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "size-1.5 rounded-full", _chunk5RJUHUCIcjs.dotColorByVariant[accentVariant]) })))
38009
38038
  }
38010
38039
  ),
38011
38040
  type ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -38053,7 +38082,7 @@ function NotificationTile({
38053
38082
  "aria-hidden": true,
38054
38083
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
38055
38084
  "absolute inset-x-0 -bottom-px h-1 origin-left",
38056
- _chunkSXLEPNY2cjs.progressColorByVariant[accentVariant]
38085
+ _chunk5RJUHUCIcjs.progressColorByVariant[accentVariant]
38057
38086
  ),
38058
38087
  style: {
38059
38088
  animation: `toast-progress ${liveDurationMs}ms linear forwards`,
@@ -38276,7 +38305,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
38276
38305
  ] });
38277
38306
  }
38278
38307
  function DesktopNotificationsToggleRow({ checked, onChange }) {
38279
- const { supported, permission, request } = _chunkSXLEPNY2cjs.useNotificationPermission.call(void 0, );
38308
+ const { supported, permission, request } = _chunk5RJUHUCIcjs.useNotificationPermission.call(void 0, );
38280
38309
  if (!supported) return null;
38281
38310
  const blocked = permission === "denied";
38282
38311
  const handleChange = async (value) => {
@@ -39806,7 +39835,7 @@ function EmptyState2() {
39806
39835
  // src/components/features/board/use-board-collapse.ts
39807
39836
 
39808
39837
  function useBoardCollapse(storageKey) {
39809
- const [persisted, setPersisted] = _chunkSXLEPNY2cjs.useLocalStorage.call(void 0,
39838
+ const [persisted, setPersisted] = _chunk5RJUHUCIcjs.useLocalStorage.call(void 0,
39810
39839
  _nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")),
39811
39840
  {}
39812
39841
  );
@@ -39856,7 +39885,7 @@ function Board({
39856
39885
  onThumbPointerDown,
39857
39886
  onThumbPointerMove,
39858
39887
  onThumbPointerUp
39859
- } = _chunkSXLEPNY2cjs.useHorizontalScrollbar.call(void 0, );
39888
+ } = _chunk5RJUHUCIcjs.useHorizontalScrollbar.call(void 0, );
39860
39889
  const [items, setItems] = React114.useState(columns);
39861
39890
  const isDraggingRef = React114.useRef(false);
39862
39891
  React114.useEffect(() => {
@@ -40268,8 +40297,8 @@ var MOBILE_NAV_PANEL_ID = "mobile-nav-panel";
40268
40297
  function MobileNavPanel({ isOpen, config }) {
40269
40298
  const panelRef = _react.useRef.call(void 0, null);
40270
40299
  _overlays.usePreventScroll.call(void 0, { isDisabled: !isOpen });
40271
- _chunkSXLEPNY2cjs.useFocusTrap.call(void 0, panelRef, isOpen, { onEscape: config.onClose });
40272
- const headerHeight = _chunkSXLEPNY2cjs.useHeaderHeight.call(void 0, 64, { enabled: isOpen });
40300
+ _chunk5RJUHUCIcjs.useFocusTrap.call(void 0, panelRef, isOpen, { onEscape: config.onClose });
40301
+ const headerHeight = _chunk5RJUHUCIcjs.useHeaderHeight.call(void 0, 64, { enabled: isOpen });
40273
40302
  if (!isOpen) return null;
40274
40303
  const renderNavigationItem = (item) => {
40275
40304
  if (item.element) {
@@ -40396,7 +40425,7 @@ var ANON_DEFAULTS = {
40396
40425
  function useResolveChatIdentity(enabled) {
40397
40426
  const runtime = _chunk7OPWSWEJcjs.useRequiredChatRuntime.call(void 0, );
40398
40427
  const url = runtime.endpoints.identityUrl;
40399
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkSXLEPNY2cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _920 => _920.email]), () => ( null));
40428
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _920 => _920.email]), () => ( null));
40400
40429
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
40401
40430
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
40402
40431
  _react.useEffect.call(void 0, () => {
@@ -40404,7 +40433,7 @@ function useResolveChatIdentity(enabled) {
40404
40433
  let cancelled = false;
40405
40434
  const ctrl = new AbortController();
40406
40435
  setIsLoading(true);
40407
- _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
40436
+ _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
40408
40437
  if (!resp.ok) return ANON_DEFAULTS;
40409
40438
  return await resp.json();
40410
40439
  }).then((next) => {
@@ -40612,7 +40641,7 @@ function TicketLiveProvider({ children }) {
40612
40641
  const markRead = React130.default.useCallback(
40613
40642
  async (ticketExternalId) => {
40614
40643
  try {
40615
- const response = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, readUrl, {
40644
+ const response = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, readUrl, {
40616
40645
  method: "POST",
40617
40646
  body: JSON.stringify({ ticket_id: ticketExternalId })
40618
40647
  });
@@ -41162,11 +41191,11 @@ _chunk7INXXQVKcjs.init_button2.call(void 0, );
41162
41191
  function SlidingSidebar({ config }) {
41163
41192
  const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
41164
41193
  const [mounted, setMounted] = _react.useState.call(void 0, false);
41165
- const headerHeight = _chunkSXLEPNY2cjs.useHeaderHeight.call(void 0, );
41194
+ const headerHeight = _chunk5RJUHUCIcjs.useHeaderHeight.call(void 0, );
41166
41195
  const asideRef = _react.useRef.call(void 0, null);
41167
41196
  const prefersReducedMotion2 = _framermotion.useReducedMotion.call(void 0, );
41168
41197
  _overlays.usePreventScroll.call(void 0, { isDisabled: !config.isOpen });
41169
- _chunkSXLEPNY2cjs.useFocusTrap.call(void 0, asideRef, config.isOpen, { onEscape: config.onClose, contain: false });
41198
+ _chunk5RJUHUCIcjs.useFocusTrap.call(void 0, asideRef, config.isOpen, { onEscape: config.onClose, contain: false });
41170
41199
  _react.useEffect.call(void 0, () => {
41171
41200
  setMounted(true);
41172
41201
  }, []);
@@ -41404,7 +41433,7 @@ function useSectionNavigation(sections, options) {
41404
41433
  if (!targetElement) return;
41405
41434
  isScrollingFromClick.current = true;
41406
41435
  setActiveSection(sectionId);
41407
- _chunkSXLEPNY2cjs.scrollElementIntoView.call(void 0, targetElement, { headerOffset: offset2 });
41436
+ _chunk5RJUHUCIcjs.scrollElementIntoView.call(void 0, targetElement, { headerOffset: offset2 });
41408
41437
  setTimeout(() => {
41409
41438
  isScrollingFromClick.current = false;
41410
41439
  }, 500);
@@ -41613,10 +41642,10 @@ var SIDEBAR_GEOMETRY_CLASSES = [
41613
41642
  var SIDEBAR_TABLET_WIDTH = { rail: "md:w-14", overlay: "md:w-56" };
41614
41643
  var isModifiedClick = (event) => !!event && (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey || event.button !== 0);
41615
41644
  function NavigationSidebar({ config, disabled = false }) {
41616
- const isMdUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useMdUp.call(void 0, ), () => ( false));
41617
- const isLgUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useLgUp.call(void 0, ), () => ( false));
41645
+ const isMdUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useMdUp.call(void 0, ), () => ( false));
41646
+ const isLgUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useLgUp.call(void 0, ), () => ( false));
41618
41647
  const isTablet = isMdUp && !isLgUp;
41619
- const [desktopMinimized, setDesktopMinimized] = _chunkSXLEPNY2cjs.useLocalStorage.call(void 0,
41648
+ const [desktopMinimized, setDesktopMinimized] = _chunk5RJUHUCIcjs.useLocalStorage.call(void 0,
41620
41649
  STORAGE_KEY,
41621
41650
  _nullishCoalesce(config.minimized, () => ( false))
41622
41651
  );
@@ -41690,10 +41719,10 @@ function NavigationSidebar({ config, disabled = false }) {
41690
41719
  () => minimized ? `${MINIMIZED_WIDTH}px` : `${EXPANDED_WIDTH}px`,
41691
41720
  [minimized]
41692
41721
  );
41693
- _chunkSXLEPNY2cjs.useIsomorphicLayoutEffect.call(void 0, () => {
41722
+ _chunk5RJUHUCIcjs.useIsomorphicLayoutEffect.call(void 0, () => {
41694
41723
  document.documentElement.style.setProperty(NAVIGATION_SIDEBAR_WIDTH_VAR, sidebarWidth);
41695
41724
  }, [sidebarWidth]);
41696
- _chunkSXLEPNY2cjs.useIsomorphicLayoutEffect.call(void 0, () => {
41725
+ _chunk5RJUHUCIcjs.useIsomorphicLayoutEffect.call(void 0, () => {
41697
41726
  if (!transitionsEnabled) {
41698
41727
  const id = requestAnimationFrame(() => {
41699
41728
  setTransitionsEnabled(true);
@@ -41979,7 +42008,7 @@ var AppHeader = React130.default.memo(function AppHeader2({
41979
42008
  loading = false,
41980
42009
  loadingActionCells
41981
42010
  }) {
41982
- const isMdUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useMdUp.call(void 0, ), () => ( false));
42011
+ const isMdUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useMdUp.call(void 0, ), () => ( false));
41983
42012
  if (loading) {
41984
42013
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
41985
42014
  AppHeaderSkeleton,
@@ -42251,7 +42280,7 @@ var MobileBurgerMenu = React130.default.memo(function MobileBurgerMenu2({
42251
42280
  }) {
42252
42281
  const panelRef = _react.useRef.call(void 0, null);
42253
42282
  _overlays.usePreventScroll.call(void 0, { isDisabled: !isOpen });
42254
- _chunkSXLEPNY2cjs.useFocusTrap.call(void 0, panelRef, isOpen, { onEscape: onClose });
42283
+ _chunk5RJUHUCIcjs.useFocusTrap.call(void 0, panelRef, isOpen, { onEscape: onClose });
42255
42284
  const handleItemClick = _react.useCallback.call(void 0, (item) => {
42256
42285
  if (item.onClick) {
42257
42286
  item.onClick();
@@ -42805,7 +42834,7 @@ var ToolBadge = ({
42805
42834
  }) => {
42806
42835
  const label = getToolLabel(toolType);
42807
42836
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "flex items-center gap-1 text-ods-text-secondary", className), children: [
42808
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSXLEPNY2cjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
42837
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RJUHUCIcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
42809
42838
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: label })
42810
42839
  ] });
42811
42840
  };
@@ -43177,7 +43206,7 @@ function OnboardingWalkthrough({
43177
43206
  isStepSkipped,
43178
43207
  allStepsComplete,
43179
43208
  markMultipleComplete
43180
- } = _chunkSXLEPNY2cjs.useOnboardingState.call(void 0, storageKey);
43209
+ } = _chunk5RJUHUCIcjs.useOnboardingState.call(void 0, storageKey);
43181
43210
  const hasAutoMarkedRef = _react.useRef.call(void 0, false);
43182
43211
  const autoMarkingInProgressRef = _react.useRef.call(void 0, false);
43183
43212
  const lastCompletionStatusRef = _react.useRef.call(void 0, null);
@@ -43384,7 +43413,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
43384
43413
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-primary", children: log.title }),
43385
43414
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
43386
43415
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h5 text-ods-text-secondary", children: formatTimestamp(log.timestamp) }),
43387
- log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSXLEPNY2cjs.ToolIcon, { toolType: log.toolType, size: 16 })
43416
+ log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RJUHUCIcjs.ToolIcon, { toolType: log.toolType, size: 16 })
43388
43417
  ] })
43389
43418
  ] })
43390
43419
  ]
@@ -43521,8 +43550,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
43521
43550
  }
43522
43551
  function ServiceCardRowItem({ row }) {
43523
43552
  const [revealed, setRevealed] = _react.useState.call(void 0, false);
43524
- const { copy, copied } = _chunkSXLEPNY2cjs.useCopyToClipboard.call(void 0, );
43525
- const { ref: valueRef, isTruncated: valueTruncated } = _chunkSXLEPNY2cjs.useIsTruncated.call(void 0, row.value);
43553
+ const { copy, copied } = _chunk5RJUHUCIcjs.useCopyToClipboard.call(void 0, );
43554
+ const { ref: valueRef, isTruncated: valueTruncated } = _chunk5RJUHUCIcjs.useIsTruncated.call(void 0, row.value);
43526
43555
  const actions = _react.useMemo.call(void 0, () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }), [row]);
43527
43556
  const displayValue = row.isSecret ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MaskedValue, { value: row.value, isRevealed: revealed }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: row.value });
43528
43557
  const handleCopy = () => copy(_nullishCoalesce(row.copyValue, () => ( row.value)));
@@ -44147,7 +44176,7 @@ function TableHeader({
44147
44176
  }
44148
44177
  return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Arrow01UpIcon, { className: "w-4 h-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Arrow01DownIcon, { className: "w-4 h-4 text-ods-accent" });
44149
44178
  };
44150
- const isLgUp = _nullishCoalesce(_chunkSXLEPNY2cjs.useLgUp.call(void 0, ), () => ( false));
44179
+ const isLgUp = _nullishCoalesce(_chunk5RJUHUCIcjs.useLgUp.call(void 0, ), () => ( false));
44151
44180
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
44152
44181
  "div",
44153
44182
  {
@@ -45070,7 +45099,7 @@ function QueryReportTable({
45070
45099
  onThumbPointerDown,
45071
45100
  onThumbPointerMove,
45072
45101
  onThumbPointerUp
45073
- } = _chunkSXLEPNY2cjs.useHorizontalScrollbar.call(void 0, );
45102
+ } = _chunk5RJUHUCIcjs.useHorizontalScrollbar.call(void 0, );
45074
45103
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkKI4EGKNVcjs.cn.call(void 0, "flex flex-col w-full", isCompact ? "gap-0" : "gap-[var(--spacing-system-l)]", className), children: [
45075
45104
  !isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-[var(--spacing-system-l)]", children: [
45076
45105
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-h2 text-ods-text-primary", children: title }),
@@ -45989,9 +46018,10 @@ function SearchInput({
45989
46018
  }) {
45990
46019
  const [internalValue, setInternalValue] = React132.useState(defaultValue);
45991
46020
  const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
45992
- const debouncedValue = _chunkSXLEPNY2cjs.useDebounce.call(void 0, currentValue, debounceMs);
46021
+ const debouncedValue = _chunk5RJUHUCIcjs.useDebounce.call(void 0, currentValue, debounceMs);
45993
46022
  const [isOpen, setIsOpen] = React132.useState(false);
45994
46023
  const [highlightedIndex, setHighlightedIndex] = React132.useState(-1);
46024
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
45995
46025
  const containerRef = React132.useRef(null);
45996
46026
  const currentPlaceholder = filterChips.length > 0 ? "Add filter..." : placeholder;
45997
46027
  const {
@@ -46001,7 +46031,7 @@ function SearchInput({
46001
46031
  textMeasureRef,
46002
46032
  badgeRef,
46003
46033
  inputRef
46004
- } = _chunkSXLEPNY2cjs.useAutoLimitTags.call(void 0, {
46034
+ } = _chunk5RJUHUCIcjs.useAutoLimitTags.call(void 0, {
46005
46035
  count: filterChips.length,
46006
46036
  limitTags,
46007
46037
  // When chips exist, pass empty placeholder so the hook only reserves input minWidth,
@@ -46251,6 +46281,7 @@ function SearchInput({
46251
46281
  className: _chunkKI4EGKNVcjs.cn.call(void 0,
46252
46282
  "z-50 w-[var(--radix-popover-trigger-width)] mt-1",
46253
46283
  "bg-ods-card border border-ods-border rounded-[6px] overflow-hidden shadow-lg",
46284
+ "flex flex-col max-h-[var(--radix-popper-available-height)]",
46254
46285
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
46255
46286
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
46256
46287
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -46259,6 +46290,7 @@ function SearchInput({
46259
46290
  ),
46260
46291
  sideOffset: 4,
46261
46292
  align: "start",
46293
+ collisionPadding: { bottom: keyboardPadding },
46262
46294
  onOpenAutoFocus: (e) => {
46263
46295
  e.preventDefault();
46264
46296
  _optionalChain([inputRef, 'access', _1113 => _1113.current, 'optionalAccess', _1114 => _1114.focus, 'call', _1115 => _1115()]);
@@ -46268,8 +46300,8 @@ function SearchInput({
46268
46300
  e.preventDefault();
46269
46301
  }
46270
46302
  },
46271
- children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive3.Root, { className: "overflow-hidden", children: [
46272
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive3.Viewport, { className: "max-h-[320px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "listbox", children: renderDropdownContent() }) }),
46303
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive3.Root, { className: "flex min-h-0 flex-col overflow-hidden", children: [
46304
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive3.Viewport, { className: "min-h-0 max-h-[320px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "listbox", children: renderDropdownContent() }) }),
46273
46305
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive3.Scrollbar, { className: "hidden", orientation: "vertical", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive3.Thumb, {}) })
46274
46306
  ] })
46275
46307
  }
@@ -46468,7 +46500,7 @@ function TagSearchInput({
46468
46500
  textMeasureRef,
46469
46501
  badgeRef,
46470
46502
  inputRef
46471
- } = _chunkSXLEPNY2cjs.useAutoLimitTags.call(void 0, {
46503
+ } = _chunk5RJUHUCIcjs.useAutoLimitTags.call(void 0, {
46472
46504
  count: tags.length,
46473
46505
  limitTags,
46474
46506
  placeholder: currentPlaceholder
@@ -47107,7 +47139,8 @@ function FileUpload({
47107
47139
  return;
47108
47140
  }
47109
47141
  try {
47110
- handleFiles(await pickFiles());
47142
+ const picked = await pickFiles();
47143
+ if (picked.length > 0) handleFiles(picked);
47111
47144
  } catch (err) {
47112
47145
  setValidationError(err instanceof Error ? err.message : "Could not open the file picker");
47113
47146
  }
@@ -47286,7 +47319,7 @@ function ImageUploader({
47286
47319
  const [pressed, setPressed] = React136.useState(false);
47287
47320
  const [validationError, setValidationError] = React136.useState(null);
47288
47321
  const interactive = !disabled && !loading;
47289
- const resolvedValue = _chunkSXLEPNY2cjs.useAuthedImageSrc.call(void 0, value);
47322
+ const resolvedValue = _chunk5RJUHUCIcjs.useAuthedImageSrc.call(void 0, value);
47290
47323
  const hasImage = Boolean(value);
47291
47324
  const displayError = error || validationError || void 0;
47292
47325
  const resolvedHint = hint === void 0 ? `Max. size: ${formatSize(maxSize)}` : hint;
@@ -47461,19 +47494,23 @@ _chunkKI4EGKNVcjs.init_cn.call(void 0, );
47461
47494
 
47462
47495
  var Popover2 = PopoverPrimitive7.Root;
47463
47496
  var PopoverTrigger = PopoverPrimitive7.Trigger;
47464
- var PopoverContent = React137.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive7.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
47465
- PopoverPrimitive7.Content,
47466
- {
47467
- ref,
47468
- align,
47469
- sideOffset,
47470
- className: _chunkKI4EGKNVcjs.cn.call(void 0,
47471
- "z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
47472
- className
47473
- ),
47474
- ...props
47475
- }
47476
- ) }));
47497
+ var PopoverContent = React137.forwardRef(({ className, align = "center", sideOffset = 4, collisionPadding, ...props }, ref) => {
47498
+ const keyboardPadding = _chunk5RJUHUCIcjs.useKeyboardCollisionPadding.call(void 0, );
47499
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive7.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
47500
+ PopoverPrimitive7.Content,
47501
+ {
47502
+ ref,
47503
+ align,
47504
+ sideOffset,
47505
+ collisionPadding: _nullishCoalesce(collisionPadding, () => ( { bottom: keyboardPadding })),
47506
+ className: _chunkKI4EGKNVcjs.cn.call(void 0,
47507
+ "z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
47508
+ className
47509
+ ),
47510
+ ...props
47511
+ }
47512
+ ) });
47513
+ });
47477
47514
  PopoverContent.displayName = PopoverPrimitive7.Content.displayName;
47478
47515
 
47479
47516
  // src/components/ui/color-preset-select.tsx
@@ -47907,7 +47944,7 @@ function TestResultsTable({ rows, loading }) {
47907
47944
  ] }) }) });
47908
47945
  }
47909
47946
  function TestRunErrorBanner({ error, className }) {
47910
- const { copy } = _chunkSXLEPNY2cjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
47947
+ const { copy } = _chunk5RJUHUCIcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
47911
47948
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
47912
47949
  "div",
47913
47950
  {
@@ -51376,7 +51413,7 @@ function useChatCardItem(type, id) {
51376
51413
  queryKey: ["chat-card-item", type, id],
51377
51414
  queryFn: async () => {
51378
51415
  if (!url) return null;
51379
- const res = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, url);
51416
+ const res = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, url);
51380
51417
  if (!res.ok) throw new Error(`chat card fetch failed: ${res.status}`);
51381
51418
  const data = await res.json();
51382
51419
  const items = extractItems(data);
@@ -53598,7 +53635,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
53598
53635
  try {
53599
53636
  const url = new URL(commandsUrl, window.location.origin);
53600
53637
  if (prefix) url.searchParams.set("q", prefix);
53601
- const res = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
53638
+ const res = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
53602
53639
  if (!res.ok) return [];
53603
53640
  const data = await res.json();
53604
53641
  return _nullishCoalesce(data.commands, () => ( []));
@@ -53673,7 +53710,7 @@ var EMPTY_STATE_FALLBACK = {
53673
53710
  async function fetchEmptyStateConfig(signal, emptyStateUrl) {
53674
53711
  try {
53675
53712
  const url = new URL(emptyStateUrl, window.location.origin);
53676
- const res = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
53713
+ const res = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
53677
53714
  if (!res.ok) {
53678
53715
  if (res.status >= 500) {
53679
53716
  console.error(`[chat] empty-state config fetch failed (${res.status}): ${url.pathname}`);
@@ -53835,7 +53872,7 @@ function useChatAttachments() {
53835
53872
  );
53836
53873
  }
53837
53874
  updateOne(att.id, { status: "uploading", progress: 5 });
53838
- const urlResp = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
53875
+ const urlResp = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
53839
53876
  method: "POST",
53840
53877
  headers: { "Content-Type": "application/json" },
53841
53878
  signal: _optionalChain([ctrl, 'optionalAccess', _1429 => _1429.signal]),
@@ -54642,11 +54679,11 @@ function createSseFrameDecoder() {
54642
54679
  var STORAGE_KEY2 = "conversation";
54643
54680
  var namespaceFor = (source) => {
54644
54681
  const base = `mingo-chat-${source}`;
54645
- const auth = _chunkSXLEPNY2cjs.getEmbedProxyAuth.call(void 0, );
54682
+ const auth = _chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, );
54646
54683
  return _optionalChain([auth, 'optionalAccess', _1451 => _1451.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
54647
54684
  };
54648
54685
  function createChatConversationStorage(source) {
54649
- return _chunkSXLEPNY2cjs.createLocalStorageAdapter.call(void 0, {
54686
+ return _chunk5RJUHUCIcjs.createLocalStorageAdapter.call(void 0, {
54650
54687
  key: STORAGE_KEY2,
54651
54688
  namespace: () => namespaceFor(source),
54652
54689
  validate: (parsed) => !!parsed && typeof parsed.conversationId === "string" && parsed.conversationId.length > 0,
@@ -54700,7 +54737,7 @@ function useChatHistoryHydration({
54700
54737
  setIsHydratingHistory(true);
54701
54738
  (async () => {
54702
54739
  try {
54703
- const res = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0,
54740
+ const res = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0,
54704
54741
  `${historyUrl}?conversationId=${encodeURIComponent(conversationId)}`,
54705
54742
  { method: "GET" }
54706
54743
  );
@@ -57137,7 +57174,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
57137
57174
  const ctrl = new AbortController();
57138
57175
  abortControllerRef.current = ctrl;
57139
57176
  try {
57140
- const response = await _chunkSXLEPNY2cjs.embedAuthedFetch.call(void 0, targetPath, {
57177
+ const response = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, targetPath, {
57141
57178
  method: "POST",
57142
57179
  body: JSON.stringify(requestBody),
57143
57180
  signal: ctrl.signal
@@ -62071,4 +62108,4 @@ function EmbeddableChatInner({
62071
62108
 
62072
62109
 
62073
62110
  exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.FloatingTooltip = FloatingTooltip; exports.TruncateText = TruncateText; 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.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.formatDate = formatDate2; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; 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.formatEntryMonthUTC = formatEntryMonthUTC; 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.titleCaseFromSlug = titleCaseFromSlug; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; 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.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; 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.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.MermaidDiagram = MermaidDiagram; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.GuideDisplay = GuideDisplay; exports.AskDisplay = AskDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; 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.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; exports.QuickActionMarquee = QuickActionMarquee; 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.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; 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.ChatContextMemoryBar = ChatContextMemoryBar; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; 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.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.CardHitLayer = CardHitLayer; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; 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.AvatarStack = AvatarStack; 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.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; 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.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.clickupTaskUrl = clickupTaskUrl; 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.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.isGuideApproval = isGuideApproval; exports.guideApprovalOrigin = guideApprovalOrigin; exports.approvalDisplaysInline = approvalDisplaysInline; exports.isGuideApprovalSegment = isGuideApprovalSegment; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.useSseChatAdapter = useSseChatAdapter; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.BackButton = BackButton; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; 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.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; 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.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; 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.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; 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.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; 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.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; 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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; 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.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; 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.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.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.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; 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.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.MingoAiButton = MingoAiButton; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.useOptionalTicketLive = useOptionalTicketLive; exports.useTicketLive = useTicketLive; exports.TicketLiveProvider = TicketLiveProvider; exports.isOptimistic = isOptimistic; exports.TICKET_TEXT_MAX_CHARS = TICKET_TEXT_MAX_CHARS; exports.TICKET_MARK_READ_DEBOUNCE_MS = TICKET_MARK_READ_DEBOUNCE_MS; exports.TOAST_COPY = TOAST_COPY; exports.TicketAlertsButton = TicketAlertsButton; exports.TopNavigation = TopNavigation; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NAVIGATION_SIDEBAR_WIDTH_VAR = NAVIGATION_SIDEBAR_WIDTH_VAR; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; 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;
62074
- //# sourceMappingURL=chunk-LYRGM25P.cjs.map
62111
+ //# sourceMappingURL=chunk-E3YB55RR.cjs.map