@flamingo-stack/openframe-frontend-core 0.0.750 → 0.0.751

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 (60) hide show
  1. package/dist/{chunk-45YRDD7W.cjs → chunk-4WNBVNGP.cjs} +13 -13
  2. package/dist/{chunk-4O2KYY4K.cjs → chunk-53I4YHRT.cjs} +3 -3
  3. package/dist/{chunk-HOEVD6EN.cjs → chunk-5P7WBA2U.cjs} +4 -4
  4. package/dist/{chunk-CNUZLOVA.cjs → chunk-5WC535NJ.cjs} +17 -17
  5. package/dist/{chunk-BO6ZOAPB.cjs → chunk-77IKUBSH.cjs} +6 -6
  6. package/dist/{chunk-E3KFEOFA.cjs → chunk-CVBHB4OZ.cjs} +4 -4
  7. package/dist/{chunk-JPUTILTV.cjs → chunk-ESRA7NUI.cjs} +41 -41
  8. package/dist/{chunk-2J2OBP4N.cjs → chunk-H52GKJ36.cjs} +9 -9
  9. package/dist/{chunk-G7SBHMRR.cjs → chunk-KHKPLOU4.cjs} +69 -39
  10. package/dist/{chunk-6KEJQR6L.cjs → chunk-LIGDPFDM.cjs} +131 -131
  11. package/dist/{chunk-YL62VAHC.cjs → chunk-MJFTWHV6.cjs} +4 -4
  12. package/dist/{chunk-AW6GP3JK.cjs → chunk-MU7FFN6M.cjs} +34 -34
  13. package/dist/{chunk-7RCTOWBA.cjs → chunk-NOUROZYH.cjs} +13 -13
  14. package/dist/{chunk-KVSEWACW.cjs → chunk-QOONZMSQ.cjs} +9 -9
  15. package/dist/{chunk-FP6HAJQV.cjs → chunk-RVLQHSID.cjs} +70 -70
  16. package/dist/{chunk-GVETSV7H.cjs → chunk-SDOCZTST.cjs} +32 -32
  17. package/dist/{chunk-V3UJ6NDR.cjs → chunk-TPH4SRR2.cjs} +6 -6
  18. package/dist/{chunk-4FWURR3W.cjs → chunk-VUWPLQBY.cjs} +2 -2
  19. package/dist/{chunk-WZX26ODJ.cjs → chunk-X4LAMJHD.cjs} +54 -35
  20. package/dist/{cloud-tenants-E4JSG3GH.cjs → cloud-tenants-JDPC2DYF.cjs} +6 -6
  21. package/dist/components/case-studies/index.cjs +16 -16
  22. package/dist/components/chat/hooks/use-jetstream-dialog-subscription.d.ts +7 -5
  23. package/dist/components/chat/hooks/use-jetstream-dialog-subscription.d.ts.map +1 -1
  24. package/dist/components/chat/hooks/use-jetstream-dialog-subscription.js +33 -14
  25. package/dist/components/chat/index.cjs +4 -4
  26. package/dist/components/chat/types/api.types.d.ts +27 -8
  27. package/dist/components/chat/types/api.types.d.ts.map +1 -1
  28. package/dist/components/chat/types/network.types.d.ts +2 -1
  29. package/dist/components/chat/types/network.types.d.ts.map +1 -1
  30. package/dist/components/contact/index.cjs +7 -7
  31. package/dist/components/docs/index.cjs +10 -10
  32. package/dist/components/embeds/index.cjs +7 -7
  33. package/dist/components/faq/index.cjs +8 -8
  34. package/dist/components/features/index.cjs +6 -6
  35. package/dist/components/help-center-pages/index.cjs +67 -67
  36. package/dist/components/index.cjs +39 -39
  37. package/dist/components/meeting-scheduler/index.cjs +29 -29
  38. package/dist/components/navigation/index.cjs +9 -9
  39. package/dist/components/onboarding-guides/index.cjs +8 -8
  40. package/dist/components/product-demo/index.cjs +7 -7
  41. package/dist/components/tickets/index.cjs +11 -11
  42. package/dist/components/ui/index.cjs +6 -6
  43. package/dist/{devices-AVRQGB2N.cjs → devices-ADQWD37J.cjs} +7 -7
  44. package/dist/{embeddable-chat-SNYQSMS7.cjs → embeddable-chat-7YF2JMPS.cjs} +65 -65
  45. package/dist/hooks/index.cjs +3 -3
  46. package/dist/index.cjs +10 -10
  47. package/dist/{knowledge-S3CNISQH.cjs → knowledge-TNS64EGK.cjs} +7 -7
  48. package/dist/{logs-WDLOKDXT.cjs → logs-754MDDE4.cjs} +14 -14
  49. package/dist/nats/index.cjs +2 -2
  50. package/dist/nats/nats.d.ts +33 -7
  51. package/dist/nats/nats.d.ts.map +1 -1
  52. package/dist/nats/nats.js +41 -11
  53. package/dist/{policies-STML7NEZ.cjs → policies-Q23DPIH6.cjs} +10 -10
  54. package/dist/{scripts-HO53VYGX.cjs → scripts-DCYLK2RZ.cjs} +11 -11
  55. package/dist/{software-update-4VTK7LWQ.cjs → software-update-XCMGUIER.cjs} +9 -9
  56. package/package.json +1 -1
  57. package/src/components/chat/hooks/use-jetstream-dialog-subscription.ts +59 -23
  58. package/src/components/chat/types/api.types.ts +27 -8
  59. package/src/components/chat/types/network.types.ts +2 -1
  60. package/src/nats/nats.ts +91 -20
@@ -51,7 +51,7 @@ var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
51
51
 
52
52
 
53
53
 
54
- var _chunk4FWURR3Wcjs = require('./chunk-4FWURR3W.cjs');
54
+ var _chunkVUWPLQBYcjs = require('./chunk-VUWPLQBY.cjs');
55
55
 
56
56
 
57
57
 
@@ -109,7 +109,7 @@ var _chunkYUMFVQINcjs = require('./chunk-YUMFVQIN.cjs');
109
109
 
110
110
 
111
111
 
112
- var _chunkWZX26ODJcjs = require('./chunk-WZX26ODJ.cjs');
112
+ var _chunkX4LAMJHDcjs = require('./chunk-X4LAMJHD.cjs');
113
113
 
114
114
 
115
115
 
@@ -131,7 +131,7 @@ var _chunkWZX26ODJcjs = require('./chunk-WZX26ODJ.cjs');
131
131
 
132
132
 
133
133
 
134
- var _chunkV3UJ6NDRcjs = require('./chunk-V3UJ6NDR.cjs');
134
+ var _chunkTPH4SRR2cjs = require('./chunk-TPH4SRR2.cjs');
135
135
 
136
136
 
137
137
 
@@ -664,7 +664,7 @@ function ThemeProvider({ children, ...overrides }) {
664
664
  var useTheme = _nextthemes.useTheme;
665
665
  function useThemeToggle() {
666
666
  const { resolvedTheme, theme, setTheme } = useTheme();
667
- const mounted = _chunkV3UJ6NDRcjs.useIsHydrated.call(void 0, );
667
+ const mounted = _chunkTPH4SRR2cjs.useIsHydrated.call(void 0, );
668
668
  const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
669
669
  const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
670
670
  const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
@@ -2332,7 +2332,7 @@ function InfoCardFooter({ footer }) {
2332
2332
  ] });
2333
2333
  }
2334
2334
  function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
