@flamingo-stack/openframe-frontend-core 0.0.290 → 0.0.291-snapshot.20260618233000

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 (138) hide show
  1. package/dist/{chunk-EL5GCMPU.cjs → chunk-2BMVBPC7.cjs} +9 -9
  2. package/dist/{chunk-EL5GCMPU.cjs.map → chunk-2BMVBPC7.cjs.map} +1 -1
  3. package/dist/{chunk-OYXZIPNM.cjs → chunk-2NJ44RTT.cjs} +27 -27
  4. package/dist/{chunk-OYXZIPNM.cjs.map → chunk-2NJ44RTT.cjs.map} +1 -1
  5. package/dist/{chunk-R4CLIWAU.js → chunk-5FK7X3EE.js} +270 -172
  6. package/dist/chunk-5FK7X3EE.js.map +1 -0
  7. package/dist/{chunk-3SDBXXDP.cjs → chunk-5PELVUFT.cjs} +26 -26
  8. package/dist/{chunk-3SDBXXDP.cjs.map → chunk-5PELVUFT.cjs.map} +1 -1
  9. package/dist/{chunk-2V6RCQ5M.cjs → chunk-5R5OODNE.cjs} +40 -40
  10. package/dist/{chunk-2V6RCQ5M.cjs.map → chunk-5R5OODNE.cjs.map} +1 -1
  11. package/dist/{chunk-ODR6A6FC.js → chunk-6FHO73AP.js} +22 -10
  12. package/dist/{chunk-ODR6A6FC.js.map → chunk-6FHO73AP.js.map} +1 -1
  13. package/dist/{chunk-KJF7SRKH.js → chunk-B2U6INNO.js} +3 -3
  14. package/dist/{chunk-4F3X2AOB.js → chunk-C667P6LZ.js} +5 -5
  15. package/dist/{chunk-UC5GB255.cjs → chunk-CDJOKNCS.cjs} +17 -17
  16. package/dist/{chunk-UC5GB255.cjs.map → chunk-CDJOKNCS.cjs.map} +1 -1
  17. package/dist/{chunk-7NM7DEUK.js → chunk-CUQH4SHH.js} +2 -2
  18. package/dist/{chunk-ZLN6SM2U.js → chunk-DUIWR7RQ.js} +3 -3
  19. package/dist/{chunk-4XMYOZFO.js → chunk-E2YXRSDG.js} +5 -5
  20. package/dist/{chunk-AAK6IY6Y.cjs → chunk-FFP2A77V.cjs} +10 -10
  21. package/dist/{chunk-AAK6IY6Y.cjs.map → chunk-FFP2A77V.cjs.map} +1 -1
  22. package/dist/{chunk-Z5QIVHJW.js → chunk-HTYUZXQP.js} +5 -5
  23. package/dist/{chunk-LVOBI2M5.js → chunk-IXDTNQF4.js} +3 -3
  24. package/dist/{chunk-I6ZPGKZ2.cjs → chunk-JC5RN7ZS.cjs} +6 -6
  25. package/dist/{chunk-I6ZPGKZ2.cjs.map → chunk-JC5RN7ZS.cjs.map} +1 -1
  26. package/dist/{chunk-VJ4ZWD5G.cjs → chunk-MDLWEJAV.cjs} +1072 -974
  27. package/dist/chunk-MDLWEJAV.cjs.map +1 -0
  28. package/dist/{chunk-R2KT5GDD.js → chunk-N45M3TK3.js} +14 -4
  29. package/dist/chunk-N45M3TK3.js.map +1 -0
  30. package/dist/{chunk-EI4WALN2.cjs → chunk-OXOTKEYY.cjs} +39 -29
  31. package/dist/chunk-OXOTKEYY.cjs.map +1 -0
  32. package/dist/{chunk-7L22MF3U.cjs → chunk-PZZGDS5I.cjs} +17 -17
  33. package/dist/{chunk-7L22MF3U.cjs.map → chunk-PZZGDS5I.cjs.map} +1 -1
  34. package/dist/{chunk-VRSXJ5QJ.js → chunk-SLP4KXP6.js} +3 -2
  35. package/dist/chunk-SLP4KXP6.js.map +1 -0
  36. package/dist/{chunk-7EYWERFT.js → chunk-VK4B6UGU.js} +4 -4
  37. package/dist/{chunk-D6RK5YXX.cjs → chunk-Z6BK4XHH.cjs} +22 -10
  38. package/dist/chunk-Z6BK4XHH.cjs.map +1 -0
  39. package/dist/{chunk-Y4JNA4W6.cjs → chunk-ZHNL2IPK.cjs} +3 -2
  40. package/dist/chunk-ZHNL2IPK.cjs.map +1 -0
  41. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  42. package/dist/components/chat/chat-message-list.d.ts.map +1 -1
  43. package/dist/components/chat/embeddable-chat.d.ts +15 -0
  44. package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
  45. package/dist/components/chat/hooks/use-realtime-chunk-processor.d.ts.map +1 -1
  46. package/dist/components/chat/index.cjs +7 -5
  47. package/dist/components/chat/index.cjs.map +1 -1
  48. package/dist/components/chat/index.d.ts +1 -0
  49. package/dist/components/chat/index.d.ts.map +1 -1
  50. package/dist/components/chat/index.js +6 -4
  51. package/dist/components/chat/remark-mention-chips.d.ts +30 -0
  52. package/dist/components/chat/remark-mention-chips.d.ts.map +1 -0
  53. package/dist/components/chat/types/api.types.d.ts +4 -0
  54. package/dist/components/chat/types/api.types.d.ts.map +1 -1
  55. package/dist/components/chat/types/component.types.d.ts +24 -0
  56. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  57. package/dist/components/chat/types/context-item.types.d.ts +5 -0
  58. package/dist/components/chat/types/context-item.types.d.ts.map +1 -1
  59. package/dist/components/chat/types/processing.types.d.ts +4 -0
  60. package/dist/components/chat/types/processing.types.d.ts.map +1 -1
  61. package/dist/components/chat/utils/chunk-parser.d.ts.map +1 -1
  62. package/dist/components/chat/utils/nav-anchor-props.d.ts +8 -3
  63. package/dist/components/chat/utils/nav-anchor-props.d.ts.map +1 -1
  64. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  65. package/dist/components/contact/index.cjs +6 -6
  66. package/dist/components/contact/index.js +5 -5
  67. package/dist/components/docs/index.cjs +5 -5
  68. package/dist/components/docs/index.js +4 -4
  69. package/dist/components/embeds/index.cjs +6 -6
  70. package/dist/components/embeds/index.js +5 -5
  71. package/dist/components/faq/index.cjs +6 -6
  72. package/dist/components/faq/index.js +5 -5
  73. package/dist/components/features/index.cjs +5 -5
  74. package/dist/components/features/index.js +4 -4
  75. package/dist/components/features/paths-display.d.ts +1 -1
  76. package/dist/components/features/paths-display.d.ts.map +1 -1
  77. package/dist/components/index.cjs +178 -176
  78. package/dist/components/index.cjs.map +1 -1
  79. package/dist/components/index.js +13 -11
  80. package/dist/components/index.js.map +1 -1
  81. package/dist/components/navigation/index.cjs +5 -5
  82. package/dist/components/navigation/index.js +4 -4
  83. package/dist/components/onboarding-guides/index.cjs +24 -24
  84. package/dist/components/onboarding-guides/index.js +4 -4
  85. package/dist/components/related-content/index.cjs +6 -6
  86. package/dist/components/related-content/index.js +5 -5
  87. package/dist/components/tickets/index.cjs +63 -63
  88. package/dist/components/tickets/index.js +6 -6
  89. package/dist/components/ui/index.cjs +7 -5
  90. package/dist/components/ui/index.cjs.map +1 -1
  91. package/dist/components/ui/index.js +6 -4
  92. package/dist/components/ui/simple-markdown-renderer.d.ts.map +1 -1
  93. package/dist/components/ui/tag.d.ts +10 -1
  94. package/dist/components/ui/tag.d.ts.map +1 -1
  95. package/dist/index.cjs +7 -5
  96. package/dist/index.cjs.map +1 -1
  97. package/dist/index.js +6 -4
  98. package/dist/utils/index.cjs +21 -9
  99. package/dist/utils/index.cjs.map +1 -1
  100. package/dist/utils/index.js +21 -9
  101. package/dist/utils/index.js.map +1 -1
  102. package/dist/utils/scroll-into-view.d.ts +12 -0
  103. package/dist/utils/scroll-into-view.d.ts.map +1 -1
  104. package/package.json +1 -1
  105. package/src/components/chat/chat-message-enhanced.tsx +71 -9
  106. package/src/components/chat/chat-message-list.tsx +2 -0
  107. package/src/components/chat/embeddable-chat.tsx +50 -6
  108. package/src/components/chat/hooks/use-realtime-chunk-processor.ts +1 -0
  109. package/src/components/chat/index.ts +1 -0
  110. package/src/components/chat/remark-mention-chips.ts +72 -0
  111. package/src/components/chat/types/api.types.ts +1 -1
  112. package/src/components/chat/types/component.types.ts +18 -0
  113. package/src/components/chat/types/context-item.types.ts +5 -0
  114. package/src/components/chat/types/processing.types.ts +8 -1
  115. package/src/components/chat/utils/chunk-parser.ts +11 -0
  116. package/src/components/chat/utils/nav-anchor-props.ts +22 -4
  117. package/src/components/chat/utils/process-historical-messages.ts +22 -0
  118. package/src/components/features/.paths-display.md +1 -1
  119. package/src/components/features/command-box.tsx +1 -1
  120. package/src/components/features/paths-display.tsx +13 -14
  121. package/src/components/ui/simple-markdown-renderer.tsx +14 -11
  122. package/src/components/ui/tag.tsx +12 -2
  123. package/src/utils/scroll-into-view.ts +51 -9
  124. package/dist/chunk-D6RK5YXX.cjs.map +0 -1
  125. package/dist/chunk-EI4WALN2.cjs.map +0 -1
  126. package/dist/chunk-R2KT5GDD.js.map +0 -1
  127. package/dist/chunk-R4CLIWAU.js.map +0 -1
  128. package/dist/chunk-VJ4ZWD5G.cjs.map +0 -1
  129. package/dist/chunk-VRSXJ5QJ.js.map +0 -1
  130. package/dist/chunk-Y4JNA4W6.cjs.map +0 -1
  131. /package/dist/{chunk-KJF7SRKH.js.map → chunk-B2U6INNO.js.map} +0 -0
  132. /package/dist/{chunk-4F3X2AOB.js.map → chunk-C667P6LZ.js.map} +0 -0
  133. /package/dist/{chunk-7NM7DEUK.js.map → chunk-CUQH4SHH.js.map} +0 -0
  134. /package/dist/{chunk-ZLN6SM2U.js.map → chunk-DUIWR7RQ.js.map} +0 -0
  135. /package/dist/{chunk-4XMYOZFO.js.map → chunk-E2YXRSDG.js.map} +0 -0
  136. /package/dist/{chunk-Z5QIVHJW.js.map → chunk-HTYUZXQP.js.map} +0 -0
  137. /package/dist/{chunk-LVOBI2M5.js.map → chunk-IXDTNQF4.js.map} +0 -0
  138. /package/dist/{chunk-7EYWERFT.js.map → chunk-VK4B6UGU.js.map} +0 -0
