@flamingo-stack/openframe-frontend-core 0.0.488 → 0.0.489

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 (117) hide show
  1. package/dist/{chunk-FOQV6RCO.cjs → chunk-2IHN7NNB.cjs} +29 -29
  2. package/dist/{chunk-FOQV6RCO.cjs.map → chunk-2IHN7NNB.cjs.map} +1 -1
  3. package/dist/{chunk-GQX6LFFA.cjs → chunk-2RNJYJWO.cjs} +42 -42
  4. package/dist/{chunk-GQX6LFFA.cjs.map → chunk-2RNJYJWO.cjs.map} +1 -1
  5. package/dist/{chunk-RZSA6MZL.cjs → chunk-3OIB763B.cjs} +15 -15
  6. package/dist/{chunk-RZSA6MZL.cjs.map → chunk-3OIB763B.cjs.map} +1 -1
  7. package/dist/{chunk-LLWBPPZ4.js → chunk-5VSEMWWE.js} +6 -6
  8. package/dist/{chunk-DX6AOHNU.cjs → chunk-5YMY4BAW.cjs} +77 -77
  9. package/dist/{chunk-DX6AOHNU.cjs.map → chunk-5YMY4BAW.cjs.map} +1 -1
  10. package/dist/{chunk-KFQXO7QB.js → chunk-6GT557KN.js} +1 -1
  11. package/dist/chunk-6GT557KN.js.map +1 -0
  12. package/dist/{chunk-3BFX6HJM.js → chunk-B4YR342L.js} +6 -6
  13. package/dist/{chunk-SCCTJ2UI.js → chunk-BGWDDB7Y.js} +4 -4
  14. package/dist/{chunk-A7IPON2V.cjs → chunk-BIKOJ4FH.cjs} +5 -5
  15. package/dist/{chunk-A7IPON2V.cjs.map → chunk-BIKOJ4FH.cjs.map} +1 -1
  16. package/dist/{chunk-PNXNWGBY.js → chunk-EU6QNO4S.js} +2 -2
  17. package/dist/{chunk-F6BYUO5U.js → chunk-FKPXFTZT.js} +3 -3
  18. package/dist/{chunk-EUYIFALO.cjs → chunk-H3YRJ3LZ.cjs} +14 -14
  19. package/dist/{chunk-EUYIFALO.cjs.map → chunk-H3YRJ3LZ.cjs.map} +1 -1
  20. package/dist/{chunk-5RXKOGH6.cjs → chunk-IN4IO7BL.cjs} +386 -327
  21. package/dist/chunk-IN4IO7BL.cjs.map +1 -0
  22. package/dist/{chunk-V3CNNMY3.cjs → chunk-J7H32E3R.cjs} +18 -18
  23. package/dist/{chunk-V3CNNMY3.cjs.map → chunk-J7H32E3R.cjs.map} +1 -1
  24. package/dist/{chunk-AJNDDXKC.js → chunk-K7MNWYYI.js} +3 -3
  25. package/dist/{chunk-PECGZWQR.cjs → chunk-KP5KRRD6.cjs} +3 -3
  26. package/dist/{chunk-PECGZWQR.cjs.map → chunk-KP5KRRD6.cjs.map} +1 -1
  27. package/dist/{chunk-2B6773QM.cjs → chunk-LILQJ3UZ.cjs} +1 -1
  28. package/dist/chunk-LILQJ3UZ.cjs.map +1 -0
  29. package/dist/{chunk-H7JX2BG7.cjs → chunk-LLEDO4P7.cjs} +75 -75
  30. package/dist/{chunk-H7JX2BG7.cjs.map → chunk-LLEDO4P7.cjs.map} +1 -1
  31. package/dist/{chunk-AHDJMEEN.js → chunk-N4MTNTSX.js} +7 -7
  32. package/dist/{chunk-KLYHZRAD.js → chunk-PB3BTZDU.js} +2 -2
  33. package/dist/{chunk-YEEHB4T6.cjs → chunk-RO7Q56ZK.cjs} +40 -40
  34. package/dist/{chunk-YEEHB4T6.cjs.map → chunk-RO7Q56ZK.cjs.map} +1 -1
  35. package/dist/{chunk-CWQACI4Z.js → chunk-RW2LPL72.js} +2 -2
  36. package/dist/{chunk-HQYJINFV.js → chunk-TWGYBXYV.js} +4 -4
  37. package/dist/{chunk-YJSKQ2ZV.js → chunk-VL4LUO32.js} +3 -3
  38. package/dist/{chunk-FZOBQG6M.cjs → chunk-VLOE7MI2.cjs} +35 -35
  39. package/dist/{chunk-FZOBQG6M.cjs.map → chunk-VLOE7MI2.cjs.map} +1 -1
  40. package/dist/{chunk-S52LJNMU.js → chunk-W6ZUOWSB.js} +7 -7
  41. package/dist/{chunk-PXF5J24T.js → chunk-X2YF5TJS.js} +2 -2
  42. package/dist/{chunk-77DFPD35.js → chunk-YMJZOANX.js} +268 -209
  43. package/dist/chunk-YMJZOANX.js.map +1 -0
  44. package/dist/{chunk-SIKCXKGB.cjs → chunk-Z7Y63IFU.cjs} +7 -7
  45. package/dist/{chunk-SIKCXKGB.cjs.map → chunk-Z7Y63IFU.cjs.map} +1 -1
  46. package/dist/{chunk-EYEIVYYF.cjs → chunk-ZIAS5NNL.cjs} +7 -7
  47. package/dist/{chunk-EYEIVYYF.cjs.map → chunk-ZIAS5NNL.cjs.map} +1 -1
  48. package/dist/components/case-studies/index.cjs +10 -10
  49. package/dist/components/case-studies/index.js +4 -4
  50. package/dist/components/chat/hooks/use-chat-history-hydration.d.ts +47 -0
  51. package/dist/components/chat/hooks/use-chat-history-hydration.d.ts.map +1 -0
  52. package/dist/components/chat/hooks/use-chat.d.ts +1 -0
  53. package/dist/components/chat/hooks/use-chat.d.ts.map +1 -1
  54. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts +4 -0
  55. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts.map +1 -1
  56. package/dist/components/chat/index.cjs +4 -4
  57. package/dist/components/chat/index.js +3 -3
  58. package/dist/components/chat/types/unified-chat-state.types.d.ts +5 -0
  59. package/dist/components/chat/types/unified-chat-state.types.d.ts.map +1 -1
  60. package/dist/components/chat/utils/chat-conversation-storage.d.ts +34 -0
  61. package/dist/components/chat/utils/chat-conversation-storage.d.ts.map +1 -0
  62. package/dist/components/contact/index.cjs +5 -5
  63. package/dist/components/contact/index.js +4 -4
  64. package/dist/components/docs/index.cjs +7 -7
  65. package/dist/components/docs/index.js +6 -6
  66. package/dist/components/embeds/index.cjs +5 -5
  67. package/dist/components/embeds/index.js +4 -4
  68. package/dist/components/faq/index.cjs +6 -6
  69. package/dist/components/faq/index.js +5 -5
  70. package/dist/components/features/index.cjs +4 -4
  71. package/dist/components/features/index.js +3 -3
  72. package/dist/components/help-center-pages/index.cjs +23 -23
  73. package/dist/components/help-center-pages/index.js +14 -14
  74. package/dist/components/index.cjs +140 -140
  75. package/dist/components/index.js +12 -12
  76. package/dist/components/navigation/index.cjs +4 -4
  77. package/dist/components/navigation/index.js +3 -3
  78. package/dist/components/onboarding-guides/index.cjs +8 -8
  79. package/dist/components/onboarding-guides/index.js +7 -7
  80. package/dist/components/related-content/index.cjs +6 -6
  81. package/dist/components/related-content/index.js +5 -5
  82. package/dist/components/tickets/index.cjs +7 -7
  83. package/dist/components/tickets/index.js +6 -6
  84. package/dist/components/ui/index.cjs +4 -4
  85. package/dist/components/ui/index.js +3 -3
  86. package/dist/contexts/chat-runtime-context.d.ts +8 -0
  87. package/dist/contexts/chat-runtime-context.d.ts.map +1 -1
  88. package/dist/contexts/index.cjs +2 -2
  89. package/dist/contexts/index.js +1 -1
  90. package/dist/hooks/index.cjs +3 -3
  91. package/dist/hooks/index.js +2 -2
  92. package/dist/index.cjs +4 -4
  93. package/dist/index.js +3 -3
  94. package/package.json +1 -1
  95. package/src/components/chat/hooks/use-chat-history-hydration.ts +142 -0
  96. package/src/components/chat/hooks/use-chat.ts +12 -0
  97. package/src/components/chat/hooks/use-sse-chat-adapter.ts +109 -162
  98. package/src/components/chat/types/unified-chat-state.types.ts +6 -0
  99. package/src/components/chat/utils/chat-conversation-storage.ts +83 -0
  100. package/src/contexts/chat-runtime-context.tsx +8 -0
  101. package/dist/chunk-2B6773QM.cjs.map +0 -1
  102. package/dist/chunk-5RXKOGH6.cjs.map +0 -1
  103. package/dist/chunk-77DFPD35.js.map +0 -1
  104. package/dist/chunk-KFQXO7QB.js.map +0 -1
  105. /package/dist/{chunk-LLWBPPZ4.js.map → chunk-5VSEMWWE.js.map} +0 -0
  106. /package/dist/{chunk-3BFX6HJM.js.map → chunk-B4YR342L.js.map} +0 -0
  107. /package/dist/{chunk-SCCTJ2UI.js.map → chunk-BGWDDB7Y.js.map} +0 -0
  108. /package/dist/{chunk-PNXNWGBY.js.map → chunk-EU6QNO4S.js.map} +0 -0
  109. /package/dist/{chunk-F6BYUO5U.js.map → chunk-FKPXFTZT.js.map} +0 -0
  110. /package/dist/{chunk-AJNDDXKC.js.map → chunk-K7MNWYYI.js.map} +0 -0
  111. /package/dist/{chunk-AHDJMEEN.js.map → chunk-N4MTNTSX.js.map} +0 -0
  112. /package/dist/{chunk-KLYHZRAD.js.map → chunk-PB3BTZDU.js.map} +0 -0
  113. /package/dist/{chunk-CWQACI4Z.js.map → chunk-RW2LPL72.js.map} +0 -0
  114. /package/dist/{chunk-HQYJINFV.js.map → chunk-TWGYBXYV.js.map} +0 -0
  115. /package/dist/{chunk-YJSKQ2ZV.js.map → chunk-VL4LUO32.js.map} +0 -0
  116. /package/dist/{chunk-S52LJNMU.js.map → chunk-W6ZUOWSB.js.map} +0 -0
  117. /package/dist/{chunk-PXF5J24T.js.map → chunk-X2YF5TJS.js.map} +0 -0
@@ -3,10 +3,10 @@
3
3
 
4
4
 
5
5
 
6
- var _chunk5RXKOGH6cjs = require('./chunk-5RXKOGH6.cjs');
6
+ var _chunkIN4IO7BLcjs = require('./chunk-IN4IO7BL.cjs');
7
7
 
8
8
 
9
- var _chunk2B6773QMcjs = require('./chunk-2B6773QM.cjs');
9
+ var _chunkLILQJ3UZcjs = require('./chunk-LILQJ3UZ.cjs');
10
10
 
11
11
 
12
12
  var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
@@ -50,7 +50,7 @@ function DetailPageSkeleton({
50
50
  ] });
51
51
  if (bare) return content;