2335
- const { copy, copied } = _chunk4FWURR3Wcjs.useCopyToClipboard.call(void 0, );
2335
+ const { copy, copied } = _chunkVUWPLQBYcjs.useCopyToClipboard.call(void 0, );
2336
2336
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 w-full items-center gap-[var(--spacing-system-xs)] self-stretch", children: [
2337
2337
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-primary text-h4", children: showLabel ? label : "" }),
2338
2338
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-divider" }),
@@ -4360,7 +4360,7 @@ function AdminFormDrawer({
4360
4360
  "form",
4361
4361
  {
4362
4362
  id: formId,
4363
- ..._chunkWZX26ODJcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4363
+ ..._chunkX4LAMJHDcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4364
4364
  className: "flex flex-col gap-[var(--spacing-system-lf)]",
4365
4365
  onSubmit: (e) => {
4366
4366
  e.preventDefault();
@@ -4467,7 +4467,7 @@ function AdminFormModal({
4467
4467
  "form",
4468
4468
  {
4469
4469
  id: formId,
4470
- ..._chunkWZX26ODJcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4470
+ ..._chunkX4LAMJHDcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
4471
4471
  className: "flex min-h-0 flex-1 flex-col",
4472
4472
  onSubmit: (e) => {
4473
4473
  e.preventDefault();
@@ -5780,7 +5780,7 @@ function EmbedViewerFrame({
5780
5780
  const controllerRef = _react.useRef.call(void 0, null);
5781
5781
  _react.useEffect.call(void 0, () => {
5782
5782
  if (!fullscreenControl) return void 0;
5783
- const controller = new (0, _chunkWZX26ODJcjs.FullscreenSwitchController)({
5783
+ const controller = new (0, _chunkX4LAMJHDcjs.FullscreenSwitchController)({
5784
5784
  target: () => frameRef.current,
5785
5785
  onFullscreenChange: setIsFullscreen
5786
5786
  });
@@ -5874,7 +5874,7 @@ var KIND_HEADING = {
5874
5874
  design: "Claude Design"
5875
5875
  };
5876
5876
  function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }) {
5877
- const { src: mirrorSrc, status } = _chunk4FWURR3Wcjs.useClaudeMirrorSrc.call(void 0, url);
5877
+ const { src: mirrorSrc, status } = _chunkVUWPLQBYcjs.useClaudeMirrorSrc.call(void 0, url);
5878
5878
  const isProbing = status === "probing";
5879
5879
  const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkW2RM764Dcjs.toClaudeEmbedUrl.call(void 0, url)));
5880
5880
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -6977,7 +6977,7 @@ var formatTimeAgo = (timestamp) => {
6977
6977
  return `${Math.floor(diffSeconds / 86400)}d ago`;
6978
6978
  };
6979
6979
  function RedditEmbedClient({ url, maxWidth = 700, rel }) {
6980
- const postLinkRel = _chunkV3UJ6NDRcjs.renderedLinkRel.call(void 0, rel, true);
6980
+ const postLinkRel = _chunkTPH4SRR2cjs.renderedLinkRel.call(void 0, rel, true);
6981
6981
  const { redditProxyUrl } = useRichMarkdownRuntime();
6982
6982
  const [redditData, setRedditData] = _react.useState.call(void 0, null);
6983
6983
  const [loading, setLoading] = _react.useState.call(void 0, true);
@@ -7309,7 +7309,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
7309
7309
  ] });
7310
7310
  var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
7311
7311
  function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
7312
- const postLinkRel = _chunkV3UJ6NDRcjs.renderedLinkRel.call(void 0, rel, true);
7312
+ const postLinkRel = _chunkTPH4SRR2cjs.renderedLinkRel.call(void 0, rel, true);
7313
7313
  const { twitterProxyUrl } = useRichMarkdownRuntime();
7314
7314
  const [tweetData, setTweetData] = _react.useState.call(void 0, null);
7315
7315
  const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
@@ -7511,7 +7511,7 @@ function buildRichEmbedOverrides({
7511
7511
  ogEndpointPath,
7512
7512
  textSizes
7513
7513
  }) {
7514
- const standard = _chunkV3UJ6NDRcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7514
+ const standard = _chunkTPH4SRR2cjs.buildStandardLeafRenderers.call(void 0, { textSizes });
7515
7515
  return {
7516
7516
  // Fence-language embeds (```youtube-embed etc.); everything else
7517
7517
  // (mermaid, highlighted blocks, inline code) falls through to `standard`.
@@ -7647,13 +7647,13 @@ function buildRichEmbedOverrides({
7647
7647
  // rich-markdown runtime (Supabase optimization on the hub, identity
7648
7648
  // elsewhere). Guard against empty `![]()`.
7649
7649
  img: ({ src, alt }) => {
7650
- if (!_chunkV3UJ6NDRcjs.hasRenderableSrc.call(void 0, src)) return null;
7650
+ if (!_chunkTPH4SRR2cjs.hasRenderableSrc.call(void 0, src)) return null;
7651
7651
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
7652
7652
  },
7653
7653
  // Raw <video> tags in stored content (blog publisher injection) route
7654
7654
  // to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
7655
7655
  video: ({ src, poster, className }) => {
7656
- if (!_chunkV3UJ6NDRcjs.hasRenderableSrc.call(void 0, src)) return null;
7656
+ if (!_chunkTPH4SRR2cjs.hasRenderableSrc.call(void 0, src)) return null;
7657
7657
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOFO75R2Ocjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
7658
7658
  }
7659
7659
  };
@@ -7762,7 +7762,7 @@ var processShortcodes = (content) => {
7762
7762
  try {
7763
7763
  const urlObj = new URL(url);
7764
7764
  const hostname = urlObj.hostname.toLowerCase();
7765
- const hostIs = (domain) => _chunkWZX26ODJcjs.hostMatches.call(void 0, hostname, domain);
7765
+ const hostIs = (domain) => _chunkX4LAMJHDcjs.hostMatches.call(void 0, hostname, domain);
7766
7766
  const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
7767
7767
  if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
7768
7768
  return match;
@@ -7837,13 +7837,13 @@ var RichMarkdownInner = ({
7837
7837
  },
7838
7838
  [resolveLinkEndpointUrl, resolveSource]
7839
7839
  );
7840
- const textSizes = _react.useMemo.call(void 0, () => _chunkV3UJ6NDRcjs.resolveTextSizeConfig.call(void 0, "article"), []);
7840
+ const textSizes = _react.useMemo.call(void 0, () => _chunkTPH4SRR2cjs.resolveTextSizeConfig.call(void 0, "article"), []);
7841
7841
  const componentOverrides = _react.useMemo.call(void 0,
7842
7842
  () => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
7843
7843
  [ogApiBaseUrl, ogEndpointPath, textSizes]
7844
7844
  );
7845
7845
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
7846
- _chunkV3UJ6NDRcjs.MarkdownEngine,
7846
+ _chunkTPH4SRR2cjs.MarkdownEngine,
7847
7847
  {
7848
7848
  content,
7849
7849
  className,
@@ -7865,7 +7865,7 @@ var RichMarkdownRendererImpl = ({
7865
7865
  className = "",
7866
7866
  sectionIds,
7867
7867
  onInternalLinkClick,
7868
- brokenLinks = _chunkV3UJ6NDRcjs.NO_BROKEN_LINKS,
7868
+ brokenLinks = _chunkTPH4SRR2cjs.NO_BROKEN_LINKS,
7869
7869
  currentPath,
7870
7870
  resolveSource = "openframe-docs",
7871
7871
  resolveLinkEndpointUrl = "/api/docs/resolve-link",
@@ -8833,7 +8833,7 @@ function FilterModal({
8833
8833
  const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _147 => _147.defaultSort]), () => ( "desc"));
8834
8834
  const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _148 => _148.sort]), () => ( dateDefaultSort)));
8835
8835
  const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _149 => _149.range]));
8836
- const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkV3UJ6NDRcjs.useScrollFade.call(void 0, );
8836
+ const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkTPH4SRR2cjs.useScrollFade.call(void 0, );
8837
8837
  const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
8838
8838
  const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
8839
8839
  _react.useEffect.call(void 0, () => {
@@ -8979,8 +8979,8 @@ function FilterModal({
8979
8979
  ] })
8980
8980
  }
8981
8981
  ),
8982
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
8983
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
8982
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
8983
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
8984
8984
  ] })
8985
8985
  }
8986
8986
  ),
@@ -9459,7 +9459,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
9459
9459
 
9460
9460
 
9461
9461
  function PlatformBrowseButton({ item }) {
9462
- const linkProps = _chunkV3UJ6NDRcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
9462
+ const linkProps = _chunkTPH4SRR2cjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
9463
9463
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", linkProps, rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-4 w-4" }), children: [
9464
9464
  "Browse ",
9465
9465
  item.buttonText
@@ -9926,10 +9926,10 @@ var OSTypeBadge = ({
9926
9926
  if (!osType) {
9927
9927
  return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
9928
9928
  }
9929
- const normalized = _chunkWZX26ODJcjs.normalizeOSType.call(void 0, osType);
9929
+ const normalized = _chunkX4LAMJHDcjs.normalizeOSType.call(void 0, osType);
9930
9930
  if (!normalized && !labelOnly) return null;
9931
- const label = _chunkWZX26ODJcjs.getOSLabel.call(void 0, osType);
9932
- const IconComponent = _chunkWZX26ODJcjs.getOSIcon.call(void 0, osType);
9931
+ const label = _chunkX4LAMJHDcjs.getOSLabel.call(void 0, osType);
9932
+ const IconComponent = _chunkX4LAMJHDcjs.getOSIcon.call(void 0, osType);
9933
9933
  if (iconOnly && IconComponent) {
9934
9934
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk3ATAYP36cjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
9935
9935
  }
@@ -10170,7 +10170,7 @@ function ComplianceLogo({
10170
10170
  fallback = null,
10171
10171
  className
10172
10172
  }) {
10173
- const standard = _chunkWZX26ODJcjs.complianceStandardForName.call(void 0, ...names);
10173
+ const standard = _chunkX4LAMJHDcjs.complianceStandardForName.call(void 0, ...names);
10174
10174
  if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
10175
10175
  const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
10176
10176
  return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -10913,7 +10913,7 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
10913
10913
  }
10914
10914
  function ServiceCardRowItem({ row }) {
10915
10915
  const [revealed, setRevealed] = _react.useState.call(void 0, false);
10916
- const { copy, copied } = _chunk4FWURR3Wcjs.useCopyToClipboard.call(void 0, );
10916
+ const { copy, copied } = _chunkVUWPLQBYcjs.useCopyToClipboard.call(void 0, );
10917
10917
  const { ref: valueRef, isTruncated: valueTruncated } = _chunkKTPR66EEcjs.useIsTruncated.call(void 0, row.value);
10918
10918
  const actions = _react.useMemo.call(void 0,
10919
10919
  () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }),
@@ -11787,7 +11787,7 @@ function TableHeader({
11787
11787
  onFilterChange
11788
11788
  }
11789
11789
  ),
11790
- column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.InfoHint, { label: column.label, children: column.hint }) : null
11790
+ column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.InfoHint, { label: column.label, children: column.hint }) : null
11791
11791
  ] })