@@ -17,7 +17,7 @@
17
17
 
18
18
 
19
19
 
20
- var _chunkY4JNA4W6cjs = require('./chunk-Y4JNA4W6.cjs');
20
+ var _chunkZHNL2IPKcjs = require('./chunk-ZHNL2IPK.cjs');
21
21
 
22
22
 
23
23
 
@@ -319,7 +319,8 @@ function rehypeStripUnsafe() {
319
319
  };
320
320
  }
321
321
  function cardAwareUrlTransform(url, key) {
322
- if (key === "href" && typeof url === "string" && url.startsWith("card://")) return url;
322
+ if (key === "href" && typeof url === "string" && (url.startsWith("card://") || url.startsWith("mention://")))
323
+ return url;
323
324
  return _reactmarkdown.defaultUrlTransform.call(void 0, url);
324
325
  }
325
326
  var SAFE_HTML_TAGS = /* @__PURE__ */ new Set([
@@ -945,7 +946,7 @@ var SquareAvatar = React4.memo(React4.forwardRef(
945
946
  "flex items-center justify-center text-xs font-medium text-[color:var(--ods-avatar-initials,var(--color-text-primary))]",
946
947
  initialsClassName,
947
948
  src && "hidden"
948
- ), children: _chunkY4JNA4W6cjs.getFirstLastInitials.call(void 0, fallback || alt) || "?" }),
949
+ ), children: _chunkZHNL2IPKcjs.getFirstLastInitials.call(void 0, fallback || alt) || "?" }),
949
950
  src && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