52
52
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
53
- _chunk5RXKOGH6cjs.PageLayout,
53
+ _chunkIN4IO7BLcjs.PageLayout,
54
54
  {
55
55
  showHeader: false,
56
56
  className: "bg-ods-bg max-w-[1280px] mx-auto py-6 md:py-10 px-6 md:px-20",
@@ -86,9 +86,9 @@ function ArticleAuthorByline({
86
86
  proxyImageUrl,
87
87
  className
88
88
  }) {
89
- const runtime = _chunk2B6773QMcjs.useChatRuntime.call(void 0, );
89
+ const runtime = _chunkLILQJ3UZcjs.useChatRuntime.call(void 0, );
90
90
  if (!author) return null;
91
- const proxiedAvatar = avatar ? proxyImageUrl ? proxyImageUrl(avatar) : _nullishCoalesce(_chunk5RXKOGH6cjs.getProxiedImageUrl.call(void 0, avatar, {
91
+ const proxiedAvatar = avatar ? proxyImageUrl ? proxyImageUrl(avatar) : _nullishCoalesce(_chunkIN4IO7BLcjs.getProxiedImageUrl.call(void 0, avatar, {
92
92
  proxyPrefix: _optionalChain([runtime, 'optionalAccess', _2 => _2.endpoints, 'access', _3 => _3.imageProxyUrlPrefix]),
93
93
  skipDomains: _optionalChain([runtime, 'optionalAccess', _4 => _4.endpoints, 'access', _5 => _5.imageProxySkipDomains]),
94
94
  directHttps: true
@@ -96,7 +96,7 @@ function ArticleAuthorByline({
96
96
  const avatarSizeClass = size === "lg" ? "w-16 h-16" : "w-14 h-14";
97
97
  const avatarIconClass = size === "lg" ? "w-8 h-8" : "w-7 h-7";
98
98
  const avatarDim = size === "lg" ? 64 : 56;
99
- const formattedBio = _chunk5RXKOGH6cjs.formatBioText.call(void 0, _nullishCoalesce(bio, () => ( null)));
99
+ const formattedBio = _chunkIN4IO7BLcjs.formatBioText.call(void 0, _nullishCoalesce(bio, () => ( null)));
100
100
  const dateLabel = publishedAt ? formatDate(publishedAt) : "";
101
101
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
102
102
  "div",
@@ -146,4 +146,4 @@ function ArticleAuthorByline({
146
146
 
147
147
 
148
148
  exports.DetailPageSkeleton = DetailPageSkeleton; exports.ArticleAuthorByline = ArticleAuthorByline;
149
- //# sourceMappingURL=chunk-SIKCXKGB.cjs.map
149
+ //# sourceMappingURL=chunk-Z7Y63IFU.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-SIKCXKGB.cjs","../src/components/shared/detail-page-skeleton.tsx","../src/components/shared/article-author-byline.tsx"],"names":["jsxs","jsx"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-SIKCXKGB.cjs","sourcesContent":[null,"\"use client\";\n\nimport { PageLayout } from '../layout/page-layout';\n\nexport interface DetailPageSkeletonProps {\n metadataColumns?: number; // Number of metadata grid columns (default 4)\n showImageGallery?: boolean; // Show horizontal image gallery (default true)\n /** Render only the skeleton blocks, WITHOUT the self-contained page wrapper\n * — the caller supplies its own (e.g. `<PageShell>`) so the loading state\n * matches the loaded page's width, padding, and min-height. Default false\n * (self-contained `<PageLayout>` at the hub article width). */\n bare?: boolean;\n}\n\nexport function DetailPageSkeleton({\n metadataColumns = 4,\n showImageGallery = true,\n bare = false\n}: DetailPageSkeletonProps = {}) {\n const content = (\n <div className=\"space-y-6 md:space-y-10 animate-pulse\">\n {/* Title Block */}\n <div className=\"flex flex-col gap-6 w-full\">\n <div className=\"h-16 md:h-20 w-full max-w-3xl bg-ods-card rounded\"></div>\n </div>\n\n {/* Category Tags Skeleton */}\n <div className=\"flex flex-wrap gap-2 w-full\">\n <div className=\"h-8 w-32 bg-ods-card rounded\"></div>\n <div className=\"h-8 w-28 bg-ods-card rounded\"></div>\n <div className=\"h-8 w-36 bg-ods-card rounded\"></div>\n </div>\n\n {/* Metadata Grid Skeleton */}\n <div className={`grid grid-cols-1 md:grid-cols-${metadataColumns} border border-ods-border rounded-md overflow-hidden w-full`}>\n {Array.from({ length: metadataColumns }).map((_, i) => (\n <div key={i} className=\"bg-ods-card border-b md:border-b-0 md:border-r last:border-r-0 border-ods-border p-4\">\n <div className=\"h-6 w-24 bg-ods-border rounded mb-2\"></div>\n <div className=\"h-5 w-20 bg-ods-border rounded\"></div>\n </div>\n ))}\n </div>\n\n {/* Image Gallery Skeleton */}\n {showImageGallery && (\n <div className=\"flex gap-6 overflow-x-auto w-full\">\n {[1, 2, 3, 4, 5].map((i) => (\n <div key={i} className=\"shrink-0 w-[240px] h-[200px] bg-ods-card rounded-md border border-ods-border\"></div>\n ))}\n </div>\n )}\n\n {/* Featured Image Skeleton (for case studies) */}\n {!showImageGallery && (\n <div className=\"aspect-[2560/1366] w-full bg-ods-card rounded-md\"></div>\n )}\n\n {/* Content Sections Skeleton */}\n {[1, 2, 3].map((section) => (\n <div key={section} className=\"space-y-6\">\n <div className=\"h-16 w-64 bg-ods-card rounded\"></div>\n <div className=\"space-y-3\">\n <div className=\"h-6 w-full bg-ods-card rounded\"></div>\n <div className=\"h-6 w-full bg-ods-card rounded\"></div>\n <div className=\"h-6 w-4/5 bg-ods-card rounded\"></div>\n </div>\n </div>\n ))}\n </div>\n );\n if (bare) return content;\n return (\n <PageLayout\n showHeader={false}\n className=\"bg-ods-bg max-w-[1280px] mx-auto py-6 md:py-10 px-6 md:px-20\"\n >\n {content}\n </PageLayout>\n );\n}\n","'use client'\n\n/**\n * Shared \"author byline\" card used by article-shaped detail pages\n * (blog post, product release, onboarding guide, investor update).\n *\n * MOVED from the hub so any consuming app can embed it; hub call sites\n * import it directly and pass their platform-aware copy explicitly\n * (`fallbackBio={defaultAuthorFallbackBio()}` from the hub's app-config).\n *\n * Embed-readiness contract:\n * - `Link` / `Image` render through the embed-shims (plain `<a>` / `<img>`\n * in non-Next hosts; the real Next primitives once the host registers\n * them at app init).\n * - The avatar is proxied through the OPTIONAL ambient `ChatRuntime`\n * (`endpoints.imageProxyUrlPrefix`, same config `useProxiedImageUrl`\n * reads) — when no runtime is mounted the raw URL renders as-is, so the\n * component never throws outside a provider. Hosts can also inject\n * `proxyImageUrl` to bypass the runtime entirely.\n * - `fallbackBio` is a PLAIN prop (no app-config import): the lib has no\n * platform awareness; pass copy or leave it absent to render nothing.\n *\n * Render order: avatar → name + job title + date → bio (when present).\n * Returns null when `author` is empty (no card rendered).\n */\n\nimport React from 'react'\nimport { Calendar, User } from 'lucide-react'\nimport Image from '../../embed-shims/next-image'\nimport Link from '../../embed-shims/next-link'\nimport { cn } from '../../utils/cn'\nimport { formatBioText } from '../../utils/format'\nimport { getProxiedImageUrl } from '../../utils/image-proxy'\nimport { useChatRuntime } from '../../contexts/chat-runtime-context'\n\nexport interface ArticleAuthorBylineProps {\n /** Author display name. Required — block is hidden when null/empty. */\n author: string | null\n /** Avatar URL. Falls back to a placeholder when null. */\n avatar?: string | null\n /** Optional bio paragraph rendered below the name. */\n bio?: string | null\n /** Optional job title rendered immediately under the name. */\n jobTitle?: string | null\n /** Optional published date (ISO string or Date). Rendered next to the name. */\n publishedAt?: string | Date | null\n /** Optional link target for the author name (e.g. the author page). */\n href?: string | null\n /**\n * Fallback paragraph when `bio` is empty. Plain copy — the lib has no\n * platform/config awareness, so hosts that want a branded default\n * (\"Contributing author on the {platform} platform\") pass it explicitly\n * (the hub wrapper derives it from `getAppConfig()`). Absent/null ⇒\n * nothing renders below the name when `bio` is empty.\n */\n fallbackBio?: string | null\n /** Avatar size variant. `md` = 56px (default), `lg` = 64px. */\n size?: 'md' | 'lg'\n /**\n * Host-injected avatar-URL mapper. Wins over the ambient-runtime proxy\n * resolution. Use when the host proxies images outside the `ChatRuntime`\n * config (e.g. a bespoke CDN rewrite).\n */\n proxyImageUrl?: (url: string) => string\n className?: string\n}\n\nfunction formatDate(value: string | Date): string {\n const d = typeof value === 'string' ? new Date(value) : value\n if (Number.isNaN(d.getTime())) return ''\n // `timeZone: 'UTC'` keeps the SSR (server = UTC) and client (user's local tz)\n // renders identical — without it a published_at near a midnight boundary\n // formats to a different day on each side, triggering a React #418 hydration\n // text mismatch. Matches the convention in blog-metadata.tsx / investor-update.\n return d.toLocaleDateString('en-US', {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n timeZone: 'UTC',\n })\n}\n\nexport function ArticleAuthorByline({\n author,\n avatar,\n bio,\n jobTitle,\n publishedAt,\n href,\n fallbackBio,\n size = 'md',\n proxyImageUrl,\n className,\n}: ArticleAuthorBylineProps) {\n // Optional runtime — `useChatRuntime` returns null outside a provider, so\n // the byline works in bare embeds (raw avatar URL) and proxies whenever the\n // host mounted a runtime with `imageProxyUrlPrefix` (the hub always does).\n const runtime = useChatRuntime()\n if (!author) return null\n\n const proxiedAvatar = avatar\n ? proxyImageUrl\n ? proxyImageUrl(avatar)\n : (getProxiedImageUrl(avatar, {\n proxyPrefix: runtime?.endpoints.imageProxyUrlPrefix,\n skipDomains: runtime?.endpoints.imageProxySkipDomains,\n directHttps: true,\n }) ?? avatar)\n : ''\n\n // Class-driven sizing (md = 56px, lg = 64px). The numeric pair feeds only\n // the Image element's intrinsic width/height attributes (required by the\n // Next image shim) — layout comes from the classes.\n const avatarSizeClass = size === 'lg' ? 'w-16 h-16' : 'w-14 h-14'\n const avatarIconClass = size === 'lg' ? 'w-8 h-8' : 'w-7 h-7'\n const avatarDim = size === 'lg' ? 64 : 56\n const formattedBio = formatBioText(bio ?? null)\n const dateLabel = publishedAt ? formatDate(publishedAt) : ''\n\n return (\n <div\n className={cn(\n 'bg-ods-card border border-ods-border rounded-lg p-6',\n 'flex flex-col md:flex-row gap-4 items-start',\n className,\n )}\n >\n {/* Avatar */}\n <div className=\"flex-shrink-0\">\n {avatar ? (\n <Image\n src={proxiedAvatar || avatar}\n alt={author}\n width={avatarDim}\n height={avatarDim}\n className={cn('rounded-full border-2 border-ods-border object-cover', avatarSizeClass)}\n />\n ) : (\n <div\n className={cn(\n 'rounded-full border-2 border-ods-border bg-ods-bg flex items-center justify-center',\n avatarSizeClass,\n )}\n >\n <User className={cn('text-ods-text-secondary', avatarIconClass)} />\n </div>\n )}\n </div>\n\n {/* Name + meta + bio */}\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex flex-wrap items-baseline gap-x-3 gap-y-1\">\n <h3 className=\"text-h5 text-ods-text-primary\">\n {href ? (\n <Link href={href} className=\"hover:text-ods-accent transition-colors\">\n {author}\n </Link>\n ) : (\n author\n )}\n </h3>\n {dateLabel && (\n <span className=\"inline-flex items-center gap-1 font-body text-body-sm text-ods-text-secondary\">\n <Calendar className=\"h-3 w-3\" />\n {dateLabel}\n </span>\n )}\n </div>\n {jobTitle && (\n <p className=\"font-body text-body-sm text-ods-text-secondary mt-0.5\">\n {jobTitle}\n </p>\n )}\n {formattedBio ? (\n <p className=\"font-body text-body-md text-ods-text-secondary leading-relaxed mt-2\">\n {formattedBio}\n </p>\n ) : fallbackBio ? (\n <p className=\"font-body text-body-md text-ods-text-secondary italic mt-2\">\n {fallbackBio}\n </p>\n ) : null}\n </div>\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-Z7Y63IFU.cjs","../src/components/shared/detail-page-skeleton.tsx","../src/components/shared/article-author-byline.tsx"],"names":["jsxs","jsx"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-Z7Y63IFU.cjs","sourcesContent":[null,"\"use client\";\n\nimport { PageLayout } from '../layout/page-layout';\n\nexport interface DetailPageSkeletonProps {\n metadataColumns?: number; // Number of metadata grid columns (default 4)\n showImageGallery?: boolean; // Show horizontal image gallery (default true)\n /** Render only the skeleton blocks, WITHOUT the self-contained page wrapper\n * — the caller supplies its own (e.g. `<PageShell>`) so the loading state\n * matches the loaded page's width, padding, and min-height. Default false\n * (self-contained `<PageLayout>` at the hub article width). */\n bare?: boolean;\n}\n\nexport function DetailPageSkeleton({\n metadataColumns = 4,\n showImageGallery = true,\n bare = false\n}: DetailPageSkeletonProps = {}) {\n const content = (\n <div className=\"space-y-6 md:space-y-10 animate-pulse\">\n {/* Title Block */}\n <div className=\"flex flex-col gap-6 w-full\">\n <div className=\"h-16 md:h-20 w-full max-w-3xl bg-ods-card rounded\"></div>\n </div>\n\n {/* Category Tags Skeleton */}\n <div className=\"flex flex-wrap gap-2 w-full\">\n <div className=\"h-8 w-32 bg-ods-card rounded\"></div>\n <div className=\"h-8 w-28 bg-ods-card rounded\"></div>\n <div className=\"h-8 w-36 bg-ods-card rounded\"></div>\n </div>\n\n {/* Metadata Grid Skeleton */}\n <div className={`grid grid-cols-1 md:grid-cols-${metadataColumns} border border-ods-border rounded-md overflow-hidden w-full`}>\n {Array.from({ length: metadataColumns }).map((_, i) => (\n <div key={i} className=\"bg-ods-card border-b md:border-b-0 md:border-r last:border-r-0 border-ods-border p-4\">\n <div className=\"h-6 w-24 bg-ods-border rounded mb-2\"></div>\n <div className=\"h-5 w-20 bg-ods-border rounded\"></div>\n </div>\n ))}\n </div>\n\n {/* Image Gallery Skeleton */}\n {showImageGallery && (\n <div className=\"flex gap-6 overflow-x-auto w-full\">\n {[1, 2, 3, 4, 5].map((i) => (\n <div key={i} className=\"shrink-0 w-[240px] h-[200px] bg-ods-card rounded-md border border-ods-border\"></div>\n ))}\n </div>\n )}\n\n {/* Featured Image Skeleton (for case studies) */}\n {!showImageGallery && (\n <div className=\"aspect-[2560/1366] w-full bg-ods-card rounded-md\"></div>\n )}\n\n {/* Content Sections Skeleton */}\n {[1, 2, 3].map((section) => (\n <div key={section} className=\"space-y-6\">\n <div className=\"h-16 w-64 bg-ods-card rounded\"></div>\n <div className=\"space-y-3\">\n <div className=\"h-6 w-full bg-ods-card rounded\"></div>\n <div className=\"h-6 w-full bg-ods-card rounded\"></div>\n <div className=\"h-6 w-4/5 bg-ods-card rounded\"></div>\n </div>\n </div>\n ))}\n </div>\n );\n if (bare) return content;\n return (\n <PageLayout\n showHeader={false}\n className=\"bg-ods-bg max-w-[1280px] mx-auto py-6 md:py-10 px-6 md:px-20\"\n >\n {content}\n </PageLayout>\n );\n}\n","'use client'\n\n/**\n * Shared \"author byline\" card used by article-shaped detail pages\n * (blog post, product release, onboarding guide, investor update).\n *\n * MOVED from the hub so any consuming app can embed it; hub call sites\n * import it directly and pass their platform-aware copy explicitly\n * (`fallbackBio={defaultAuthorFallbackBio()}` from the hub's app-config).\n *\n * Embed-readiness contract:\n * - `Link` / `Image` render through the embed-shims (plain `<a>` / `<img>`\n * in non-Next hosts; the real Next primitives once the host registers\n * them at app init).\n * - The avatar is proxied through the OPTIONAL ambient `ChatRuntime`\n * (`endpoints.imageProxyUrlPrefix`, same config `useProxiedImageUrl`\n * reads) — when no runtime is mounted the raw URL renders as-is, so the\n * component never throws outside a provider. Hosts can also inject\n * `proxyImageUrl` to bypass the runtime entirely.\n * - `fallbackBio` is a PLAIN prop (no app-config import): the lib has no\n * platform awareness; pass copy or leave it absent to render nothing.\n *\n * Render order: avatar → name + job title + date → bio (when present).\n * Returns null when `author` is empty (no card rendered).\n */\n\nimport React from 'react'\nimport { Calendar, User } from 'lucide-react'\nimport Image from '../../embed-shims/next-image'\nimport Link from '../../embed-shims/next-link'\nimport { cn } from '../../utils/cn'\nimport { formatBioText } from '../../utils/format'\nimport { getProxiedImageUrl } from '../../utils/image-proxy'\nimport { useChatRuntime } from '../../contexts/chat-runtime-context'\n\nexport interface ArticleAuthorBylineProps {\n /** Author display name. Required — block is hidden when null/empty. */\n author: string | null\n /** Avatar URL. Falls back to a placeholder when null. */\n avatar?: string | null\n /** Optional bio paragraph rendered below the name. */\n bio?: string | null\n /** Optional job title rendered immediately under the name. */\n jobTitle?: string | null\n /** Optional published date (ISO string or Date). Rendered next to the name. */\n publishedAt?: string | Date | null\n /** Optional link target for the author name (e.g. the author page). */\n href?: string | null\n /**\n * Fallback paragraph when `bio` is empty. Plain copy — the lib has no\n * platform/config awareness, so hosts that want a branded default\n * (\"Contributing author on the {platform} platform\") pass it explicitly\n * (the hub wrapper derives it from `getAppConfig()`). Absent/null ⇒\n * nothing renders below the name when `bio` is empty.\n */\n fallbackBio?: string | null\n /** Avatar size variant. `md` = 56px (default), `lg` = 64px. */\n size?: 'md' | 'lg'\n /**\n * Host-injected avatar-URL mapper. Wins over the ambient-runtime proxy\n * resolution. Use when the host proxies images outside the `ChatRuntime`\n * config (e.g. a bespoke CDN rewrite).\n */\n proxyImageUrl?: (url: string) => string\n className?: string\n}\n\nfunction formatDate(value: string | Date): string {\n const d = typeof value === 'string' ? new Date(value) : value\n if (Number.isNaN(d.getTime())) return ''\n // `timeZone: 'UTC'` keeps the SSR (server = UTC) and client (user's local tz)\n // renders identical — without it a published_at near a midnight boundary\n // formats to a different day on each side, triggering a React #418 hydration\n // text mismatch. Matches the convention in blog-metadata.tsx / investor-update.\n return d.toLocaleDateString('en-US', {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n timeZone: 'UTC',\n })\n}\n\nexport function ArticleAuthorByline({\n author,\n avatar,\n bio,\n jobTitle,\n publishedAt,\n href,\n fallbackBio,\n size = 'md',\n proxyImageUrl,\n className,\n}: ArticleAuthorBylineProps) {\n // Optional runtime — `useChatRuntime` returns null outside a provider, so\n // the byline works in bare embeds (raw avatar URL) and proxies whenever the\n // host mounted a runtime with `imageProxyUrlPrefix` (the hub always does).\n const runtime = useChatRuntime()\n if (!author) return null\n\n const proxiedAvatar = avatar\n ? proxyImageUrl\n ? proxyImageUrl(avatar)\n : (getProxiedImageUrl(avatar, {\n proxyPrefix: runtime?.endpoints.imageProxyUrlPrefix,\n skipDomains: runtime?.endpoints.imageProxySkipDomains,\n directHttps: true,\n }) ?? avatar)\n : ''\n\n // Class-driven sizing (md = 56px, lg = 64px). The numeric pair feeds only\n // the Image element's intrinsic width/height attributes (required by the\n // Next image shim) — layout comes from the classes.\n const avatarSizeClass = size === 'lg' ? 'w-16 h-16' : 'w-14 h-14'\n const avatarIconClass = size === 'lg' ? 'w-8 h-8' : 'w-7 h-7'\n const avatarDim = size === 'lg' ? 64 : 56\n const formattedBio = formatBioText(bio ?? null)\n const dateLabel = publishedAt ? formatDate(publishedAt) : ''\n\n return (\n <div\n className={cn(\n 'bg-ods-card border border-ods-border rounded-lg p-6',\n 'flex flex-col md:flex-row gap-4 items-start',\n className,\n )}\n >\n {/* Avatar */}\n <div className=\"flex-shrink-0\">\n {avatar ? (\n <Image\n src={proxiedAvatar || avatar}\n alt={author}\n width={avatarDim}\n height={avatarDim}\n className={cn('rounded-full border-2 border-ods-border object-cover', avatarSizeClass)}\n />\n ) : (\n <div\n className={cn(\n 'rounded-full border-2 border-ods-border bg-ods-bg flex items-center justify-center',\n avatarSizeClass,\n )}\n >\n <User className={cn('text-ods-text-secondary', avatarIconClass)} />\n </div>\n )}\n </div>\n\n {/* Name + meta + bio */}\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex flex-wrap items-baseline gap-x-3 gap-y-1\">\n <h3 className=\"text-h5 text-ods-text-primary\">\n {href ? (\n <Link href={href} className=\"hover:text-ods-accent transition-colors\">\n {author}\n </Link>\n ) : (\n author\n )}\n </h3>\n {dateLabel && (\n <span className=\"inline-flex items-center gap-1 font-body text-body-sm text-ods-text-secondary\">\n <Calendar className=\"h-3 w-3\" />\n {dateLabel}\n </span>\n )}\n </div>\n {jobTitle && (\n <p className=\"font-body text-body-sm text-ods-text-secondary mt-0.5\">\n {jobTitle}\n </p>\n )}\n {formattedBio ? (\n <p className=\"font-body text-body-md text-ods-text-secondary leading-relaxed mt-2\">\n {formattedBio}\n </p>\n ) : fallbackBio ? (\n <p className=\"font-body text-body-md text-ods-text-secondary italic mt-2\">\n {fallbackBio}\n </p>\n ) : null}\n </div>\n </div>\n )\n}\n"]}
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- var _chunk5RXKOGH6cjs = require('./chunk-5RXKOGH6.cjs');
7
+ var _chunkIN4IO7BLcjs = require('./chunk-IN4IO7BL.cjs');
8
8
 
9
9
 
10
10
 
@@ -59,7 +59,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
59
59
  )
60
60
  ] })
61
61
  ] }),
62
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5RXKOGH6cjs.EmbedIframe, { src, title: displayName, height })
62
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIN4IO7BLcjs.EmbedIframe, { src, title: displayName, height })
63
63
  ] });