11792
11792
  ) : (
11793
11793
  /* Non-filterable column — regular label with optional sort */
@@ -11813,7 +11813,7 @@ function TableHeader({
11813
11813
  hint exists, so a hint-less header keeps its DOM. */
11814
11814
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
11815
11815
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
11816
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.InfoHint, { label: column.label, children: column.hint })
11816
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.InfoHint, { label: column.label, children: column.hint })
11817
11817
  ] })
11818
11818
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
11819
11819
  getSortIcon(column)
@@ -13162,7 +13162,7 @@ function HeaderCell({ header, sort, onSortChange }) {
13162
13162
  // child of the cell.
13163
13163
  _optionalChain([meta, 'optionalAccess', _235 => _235.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
13164
13164
  filterTrigger,
13165
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13165
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13166
13166
  ] }) : filterTrigger
13167
13167
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
13168
13168
  "div",
@@ -13187,7 +13187,7 @@ function HeaderCell({ header, sort, onSortChange }) {
13187
13187
  // centred on the row.
13188
13188
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
13189
13189
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
13190
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13190
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
13191
13191
  ] })
13192
13192
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
13193
13193
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -13407,7 +13407,7 @@ function PhoneInput({
13407
13407
  placeholder = "Phone Number (optional)",
13408
13408
  onKeyDown
13409
13409
  }) {
13410
- const { priority, others } = _react.useMemo.call(void 0, () => _chunkWZX26ODJcjs.getCountryPhoneData.call(void 0, ), []);
13410
+ const { priority, others } = _react.useMemo.call(void 0, () => _chunkX4LAMJHDcjs.getCountryPhoneData.call(void 0, ), []);
13411
13411
  const selectedCountry = _react.useMemo.call(void 0,
13412
13412
  () => [...priority, ...others].find((c) => c.code === countryCode),
13413
13413
  [countryCode, priority, others]
@@ -13422,7 +13422,7 @@ function PhoneInput({
13422
13422
  _optionalChain([onValidationChange, 'optionalCall', _248 => _248(false)]);
13423
13423
  return;
13424
13424
  }
13425
- const invalid = !_chunkWZX26ODJcjs.validatePhoneNumber.call(void 0, phone, countryCode);
13425
+ const invalid = !_chunkX4LAMJHDcjs.validatePhoneNumber.call(void 0, phone, countryCode);
13426
13426
  setIsInvalid(invalid);
13427
13427
  _optionalChain([onValidationChange, 'optionalCall', _249 => _249(invalid)]);
13428
13428
  },
@@ -14281,7 +14281,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
14281
14281
  ),
14282
14282
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
14283
14283
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14284
- _chunkV3UJ6NDRcjs.TabSelector,
14284
+ _chunkTPH4SRR2cjs.TabSelector,
14285
14285
  {
14286
14286
  label: "Search engines",
14287
14287
  value: choice,
@@ -14338,7 +14338,7 @@ function useMarkdownLinkCommand() {
14338
14338
  buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
14339
14339
  icon: command.icon,
14340
14340
  execute: (state, api) => {
14341
- const existing = _chunkV3UJ6NDRcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
14341
+ const existing = _chunkTPH4SRR2cjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
14342
14342
  setPending(
14343
14343
  existing ? {
14344
14344
  api,
@@ -14369,7 +14369,7 @@ function useMarkdownLinkCommand() {
14369
14369
  initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _306 => _306.initial]), () => ( EMPTY_LINK)),
14370
14370
  editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _307 => _307.editing]), () => ( false)),
14371
14371
  onSubmit: (link) => {
14372
- if (pending) write(pending, _chunkV3UJ6NDRcjs.formatMarkdownLink.call(void 0, link));
14372
+ if (pending) write(pending, _chunkTPH4SRR2cjs.formatMarkdownLink.call(void 0, link));
14373
14373
  },
14374
14374
  onRemove: () => {
14375
14375
  if (pending) write(pending, pending.initial.text);
@@ -15680,7 +15680,7 @@ var SKELETON_COLUMNS = 6;
15680
15680
  function TestResultsSkeleton({
15681
15681
  region = true
15682
15682
  } = {}) {
15683
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUGCRLRCTcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
15683
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUGCRLRCTcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
15684
15684
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { className: "h-4 w-3/4 rounded-sm" }) }, `skeleton-header-${i}`)) }),
15685
15685
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] content-md:h-[78px]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[160px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { className: "h-5 w-3/4 rounded-sm" }) }, `skeleton-cell-${i}`)) }) })
15686
15686
  ] }) }) });
@@ -15715,13 +15715,13 @@ function TestResultsTable({ rows, loading }) {
15715
15715
  if (loading) {
15716
15716
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
15717
15717
  }
15718
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
15718
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
15719
15719
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
15720
15720
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
15721
15721
  ] }) }) });
15722
15722
  }
15723
15723
  function TestRunErrorBanner({ error, className }) {
15724
- const { copy } = _chunk4FWURR3Wcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
15724
+ const { copy } = _chunkVUWPLQBYcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
15725
15725
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
15726
15726
  "div",
15727
15727
  {
@@ -16198,7 +16198,7 @@ function TicketInfoSection({
16198
16198
  expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16199
16199
  createdAt && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-bg px-4 py-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: createdAt, label: "Created" }) }),
