@flamingo-stack/openframe-frontend-core 0.0.260 → 0.0.261

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 (81) hide show
  1. package/dist/{chunk-LCYDTEEK.cjs → chunk-2XUWR7AH.cjs} +18 -16
  2. package/dist/chunk-2XUWR7AH.cjs.map +1 -0
  3. package/dist/{chunk-FBH73RRM.cjs → chunk-36HLBLDK.cjs} +297 -295
  4. package/dist/chunk-36HLBLDK.cjs.map +1 -0
  5. package/dist/{chunk-CBIQDPHK.js → chunk-6AIXHYBZ.js} +5 -3
  6. package/dist/{chunk-CBIQDPHK.js.map → chunk-6AIXHYBZ.js.map} +1 -1
  7. package/dist/{chunk-EB76VWM4.cjs → chunk-7MNBE7XA.cjs} +2 -95
  8. package/dist/chunk-7MNBE7XA.cjs.map +1 -0
  9. package/dist/{chunk-KQQDN2WK.cjs → chunk-A56L7UQG.cjs} +12 -12
  10. package/dist/{chunk-KQQDN2WK.cjs.map → chunk-A56L7UQG.cjs.map} +1 -1
  11. package/dist/{chunk-2VZQJIVA.js → chunk-ALEKX56R.js} +3 -3
  12. package/dist/{chunk-NNDLCSGR.cjs → chunk-C3FAOQAH.cjs} +25 -25
  13. package/dist/{chunk-NNDLCSGR.cjs.map → chunk-C3FAOQAH.cjs.map} +1 -1
  14. package/dist/chunk-ERFO4JFK.js +104 -0
  15. package/dist/chunk-ERFO4JFK.js.map +1 -0
  16. package/dist/{chunk-LQKMMVCC.js → chunk-GBUGYHDY.js} +14 -3
  17. package/dist/chunk-GBUGYHDY.js.map +1 -0
  18. package/dist/{chunk-D4ESVTUT.cjs → chunk-J5R3QIOJ.cjs} +14 -3
  19. package/dist/chunk-J5R3QIOJ.cjs.map +1 -0
  20. package/dist/chunk-TT2VBR7P.cjs +104 -0
  21. package/dist/chunk-TT2VBR7P.cjs.map +1 -0
  22. package/dist/{chunk-ACJPRIZC.js → chunk-TZ3PV5NT.js} +2 -2
  23. package/dist/{chunk-RUMSS73U.js → chunk-U7UDESAU.js} +7 -5
  24. package/dist/{chunk-RUMSS73U.js.map → chunk-U7UDESAU.js.map} +1 -1
  25. package/dist/{chunk-NAOTZAKM.js → chunk-URJQGMNH.js} +247 -340
  26. package/dist/chunk-URJQGMNH.js.map +1 -0
  27. package/dist/{chunk-AIQ4DGO7.cjs → chunk-XKA7UFED.cjs} +34 -34
  28. package/dist/{chunk-AIQ4DGO7.cjs.map → chunk-XKA7UFED.cjs.map} +1 -1
  29. package/dist/{chunk-YMZZ5THD.js → chunk-YC357BPF.js} +2 -2
  30. package/dist/components/chat/index.cjs +4 -3
  31. package/dist/components/chat/index.cjs.map +1 -1
  32. package/dist/components/chat/index.js +3 -2
  33. package/dist/components/contact/index.cjs +5 -4
  34. package/dist/components/contact/index.cjs.map +1 -1
  35. package/dist/components/contact/index.js +4 -3
  36. package/dist/components/faq/index.cjs +3 -2
  37. package/dist/components/faq/index.cjs.map +1 -1
  38. package/dist/components/faq/index.js +2 -1
  39. package/dist/components/faq-accordion.d.ts +4 -3
  40. package/dist/components/faq-accordion.d.ts.map +1 -1
  41. package/dist/components/features/entity-tag-badges.d.ts +1 -0
  42. package/dist/components/features/entity-tag-badges.d.ts.map +1 -1
  43. package/dist/components/features/index.cjs +8 -4
  44. package/dist/components/features/index.cjs.map +1 -1
  45. package/dist/components/features/index.js +7 -3
  46. package/dist/components/index.cjs +85 -81
  47. package/dist/components/index.cjs.map +1 -1
  48. package/dist/components/index.js +13 -9
  49. package/dist/components/index.js.map +1 -1
  50. package/dist/components/navigation/index.cjs +4 -3
  51. package/dist/components/navigation/index.cjs.map +1 -1
  52. package/dist/components/navigation/index.js +3 -2
  53. package/dist/components/onboarding-guides/index.cjs +25 -23
  54. package/dist/components/onboarding-guides/index.cjs.map +1 -1
  55. package/dist/components/onboarding-guides/index.js +5 -3
  56. package/dist/components/onboarding-guides/index.js.map +1 -1
  57. package/dist/components/related-content/index.cjs +5 -4
  58. package/dist/components/related-content/index.cjs.map +1 -1
  59. package/dist/components/related-content/index.js +4 -3
  60. package/dist/components/tickets/index.cjs +67 -65
  61. package/dist/components/tickets/index.cjs.map +1 -1
  62. package/dist/components/tickets/index.js +8 -6
  63. package/dist/components/tickets/index.js.map +1 -1
  64. package/dist/components/ui/index.cjs +7 -5
  65. package/dist/components/ui/index.cjs.map +1 -1
  66. package/dist/components/ui/index.js +6 -4
  67. package/dist/index.cjs +10 -6
  68. package/dist/index.cjs.map +1 -1
  69. package/dist/index.js +9 -5
  70. package/package.json +1 -1
  71. package/src/components/faq-accordion.tsx +12 -7
  72. package/src/components/features/entity-tag-badges.tsx +4 -1
  73. package/dist/chunk-D4ESVTUT.cjs.map +0 -1
  74. package/dist/chunk-EB76VWM4.cjs.map +0 -1
  75. package/dist/chunk-FBH73RRM.cjs.map +0 -1
  76. package/dist/chunk-LCYDTEEK.cjs.map +0 -1
  77. package/dist/chunk-LQKMMVCC.js.map +0 -1
  78. package/dist/chunk-NAOTZAKM.js.map +0 -1
  79. /package/dist/{chunk-2VZQJIVA.js.map → chunk-ALEKX56R.js.map} +0 -0
  80. /package/dist/{chunk-ACJPRIZC.js.map → chunk-TZ3PV5NT.js.map} +0 -0
  81. /package/dist/{chunk-YMZZ5THD.js.map → chunk-YC357BPF.js.map} +0 -0
@@ -325,66 +325,6 @@ var TabsContent = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE
325
325
  ));
326
326
  TabsContent.displayName = TabsPrimitive.Content.displayName;
327
327
 
328
- // src/components/ui/status-badge.tsx
329
- init_cn();
330
- import { cva as cva2 } from "class-variance-authority";
331
- import { jsx as jsx5 } from "react/jsx-runtime";
332
- var statusBadgeVariants = cva2(
333
- "inline-flex items-center justify-center rounded font-mono font-medium uppercase tracking-wide",
334
- {
335
- variants: {
336
- variant: {
337
- card: "px-3 py-1.5 text-sm",
338
- button: "px-2 py-0.5 text-[10px] leading-none"
339
- },
340
- colorScheme: {
341
- cyan: "bg-[var(--ods-flamingo-cyan-base)] text-ods-text-on-accent",
342
- pink: "bg-[var(--ods-flamingo-pink-base)] text-ods-text-on-accent",
343
- yellow: "bg-[var(--ods-flamingo-yellow-base)] text-ods-text-on-accent border border-[var(--ods-system-greys-black)]",
344
- green: "bg-[var(--ods-flamingo-green-base)] text-ods-text-on-accent",
345
- purple: "bg-[var(--ods-flamingo-purple-base)] text-ods-text-on-accent",
346
- success: "bg-[var(--ods-attention-green-success-secondary)] text-[var(--ods-attention-green-success)]",
347
- error: "bg-[var(--ods-attention-red-error-secondary)] text-[var(--ods-attention-red-error)]",
348
- warning: "bg-[var(--ods-attention-yellow-warning-secondary)] text-[var(--ods-attention-yellow-warning)]",
349
- default: "bg-ods-bg-secondary text-ods-text-primary",
350
- // Border-only variants (no background) - for task type badges
351
- accentBorder: "bg-transparent border-2 text-ods-accent border-ods-accent",
352
- errorBorder: "bg-transparent border-2 text-[var(--ods-attention-red-error)] border-[var(--ods-attention-red-error)]",
353
- whiteBorder: "bg-transparent border-2 text-ods-text-primary border-ods-text-primary"
354
- }
355
- },
356
- defaultVariants: {
357
- variant: "card",
358
- colorScheme: "default"
359
- }
360
- }
361
- );
362
- function StatusBadge({
363
- text,
364
- variant,
365
- colorScheme,
366
- className,
367
- singleLine,
368
- ...props
369
- }) {
370
- const renderText = () => {
371
- if (singleLine) return text;
372
- if (variant === "button" && text.includes(" ")) {
373
- const words = text.split(" ");
374
- return /* @__PURE__ */ jsx5("span", { className: "flex flex-col items-center justify-center text-center gap-0", children: words.map((word, index) => /* @__PURE__ */ jsx5("span", { className: "block", children: word }, index)) });
375
- }
376
- return text;
377
- };
378
- return /* @__PURE__ */ jsx5(
379
- "span",
380
- {
381
- className: cn(statusBadgeVariants({ variant, colorScheme }), className),
382
- ...props,
383
- children: renderText()
384
- }
385
- );
386
- }
387
-
388
328
  // src/components/ui/simple-markdown-renderer.tsx
389
329
  import { useEffect, useState, useRef, useMemo, useCallback, memo } from "react";
390
330
  import ReactMarkdown, { defaultUrlTransform } from "react-markdown";
@@ -394,7 +334,7 @@ import rehypeHighlight from "rehype-highlight";
394
334
  import rehypeRaw from "rehype-raw";
395
335
  import { visit } from "unist-util-visit";
396
336
  init_cn();
397
- import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
337
+ import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
398
338
  var EVENT_HANDLER_ATTR_RE = /^on[a-z]+$/i;
399
339
  var JAVASCRIPT_URL_RE = /^[\s\x00-\x1f]*javascript:/i;
400
340
  var DATA_URL_RE = /^[\s\x00-\x1f]*data:/i;
@@ -704,15 +644,15 @@ var MermaidDiagram = ({ chart }) => {
704
644
  }, [chart, mounted]);