64
64
  }
65
65
 
@@ -85,7 +85,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
85
85
  {
86
86
  variant: "outline",
87
87
  size: "small-legacy",
88
- href: _chunk5RXKOGH6cjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
88
+ href: _chunkIN4IO7BLcjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
89
89
  openInNewTab: true,
90
90
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.GoogleSheetsIcon, { className: "w-4 h-4" }),
91
91
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-4 h-4" }),
@@ -95,9 +95,9 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
95
95
  )
96
96
  ] }),
97
97
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
98
- _chunk5RXKOGH6cjs.EmbedIframe,
98
+ _chunkIN4IO7BLcjs.EmbedIframe,
99
99
  {
100
- src: _chunk5RXKOGH6cjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
100
+ src: _chunkIN4IO7BLcjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
101
101
  title: displayName,
102
102
  height
103
103
  }
@@ -120,7 +120,7 @@ function FileDownloadCard({
120
120
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary", children: fileName || "File" }),
121
121
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary", children: [
122
122
  mimeType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: mimeType }),
123
- typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunk5RXKOGH6cjs.formatFileSize.call(void 0, fileSize) })
123
+ typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkIN4IO7BLcjs.formatFileSize.call(void 0, fileSize) })
124
124
  ] })
125
125
  ] }),