16200
16200
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
16201
- description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.SimpleMarkdownRenderer, { content: description }),
16201
+ description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.SimpleMarkdownRenderer, { content: description }),
16202
16202
  attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
16203
16203
  tags && tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Tags", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
16204
16204
  (notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -16658,7 +16658,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
16658
16658
  gap: COLUMN_GAP_PX
16659
16659
  };
16660
16660
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunk3ATAYP36cjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16661
- _chunkV3UJ6NDRcjs.MarqueeWall,
16661
+ _chunkTPH4SRR2cjs.MarqueeWall,
16662
16662
  {
16663
16663
  axis: "y",
16664
16664
  reverse: index % 2 === 1,
@@ -17070,7 +17070,7 @@ var TRIAL_TERM_ICONS = {
17070
17070
  };
17071
17071
  var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
17072
17072
  function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
17073
- const labels = _chunkWZX26ODJcjs.trialLabels.call(void 0, trialDays);
17073
+ const labels = _chunkX4LAMJHDcjs.trialLabels.call(void 0, trialDays);
17074
17074
  return terms.flatMap((term) => {
17075
17075
  const label = labels[term];
17076
17076
  return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
@@ -17310,7 +17310,7 @@ function SnapCarousel({
17310
17310
  }, [count, slideStep]);
17311
17311
  const canAutoAdvance = autoAdvanceMs > 0 && count > 1;
17312
17312
  const playing = auto.playing && canAutoAdvance;
17313
- const ranMs = _chunk4FWURR3Wcjs.useResumableTimeout.call(void 0, {
17313
+ const ranMs = _chunkVUWPLQBYcjs.useResumableTimeout.call(void 0, {
17314
17314
  running: playing,
17315
17315
  durationMs: autoAdvanceMs,
17316
17316
  resetKey: index,
@@ -17671,10 +17671,10 @@ function AccountDetailsFields({
17671
17671
  onKeyDown,
17672
17672
  layout = "stacked"
17673
17673
  }) {
17674
- const firstNameErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _365 => _365.firstName]), firstName);
17675
- const lastNameErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _366 => _366.lastName]), lastName);
17676
- const passwordErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _367 => _367.password]), password);
17677
- const confirmErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _368 => _368.confirmPassword]), confirmPassword);
17674
+ const firstNameErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _365 => _365.firstName]), firstName);
17675
+ const lastNameErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _366 => _366.lastName]), lastName);
17676
+ const passwordErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _367 => _367.password]), password);
17677
+ const confirmErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _368 => _368.confirmPassword]), confirmPassword);
17678
17678
  const names = [
17679
17679
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
17680
17680
  _chunkHTRILBJDcjs.Input,
@@ -18121,9 +18121,9 @@ function CreateOrganizationForm({
18121
18121
  }) {
18122
18122
  const hasSso = !!ssoProviders && ssoProviders.length > 0;
18123
18123
  const fieldsDisabled = disabled || loading;
18124
- const emailErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _370 => _370.email]), _nullishCoalesce(email, () => ( "")));
18125
- const orgNameErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _371 => _371.organizationName]), organizationName);
18126
- const domainErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _372 => _372.domain]), domain);
18124
+ const emailErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _370 => _370.email]), _nullishCoalesce(email, () => ( "")));
18125
+ const orgNameErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _371 => _371.organizationName]), organizationName);
18126
+ const domainErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _372 => _372.domain]), domain);
18127
18127
  const handleKeyDown = (event) => {
18128
18128
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
18129
18129
  onSubmit();
@@ -18342,7 +18342,7 @@ function LoginForm({
18342
18342
  }) {
18343
18343
  const fieldDisabled = disabled || loading;
18344
18344
  const providersDisabled = fieldDisabled || ssoDisabled;
18345
- const emailErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _379 => _379.email]), email);
18345
+ const emailErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _379 => _379.email]), email);
18346
18346
  const handleKeyDown = (event) => {
18347
18347
  if (event.key !== "Enter" || event.repeat || fieldDisabled) return;
18348
18348
  if (onSubmitClick) {
@@ -18519,8 +18519,8 @@ function OpenFrameSsoLoginForm({
18519
18519
  className
18520
18520
  }) {
18521
18521
  const fieldsDisabled = disabled || loading;
18522
- const emailErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _383 => _383.email]), email);
18523
- const passwordErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _384 => _384.password]), password);
18522
+ const emailErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _383 => _383.email]), email);
18523
+ const passwordErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _384 => _384.password]), password);
18524
18524
  const handleKeyDown = (event) => {
18525
18525
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
18526
18526
  onSubmit();
@@ -18625,7 +18625,7 @@ function OpenFrameSsoSignUpForm({
18625
18625
  className
18626
18626
  }) {
18627
18627
  const fieldsDisabled = disabled || loading;
18628
- const emailErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _385 => _385.email]), email);
18628
+ const emailErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _385 => _385.email]), email);
18629
18629
  const handleKeyDown = (event) => {
18630
18630
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
18631
18631
  onSubmit();
@@ -18730,8 +18730,8 @@ function PasswordResetForm({
18730
18730
  className
18731
18731
  }) {
18732
18732
  const fieldsDisabled = disabled || loading;
18733
- const passwordErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _386 => _386.password]), password);
18734
- const confirmErr = _chunk4FWURR3Wcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _387 => _387.confirmPassword]), confirmPassword);
18733
+ const passwordErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _386 => _386.password]), password);
18734
+ const confirmErr = _chunkVUWPLQBYcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _387 => _387.confirmPassword]), confirmPassword);
18735
18735
  const handleKeyDown = (event) => {
18736
18736
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
18737
18737
  onSubmit();
@@ -22266,14 +22266,14 @@ var MODEL_TOKEN_RATES_COPY = {
22266
22266
  empty: "No token rates are in effect right now."
22267
22267
  };
22268
22268
  function providerMark(providerType, stated, className) {
22269
- const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0, _chunkWZX26ODJcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
22269
+ const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0, _chunkX4LAMJHDcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
22270
22270
  return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
22271
22271
  }
22272
22272
  var PAD_X = "px-[var(--spacing-system-s)]";
22273
22273
  var ROW = "flex items-center gap-[var(--spacing-system-s)]";
22274
22274
  var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
22275
22275
  function useProviderGroup(rates) {
22276
- const groups = _chunkWZX26ODJcjs.groupTokenRatesByProvider.call(void 0, rates);
22276
+ const groups = _chunkX4LAMJHDcjs.groupTokenRatesByProvider.call(void 0, rates);
22277
22277
  const [picked, setPicked] = _react.useState.call(void 0, null);
22278
22278
  return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
22279
22279
  }
@@ -22284,7 +22284,7 @@ function ProviderTabs({
22284
22284
  className
22285
22285
  }) {
22286
22286
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22287
- _chunkV3UJ6NDRcjs.TabSelector,
22287
+ _chunkTPH4SRR2cjs.TabSelector,
22288
22288
  {
22289
22289
  variant: "secondary",
22290
22290
  scrollable: true,
@@ -22292,7 +22292,7 @@ function ProviderTabs({
22292
22292
  onValueChange,
22293
22293
  items: groups.map((candidate) => ({
22294
22294
  id: candidate.providerType,
22295
- label: _chunkWZX26ODJcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _443 => _443.rates, 'access', _444 => _444[0], 'optionalAccess', _445 => _445.providerLabel])),
22295
+ label: _chunkX4LAMJHDcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _443 => _443.rates, 'access', _444 => _444[0], 'optionalAccess', _445 => _445.providerLabel])),
22296
22296
  icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _446 => _446.rates, 'access', _447 => _447[0], 'optionalAccess', _448 => _448.providerIcon]), "size-full")
22297
22297
  })),
22298
22298
  className