705
645
  if (error) {
706
646
  return /* @__PURE__ */ jsxs4("div", { className: "error-state bg-ods-card border border-ods-border rounded-lg p-6 my-6", children: [
707
- /* @__PURE__ */ jsx6("div", { className: "error-icon flex justify-center mb-4", children: /* @__PURE__ */ jsx6(AlertCircleIcon, { className: "w-12 h-12 text-ods-error" }) }),
708
- /* @__PURE__ */ jsx6("div", { className: "error-title text-center font-sans font-semibold text-lg text-ods-error mb-2", children: "Diagram Error" }),
709
- /* @__PURE__ */ jsx6("div", { className: "error-description text-center font-sans text-sm text-ods-text-secondary mb-4 break-words overflow-hidden max-w-full", children: /* @__PURE__ */ jsx6("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsx6("pre", { className: "whitespace-pre-wrap break-words text-xs", children: error }) }) })
647
+ /* @__PURE__ */ jsx5("div", { className: "error-icon flex justify-center mb-4", children: /* @__PURE__ */ jsx5(AlertCircleIcon, { className: "w-12 h-12 text-ods-error" }) }),
648
+ /* @__PURE__ */ jsx5("div", { className: "error-title text-center font-sans font-semibold text-lg text-ods-error mb-2", children: "Diagram Error" }),
649
+ /* @__PURE__ */ jsx5("div", { className: "error-description text-center font-sans text-sm text-ods-text-secondary mb-4 break-words overflow-hidden max-w-full", children: /* @__PURE__ */ jsx5("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsx5("pre", { className: "whitespace-pre-wrap break-words text-xs", children: error }) }) })
710
650
  ] });
711
651
  }
712
652
  if (isLoading || !svg) {
713
- return /* @__PURE__ */ jsx6("div", { className: "skeleton-code bg-ods-card border border-ods-border rounded-lg p-6 min-h-[120px] flex items-center justify-center", children: /* @__PURE__ */ jsx6("div", { className: "animate-pulse text-ods-text-tertiary font-sans", children: isLoading ? "Loading diagram renderer..." : "Rendering diagram..." }) });
653
+ return /* @__PURE__ */ jsx5("div", { className: "skeleton-code bg-ods-card border border-ods-border rounded-lg p-6 min-h-[120px] flex items-center justify-center", children: /* @__PURE__ */ jsx5("div", { className: "animate-pulse text-ods-text-tertiary font-sans", children: isLoading ? "Loading diagram renderer..." : "Rendering diagram..." }) });
714
654
  }
715
- return /* @__PURE__ */ jsx6("div", { className: "mermaid-container rounded-lg p-4 md:p-6 lg:p-8 my-6 overflow-x-auto bg-ods-card border border-ods-border", children: /* @__PURE__ */ jsx6("div", { className: "flex justify-center items-center w-full min-h-[200px] md:min-h-[250px] lg:min-h-[300px]", children: /* @__PURE__ */ jsx6(
655
+ return /* @__PURE__ */ jsx5("div", { className: "mermaid-container rounded-lg p-4 md:p-6 lg:p-8 my-6 overflow-x-auto bg-ods-card border border-ods-border", children: /* @__PURE__ */ jsx5("div", { className: "flex justify-center items-center w-full min-h-[200px] md:min-h-[250px] lg:min-h-[300px]", children: /* @__PURE__ */ jsx5(
716
656
  "div",
717
657
  {
718
658
  className: "mermaid-svg-container w-full flex justify-center max-w-full",
@@ -843,7 +783,7 @@ var SimpleMarkdownRendererImpl = ({
843
783
  const effectiveLevel = Tag2 === "h1" && demoteMarkdownH1ToH2 ? 2 : level;
844
784
  const id = generateHeadingId(text, effectiveLevel);
845
785
  const EffectiveTag = Tag2 === "h1" && demoteMarkdownH1ToH2 ? "h2" : Tag2;
846
- return /* @__PURE__ */ jsx6(EffectiveTag, { id, className: headingClassName, children });
786
+ return /* @__PURE__ */ jsx5(EffectiveTag, { id, className: headingClassName, children });
847
787
  },
848
788
  [generateHeadingId, demoteMarkdownH1ToH2]
849
789
  );
@@ -853,12 +793,12 @@ var SimpleMarkdownRendererImpl = ({
853
793
  const match = /language-(\w+)/.exec(codeClassName || "");
854
794
  const language = match ? match[1] : "";
855
795
  if (!inline && language === "mermaid") {
856
- return /* @__PURE__ */ jsx6(MermaidDiagram, { chart: String(children).replace(/\n$/, "") });
796
+ return /* @__PURE__ */ jsx5(MermaidDiagram, { chart: String(children).replace(/\n$/, "") });
857
797
  }
858
798
  if (!inline && match) {
859
799
  return /* @__PURE__ */ jsxs4("div", { className: "code-block-container border rounded-lg my-6 overflow-hidden bg-ods-card border-ods-border", children: [
860
- /* @__PURE__ */ jsx6("div", { className: "code-header border-b px-4 py-2 bg-ods-card border-ods-border", children: /* @__PURE__ */ jsx6("span", { className: "font-sans text-xs uppercase tracking-wide text-ods-text-tertiary", children: language || "code" }) }),
861
- /* @__PURE__ */ jsx6("div", { className: "p-4", children: /* @__PURE__ */ jsx6("pre", { className: "overflow-x-auto", children: /* @__PURE__ */ jsx6(
800
+ /* @__PURE__ */ jsx5("div", { className: "code-header border-b px-4 py-2 bg-ods-card border-ods-border", children: /* @__PURE__ */ jsx5("span", { className: "font-sans text-xs uppercase tracking-wide text-ods-text-tertiary", children: language || "code" }) }),
801
+ /* @__PURE__ */ jsx5("div", { className: "p-4", children: /* @__PURE__ */ jsx5("pre", { className: "overflow-x-auto", children: /* @__PURE__ */ jsx5(
862
802
  "code",
863
803
  {
864
804
  className: cn(`language-${language} hljs`, textSizes.code),
@@ -873,12 +813,12 @@ var SimpleMarkdownRendererImpl = ({
873
813
  ) }) })
874
814
  ] });
875
815
  }
876
- return /* @__PURE__ */ jsx6("code", { className: "font-mono text-[0.9em] px-1.5 py-0.5 rounded border bg-ods-card text-ods-text-primary border-ods-border", ...props, children });
816
+ return /* @__PURE__ */ jsx5("code", { className: "font-mono text-[0.9em] px-1.5 py-0.5 rounded border bg-ods-card text-ods-text-primary border-ods-border", ...props, children });
877
817
  },
878
818
  // --- div (pass-through, overridable for embeds) ---
879
- div: ({ node, className: divClassName, children, ...props }) => /* @__PURE__ */ jsx6("div", { className: divClassName, ...props, children }),
819
+ div: ({ node, className: divClassName, children, ...props }) => /* @__PURE__ */ jsx5("div", { className: divClassName, ...props, children }),
880
820
  // --- blockquote ---
881
- blockquote: ({ children }) => /* @__PURE__ */ jsx6("blockquote", { className: "border-l-4 border-ods-accent ml-0 pl-6 my-8 py-4 rounded-r-lg bg-ods-bg-secondary", children: /* @__PURE__ */ jsx6("div", { className: cn("font-sans leading-relaxed text-ods-text-secondary", textSizes.blockquote), children }) }),
821
+ blockquote: ({ children }) => /* @__PURE__ */ jsx5("blockquote", { className: "border-l-4 border-ods-accent ml-0 pl-6 my-8 py-4 rounded-r-lg bg-ods-bg-secondary", children: /* @__PURE__ */ jsx5("div", { className: cn("font-sans leading-relaxed text-ods-text-secondary", textSizes.blockquote), children }) }),
882
822
  // --- headings ---
883
823
  h1: makeHeading("h1", 1, cn("font-sans font-bold mt-8 mb-4 first:mt-0 text-ods-text-primary", textSizes.h1)),
884
824
  h2: makeHeading("h2", 2, cn("font-sans font-semibold mt-8 mb-4 pb-2 border-b text-ods-text-primary border-ods-border", textSizes.h2)),
@@ -887,7 +827,7 @@ var SimpleMarkdownRendererImpl = ({
887
827
  h5: makeHeading("h5", 5, cn("font-sans font-semibold mt-3 mb-2 text-ods-text-primary", textSizes.h5)),
888
828
  h6: makeHeading("h6", 6, cn("font-sans font-semibold mt-3 mb-1 text-ods-text-primary", textSizes.h6)),
889
829
  // --- paragraph ---
890
- p: ({ children }) => /* @__PURE__ */ jsx6("p", { className: cn("leading-relaxed mb-4 first:mt-0 last:mb-0 text-ods-text-primary", textSizes.p), children }),
830
+ p: ({ children }) => /* @__PURE__ */ jsx5("p", { className: cn("leading-relaxed mb-4 first:mt-0 last:mb-0 text-ods-text-primary", textSizes.p), children }),
891
831
  // --- links ---
892
832
  a: ({ href, children, className: linkClassName }) => {
893
833
  const isBroken = brokenLinks.includes(href);
@@ -895,12 +835,12 @@ var SimpleMarkdownRendererImpl = ({
895
835
  if (isBroken) {
896
836
  return /* @__PURE__ */ jsxs4("span", { className: "text-ods-accent cursor-not-allowed", children: [
897
837
  children,
898
- /* @__PURE__ */ jsx6("sup", { className: "ml-1 text-xs font-bold text-ods-attention-red-error", children: "[BROKEN]" })
838
+ /* @__PURE__ */ jsx5("sup", { className: "ml-1 text-xs font-bold text-ods-attention-red-error", children: "[BROKEN]" })
899
839
  ] });
900
840
  }
901
841
  if (isInternalDocLink && onInternalLinkClick) {
902
842
  const currentPath = propCurrentPath ?? "";
903
- return /* @__PURE__ */ jsx6(
843
+ return /* @__PURE__ */ jsx5(
904
844
  "span",
905
845
  {
906
846
  className: "text-ods-accent no-underline relative transition-colors duration-200 hover:after:w-full after:content-[''] after:absolute after:w-0 after:h-0.5 after:-bottom-0.5 after:left-0 after:bg-ods-accent after:transition-all after:duration-300 cursor-pointer",
@@ -935,7 +875,7 @@ var SimpleMarkdownRendererImpl = ({
935
875
  }
936
876
  );
937
877
  }
938
- return /* @__PURE__ */ jsx6(
878
+ return /* @__PURE__ */ jsx5(
939
879
  "a",
940
880
  {
941
881
  href,
@@ -996,7 +936,7 @@ var SimpleMarkdownRendererImpl = ({
996
936
  // (cached re-renders pop in without a perceptible shift).
997
937
  img: ({ src, alt }) => {
998
938
  if (!src || typeof src !== "string" || src.trim() === "") return null;
999
- return /* @__PURE__ */ jsx6(
939
+ return /* @__PURE__ */ jsx5(
1000
940
  next_image_default,
1001
941
  {
1002
942
  src,
@@ -1010,22 +950,22 @@ var SimpleMarkdownRendererImpl = ({
1010
950
  );
1011
951
  },
1012
952
  // --- lists ---
1013
- ul: ({ children }) => /* @__PURE__ */ jsx6("ul", { className: "list-disc list-outside my-4 ml-8 space-y-2 text-ods-text-primary", children }),
1014
- ol: ({ children }) => /* @__PURE__ */ jsx6("ol", { className: "list-decimal list-outside my-4 ml-8 space-y-2 text-ods-text-primary", children }),
1015
- li: ({ children }) => /* @__PURE__ */ jsx6("li", { className: cn("leading-relaxed pl-2", textSizes.li), children }),
953
+ ul: ({ children }) => /* @__PURE__ */ jsx5("ul", { className: "list-disc list-outside my-4 ml-8 space-y-2 text-ods-text-primary", children }),
954
+ ol: ({ children }) => /* @__PURE__ */ jsx5("ol", { className: "list-decimal list-outside my-4 ml-8 space-y-2 text-ods-text-primary", children }),
955
+ li: ({ children }) => /* @__PURE__ */ jsx5("li", { className: cn("leading-relaxed pl-2", textSizes.li), children }),
1016
956
  // --- tables ---
1017
- table: ({ children }) => /* @__PURE__ */ jsx6("div", { className: "table-container my-6 overflow-x-auto", children: /* @__PURE__ */ jsx6("div", { className: "min-w-full border rounded-lg border-ods-border bg-ods-card", children: /* @__PURE__ */ jsx6("table", { className: "w-full table-fixed md:table-auto", children }) }) }),
1018
- thead: ({ children }) => /* @__PURE__ */ jsx6("thead", { className: "bg-ods-bg-secondary", children }),
1019
- th: ({ children }) => /* @__PURE__ */ jsx6("th", { className: cn("px-2 md:px-4 py-3 text-left font-semibold text-ods-accent border-r last:border-r-0 break-words border-ods-border", textSizes.th), children }),
1020
- td: ({ children }) => /* @__PURE__ */ jsx6("td", { className: cn("px-2 md:px-4 py-3 border-r last:border-r-0 border-b break-words whitespace-normal text-ods-text-primary border-ods-border", textSizes.td), children }),
957
+ table: ({ children }) => /* @__PURE__ */ jsx5("div", { className: "table-container my-6 overflow-x-auto", children: /* @__PURE__ */ jsx5("div", { className: "min-w-full border rounded-lg border-ods-border bg-ods-card", children: /* @__PURE__ */ jsx5("table", { className: "w-full table-fixed md:table-auto", children }) }) }),
958
+ thead: ({ children }) => /* @__PURE__ */ jsx5("thead", { className: "bg-ods-bg-secondary", children }),
959
+ th: ({ children }) => /* @__PURE__ */ jsx5("th", { className: cn("px-2 md:px-4 py-3 text-left font-semibold text-ods-accent border-r last:border-r-0 break-words border-ods-border", textSizes.th), children }),
960
+ td: ({ children }) => /* @__PURE__ */ jsx5("td", { className: cn("px-2 md:px-4 py-3 border-r last:border-r-0 border-b break-words whitespace-normal text-ods-text-primary border-ods-border", textSizes.td), children }),
1021
961
  // --- horizontal rule ---
1022
- hr: () => /* @__PURE__ */ jsx6("hr", { className: "border-0 border-t my-8 border-ods-border" }),
962
+ hr: () => /* @__PURE__ */ jsx5("hr", { className: "border-0 border-t my-8 border-ods-border" }),
1023
963
  // --- merge overrides ---
1024
964
  ...componentOverrides
1025
965
  }), [makeHeading, brokenLinks, propCurrentPath, onInternalLinkClick, onResolveLink, componentOverrides, textSizes]);
1026
966
  return /* @__PURE__ */ jsxs4("div", { className: `simple-markdown-renderer ${className}`, children: [
1027
- /* @__PURE__ */ jsx6("style", { dangerouslySetInnerHTML: { __html: mermaidStyles } }),
1028
- /* @__PURE__ */ jsx6("div", { className: "content-wrapper max-w-none break-words", children: /* @__PURE__ */ jsx6("article", { className: "prose prose-lg max-w-none", children: /* @__PURE__ */ jsx6(
967
+ /* @__PURE__ */ jsx5("style", { dangerouslySetInnerHTML: { __html: mermaidStyles } }),
968
+ /* @__PURE__ */ jsx5("div", { className: "content-wrapper max-w-none break-words", children: /* @__PURE__ */ jsx5("article", { className: "prose prose-lg max-w-none", children: /* @__PURE__ */ jsx5(
1029
969
  ReactMarkdown,
1030
970
  {
1031
971
  remarkPlugins: [remarkGfm, remarkBreaks, ...additionalRemarkPlugins ?? []],
@@ -1350,7 +1290,7 @@ function formatBioText(aboutHtml, fallback = "") {
1350
1290
  // src/components/ui/square-avatar.tsx
1351
1291
  import * as React4 from "react";
1352
1292
  init_cn();
1353
- import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
1293
+ import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
1354
1294
  var SquareAvatar = React4.memo(React4.forwardRef(
1355
1295
  ({ className, src, alt, size = "md", fallback, variant = "square", initialsClassName, ...props }, ref) => {
1356
1296
  const sizeClasses = {
@@ -1381,7 +1321,7 @@ var SquareAvatar = React4.memo(React4.forwardRef(
1381
1321
  ref,
1382
1322
  ...props,
1383
1323
  children: [
1384
- /* @__PURE__ */ jsx7("div", { className: cn(
1324
+ /* @__PURE__ */ jsx6("div", { className: cn(
1385
1325
  // Initials use `text-ods-text-primary` so they stay readable
1386
1326
  // both on the default `bg-ods-bg` AND on accent-fill backgrounds
1387
1327
  // (`bg-ods-flamingo-pink` for the current user, `bg-ods-flamingo-cyan`
@@ -1394,7 +1334,7 @@ var SquareAvatar = React4.memo(React4.forwardRef(
1394
1334
  initialsClassName,
1395
1335
  src && "hidden"
1396
1336
  ), children: getFirstLastInitials(fallback || alt) || "?" }),
1397
- src && /* @__PURE__ */ jsx7(
1337
+ src && /* @__PURE__ */ jsx6(
1398
1338
  next_image_default,
1399
1339
  {
1400
1340
  className: "absolute inset-0 h-full w-full object-cover",
@@ -1500,7 +1440,7 @@ import { Check } from "lucide-react";
1500
1440
  import React7, { useCallback as useCallback3 } from "react";
1501
1441
  init_cn();
1502
1442
  init_button();
1503
- import { Fragment, jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
1443
+ import { Fragment, jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
1504
1444
  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
1445
  var WRAPPER_CLASSES = "relative flex items-stretch border-b border-ods-border last:border-b-0";
1506
1446
  var SECONDARY_ACTION_CLASSES = "flex p-[var(--spacing-system-s)] shrink-0 items-center justify-center self-stretch border-l border-ods-border transition-colors hover:bg-ods-bg-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus [&_svg]:w-4 [&_svg]:h-4 md:[&_svg]:w-6 md:[&_svg]:h-6";
@@ -1521,7 +1461,7 @@ var SecondaryAction = ({ action }) => {
1521
1461
  action.disabled && "cursor-not-allowed opacity-60 pointer-events-none"
1522
1462
  );
1523
1463
  if (action.href) {
1524
- return /* @__PURE__ */ jsx8(
1464
+ return /* @__PURE__ */ jsx7(
1525
1465
  next_link_default,
1526
1466
  {
1527
1467
  href: action.href,
@@ -1537,7 +1477,7 @@ var SecondaryAction = ({ action }) => {
1537
1477
  }
1538
1478
  );
1539
1479
  }
1540
- return /* @__PURE__ */ jsx8(
1480
+ return /* @__PURE__ */ jsx7(
1541
1481
  "button",
1542
1482
  {
1543
1483
  type: "button",
@@ -1591,7 +1531,7 @@ var MenuItem = ({ item, onItemClick }) => {
1591
1531
  [item, onItemClick]
1592
1532
  );
1593
1533
  if (item.type === "separator") {
1594
- return /* @__PURE__ */ jsx8("div", { className: "bg-ods-system-greys-soft-grey h-1 w-full" });
1534
+ return /* @__PURE__ */ jsx7("div", { className: "bg-ods-system-greys-soft-grey h-1 w-full" });
1595
1535
  }
1596
1536
  const itemClasses = cn(
1597
1537
  ROW_CLASSES,
@@ -1603,7 +1543,7 @@ var MenuItem = ({ item, onItemClick }) => {
1603
1543
  );
1604
1544
  const renderAsLink = !!item.href && item.type !== "submenu" && item.type !== "checkbox";
1605
1545
  const rowContent = /* @__PURE__ */ jsxs6(Fragment, { children: [
1606
- item.icon && /* @__PURE__ */ jsx8(
1546
+ item.icon && /* @__PURE__ */ jsx7(
1607
1547
  "div",
1608
1548
  {
1609
1549
  className: cn(
@@ -1614,7 +1554,7 @@ var MenuItem = ({ item, onItemClick }) => {
1614
1554
  children: item.icon
1615
1555
  }
1616
1556
  ),
1617
- /* @__PURE__ */ jsx8(
1557
+ /* @__PURE__ */ jsx7(
1618
1558
  "span",
1619
1559
  {
1620
1560
  className: cn(
@@ -1624,21 +1564,21 @@ var MenuItem = ({ item, onItemClick }) => {
1624
1564
  children: item.label
1625
1565
  }
1626
1566
  ),
1627
- item.type === "checkbox" && /* @__PURE__ */ jsx8(
1567
+ item.type === "checkbox" && /* @__PURE__ */ jsx7(
1628
1568
  "div",
1629
1569
  {
1630
1570
  className: cn(
1631
1571
  "w-4 h-4 md:w-6 md:h-6 flex items-center justify-center rounded-md transition-colors",
1632
1572
  item.checked ? "bg-ods-accent" : "border-2 border-ods-border bg-transparent"
1633
1573
  ),
1634
- children: item.checked && /* @__PURE__ */ jsx8(Check, { className: "w-3 h-3 md:w-4 md:h-4 text-ods-text-on-accent", strokeWidth: 3 })
1574
+ children: item.checked && /* @__PURE__ */ jsx7(Check, { className: "w-3 h-3 md:w-4 md:h-4 text-ods-text-on-accent", strokeWidth: 3 })
1635
1575
  }
1636
1576
  ),
1637
- item.type === "submenu" && /* @__PURE__ */ jsx8(Chevron02RightIcon, { className: "w-4 h-4 md:w-6 md:h-6 text-ods-text-secondary" })
1577
+ item.type === "submenu" && /* @__PURE__ */ jsx7(Chevron02RightIcon, { className: "w-4 h-4 md:w-6 md:h-6 text-ods-text-secondary" })
1638
1578
  ] });
1639
1579
  if (renderAsLink && item.href) {
1640
1580
  return /* @__PURE__ */ jsxs6("div", { className: WRAPPER_CLASSES, children: [
1641
- /* @__PURE__ */ jsx8(
1581
+ /* @__PURE__ */ jsx7(
1642
1582
  next_link_default,
1643
1583
  {
1644
1584
  href: item.href,
@@ -1650,13 +1590,13 @@ var MenuItem = ({ item, onItemClick }) => {
1650
1590
  children: rowContent
1651
1591
  }
1652
1592
  ),
1653
- item.iconAction && /* @__PURE__ */ jsx8(SecondaryAction, { action: item.iconAction })
1593
+ item.iconAction && /* @__PURE__ */ jsx7(SecondaryAction, { action: item.iconAction })
1654
1594
  ] });
1655
1595
  }
1656
1596
  if (item.type === "submenu" && item.submenu) {
1657
1597
  return /* @__PURE__ */ jsxs6("div", { className: WRAPPER_CLASSES, children: [
1658
1598
  /* @__PURE__ */ jsxs6(DropdownMenuPrimitive.Sub, { children: [
1659
- /* @__PURE__ */ jsx8(
1599
+ /* @__PURE__ */ jsx7(
1660
1600
  DropdownMenuPrimitive.SubTrigger,
1661
1601
  {
1662
1602
  disabled: item.disabled,
@@ -1664,12 +1604,12 @@ var MenuItem = ({ item, onItemClick }) => {
1664
1604
  children: rowContent
1665
1605
  }
1666
1606
  ),
1667
- /* @__PURE__ */ jsx8(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx8(
1607
+ /* @__PURE__ */ jsx7(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx7(
1668
1608
  DropdownMenuPrimitive.SubContent,
1669
1609
  {
1670
1610
  sideOffset: 4,
1671
1611
  className: "z-[1500] min-w-[256px] max-h-[var(--radix-popper-available-height)] bg-ods-bg border border-ods-border rounded-md shadow-xl overflow-y-auto p-0",
1672
- children: item.submenu.map((subItem, index) => /* @__PURE__ */ jsx8(
1612
+ children: item.submenu.map((subItem, index) => /* @__PURE__ */ jsx7(
1673
1613
  MenuItem,
1674
1614
  {
1675
1615
  item: subItem,
@@ -1680,11 +1620,11 @@ var MenuItem = ({ item, onItemClick }) => {
1680
1620
  }
1681
1621
  ) })
1682
1622
  ] }),
1683
- item.iconAction && /* @__PURE__ */ jsx8(SecondaryAction, { action: item.iconAction })
1623
+ item.iconAction && /* @__PURE__ */ jsx7(SecondaryAction, { action: item.iconAction })
1684
1624
  ] });
1685
1625
  }
1686
1626
  return /* @__PURE__ */ jsxs6("div", { className: WRAPPER_CLASSES, children: [
1687
- /* @__PURE__ */ jsx8(
1627
+ /* @__PURE__ */ jsx7(
1688
1628
  "div",
1689
1629
  {
1690
1630
  role: "menuitem",
@@ -1696,23 +1636,23 @@ var MenuItem = ({ item, onItemClick }) => {
1696
1636
  children: rowContent
1697
1637
  }
1698
1638
  ),
1699
- item.iconAction && /* @__PURE__ */ jsx8(SecondaryAction, { action: item.iconAction })
1639
+ item.iconAction && /* @__PURE__ */ jsx7(SecondaryAction, { action: item.iconAction })
1700
1640
  ] });
1701
1641
  };
1702
- var GroupSeparator = () => /* @__PURE__ */ jsx8("div", { className: "bg-ods-bg-surface h-[3px] w-full" });
1642
+ var GroupSeparator = () => /* @__PURE__ */ jsx7("div", { className: "bg-ods-bg-surface h-[3px] w-full" });
1703
1643
  var ActionsMenu = ({
1704
1644
  groups,
1705
1645
  className = "",
1706
1646
  onItemClick
1707
1647
  }) => {
1708
- return /* @__PURE__ */ jsx8(
1648
+ return /* @__PURE__ */ jsx7(
1709
1649
  "div",
1710
1650
  {
1711
1651
  className: `relative min-w-[256px] max-h-[var(--radix-popper-available-height)] bg-ods-bg border border-ods-border rounded-md shadow-lg overflow-y-auto ${className}`,
1712
1652
  children: groups.map((group, groupIndex) => {
1713
1653
  const groupKey = group.id || group.items.map((i) => i.id).join("|");
1714
1654
  return /* @__PURE__ */ jsxs6(React7.Fragment, { children: [
1715
- group.items.map((item, itemIndex) => /* @__PURE__ */ jsx8(
1655
+ group.items.map((item, itemIndex) => /* @__PURE__ */ jsx7(
1716
1656
  MenuItem,
1717
1657
  {
1718
1658
  item,
@@ -1720,7 +1660,7 @@ var ActionsMenu = ({
1720
1660
  },
1721
1661
  item.id || `${groupKey}-${itemIndex}`
1722
1662
  )),
1723
- group.separator && groupIndex < groups.length - 1 && /* @__PURE__ */ jsx8(GroupSeparator, {})
1663
+ group.separator && groupIndex < groups.length - 1 && /* @__PURE__ */ jsx7(GroupSeparator, {})
1724
1664
  ] }, groupKey);
1725
1665
  })
1726
1666
  }
@@ -1757,17 +1697,17 @@ var ActionsMenuDropdown = ({
1757
1697
  [onItemClick, setOpen]
1758
1698
  );
1759
1699
  return /* @__PURE__ */ jsxs6(DropdownMenu, { open, onOpenChange: setOpen, modal: false, children: [
1760
- /* @__PURE__ */ jsx8(DropdownMenuTrigger, { asChild: true, children: customTrigger ?? /* @__PURE__ */ jsx8(
1700
+ /* @__PURE__ */ jsx7(DropdownMenuTrigger, { asChild: true, children: customTrigger ?? /* @__PURE__ */ jsx7(
1761
1701
  Button,
1762
1702
  {
1763
1703
  variant: "outline",
1764
1704
  size: "icon",
1765
1705
  "aria-label": triggerAriaLabel,
1766
1706
  className: triggerClassName || "bg-ods-card border-ods-border hover:bg-ods-bg-hover flex items-center justify-center focus-visible:ring-0",
1767
- leftIcon: trigger ?? /* @__PURE__ */ jsx8(Ellipsis01Icon, { size: 24, className: "text-ods-text-primary" })
1707
+ leftIcon: trigger ?? /* @__PURE__ */ jsx7(Ellipsis01Icon, { size: 24, className: "text-ods-text-primary" })
1768
1708
  }
1769
1709
  ) }),
1770
- /* @__PURE__ */ jsx8(
1710
+ /* @__PURE__ */ jsx7(
1771
1711
  DropdownMenuContent,
1772
1712
  {
1773
1713
  align,
@@ -1778,7 +1718,7 @@ var ActionsMenuDropdown = ({
1778
1718
  "p-0 border-0 bg-transparent shadow-none overflow-visible",
1779
1719
  contentClassName
1780
1720
  ),
1781
- children: /* @__PURE__ */ jsx8(
1721
+ children: /* @__PURE__ */ jsx7(
1782
1722
  ActionsMenu,
1783
1723
  {
1784
1724
  groups,
@@ -1920,7 +1860,7 @@ function resolveExternalNavigation(args) {
1920
1860
 
1921
1861
  // src/components/chat/entity-cards/entity-author-card.tsx
1922
1862
  init_next_link();
1923
- import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
1863
+ import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
1924
1864
  var EMPTY_AUTHOR_PLACEHOLDER = {
1925
1865
  full_name: "\u2014",
1926
1866
  avatar_url: null,
@@ -1932,9 +1872,9 @@ function EntityMetadataValueCell({
1932
1872
  className,
1933
1873
  uppercase = true
1934
1874
  }) {
1935
- return /* @__PURE__ */ jsx9("div", { className: `bg-ods-card p-4 flex flex-col gap-3 ${className ?? ""}`, children: /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-0", children: [
1936
- /* @__PURE__ */ jsx9("p", { className: "text-h4 text-ods-text-primary", children: uppercase ? value.toLocaleUpperCase() : value }),
1937
- /* @__PURE__ */ jsx9("p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary", children: label })
1875
+ return /* @__PURE__ */ jsx8("div", { className: `bg-ods-card p-4 flex flex-col gap-3 ${className ?? ""}`, children: /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-0", children: [
1876
+ /* @__PURE__ */ jsx8("p", { className: "text-h4 text-ods-text-primary", children: uppercase ? value.toLocaleUpperCase() : value }),
1877
+ /* @__PURE__ */ jsx8("p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary", children: label })
1938
1878
  ] }) });
1939
1879
  }
1940
1880
  function EntityMetadataAuthorCell({
@@ -1946,7 +1886,7 @@ function EntityMetadataAuthorCell({
1946
1886
  const trimmedName = typeof author.full_name === "string" ? author.full_name.trim() : "";
1947
1887
  const fullName = trimmedName || "Unknown Author";
1948
1888
  return /* @__PURE__ */ jsxs7("div", { className: `bg-ods-card p-4 flex items-center gap-3 ${className ?? ""}`, children: [
1949
- /* @__PURE__ */ jsx9(
1889
+ /* @__PURE__ */ jsx8(
1950
1890
  SquareAvatar,
1951
1891
  {
1952
1892
  src: author.avatar_url || "",
@@ -1957,8 +1897,8 @@ function EntityMetadataAuthorCell({
1957
1897
  }
1958
1898
  ),
1959
1899
  /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-0 flex-1 min-w-0", children: [
1960
- /* @__PURE__ */ jsx9("p", { className: "text-h3 tracking-[-0.36px] text-ods-text-primary truncate", title: fullName, children: authorHref && trimmedName ? /* @__PURE__ */ jsx9(next_link_default, { href: authorHref, className: "hover:text-ods-accent transition-colors", children: fullName }) : fullName }),
1961
- /* @__PURE__ */ jsx9("p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary", children: author.job_title || roleLabel })
1900
+ /* @__PURE__ */ jsx8("p", { className: "text-h3 tracking-[-0.36px] text-ods-text-primary truncate", title: fullName, children: authorHref && trimmedName ? /* @__PURE__ */ jsx8(next_link_default, { href: authorHref, className: "hover:text-ods-accent transition-colors", children: fullName }) : fullName }),
1901
+ /* @__PURE__ */ jsx8("p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary", children: author.job_title || roleLabel })
1962
1902
  ] })
1963
1903
  ] });
1964
1904
  }
@@ -1987,7 +1927,7 @@ function EntityAuthorCard({
1987
1927
  {
1988
1928
  className: `grid grid-cols-1 ${gridColsClass} border border-ods-border rounded-md overflow-hidden w-full ${className ?? ""}`,
1989
1929
  children: [
1990
- extras.map((cell, i) => /* @__PURE__ */ jsx9(
1930
+ extras.map((cell, i) => /* @__PURE__ */ jsx8(
1991
1931
  EntityMetadataValueCell,
1992
1932
  {
1993
1933
  value: cell.value,
@@ -1997,7 +1937,7 @@ function EntityAuthorCard({
1997
1937
  },
1998
1938
  `${cell.label}-${i}`
1999
1939
  )),
2000
- showDateCell && /* @__PURE__ */ jsx9(
1940
+ showDateCell && /* @__PURE__ */ jsx8(
2001
1941
  EntityMetadataValueCell,
2002
1942
  {
2003
1943
  value: dateLabel,
@@ -2006,21 +1946,21 @@ function EntityAuthorCard({
2006
1946
  className: dividerClass
2007
1947
  }
2008
1948
  ),
2009
- /* @__PURE__ */ jsx9(EntityMetadataAuthorCell, { author: effectiveAuthor, roleLabel, authorHref })
1949
+ /* @__PURE__ */ jsx8(EntityMetadataAuthorCell, { author: effectiveAuthor, roleLabel, authorHref })
2010
1950
  ]
2011
1951
  }
2012
1952
  );
2013
1953
  }
2014
1954
 
2015
1955
  // src/components/chat/entity-cards/blog-image-placeholder.tsx
2016
- import { jsx as jsx10 } from "react/jsx-runtime";
1956
+ import { jsx as jsx9 } from "react/jsx-runtime";
2017
1957
  function BlogImagePlaceholder({
2018
1958
  imageUrl,
2019
1959
  title,
2020
1960
  className = ""
2021
1961
  }) {
2022
1962
  if (!imageUrl) return null;
2023
- return /* @__PURE__ */ jsx10("span", { className: `relative block w-full h-full overflow-hidden bg-ods-bg ${className}`, children: /* @__PURE__ */ jsx10(
1963
+ return /* @__PURE__ */ jsx9("span", { className: `relative block w-full h-full overflow-hidden bg-ods-bg ${className}`, children: /* @__PURE__ */ jsx9(
2024
1964
  "img",
2025
1965
  {
2026
1966
  src: imageUrl,
@@ -2046,7 +1986,7 @@ function fetchPriorityProp(priority) {
2046
1986
  // src/components/features/video.tsx
2047
1987
  import { useEffect as useEffect4, useMemo as useMemo3, useRef as useRef4, useState as useState3 } from "react";
2048
1988
  import MuxPlayer from "@mux/mux-player-react";
2049
- import { jsx as jsx11, jsxs as jsxs8 } from "react/jsx-runtime";
1989
+ import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
2050
1990
  if (typeof window !== "undefined") {
2051
1991
  const w = window;
2052
1992
  if (!w.chrome?.cast) {
@@ -2107,7 +2047,7 @@ function Video(props) {
2107
2047
  if (!url) return null;
2108
2048
  const effectiveKind = resolveKind(props, url);
2109
2049
  const layout = props.layout ?? "native";
2110
- const inner = effectiveKind === "youtube" ? /* @__PURE__ */ jsx11(
2050
+ const inner = effectiveKind === "youtube" ? /* @__PURE__ */ jsx10(
2111
2051
  YouTubeFacade,
2112
2052
  {
2113
2053
  url,
@@ -2116,7 +2056,7 @@ function Video(props) {
2116
2056
  className: props.className,
2117
2057
  minimalControls: props.minimalControls
2118
2058
  }
2119
- ) : /* @__PURE__ */ jsx11(
2059
+ ) : /* @__PURE__ */ jsx10(
2120
2060
  FilePlayer,
2121
2061
  {
2122
2062
  url,
@@ -2140,9 +2080,9 @@ function resolveKind(props, url) {
2140
2080
  function wrapWithLayout(inner, layout) {
2141
2081
  switch (layout) {
2142
2082
  case "centered":
2143
- return /* @__PURE__ */ jsx11("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ jsx11("div", { className: "w-full max-w-3xl aspect-video rounded-lg overflow-hidden border border-ods-border", children: inner }) });
2083
+ return /* @__PURE__ */ jsx10("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ jsx10("div", { className: "w-full max-w-3xl aspect-video rounded-lg overflow-hidden border border-ods-border", children: inner }) });
2144
2084
  case "fill":
2145
- return /* @__PURE__ */ jsx11("div", { className: "absolute inset-0 w-full h-full", children: inner });
2085
+ return /* @__PURE__ */ jsx10("div", { className: "absolute inset-0 w-full h-full", children: inner });
2146
2086
  case "native":
2147
2087
  default:
2148
2088
  return inner;
@@ -2161,7 +2101,7 @@ function FilePlayer({
2161
2101
  "[Video] srtContent supplied without captionsUrl \u2014 captions will not render. Pass captionsUrl (the VTT URL) instead; raw SRT text overlays are no longer supported."
2162
2102
  );
2163
2103
  }
2164
- return /* @__PURE__ */ jsx11(
2104
+ return /* @__PURE__ */ jsx10(
2165
2105
  MuxPlayer,
2166
2106
  {
2167
2107
  src: url,
@@ -2173,7 +2113,7 @@ function FilePlayer({
2173
2113
  accentColor: "var(--ods-accent, var(--color-accent-primary))",
2174
2114
  className,
2175
2115
  style: { width: "100%", height: "100%" },
2176
- children: captionsUrl ? /* @__PURE__ */ jsx11(
2116
+ children: captionsUrl ? /* @__PURE__ */ jsx10(
2177
2117
  "track",
2178
2118
  {
2179
2119
  kind: "captions",
@@ -2195,7 +2135,7 @@ function YouTubeFacade({
2195
2135
  }) {
2196
2136
  const videoId = extractYouTubeId(url);
2197
2137
  if (!videoId) return null;
2198
- return /* @__PURE__ */ jsx11(YouTubeFacadeInner, { videoId, title, priority, className, minimalControls });
2138
+ return /* @__PURE__ */ jsx10(YouTubeFacadeInner, { videoId, title, priority, className, minimalControls });
2199
2139
  }
2200
2140
  var YT_NOCOOKIE_ORIGIN = "https://www.youtube-nocookie.com";
2201
2141
  var YT_STATE_ENDED = 0;
@@ -2281,7 +2221,7 @@ function YouTubeFacadeInner({
2281
2221
  const wrapperClass = `relative w-full ${className ?? ""}`;
2282
2222
  const wrapperStyle = { paddingBottom: "56.25%" };
2283
2223
  if (activated) {
2284
- return /* @__PURE__ */ jsx11("div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ jsx11(
2224
+ return /* @__PURE__ */ jsx10("div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ jsx10(
2285
2225
  "iframe",
2286
2226
  {
2287
2227
  ref: iframeRef,
@@ -2293,7 +2233,7 @@ function YouTubeFacadeInner({
2293
2233
  }
2294
2234
  ) });
2295
2235
  }
2296
- return /* @__PURE__ */ jsx11("div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ jsxs8(
2236
+ return /* @__PURE__ */ jsx10("div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ jsxs8(
2297
2237
  "button",
2298
2238
  {
2299
2239
  type: "button",
@@ -2302,8 +2242,8 @@ function YouTubeFacadeInner({
2302
2242
  className: "group absolute inset-0 p-0 m-0 border border-ods-border rounded-lg overflow-hidden bg-ods-card cursor-pointer",
2303
2243
  children: [
2304
2244
  /* @__PURE__ */ jsxs8("picture", { children: [
2305
- /* @__PURE__ */ jsx11("source", { type: "image/webp", srcSet: posterWebp }),
2306
- /* @__PURE__ */ jsx11(
2245
+ /* @__PURE__ */ jsx10("source", { type: "image/webp", srcSet: posterWebp }),
2246
+ /* @__PURE__ */ jsx10(
2307
2247
  "img",
2308
2248
  {
2309
2249
  src: posterJpg,
@@ -2315,14 +2255,14 @@ function YouTubeFacadeInner({
2315
2255
  }
2316
2256
  )
2317
2257
  ] }),
2318
- /* @__PURE__ */ jsx11("div", { className: "absolute inset-0 flex items-center justify-center bg-ods-bg-inverse bg-opacity-20 transition-opacity duration-200 group-hover:bg-opacity-30", children: /* @__PURE__ */ jsx11("span", { className: "flex items-center justify-center w-16 h-16 rounded-full bg-ods-accent text-ods-text-on-accent shadow-lg transition-transform duration-200 group-hover:scale-110", children: /* @__PURE__ */ jsx11(PlayIcon, { size: 24, color: "currentColor", className: "ml-1" }) }) })
2258
+ /* @__PURE__ */ jsx10("div", { className: "absolute inset-0 flex items-center justify-center bg-ods-bg-inverse bg-opacity-20 transition-opacity duration-200 group-hover:bg-opacity-30", children: /* @__PURE__ */ jsx10("span", { className: "flex items-center justify-center w-16 h-16 rounded-full bg-ods-accent text-ods-text-on-accent shadow-lg transition-transform duration-200 group-hover:scale-110", children: /* @__PURE__ */ jsx10(PlayIcon, { size: 24, color: "currentColor", className: "ml-1" }) }) })
2319
2259
  ]
2320
2260
  }
2321
2261
  ) });
2322
2262
  }
2323
2263
 
2324
2264
  // src/components/features/video-ratio-tabs.tsx
2325
- import { Fragment as Fragment2, jsx as jsx12, jsxs as jsxs9 } from "react/jsx-runtime";
2265
+ import { Fragment as Fragment2, jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
2326
2266
  var TAB_TRIGGER_CLASS = "rounded-none border-b-2 border-transparent data-[state=active]:border-ods-accent data-[state=active]:bg-transparent data-[state=active]:shadow-none px-4 py-2 text-sm text-ods-text-secondary data-[state=active]:text-ods-text-primary";
2327
2267
  var RATIO_GRID_CLASS = {
2328
2268
  portrait: "grid grid-cols-2 md:grid-cols-3 gap-4",
@@ -2347,17 +2287,17 @@ function RatioTabs({
2347
2287
  const activeTabs = RATIO_TAB_CONFIG.filter((t) => groups[t.key].count > 0);
2348
2288
  if (activeTabs.length <= 1) {
2349
2289
  const active = activeTabs[0];
2350
- return active ? /* @__PURE__ */ jsx12(Fragment2, { children: groups[active.key].render() }) : null;
2290
+ return active ? /* @__PURE__ */ jsx11(Fragment2, { children: groups[active.key].render() }) : null;
2351
2291
  }
2352
2292
  const firstTab = defaultTab && groups[defaultTab].count > 0 ? defaultTab : activeTabs[0].key;
2353
2293
  return /* @__PURE__ */ jsxs9(Tabs, { defaultValue: firstTab, className: `w-full ${className}`, children: [
2354
- /* @__PURE__ */ jsx12(TabsList, { className: "inline-flex justify-start rounded-none bg-transparent h-auto p-0 gap-0 mb-2", children: activeTabs.map((t) => /* @__PURE__ */ jsxs9(TabsTrigger, { value: t.key, className: TAB_TRIGGER_CLASS, children: [
2294
+ /* @__PURE__ */ jsx11(TabsList, { className: "inline-flex justify-start rounded-none bg-transparent h-auto p-0 gap-0 mb-2", children: activeTabs.map((t) => /* @__PURE__ */ jsxs9(TabsTrigger, { value: t.key, className: TAB_TRIGGER_CLASS, children: [
2355
2295
  t.label,
2356
2296
  " (",
2357
2297
  groups[t.key].count,
2358
2298
  ")"
2359
2299
  ] }, t.key)) }),
2360
- activeTabs.map((t) => /* @__PURE__ */ jsx12(
2300
+ activeTabs.map((t) => /* @__PURE__ */ jsx11(
2361
2301
  TabsContent,
2362
2302
  {
2363
2303
  value: t.key,
@@ -2400,7 +2340,7 @@ function groupByAspectRatio(items, getAspectRatio) {
2400
2340
 
2401
2341
  // src/components/features/video-bites-display.tsx
2402
2342
  import { useMemo as useMemo4 } from "react";
2403
- import { jsx as jsx13, jsxs as jsxs10 } from "react/jsx-runtime";
2343
+ import { jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
2404
2344
  var RATIO_TO_CSS_ASPECT = {
2405
2345
  portrait: "9 / 16",
2406
2346
  square: "1 / 1",
@@ -2408,7 +2348,7 @@ var RATIO_TO_CSS_ASPECT = {
2408
2348
  };
2409
2349
  function LazyBite({ ratio, children }) {
2410
2350
  const { ref, isNear } = useNearViewport("500px");
2411
- return /* @__PURE__ */ jsx13("div", { ref, style: { aspectRatio: RATIO_TO_CSS_ASPECT[ratio] }, children: isNear ? children : /* @__PURE__ */ jsx13("div", { className: "w-full h-full bg-ods-card rounded-md" }) });
2351
+ return /* @__PURE__ */ jsx12("div", { ref, style: { aspectRatio: RATIO_TO_CSS_ASPECT[ratio] }, children: isNear ? children : /* @__PURE__ */ jsx12("div", { className: "w-full h-full bg-ods-card rounded-md" }) });
2412
2352
  }
2413
2353
  function VideoBitesDisplay({
2414
2354
  bites,
@@ -2432,26 +2372,26 @@ function VideoBitesDisplay({
2432
2372
  const totalCount = grouped.portrait.length + grouped.square.length + grouped.landscape.length;
2433
2373
  if (totalCount === 0) return null;
2434
2374
  return /* @__PURE__ */ jsxs10("div", { className: "flex flex-col gap-6 w-full min-w-0", children: [
2435
- showTitle && /* @__PURE__ */ jsx13("h2", { className: "text-h1 tracking-[-1.12px] text-ods-text-primary break-words", children: title }),
2436
- grouped.hasMultiple ? /* @__PURE__ */ jsx13(
2375
+ showTitle && /* @__PURE__ */ jsx12("h2", { className: "text-h1 tracking-[-1.12px] text-ods-text-primary break-words", children: title }),
2376
+ grouped.hasMultiple ? /* @__PURE__ */ jsx12(
2437
2377
  RatioTabs,
2438
2378
  {
2439
2379
  groups: {
2440
2380
  portrait: {
2441
2381
  count: grouped.portrait.length,
2442
- render: () => /* @__PURE__ */ jsx13(BiteGrid, { bites: grouped.portrait, ratio: "portrait" })
2382
+ render: () => /* @__PURE__ */ jsx12(BiteGrid, { bites: grouped.portrait, ratio: "portrait" })
2443
2383
  },
2444
2384
  square: {
2445
2385
  count: grouped.square.length,
2446
- render: () => /* @__PURE__ */ jsx13(BiteGrid, { bites: grouped.square, ratio: "square" })
2386
+ render: () => /* @__PURE__ */ jsx12(BiteGrid, { bites: grouped.square, ratio: "square" })
2447
2387
  },
2448
2388
  landscape: {
2449
2389
  count: grouped.landscape.length,
2450
- render: () => /* @__PURE__ */ jsx13(BiteGrid, { bites: grouped.landscape, ratio: "landscape" })
2390
+ render: () => /* @__PURE__ */ jsx12(BiteGrid, { bites: grouped.landscape, ratio: "landscape" })
2451
2391
  }
2452
2392
  }
2453
2393
  }
2454
- ) : /* @__PURE__ */ jsx13(
2394
+ ) : /* @__PURE__ */ jsx12(
2455
2395
  BiteGrid,
2456
2396
  {
2457
2397
  bites: grouped.portrait.length > 0 ? grouped.portrait : grouped.square.length > 0 ? grouped.square : grouped.landscape,
@@ -2461,17 +2401,17 @@ function VideoBitesDisplay({
2461
2401
  ] });
2462
2402
  }
2463
2403
  function BiteGrid({ bites, ratio }) {
2464
- return /* @__PURE__ */ jsx13("div", { className: RATIO_DISPLAY_GRID_CLASS[ratio], children: bites.map((bite, index) => /* @__PURE__ */ jsx13(LazyBite, { ratio, children: /* @__PURE__ */ jsx13(VideoBiteCard, { url: bite.url, title: bite.title, thumbnailUrl: bite.thumbnail_url }) }, bite.url || index)) });
2404
+ return /* @__PURE__ */ jsx12("div", { className: RATIO_DISPLAY_GRID_CLASS[ratio], children: bites.map((bite, index) => /* @__PURE__ */ jsx12(LazyBite, { ratio, children: /* @__PURE__ */ jsx12(VideoBiteCard, { url: bite.url, title: bite.title, thumbnailUrl: bite.thumbnail_url }) }, bite.url || index)) });
2465
2405
  }
2466
2406
  function VideoBiteCard({ url, title, thumbnailUrl }) {
2467
2407
  return /* @__PURE__ */ jsxs10(Card, { className: "overflow-hidden border border-ods-border bg-ods-card hover:border-ods-accent transition-colors flex flex-col h-full", children: [
2468
- /* @__PURE__ */ jsx13("div", { className: "relative flex-1 min-h-0", children: /* @__PURE__ */ jsx13(Video, { url, poster: thumbnailUrl || void 0, layout: "fill" }) }),
2469
- title && /* @__PURE__ */ jsx13("div", { className: "p-4", children: /* @__PURE__ */ jsx13("p", { className: "text-h4 text-ods-text-primary line-clamp-2", title, children: title }) })
2408
+ /* @__PURE__ */ jsx12("div", { className: "relative flex-1 min-h-0", children: /* @__PURE__ */ jsx12(Video, { url, poster: thumbnailUrl || void 0, layout: "fill" }) }),
2409
+ title && /* @__PURE__ */ jsx12("div", { className: "p-4", children: /* @__PURE__ */ jsx12("p", { className: "text-h4 text-ods-text-primary line-clamp-2", title, children: title }) })
2470
2410
  ] });
2471
2411
  }
2472
2412
 
2473
2413
  // src/components/features/entity-video-section.tsx
2474
- import { Fragment as Fragment3, jsx as jsx14, jsxs as jsxs11 } from "react/jsx-runtime";
2414
+ import { Fragment as Fragment3, jsx as jsx13, jsxs as jsxs11 } from "react/jsx-runtime";
2475
2415
  function EntityVideoSection({
2476
2416
  mainVideoUrl,
2477
2417
  youtubeUrl,
@@ -2499,7 +2439,7 @@ function EntityVideoSection({
2499
2439
  return /* @__PURE__ */ jsxs11(Fragment3, { children: [
2500
2440
  hasVideo && (hasFullVideo && hasHighlight ? /* @__PURE__ */ jsxs11(Tabs, { defaultValue: "full-video", className: "w-full", children: [
2501
2441
  /* @__PURE__ */ jsxs11(TabsList, { className: "inline-flex justify-start rounded-none bg-transparent h-auto p-0 gap-0", children: [
2502
- /* @__PURE__ */ jsx14(
2442
+ /* @__PURE__ */ jsx13(
2503
2443
  TabsTrigger,
2504
2444
  {
2505
2445
  value: "full-video",
@@ -2507,7 +2447,7 @@ function EntityVideoSection({
2507
2447
  children: "Full Video"
2508
2448
  }
2509
2449
  ),
2510
- /* @__PURE__ */ jsx14(
2450
+ /* @__PURE__ */ jsx13(
2511
2451
  TabsTrigger,
2512
2452
  {
2513
2453
  value: "highlights",
@@ -2516,7 +2456,7 @@ function EntityVideoSection({
2516
2456
  }
2517
2457
  )
2518
2458
  ] }),
2519
- /* @__PURE__ */ jsx14(TabsContent, { value: "full-video", className: "mt-4", children: /* @__PURE__ */ jsx14(
2459
+ /* @__PURE__ */ jsx13(TabsContent, { value: "full-video", className: "mt-4", children: /* @__PURE__ */ jsx13(
2520
2460
  Video,
2521
2461
  {
2522
2462
  kind: fullVideoKind,
@@ -2529,7 +2469,7 @@ function EntityVideoSection({
2529
2469
  priority
2530
2470
  }
2531
2471
  ) }),
2532
- /* @__PURE__ */ jsx14(TabsContent, { value: "highlights", className: "mt-4", children: /* @__PURE__ */ jsx14(
2472
+ /* @__PURE__ */ jsx13(TabsContent, { value: "highlights", className: "mt-4", children: /* @__PURE__ */ jsx13(
2533
2473
  Video,
2534
2474
  {
2535
2475
  url: highlightVideoUrl,
@@ -2537,7 +2477,7 @@ function EntityVideoSection({
2537
2477
  layout: "centered"
2538
2478
  }
2539
2479
  ) })
2540
- ] }) : hasFullVideo ? /* @__PURE__ */ jsx14(
2480
+ ] }) : hasFullVideo ? /* @__PURE__ */ jsx13(
2541
2481
  Video,
2542
2482
  {
2543
2483
  kind: fullVideoKind,
@@ -2549,7 +2489,7 @@ function EntityVideoSection({
2549
2489
  layout: "centered",
2550
2490
  priority
2551
2491
  }
2552
- ) : /* @__PURE__ */ jsx14(
2492
+ ) : /* @__PURE__ */ jsx13(
2553
2493
  Video,
2554
2494
  {
2555
2495
  url: highlightVideoUrl,
@@ -2559,10 +2499,10 @@ function EntityVideoSection({
2559
2499
  }
2560
2500
  )),
2561
2501
  videoSummary && MarkdownRenderer && /* @__PURE__ */ jsxs11("div", { className: "flex flex-col gap-6 w-full min-w-0", children: [
2562
- /* @__PURE__ */ jsx14("h2", { className: "text-h1 tracking-[-1.12px] text-ods-text-primary break-words", children: "Summary" }),
2563
- /* @__PURE__ */ jsx14("div", { className: "text-h4 text-ods-text-primary break-words overflow-hidden", children: /* @__PURE__ */ jsx14(MarkdownRenderer, { content: videoSummary }) })
2502
+ /* @__PURE__ */ jsx13("h2", { className: "text-h1 tracking-[-1.12px] text-ods-text-primary break-words", children: "Summary" }),
2503
+ /* @__PURE__ */ jsx13("div", { className: "text-h4 text-ods-text-primary break-words overflow-hidden", children: /* @__PURE__ */ jsx13(MarkdownRenderer, { content: videoSummary }) })
2564
2504
  ] }),
2565
- videoBites && videoBites.length > 0 && /* @__PURE__ */ jsx14(
2505
+ videoBites && videoBites.length > 0 && /* @__PURE__ */ jsx13(
2566
2506
  VideoBitesDisplay,
2567
2507
  {
2568
2508
  bites: videoBites,
@@ -2647,7 +2587,7 @@ function useEntityCardPlaceholder({
2647
2587
  }
2648
2588
 
2649
2589
  // src/components/chat/entity-cards/onboarding-guide-card.tsx
2650
- import { jsx as jsx15, jsxs as jsxs12 } from "react/jsx-runtime";
2590
+ import { jsx as jsx14, jsxs as jsxs12 } from "react/jsx-runtime";
2651
2591
  function stripMarkdownPreview(text) {
2652
2592
  return text.replace(/```[\s\S]*?```/g, " ").replace(/^#{1,6}\s+/gm, "").replace(/!?\[([^\]]*)\]\([^)]*\)/g, "$1").replace(/[*_~`>]/g, "").replace(/^\s*[-+]\s+/gm, "").replace(/-{3,}/g, " ").replace(/\s+/g, " ").trim().replace(/^([\s\S]{240})[\s\S]+$/, "$1\u2026");
2653
2593
  }
@@ -2663,35 +2603,35 @@ function OnboardingGuideCardSkeleton({ size = "default" }) {
2663
2603
  if (size === "catalog") {
2664
2604
  return /* @__PURE__ */ jsxs12("div", { className: "bg-ods-system-greys-black border border-ods-border rounded-lg overflow-hidden flex flex-col p-6 gap-4 animate-pulse", children: [
2665
2605
  /* @__PURE__ */ jsxs12("div", { className: "flex flex-col md:flex-row gap-4 md:gap-6", children: [
2666
- /* @__PURE__ */ jsx15("div", { className: "w-full md:w-[256px] aspect-[1200/630] bg-ods-border rounded-lg flex-shrink-0" }),
2606
+ /* @__PURE__ */ jsx14("div", { className: "w-full md:w-[256px] aspect-[1200/630] bg-ods-border rounded-lg flex-shrink-0" }),
2667
2607
  /* @__PURE__ */ jsxs12("div", { className: "flex-1 min-w-0 flex flex-col", children: [
2668
2608
  /* @__PURE__ */ jsxs12("div", { className: "min-h-[60px] md:min-h-[72px] flex flex-col gap-1.5 justify-start mb-3", children: [
2669
- /* @__PURE__ */ jsx15("div", { className: "h-[25px] md:h-[30px] w-3/4 bg-ods-border rounded" }),
2670
- /* @__PURE__ */ jsx15("div", { className: "h-[25px] md:h-[30px] w-1/2 bg-ods-border rounded" })
2609
+ /* @__PURE__ */ jsx14("div", { className: "h-[25px] md:h-[30px] w-3/4 bg-ods-border rounded" }),
2610
+ /* @__PURE__ */ jsx14("div", { className: "h-[25px] md:h-[30px] w-1/2 bg-ods-border rounded" })
2671
2611
  ] }),
2672
2612
  /* @__PURE__ */ jsxs12("div", { className: "min-h-[46px] md:min-h-[52px] flex flex-col gap-2 justify-start", children: [
2673
- /* @__PURE__ */ jsx15("div", { className: "h-3 w-full bg-ods-border/70 rounded" }),
2674
- /* @__PURE__ */ jsx15("div", { className: "h-3 w-5/6 bg-ods-border/70 rounded" })
2613
+ /* @__PURE__ */ jsx14("div", { className: "h-3 w-full bg-ods-border/70 rounded" }),
2614
+ /* @__PURE__ */ jsx14("div", { className: "h-3 w-5/6 bg-ods-border/70 rounded" })
2675
2615
  ] })
2676
2616
  ] })
2677
2617
  ] }),
2678
2618
  /* @__PURE__ */ jsxs12("div", { className: "grid grid-cols-1 md:grid-cols-3 border border-ods-border rounded-md overflow-hidden w-full", children: [
2679
- [0, 1].map((i) => /* @__PURE__ */ jsx15(
2619
+ [0, 1].map((i) => /* @__PURE__ */ jsx14(
2680
2620
  "div",
2681
2621
  {
2682
2622
  className: "bg-ods-card p-4 flex flex-col gap-3 border-b md:border-b-0 md:border-r border-ods-border",
2683
2623
  children: /* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-2", children: [
2684
- /* @__PURE__ */ jsx15("div", { className: "h-6 w-32 bg-ods-bg rounded" }),
2685
- /* @__PURE__ */ jsx15("div", { className: "h-3 w-20 bg-ods-bg/60 rounded" })
2624
+ /* @__PURE__ */ jsx14("div", { className: "h-6 w-32 bg-ods-bg rounded" }),
2625
+ /* @__PURE__ */ jsx14("div", { className: "h-3 w-20 bg-ods-bg/60 rounded" })
2686
2626
  ] })
2687
2627
  },
2688
2628
  `cell-${i}`
2689
2629
  )),
2690
2630
  /* @__PURE__ */ jsxs12("div", { className: "bg-ods-card p-4 flex items-center gap-3", children: [
2691
- /* @__PURE__ */ jsx15("div", { className: "h-10 w-10 rounded-full bg-ods-bg shrink-0" }),
2631
+ /* @__PURE__ */ jsx14("div", { className: "h-10 w-10 rounded-full bg-ods-bg shrink-0" }),
2692
2632
  /* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
2693
- /* @__PURE__ */ jsx15("div", { className: "h-4 w-3/4 bg-ods-bg rounded" }),
2694
- /* @__PURE__ */ jsx15("div", { className: "h-3 w-1/2 bg-ods-bg/60 rounded" })
2633
+ /* @__PURE__ */ jsx14("div", { className: "h-4 w-3/4 bg-ods-bg rounded" }),
2634
+ /* @__PURE__ */ jsx14("div", { className: "h-3 w-1/2 bg-ods-bg/60 rounded" })
2695
2635
  ] })
2696
2636
  ] })
2697
2637
  ] })
@@ -2699,13 +2639,13 @@ function OnboardingGuideCardSkeleton({ size = "default" }) {
2699
2639
  }
2700
2640
  if (size === "sm") {
2701
2641
  return /* @__PURE__ */ jsxs12("span", { className: COMPACT_CARD_SKELETON_OUTER, children: [
2702
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_SKELETON_IMAGE_SLOT }),
2642
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_SKELETON_IMAGE_SLOT }),
2703
2643
  /* @__PURE__ */ jsxs12("span", { className: COMPACT_CARD_TEXT_COL, children: [
2704
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx15("span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
2705
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx15("span", { className: "h-3 w-2/5 rounded bg-ods-bg/70" }) }),
2706
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx15("span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
2644
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx14("span", { className: "h-3.5 w-3/5 rounded bg-ods-bg" }) }),
2645
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx14("span", { className: "h-3 w-2/5 rounded bg-ods-bg/70" }) }),
2646
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx14("span", { className: "h-3 w-11/12 rounded bg-ods-bg/40" }) })
2707
2647
  ] }),
2708
- /* @__PURE__ */ jsx15("span", { className: "flex shrink-0 items-center self-start h-5", children: /* @__PURE__ */ jsx15("span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
2648
+ /* @__PURE__ */ jsx14("span", { className: "flex shrink-0 items-center self-start h-5", children: /* @__PURE__ */ jsx14("span", { className: "h-3.5 w-3.5 rounded bg-ods-bg" }) })
2709
2649
  ] });
2710
2650
  }
2711
2651
  const t = HORIZONTAL_SIZE_TOKENS.default;
@@ -2714,11 +2654,11 @@ function OnboardingGuideCardSkeleton({ size = "default" }) {
2714
2654
  {
2715
2655
  className: `flex items-start gap-3 rounded-md border border-ods-border bg-ods-card ${t.padding} animate-pulse`,
2716
2656
  children: [
2717
- /* @__PURE__ */ jsx15("span", { className: `shrink-0 inline-flex items-center justify-center rounded-full bg-ods-bg ${t.step}` }),
2657
+ /* @__PURE__ */ jsx14("span", { className: `shrink-0 inline-flex items-center justify-center rounded-full bg-ods-bg ${t.step}` }),
2718
2658
  /* @__PURE__ */ jsxs12("span", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
2719
- /* @__PURE__ */ jsx15("span", { className: "block h-4 w-2/3 rounded bg-ods-bg" }),
2720
- /* @__PURE__ */ jsx15("span", { className: "block h-3 w-1/3 rounded bg-ods-bg/70" }),
2721
- /* @__PURE__ */ jsx15("span", { className: "block h-3 w-full rounded bg-ods-bg/40" })
2659
+ /* @__PURE__ */ jsx14("span", { className: "block h-4 w-2/3 rounded bg-ods-bg" }),
2660
+ /* @__PURE__ */ jsx14("span", { className: "block h-3 w-1/3 rounded bg-ods-bg/70" }),
2661
+ /* @__PURE__ */ jsx14("span", { className: "block h-3 w-full rounded bg-ods-bg/40" })
2722
2662
  ] })
2723
2663
  ]
2724
2664
  }
@@ -2750,7 +2690,7 @@ function OnboardingGuideCard({
2750
2690
  const hasVideoCover = !!(guide.main_video_thumbnail || guide.highlight_video_thumbnail);
2751
2691
  const stepLabel = typeof guide.step_order === "number" ? String(guide.step_order).padStart(2, "0") : "\u2014";
2752
2692
  const durationLabel = typeof guide.highlight_video_duration_ms === "number" && guide.highlight_video_duration_ms > 0 ? formatDurationMMSS(Math.floor(guide.highlight_video_duration_ms / 1e3)) : "";
2753
- return /* @__PURE__ */ jsx15(
2693
+ return /* @__PURE__ */ jsx14(
2754
2694
  next_link_default,
2755
2695
  {
2756
2696
  href,
@@ -2768,8 +2708,8 @@ function OnboardingGuideCard({
2768
2708
  "aria-label": `Open ${guide.title}`,
2769
2709
  children: /* @__PURE__ */ jsxs12("div", { className: "flex flex-col p-6 gap-4", children: [
2770
2710
  /* @__PURE__ */ jsxs12("div", { className: "flex flex-col md:flex-row gap-4 md:gap-6", children: [
2771
- /* @__PURE__ */ jsx15("div", { className: "w-full md:w-[256px] flex-shrink-0", children: /* @__PURE__ */ jsxs12("div", { className: "relative rounded-lg overflow-hidden w-full aspect-[1200/630] bg-ods-bg", children: [
2772
- coverImage ? /* @__PURE__ */ jsx15(
2711
+ /* @__PURE__ */ jsx14("div", { className: "w-full md:w-[256px] flex-shrink-0", children: /* @__PURE__ */ jsxs12("div", { className: "relative rounded-lg overflow-hidden w-full aspect-[1200/630] bg-ods-bg", children: [
2712
+ coverImage ? /* @__PURE__ */ jsx14(
2773
2713
  next_image_default,
2774
2714
  {
2775
2715
  src: coverImage,
@@ -2779,7 +2719,7 @@ function OnboardingGuideCard({
2779
2719
  className: "object-cover",
2780
2720
  unoptimized: true
2781
2721
  }
2782
- ) : /* @__PURE__ */ jsx15(
2722
+ ) : /* @__PURE__ */ jsx14(
2783
2723
  BlogImagePlaceholder,
2784
2724
  {
2785
2725
  title: guide.title,
@@ -2787,18 +2727,18 @@ function OnboardingGuideCard({
2787
2727
  className: "absolute inset-0"
2788
2728
  }
2789
2729
  ),
2790
- hasVideoCover && coverImage && /* @__PURE__ */ jsx15("span", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ jsx15(Play, { className: "w-10 h-10 text-white", fill: "white" }) }),
2730
+ hasVideoCover && coverImage && /* @__PURE__ */ jsx14("span", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ jsx14(Play, { className: "w-10 h-10 text-white", fill: "white" }) }),
2791
2731
  durationLabel && /* @__PURE__ */ jsxs12("span", { className: "absolute bottom-2 right-2 inline-flex items-center gap-1 px-2 py-1 rounded bg-black/60 text-white text-xs font-medium font-mono", children: [
2792
- /* @__PURE__ */ jsx15(Clock, { className: "w-3 h-3" }),
2732
+ /* @__PURE__ */ jsx14(Clock, { className: "w-3 h-3" }),
2793
2733
  durationLabel
2794
2734
  ] })
2795
2735
  ] }) }),
2796
2736
  /* @__PURE__ */ jsxs12("div", { className: "flex-1 min-w-0 flex flex-col", children: [
2797
- /* @__PURE__ */ jsx15("div", { className: "min-h-[60px] md:min-h-[72px] flex items-start mb-3", children: /* @__PURE__ */ jsx15("h3", { className: "font-['Azeret_Mono'] font-semibold text-xl md:text-2xl text-ods-text-primary leading-tight line-clamp-2", children: guide.title }) }),
2798
- /* @__PURE__ */ jsx15("div", { className: "min-h-[46px] md:min-h-[52px]", children: /* @__PURE__ */ jsx15("p", { className: "font-['DM_Sans'] text-sm md:text-base text-ods-text-secondary leading-relaxed line-clamp-2", children: stripMarkdownPreview(guide.video_summary || guide.content || "") }) })
2737
+ /* @__PURE__ */ jsx14("div", { className: "min-h-[60px] md:min-h-[72px] flex items-start mb-3", children: /* @__PURE__ */ jsx14("h3", { className: "font-['Azeret_Mono'] font-semibold text-xl md:text-2xl text-ods-text-primary leading-tight line-clamp-2", children: guide.title }) }),
2738
+ /* @__PURE__ */ jsx14("div", { className: "min-h-[46px] md:min-h-[52px]", children: /* @__PURE__ */ jsx14("p", { className: "font-['DM_Sans'] text-sm md:text-base text-ods-text-secondary leading-relaxed line-clamp-2", children: stripMarkdownPreview(guide.video_summary || guide.content || "") }) })
2799
2739
  ] })
2800
2740
  ] }),
2801
- /* @__PURE__ */ jsx15(
2741
+ /* @__PURE__ */ jsx14(
2802
2742
  EntityAuthorCard,
2803
2743
  {
2804
2744
  author: guide.author,
@@ -2830,7 +2770,7 @@ function OnboardingGuideCard({
2830
2770
  ].filter((s) => typeof s === "string" && s.length > 0);
2831
2771
  return /* @__PURE__ */ jsxs12(next_link_default, { href, target, rel, prefetch: false, className: cn(COMPACT_CARD_OUTER, className), children: [
2832
2772
  /* @__PURE__ */ jsxs12("span", { className: COMPACT_CARD_IMAGE_SLOT, children: [
2833
- compactCover ? /* @__PURE__ */ jsx15(
2773
+ compactCover ? /* @__PURE__ */ jsx14(
2834
2774
  next_image_default,
2835
2775
  {
2836
2776
  src: compactCover,
@@ -2840,15 +2780,15 @@ function OnboardingGuideCard({
2840
2780
  className: "object-contain",
2841
2781
  unoptimized: true
2842
2782
  }
2843
- ) : /* @__PURE__ */ jsx15("span", { className: "flex h-full w-full items-center justify-center text-ods-accent", children: /* @__PURE__ */ jsx15(GraduationCap, { className: "w-4 h-4" }) }),
2844
- hasVideoCover && compactCover && /* @__PURE__ */ jsx15("span", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ jsx15(Play, { className: "h-4 w-4 text-white", fill: "white" }) })
2783
+ ) : /* @__PURE__ */ jsx14("span", { className: "flex h-full w-full items-center justify-center text-ods-accent", children: /* @__PURE__ */ jsx14(GraduationCap, { className: "w-4 h-4" }) }),
2784
+ hasVideoCover && compactCover && /* @__PURE__ */ jsx14("span", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ jsx14(Play, { className: "h-4 w-4 text-white", fill: "white" }) })
2845
2785
  ] }),
2846
2786
  /* @__PURE__ */ jsxs12("span", { className: COMPACT_CARD_TEXT_COL, children: [
2847
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx15("span", { className: cn(COMPACT_CARD_TITLE, "font-['Azeret_Mono']"), children: guide.title }) }),
2848
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx15("span", { className: "truncate text-[11px] leading-4 text-[var(--color-accent-primary)]", children: subtitleParts.join(" \xB7 ") }) }),
2849
- /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx15("span", { className: COMPACT_CARD_SUMMARY, children: summary2 || COMPACT_CARD_ROW_FILLER }) })
2787
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx14("span", { className: cn(COMPACT_CARD_TITLE, "font-['Azeret_Mono']"), children: guide.title }) }),
2788
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx14("span", { className: "truncate text-[11px] leading-4 text-[var(--color-accent-primary)]", children: subtitleParts.join(" \xB7 ") }) }),
2789
+ /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ jsx14("span", { className: COMPACT_CARD_SUMMARY, children: summary2 || COMPACT_CARD_ROW_FILLER }) })
2850
2790
  ] }),
2851
- /* @__PURE__ */ jsx15("span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ jsx15(ExternalLink, { className: "w-3.5 h-3.5" }) })
2791
+ /* @__PURE__ */ jsx14("span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ jsx14(ExternalLink, { className: "w-3.5 h-3.5" }) })
2852
2792
  ] });
2853
2793
  }
2854
2794
  const t = HORIZONTAL_SIZE_TOKENS.default;
@@ -2865,7 +2805,7 @@ function OnboardingGuideCard({
2865
2805
  className
2866
2806
  ),
2867
2807
  children: [
2868
- /* @__PURE__ */ jsx15(
2808
+ /* @__PURE__ */ jsx14(
2869
2809
  "span",
2870
2810
  {
2871
2811
  className: `shrink-0 inline-flex items-center justify-center rounded-full bg-ods-accent/10 text-ods-accent font-semibold ${t.step}`,
@@ -2874,12 +2814,12 @@ function OnboardingGuideCard({
2874
2814
  }
2875
2815
  ),
2876
2816
  /* @__PURE__ */ jsxs12("span", { className: "flex flex-col gap-0.5 flex-1 min-w-0", children: [
2877
- /* @__PURE__ */ jsx15("span", { className: `block ${t.title} text-ods-text-primary truncate`, children: guide.title }),
2817
+ /* @__PURE__ */ jsx14("span", { className: `block ${t.title} text-ods-text-primary truncate`, children: guide.title }),
2878
2818
  /* @__PURE__ */ jsxs12("span", { className: "inline-flex items-center gap-1 font-['DM_Sans'] text-[12px] leading-[16px] text-ods-text-secondary", children: [
2879
- /* @__PURE__ */ jsx15(GraduationCap, { className: "h-3 w-3 shrink-0" }),
2880
- /* @__PURE__ */ jsx15("span", { className: "truncate", children: guide.section })
2819
+ /* @__PURE__ */ jsx14(GraduationCap, { className: "h-3 w-3 shrink-0" }),
2820
+ /* @__PURE__ */ jsx14("span", { className: "truncate", children: guide.section })
2881
2821
  ] }),
2882
- summary && /* @__PURE__ */ jsx15("span", { className: `font-['DM_Sans'] text-[14px] leading-[20px] text-ods-text-secondary ${t.summaryClamp}`, children: summary })
2822
+ summary && /* @__PURE__ */ jsx14("span", { className: `font-['DM_Sans'] text-[14px] leading-[20px] text-ods-text-secondary ${t.summaryClamp}`, children: summary })
2883
2823
  ] })
2884
2824
  ]
2885
2825
  }
@@ -3298,7 +3238,7 @@ function resolveSourceIcon(input, ctx = {}) {
3298
3238
  init_cn();
3299
3239
  import React11 from "react";
3300
3240
  init_button();
3301
- import { Fragment as Fragment4, jsx as jsx16, jsxs as jsxs13 } from "react/jsx-runtime";
3241
+ import { Fragment as Fragment4, jsx as jsx15, jsxs as jsxs13 } from "react/jsx-runtime";
3302
3242
  function actionKey(action, idx) {
3303
3243
  return `${action.label ?? action.ariaLabel ?? "action"}-${idx}`;
3304
3244
  }
@@ -3330,7 +3270,7 @@ function actionToMenuItems(action, idx) {
3330
3270
  }
3331
3271
  function renderActionButton(action, opts = {}) {
3332
3272
  if (action.iconAction) {
3333
- return /* @__PURE__ */ jsx16(
3273
+ return /* @__PURE__ */ jsx15(
3334
3274
  SplitButton,
3335
3275
  {
3336
3276
  variant: action.variant ?? void 0,
@@ -3348,18 +3288,18 @@ function renderActionButton(action, opts = {}) {
3348
3288
  );
3349
3289
  }
3350
3290
  if (action.submenu && action.submenu.length > 0) {
3351
- return /* @__PURE__ */ jsx16(
3291
+ return /* @__PURE__ */ jsx15(
3352
3292
  ActionsMenuDropdown,
3353
3293
  {
3354
3294
  groups: [{ items: action.submenu }],
3355
- customTrigger: /* @__PURE__ */ jsx16(
3295
+ customTrigger: /* @__PURE__ */ jsx15(
3356
3296
  Button,
3357
3297
  {
3358
3298
  variant: "outline",
3359
3299
  disabled: action.disabled,
3360
3300
  loading: action.loading,
3361
3301
  leftIcon: action.icon,
3362
- splitIcon: /* @__PURE__ */ jsx16(Chevron02DownIcon, { className: "h-4 w-4" }),
3302
+ splitIcon: /* @__PURE__ */ jsx15(Chevron02DownIcon, { className: "h-4 w-4" }),
3363
3303
  className: opts.fullWidth ? "flex-1" : void 0,
3364
3304
  children: action.label
3365
3305
  }
@@ -3369,8 +3309,8 @@ function renderActionButton(action, opts = {}) {
3369
3309
  }
3370
3310
  const isIconOnly = opts.iconOnly || !action.label || action.iconOnlyOnDesktop;
3371
3311
  if (isIconOnly) {
3372
- const iconNode = action.iconOnlyOnDesktop ? /* @__PURE__ */ jsx16("span", { className: "inline-flex [&_svg]:!text-ods-text-primary", children: action.icon }) : action.icon;
3373
- return /* @__PURE__ */ jsx16(
3312
+ const iconNode = action.iconOnlyOnDesktop ? /* @__PURE__ */ jsx15("span", { className: "inline-flex [&_svg]:!text-ods-text-primary", children: action.icon }) : action.icon;
3313
+ return /* @__PURE__ */ jsx15(
3374
3314
  Button,
3375
3315
  {
3376
3316
  variant: action.variant,
@@ -3386,7 +3326,7 @@ function renderActionButton(action, opts = {}) {
3386
3326
  }
3387
3327
  );
3388
3328
  }
3389
- return /* @__PURE__ */ jsx16(
3329
+ return /* @__PURE__ */ jsx15(
3390
3330
  Button,
3391
3331
  {
3392
3332
  variant: action.variant,
@@ -3411,12 +3351,12 @@ function PageActions({
3411
3351
  className
3412
3352
  }) {
3413
3353
  if (variant === "icon-buttons") {
3414
- return /* @__PURE__ */ jsx16(IconButtonsVariant, { actions, menuActions, selector, className });
3354
+ return /* @__PURE__ */ jsx15(IconButtonsVariant, { actions, menuActions, selector, className });
3415
3355
  }
3416
3356
  if (variant === "menu-primary") {
3417
- return /* @__PURE__ */ jsx16(MenuPrimaryVariant, { actions, menuActions: menuActions || [], selector, className });
3357
+ return /* @__PURE__ */ jsx15(MenuPrimaryVariant, { actions, menuActions: menuActions || [], selector, className });
3418
3358
  }
3419
- return /* @__PURE__ */ jsx16(PrimaryButtonsVariant, { actions, className });
3359
+ return /* @__PURE__ */ jsx15(PrimaryButtonsVariant, { actions, className });
3420
3360
  }
3421
3361
  function IconButtonsVariant({
3422
3362
  actions,
@@ -3432,10 +3372,10 @@ function IconButtonsVariant({
3432
3372
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
3433
3373
  /* @__PURE__ */ jsxs13("div", { className: cn("hidden md:flex items-center", ACTIONS_GAP, className), children: [
3434
3374
  selector,
3435
- desktopActions.map((action, idx) => /* @__PURE__ */ jsx16(React11.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
3436
- hasMenuActions && /* @__PURE__ */ jsx16(ActionsMenuDropdown, { groups: menuActions })
3375
+ desktopActions.map((action, idx) => /* @__PURE__ */ jsx15(React11.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
3376
+ hasMenuActions && /* @__PURE__ */ jsx15(ActionsMenuDropdown, { groups: menuActions })
3437
3377
  ] }),
3438
- /* @__PURE__ */ jsx16("div", { className: cn("flex md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : /* @__PURE__ */ jsx16(
3378
+ /* @__PURE__ */ jsx15("div", { className: cn("flex md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : /* @__PURE__ */ jsx15(
3439
3379
  ActionsMenuDropdown,
3440
3380
  {
3441
3381
  groups: [
@@ -3457,8 +3397,8 @@ function PrimaryButtonsVariant({
3457
3397
  });
3458
3398
  const desktopActions = sortedActions.filter((a) => !a.showOnlyMobile);
3459
3399
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
3460
- /* @__PURE__ */ jsx16("div", { className: cn("hidden md:flex items-center", ACTIONS_GAP, className), children: desktopActions.map((action, idx) => /* @__PURE__ */ jsx16(React11.Fragment, { children: renderActionButton(action) }, `desktop-${actionKey(action, idx)}`)) }),
3461
- /* @__PURE__ */ jsx16(MobileBottomActions, { actions: sortedActions })
3400
+ /* @__PURE__ */ jsx15("div", { className: cn("hidden md:flex items-center", ACTIONS_GAP, className), children: desktopActions.map((action, idx) => /* @__PURE__ */ jsx15(React11.Fragment, { children: renderActionButton(action) }, `desktop-${actionKey(action, idx)}`)) }),
3401
+ /* @__PURE__ */ jsx15(MobileBottomActions, { actions: sortedActions })
3462
3402
  ] });
3463
3403
  }
3464
3404
  function MenuPrimaryVariant({
@@ -3472,10 +3412,10 @@ function MenuPrimaryVariant({
3472
3412
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
3473
3413
  /* @__PURE__ */ jsxs13("div", { className: cn("hidden md:flex items-center", ACTIONS_GAP, className), children: [
3474
3414
  selector,
3475
- hasMenuActions && /* @__PURE__ */ jsx16(ActionsMenuDropdown, { groups: menuActions }),
3476
- desktopActions.map((action, idx) => /* @__PURE__ */ jsx16(React11.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
3415
+ hasMenuActions && /* @__PURE__ */ jsx15(ActionsMenuDropdown, { groups: menuActions }),
3416
+ desktopActions.map((action, idx) => /* @__PURE__ */ jsx15(React11.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
3477
3417
  ] }),
3478
- /* @__PURE__ */ jsx16("div", { className: cn("flex md:hidden", className), children: /* @__PURE__ */ jsx16(
3418
+ /* @__PURE__ */ jsx15("div", { className: cn("flex md:hidden", className), children: /* @__PURE__ */ jsx15(
3479
3419
  ActionsMenuDropdown,
3480
3420
  {
3481
3421
  groups: [
@@ -3487,12 +3427,12 @@ function MenuPrimaryVariant({
3487
3427
  ] });
3488
3428
  }
3489
3429
  function MobileBottomActions({ actions }) {
3490
- return /* @__PURE__ */ jsx16("div", { className: cn(
3430
+ return /* @__PURE__ */ jsx15("div", { className: cn(
3491
3431
  "fixed md:hidden bottom-0 left-0 right-0 z-50",
3492
3432
  "bg-ods-card border-t border-ods-border",
3493
3433
  "flex items-start pt-6 pb-6 px-6",
3494
3434
  ACTIONS_GAP
3495
- ), children: actions.map((action, idx) => /* @__PURE__ */ jsx16(React11.Fragment, { children: renderActionButton(action, { fullWidth: !!action.label }) }, `mobile-${actionKey(action, idx)}`)) });
3435
+ ), children: actions.map((action, idx) => /* @__PURE__ */ jsx15(React11.Fragment, { children: renderActionButton(action, { fullWidth: !!action.label }) }, `mobile-${actionKey(action, idx)}`)) });
3496
3436
  }
3497
3437
  function usePageActionsBottomPadding(variant) {
3498
3438
  return variant === "primary-buttons" || variant === "menu-primary" ? "pb-40 md:pb-0" : "";
@@ -3503,7 +3443,7 @@ init_cn();
3503
3443
 
3504
3444
  // src/components/layout/back-button.tsx
3505
3445
  init_cn();
3506
- import { jsx as jsx17, jsxs as jsxs14 } from "react/jsx-runtime";
3446
+ import { jsx as jsx16, jsxs as jsxs14 } from "react/jsx-runtime";
3507
3447
  function BackButton({ label = "Back", className, type = "button", ...props }) {
3508
3448
  return /* @__PURE__ */ jsxs14(
3509
3449
  "button",
@@ -3519,15 +3459,15 @@ function BackButton({ label = "Back", className, type = "button", ...props }) {
3519
3459
  ),
3520
3460
  ...props,
3521
3461
  children: [
3522
- /* @__PURE__ */ jsx17(Chevron02LeftIcon, { className: "size-6 shrink-0" }),
3523
- /* @__PURE__ */ jsx17("span", { className: "text-h4", children: label })
3462
+ /* @__PURE__ */ jsx16(Chevron02LeftIcon, { className: "size-6 shrink-0" }),
3463
+ /* @__PURE__ */ jsx16("span", { className: "text-h4", children: label })
3524
3464
  ]
3525
3465
  }
3526
3466
  );
3527
3467
  }
3528
3468
 
3529
3469
  // src/components/layout/page-container.tsx
3530
- import { jsx as jsx18, jsxs as jsxs15 } from "react/jsx-runtime";
3470
+ import { jsx as jsx17, jsxs as jsxs15 } from "react/jsx-runtime";
3531
3471
  function isAdvancedProps(props) {
3532
3472
  return "variant" in props || "title" in props || "subtitle" in props || "backButton" in props || "headerActions" in props || "headerContent" in props || "showHeader" in props || "contentClassName" in props || "actions" in props || "actionsVariant" in props;
3533
3473
  }
@@ -3549,9 +3489,9 @@ function renderLegacyPageContainer({
3549
3489
  as: Component = "section",
3550
3490
  id
3551
3491
  }) {
3552
- const content = /* @__PURE__ */ jsx18("div", { className: cn(maxWidth, contentPadding, "mx-auto", className), children });
3492
+ const content = /* @__PURE__ */ jsx17("div", { className: cn(maxWidth, contentPadding, "mx-auto", className), children });
3553
3493
  if (fullWidthBackground) {
3554
- return /* @__PURE__ */ jsx18(
3494
+ return /* @__PURE__ */ jsx17(
3555
3495
  Component,
3556
3496
  {
3557
3497
  className: cn("w-full", backgroundClassName),
@@ -3561,7 +3501,7 @@ function renderLegacyPageContainer({
3561
3501
  }
3562
3502
  );
3563
3503
  }
3564
- return /* @__PURE__ */ jsx18(Component, { className: "w-full", id, children: /* @__PURE__ */ jsx18("div", { className: cn(maxWidth, contentPadding, "mx-auto", backgroundClassName, className), style: backgroundStyle, children }) });
3504
+ return /* @__PURE__ */ jsx17(Component, { className: "w-full", id, children: /* @__PURE__ */ jsx17("div", { className: cn(maxWidth, contentPadding, "mx-auto", backgroundClassName, className), style: backgroundStyle, children }) });
3565
3505
  }
3566
3506
  function renderAdvancedPageContainer({
3567
3507
  children,
@@ -3587,7 +3527,7 @@ function renderAdvancedPageContainer({
3587
3527
  };
3588
3528
  const renderActions = () => {
3589
3529
  if (!actions || actions.length === 0) return null;
3590
- return /* @__PURE__ */ jsx18(PageActions, { variant: getActionsVariant(), actions, menuActions });
3530
+ return /* @__PURE__ */ jsx17(PageActions, { variant: getActionsVariant(), actions, menuActions });
3591
3531
  };
3592
3532
  const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
3593
3533
  const paddingClasses = {
@@ -3604,14 +3544,14 @@ function renderAdvancedPageContainer({
3604
3544
  const renderHeader = () => {
3605
3545
  if (!showHeader) return null;
3606
3546
  if (headerContent) {
3607
- return /* @__PURE__ */ jsx18("div", { className: cn(
3547
+ return /* @__PURE__ */ jsx17("div", { className: cn(
3608
3548
  "flex items-end justify-between gap-4"
3609
3549
  ), children: headerContent });
3610
3550
  }
3611
3551
  if (variant === "detail") {
3612
3552
  return /* @__PURE__ */ jsxs15("div", { className: "flex items-end justify-between md:flex-col md:items-start md:justify-start lg:flex-row lg:items-end lg:justify-between gap-4", children: [
3613
3553
  /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
3614
- backButton && /* @__PURE__ */ jsx18(
3554
+ backButton && /* @__PURE__ */ jsx17(
3615
3555
  BackButton,
3616
3556
  {
3617
3557
  onClick: backButton.onClick,
@@ -3619,8 +3559,8 @@ function renderAdvancedPageContainer({
3619
3559
  className: "hidden md:inline-flex"
3620
3560
  }
3621
3561
  ),
3622
- title && /* @__PURE__ */ jsx18("h1", { className: "text-h2 tracking-[-0.64px] text-ods-text-primary", children: title }),
3623
- subtitle && /* @__PURE__ */ jsx18("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3562
+ title && /* @__PURE__ */ jsx17("h1", { className: "text-h2 tracking-[-0.64px] text-ods-text-primary", children: title }),
3563
+ subtitle && /* @__PURE__ */ jsx17("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3624
3564
  ] }),
3625
3565
  (headerActions || actions) && /* @__PURE__ */ jsxs15("div", { className: "flex gap-2 items-center shrink-0", children: [
3626
3566
  headerActions,
@@ -3631,7 +3571,7 @@ function renderAdvancedPageContainer({
3631
3571
  if (variant === "list") {
3632
3572
  return /* @__PURE__ */ jsxs15("div", { className: "flex items-center justify-between md:flex-col md:items-start md:justify-start lg:flex-row lg:items-center lg:justify-between gap-4", children: [
3633
3573
  /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
3634
- backButton && /* @__PURE__ */ jsx18(
3574
+ backButton && /* @__PURE__ */ jsx17(
3635
3575
  BackButton,
3636
3576
  {
3637
3577
  onClick: backButton.onClick,
@@ -3639,8 +3579,8 @@ function renderAdvancedPageContainer({
3639
3579
  className: "hidden md:inline-flex"
3640
3580
  }
3641
3581
  ),
3642
- title && /* @__PURE__ */ jsx18("h1", { className: "text-h2 tracking-[-0.48px] text-ods-text-primary", children: title }),
3643
- subtitle && /* @__PURE__ */ jsx18("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3582
+ title && /* @__PURE__ */ jsx17("h1", { className: "text-h2 tracking-[-0.48px] text-ods-text-primary", children: title }),
3583
+ subtitle && /* @__PURE__ */ jsx17("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3644
3584
  ] }),
3645
3585
  (headerActions || actions) && /* @__PURE__ */ jsxs15("div", { className: "flex gap-3 items-center shrink-0", children: [
3646
3586
  headerActions,
@@ -3651,7 +3591,7 @@ function renderAdvancedPageContainer({
3651
3591
  if (variant === "form") {
3652
3592
  return /* @__PURE__ */ jsxs15("div", { className: "flex items-end justify-between md:flex-col md:items-start md:justify-start lg:flex-row lg:items-end lg:justify-between gap-4", children: [
3653
3593
  /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
3654
- backButton && /* @__PURE__ */ jsx18(
3594
+ backButton && /* @__PURE__ */ jsx17(
3655
3595
  BackButton,
3656
3596
  {
3657
3597
  onClick: backButton.onClick,
@@ -3659,7 +3599,7 @@ function renderAdvancedPageContainer({
3659
3599
  className: "hidden md:inline-flex"
3660
3600
  }
3661
3601
  ),
3662
- title && /* @__PURE__ */ jsx18("h1", { className: "text-[32px] font-['Azeret_Mono:SemiBold',_sans-serif] font-semibold text-ods-text-primary tracking-[-0.64px]", children: title })
3602
+ title && /* @__PURE__ */ jsx17("h1", { className: "text-[32px] font-['Azeret_Mono:SemiBold',_sans-serif] font-semibold text-ods-text-primary tracking-[-0.64px]", children: title })
3663
3603
  ] }),
3664
3604
  (headerActions || actions) && /* @__PURE__ */ jsxs15("div", { className: "flex gap-4 items-center shrink-0", children: [
3665
3605
  headerActions,
@@ -3669,8 +3609,8 @@ function renderAdvancedPageContainer({
3669
3609
  }
3670
3610
  return /* @__PURE__ */ jsxs15("div", { className: "flex items-center justify-between md:flex-col md:items-start md:justify-start lg:flex-row lg:items-center lg:justify-between gap-4", children: [
3671
3611
  (title || subtitle) && /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
3672
- title && /* @__PURE__ */ jsx18("h1", { className: "text-h2 text-ods-text-primary", children: title }),
3673
- subtitle && /* @__PURE__ */ jsx18("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3612
+ title && /* @__PURE__ */ jsx17("h1", { className: "text-h2 text-ods-text-primary", children: title }),
3613
+ subtitle && /* @__PURE__ */ jsx17("div", { className: "text-ods-text-secondary font-['DM_Sans'] font-medium text-[16px]", children: subtitle })
3674
3614
  ] }),
3675
3615
  (headerActions || actions) && /* @__PURE__ */ jsxs15("div", { className: "flex gap-3 items-center shrink-0", children: [
3676
3616
  headerActions,
@@ -3712,26 +3652,26 @@ function renderAdvancedPageContainer({
3712
3652
  };
3713
3653
  return /* @__PURE__ */ jsxs15("div", { className: getContainerClasses(), children: [
3714
3654
  renderHeader(),
3715
- /* @__PURE__ */ jsx18("div", { className: getContentClasses(), children })
3655
+ /* @__PURE__ */ jsx17("div", { className: getContentClasses(), children })
3716
3656
  ] });
3717
3657
  }
3718
- var ListPageContainer = (props) => /* @__PURE__ */ jsx18(PageContainer, { ...props, variant: "list" });
3719
- var DetailPageContainer = (props) => /* @__PURE__ */ jsx18(PageContainer, { ...props, variant: "detail" });
3720
- var FormPageContainer = (props) => /* @__PURE__ */ jsx18(PageContainer, { ...props, variant: "form" });
3721
- var ContentPageContainer = (props) => /* @__PURE__ */ jsx18(PageContainer, { ...props, variant: "content" });
3658
+ var ListPageContainer = (props) => /* @__PURE__ */ jsx17(PageContainer, { ...props, variant: "list" });
3659
+ var DetailPageContainer = (props) => /* @__PURE__ */ jsx17(PageContainer, { ...props, variant: "detail" });
3660
+ var FormPageContainer = (props) => /* @__PURE__ */ jsx17(PageContainer, { ...props, variant: "form" });
3661
+ var ContentPageContainer = (props) => /* @__PURE__ */ jsx17(PageContainer, { ...props, variant: "content" });
3722
3662
 
3723
3663
  // src/components/layout/article-detail-layout.tsx
3724
- import { jsx as jsx19, jsxs as jsxs16 } from "react/jsx-runtime";
3664
+ import { jsx as jsx18, jsxs as jsxs16 } from "react/jsx-runtime";
3725
3665
  function PageShell({ children, schemas }) {
3726
3666
  return /* @__PURE__ */ jsxs16("main", { className: "bg-ods-bg min-h-screen", children: [
3727
3667
  schemas,
3728
- /* @__PURE__ */ jsx19("div", { className: "max-w-[1920px] mx-auto px-6 md:px-20 py-6 md:py-10", children })
3668
+ /* @__PURE__ */ jsx18("div", { className: "max-w-[1920px] mx-auto px-6 md:px-20 py-6 md:py-10", children })
3729
3669
  ] });
3730
3670
  }
3731
3671
  function ArticleDetailLayout({ children, schemas }) {
3732
3672
  return /* @__PURE__ */ jsxs16("main", { className: "bg-ods-bg min-h-screen", children: [
3733
3673
  schemas,
3734
- /* @__PURE__ */ jsx19("div", { className: "max-w-[1280px] mx-auto px-6 md:px-20 py-6 md:py-10", children })
3674
+ /* @__PURE__ */ jsx18("div", { className: "max-w-[1280px] mx-auto px-6 md:px-20 py-6 md:py-10", children })
3735
3675
  ] });
3736
3676
  }
3737
3677
 
@@ -3786,7 +3726,7 @@ function resolveContentHref(composeContentUrl, args) {
3786
3726
  init_button();
3787
3727
  init_cn();
3788
3728
  import { AlertTriangle, RefreshCw, Home } from "lucide-react";
3789
- import { jsx as jsx20, jsxs as jsxs17 } from "react/jsx-runtime";
3729
+ import { jsx as jsx19, jsxs as jsxs17 } from "react/jsx-runtime";
3790
3730
  function ErrorState({
3791
3731
  title = "Error",
3792
3732
  message,
@@ -3825,36 +3765,36 @@ function ErrorState({
3825
3765
  }
3826
3766
  };
3827
3767
  const styles = getVariantStyles();
3828
- return /* @__PURE__ */ jsx20("div", { className: cn("p-6", containerClassName), children: /* @__PURE__ */ jsx20("div", { className: cn(
3768
+ return /* @__PURE__ */ jsx19("div", { className: cn("p-6", containerClassName), children: /* @__PURE__ */ jsx19("div", { className: cn(
3829
3769
  "rounded-lg p-4 border",
3830
3770
  styles.bg,
3831
3771
  styles.border,
3832
3772
  className
3833
3773
  ), children: /* @__PURE__ */ jsxs17("div", { className: "flex items-start gap-3", children: [
3834
- showIcon && /* @__PURE__ */ jsx20(AlertTriangle, { className: cn("h-5 w-5 mt-0.5 flex-shrink-0", styles.icon) }),
3774
+ showIcon && /* @__PURE__ */ jsx19(AlertTriangle, { className: cn("h-5 w-5 mt-0.5 flex-shrink-0", styles.icon) }),
3835
3775
  /* @__PURE__ */ jsxs17("div", { className: "flex-1", children: [
3836
- /* @__PURE__ */ jsx20("h3", { className: cn("font-semibold mb-1", styles.text), children: title }),
3837
- /* @__PURE__ */ jsx20("p", { className: cn("text-sm", styles.text), children: message }),
3776
+ /* @__PURE__ */ jsx19("h3", { className: cn("font-semibold mb-1", styles.text), children: title }),
3777
+ /* @__PURE__ */ jsx19("p", { className: cn("text-sm", styles.text), children: message }),
3838
3778
  (showRetry || showHome) && /* @__PURE__ */ jsxs17("div", { className: "flex gap-2 mt-3", children: [
3839
- showRetry && onRetry && /* @__PURE__ */ jsx20(
3779
+ showRetry && onRetry && /* @__PURE__ */ jsx19(
3840
3780
  Button,
3841
3781
  {
3842
3782
  onClick: onRetry,
3843
3783
  variant: "outline",
3844
3784
  size: "small-legacy",
3845
3785
  className: "h-8",
3846
- leftIcon: /* @__PURE__ */ jsx20(RefreshCw, { className: "h-4 w-4" }),
3786
+ leftIcon: /* @__PURE__ */ jsx19(RefreshCw, { className: "h-4 w-4" }),
3847
3787
  children: "Try Again"
3848
3788
  }
3849
3789
  ),
3850
- showHome && onHome && /* @__PURE__ */ jsx20(
3790
+ showHome && onHome && /* @__PURE__ */ jsx19(
3851
3791
  Button,
3852
3792
  {
3853
3793
  onClick: onHome,
3854
3794
  variant: "outline",
3855
3795
  size: "small-legacy",
3856
3796
  className: "h-8",
3857
- leftIcon: /* @__PURE__ */ jsx20(Home, { className: "h-4 w-4" }),
3797
+ leftIcon: /* @__PURE__ */ jsx19(Home, { className: "h-4 w-4" }),
3858
3798
  children: "Go Home"
3859
3799
  }
3860
3800
  )
@@ -3863,7 +3803,7 @@ function ErrorState({
3863
3803
  ] }) }) });
3864
3804
  }
3865
3805
  function PageError({ message, onRetry, onHome }) {
3866
- return /* @__PURE__ */ jsx20(
3806
+ return /* @__PURE__ */ jsx19(
3867
3807
  ErrorState,
3868
3808
  {
3869
3809
  title: "Page Error",
@@ -3877,7 +3817,7 @@ function PageError({ message, onRetry, onHome }) {
3877
3817
  );
3878
3818
  }
3879
3819
  function LoadError({ message, onRetry }) {
3880
- return /* @__PURE__ */ jsx20(
3820
+ return /* @__PURE__ */ jsx19(
3881
3821
  ErrorState,
3882
3822
  {
3883
3823
  title: "Loading Error",
@@ -3889,7 +3829,7 @@ function LoadError({ message, onRetry }) {
3889
3829
  );
3890
3830
  }
3891
3831
  function NotFoundError({ message = "The requested item was not found", onHome }) {
3892
- return /* @__PURE__ */ jsx20(
3832
+ return /* @__PURE__ */ jsx19(
3893
3833
  ErrorState,
3894
3834
  {
3895
3835
  title: "Not Found",
@@ -3901,36 +3841,6 @@ function NotFoundError({ message = "The requested item was not found", onHome })
3901
3841
  );
3902
3842
  }
3903
3843
 
3904
- // src/components/features/entity-tag-badges.tsx
3905
- import Link from "next/link";
3906
- import { jsx as jsx21, jsxs as jsxs18 } from "react/jsx-runtime";
3907
- var BADGE_CLASS = "bg-ods-card border border-ods-border";
3908
- function EntityTagBadges({ tags, basePath, max, className }) {
3909
- const items = (tags || []).filter((t) => !!t && !!t.name);
3910
- if (items.length === 0) return null;
3911
- const visibleLimit = max == null ? items.length : Math.max(0, max);
3912
- const shown = items.slice(0, visibleLimit);
3913
- const overflow = items.length - shown.length;
3914
- return /* @__PURE__ */ jsxs18("div", { className: `flex flex-wrap items-center gap-2 w-full ${className || ""}`, children: [
3915
- shown.map((tag) => {
3916
- const key = tag.tag_id ?? tag.id ?? tag.slug ?? tag.name;
3917
- const label = (tag.name || "").toUpperCase();
3918
- if (basePath && tag.slug) {
3919
- return /* @__PURE__ */ jsx21(Link, { href: `${basePath}?tags=${tag.slug}`, className: "inline-flex", children: /* @__PURE__ */ jsx21(
3920
- StatusBadge,
3921
- {
3922
- text: label,
3923
- variant: "card",
3924
- className: `${BADGE_CLASS} cursor-pointer transition-colors hover:border-ods-accent`
3925
- }
3926
- ) }, key);
3927
- }
3928
- return /* @__PURE__ */ jsx21(StatusBadge, { text: label, variant: "card", className: BADGE_CLASS }, key);
3929
- }),
3930
- overflow > 0 && /* @__PURE__ */ jsx21(StatusBadge, { text: `+${overflow}`, variant: "card", className: `${BADGE_CLASS} text-ods-text-secondary` })
3931
- ] });
3932
- }
3933
-
3934
3844
  // src/components/features/mux-origins.ts
3935
3845
  var MUX_STREAM_ORIGIN = "https://stream.mux.com";
3936
3846
  var MUX_IMAGE_ORIGIN = "https://image.mux.com";
@@ -4004,7 +3914,7 @@ init_cn();
4004
3914
  import * as PopoverPrimitive from "@radix-ui/react-popover";
4005
3915
  import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
4006
3916
  import * as React12 from "react";
4007
- import { jsx as jsx22, jsxs as jsxs19 } from "react/jsx-runtime";
3917
+ import { jsx as jsx20, jsxs as jsxs18 } from "react/jsx-runtime";
4008
3918
  var containerStyles = cn(
4009
3919
  // Layout & spacing — matches lib Input component
4010
3920
  "flex items-center gap-2 rounded-[6px] border px-3 h-11 md:h-12 cursor-text",
@@ -4188,20 +4098,20 @@ function SearchInput({
4188
4098
  const handleOpenChange = (open) => {
4189
4099
  setIsOpen(open);
4190
4100
  };
4191
- const defaultRenderResult = (result, isHighlighted) => /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-3 w-full min-w-0", children: [
4192
- result.icon && /* @__PURE__ */ jsx22("span", { className: "flex-shrink-0 text-ods-text-secondary [&_svg]:size-4", children: result.icon }),
4193
- /* @__PURE__ */ jsxs19("div", { className: "min-w-0 flex-1", children: [
4194
- /* @__PURE__ */ jsx22("div", { className: cn(
4101
+ const defaultRenderResult = (result, isHighlighted) => /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-3 w-full min-w-0", children: [
4102
+ result.icon && /* @__PURE__ */ jsx20("span", { className: "flex-shrink-0 text-ods-text-secondary [&_svg]:size-4", children: result.icon }),
4103
+ /* @__PURE__ */ jsxs18("div", { className: "min-w-0 flex-1", children: [
4104
+ /* @__PURE__ */ jsx20("div", { className: cn(
4195
4105
  "text-sm font-medium leading-5 truncate",
4196
4106
  isHighlighted ? "text-ods-accent" : "text-ods-text-primary"
4197
4107
  ), title: result.title, children: result.title }),
4198
- result.description && /* @__PURE__ */ jsx22("div", { className: "text-xs leading-4 text-ods-text-secondary truncate mt-0.5", title: result.description, children: result.description })
4108
+ result.description && /* @__PURE__ */ jsx20("div", { className: "text-xs leading-4 text-ods-text-secondary truncate mt-0.5", title: result.description, children: result.description })
4199
4109
  ] }),
4200
- result.type && /* @__PURE__ */ jsx22("span", { className: "flex-shrink-0 text-[11px] font-medium text-ods-text-muted uppercase tracking-wider", children: result.type })
4110
+ result.type && /* @__PURE__ */ jsx20("span", { className: "flex-shrink-0 text-[11px] font-medium text-ods-text-muted uppercase tracking-wider", children: result.type })
4201
4111
  ] });
4202
4112
  const renderRow = (result, index) => {
4203
4113
  const isHighlighted = index === highlightedIndex;
4204
- return /* @__PURE__ */ jsx22(
4114
+ return /* @__PURE__ */ jsx20(
4205
4115
  "div",
4206
4116
  {
4207
4117
  role: "option",
@@ -4220,15 +4130,15 @@ function SearchInput({
4220
4130
  };
4221
4131
  const renderDropdownContent = () => {
4222
4132
  if (isLoading) {
4223
- return /* @__PURE__ */ jsx22("div", { className: "px-4 py-3 text-ods-text-secondary text-[14px]", children: "Loading..." });
4133
+ return /* @__PURE__ */ jsx20("div", { className: "px-4 py-3 text-ods-text-secondary text-[14px]", children: "Loading..." });
4224
4134
  }
4225
4135
  if (flatResults.length === 0) {
4226
- return /* @__PURE__ */ jsx22("div", { className: "px-4 py-3 text-ods-text-secondary text-[14px]", children: emptyResultsText });
4136
+ return /* @__PURE__ */ jsx20("div", { className: "px-4 py-3 text-ods-text-secondary text-[14px]", children: emptyResultsText });
4227
4137
  }
4228
4138
  if (groups) {
4229
4139
  let globalIndex = 0;
4230
- return Array.from(groups.entries()).map(([groupLabel, groupResults]) => /* @__PURE__ */ jsxs19("div", { children: [
4231
- /* @__PURE__ */ jsx22("div", { className: "px-4 py-2 text-[12px] font-semibold text-ods-text-secondary uppercase tracking-wide bg-ods-bg", children: groupLabel }),
4140
+ return Array.from(groups.entries()).map(([groupLabel, groupResults]) => /* @__PURE__ */ jsxs18("div", { children: [
4141
+ /* @__PURE__ */ jsx20("div", { className: "px-4 py-2 text-[12px] font-semibold text-ods-text-secondary uppercase tracking-wide bg-ods-bg", children: groupLabel }),
4232
4142
  groupResults.map((result) => {
4233
4143
  const idx = globalIndex++;
4234
4144
  return renderRow(result, idx);
@@ -4238,9 +4148,9 @@ function SearchInput({
4238
4148
  return flatResults.map((result, index) => renderRow(result, index));
4239
4149
  };
4240
4150
  const hasValue = currentValue.length > 0;
4241
- return /* @__PURE__ */ jsxs19("div", { className: cn("relative", className), ref: containerRef, children: [
4242
- /* @__PURE__ */ jsxs19(PopoverPrimitive.Root, { open: dropdownVisible, onOpenChange: handleOpenChange, modal: false, children: [
4243
- /* @__PURE__ */ jsx22(PopoverPrimitive.Anchor, { asChild: true, children: /* @__PURE__ */ jsxs19(
4151
+ return /* @__PURE__ */ jsxs18("div", { className: cn("relative", className), ref: containerRef, children: [
4152
+ /* @__PURE__ */ jsxs18(PopoverPrimitive.Root, { open: dropdownVisible, onOpenChange: handleOpenChange, modal: false, children: [
4153
+ /* @__PURE__ */ jsx20(PopoverPrimitive.Anchor, { asChild: true, children: /* @__PURE__ */ jsxs18(
4244
4154
  "div",
4245
4155
  {
4246
4156
  className: cn(
@@ -4253,9 +4163,9 @@ function SearchInput({
4253
4163
  setIsOpen(true);
4254
4164
  },
4255
4165
  children: [
4256
- /* @__PURE__ */ jsx22("span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ jsx22(SearchIcon, {}) }),
4257
- /* @__PURE__ */ jsxs19("div", { ref: middleRef, className: "flex-1 flex items-center gap-2 min-w-0 overflow-hidden", children: [
4258
- visibleChips.map((chip) => /* @__PURE__ */ jsx22(
4166
+ /* @__PURE__ */ jsx20("span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ jsx20(SearchIcon, {}) }),
4167
+ /* @__PURE__ */ jsxs18("div", { ref: middleRef, className: "flex-1 flex items-center gap-2 min-w-0 overflow-hidden", children: [
4168
+ visibleChips.map((chip) => /* @__PURE__ */ jsx20(
4259
4169
  Tag,
4260
4170
  {
4261
4171
  variant: chipVariantToTagVariant(chip.variant),
@@ -4265,7 +4175,7 @@ function SearchInput({
4265
4175
  },
4266
4176
  chip.id
4267
4177
  )),
4268
- hiddenCount > 0 && /* @__PURE__ */ jsx22("div", { ref: hiddenTagsRef, className: "shrink-0", children: /* @__PURE__ */ jsx22(
4178
+ hiddenCount > 0 && /* @__PURE__ */ jsx20("div", { ref: hiddenTagsRef, className: "shrink-0", children: /* @__PURE__ */ jsx20(
4269
4179
  "button",
4270
4180
  {
4271
4181
  ref: badgeRef,
@@ -4284,7 +4194,7 @@ function SearchInput({
4284
4194
  children: getLimitTagsText(hiddenCount)
4285
4195
  }
4286
4196
  ) }),
4287
- /* @__PURE__ */ jsx22(
4197
+ /* @__PURE__ */ jsx20(
4288
4198
  "input",
4289
4199
  {
4290
4200
  ref: inputRef,
@@ -4301,15 +4211,15 @@ function SearchInput({
4301
4211
  }
4302
4212
  )
4303
4213
  ] }),
4304
- /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-1 shrink-0 ml-auto", children: [
4305
- hasValue && /* @__PURE__ */ jsx22(
4214
+ /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-1 shrink-0 ml-auto", children: [
4215
+ hasValue && /* @__PURE__ */ jsx20(
4306
4216
  "button",
4307
4217
  {
4308
4218
  type: "button",
4309
4219
  onClick: handleClear,
4310
4220
  className: "flex items-center justify-center hover:opacity-70 transition-opacity",
4311
4221
  "aria-label": "Clear search",
4312
- children: /* @__PURE__ */ jsx22(XmarkCircleIcon, { className: "text-ods-text-secondary", size: 24 })
4222
+ children: /* @__PURE__ */ jsx20(XmarkCircleIcon, { className: "text-ods-text-secondary", size: 24 })
4313
4223
  }
4314
4224
  ),
4315
4225
  endAdornment
@@ -4317,7 +4227,7 @@ function SearchInput({
4317
4227
  ]
4318
4228
  }
4319
4229
  ) }),
4320
- /* @__PURE__ */ jsx22(
4230
+ /* @__PURE__ */ jsx20(
4321
4231
  PopoverPrimitive.Content,
4322
4232
  {
4323
4233
  className: cn(
@@ -4340,14 +4250,14 @@ function SearchInput({
4340
4250
  e.preventDefault();
4341
4251
  }
4342
4252
  },
4343
- children: /* @__PURE__ */ jsxs19(ScrollAreaPrimitive.Root, { className: "overflow-hidden", children: [
4344
- /* @__PURE__ */ jsx22(ScrollAreaPrimitive.Viewport, { className: "max-h-[320px] w-full", children: /* @__PURE__ */ jsx22("div", { role: "listbox", children: renderDropdownContent() }) }),
4345
- /* @__PURE__ */ jsx22(ScrollAreaPrimitive.Scrollbar, { className: "hidden", orientation: "vertical", children: /* @__PURE__ */ jsx22(ScrollAreaPrimitive.Thumb, {}) })
4253
+ children: /* @__PURE__ */ jsxs18(ScrollAreaPrimitive.Root, { className: "overflow-hidden", children: [
4254
+ /* @__PURE__ */ jsx20(ScrollAreaPrimitive.Viewport, { className: "max-h-[320px] w-full", children: /* @__PURE__ */ jsx20("div", { role: "listbox", children: renderDropdownContent() }) }),
4255
+ /* @__PURE__ */ jsx20(ScrollAreaPrimitive.Scrollbar, { className: "hidden", orientation: "vertical", children: /* @__PURE__ */ jsx20(ScrollAreaPrimitive.Thumb, {}) })
4346
4256
  ] })
4347
4257
  }
4348
4258
  )
4349
4259
  ] }),
4350
- showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ jsx22(
4260
+ showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ jsx20(
4351
4261
  HiddenTagsPopup,
4352
4262
  {
4353
4263
  ref: hiddenTagsPopupRef,
@@ -4361,7 +4271,7 @@ function SearchInput({
4361
4271
  }
4362
4272
  }
4363
4273
  ),
4364
- /* @__PURE__ */ jsx22(
4274
+ /* @__PURE__ */ jsx20(
4365
4275
  "span",
4366
4276
  {
4367
4277
  ref: textMeasureRef,
@@ -4370,13 +4280,13 @@ function SearchInput({
4370
4280
  children: currentPlaceholder
4371
4281
  }
4372
4282
  ),
4373
- /* @__PURE__ */ jsx22(
4283
+ /* @__PURE__ */ jsx20(
4374
4284
  "div",
4375
4285
  {
4376
4286
  ref: measureRef,
4377
4287
  "aria-hidden": "true",
4378
4288
  className: "fixed -left-[9999px] top-0 flex gap-2 pointer-events-none",
4379
- children: filterChips.map((chip) => /* @__PURE__ */ jsx22(
4289
+ children: filterChips.map((chip) => /* @__PURE__ */ jsx20(
4380
4290
  Tag,
4381
4291
  {
4382
4292
  variant: chipVariantToTagVariant(chip.variant),
@@ -4395,7 +4305,7 @@ function SearchInput({
4395
4305
  // src/components/ui/filter-pill-row.tsx
4396
4306
  init_button();
4397
4307
  import { Filter } from "lucide-react";
4398
- import { jsx as jsx23, jsxs as jsxs20 } from "react/jsx-runtime";
4308
+ import { jsx as jsx21, jsxs as jsxs19 } from "react/jsx-runtime";
4399
4309
  function FilterPillRow({
4400
4310
  label,
4401
4311
  selectedValue,
@@ -4404,12 +4314,12 @@ function FilterPillRow({
4404
4314
  countLabel,
4405
4315
  children
4406
4316
  }) {
4407
- return /* @__PURE__ */ jsxs20("div", { className: "flex flex-wrap items-center gap-3 p-4 bg-ods-card border border-ods-border rounded-lg", children: [
4408
- /* @__PURE__ */ jsxs20("div", { className: "flex items-center gap-2", children: [
4409
- /* @__PURE__ */ jsx23(Filter, { className: "h-4 w-4 text-ods-accent" }),
4410
- /* @__PURE__ */ jsx23("span", { className: "text-h5 text-ods-text-secondary", children: label })
4317
+ return /* @__PURE__ */ jsxs19("div", { className: "flex flex-wrap items-center gap-3 p-4 bg-ods-card border border-ods-border rounded-lg", children: [
4318
+ /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-2", children: [
4319
+ /* @__PURE__ */ jsx21(Filter, { className: "h-4 w-4 text-ods-accent" }),
4320
+ /* @__PURE__ */ jsx21("span", { className: "text-h5 text-ods-text-secondary", children: label })
4411
4321
  ] }),
4412
- children || options.map((opt) => /* @__PURE__ */ jsx23(
4322
+ children || options.map((opt) => /* @__PURE__ */ jsx21(
4413
4323
  Button,
4414
4324
  {
4415
4325
  type: "button",
@@ -4421,7 +4331,7 @@ function FilterPillRow({
4421
4331
  },
4422
4332
  opt.value
4423
4333
  )),
4424
- countLabel && /* @__PURE__ */ jsx23("div", { className: "ml-auto text-[12px] font-['DM_Sans'] text-ods-text-secondary shrink-0", children: countLabel })
4334
+ countLabel && /* @__PURE__ */ jsx21("div", { className: "ml-auto text-[12px] font-['DM_Sans'] text-ods-text-secondary shrink-0", children: countLabel })
4425
4335
  ] });
4426
4336
  }
4427
4337
 
@@ -4440,8 +4350,6 @@ export {
4440
4350
  TabsList,
4441
4351
  TabsTrigger,
4442
4352
  TabsContent,
4443
- statusBadgeVariants,
4444
- StatusBadge,
4445
4353
  SimpleMarkdownRenderer,
4446
4354
  formatDate,
4447
4355
  formatNumber,
@@ -4557,7 +4465,6 @@ export {
4557
4465
  PageError,
4558
4466
  LoadError,
4559
4467
  NotFoundError,
4560
- EntityTagBadges,
4561
4468
  MUX_STREAM_ORIGIN,
4562
4469
  MUX_IMAGE_ORIGIN,
4563
4470
  useVideoOriginPreconnect,
@@ -4566,4 +4473,4 @@ export {
4566
4473
  SearchInput,
4567
4474
  FilterPillRow
4568
4475
  };
4569
- //# sourceMappingURL=chunk-NAOTZAKM.js.map
4476
+ //# sourceMappingURL=chunk-URJQGMNH.js.map