126
126
  fileUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -141,4 +141,4 @@ function FileDownloadCard({
141
141
 
142
142
 
143
143
  exports.PdfViewer = PdfViewer; exports.GoogleSheetsViewer = GoogleSheetsViewer; exports.FileDownloadCard = FileDownloadCard;
144
- //# sourceMappingURL=chunk-EYEIVYYF.cjs.map
144
+ //# sourceMappingURL=chunk-ZIAS5NNL.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-EYEIVYYF.cjs","../src/components/embeds/pdf-viewer.tsx","../src/components/embeds/google-sheets-viewer.tsx","../src/components/embeds/file-download-card.tsx"],"names":["jsxs","jsx","Download"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-EYEIVYYF.cjs","sourcesContent":[null,"\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { Download, Eye } from 'lucide-react'\nimport { AdobePdfIcon } from '../icons-v2-generated'\nimport { EmbedIframe } from './embed-iframe'\n\nexport interface PdfViewerProps {\n src: string\n fileName?: string\n onPreview?: () => void\n onDownload?: () => void\n height?: string\n}\n\nexport function PdfViewer({ src, fileName, onPreview, onDownload, height }: PdfViewerProps) {\n const displayName = fileName || 'PDF Document'\n\n if (!src) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <AdobePdfIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">PDF file not available</p>\n </div>\n )\n }\n\n return (\n <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <AdobePdfIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-h3 text-ods-text-primary truncate\">{displayName}</h2>\n </div>\n <div className=\"flex items-center gap-2 w-full sm:w-auto\">\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onPreview ? undefined : src}\n openInNewTab={!onPreview}\n onClick={onPreview}\n leftIcon={<Eye className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Preview\n </Button>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onDownload ? undefined : src}\n openInNewTab={!onDownload}\n onClick={onDownload}\n leftIcon={<Download className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Download\n </Button>\n </div>\n </div>\n <EmbedIframe src={src} title={displayName} height={height} />\n </div>\n )\n}\n","\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { ExternalLink } from 'lucide-react'\nimport { GoogleSheetsIcon } from '../icons-v2-generated'\nimport { EmbedIframe } from './embed-iframe'\nimport { toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl } from '../../utils/embed-url-converters'\n\nexport interface GoogleSheetsViewerProps {\n externalUrl: string\n fileName?: string\n height?: string\n}\n\nexport function GoogleSheetsViewer({ externalUrl, fileName, height }: GoogleSheetsViewerProps) {\n const displayName = fileName || 'Google Sheet'\n\n if (!externalUrl) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <GoogleSheetsIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">Google Sheet URL not configured</p>\n </div>\n )\n }\n\n return (\n <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-h3 text-ods-text-primary truncate\">{displayName}</h2>\n </div>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={toGoogleSheetsOriginalUrl(externalUrl)}\n openInNewTab\n leftIcon={<GoogleSheetsIcon className=\"w-4 h-4\" />}\n rightIcon={<ExternalLink className=\"w-4 h-4\" />}\n className=\"w-full sm:w-auto\"\n >\n Open in Google Sheets\n </Button>\n </div>\n <EmbedIframe\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n title={displayName}\n height={height}\n />\n </div>\n )\n}\n","import React from 'react'\nimport { Button } from '../ui'\nimport { FileText, Download } from 'lucide-react'\nimport { formatFileSize } from '../../utils'\n\nexport interface FileDownloadCardProps {\n fileName?: string\n mimeType?: string\n fileSize?: number\n fileUrl?: string\n}\n\n/**\n * Generic downloadable-file card for the `file` document type. Used by\n * `<DocsHubPage>`'s default `documentTypeRenderers.file`. Embedders can\n * override the default by passing their own `file` renderer.\n *\n * When `fileUrl` is missing, the Download button is omitted (the card still\n * renders the filename + type + size so the user knows what they were\n * about to download).\n */\nexport function FileDownloadCard({\n fileName,\n mimeType,\n fileSize,\n fileUrl,\n}: FileDownloadCardProps) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16\">\n <div className=\"bg-ods-card border border-ods-border rounded-xl p-8 max-w-md w-full text-center space-y-4\">\n <FileText className=\"w-16 h-16 text-ods-text-secondary mx-auto\" />\n <div>\n <h3 className=\"text-h3 text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary\">\n {mimeType && <span>{mimeType}</span>}\n {typeof fileSize === 'number' && <span>{formatFileSize(fileSize)}</span>}\n </div>\n </div>\n {fileUrl && (\n <Button\n variant=\"accent\"\n href={fileUrl}\n openInNewTab\n leftIcon={<Download className=\"w-4 h-4\" />}\n >\n Download File\n </Button>\n )}\n </div>\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-ZIAS5NNL.cjs","../src/components/embeds/pdf-viewer.tsx","../src/components/embeds/google-sheets-viewer.tsx","../src/components/embeds/file-download-card.tsx"],"names":["jsxs","jsx","Download"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-ZIAS5NNL.cjs","sourcesContent":[null,"\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { Download, Eye } from 'lucide-react'\nimport { AdobePdfIcon } from '../icons-v2-generated'\nimport { EmbedIframe } from './embed-iframe'\n\nexport interface PdfViewerProps {\n src: string\n fileName?: string\n onPreview?: () => void\n onDownload?: () => void\n height?: string\n}\n\nexport function PdfViewer({ src, fileName, onPreview, onDownload, height }: PdfViewerProps) {\n const displayName = fileName || 'PDF Document'\n\n if (!src) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <AdobePdfIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">PDF file not available</p>\n </div>\n )\n }\n\n return (\n <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <AdobePdfIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-h3 text-ods-text-primary truncate\">{displayName}</h2>\n </div>\n <div className=\"flex items-center gap-2 w-full sm:w-auto\">\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onPreview ? undefined : src}\n openInNewTab={!onPreview}\n onClick={onPreview}\n leftIcon={<Eye className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Preview\n </Button>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onDownload ? undefined : src}\n openInNewTab={!onDownload}\n onClick={onDownload}\n leftIcon={<Download className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Download\n </Button>\n </div>\n </div>\n <EmbedIframe src={src} title={displayName} height={height} />\n </div>\n )\n}\n","\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { ExternalLink } from 'lucide-react'\nimport { GoogleSheetsIcon } from '../icons-v2-generated'\nimport { EmbedIframe } from './embed-iframe'\nimport { toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl } from '../../utils/embed-url-converters'\n\nexport interface GoogleSheetsViewerProps {\n externalUrl: string\n fileName?: string\n height?: string\n}\n\nexport function GoogleSheetsViewer({ externalUrl, fileName, height }: GoogleSheetsViewerProps) {\n const displayName = fileName || 'Google Sheet'\n\n if (!externalUrl) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <GoogleSheetsIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">Google Sheet URL not configured</p>\n </div>\n )\n }\n\n return (\n <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-h3 text-ods-text-primary truncate\">{displayName}</h2>\n </div>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={toGoogleSheetsOriginalUrl(externalUrl)}\n openInNewTab\n leftIcon={<GoogleSheetsIcon className=\"w-4 h-4\" />}\n rightIcon={<ExternalLink className=\"w-4 h-4\" />}\n className=\"w-full sm:w-auto\"\n >\n Open in Google Sheets\n </Button>\n </div>\n <EmbedIframe\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n title={displayName}\n height={height}\n />\n </div>\n )\n}\n","import React from 'react'\nimport { Button } from '../ui'\nimport { FileText, Download } from 'lucide-react'\nimport { formatFileSize } from '../../utils'\n\nexport interface FileDownloadCardProps {\n fileName?: string\n mimeType?: string\n fileSize?: number\n fileUrl?: string\n}\n\n/**\n * Generic downloadable-file card for the `file` document type. Used by\n * `<DocsHubPage>`'s default `documentTypeRenderers.file`. Embedders can\n * override the default by passing their own `file` renderer.\n *\n * When `fileUrl` is missing, the Download button is omitted (the card still\n * renders the filename + type + size so the user knows what they were\n * about to download).\n */\nexport function FileDownloadCard({\n fileName,\n mimeType,\n fileSize,\n fileUrl,\n}: FileDownloadCardProps) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16\">\n <div className=\"bg-ods-card border border-ods-border rounded-xl p-8 max-w-md w-full text-center space-y-4\">\n <FileText className=\"w-16 h-16 text-ods-text-secondary mx-auto\" />\n <div>\n <h3 className=\"text-h3 text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary\">\n {mimeType && <span>{mimeType}</span>}\n {typeof fileSize === 'number' && <span>{formatFileSize(fileSize)}</span>}\n </div>\n </div>\n {fileUrl && (\n <Button\n variant=\"accent\"\n href={fileUrl}\n openInNewTab\n leftIcon={<Download className=\"w-4 h-4\" />}\n >\n Download File\n </Button>\n )}\n </div>\n </div>\n )\n}\n"]}
@@ -1,14 +1,14 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunkFOQV6RCOcjs = require('../../chunk-FOQV6RCO.cjs');
4
+ var _chunk2IHN7NNBcjs = require('../../chunk-2IHN7NNB.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunk5RXKOGH6cjs = require('../../chunk-5RXKOGH6.cjs');
9
- require('../../chunk-A7IPON2V.cjs');
8
+ var _chunkIN4IO7BLcjs = require('../../chunk-IN4IO7BL.cjs');
9
+ require('../../chunk-BIKOJ4FH.cjs');
10
10
  require('../../chunk-BGD345ZV.cjs');
11
- require('../../chunk-2B6773QM.cjs');
11
+ require('../../chunk-LILQJ3UZ.cjs');
12
12
  require('../../chunk-C5RS3QLV.cjs');
13
13
  require('../../chunk-BZFW3FOF.cjs');
14
14
  require('../../chunk-SSJNN5BS.cjs');
@@ -72,9 +72,9 @@ function ShareExperienceSection({
72
72
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h2", children: howItWorksTitle }),
73
73
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4", children: howItWorksBody })
74
74
  ] }),
75
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk5RXKOGH6cjs.BenefitCardGrid, { columns: 4, children: [
75
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIN4IO7BLcjs.BenefitCardGrid, { columns: 4, children: [
76
76
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
77
- _chunk5RXKOGH6cjs.BenefitCard,
77
+ _chunkIN4IO7BLcjs.BenefitCard,
78
78
  {
79
79
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-2 w-12 h-12 flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOB7YDOTKcjs.G2Icon, { width: 24, height: 24 }) }),
80
80
  title: "G2",
@@ -83,7 +83,7 @@ function ShareExperienceSection({
83
83
  }
84
84
  ),
85
85
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
86
- _chunk5RXKOGH6cjs.BenefitCard,
86
+ _chunkIN4IO7BLcjs.BenefitCard,
87
87
  {
88
88
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-2 w-12 h-12 flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOB7YDOTKcjs.CapterraIcon, { width: 24, height: 24 }) }),
89
89
  title: "Capterra",
@@ -92,7 +92,7 @@ function ShareExperienceSection({
92
92
  }
93
93
  ),
94
94
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
95
- _chunk5RXKOGH6cjs.BenefitCard,
95
+ _chunkIN4IO7BLcjs.BenefitCard,
96
96
  {
97
97
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-2 w-12 h-12 flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOB7YDOTKcjs.TrustpilotIcon, { width: 24, height: 24 }) }),
98
98
  title: "TrustPilot",
@@ -101,7 +101,7 @@ function ShareExperienceSection({
101
101
  }
102
102
  ),
103
103
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
104
- _chunk5RXKOGH6cjs.BenefitCard,
104
+ _chunkIN4IO7BLcjs.BenefitCard,
105
105
  {
106
106
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md p-2 w-12 h-12 flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOB7YDOTKcjs.GetAppIcon, { width: 24, height: 24 }) }),
107
107
  title: "GetApp",
@@ -111,7 +111,7 @@ function ShareExperienceSection({
111
111
  )
112
112
  ] }),
113
113
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
114
- _chunkFOQV6RCOcjs.ContactForm,
114
+ _chunk2IHN7NNBcjs.ContactForm,
115
115
  {
116
116
  ...DEFAULT_CONTACT_FORM_PROPS,
117
117
  ...contactFormProps
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
  import {
3
3
  ContactForm
4
- } from "../../chunk-YJSKQ2ZV.js";
4
+ } from "../../chunk-VL4LUO32.js";
5
5
  import {
6
6
  BenefitCard,
7
7
  BenefitCardGrid
8
- } from "../../chunk-77DFPD35.js";
9
- import "../../chunk-KLYHZRAD.js";
8
+ } from "../../chunk-YMJZOANX.js";
9
+ import "../../chunk-PB3BTZDU.js";
10
10
  import "../../chunk-OYGFWWLQ.js";
11
- import "../../chunk-KFQXO7QB.js";
11
+ import "../../chunk-6GT557KN.js";
12
12
  import "../../chunk-7EUIW46X.js";
13
13
  import "../../chunk-EL5YVPD5.js";
14
14
  import "../../chunk-ZJJERZUA.js";
@@ -0,0 +1,47 @@
1
+ /**
2
+ * useChatHistoryHydration — mount-time rebuild of the chat message list from
3
+ * the SERVER-side conversation store (the `chat_conversations` /
4
+ * `chat_messages` SSOT behind `GET <chatStreamUrl>/history`).
5
+ *
6
+ * The client persists ONLY the server-issued conversation id (see
7
+ * `chat-conversation-storage.ts`); this hook turns that id back into rendered
8
+ * history: message bubbles, inline entity-card refs (per send index, same
9
+ * `sendIdx` scheme as live turns), and the send counter.
10
+ *
11
+ * Failure semantics: a fetch/parse failure simply leaves the UI empty — the
12
+ * SERVER still resolves full history for the next turn (it re-reads
13
+ * `chat_messages` by conversation id on every send), so conversation context
14
+ * is never lost when hydration misses.
15
+ */
16
+ import { type MutableRefObject } from 'react';
17
+ import type { ChatRef } from '../chat-ref.types';
18
+ import type { Message } from './use-chat';
19
+ export interface UseChatHistoryHydrationArgs {
20
+ /** Mirrors the adapter's `active` gate — an idle (Mingo-mode) mount never fetches. */
21
+ active: boolean;
22
+ /** Chat source (= platform); part of the once-per-conversation guard key. */
23
+ source: string;
24
+ /** Resolved history endpoint (`<chatStreamUrl>/history` by default). */
25
+ historyUrl: string;
26
+ /** The server-issued conversation id (null = nothing to hydrate). */
27
+ conversationIdRef: MutableRefObject<string | null>;
28
+ /** Per-send inline entity-card refs — repopulated from `chat_refs`. */
29
+ refsMapRef: MutableRefObject<Map<number, Record<string, ChatRef>>>;
30
+ /** User-send counter — set to the hydrated user-turn count so the next
31
+ * live send lands on the following `sendIdx`. */
32
+ sendCountRef: MutableRefObject<number>;
33
+ /** `useChat`'s injection primitive (replace-or-prepend). */
34
+ hydrateMessages: (history: Message[]) => void;
35
+ /** Invalidates the adapter's `latestMeta` memo after refs repopulate. */
36
+ bumpMetaTick: () => void;
37
+ }
38
+ export interface UseChatHistoryHydrationResult {
39
+ /** True while the rebuild request is in flight. */
40
+ isHydratingHistory: boolean;
41
+ /** Once-per-`source:conversationId` guard. The adapter's `clearMessages`
42
+ * resets it to null alongside the stored id (a fresh conversation has no
43
+ * server history to fetch). */
44
+ hydratedKeyRef: MutableRefObject<string | null>;
45
+ }
46
+ export declare function useChatHistoryHydration({ active, source, historyUrl, conversationIdRef, refsMapRef, sendCountRef, hydrateMessages, bumpMetaTick, }: UseChatHistoryHydrationArgs): UseChatHistoryHydrationResult;
47
+ //# sourceMappingURL=use-chat-history-hydration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-chat-history-hydration.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/hooks/use-chat-history-hydration.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA+B,KAAK,gBAAgB,EAAE,MAAM,OAAO,CAAA;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAIzC,MAAM,WAAW,2BAA2B;IAC1C,sFAAsF;IACtF,MAAM,EAAE,OAAO,CAAA;IACf,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,UAAU,EAAE,MAAM,CAAA;IAClB,qEAAqE;IACrE,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAClD,uEAAuE;IACvE,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IAClE;sDACkD;IAClD,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACtC,4DAA4D;IAC5D,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAC7C,yEAAyE;IACzE,YAAY,EAAE,MAAM,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,6BAA6B;IAC5C,mDAAmD;IACnD,kBAAkB,EAAE,OAAO,CAAA;IAC3B;;oCAEgC;IAChC,cAAc,EAAE,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CAChD;AAED,wBAAgB,uBAAuB,CAAC,EACtC,MAAM,EACN,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,YAAY,GACb,EAAE,2BAA2B,GAAG,6BAA6B,CA+E7D"}
@@ -25,6 +25,7 @@ export declare function useChat({ useMock, debugMode, assistantName, assistantAv
25
25
  stopMessage: () => void;
26
26
  handleQuickAction: (actionText: string) => void;
27
27
  clearMessages: () => void;
28
+ hydrateMessages: (history: Message[]) => void;
28
29
  hasMessages: boolean;
29
30
  };
30
31
  //# sourceMappingURL=use-chat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-chat.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/hooks/use-chat.ts"],"names":[],"mappings":"AAGA,OAAO,EAAU,KAAK,QAAQ,EAAE,KAAK,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAC5E,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,wBAAwB,CAAA;AAI/B,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAErD,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,oFAAoF;IACpF,eAAe,CAAC,EAAE,OAAO,EAAE,CAAA;IAC3B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACjD;AAQD,wBAAgB,OAAO,CAAC,EACtB,OAAc,EACd,SAAiB,EACjB,aAAqB,EACrB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,gBAAgB,GACjB,GAAE,cAAmB;;;;;wBA4CV,MAAM,UACJ,oBAAoB,YAOlB;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;;oCAoXnB,MAAM;;;EAkCtB"}
1
+ {"version":3,"file":"use-chat.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/hooks/use-chat.ts"],"names":[],"mappings":"AAGA,OAAO,EAAU,KAAK,QAAQ,EAAE,KAAK,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAC5E,OAAO,KAAK,EACV,OAAO,EAGR,MAAM,wBAAwB,CAAA;AAI/B,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAErD,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,oFAAoF;IACpF,eAAe,CAAC,EAAE,OAAO,EAAE,CAAA;IAC3B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACjD;AAQD,wBAAgB,OAAO,CAAC,EACtB,OAAc,EACd,SAAiB,EACjB,aAAqB,EACrB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,gBAAgB,GACjB,GAAE,cAAmB;;;;;wBA4CV,MAAM,UACJ,oBAAoB,YAOlB;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;;oCAoXnB,MAAM;;+BAmByB,OAAO,EAAE;;EA2BxD"}
@@ -90,6 +90,10 @@ export interface ChatTurnMeta {
90
90
  /** Routing decision from the server's `decideRoute`. */
91
91
  routedComplexity: string | null;
92
92
  routedThinkingBudget: number | null;
93
+ /** Server-computed conversation trace id (`chat_conversations.id` for this
94
+ * thread), echoed in the leading metadata frame. Stable across turns of
95
+ * one thread — the correlation handle for transcripts/analytics. */
96
+ conversationId: string | null;
93
97
  }
