@flamingo-stack/openframe-frontend-core 0.0.256 → 0.0.257

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 (89) hide show
  1. package/dist/{chunk-JK25REDL.js → chunk-2VZQJIVA.js} +3 -3
  2. package/dist/{chunk-IG4QRNYZ.cjs → chunk-4MXBBBHB.cjs} +108 -11
  3. package/dist/chunk-4MXBBBHB.cjs.map +1 -0
  4. package/dist/{chunk-CMWRZECW.cjs → chunk-AIQ4DGO7.cjs} +34 -34
  5. package/dist/{chunk-CMWRZECW.cjs.map → chunk-AIQ4DGO7.cjs.map} +1 -1
  6. package/dist/{chunk-S7IX7YU4.js → chunk-CBIQDPHK.js} +4 -49
  7. package/dist/chunk-CBIQDPHK.js.map +1 -0
  8. package/dist/{chunk-TSZBJVYK.cjs → chunk-EB76VWM4.cjs} +100 -49
  9. package/dist/chunk-EB76VWM4.cjs.map +1 -0
  10. package/dist/{chunk-6F5CGBVT.cjs → chunk-FBH73RRM.cjs} +1053 -1098
  11. package/dist/chunk-FBH73RRM.cjs.map +1 -0
  12. package/dist/{chunk-7RLV3U5C.js → chunk-IJHORDN5.js} +100 -3
  13. package/dist/chunk-IJHORDN5.js.map +1 -0
  14. package/dist/{chunk-ISALYOFX.cjs → chunk-LCYDTEEK.cjs} +19 -19
  15. package/dist/{chunk-ISALYOFX.cjs.map → chunk-LCYDTEEK.cjs.map} +1 -1
  16. package/dist/{chunk-QXSRQVRO.js → chunk-LDEXTWMK.js} +8 -2
  17. package/dist/chunk-LDEXTWMK.js.map +1 -0
  18. package/dist/{chunk-U6UNAC32.cjs → chunk-N5UOJC3V.cjs} +8 -2
  19. package/dist/chunk-N5UOJC3V.cjs.map +1 -0
  20. package/dist/{chunk-V5L4D454.js → chunk-NAOTZAKM.js} +54 -3
  21. package/dist/chunk-NAOTZAKM.js.map +1 -0
  22. package/dist/{chunk-V4Q5PIBV.cjs → chunk-NNDLCSGR.cjs} +27 -27
  23. package/dist/{chunk-V4Q5PIBV.cjs.map → chunk-NNDLCSGR.cjs.map} +1 -1
  24. package/dist/{chunk-HCMVLEC3.js → chunk-RUMSS73U.js} +4 -4
  25. package/dist/{chunk-46DHPQY6.js → chunk-YMZZ5THD.js} +3 -3
  26. package/dist/components/chat/index.cjs +4 -4
  27. package/dist/components/chat/index.js +3 -3
  28. package/dist/components/contact/index.cjs +5 -5
  29. package/dist/components/contact/index.js +4 -4
  30. package/dist/components/features/index.cjs +4 -4
  31. package/dist/components/features/index.js +3 -3
  32. package/dist/components/index.cjs +101 -98
  33. package/dist/components/index.cjs.map +1 -1
  34. package/dist/components/index.d.ts +1 -0
  35. package/dist/components/index.d.ts.map +1 -1
  36. package/dist/components/index.js +16 -13
  37. package/dist/components/index.js.map +1 -1
  38. package/dist/components/navigation/index.cjs +4 -4
  39. package/dist/components/navigation/index.js +3 -3
  40. package/dist/components/onboarding-guides/index.cjs +40 -26
  41. package/dist/components/onboarding-guides/index.cjs.map +1 -1
  42. package/dist/components/onboarding-guides/index.js +17 -3
  43. package/dist/components/onboarding-guides/index.js.map +1 -1
  44. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts +8 -1
  45. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts.map +1 -1
  46. package/dist/components/related-content/index.cjs +5 -5
  47. package/dist/components/related-content/index.js +4 -4
  48. package/dist/components/shared/article-author-byline.d.ts +58 -0
  49. package/dist/components/shared/article-author-byline.d.ts.map +1 -0
  50. package/dist/components/social-icon-row.d.ts +4 -2
  51. package/dist/components/social-icon-row.d.ts.map +1 -1
  52. package/dist/components/tickets/index.cjs +75 -75
  53. package/dist/components/tickets/index.js +5 -5
  54. package/dist/components/ui/button/button.d.ts +1 -1
  55. package/dist/components/ui/button/button.d.ts.map +1 -1
  56. package/dist/components/ui/file-manager/index.cjs +20 -20
  57. package/dist/components/ui/file-manager/index.js +1 -1
  58. package/dist/components/ui/index.cjs +4 -4
  59. package/dist/components/ui/index.js +3 -3
  60. package/dist/index.cjs +8 -8
  61. package/dist/index.cjs.map +1 -1
  62. package/dist/index.js +7 -7
  63. package/dist/types/entity-author.d.ts +3 -0
  64. package/dist/types/entity-author.d.ts.map +1 -1
  65. package/dist/utils/content-href.d.ts.map +1 -1
  66. package/dist/utils/index.cjs +6 -1
  67. package/dist/utils/index.cjs.map +1 -1
  68. package/dist/utils/index.js +6 -1
  69. package/dist/utils/index.js.map +1 -1
  70. package/package.json +1 -1
  71. package/src/components/index.ts +5 -0
  72. package/src/components/onboarding-guides/onboarding-guide-detail-view.tsx +22 -0
  73. package/src/components/shared/article-author-byline.tsx +187 -0
  74. package/src/components/social-icon-row.tsx +25 -8
  75. package/src/components/ui/button/button.tsx +6 -0
  76. package/src/types/entity-author.ts +3 -0
  77. package/src/utils/__tests__/content-href.test.ts +3 -0
  78. package/src/utils/content-href.ts +5 -0
  79. package/dist/chunk-6F5CGBVT.cjs.map +0 -1
  80. package/dist/chunk-7RLV3U5C.js.map +0 -1
  81. package/dist/chunk-IG4QRNYZ.cjs.map +0 -1
  82. package/dist/chunk-QXSRQVRO.js.map +0 -1
  83. package/dist/chunk-S7IX7YU4.js.map +0 -1
  84. package/dist/chunk-TSZBJVYK.cjs.map +0 -1
  85. package/dist/chunk-U6UNAC32.cjs.map +0 -1
  86. package/dist/chunk-V5L4D454.js.map +0 -1
  87. /package/dist/{chunk-JK25REDL.js.map → chunk-2VZQJIVA.js.map} +0 -0
  88. /package/dist/{chunk-HCMVLEC3.js.map → chunk-RUMSS73U.js.map} +0 -0
  89. /package/dist/{chunk-46DHPQY6.js.map → chunk-YMZZ5THD.js.map} +0 -0