@@ -22393,8 +22393,8 @@ function ModelTokenRatesTable({ rates }) {
22393
22393
  className: _chunk3ATAYP36cjs.cn.call(void 0, ROW, PAD_X, "py-[var(--spacing-system-xxs)] text-ods-text-primary text-h6"),
22394
22394
  children: [
22395
22395
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
22396
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkWZX26ODJcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
22397
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkWZX26ODJcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
22396
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkX4LAMJHDcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
22397
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkX4LAMJHDcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
22398
22398
  ]
22399
22399
  },
22400
22400
  rate.modelName
@@ -22460,7 +22460,7 @@ function modelOption(rate) {
22460
22460
  return {
22461
22461
  label: rate.displayName || rate.modelName,
22462
22462
  value: rate.modelName,
22463
- description: _chunkWZX26ODJcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
22463
+ description: _chunkX4LAMJHDcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
22464
22464
  icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
22465
22465
  };
22466
22466
  }
@@ -22514,8 +22514,8 @@ function ModelTokenExchange({
22514
22514
  const [chosen, setChosen] = _react.useState.call(void 0, null);
22515
22515
  const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _449 => _449.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
22516
22516
  const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
22517
- const tokens = _chunkWZX26ODJcjs.formatTokenAmount.call(void 0, balance);
22518
- const cost = _chunkWZX26ODJcjs.tokenCost.call(void 0, balance, tokenPrice);
22517
+ const tokens = _chunkX4LAMJHDcjs.formatTokenAmount.call(void 0, balance);
22518
+ const cost = _chunkX4LAMJHDcjs.tokenCost.call(void 0, balance, tokenPrice);
22519
22519
  const balancePrice = cost === null ? null : _chunkJHQNUWFMcjs.formatPrice.call(void 0, cost);
22520
22520
  const model = rate ? rate.displayName || rate.modelName : "";
22521
22521
  const options = models.map(modelOption);
@@ -22557,7 +22557,7 @@ function ModelTokenExchange({
22557
22557
  variant: preset.tokens === balance ? "accent" : "outline",
22558
22558
  size: "small",
22559
22559
  onClick: () => setChosen(preset.tokens),
22560
- children: copy.buy.preset(_chunkWZX26ODJcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
22560
+ children: copy.buy.preset(_chunkX4LAMJHDcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
22561
22561
  },
22562
22562
  preset.label
22563
22563
  )) })
@@ -22576,7 +22576,7 @@ function ModelTokenExchange({
22576
22576
  const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _450 => _450.providerType]) === providerType ? rate : null)));
22577
22577
  return {
22578
22578
  id: providerType,
22579
- name: _chunkWZX26ODJcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _451 => _451.providerLabel])),
22579
+ name: _chunkX4LAMJHDcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _451 => _451.providerLabel])),
22580
22580
  icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _452 => _452.providerIcon]), "size-8 text-ods-text-secondary")
22581
22581
  };
22582
22582
  }),
@@ -22614,7 +22614,7 @@ function ModelTokenExchange({
22614
22614
  {
22615
22615
  size: "plain",
22616
22616
  loading,
22617
- figure: _chunkWZX26ODJcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _457 => _457.inputTokenRate])),
22617
+ figure: _chunkX4LAMJHDcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _457 => _457.inputTokenRate])),
22618
22618
  words: copy.charge.input
22619
22619
  }
22620
22620
  ),
@@ -22623,7 +22623,7 @@ function ModelTokenExchange({
22623
22623
  {
22624
22624
  size: "plain",
22625
22625
  loading,
22626
- figure: _chunkWZX26ODJcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _458 => _458.outputTokenRate])),
22626
+ figure: _chunkX4LAMJHDcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _458 => _458.outputTokenRate])),
22627
22627
  words: copy.charge.output
22628
22628
  }
22629
22629
  )