94
98
  /**
95
99
  * Optional dependency-injection options for `useSseChatAdapter`.
@@ -1 +1 @@
1
- {"version":3,"file":"use-sse-chat-adapter.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/hooks/use-sse-chat-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-sse-chat-adapter.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/hooks/use-sse-chat-adapter.ts"],"names":[],"mappings":"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"}
@@ -267,7 +267,7 @@
267
267
 
268
268
 
269
269
 
270
- var _chunk5RXKOGH6cjs = require('../../chunk-5RXKOGH6.cjs');
270
+ var _chunkIN4IO7BLcjs = require('../../chunk-IN4IO7BL.cjs');
271
271
 
272
272
 
273
273
 
@@ -275,9 +275,9 @@ var _chunk5RXKOGH6cjs = require('../../chunk-5RXKOGH6.cjs');
275
275
 
276
276
 
277
277
 
278
- var _chunkA7IPON2Vcjs = require('../../chunk-A7IPON2V.cjs');
278
+ var _chunkBIKOJ4FHcjs = require('../../chunk-BIKOJ4FH.cjs');
279
279
  require('../../chunk-BGD345ZV.cjs');
280
- require('../../chunk-2B6773QM.cjs');
280
+ require('../../chunk-LILQJ3UZ.cjs');
281
281
  require('../../chunk-C5RS3QLV.cjs');
282
282
  require('../../chunk-BZFW3FOF.cjs');
283
283
  require('../../chunk-SSJNN5BS.cjs');
@@ -564,5 +564,5 @@ require('../../chunk-VRHGVLSL.cjs');
564
564
 
565
565
 
566
566
 
567
- exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = _chunk5RXKOGH6cjs.ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.APPROVAL_BLOCK_VARIANT = _chunk5RXKOGH6cjs.APPROVAL_BLOCK_VARIANT; exports.APPROVAL_STATUS = _chunk5RXKOGH6cjs.APPROVAL_STATUS; exports.ASSISTANT_TYPE = _chunk5RXKOGH6cjs.ASSISTANT_TYPE; exports.AUTHOR_TYPE = _chunk5RXKOGH6cjs.AUTHOR_TYPE; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = _chunk5RXKOGH6cjs.AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.AdminContentCard = _chunk5RXKOGH6cjs.AdminContentCard; exports.ApprovalBatchMessage = _chunk5RXKOGH6cjs.ApprovalBatchMessage; exports.ApprovalRequestMessage = _chunk5RXKOGH6cjs.ApprovalRequestMessage; exports.ApprovalStatusTag = _chunk5RXKOGH6cjs.ApprovalStatusTag; exports.ArchiveChatModal = _chunk5RXKOGH6cjs.ArchiveChatModal; exports.ArgRow = _chunk5RXKOGH6cjs.ArgRow; exports.BlockCard = _chunk5RXKOGH6cjs.BlockCard; exports.BlogCard = _chunk5RXKOGH6cjs.BlogCard; exports.BlogCardSkeleton = _chunk5RXKOGH6cjs.BlogCardSkeleton; exports.BlogImagePlaceholder = _chunk5RXKOGH6cjs.BlogImagePlaceholder; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.CHAT_ATTACHMENT_MIME_TYPES = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunk5RXKOGH6cjs.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = _chunk5RXKOGH6cjs.CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.CHAT_TYPE = _chunk5RXKOGH6cjs.CHAT_TYPE; exports.CHIP_ACTION_BUTTON_CLASS = _chunk5RXKOGH6cjs.CHIP_ACTION_BUTTON_CLASS; exports.COMPACT_CARD_ICON_SLOT = _chunk5RXKOGH6cjs.COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_IMAGE_SLOT = _chunk5RXKOGH6cjs.COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_META_ROW = _chunk5RXKOGH6cjs.COMPACT_CARD_META_ROW; exports.COMPACT_CARD_META_ROW_BOX = _chunk5RXKOGH6cjs.COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_OUTER = _chunk5RXKOGH6cjs.COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = _chunk5RXKOGH6cjs.COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_ROW_FILLER = _chunk5RXKOGH6cjs.COMPACT_CARD_ROW_FILLER; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = _chunk5RXKOGH6cjs.COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_OUTER = _chunk5RXKOGH6cjs.COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_SUBTITLE = _chunk5RXKOGH6cjs.COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = _chunk5RXKOGH6cjs.COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_TEXT_COL = _chunk5RXKOGH6cjs.COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE = _chunk5RXKOGH6cjs.COMPACT_CARD_TITLE; exports.COMPACT_CARD_TITLE_ROW = _chunk5RXKOGH6cjs.COMPACT_CARD_TITLE_ROW; exports.CONNECTION_STATUS = _chunk5RXKOGH6cjs.CONNECTION_STATUS; exports.CONTEXT_BACK_CLASS = _chunk5RXKOGH6cjs.CONTEXT_BACK_CLASS; exports.CONTEXT_ICON_CLASS = _chunk5RXKOGH6cjs.CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = _chunk5RXKOGH6cjs.CONTEXT_LABEL_CLASS; exports.CONTEXT_ROW_CLASS = _chunk5RXKOGH6cjs.CONTEXT_ROW_CLASS; exports.CONTEXT_STATE_CLASS = _chunk5RXKOGH6cjs.CONTEXT_STATE_CLASS; exports.CUSTOM_ITEM_ID = _chunk5RXKOGH6cjs.CUSTOM_ITEM_ID; exports.CampaignCardAdmin = _chunk5RXKOGH6cjs.CampaignCardAdmin; exports.CampaignCardAdminSkeleton = _chunk5RXKOGH6cjs.CampaignCardAdminSkeleton; exports.CaseStudyCard = _chunk5RXKOGH6cjs.CaseStudyCard; exports.CaseStudyCardSkeleton = _chunk5RXKOGH6cjs.CaseStudyCardSkeleton; exports.ChatArchivePage = _chunk5RXKOGH6cjs.ChatArchivePage; exports.ChatAttachmentAddButton = _chunk5RXKOGH6cjs.ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = _chunk5RXKOGH6cjs.ChatAttachmentChipStrip; exports.ChatCardLoader = _chunk5RXKOGH6cjs.ChatCardLoader; exports.ChatComposer = _chunk5RXKOGH6cjs.ChatComposer; exports.ChatComposerPlusMenu = _chunk5RXKOGH6cjs.ChatComposerPlusMenu; exports.ChatContainer = _chunk5RXKOGH6cjs.ChatContainer; exports.ChatContent = _chunk5RXKOGH6cjs.ChatContent; exports.ChatContextChipStrip = _chunk5RXKOGH6cjs.ChatContextChipStrip; exports.ChatContextMemoryBar = _chunk5RXKOGH6cjs.ChatContextMemoryBar; exports.ChatContextPicker = _chunk5RXKOGH6cjs.ChatContextPicker; exports.ChatDialogModals = _chunk5RXKOGH6cjs.ChatDialogModals; exports.ChatFooter = _chunk5RXKOGH6cjs.ChatFooter; exports.ChatHeader = _chunk5RXKOGH6cjs.ChatHeader; exports.ChatHeaderIconButton = _chunk5RXKOGH6cjs.ChatHeaderIconButton; exports.ChatHeaderSearchField = _chunk5RXKOGH6cjs.ChatHeaderSearchField; exports.ChatIdentityProvider = _chunk5RXKOGH6cjs.ChatIdentityProvider; exports.ChatInput = _chunk5RXKOGH6cjs.ChatInput; exports.ChatMessageEnhanced = _chunk5RXKOGH6cjs.MemoizedChatMessageEnhanced; exports.ChatMessageList = _chunk5RXKOGH6cjs.ChatMessageList; exports.ChatMessageListSkeleton = _chunk5RXKOGH6cjs.ChatMessageListSkeleton; exports.ChatMessageRow = _chunk5RXKOGH6cjs.ChatMessageRow; exports.ChatMessageRowSkeleton = _chunk5RXKOGH6cjs.ChatMessageRowSkeleton; exports.ChatMessageSkeleton = _chunk5RXKOGH6cjs.ChatMessageSkeleton; exports.ChatPanelHeader = _chunk5RXKOGH6cjs.ChatPanelHeader; exports.ChatSidebar = _chunk5RXKOGH6cjs.ChatSidebar; exports.ChatTicketItem = _chunk5RXKOGH6cjs.ChatTicketItem; exports.ChatTicketList = _chunk5RXKOGH6cjs.ChatTicketList; exports.ChatTypingIndicator = _chunk5RXKOGH6cjs.ChatTypingIndicator; exports.ChatVideoEntityCard = _chunk5RXKOGH6cjs.ChatVideoEntityCard; exports.CommandBlock = _chunk5RXKOGH6cjs.CommandBlock; exports.ContextCompactionDisplay = _chunk5RXKOGH6cjs.ContextCompactionDisplay; exports.ContextErrorBoundary = _chunk5RXKOGH6cjs.ContextErrorBoundary; exports.ContextItemsList = _chunk5RXKOGH6cjs.ContextItemsList; exports.ContextItemsSkeleton = _chunk5RXKOGH6cjs.ContextItemsSkeleton; exports.ContextMenuRow = _chunk5RXKOGH6cjs.ContextMenuRow; exports.CustomerInterviewCard = _chunk5RXKOGH6cjs.CustomerInterviewCard; exports.CustomerInterviewCardSkeleton = _chunk5RXKOGH6cjs.CustomerInterviewCardSkeleton; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = _chunk5RXKOGH6cjs.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.DataRoomDocCard = _chunk5RXKOGH6cjs.DataRoomDocCard; exports.DataRoomDocCardSkeleton = _chunk5RXKOGH6cjs.DataRoomDocCardSkeleton; exports.DialogListItem = _chunk5RXKOGH6cjs.DialogListItem; exports.EMPTY_AUTHOR_PLACEHOLDER = _chunk5RXKOGH6cjs.EMPTY_AUTHOR_PLACEHOLDER; exports.EmbeddableChat = _chunk5RXKOGH6cjs.EmbeddableChat; exports.EntityAuthorCard = _chunk5RXKOGH6cjs.EntityAuthorCard; exports.EntityMetadataAuthorCell = _chunk5RXKOGH6cjs.EntityMetadataAuthorCell; exports.EntityMetadataValueCell = _chunk5RXKOGH6cjs.EntityMetadataValueCell; exports.EntityPortraitCard = _chunk5RXKOGH6cjs.EntityPortraitCard; exports.ErrorMessageDisplay = _chunk5RXKOGH6cjs.ErrorMessageDisplay; exports.ExpandChevron = _chunk5RXKOGH6cjs.ExpandChevron; exports.GenericEntityCard = _chunk5RXKOGH6cjs.GenericEntityCard; exports.GenericEntityCardSkeleton = _chunk5RXKOGH6cjs.GenericEntityCardSkeleton; exports.GitHubActivityCard = _chunk5RXKOGH6cjs.GitHubActivityCard; exports.GitHubActivityCardSkeleton = _chunk5RXKOGH6cjs.GitHubActivityCardSkeleton; exports.GuideModeBanner = _chunk5RXKOGH6cjs.GuideModeBanner; exports.GuideWelcome = _chunk5RXKOGH6cjs.GuideWelcome; exports.HubspotTicketCard = _chunk5RXKOGH6cjs.HubspotTicketCard; exports.HubspotTicketCardSkeleton = _chunk5RXKOGH6cjs.HubspotTicketCardSkeleton; exports.ICON_ALIASES = _chunk5RXKOGH6cjs.ICON_ALIASES; exports.ICON_OPTIONS = _chunk5RXKOGH6cjs.ICON_OPTIONS; exports.ICON_REGISTRY = _chunk5RXKOGH6cjs.ICON_REGISTRY; exports.InvestorUpdateCard = _chunk5RXKOGH6cjs.InvestorUpdateCard; exports.InvestorUpdateCardSkeleton = _chunk5RXKOGH6cjs.InvestorUpdateCardSkeleton; exports.MESSAGE_ROLE = _chunk5RXKOGH6cjs.MESSAGE_ROLE; exports.MESSAGE_TYPE = _chunk5RXKOGH6cjs.MESSAGE_TYPE; exports.MessageSegmentAccumulator = _chunk5RXKOGH6cjs.MessageSegmentAccumulator; exports.MingoChatHistory = _chunk5RXKOGH6cjs.MingoChatHistory; exports.MingoChatHistorySkeleton = _chunk5RXKOGH6cjs.MingoChatHistorySkeleton; exports.MingoHistoryRail = _chunk5RXKOGH6cjs.MingoHistoryRail; exports.MingoOnboardingCard = _chunk5RXKOGH6cjs.MingoOnboardingCard; exports.MingoOnboardingCardSkeleton = _chunk5RXKOGH6cjs.MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = _chunk5RXKOGH6cjs.MingoOnboardingListSkeleton; exports.MingoWelcome = _chunk5RXKOGH6cjs.MingoWelcome; exports.ModelDisplay = _chunk5RXKOGH6cjs.ModelDisplay; exports.ModelDisplaySkeleton = _chunk5RXKOGH6cjs.ModelDisplaySkeleton; exports.MspOrganizationCard = _chunk5RXKOGH6cjs.MspOrganizationCard; exports.MspOrganizationCardSkeleton = _chunk5RXKOGH6cjs.MspOrganizationCardSkeleton; exports.NETWORK_CONFIG = _chunk5RXKOGH6cjs.NETWORK_CONFIG; exports.NEW_TAB_FEATURES = _chunk5RXKOGH6cjs.NEW_TAB_FEATURES; exports.NavLinkAnchorViaRuntime = _chunk5RXKOGH6cjs.NavLinkAnchorViaRuntime; exports.OWNER_TYPE = _chunk5RXKOGH6cjs.OWNER_TYPE; exports.OnboardingGuideCard = _chunk5RXKOGH6cjs.OnboardingGuideCard; exports.OnboardingGuideCardSkeleton = _chunk5RXKOGH6cjs.OnboardingGuideCardSkeleton; exports.ProductReleaseCard = _chunk5RXKOGH6cjs.ProductReleaseCard; exports.ProductReleaseCardSkeleton = _chunk5RXKOGH6cjs.ProductReleaseCardSkeleton; exports.ProgramCard = _chunk5RXKOGH6cjs.ProgramCard; exports.ProgramCardSkeleton = _chunk5RXKOGH6cjs.ProgramCardSkeleton; exports.QuickActionChipButton = _chunk5RXKOGH6cjs.QuickActionChipButton; exports.QuickActionChipFromData = _chunk5RXKOGH6cjs.QuickActionChipFromData; exports.QuickActionChipSkeleton = _chunk5RXKOGH6cjs.QuickActionChipSkeleton; exports.QuickActionMarquee = _chunk5RXKOGH6cjs.QuickActionMarquee; exports.QuickActionWall = _chunk5RXKOGH6cjs.QuickActionWall; exports.RenameChatModal = _chunk5RXKOGH6cjs.RenameChatModal; exports.ResultBlock = _chunk5RXKOGH6cjs.ResultBlock; exports.RoadmapCard = _chunk5RXKOGH6cjs.RoadmapCard; exports.RoadmapCardSkeleton = _chunk5RXKOGH6cjs.RoadmapCardSkeleton; exports.RoadmapVoteButton = _chunk5RXKOGH6cjs.RoadmapVoteButton; exports.SCROLL_ANCHOR = _chunk5RXKOGH6cjs.SCROLL_ANCHOR; exports.SCROLL_ANCHOR_WIRE_KEY = _chunk5RXKOGH6cjs.SCROLL_ANCHOR_WIRE_KEY; exports.SOURCE_ICON_NAMES = _chunk5RXKOGH6cjs.SOURCE_ICON_NAMES; exports.SOURCE_LABELS_BY_TABLE = _chunk5RXKOGH6cjs.SOURCE_LABELS_BY_TABLE; exports.SYNTHETIC_REALTIME_ID_PREFIXES = _chunk5RXKOGH6cjs.SYNTHETIC_REALTIME_ID_PREFIXES; exports.SlackMessageCard = _chunk5RXKOGH6cjs.SlackMessageCard; exports.SlackMessageCardSkeleton = _chunk5RXKOGH6cjs.SlackMessageCardSkeleton; exports.SlashCommandSuggestions = _chunk5RXKOGH6cjs.SlashCommandSuggestions; exports.SourceActionButton = _chunk5RXKOGH6cjs.SourceActionButton; exports.TaskTypeIcon = _chunk5RXKOGH6cjs.TaskTypeIcon; exports.ThinkingDisplay = _chunk5RXKOGH6cjs.ThinkingDisplay; exports.ToolExecutionDisplay = _chunk5RXKOGH6cjs.ToolExecutionDisplay; exports.UnarchiveChatModal = _chunk5RXKOGH6cjs.UnarchiveChatModal; exports.WALL_SKELETON_LABEL_CH = _chunk5RXKOGH6cjs.WALL_SKELETON_LABEL_CH; exports.WhatIShippedCard = _chunk5RXKOGH6cjs.WhatIShippedCard; exports.WhatIShippedCardSkeleton = _chunk5RXKOGH6cjs.WhatIShippedCardSkeleton; exports.accentFromIdentityIcon = _chunk5RXKOGH6cjs.accentFromIdentityIcon; exports.appendToTrailingAssistant = _chunk5RXKOGH6cjs.appendToTrailingAssistant; exports.applyProxyAuth = _chunkA7IPON2Vcjs.applyProxyAuth; exports.applyToolExecutionToMessages = _chunk5RXKOGH6cjs.applyToolExecutionToMessages; exports.buildAnchorProps = _chunk5RXKOGH6cjs.buildAnchorProps; exports.buildAutoContinuationDirective = _chunk5RXKOGH6cjs.buildAutoContinuationDirective; exports.buildChatAttachmentViewUrl = _chunk5RXKOGH6cjs.buildChatAttachmentViewUrl; exports.buildChatRefKey = _chunk5RXKOGH6cjs.buildChatRefKey; exports.buildDiscussAddendum = _chunk5RXKOGH6cjs.buildDiscussAddendum; exports.buildNatsWsUrl = _chunk5RXKOGH6cjs.buildNatsWsUrl; exports.buildProductReleaseCardProps = _chunk5RXKOGH6cjs.buildProductReleaseCardProps; exports.buildStreamFrames = _chunk5RXKOGH6cjs.buildStreamFrames; exports.chatAuthedFetch = _chunkA7IPON2Vcjs.embedAuthedFetch; exports.chatChipClass = _chunk5RXKOGH6cjs.chatChipClass; exports.clearChatProxyAuth = _chunkA7IPON2Vcjs.clearEmbedProxyAuth; exports.clickupTaskUrl = _chunk5RXKOGH6cjs.clickupTaskUrl; exports.computeHistoryPrepend = _chunk5RXKOGH6cjs.computeHistoryPrepend; exports.computeIsNewTab = _chunk5RXKOGH6cjs.computeIsNewTab; exports.createMessageSegmentAccumulator = _chunk5RXKOGH6cjs.createMessageSegmentAccumulator; exports.decideNewTab = _chunk5RXKOGH6cjs.decideNewTab; exports.defaultBuildProductReleaseCardProps = _chunk5RXKOGH6cjs.defaultBuildProductReleaseCardProps; exports.defaultTableIdForDocumentType = _chunk5RXKOGH6cjs.defaultTableIdForDocumentType; exports.escapeMarkdownInline = _chunk5RXKOGH6cjs.escapeMarkdownInline; exports.executeNavigation = _chunk5RXKOGH6cjs.executeNavigation; exports.executeNavigationImperative = _chunk5RXKOGH6cjs.executeNavigationImperative; exports.extractEntityIdFilter = _chunk5RXKOGH6cjs.extractEntityIdFilter; exports.extractErrorMessages = _chunk5RXKOGH6cjs.extractErrorMessages; exports.extractIncompleteMessageState = _chunk5RXKOGH6cjs.extractIncompleteMessageState; exports.extractTextFromChunk = _chunk5RXKOGH6cjs.extractTextFromChunk; exports.fetchEmptyStateConfig = _chunk5RXKOGH6cjs.fetchEmptyStateConfig; exports.fetchSlashCommands = _chunk5RXKOGH6cjs.fetchSlashCommands; exports.flattenAssistantContent = _chunk5RXKOGH6cjs.flattenAssistantContent; exports.flattenMessagePagesChronological = _chunk5RXKOGH6cjs.flattenMessagePagesChronological; exports.formatChatAttachmentMarkdownForBubble = _chunk5RXKOGH6cjs.formatChatAttachmentMarkdownForBubble; exports.formatInvestorUpdatePeriod = _chunk5RXKOGH6cjs.formatInvestorUpdatePeriod; exports.formatSingularLookupInvocation = _chunk5RXKOGH6cjs.formatSingularLookupInvocation; exports.getAgentAccent = _chunk5RXKOGH6cjs.getAgentAccent; exports.getChatProxyAuth = _chunkA7IPON2Vcjs.getEmbedProxyAuth; exports.getCommandText = _chunk5RXKOGH6cjs.getCommandText; exports.getDynamicIcon = _chunk5RXKOGH6cjs.getDynamicIcon; exports.getIconComponent = _chunk5RXKOGH6cjs.getIconComponent; exports.getPersistedProxyEmail = _chunkA7IPON2Vcjs.getPersistedProxyEmail; exports.getSourceIconName = _chunk5RXKOGH6cjs.getSourceIconName; exports.getSourceLabel = _chunk5RXKOGH6cjs.getSourceLabel; exports.getStatusColorScheme = _chunk5RXKOGH6cjs.getStatusColorScheme; exports.getTaskTypeLabel = _chunk5RXKOGH6cjs.getTaskTypeLabel; exports.handleChatNavClick = _chunk5RXKOGH6cjs.handleChatNavClick; exports.hideOnError = _chunk5RXKOGH6cjs.hideOnError; exports.historicalToUnified = _chunk5RXKOGH6cjs.historicalToUnified; exports.interleave = _chunk5RXKOGH6cjs.interleave; exports.isControlChunk = _chunk5RXKOGH6cjs.isControlChunk; exports.isCrossOriginUrl = _chunk5RXKOGH6cjs.isCrossOriginUrl; exports.isErrorChunk = _chunk5RXKOGH6cjs.isErrorChunk; exports.isHistoricalUserTurn = _chunk5RXKOGH6cjs.isHistoricalUserTurn; exports.isMetadataChunk = _chunk5RXKOGH6cjs.isMetadataChunk; exports.isModifierClick = _chunk5RXKOGH6cjs.isModifierClick; exports.isQuickActionIconSpec = _chunk5RXKOGH6cjs.isQuickActionIconSpec; exports.isStructuredContent = _chunk5RXKOGH6cjs.isStructuredContent; exports.mapProcessedToUnified = _chunk5RXKOGH6cjs.mapProcessedToUnified; exports.maxPersistedStreamSeq = _chunk5RXKOGH6cjs.maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = _chunk5RXKOGH6cjs.mergeHistoryWithRealtime; exports.newTabAnchorAttrs = _chunk5RXKOGH6cjs.newTabAnchorAttrs; exports.normalizeContent = _chunk5RXKOGH6cjs.normalizeContent; exports.normalizeHistoricalMessageData = _chunk5RXKOGH6cjs.normalizeHistoricalMessageData; exports.normalizeIconKey = _chunk5RXKOGH6cjs.normalizeIconKey; exports.parseChunkToAction = _chunk5RXKOGH6cjs.parseChunkToAction; exports.parseScrollAnchor = _chunk5RXKOGH6cjs.parseScrollAnchor; exports.parseWireCommandOverride = _chunk5RXKOGH6cjs.parseWireCommandOverride; exports.processHistoricalMessages = _chunk5RXKOGH6cjs.processHistoricalMessages; exports.processHistoricalMessagesWithErrors = _chunk5RXKOGH6cjs.processHistoricalMessagesWithErrors; exports.programItemToStripProfile = _chunk5RXKOGH6cjs.programItemToStripProfile; exports.remarkCardLinks = _chunk5RXKOGH6cjs.remarkCardLinks; exports.remarkMentionChips = _chunk5RXKOGH6cjs.remarkMentionChips; exports.renderChatInlineEntityCard = _chunk5RXKOGH6cjs.renderChatInlineEntityCard; exports.renderQuickActionIcon = _chunk5RXKOGH6cjs.renderQuickActionIcon; exports.resolveExternalNavigation = _chunk5RXKOGH6cjs.resolveExternalNavigation; exports.resolveIcon = _chunk5RXKOGH6cjs.resolveIcon; exports.resolveSourceIcon = _chunk5RXKOGH6cjs.resolveSourceIcon; exports.resolveSourceRowCTA = _chunk5RXKOGH6cjs.resolveSourceRowCTA; exports.safeHref = _chunk5RXKOGH6cjs.safeHref; exports.sanitizeTitleForChat = _chunk5RXKOGH6cjs.sanitizeTitleForChat; exports.setChatProxyAuth = _chunkA7IPON2Vcjs.setEmbedProxyAuth; exports.stripChatAttachmentMarkdown = _chunk5RXKOGH6cjs.stripChatAttachmentMarkdown; exports.stripSameOriginToPath = _chunk5RXKOGH6cjs.stripSameOriginToPath; exports.transformEventToProgram = _chunk5RXKOGH6cjs.transformEventToProgram; exports.transformPodcastToProgram = _chunk5RXKOGH6cjs.transformPodcastToProgram; exports.transformWebinarToProgram = _chunk5RXKOGH6cjs.transformWebinarToProgram; exports.upsertTrailingCompaction = _chunk5RXKOGH6cjs.upsertTrailingCompaction; exports.useChat = _chunk5RXKOGH6cjs.useChat; exports.useChatAttachmentImageGallery = _chunk5RXKOGH6cjs.useChatAttachmentImageGallery; exports.useChatAttachments = _chunk5RXKOGH6cjs.useChatAttachments; exports.useChatCardItem = _chunk5RXKOGH6cjs.useChatCardItem; exports.useChatIdentity = _chunk5RXKOGH6cjs.useChatIdentity; exports.useChunkCatchup = _chunk5RXKOGH6cjs.useChunkCatchup; exports.useCloseOnNavigation = _chunk5RXKOGH6cjs.useCloseOnNavigation; exports.useCollapsible = _chunk5RXKOGH6cjs.useCollapsible; exports.useCoverImageFallback = _chunk5RXKOGH6cjs.useCoverImageFallback; exports.useEmbeddedChat = _chunk5RXKOGH6cjs.useSseChatAdapter; exports.useEmptyStateConfig = _chunk5RXKOGH6cjs.useEmptyStateConfig; exports.useJetStreamDialogSubscription = _chunk5RXKOGH6cjs.useJetStreamDialogSubscription; exports.useNatsChatAdapter = _chunk5RXKOGH6cjs.useNatsChatAdapter; exports.useNatsDialogSubscription = _chunk5RXKOGH6cjs.useNatsDialogSubscription; exports.useProxiedImageUrl = _chunk5RXKOGH6cjs.useProxiedImageUrl; exports.useRealtimeChunkProcessor = _chunk5RXKOGH6cjs.useRealtimeChunkProcessor; exports.useSSE = _chunk5RXKOGH6cjs.useSSE; exports.useScriptedStream = _chunk5RXKOGH6cjs.useScriptedStream; exports.useSlashCommandRegistry = _chunk5RXKOGH6cjs.useSlashCommandRegistry; exports.useSlashCommands = _chunk5RXKOGH6cjs.useSlashCommands; exports.useSseChatAdapter = _chunk5RXKOGH6cjs.useSseChatAdapter; exports.useUnifiedChat = _chunk5RXKOGH6cjs.useUnifiedChat;
567
+ exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = _chunkIN4IO7BLcjs.ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.APPROVAL_BLOCK_VARIANT = _chunkIN4IO7BLcjs.APPROVAL_BLOCK_VARIANT; exports.APPROVAL_STATUS = _chunkIN4IO7BLcjs.APPROVAL_STATUS; exports.ASSISTANT_TYPE = _chunkIN4IO7BLcjs.ASSISTANT_TYPE; exports.AUTHOR_TYPE = _chunkIN4IO7BLcjs.AUTHOR_TYPE; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = _chunkIN4IO7BLcjs.AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.AdminContentCard = _chunkIN4IO7BLcjs.AdminContentCard; exports.ApprovalBatchMessage = _chunkIN4IO7BLcjs.ApprovalBatchMessage; exports.ApprovalRequestMessage = _chunkIN4IO7BLcjs.ApprovalRequestMessage; exports.ApprovalStatusTag = _chunkIN4IO7BLcjs.ApprovalStatusTag; exports.ArchiveChatModal = _chunkIN4IO7BLcjs.ArchiveChatModal; exports.ArgRow = _chunkIN4IO7BLcjs.ArgRow; exports.BlockCard = _chunkIN4IO7BLcjs.BlockCard; exports.BlogCard = _chunkIN4IO7BLcjs.BlogCard; exports.BlogCardSkeleton = _chunkIN4IO7BLcjs.BlogCardSkeleton; exports.BlogImagePlaceholder = _chunkIN4IO7BLcjs.BlogImagePlaceholder; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.CHAT_ATTACHMENT_MIME_TYPES = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunkIN4IO7BLcjs.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = _chunkIN4IO7BLcjs.CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.CHAT_TYPE = _chunkIN4IO7BLcjs.CHAT_TYPE; exports.CHIP_ACTION_BUTTON_CLASS = _chunkIN4IO7BLcjs.CHIP_ACTION_BUTTON_CLASS; exports.COMPACT_CARD_ICON_SLOT = _chunkIN4IO7BLcjs.COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_IMAGE_SLOT = _chunkIN4IO7BLcjs.COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_META_ROW = _chunkIN4IO7BLcjs.COMPACT_CARD_META_ROW; exports.COMPACT_CARD_META_ROW_BOX = _chunkIN4IO7BLcjs.COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_OUTER = _chunkIN4IO7BLcjs.COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = _chunkIN4IO7BLcjs.COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_ROW_FILLER = _chunkIN4IO7BLcjs.COMPACT_CARD_ROW_FILLER; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = _chunkIN4IO7BLcjs.COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_OUTER = _chunkIN4IO7BLcjs.COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_SUBTITLE = _chunkIN4IO7BLcjs.COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = _chunkIN4IO7BLcjs.COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_TEXT_COL = _chunkIN4IO7BLcjs.COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE = _chunkIN4IO7BLcjs.COMPACT_CARD_TITLE; exports.COMPACT_CARD_TITLE_ROW = _chunkIN4IO7BLcjs.COMPACT_CARD_TITLE_ROW; exports.CONNECTION_STATUS = _chunkIN4IO7BLcjs.CONNECTION_STATUS; exports.CONTEXT_BACK_CLASS = _chunkIN4IO7BLcjs.CONTEXT_BACK_CLASS; exports.CONTEXT_ICON_CLASS = _chunkIN4IO7BLcjs.CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = _chunkIN4IO7BLcjs.CONTEXT_LABEL_CLASS; exports.CONTEXT_ROW_CLASS = _chunkIN4IO7BLcjs.CONTEXT_ROW_CLASS; exports.CONTEXT_STATE_CLASS = _chunkIN4IO7BLcjs.CONTEXT_STATE_CLASS; exports.CUSTOM_ITEM_ID = _chunkIN4IO7BLcjs.CUSTOM_ITEM_ID; exports.CampaignCardAdmin = _chunkIN4IO7BLcjs.CampaignCardAdmin; exports.CampaignCardAdminSkeleton = _chunkIN4IO7BLcjs.CampaignCardAdminSkeleton; exports.CaseStudyCard = _chunkIN4IO7BLcjs.CaseStudyCard; exports.CaseStudyCardSkeleton = _chunkIN4IO7BLcjs.CaseStudyCardSkeleton; exports.ChatArchivePage = _chunkIN4IO7BLcjs.ChatArchivePage; exports.ChatAttachmentAddButton = _chunkIN4IO7BLcjs.ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = _chunkIN4IO7BLcjs.ChatAttachmentChipStrip; exports.ChatCardLoader = _chunkIN4IO7BLcjs.ChatCardLoader; exports.ChatComposer = _chunkIN4IO7BLcjs.ChatComposer; exports.ChatComposerPlusMenu = _chunkIN4IO7BLcjs.ChatComposerPlusMenu; exports.ChatContainer = _chunkIN4IO7BLcjs.ChatContainer; exports.ChatContent = _chunkIN4IO7BLcjs.ChatContent; exports.ChatContextChipStrip = _chunkIN4IO7BLcjs.ChatContextChipStrip; exports.ChatContextMemoryBar = _chunkIN4IO7BLcjs.ChatContextMemoryBar; exports.ChatContextPicker = _chunkIN4IO7BLcjs.ChatContextPicker; exports.ChatDialogModals = _chunkIN4IO7BLcjs.ChatDialogModals; exports.ChatFooter = _chunkIN4IO7BLcjs.ChatFooter; exports.ChatHeader = _chunkIN4IO7BLcjs.ChatHeader; exports.ChatHeaderIconButton = _chunkIN4IO7BLcjs.ChatHeaderIconButton; exports.ChatHeaderSearchField = _chunkIN4IO7BLcjs.ChatHeaderSearchField; exports.ChatIdentityProvider = _chunkIN4IO7BLcjs.ChatIdentityProvider; exports.ChatInput = _chunkIN4IO7BLcjs.ChatInput; exports.ChatMessageEnhanced = _chunkIN4IO7BLcjs.MemoizedChatMessageEnhanced; exports.ChatMessageList = _chunkIN4IO7BLcjs.ChatMessageList; exports.ChatMessageListSkeleton = _chunkIN4IO7BLcjs.ChatMessageListSkeleton; exports.ChatMessageRow = _chunkIN4IO7BLcjs.ChatMessageRow; exports.ChatMessageRowSkeleton = _chunkIN4IO7BLcjs.ChatMessageRowSkeleton; exports.ChatMessageSkeleton = _chunkIN4IO7BLcjs.ChatMessageSkeleton; exports.ChatPanelHeader = _chunkIN4IO7BLcjs.ChatPanelHeader; exports.ChatSidebar = _chunkIN4IO7BLcjs.ChatSidebar; exports.ChatTicketItem = _chunkIN4IO7BLcjs.ChatTicketItem; exports.ChatTicketList = _chunkIN4IO7BLcjs.ChatTicketList; exports.ChatTypingIndicator = _chunkIN4IO7BLcjs.ChatTypingIndicator; exports.ChatVideoEntityCard = _chunkIN4IO7BLcjs.ChatVideoEntityCard; exports.CommandBlock = _chunkIN4IO7BLcjs.CommandBlock; exports.ContextCompactionDisplay = _chunkIN4IO7BLcjs.ContextCompactionDisplay; exports.ContextErrorBoundary = _chunkIN4IO7BLcjs.ContextErrorBoundary; exports.ContextItemsList = _chunkIN4IO7BLcjs.ContextItemsList; exports.ContextItemsSkeleton = _chunkIN4IO7BLcjs.ContextItemsSkeleton; exports.ContextMenuRow = _chunkIN4IO7BLcjs.ContextMenuRow; exports.CustomerInterviewCard = _chunkIN4IO7BLcjs.CustomerInterviewCard; exports.CustomerInterviewCardSkeleton = _chunkIN4IO7BLcjs.CustomerInterviewCardSkeleton; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = _chunkIN4IO7BLcjs.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.DataRoomDocCard = _chunkIN4IO7BLcjs.DataRoomDocCard; exports.DataRoomDocCardSkeleton = _chunkIN4IO7BLcjs.DataRoomDocCardSkeleton; exports.DialogListItem = _chunkIN4IO7BLcjs.DialogListItem; exports.EMPTY_AUTHOR_PLACEHOLDER = _chunkIN4IO7BLcjs.EMPTY_AUTHOR_PLACEHOLDER; exports.EmbeddableChat = _chunkIN4IO7BLcjs.EmbeddableChat; exports.EntityAuthorCard = _chunkIN4IO7BLcjs.EntityAuthorCard; exports.EntityMetadataAuthorCell = _chunkIN4IO7BLcjs.EntityMetadataAuthorCell; exports.EntityMetadataValueCell = _chunkIN4IO7BLcjs.EntityMetadataValueCell; exports.EntityPortraitCard = _chunkIN4IO7BLcjs.EntityPortraitCard; exports.ErrorMessageDisplay = _chunkIN4IO7BLcjs.ErrorMessageDisplay; exports.ExpandChevron = _chunkIN4IO7BLcjs.ExpandChevron; exports.GenericEntityCard = _chunkIN4IO7BLcjs.GenericEntityCard; exports.GenericEntityCardSkeleton = _chunkIN4IO7BLcjs.GenericEntityCardSkeleton; exports.GitHubActivityCard = _chunkIN4IO7BLcjs.GitHubActivityCard; exports.GitHubActivityCardSkeleton = _chunkIN4IO7BLcjs.GitHubActivityCardSkeleton; exports.GuideModeBanner = _chunkIN4IO7BLcjs.GuideModeBanner; exports.GuideWelcome = _chunkIN4IO7BLcjs.GuideWelcome; exports.HubspotTicketCard = _chunkIN4IO7BLcjs.HubspotTicketCard; exports.HubspotTicketCardSkeleton = _chunkIN4IO7BLcjs.HubspotTicketCardSkeleton; exports.ICON_ALIASES = _chunkIN4IO7BLcjs.ICON_ALIASES; exports.ICON_OPTIONS = _chunkIN4IO7BLcjs.ICON_OPTIONS; exports.ICON_REGISTRY = _chunkIN4IO7BLcjs.ICON_REGISTRY; exports.InvestorUpdateCard = _chunkIN4IO7BLcjs.InvestorUpdateCard; exports.InvestorUpdateCardSkeleton = _chunkIN4IO7BLcjs.InvestorUpdateCardSkeleton; exports.MESSAGE_ROLE = _chunkIN4IO7BLcjs.MESSAGE_ROLE; exports.MESSAGE_TYPE = _chunkIN4IO7BLcjs.MESSAGE_TYPE; exports.MessageSegmentAccumulator = _chunkIN4IO7BLcjs.MessageSegmentAccumulator; exports.MingoChatHistory = _chunkIN4IO7BLcjs.MingoChatHistory; exports.MingoChatHistorySkeleton = _chunkIN4IO7BLcjs.MingoChatHistorySkeleton; exports.MingoHistoryRail = _chunkIN4IO7BLcjs.MingoHistoryRail; exports.MingoOnboardingCard = _chunkIN4IO7BLcjs.MingoOnboardingCard; exports.MingoOnboardingCardSkeleton = _chunkIN4IO7BLcjs.MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = _chunkIN4IO7BLcjs.MingoOnboardingListSkeleton; exports.MingoWelcome = _chunkIN4IO7BLcjs.MingoWelcome; exports.ModelDisplay = _chunkIN4IO7BLcjs.ModelDisplay; exports.ModelDisplaySkeleton = _chunkIN4IO7BLcjs.ModelDisplaySkeleton; exports.MspOrganizationCard = _chunkIN4IO7BLcjs.MspOrganizationCard; exports.MspOrganizationCardSkeleton = _chunkIN4IO7BLcjs.MspOrganizationCardSkeleton; exports.NETWORK_CONFIG = _chunkIN4IO7BLcjs.NETWORK_CONFIG; exports.NEW_TAB_FEATURES = _chunkIN4IO7BLcjs.NEW_TAB_FEATURES; exports.NavLinkAnchorViaRuntime = _chunkIN4IO7BLcjs.NavLinkAnchorViaRuntime; exports.OWNER_TYPE = _chunkIN4IO7BLcjs.OWNER_TYPE; exports.OnboardingGuideCard = _chunkIN4IO7BLcjs.OnboardingGuideCard; exports.OnboardingGuideCardSkeleton = _chunkIN4IO7BLcjs.OnboardingGuideCardSkeleton; exports.ProductReleaseCard = _chunkIN4IO7BLcjs.ProductReleaseCard; exports.ProductReleaseCardSkeleton = _chunkIN4IO7BLcjs.ProductReleaseCardSkeleton; exports.ProgramCard = _chunkIN4IO7BLcjs.ProgramCard; exports.ProgramCardSkeleton = _chunkIN4IO7BLcjs.ProgramCardSkeleton; exports.QuickActionChipButton = _chunkIN4IO7BLcjs.QuickActionChipButton; exports.QuickActionChipFromData = _chunkIN4IO7BLcjs.QuickActionChipFromData; exports.QuickActionChipSkeleton = _chunkIN4IO7BLcjs.QuickActionChipSkeleton; exports.QuickActionMarquee = _chunkIN4IO7BLcjs.QuickActionMarquee; exports.QuickActionWall = _chunkIN4IO7BLcjs.QuickActionWall; exports.RenameChatModal = _chunkIN4IO7BLcjs.RenameChatModal; exports.ResultBlock = _chunkIN4IO7BLcjs.ResultBlock; exports.RoadmapCard = _chunkIN4IO7BLcjs.RoadmapCard; exports.RoadmapCardSkeleton = _chunkIN4IO7BLcjs.RoadmapCardSkeleton; exports.RoadmapVoteButton = _chunkIN4IO7BLcjs.RoadmapVoteButton; exports.SCROLL_ANCHOR = _chunkIN4IO7BLcjs.SCROLL_ANCHOR; exports.SCROLL_ANCHOR_WIRE_KEY = _chunkIN4IO7BLcjs.SCROLL_ANCHOR_WIRE_KEY; exports.SOURCE_ICON_NAMES = _chunkIN4IO7BLcjs.SOURCE_ICON_NAMES; exports.SOURCE_LABELS_BY_TABLE = _chunkIN4IO7BLcjs.SOURCE_LABELS_BY_TABLE; exports.SYNTHETIC_REALTIME_ID_PREFIXES = _chunkIN4IO7BLcjs.SYNTHETIC_REALTIME_ID_PREFIXES; exports.SlackMessageCard = _chunkIN4IO7BLcjs.SlackMessageCard; exports.SlackMessageCardSkeleton = _chunkIN4IO7BLcjs.SlackMessageCardSkeleton; exports.SlashCommandSuggestions = _chunkIN4IO7BLcjs.SlashCommandSuggestions; exports.SourceActionButton = _chunkIN4IO7BLcjs.SourceActionButton; exports.TaskTypeIcon = _chunkIN4IO7BLcjs.TaskTypeIcon; exports.ThinkingDisplay = _chunkIN4IO7BLcjs.ThinkingDisplay; exports.ToolExecutionDisplay = _chunkIN4IO7BLcjs.ToolExecutionDisplay; exports.UnarchiveChatModal = _chunkIN4IO7BLcjs.UnarchiveChatModal; exports.WALL_SKELETON_LABEL_CH = _chunkIN4IO7BLcjs.WALL_SKELETON_LABEL_CH; exports.WhatIShippedCard = _chunkIN4IO7BLcjs.WhatIShippedCard; exports.WhatIShippedCardSkeleton = _chunkIN4IO7BLcjs.WhatIShippedCardSkeleton; exports.accentFromIdentityIcon = _chunkIN4IO7BLcjs.accentFromIdentityIcon; exports.appendToTrailingAssistant = _chunkIN4IO7BLcjs.appendToTrailingAssistant; exports.applyProxyAuth = _chunkBIKOJ4FHcjs.applyProxyAuth; exports.applyToolExecutionToMessages = _chunkIN4IO7BLcjs.applyToolExecutionToMessages; exports.buildAnchorProps = _chunkIN4IO7BLcjs.buildAnchorProps; exports.buildAutoContinuationDirective = _chunkIN4IO7BLcjs.buildAutoContinuationDirective; exports.buildChatAttachmentViewUrl = _chunkIN4IO7BLcjs.buildChatAttachmentViewUrl; exports.buildChatRefKey = _chunkIN4IO7BLcjs.buildChatRefKey; exports.buildDiscussAddendum = _chunkIN4IO7BLcjs.buildDiscussAddendum; exports.buildNatsWsUrl = _chunkIN4IO7BLcjs.buildNatsWsUrl; exports.buildProductReleaseCardProps = _chunkIN4IO7BLcjs.buildProductReleaseCardProps; exports.buildStreamFrames = _chunkIN4IO7BLcjs.buildStreamFrames; exports.chatAuthedFetch = _chunkBIKOJ4FHcjs.embedAuthedFetch; exports.chatChipClass = _chunkIN4IO7BLcjs.chatChipClass; exports.clearChatProxyAuth = _chunkBIKOJ4FHcjs.clearEmbedProxyAuth; exports.clickupTaskUrl = _chunkIN4IO7BLcjs.clickupTaskUrl; exports.computeHistoryPrepend = _chunkIN4IO7BLcjs.computeHistoryPrepend; exports.computeIsNewTab = _chunkIN4IO7BLcjs.computeIsNewTab; exports.createMessageSegmentAccumulator = _chunkIN4IO7BLcjs.createMessageSegmentAccumulator; exports.decideNewTab = _chunkIN4IO7BLcjs.decideNewTab; exports.defaultBuildProductReleaseCardProps = _chunkIN4IO7BLcjs.defaultBuildProductReleaseCardProps; exports.defaultTableIdForDocumentType = _chunkIN4IO7BLcjs.defaultTableIdForDocumentType; exports.escapeMarkdownInline = _chunkIN4IO7BLcjs.escapeMarkdownInline; exports.executeNavigation = _chunkIN4IO7BLcjs.executeNavigation; exports.executeNavigationImperative = _chunkIN4IO7BLcjs.executeNavigationImperative; exports.extractEntityIdFilter = _chunkIN4IO7BLcjs.extractEntityIdFilter; exports.extractErrorMessages = _chunkIN4IO7BLcjs.extractErrorMessages; exports.extractIncompleteMessageState = _chunkIN4IO7BLcjs.extractIncompleteMessageState; exports.extractTextFromChunk = _chunkIN4IO7BLcjs.extractTextFromChunk; exports.fetchEmptyStateConfig = _chunkIN4IO7BLcjs.fetchEmptyStateConfig; exports.fetchSlashCommands = _chunkIN4IO7BLcjs.fetchSlashCommands; exports.flattenAssistantContent = _chunkIN4IO7BLcjs.flattenAssistantContent; exports.flattenMessagePagesChronological = _chunkIN4IO7BLcjs.flattenMessagePagesChronological; exports.formatChatAttachmentMarkdownForBubble = _chunkIN4IO7BLcjs.formatChatAttachmentMarkdownForBubble; exports.formatInvestorUpdatePeriod = _chunkIN4IO7BLcjs.formatInvestorUpdatePeriod; exports.formatSingularLookupInvocation = _chunkIN4IO7BLcjs.formatSingularLookupInvocation; exports.getAgentAccent = _chunkIN4IO7BLcjs.getAgentAccent; exports.getChatProxyAuth = _chunkBIKOJ4FHcjs.getEmbedProxyAuth; exports.getCommandText = _chunkIN4IO7BLcjs.getCommandText; exports.getDynamicIcon = _chunkIN4IO7BLcjs.getDynamicIcon; exports.getIconComponent = _chunkIN4IO7BLcjs.getIconComponent; exports.getPersistedProxyEmail = _chunkBIKOJ4FHcjs.getPersistedProxyEmail; exports.getSourceIconName = _chunkIN4IO7BLcjs.getSourceIconName; exports.getSourceLabel = _chunkIN4IO7BLcjs.getSourceLabel; exports.getStatusColorScheme = _chunkIN4IO7BLcjs.getStatusColorScheme; exports.getTaskTypeLabel = _chunkIN4IO7BLcjs.getTaskTypeLabel; exports.handleChatNavClick = _chunkIN4IO7BLcjs.handleChatNavClick; exports.hideOnError = _chunkIN4IO7BLcjs.hideOnError; exports.historicalToUnified = _chunkIN4IO7BLcjs.historicalToUnified; exports.interleave = _chunkIN4IO7BLcjs.interleave; exports.isControlChunk = _chunkIN4IO7BLcjs.isControlChunk; exports.isCrossOriginUrl = _chunkIN4IO7BLcjs.isCrossOriginUrl; exports.isErrorChunk = _chunkIN4IO7BLcjs.isErrorChunk; exports.isHistoricalUserTurn = _chunkIN4IO7BLcjs.isHistoricalUserTurn; exports.isMetadataChunk = _chunkIN4IO7BLcjs.isMetadataChunk; exports.isModifierClick = _chunkIN4IO7BLcjs.isModifierClick; exports.isQuickActionIconSpec = _chunkIN4IO7BLcjs.isQuickActionIconSpec; exports.isStructuredContent = _chunkIN4IO7BLcjs.isStructuredContent; exports.mapProcessedToUnified = _chunkIN4IO7BLcjs.mapProcessedToUnified; exports.maxPersistedStreamSeq = _chunkIN4IO7BLcjs.maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = _chunkIN4IO7BLcjs.mergeHistoryWithRealtime; exports.newTabAnchorAttrs = _chunkIN4IO7BLcjs.newTabAnchorAttrs; exports.normalizeContent = _chunkIN4IO7BLcjs.normalizeContent; exports.normalizeHistoricalMessageData = _chunkIN4IO7BLcjs.normalizeHistoricalMessageData; exports.normalizeIconKey = _chunkIN4IO7BLcjs.normalizeIconKey; exports.parseChunkToAction = _chunkIN4IO7BLcjs.parseChunkToAction; exports.parseScrollAnchor = _chunkIN4IO7BLcjs.parseScrollAnchor; exports.parseWireCommandOverride = _chunkIN4IO7BLcjs.parseWireCommandOverride; exports.processHistoricalMessages = _chunkIN4IO7BLcjs.processHistoricalMessages; exports.processHistoricalMessagesWithErrors = _chunkIN4IO7BLcjs.processHistoricalMessagesWithErrors; exports.programItemToStripProfile = _chunkIN4IO7BLcjs.programItemToStripProfile; exports.remarkCardLinks = _chunkIN4IO7BLcjs.remarkCardLinks; exports.remarkMentionChips = _chunkIN4IO7BLcjs.remarkMentionChips; exports.renderChatInlineEntityCard = _chunkIN4IO7BLcjs.renderChatInlineEntityCard; exports.renderQuickActionIcon = _chunkIN4IO7BLcjs.renderQuickActionIcon; exports.resolveExternalNavigation = _chunkIN4IO7BLcjs.resolveExternalNavigation; exports.resolveIcon = _chunkIN4IO7BLcjs.resolveIcon; exports.resolveSourceIcon = _chunkIN4IO7BLcjs.resolveSourceIcon; exports.resolveSourceRowCTA = _chunkIN4IO7BLcjs.resolveSourceRowCTA; exports.safeHref = _chunkIN4IO7BLcjs.safeHref; exports.sanitizeTitleForChat = _chunkIN4IO7BLcjs.sanitizeTitleForChat; exports.setChatProxyAuth = _chunkBIKOJ4FHcjs.setEmbedProxyAuth; exports.stripChatAttachmentMarkdown = _chunkIN4IO7BLcjs.stripChatAttachmentMarkdown; exports.stripSameOriginToPath = _chunkIN4IO7BLcjs.stripSameOriginToPath; exports.transformEventToProgram = _chunkIN4IO7BLcjs.transformEventToProgram; exports.transformPodcastToProgram = _chunkIN4IO7BLcjs.transformPodcastToProgram; exports.transformWebinarToProgram = _chunkIN4IO7BLcjs.transformWebinarToProgram; exports.upsertTrailingCompaction = _chunkIN4IO7BLcjs.upsertTrailingCompaction; exports.useChat = _chunkIN4IO7BLcjs.useChat; exports.useChatAttachmentImageGallery = _chunkIN4IO7BLcjs.useChatAttachmentImageGallery; exports.useChatAttachments = _chunkIN4IO7BLcjs.useChatAttachments; exports.useChatCardItem = _chunkIN4IO7BLcjs.useChatCardItem; exports.useChatIdentity = _chunkIN4IO7BLcjs.useChatIdentity; exports.useChunkCatchup = _chunkIN4IO7BLcjs.useChunkCatchup; exports.useCloseOnNavigation = _chunkIN4IO7BLcjs.useCloseOnNavigation; exports.useCollapsible = _chunkIN4IO7BLcjs.useCollapsible; exports.useCoverImageFallback = _chunkIN4IO7BLcjs.useCoverImageFallback; exports.useEmbeddedChat = _chunkIN4IO7BLcjs.useSseChatAdapter; exports.useEmptyStateConfig = _chunkIN4IO7BLcjs.useEmptyStateConfig; exports.useJetStreamDialogSubscription = _chunkIN4IO7BLcjs.useJetStreamDialogSubscription; exports.useNatsChatAdapter = _chunkIN4IO7BLcjs.useNatsChatAdapter; exports.useNatsDialogSubscription = _chunkIN4IO7BLcjs.useNatsDialogSubscription; exports.useProxiedImageUrl = _chunkIN4IO7BLcjs.useProxiedImageUrl; exports.useRealtimeChunkProcessor = _chunkIN4IO7BLcjs.useRealtimeChunkProcessor; exports.useSSE = _chunkIN4IO7BLcjs.useSSE; exports.useScriptedStream = _chunkIN4IO7BLcjs.useScriptedStream; exports.useSlashCommandRegistry = _chunkIN4IO7BLcjs.useSlashCommandRegistry; exports.useSlashCommands = _chunkIN4IO7BLcjs.useSlashCommands; exports.useSseChatAdapter = _chunkIN4IO7BLcjs.useSseChatAdapter; exports.useUnifiedChat = _chunkIN4IO7BLcjs.useUnifiedChat;
568
568
  //# sourceMappingURL=index.cjs.map
@@ -267,7 +267,7 @@ import {
267
267
  useSlashCommands,
268
268
  useSseChatAdapter,
269
269
  useUnifiedChat
270
- } from "../../chunk-77DFPD35.js";
270
+ } from "../../chunk-YMJZOANX.js";
271
271
  import {
272
272
  applyProxyAuth,
273
273
  clearEmbedProxyAuth,
@@ -275,9 +275,9 @@ import {
275
275
  getEmbedProxyAuth,
276
276
  getPersistedProxyEmail,
277
277
  setEmbedProxyAuth
278
- } from "../../chunk-KLYHZRAD.js";
278
+ } from "../../chunk-PB3BTZDU.js";
279
279
  import "../../chunk-OYGFWWLQ.js";
280
- import "../../chunk-KFQXO7QB.js";
280
+ import "../../chunk-6GT557KN.js";
281
281
  import "../../chunk-7EUIW46X.js";
282
282
  import "../../chunk-EL5YVPD5.js";
283
283
  import "../../chunk-ZJJERZUA.js";
@@ -224,6 +224,11 @@ export interface UnifiedChatState {
224
224
  isLoading: boolean;
225
225
  /** Granular phase for the "Thinking..."/"Streaming..." status row above input. */
226
226
  streamingPhase: StreamingPhase;
227
+ /** True while the adapter is rebuilding the message list from the
228
+ * server-side transcript store (SSE/Guide mount-time hydration). Optional —
229
+ * transports without server hydration (NATS manages its own dialog
230
+ * loading) never set it. */
231
+ isHydratingHistory?: boolean;
227
232
  sendMessage: (text: string, options?: UnifiedSendMessageOptions) => Promise<void>;
228
233
  /** Abort the in-flight stream. No-op when idle. */
229
234
  stopMessage: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"unified-chat-state.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/unified-chat-state.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unified-chat-state.types.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/types/unified-chat-state.types.ts"],"names":[],"mappings":"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"}