950
951
  _chunkXL4V2PYGcjs.next_image_default,
951
952
  {
@@ -1344,10 +1345,19 @@ var ActionsMenuDropdown = ({
1344
1345
  };
1345
1346
 
1346
1347
  // src/components/chat/utils/nav-anchor-props.ts
1348
+ function isSameOriginAbsoluteHref(href) {
1349
+ if (typeof window === "undefined") return false;
1350
+ if (!/^https?:\/\//i.test(href)) return false;
1351
+ try {
1352
+ return new URL(href).origin === window.location.origin;
1353
+ } catch (e2) {
1354
+ return false;
1355
+ }
1356
+ }
1347
1357
  function computeIsNewTab(runtime, href, targetPlatform) {
1348
1358
  if (!href) return false;
1349
- if (runtime.navigation.mode === "embed") return true;
1350
- return _nullishCoalesce(_optionalChain([runtime, 'access', _24 => _24.navigation, 'access', _25 => _25.decideNewTab, 'optionalCall', _26 => _26({ href, targetPlatform })]), () => ( _chunkY4JNA4W6cjs.decideNewTab.call(void 0, {
1359
+ if (runtime.navigation.mode === "embed") return !isSameOriginAbsoluteHref(href);
1360
+ return _nullishCoalesce(_optionalChain([runtime, 'access', _24 => _24.navigation, 'access', _25 => _25.decideNewTab, 'optionalCall', _26 => _26({ href, targetPlatform })]), () => ( _chunkZHNL2IPKcjs.decideNewTab.call(void 0, {
1351
1361
  href,
1352
1362
  targetPlatform,
1353
1363
  currentSource: _nullishCoalesce(runtime.source, () => ( ""))
@@ -1393,7 +1403,7 @@ function EntityMetadataAuthorCell({
1393
1403
  {
1394
1404
  src: author.avatar_url || "",
1395
1405
  alt: fullName,
1396
- fallback: _chunkY4JNA4W6cjs.nameInitials.call(void 0, fullName, ""),
1406
+ fallback: _chunkZHNL2IPKcjs.nameInitials.call(void 0, fullName, ""),
1397
1407
  size: "md",
1398
1408
  variant: "round"
1399
1409
  }
@@ -1417,7 +1427,7 @@ function EntityAuthorCard({
1417
1427
  const hasAuthor = !!_optionalChain([author, 'optionalAccess', _27 => _27.full_name]);
1418
1428
  if (!hasAuthor && !renderEmptyAuthor) return null;
1419
1429
  const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
1420
- const formatted = publishedAt ? _chunkY4JNA4W6cjs.formatDate.call(void 0, publishedAt) : "";
1430
+ const formatted = publishedAt ? _chunkZHNL2IPKcjs.formatDate.call(void 0, publishedAt) : "";
1421
1431
  const dateLabel = formatted === "Invalid Date" ? "" : formatted;
1422
1432
  const showDateCell = !!dateLabel;
1423
1433
  const extras = _nullishCoalesce(extraCells, () => ( []));
@@ -1511,7 +1521,7 @@ var YT_HOSTS = /* @__PURE__ */ new Set([
1511
1521
  function isYouTubeUrl(url) {
1512
1522
  try {
1513
1523
  return YT_HOSTS.has(new URL(url, "http://placeholder.local").hostname.toLowerCase());
1514
- } catch (e2) {
1524
+ } catch (e3) {
1515
1525
  return false;
1516
1526
  }
1517
1527
  }
@@ -1523,7 +1533,7 @@ function extractYouTubeId(url) {
1523
1533
  let u;
1524
1534
  try {
1525
1535
  u = new URL(url, "http://placeholder.local");
1526
- } catch (e3) {
1536
+ } catch (e4) {
1527
1537
  return null;
1528
1538
  }
1529
1539
  if (!YT_HOSTS.has(u.hostname.toLowerCase())) return null;
@@ -1686,7 +1696,7 @@ function YouTubeFacadeInner({
1686
1696
  let payload = null;
1687
1697
  try {
1688
1698
  payload = JSON.parse(event.data);
1689
- } catch (e4) {
1699
+ } catch (e5) {
1690
1700
  return;
1691
1701
  }
1692
1702
  if (!payload || payload.event !== "infoDelivery") return;
@@ -1742,7 +1752,7 @@ function YouTubeFacadeInner({
1742
1752
  src: posterJpg,
1743
1753
  alt: title,
1744
1754
  loading: "lazy",
1745
- ..._chunkY4JNA4W6cjs.fetchPriorityProp.call(void 0, priority),
1755
+ ..._chunkZHNL2IPKcjs.fetchPriorityProp.call(void 0, priority),
1746
1756
  decoding: priority ? "sync" : "async",
1747
1757
  className: "absolute inset-0 w-full h-full object-cover"
1748
1758
  }
@@ -1865,7 +1875,7 @@ function VideoBitesDisplay({
1865
1875
  const totalCount = grouped.portrait.length + grouped.square.length + grouped.landscape.length;
1866
1876
  if (totalCount === 0) return null;
1867
1877
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-6 w-full min-w-0", children: [
1868
- showTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkY4JNA4W6cjs.SECTION_HEADING_CLASS} break-words`, children: title }),
1878
+ showTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkZHNL2IPKcjs.SECTION_HEADING_CLASS} break-words`, children: title }),
1869
1879
  grouped.hasMultiple ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1870
1880
  RatioTabs,
1871
1881
  {
@@ -1992,7 +2002,7 @@ function EntityVideoSection({
1992
2002
  }
1993
2003
  )),
1994
2004
  videoSummary && MarkdownRenderer && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-6 w-full min-w-0", children: [
1995
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkY4JNA4W6cjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
2005
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkZHNL2IPKcjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
1996
2006
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-h4 text-ods-text-primary break-words overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: videoSummary }) })
1997
2007
  ] }),
1998
2008
  videoBites && videoBites.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2097,12 +2107,12 @@ function OnboardingGuideCardSkeleton({ size = "default" }) {
2097
2107
  ] });
2098
2108
  }
2099
2109
  if (size === "sm") {
2100
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_SKELETON_OUTER, children: [
2101
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
2102
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_TEXT_COL, children: [
2103
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
2104
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-2/5 rounded bg-ods-bg/70" }) }),
2105
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
2110
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_SKELETON_OUTER, children: [
2111
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
2112
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_TEXT_COL, children: [
2113
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
2114
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-2/5 rounded bg-ods-bg/70" }) }),
2115
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
2106
2116
  ] }),
2107
2117
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
2108
2118
  ] });
@@ -2148,7 +2158,7 @@ function OnboardingGuideCard({
2148
2158
  const coverImage = guide.featured_image || guide.main_video_thumbnail || guide.og_image_url || null;
2149
2159
  const hasVideoCover = !!(guide.main_video_thumbnail || guide.highlight_video_thumbnail);
2150
2160
  const stepLabel = typeof guide.step_order === "number" ? String(guide.step_order).padStart(2, "0") : "\u2014";
2151
- const durationLabel = typeof guide.highlight_video_duration_ms === "number" && guide.highlight_video_duration_ms > 0 ? _chunkY4JNA4W6cjs.formatDurationMMSS.call(void 0, Math.floor(guide.highlight_video_duration_ms / 1e3)) : "";
2161
+ const durationLabel = typeof guide.highlight_video_duration_ms === "number" && guide.highlight_video_duration_ms > 0 ? _chunkZHNL2IPKcjs.formatDurationMMSS.call(void 0, Math.floor(guide.highlight_video_duration_ms / 1e3)) : "";
2152
2162
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2153
2163
  _chunkWBR7H6E3cjs.next_link_default,
2154
2164
  {
@@ -2227,8 +2237,8 @@ function OnboardingGuideCard({
2227
2237
  guide.section,
2228
2238
  author
2229
2239
  ].filter((s) => typeof s === "string" && s.length > 0);
2230
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href, target, rel, prefetch: false, className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkY4JNA4W6cjs.COMPACT_CARD_OUTER, className), children: [
2231
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_IMAGE_SLOT, children: [
2240
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href, target, rel, prefetch: false, className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkZHNL2IPKcjs.COMPACT_CARD_OUTER, className), children: [
2241
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_IMAGE_SLOT, children: [
2232
2242
  compactCover ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2233
2243
  _chunkXL4V2PYGcjs.next_image_default,
2234
2244
  {
@@ -2242,10 +2252,10 @@ function OnboardingGuideCard({
2242
2252
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-full w-full items-center justify-center text-ods-accent", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.GraduationCap, { className: "w-4 h-4" }) }),
2243
2253
  hasVideoCover && compactCover && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Play, { className: "h-4 w-4 text-white", fill: "white" }) })
2244
2254
  ] }),
2245
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_TEXT_COL, children: [
2246
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkY4JNA4W6cjs.COMPACT_CARD_TITLE, "font-['Azeret_Mono']"), children: guide.title }) }),
2247
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-[11px] leading-4 text-[var(--color-accent-primary)]", children: subtitleParts.join(" \xB7 ") }) }),
2248
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkY4JNA4W6cjs.COMPACT_CARD_SUMMARY, children: summary2 || _chunkY4JNA4W6cjs.COMPACT_CARD_ROW_FILLER }) })
2255
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_TEXT_COL, children: [
2256
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunkZHNL2IPKcjs.COMPACT_CARD_TITLE, "font-['Azeret_Mono']"), children: guide.title }) }),
2257
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-[11px] leading-4 text-[var(--color-accent-primary)]", children: subtitleParts.join(" \xB7 ") }) }),
2258
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkZHNL2IPKcjs.COMPACT_CARD_SUMMARY, children: summary2 || _chunkZHNL2IPKcjs.COMPACT_CARD_ROW_FILLER }) })
2249
2259
  ] }),