@@ -22635,9 +22635,9 @@ function ModelTokenExchange({
22635
22635
  className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
22636
22636
  children: [
22637
22637
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[2lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-full max-w-xs") }) : copy.charge.so(_nullishCoalesce(balancePrice, () => ( copy.buy.tokens(tokens))), model) }),
22638
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-40") }) : _chunkWZX26ODJcjs.formatTokenAmount.call(void 0, _chunkWZX26ODJcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
22638
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-40") }) : _chunkX4LAMJHDcjs.formatTokenAmount.call(void 0, _chunkX4LAMJHDcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
22639
22639
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
22640
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-48") }) : copy.charge.orWritten(_chunkWZX26ODJcjs.formatTokenAmount.call(void 0, _chunkWZX26ODJcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
22640
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2YXOD2KLcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-48") }) : copy.charge.orWritten(_chunkX4LAMJHDcjs.formatTokenAmount.call(void 0, _chunkX4LAMJHDcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
22641
22641
  ]
22642
22642
  }
22643
22643
  )
@@ -23135,14 +23135,14 @@ var ConfidenceBadge = ({
23135
23135
  size = "sm",
23136
23136
  className
23137
23137
  }) => {
23138
- const level = _chunkWZX26ODJcjs.getConfidenceLevel.call(void 0, confidence);
23138
+ const level = _chunkX4LAMJHDcjs.getConfidenceLevel.call(void 0, confidence);
23139
23139
  if (level === "none") {
23140
23140
  return null;
23141
23141
  }
23142
- const label = _chunkWZX26ODJcjs.getConfidenceLabel.call(void 0, confidence);
23143
- const borderClass = _chunkWZX26ODJcjs.getConfidenceBorderClass.call(void 0, confidence);
23144
- const textClass = _chunkWZX26ODJcjs.getConfidenceTextClass.call(void 0, confidence);
23145
- const bgClass = _chunkWZX26ODJcjs.getConfidenceBgClass.call(void 0, confidence);
23142
+ const label = _chunkX4LAMJHDcjs.getConfidenceLabel.call(void 0, confidence);
23143
+ const borderClass = _chunkX4LAMJHDcjs.getConfidenceBorderClass.call(void 0, confidence);
23144
+ const textClass = _chunkX4LAMJHDcjs.getConfidenceTextClass.call(void 0, confidence);
23145
+ const bgClass = _chunkX4LAMJHDcjs.getConfidenceBgClass.call(void 0, confidence);
23146
23146
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
23147
23147
  "span",
23148
23148
  {
@@ -23193,9 +23193,9 @@ function SEOEditorPreview({
23193
23193
  const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
23194
23194
  const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
23195
23195
  const seoTitleLength = (seoTitle || "").length;
23196
- const seoTitleTooLong = seoTitleLength > _chunkWZX26ODJcjs.SEO_TITLE_MAX_LENGTH;
23196
+ const seoTitleTooLong = seoTitleLength > _chunkX4LAMJHDcjs.SEO_TITLE_MAX_LENGTH;
23197
23197
  const seoDescriptionLength = (seoDescription || "").length;
23198
- const seoDescriptionTooLong = seoDescriptionLength > _chunkWZX26ODJcjs.SEO_DESCRIPTION_MAX_LENGTH;
23198
+ const seoDescriptionTooLong = seoDescriptionLength > _chunkX4LAMJHDcjs.SEO_DESCRIPTION_MAX_LENGTH;
23199
23199
  const displayTitle = seoTitle.trim() || title || "Untitled";
23200
23200
  const displayDescription = seoDescription.trim() || summary || "No description";
23201
23201
  const hasOgImage = ogImageUrl.trim();
@@ -23220,10 +23220,10 @@ function SEOEditorPreview({
23220
23220
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
23221
23221
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23222
23222
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23223
- _chunkWZX26ODJcjs.Field,
23223
+ _chunkX4LAMJHDcjs.Field,
23224
23224
  {
23225
23225
  label: "SEO Title",
23226
- error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkWZX26ODJcjs.SEO_TITLE_MAX_LENGTH})` : null,
23226
+ error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkX4LAMJHDcjs.SEO_TITLE_MAX_LENGTH})` : null,
23227
23227
  labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
23228
23228
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
23229
23229
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
@@ -23238,7 +23238,7 @@ function SEOEditorPreview({
23238
23238
  children: [
23239
23239
  seoTitleLength,
23240
23240
  "/",
23241
- _chunkWZX26ODJcjs.SEO_TITLE_MAX_LENGTH
23241
+ _chunkX4LAMJHDcjs.SEO_TITLE_MAX_LENGTH
23242
23242
  ]
23243
23243
  }
23244
23244
  ),
@@ -23249,7 +23249,7 @@ function SEOEditorPreview({
23249
23249
  value: seoTitle || "",
23250
23250
  onChange: (e) => onSeoTitleChange(e.target.value),
23251
23251
  disabled,
23252
- maxLength: _chunkWZX26ODJcjs.SEO_TITLE_MAX_LENGTH,
23252
+ maxLength: _chunkX4LAMJHDcjs.SEO_TITLE_MAX_LENGTH,
23253
23253
  invalid: seoTitleTooLong,
23254
23254
  placeholder: "Enter SEO meta title...",
23255
23255
  className: "border-ods-border bg-ods-bg text-ods-text-primary"
@@ -23260,7 +23260,7 @@ function SEOEditorPreview({
23260
23260
  !seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
23261
23261
  ] }),
23262
23262
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23263
- _chunkWZX26ODJcjs.Field,
23263
+ _chunkX4LAMJHDcjs.Field,
23264
23264
  {
23265
23265
  label: "SEO Keywords",
23266
23266
  labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -23292,10 +23292,10 @@ function SEOEditorPreview({
23292
23292
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
23293
23293
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
23294
23294
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23295
- _chunkWZX26ODJcjs.Field,
23295
+ _chunkX4LAMJHDcjs.Field,
23296
23296
  {
23297
23297
  label: "SEO Description",
23298
- error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkWZX26ODJcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
23298
+ error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkX4LAMJHDcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
23299
23299
  labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
23300
23300
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
23301
23301
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -23318,7 +23318,7 @@ function SEOEditorPreview({
23318
23318
  children: [
23319
23319
  seoDescriptionLength,
23320
23320
  "/",
23321
- _chunkWZX26ODJcjs.SEO_DESCRIPTION_MAX_LENGTH
23321
+ _chunkX4LAMJHDcjs.SEO_DESCRIPTION_MAX_LENGTH
23322
23322
  ]
23323
23323
  }
23324
23324
  ),
@@ -23329,7 +23329,7 @@ function SEOEditorPreview({
23329
23329
  value: seoDescription || "",
23330
23330
  onChange: (e) => onSeoDescriptionChange(e.target.value),
23331
23331
  disabled,
23332
- maxLength: _chunkWZX26ODJcjs.SEO_DESCRIPTION_MAX_LENGTH,
23332
+ maxLength: _chunkX4LAMJHDcjs.SEO_DESCRIPTION_MAX_LENGTH,
23333
23333
  invalid: seoDescriptionTooLong,
23334
23334
  placeholder: "Enter SEO meta description...",
23335
23335
  className: _chunk3ATAYP36cjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
@@ -23482,7 +23482,7 @@ function socialIcon(platform) {
23482
23482
  return _nullishCoalesce(_chunkKTPR66EEcjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
23483
23483
  }
23484
23484
  function renderSocialIcon(platform) {
23485
- const key = _nullishCoalesce(_chunkWZX26ODJcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
23485
+ const key = _nullishCoalesce(_chunkX4LAMJHDcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
23486
23486
  const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
23487
23487
  return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
23488
23488
  }
@@ -23565,7 +23565,7 @@ function SocialLinksManager({
23565
23565
  };
23566
23566
  const getIcon = (link, platform) => {
23567
23567
  const iconKey = _optionalChain([platform, 'optionalAccess', _468 => _468.icon_name]) || link.platform;
23568
- const key = _chunkWZX26ODJcjs.normalizeSocialPlatform.call(void 0, iconKey);
23568
+ const key = _chunkX4LAMJHDcjs.normalizeSocialPlatform.call(void 0, iconKey);
23569
23569
  if (!key) return null;
23570
23570
  const icon = socialIcon(key);
23571
23571
  return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
@@ -23975,7 +23975,7 @@ function VideoBitesDisplay({
23975
23975
  filterPublished = true,
23976
23976
  showTitle = true
23977
23977
  }) {
23978
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV3UJ6NDRcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
23978
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTPH4SRR2cjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
23979
23979
  }
23980
23980
 
23981
23981
  // src/components/features/walkthrough-video.tsx
@@ -24003,7 +24003,7 @@ function WalkthroughVideo({
24003
24003
  onOpenChange,
24004
24004
  defaultOpen,
24005
24005
  defaultOpenPaused,
24006
- deepLinkParam = _chunkWZX26ODJcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
24006
+ deepLinkParam = _chunkX4LAMJHDcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
24007
24007
  autoPlayCard = false,
24008
24008
  label = "Play Demo Video",
24009
24009
  placement,
@@ -24019,7 +24019,7 @@ function WalkthroughVideo({
24019
24019
  }) {
24020
24020
  const inline = placement === "inline";
24021
24021
  const dismissEnabled = dismissal !== false;
24022
- const storageKey = dismissEnabled && dismissal.storageKey || _chunkWZX26ODJcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
24022
+ const storageKey = dismissEnabled && dismissal.storageKey || _chunkX4LAMJHDcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
24023
24023
  const dismissalId = _optionalChain([video, 'optionalAccess', _474 => _474.id]) != null ? String(video.id) : "dismissed";
24024
24024
  const [mounted, setMounted] = _react.useState.call(void 0, false);
24025
24025
  const [dismissed, setDismissed] = _react.useState.call(void 0, false);
@@ -24031,7 +24031,7 @@ function WalkthroughVideo({
24031
24031
  let delayElapsed = false;
24032
24032
  let interacted = inline;
24033
24033
  const reveal = () => {
24034
- if (dismissEnabled && _chunkWZX26ODJcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
24034
+ if (dismissEnabled && _chunkX4LAMJHDcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
24035
24035
  setDismissed(true);
24036
24036
  return;
24037
24037
  }
@@ -24068,7 +24068,7 @@ function WalkthroughVideo({
24068
24068
  if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
24069
24069
  };
24070
24070
  }, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
24071
- const hydrated = _chunkV3UJ6NDRcjs.useIsHydrated.call(void 0, );
24071
+ const hydrated = _chunkTPH4SRR2cjs.useIsHydrated.call(void 0, );
24072
24072
  const previewSuppressed = _react.useMemo.call(void 0, () => {
24073
24073
  if (!hydrated) return false;
24074
24074
  try {
@@ -24318,7 +24318,7 @@ function WalkthroughVideo({
24318
24318
  (e) => {
24319
24319
  e.stopPropagation();
24320
24320
  pausePreviewNow();
24321
- if (dismissEnabled) _chunkWZX26ODJcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
24321
+ if (dismissEnabled) _chunkX4LAMJHDcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
24322
24322
  setDismissed(true);
24323
24323
  },
24324
24324
  [dismissEnabled, storageKey, dismissalId, pausePreviewNow]
@@ -24491,7 +24491,7 @@ function WalkthroughVideo({
24491
24491
  `card-${embedUrlKey}`
24492
24492
  ) }),
24493
24493
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24494
- _chunkV3UJ6NDRcjs.CardHitLayer,
24494
+ _chunkTPH4SRR2cjs.CardHitLayer,
24495
24495
  {
24496
24496
  label: video.title ? `${label}: ${video.title}` : label,
24497
24497
  onPointerDown: pausePreviewNow,
@@ -24657,7 +24657,7 @@ function InlineWalkthroughVideo(props) {
24657
24657
  var _reactquery = require('@tanstack/react-query');
24658
24658
  function useWalkthroughVideo(opts) {
24659
24659
  const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
24660
- const captions = _chunkV3UJ6NDRcjs.useCaptions.call(void 0, );
24660
+ const captions = _chunkTPH4SRR2cjs.useCaptions.call(void 0, );
24661
24661
  const query = _reactquery.useQuery.call(void 0, {
24662
24662
  queryKey: ["walkthrough-video", endpoint],
24663
24663
  enabled,
@@ -25406,7 +25406,7 @@ function HighlightConfigSection({
25406
25406
  disabled = false,
25407
25407
  className = ""
25408
25408
  }) {
25409
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
25409
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
25410
25410
  _chunkALPRQ3ZXcjs.Select,
25411
25411
  {
25412
25412
  value: targetDurationSeconds.toString(),
@@ -25507,7 +25507,7 @@ var AIStatusIndicator = ({
25507
25507
  }) => {
25508
25508
  const config = statusConfig[status];
25509
25509
  const displayText = message || config.label;
25510
- const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkWZX26ODJcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
25510
+ const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkX4LAMJHDcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
25511
25511
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex items-center gap-2 rounded-lg px-3 py-1.5", config.bgColor, className), children: [
25512
25512
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25513
25513
  _chunkUNFCRSYIcjs.SparklesIcon,
@@ -25515,7 +25515,7 @@ var AIStatusIndicator = ({
25515
25515
  size: 16,
25516
25516
  className: _chunk3ATAYP36cjs.cn.call(void 0,
25517
25517
  status === "loading" && "animate-pulse",
25518
- confidence !== void 0 && status === "success" ? _chunkWZX26ODJcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
25518
+ confidence !== void 0 && status === "success" ? _chunkX4LAMJHDcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
25519
25519
  )
25520
25520
  }
25521
25521
  ),
@@ -25524,7 +25524,7 @@ var AIStatusIndicator = ({
25524
25524
  {
25525
25525
  className: _chunk3ATAYP36cjs.cn.call(void 0,
25526
25526
  "text-h6",
25527
- confidence !== void 0 && status === "success" ? _chunkWZX26ODJcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
25527
+ confidence !== void 0 && status === "success" ? _chunkX4LAMJHDcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
25528
25528
  ),
25529
25529
  children: displayText
25530
25530
  }
@@ -25534,8 +25534,8 @@ var AIStatusIndicator = ({
25534
25534
  {
25535
25535
  className: _chunk3ATAYP36cjs.cn.call(void 0,
25536
25536
  "rounded-full border px-2 py-0.5 text-h6",
25537
- _chunkWZX26ODJcjs.getConfidenceBorderClass.call(void 0, confidence),
25538
- _chunkWZX26ODJcjs.getConfidenceTextClass.call(void 0, confidence)
25537
+ _chunkX4LAMJHDcjs.getConfidenceBorderClass.call(void 0, confidence),
25538
+ _chunkX4LAMJHDcjs.getConfidenceTextClass.call(void 0, confidence)
25539
25539
  ),
25540
25540
  children: confidenceLabel
25541
25541
  }
@@ -26431,7 +26431,7 @@ function PoliciesTable({
26431
26431
  cell: ({ row }) => row.original.href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26432
26432
  _chunk2QMBXGMQcjs.Button,
26433
26433
  {
26434
- onClick: _chunkWZX26ODJcjs.openInNewTab.call(void 0, row.original.href),
26434
+ onClick: _chunkX4LAMJHDcjs.openInNewTab.call(void 0, row.original.href),
26435
26435
  variant: "outline",
26436
26436
  size: "icon",
26437
26437
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
@@ -26757,7 +26757,7 @@ function TenantsTableView({
26757
26757
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26758
26758
  _chunk2QMBXGMQcjs.Button,
26759
26759
  {
26760
- onClick: _chunkWZX26ODJcjs.openInNewTab.call(void 0, getHref(row.original)),
26760
+ onClick: _chunkX4LAMJHDcjs.openInNewTab.call(void 0, getHref(row.original)),
26761
26761
  variant: "outline",
26762
26762
  size: "icon",
26763
26763
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
@@ -26835,13 +26835,13 @@ function WaitlistForm({
26835
26835
  const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
26836
26836
  const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
26837
26837
  const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
26838
- const { toast } = _chunk4FWURR3Wcjs.useToast.call(void 0, );
26839
- const { honeypotInputProps, getSignals, resetSignals } = _chunk4FWURR3Wcjs.useHumanitySignals.call(void 0, );
26838
+ const { toast } = _chunkVUWPLQBYcjs.useToast.call(void 0, );
26839
+ const { honeypotInputProps, getSignals, resetSignals } = _chunkVUWPLQBYcjs.useHumanitySignals.call(void 0, );
26840
26840
  const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
26841
- const isClient = _chunkV3UJ6NDRcjs.useIsHydrated.call(void 0, );
26841
+ const isClient = _chunkTPH4SRR2cjs.useIsHydrated.call(void 0, );
26842
26842
  const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
26843
26843
  const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
26844
- const rescue = _chunk4FWURR3Wcjs.useFormRescue.call(void 0, {
26844
+ const rescue = _chunkVUWPLQBYcjs.useFormRescue.call(void 0, {
26845
26845
  form: rescueForm,
26846
26846
  // The phone is reported as filled only; its value never leaves the form early.
26847
26847
  fieldNames: ["email", "phone"],
@@ -26853,7 +26853,7 @@ function WaitlistForm({
26853
26853
  _react.useEffect.call(void 0, () => {
26854
26854
  rescue.track({ email, phone }, null);
26855
26855
  }, [email, phone, rescue]);
26856
- const isMailDomainGeneric = _chunkWZX26ODJcjs.hasGenericEmailDomain.call(void 0, email);
26856
+ const isMailDomainGeneric = _chunkX4LAMJHDcjs.hasGenericEmailDomain.call(void 0, email);
26857
26857
  const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
26858
26858
  if (syncedDefaultEmail !== defaultEmail) {
26859
26859
  setSyncedDefaultEmail(defaultEmail);
@@ -26887,7 +26887,7 @@ function WaitlistForm({
26887
26887
  setShowConsentError(true);
26888
26888
  return;
26889
26889
  }
26890
- const finalPhone = phone ? _chunkWZX26ODJcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
26890
+ const finalPhone = phone ? _chunkX4LAMJHDcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
26891
26891
  try {
26892
26892
  await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
26893
26893
  rescue.complete();
@@ -27610,7 +27610,7 @@ var typeColorByVariant = {
27610
27610
  error: "text-ods-error"
27611
27611
  };
27612
27612
  var progressColorByVariant2 = {
27613
- ..._chunk4FWURR3Wcjs.progressColorByVariant,
27613
+ ..._chunkVUWPLQBYcjs.progressColorByVariant,
27614
27614
  default: "bg-ods-accent",
27615
27615
  info: "bg-ods-accent"
27616
27616
  };
@@ -27687,7 +27687,7 @@ function NotificationTile({
27687
27687
  height: 16,
27688
27688
  unoptimized: true
27689
27689
  }
27690
- ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "size-1.5 rounded-full", _chunk4FWURR3Wcjs.dotColorByVariant[accentVariant]) }))) }),
27690
+ ) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "size-1.5 rounded-full", _chunkVUWPLQBYcjs.dotColorByVariant[accentVariant]) }))) }),
27691
27691
  type ? lockscreen ? (
27692
27692
  // A phone names the sender in plain words and never cuts them.
27693
27693
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 break-words text-ods-text-secondary text-h6", children: type })
@@ -27995,7 +27995,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
27995
27995
  ] });
27996
27996
  }
27997
27997
  function DesktopNotificationsToggleRow({ checked, onChange }) {
27998
- const { supported, permission, request } = _chunk4FWURR3Wcjs.useNotificationPermission.call(void 0, );
27998
+ const { supported, permission, request } = _chunkVUWPLQBYcjs.useNotificationPermission.call(void 0, );
27999
27999
  if (!supported) return null;
28000
28000
  const blocked = permission === "denied";
28001
28001
  const handleChange = async (value) => {
@@ -29003,7 +29003,7 @@ function getDeviceStatusConfig(status) {
29003
29003
  }
29004
29004
  }
29005
29005
  function getDeviceOperatingSystem(osType) {
29006
- return _chunkWZX26ODJcjs.getOSPlatformId.call(void 0, osType);
29006
+ return _chunkX4LAMJHDcjs.getOSPlatformId.call(void 0, osType);
29007
29007
  }
29008
29008
 
29009
29009
  // src/components/features/devices/device-statuses.ts
@@ -30325,7 +30325,7 @@ function DevicesList({
30325
30325
  const handleClearAll = _react.useCallback.call(void 0, () => patch({ search: "", tags: [] }), [patch]);
30326
30326
  const narrowed = isNarrowed(narrowing);
30327
30327
  const isEmptyState = !isLoading && !isPending && !narrowed && devices.length === 0;
30328
- const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } = _chunk4FWURR3Wcjs.useStickyToolbar.call(void 0, );
30328
+ const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } = _chunkVUWPLQBYcjs.useStickyToolbar.call(void 0, );
30329
30329
  const headerOffset = _nullishCoalesce(stickyHeaderOffset, () => ( (stickyToolbar ? measuredOffset : void 0)));
30330
30330
  const actionsColumn = _react.useMemo.call(void 0, () => rowActions ? getDeviceActionsColumn(rowActions) : void 0, [rowActions]);
30331
30331
  return (
@@ -30558,7 +30558,7 @@ function DevicesPanelView({
30558
30558
  actionsVariant: "icon-buttons",
30559
30559
  className,
30560
30560
  selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30561
- _chunkV3UJ6NDRcjs.TabSelector,
30561
+ _chunkTPH4SRR2cjs.TabSelector,
30562
30562
  {
30563
30563
  value: viewMode,
30564
30564
  onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _655 => _655(value)]),
@@ -31074,10 +31074,10 @@ var ToolBadge = ({
31074
31074
  className,
31075
31075
  iconClassName
31076
31076
  }) => {
31077
- const text = _nullishCoalesce(label, () => ( (toolType ? _chunkWZX26ODJcjs.getToolLabel.call(void 0, toolType) : "")));
31077
+ const text = _nullishCoalesce(label, () => ( (toolType ? _chunkX4LAMJHDcjs.getToolLabel.call(void 0, toolType) : "")));
31078
31078
  const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWI2OTGKCcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
31079
31079
  const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31080
- _chunkV3UJ6NDRcjs.NavLinkAnchorViaRuntime,
31080
+ _chunkTPH4SRR2cjs.NavLinkAnchorViaRuntime,
31081
31081
  {
31082
31082
  href,
31083
31083
  targetPlatform,
@@ -31184,7 +31184,7 @@ function LogsTableView({
31184
31184
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31185
31185
  ToolBadge,
31186
31186
  {
31187
- toolType: _chunkWZX26ODJcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
31187
+ toolType: _chunkX4LAMJHDcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
31188
31188
  iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
31189
31189
  }
31190
31190
  ),
@@ -31196,7 +31196,7 @@ function LogsTableView({
31196
31196
  filter: {
31197
31197
  options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _663 => _663.toolTypes, 'access', _664 => _664.map, 'call', _665 => _665((toolType) => ({
31198
31198
  id: toolType,
31199
- label: _chunkWZX26ODJcjs.toToolLabel.call(void 0, toolType),
31199
+ label: _chunkX4LAMJHDcjs.toToolLabel.call(void 0, toolType),
31200
31200
  value: toolType
31201
31201
  }))]), () => ( []))
31202
31202
  }
@@ -31254,7 +31254,7 @@ function LogsTableView({
31254
31254
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31255
31255
  _chunk2QMBXGMQcjs.Button,
31256
31256
  {
31257
- onClick: getLogHref ? _chunkWZX26ODJcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
31257
+ onClick: getLogHref ? _chunkX4LAMJHDcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
31258
31258
  variant: "outline",
31259
31259
  size: "icon",
31260
31260
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
@@ -31629,7 +31629,7 @@ function OpenInNewTabCell({ href }) {
31629
31629
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31630
31630
  _chunk2QMBXGMQcjs.Button,
31631
31631
  {
31632
- onClick: _chunkWZX26ODJcjs.openInNewTab.call(void 0, href),
31632
+ onClick: _chunkX4LAMJHDcjs.openInNewTab.call(void 0, href),
31633
31633
  variant: "outline",
31634
31634
  size: "icon",
31635
31635
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
@@ -31778,9 +31778,9 @@ function ScriptSchedulesTable({
31778
31778
 
31779
31779
  // src/components/features/scripts/shell-types.ts
31780
31780
  var SCRIPT_SHELL_TYPES = [
31781
- { id: _chunkWZX26ODJcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
31782
- { id: _chunkWZX26ODJcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
31783
- { id: _chunkWZX26ODJcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
31781
+ { id: _chunkX4LAMJHDcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
31782
+ { id: _chunkX4LAMJHDcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
31783
+ { id: _chunkX4LAMJHDcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
31784
31784
  ];
31785
31785
  function scriptShellType(value) {
31786
31786
  return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
@@ -33213,7 +33213,7 @@ function ScheduleFormFields({
33213
33213
  disabled = false,
33214
33214
  renderScriptSearch,
33215
33215
  timeReferenceGate = "off",
33216
- platforms = _chunkWZX26ODJcjs.OS_PLATFORMS,
33216
+ platforms = _chunkX4LAMJHDcjs.OS_PLATFORMS,
33217
33217
  comingSoonPlatforms = [],
33218
33218
  getTimeSlots,
33219
33219
  nameLayout = "stacked",
@@ -33359,7 +33359,7 @@ function ScheduleFormFields({
33359
33359
  // src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
33360
33360
 
33361
33361
  function ScriptPlatformIcons({ platforms }) {
33362
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkWZX26ODJcjs.OS_PLATFORMS.filter((p) => platforms.includes(p.id)).map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, p.icon, { className: "h-3.5 w-3.5 text-ods-text-secondary opacity-60" }, p.id)) });
33362
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkX4LAMJHDcjs.OS_PLATFORMS.filter((p) => platforms.includes(p.id)).map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, p.icon, { className: "h-3.5 w-3.5 text-ods-text-secondary opacity-60" }, p.id)) });
33363
33363
  }
33364
33364
  function ScheduleScriptSearchField({
33365
33365
  scriptId,
@@ -33432,7 +33432,7 @@ function getKnowledgeBaseOpenColumn(getHref) {
33432
33432
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33433
33433
  _chunk2QMBXGMQcjs.Button,
33434
33434
  {
33435
- onClick: _chunkWZX26ODJcjs.openInNewTab.call(void 0, getHref(row.original)),
33435
+ onClick: _chunkX4LAMJHDcjs.openInNewTab.call(void 0, getHref(row.original)),
33436
33436
  variant: "outline",
33437
33437
  size: "icon",
33438
33438
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
@@ -33680,13 +33680,13 @@ function ConversationCard({
33680
33680
  ),
33681
33681
  style: tint,
33682
33682
  children: [
33683
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZX26ODJcjs.ChatTurn, { avatar: requester.avatar, name: requester.name, meta: requester.meta, time: requester.time, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "m-0 line-clamp-2 min-h-[2lh] text-ods-text-primary text-h3", title: request, children: [
33683
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkX4LAMJHDcjs.ChatTurn, { avatar: requester.avatar, name: requester.name, meta: requester.meta, time: requester.time, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "m-0 line-clamp-2 min-h-[2lh] text-ods-text-primary text-h3", title: request, children: [
33684
33684
  "\u201C",
33685
33685
  request,
33686
33686
  "\u201D"
33687
33687
  ] }) }),
33688
33688
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33689
- _chunkWZX26ODJcjs.ChatTurn,
33689
+ _chunkX4LAMJHDcjs.ChatTurn,
33690
33690
  {
33691
33691
  avatar: responder.avatar,
33692
33692
  name: responder.name,