@@ -18,7 +18,7 @@ var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
18
18
 
19
19
 
20
20
 
21
- var _chunkU6UNAC32cjs = require('./chunk-U6UNAC32.cjs');
21
+ var _chunkN5UOJC3Vcjs = require('./chunk-N5UOJC3V.cjs');
22
22
 
23
23
 
24
24
 
@@ -1499,7 +1499,7 @@ _chunkWBR7H6E3cjs.init_next_link.call(void 0, );
1499
1499
  var _lucidereact = require('lucide-react');
1500
1500
 
1501
1501
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
1502
- _chunkU6UNAC32cjs.init_button2.call(void 0, );
1502
+ _chunkN5UOJC3Vcjs.init_button2.call(void 0, );
1503
1503
 
1504
1504
  var ROW_CLASSES = "flex flex-1 min-w-0 items-center gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-s)] cursor-pointer transition-colors bg-ods-bg outline-none";
1505
1505
  var WRAPPER_CLASSES = "relative flex items-stretch border-b border-ods-border last:border-b-0";
@@ -1756,9 +1756,9 @@ var ActionsMenuDropdown = ({
1756
1756
  },
1757
1757
  [onItemClick, setOpen]
1758
1758
  );
1759
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6UNAC32cjs.DropdownMenu, { open, onOpenChange: setOpen, modal: false, children: [
1760
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6UNAC32cjs.DropdownMenuTrigger, { asChild: true, children: _nullishCoalesce(customTrigger, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1761
- _chunkU6UNAC32cjs.Button,
1759
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenu, { open, onOpenChange: setOpen, modal: false, children: [
1760
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenuTrigger, { asChild: true, children: _nullishCoalesce(customTrigger, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1761
+ _chunkN5UOJC3Vcjs.Button,
1762
1762
  {
1763
1763
  variant: "outline",
1764
1764
  size: "icon",
@@ -1768,7 +1768,7 @@ var ActionsMenuDropdown = ({
1768
1768
  }
1769
1769
  ))) }),
1770
1770
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1771
- _chunkU6UNAC32cjs.DropdownMenuContent,
1771
+ _chunkN5UOJC3Vcjs.DropdownMenuContent,
1772
1772
  {
1773
1773
  align,
1774
1774
  side,
@@ -1791,6 +1791,48 @@ var ActionsMenuDropdown = ({
1791
1791
  ] });
1792
1792
  };
1793
1793
 
1794
+ // src/utils/image-proxy.ts
1795
+ function getProxiedImageUrl(imageUrl, options) {
1796
+ if (!imageUrl) return null;
1797
+ const proxyPrefix = _optionalChain([options, 'optionalAccess', _28 => _28.proxyPrefix]);
1798
+ const skipDomains = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _29 => _29.skipDomains]), () => ( []));
1799
+ const directHttps = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _30 => _30.directHttps]), () => ( false));
1800
+ if (proxyPrefix && imageUrl.includes(proxyPrefix)) {
1801
+ return imageUrl;
1802
+ }
1803
+ if (!imageUrl.startsWith("http://") && !imageUrl.startsWith("https://")) {
1804
+ return imageUrl;
1805
+ }
1806
+ if (directHttps && imageUrl.startsWith("https://")) {
1807
+ return imageUrl;
1808
+ }
1809
+ if (!proxyPrefix) {
1810
+ return imageUrl;
1811
+ }
1812
+ for (const domain of skipDomains) {
1813
+ if (imageUrl.includes(domain)) {
1814
+ return imageUrl;
1815
+ }
1816
+ }
1817
+ return `${proxyPrefix}?url=${encodeURIComponent(imageUrl)}`;
1818
+ }
1819
+ function urlPathLooksLikeSvg(imageUrl) {
1820
+ try {
1821
+ return /\.svg$/i.test(new URL(imageUrl).pathname);
1822
+ } catch (e2) {
1823
+ return /\.svg(\?|#|$)/i.test(imageUrl);
1824
+ }
1825
+ }
1826
+ function shouldProxyImage(imageUrl, proxyPrefix) {
1827
+ if (!imageUrl) return false;
1828
+ if (!imageUrl.startsWith("http://") && !imageUrl.startsWith("https://")) return false;
1829
+ if (proxyPrefix && imageUrl.includes(proxyPrefix)) return false;
1830
+ return true;
1831
+ }
1832
+ function generateImageSizes(_url) {
1833
+ return `(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw`;
1834
+ }
1835
+
1794
1836
  // src/components/chat/utils/is-cross-origin-url.ts
1795
1837
  function isCrossOriginUrl(url) {
1796
1838
  if (!url) return false;
@@ -1816,7 +1858,7 @@ function decideNewTab(input) {
1816
1858
  function computeIsNewTab(runtime, href, targetPlatform) {
1817
1859
  if (!href) return false;
1818
1860
  if (runtime.navigation.mode === "embed") return true;
1819
- return _nullishCoalesce(_optionalChain([runtime, 'access', _28 => _28.navigation, 'access', _29 => _29.decideNewTab, 'optionalCall', _30 => _30({ href, targetPlatform })]), () => ( decideNewTab({
1861
+ return _nullishCoalesce(_optionalChain([runtime, 'access', _31 => _31.navigation, 'access', _32 => _32.decideNewTab, 'optionalCall', _33 => _33({ href, targetPlatform })]), () => ( decideNewTab({
1820
1862
  href,
1821
1863
  targetPlatform,
1822
1864
  currentSource: _nullishCoalesce(runtime.source, () => ( ""))
@@ -1839,7 +1881,7 @@ function stripSameOriginToPath(href) {
1839
1881
  try {
1840
1882
  const u = new URL(href);
1841
1883
  return u.pathname + u.search + u.hash;
1842
- } catch (e2) {
1884
+ } catch (e3) {
1843
1885
  return href;
1844
1886
  }
1845
1887
  }
@@ -1930,7 +1972,7 @@ function EntityAuthorCard({
1930
1972
  renderEmptyAuthor = false,
1931
1973
  className
1932
1974
  }) {
1933
- const hasAuthor = !!_optionalChain([author, 'optionalAccess', _31 => _31.full_name]);
1975
+ const hasAuthor = !!_optionalChain([author, 'optionalAccess', _34 => _34.full_name]);
1934
1976
  if (!hasAuthor && !renderEmptyAuthor) return null;
1935
1977
  const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
1936
1978
  const formatted = publishedAt ? formatDate(publishedAt) : "";
@@ -2007,7 +2049,7 @@ var _muxplayerreact = require('@mux/mux-player-react'); var _muxplayerreact2 = _
2007
2049
 
2008
2050
  if (typeof window !== "undefined") {
2009
2051
  const w = window;
2010
- if (!_optionalChain([w, 'access', _32 => _32.chrome, 'optionalAccess', _33 => _33.cast])) {
2052
+ if (!_optionalChain([w, 'access', _35 => _35.chrome, 'optionalAccess', _36 => _36.cast])) {
2011
2053
  w.chrome = { ..._nullishCoalesce(w.chrome, () => ( {})), cast: { isAvailable: false } };
2012
2054
  }
2013
2055
  }
@@ -2036,7 +2078,7 @@ var YT_HOSTS = /* @__PURE__ */ new Set([
2036
2078
  function isYouTubeUrl(url) {
2037
2079
  try {
2038
2080
  return YT_HOSTS.has(new URL(url, "http://placeholder.local").hostname.toLowerCase());
2039
- } catch (e3) {
2081
+ } catch (e4) {
2040
2082
  return false;
2041
2083
  }
2042
2084
  }
@@ -2048,7 +2090,7 @@ function extractYouTubeId(url) {
2048
2090
  let u;
2049
2091
  try {
2050
2092
  u = new URL(url, "http://placeholder.local");
2051
- } catch (e4) {
2093
+ } catch (e5) {
2052
2094
  return null;
2053
2095
  }
2054
2096
  if (!YT_HOSTS.has(u.hostname.toLowerCase())) return null;
@@ -2197,7 +2239,7 @@ function YouTubeFacadeInner({
2197
2239
  const iframe = iframeRef.current;
2198
2240
  if (!iframe) return;
2199
2241
  function subscribe() {
2200
- _optionalChain([iframe, 'optionalAccess', _34 => _34.contentWindow, 'optionalAccess', _35 => _35.postMessage, 'call', _36 => _36(
2242
+ _optionalChain([iframe, 'optionalAccess', _37 => _37.contentWindow, 'optionalAccess', _38 => _38.postMessage, 'call', _39 => _39(
2201
2243
  '{"event":"listening"}',
2202
2244
  YT_NOCOOKIE_ORIGIN
2203
2245
  )]);
@@ -2211,17 +2253,17 @@ function YouTubeFacadeInner({
2211
2253
  let payload = null;
2212
2254
  try {
2213
2255
  payload = JSON.parse(event.data);
2214
- } catch (e5) {
2256
+ } catch (e6) {
2215
2257
  return;
2216
2258
  }
2217
2259
  if (!payload || payload.event !== "infoDelivery") return;
2218
- const state = _optionalChain([payload, 'access', _37 => _37.info, 'optionalAccess', _38 => _38.playerState]);
2260
+ const state = _optionalChain([payload, 'access', _40 => _40.info, 'optionalAccess', _41 => _41.playerState]);
2219
2261
  if (typeof state !== "number") return;
2220
2262
  if (state === YT_STATE_PLAYING) {
2221
2263
  if (blurTimer !== null) return;
2222
2264
  blurTimer = setTimeout(() => {
2223
2265
  blurTimer = null;
2224
- _optionalChain([iframeRef, 'access', _39 => _39.current, 'optionalAccess', _40 => _40.blur, 'call', _41 => _41()]);
2266
+ _optionalChain([iframeRef, 'access', _42 => _42.current, 'optionalAccess', _43 => _43.blur, 'call', _44 => _44()]);
2225
2267
  }, YT_PLAYING_BLUR_DELAY_MS);
2226
2268
  return;
2227
2269
  }
@@ -2560,7 +2602,7 @@ function safeHref(url) {
2560
2602
  if (!SAFE_URL_SCHEMES.includes(parsed.protocol)) return null;
2561
2603
  if ((parsed.protocol === "https:" || parsed.protocol === "http:") && !parsed.hostname) return null;
2562
2604
  return trimmed;
2563
- } catch (e6) {
2605
+ } catch (e7) {
2564
2606
  return null;
2565
2607
  }
2566
2608
  }
@@ -2598,8 +2640,8 @@ function useEntityCardPlaceholder({
2598
2640
  aspect = "wide"
2599
2641
  }) {
2600
2642
  const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
2601
- const builder = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _42 => _42.resolvePlaceholderUrl]), () => ( NO_OP_BUILDER));
2602
- const enabled = placeholderUrl === void 0 && !!_optionalChain([runtime, 'optionalAccess', _43 => _43.resolvePlaceholderUrl]);
2643
+ const builder = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _45 => _45.resolvePlaceholderUrl]), () => ( NO_OP_BUILDER));
2644
+ const enabled = placeholderUrl === void 0 && !!_optionalChain([runtime, 'optionalAccess', _46 => _46.resolvePlaceholderUrl]);
2603
2645
  const derived = _chunkDAAFVOTLcjs.useOgPlaceholder.call(void 0, builder, title, siteName, enabled, aspect);
2604
2646
  return placeholderUrl !== void 0 ? placeholderUrl : derived;
2605
2647
  }
@@ -2780,7 +2822,7 @@ function OnboardingGuideCard({
2780
2822
  const compactCover = coverImage || placeholderUrl || null;
2781
2823
  const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
2782
2824
  const summary2 = stripMarkdownPreview(guide.video_summary || guide.content || "");
2783
- const author = _optionalChain([guide, 'access', _44 => _44.author, 'optionalAccess', _45 => _45.full_name, 'optionalAccess', _46 => _46.trim, 'call', _47 => _47()]) || "";
2825
+ const author = _optionalChain([guide, 'access', _47 => _47.author, 'optionalAccess', _48 => _48.full_name, 'optionalAccess', _49 => _49.trim, 'call', _50 => _50()]) || "";
2784
2826
  const subtitleParts = [
2785
2827
  `Step ${guide.step_order}`,
2786
2828
  guide.section,
@@ -3196,7 +3238,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
3196
3238
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
3197
3239
  const safePath = sanitizePath(row.path);
3198
3240
  if (safePath) {
3199
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _48 => _48.docPlatformTargets, 'optionalAccess', _49 => _49[row.documentType]]) : void 0;
3241
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _51 => _51.docPlatformTargets, 'optionalAccess', _52 => _52[row.documentType]]) : void 0;
3200
3242
  if (docTarget) {
3201
3243
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
3202
3244
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -3255,7 +3297,7 @@ function resolveSourceIcon(input, ctx = {}) {
3255
3297
  // src/components/ui/page-actions.tsx
3256
3298
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3257
3299
 
3258
- _chunkU6UNAC32cjs.init_button2.call(void 0, );
3300
+ _chunkN5UOJC3Vcjs.init_button2.call(void 0, );
3259
3301
 
3260
3302
  function actionKey(action, idx) {
3261
3303
  return `${_nullishCoalesce(_nullishCoalesce(action.label, () => ( action.ariaLabel)), () => ( "action"))}-${idx}`;
@@ -3289,7 +3331,7 @@ function actionToMenuItems(action, idx) {
3289
3331
  function renderActionButton(action, opts = {}) {
3290
3332
  if (action.iconAction) {
3291
3333
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3292
- _chunkU6UNAC32cjs.SplitButton,
3334
+ _chunkN5UOJC3Vcjs.SplitButton,
3293
3335
  {
3294
3336
  variant: _nullishCoalesce(action.variant, () => ( void 0)),
3295
3337
  href: action.href,
@@ -3311,7 +3353,7 @@ function renderActionButton(action, opts = {}) {
3311
3353
  {
3312
3354
  groups: [{ items: action.submenu }],
3313
3355
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3314
- _chunkU6UNAC32cjs.Button,
3356
+ _chunkN5UOJC3Vcjs.Button,
3315
3357
  {
3316
3358
  variant: "outline",
3317
3359
  disabled: action.disabled,
@@ -3329,7 +3371,7 @@ function renderActionButton(action, opts = {}) {
3329
3371
  if (isIconOnly) {
3330
3372
  const iconNode = action.iconOnlyOnDesktop ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex [&_svg]:!text-ods-text-primary", children: action.icon }) : action.icon;
3331
3373
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3332
- _chunkU6UNAC32cjs.Button,
3374
+ _chunkN5UOJC3Vcjs.Button,
3333
3375
  {
3334
3376
  variant: action.variant,
3335
3377
  size: "icon",
@@ -3345,7 +3387,7 @@ function renderActionButton(action, opts = {}) {
3345
3387
  );
3346
3388
  }
3347
3389
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3348
- _chunkU6UNAC32cjs.Button,
3390
+ _chunkN5UOJC3Vcjs.Button,
3349
3391
  {
3350
3392
  variant: action.variant,
3351
3393
  href: action.href,
@@ -3384,7 +3426,7 @@ function IconButtonsVariant({
3384
3426
  }) {
3385
3427
  const desktopActions = actions.filter((a) => !a.showOnlyMobile);
3386
3428
  const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
3387
- const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _50 => _50[0], 'access', _51 => _51.submenu, 'optionalAccess', _52 => _52.length]);
3429
+ const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _53 => _53[0], 'access', _54 => _54.submenu, 'optionalAccess', _55 => _55.length]);
3388
3430
  const singleAction = isSingleAction ? actions[0] : null;
3389
3431
  const useSingleActionMobile = isSingleAction && !hasMenuActions;
3390
3432
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -3703,14 +3745,19 @@ var DEFAULT_CONTENT_SUFFIXES = {
3703
3745
  investor_update: "investor-updates",
3704
3746
  webinar: "webinars",
3705
3747
  podcast: "podcasts",
3706
- event: "events"
3748
+ event: "events",
3749
+ // Author profile pages (`/authors/<slug>`) — identified by the profile
3750
+ // slug. Mirrors the hub's `PUBLIC_URL_PATHS.author`, which derives from
3751
+ // `AUTHORS_PATH` in the hub's `lib/utils/breadcrumbs.ts` (the hub-side
3752
+ // SSOT for the segment).
3753
+ author: "authors"
3707
3754
  };
3708
3755
  function lastPathSegment(url) {
3709
3756
  try {
3710
3757
  const pathname = new URL(url, "https://_.local").pathname;
3711
3758
  const segs = pathname.split("/").filter(Boolean);
3712
3759
  return segs.length > 0 ? segs[segs.length - 1] : null;
3713
- } catch (e7) {
3760
+ } catch (e8) {
3714
3761
  return null;
3715
3762
  }
3716
3763
  }
@@ -3736,7 +3783,7 @@ function resolveContentHref(composeContentUrl, args) {
3736
3783
  }
3737
3784
 
3738
3785
  // src/components/ui/error-state.tsx
3739
- _chunkU6UNAC32cjs.init_button2.call(void 0, );
3786
+ _chunkN5UOJC3Vcjs.init_button2.call(void 0, );
3740
3787
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
3741
3788
 
3742
3789
 
@@ -3790,7 +3837,7 @@ function ErrorState({
3790
3837
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "text-sm", styles.text), children: message }),
3791
3838
  (showRetry || showHome) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 mt-3", children: [
3792
3839
  showRetry && onRetry && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3793
- _chunkU6UNAC32cjs.Button,
3840
+ _chunkN5UOJC3Vcjs.Button,
3794
3841
  {
3795
3842
  onClick: onRetry,
3796
3843
  variant: "outline",
@@ -3801,7 +3848,7 @@ function ErrorState({
3801
3848
  }
3802
3849
  ),
3803
3850
  showHome && onHome && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3804
- _chunkU6UNAC32cjs.Button,
3851
+ _chunkN5UOJC3Vcjs.Button,
3805
3852
  {
3806
3853
  onClick: onHome,
3807
3854
  variant: "outline",
@@ -3895,7 +3942,7 @@ function useVideoOriginPreconnect({
3895
3942
  supabaseStorageOrigin
3896
3943
  } = {}) {
3897
3944
  const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
3898
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _53 => _53.endpoints, 'access', _54 => _54.supabaseStorageOrigin])));
3945
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _56 => _56.endpoints, 'access', _57 => _57.supabaseStorageOrigin])));
3899
3946
  try {
3900
3947
  _reactdom2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
3901
3948
  _reactdom2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
@@ -3914,17 +3961,17 @@ function useVideoWarmup({
3914
3961
  nearMargin = "1000px"
3915
3962
  } = {}) {
3916
3963
  const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
3917
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _55 => _55.endpoints, 'access', _56 => _56.supabaseStorageOrigin])));
3964
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _58 => _58.endpoints, 'access', _59 => _59.supabaseStorageOrigin])));
3918
3965
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
3919
3966
  const { ref, isNear } = _chunkDAAFVOTLcjs.useNearViewport.call(void 0, nearMargin);
3920
3967
  _react.useEffect.call(void 0, () => {
3921
3968
  if (!isNear || !videoUrl || !resolvedOrigin) return;
3922
3969
  const conn = navigator.connection;
3923
- if (_optionalChain([conn, 'optionalAccess', _57 => _57.saveData]) === true) return;
3970
+ if (_optionalChain([conn, 'optionalAccess', _60 => _60.saveData]) === true) return;
3924
3971
  let videoOrigin;
3925
3972
  try {
3926
3973
  videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
3927
- } catch (e8) {
3974
+ } catch (e9) {
3928
3975
  return;
3929
3976
  }
3930
3977
  if (videoOrigin !== resolvedOrigin) return;
@@ -4041,7 +4088,7 @@ function SearchInput({
4041
4088
  if (!showHiddenTags) return;
4042
4089
  const handleClick = (e) => {
4043
4090
  const target = e.target;
4044
- if (!_optionalChain([hiddenTagsRef, 'access', _58 => _58.current, 'optionalAccess', _59 => _59.contains, 'call', _60 => _60(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _61 => _61.current, 'optionalAccess', _62 => _62.contains, 'call', _63 => _63(target)])) {
4091
+ if (!_optionalChain([hiddenTagsRef, 'access', _61 => _61.current, 'optionalAccess', _62 => _62.contains, 'call', _63 => _63(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _64 => _64.current, 'optionalAccess', _65 => _65.contains, 'call', _66 => _66(target)])) {
4045
4092
  setShowHiddenTags(false);
4046
4093
  }
4047
4094
  };
@@ -4089,10 +4136,10 @@ function SearchInput({
4089
4136
  } else {
4090
4137
  setInternalValue("");
4091
4138
  }
4092
- _optionalChain([inputRef, 'access', _64 => _64.current, 'optionalAccess', _65 => _65.focus, 'call', _66 => _66()]);
4139
+ _optionalChain([inputRef, 'access', _67 => _67.current, 'optionalAccess', _68 => _68.focus, 'call', _69 => _69()]);
4093
4140
  };
4094
4141
  const handleResultClick = (result, e) => {
4095
- _optionalChain([onResultSelect, 'optionalCall', _67 => _67(
4142
+ _optionalChain([onResultSelect, 'optionalCall', _70 => _70(
4096
4143
  result,
4097
4144
  e ? {
4098
4145
  metaKey: e.metaKey,
@@ -4124,7 +4171,7 @@ function SearchInput({
4124
4171
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
4125
4172
  handleResultClick(flatResults[highlightedIndex]);
4126
4173
  } else {
4127
- _optionalChain([onSubmit, 'optionalCall', _68 => _68(currentValue)]);
4174
+ _optionalChain([onSubmit, 'optionalCall', _71 => _71(currentValue)]);
4128
4175
  }
4129
4176
  break;
4130
4177
  case "Escape":
@@ -4202,7 +4249,7 @@ function SearchInput({
4202
4249
  dropdownVisible && "!border-ods-accent"
4203
4250
  ),
4204
4251
  onClick: () => {
4205
- _optionalChain([inputRef, 'access', _69 => _69.current, 'optionalAccess', _70 => _70.focus, 'call', _71 => _71()]);
4252
+ _optionalChain([inputRef, 'access', _72 => _72.current, 'optionalAccess', _73 => _73.focus, 'call', _74 => _74()]);
4206
4253
  setIsOpen(true);
4207
4254
  },
4208
4255
  children: [
@@ -4286,10 +4333,10 @@ function SearchInput({
4286
4333
  align: "start",
4287
4334
  onOpenAutoFocus: (e) => {
4288
4335
  e.preventDefault();
4289
- _optionalChain([inputRef, 'access', _72 => _72.current, 'optionalAccess', _73 => _73.focus, 'call', _74 => _74()]);
4336
+ _optionalChain([inputRef, 'access', _75 => _75.current, 'optionalAccess', _76 => _76.focus, 'call', _77 => _77()]);
4290
4337
  },
4291
4338
  onInteractOutside: (e) => {
4292
- if (_optionalChain([containerRef, 'access', _75 => _75.current, 'optionalAccess', _76 => _76.contains, 'call', _77 => _77(e.target)])) {
4339
+ if (_optionalChain([containerRef, 'access', _78 => _78.current, 'optionalAccess', _79 => _79.contains, 'call', _80 => _80(e.target)])) {
4293
4340
  e.preventDefault();
4294
4341
  }
4295
4342
  },
@@ -4306,10 +4353,10 @@ function SearchInput({
4306
4353
  ref: hiddenTagsPopupRef,
4307
4354
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
4308
4355
  style: {
4309
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _78 => _78.current, 'optionalAccess', _79 => _79.getBoundingClientRect, 'call', _80 => _80(), 'access', _81 => _81.left]), () => ( 0))) : 0
4356
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _81 => _81.current, 'optionalAccess', _82 => _82.getBoundingClientRect, 'call', _83 => _83(), 'access', _84 => _84.left]), () => ( 0))) : 0
4310
4357
  },
4311
4358
  onRemove: (value2) => {
4312
- _optionalChain([onFilterRemove, 'optionalCall', _82 => _82(value2)]);
4359
+ _optionalChain([onFilterRemove, 'optionalCall', _85 => _85(value2)]);
4313
4360
  if (hiddenCount <= 1) setShowHiddenTags(false);
4314
4361
  }
4315
4362
  }
@@ -4346,7 +4393,7 @@ function SearchInput({
4346
4393
  }
4347
4394
 
4348
4395
  // src/components/ui/filter-pill-row.tsx
4349
- _chunkU6UNAC32cjs.init_button2.call(void 0, );
4396
+ _chunkN5UOJC3Vcjs.init_button2.call(void 0, );
4350
4397
 
4351
4398
 
4352
4399
  function FilterPillRow({
@@ -4363,7 +4410,7 @@ function FilterPillRow({
4363
4410
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5 text-ods-text-secondary", children: label })
4364
4411
  ] }),
4365
4412
  children || options.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4366
- _chunkU6UNAC32cjs.Button,
4413
+ _chunkN5UOJC3Vcjs.Button,
4367
4414
  {
4368
4415
  type: "button",
4369
4416
  variant: selectedValue === opt.value ? "accent" : "outline",
@@ -4514,5 +4561,9 @@ function FilterPillRow({
4514
4561
 
4515
4562
 
4516
4563
 
4517
- exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; 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.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.useControllableState = useControllableState; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveHrefForRuntime = resolveHrefForRuntime; exports.resolveExternalNavigation = resolveExternalNavigation; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.useEntityCardLink = useEntityCardLink; exports.useEntityCardPlaceholder = useEntityCardPlaceholder; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.sourceRowCtxFromRuntime = sourceRowCtxFromRuntime; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; 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.SearchInput = SearchInput; exports.FilterPillRow = FilterPillRow;
4518
- //# sourceMappingURL=chunk-TSZBJVYK.cjs.map
4564
+
4565
+
4566
+
4567
+
4568
+ exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; 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.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.useControllableState = useControllableState; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveHrefForRuntime = resolveHrefForRuntime; exports.resolveExternalNavigation = resolveExternalNavigation; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.useEntityCardLink = useEntityCardLink; exports.useEntityCardPlaceholder = useEntityCardPlaceholder; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.sourceRowCtxFromRuntime = sourceRowCtxFromRuntime; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; 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.SearchInput = SearchInput; exports.FilterPillRow = FilterPillRow;
4569
+ //# sourceMappingURL=chunk-EB76VWM4.cjs.map