2250
2260
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) })
2251
2261
  ] });
@@ -2499,7 +2509,7 @@ function EntityImage({ src, alt, fallbackText, className }) {
2499
2509
  setImageFailed(false);
2500
2510
  }, [src]);
2501
2511
  const showFallback = imageFailed || !src;
2502
- const initials = _chunkY4JNA4W6cjs.getFirstLastInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
2512
+ const initials = _chunkZHNL2IPKcjs.getFirstLastInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
2503
2513
  if (showFallback) {
2504
2514
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2505
2515
  "div",
@@ -2872,7 +2882,7 @@ function useVideoWarmup({
2872
2882
  let videoOrigin;
2873
2883
  try {
2874
2884
  videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
2875
- } catch (e5) {
2885
+ } catch (e6) {
2876
2886
  return;
2877
2887
  }
2878
2888
  if (videoOrigin !== resolvedOrigin) return;
@@ -2996,4 +3006,4 @@ function FilterPillRow({
2996
3006
 
2997
3007
 
2998
3008
  exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.SquareAvatar = SquareAvatar; exports.useControllableState = useControllableState; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.useEntityCardLink = useEntityCardLink; exports.useEntityCardPlaceholder = useEntityCardPlaceholder; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.BackButton = BackButton; exports.EntityImage = EntityImage; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.FilterPillRow = FilterPillRow;
2999
- //# sourceMappingURL=chunk-EI4WALN2.cjs.map
3009
+ //# sourceMappingURL=chunk-OXOTKEYY.cjs.map