@flamingo-stack/openframe-frontend-core 0.0.760 → 0.0.761

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 (51) hide show
  1. package/dist/{chunk-EYVYPX5N.cjs → chunk-4EM7HIIM.cjs} +105 -105
  2. package/dist/{chunk-NC4QUV73.cjs → chunk-6M54EVOA.cjs} +9 -9
  3. package/dist/{chunk-PSLL4FAS.cjs → chunk-6T6O36LT.cjs} +15 -15
  4. package/dist/{chunk-GL5KJ4PK.cjs → chunk-B7AOUPBV.cjs} +11 -11
  5. package/dist/{chunk-ITO3JRVB.cjs → chunk-D252ICCO.cjs} +4 -4
  6. package/dist/{chunk-3LNKXYMI.cjs → chunk-EMSOBT6R.cjs} +4 -4
  7. package/dist/{chunk-D2HMQUK5.cjs → chunk-G6IK3HC5.cjs} +17 -17
  8. package/dist/{chunk-BDCEMTWU.cjs → chunk-GKRHGVB4.cjs} +68 -68
  9. package/dist/{chunk-QCXE7BSY.cjs → chunk-GLQBCQOF.cjs} +25 -25
  10. package/dist/{chunk-PIV4FVTR.cjs → chunk-H45OTVYI.cjs} +10 -10
  11. package/dist/{chunk-EMKGOU54.cjs → chunk-HQYWVNQL.cjs} +4 -4
  12. package/dist/{chunk-SULCTARW.cjs → chunk-LOM3S64Z.cjs} +3 -3
  13. package/dist/{chunk-4VRXTQVZ.cjs → chunk-NOFJH7MA.cjs} +6 -6
  14. package/dist/{chunk-UT4W73YG.cjs → chunk-OBXZDUC3.cjs} +43 -43
  15. package/dist/{chunk-QTYSYEHK.cjs → chunk-SUHPBFNU.cjs} +11 -6
  16. package/dist/{chunk-4ZMCKCXN.cjs → chunk-TIV74DVS.cjs} +36 -36
  17. package/dist/{chunk-EC7VXTJ3.cjs → chunk-VAZTFCVY.cjs} +7 -7
  18. package/dist/{cloud-tenants-2NMXXIA6.cjs → cloud-tenants-BDGV4N2T.cjs} +4 -4
  19. package/dist/components/case-studies/index.cjs +14 -14
  20. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  21. package/dist/components/chat/chat-message-enhanced.js +9 -6
  22. package/dist/components/chat/chat-message-list.d.ts.map +1 -1
  23. package/dist/components/chat/chat-message-list.js +2 -0
  24. package/dist/components/chat/index.cjs +3 -3
  25. package/dist/components/chat/types/component.types.d.ts +10 -0
  26. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  27. package/dist/components/contact/index.cjs +5 -5
  28. package/dist/components/docs/index.cjs +8 -8
  29. package/dist/components/embeds/index.cjs +5 -5
  30. package/dist/components/faq/index.cjs +6 -6
  31. package/dist/components/features/index.cjs +4 -4
  32. package/dist/components/help-center-pages/index.cjs +56 -56
  33. package/dist/components/index.cjs +36 -36
  34. package/dist/components/meeting-scheduler/index.cjs +22 -22
  35. package/dist/components/navigation/index.cjs +7 -7
  36. package/dist/components/onboarding-guides/index.cjs +6 -6
  37. package/dist/components/product-demo/index.cjs +7 -7
  38. package/dist/components/tickets/index.cjs +9 -9
  39. package/dist/components/ui/index.cjs +4 -4
  40. package/dist/{devices-5XZVTD7G.cjs → devices-Q5YHMXGV.cjs} +5 -5
  41. package/dist/{embeddable-chat-LTXUQWEK.cjs → embeddable-chat-ST5IR6VN.cjs} +66 -66
  42. package/dist/index.cjs +8 -8
  43. package/dist/{knowledge-7QSJQB4P.cjs → knowledge-UJTJT36J.cjs} +5 -5
  44. package/dist/{logs-URLNW334.cjs → logs-WMNITBLM.cjs} +12 -12
  45. package/dist/{policies-NNW6PMAN.cjs → policies-TRXVBOH7.cjs} +8 -8
  46. package/dist/{scripts-WPYKAZYF.cjs → scripts-HECY7XDL.cjs} +9 -9
  47. package/dist/{software-update-KB6BIWUT.cjs → software-update-NNFLEMYD.cjs} +7 -7
  48. package/package.json +1 -1
  49. package/src/components/chat/chat-message-enhanced.tsx +19 -9
  50. package/src/components/chat/chat-message-list.tsx +2 -0
  51. package/src/components/chat/types/component.types.ts +10 -0
@@ -3,17 +3,17 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkSULCTARWcjs = require('./chunk-SULCTARW.cjs');
6
+ var _chunkLOM3S64Zcjs = require('./chunk-LOM3S64Z.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkITO3JRVBcjs = require('./chunk-ITO3JRVB.cjs');
12
+ var _chunkD252ICCOcjs = require('./chunk-D252ICCO.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunk4VRXTQVZcjs = require('./chunk-4VRXTQVZ.cjs');
16
+ var _chunkNOFJH7MAcjs = require('./chunk-NOFJH7MA.cjs');
17
17
 
18
18
 
19
19
 
@@ -21,7 +21,7 @@ var _chunk4VRXTQVZcjs = require('./chunk-4VRXTQVZ.cjs');
21
21
 
22
22
 
23
23
 
24
- var _chunkEYVYPX5Ncjs = require('./chunk-EYVYPX5N.cjs');
24
+ var _chunk4EM7HIIMcjs = require('./chunk-4EM7HIIM.cjs');
25
25
 
26
26
 
27
27
  var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
@@ -30,7 +30,7 @@ var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
30
30
 
31
31
 
32
32
 
33
- var _chunkPSLL4FAScjs = require('./chunk-PSLL4FAS.cjs');
33
+ var _chunk6T6O36LTcjs = require('./chunk-6T6O36LT.cjs');
34
34
 
35
35
 
36
36
 
@@ -348,13 +348,13 @@ function toDocContent(value, requestedPath) {
348
348
  function toDataSync(value) {
349
349
  if (!isRecord(value)) return void 0;
350
350
  const source = readString(value, "source");
351
- if (!_chunkEYVYPX5Ncjs.isDataSyncSource.call(void 0, source)) return void 0;
351
+ if (!_chunk4EM7HIIMcjs.isDataSyncSource.call(void 0, source)) return void 0;
352
352
  return { source, syncedAt: _nullishCoalesce(readString(value, "syncedAt"), () => ( null)) };
353
353
  }
354
354
  function useDocumentTree(config, initialPath) {
355
355
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
356
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkPSLL4FAScjs.DEFAULT_FOLDER_INDEX_FILE));
357
- const cleanInitialPath = _chunkPSLL4FAScjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
356
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunk6T6O36LTcjs.DEFAULT_FOLDER_INDEX_FILE));
357
+ const cleanInitialPath = _chunk6T6O36LTcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
358
358
  const [structure, setStructure] = _react.useState.call(void 0, []);
359
359
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
360
360
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -378,12 +378,12 @@ function useDocumentTree(config, initialPath) {
378
378
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
379
379
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
380
380
  }
381
- pathFromUrl = _chunkPSLL4FAScjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
381
+ pathFromUrl = _chunk6T6O36LTcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
382
382
  if (pathFromUrl !== selectedPathRef.current) {
383
383
  setSelectedPath(pathFromUrl);
384
384
  if (pathFromUrl) {
385
385
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
386
- setExpandedNodes(new Set(_chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, parentPath)));
386
+ setExpandedNodes(new Set(_chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
387
387
  }
388
388
  setTimeout(() => {
389
389
  scrollToContent();
@@ -401,7 +401,7 @@ function useDocumentTree(config, initialPath) {
401
401
  setSelectedPath(cleanInitialPath);
402
402
  if (cleanInitialPath) {
403
403
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
404
- setExpandedNodes(new Set(_chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, parentPath)));
404
+ setExpandedNodes(new Set(_chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
405
405
  }
406
406
  setExternalNavCount((n) => n + 1);
407
407
  }
@@ -426,7 +426,7 @@ function useDocumentTree(config, initialPath) {
426
426
  if (cleanInitialPath) {
427
427
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
428
428
  if (pathForExpansion) {
429
- setExpandedNodes(new Set(_chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
429
+ setExpandedNodes(new Set(_chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
430
430
  }
431
431
  } else if (nodes.length > 0) {
432
432
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -466,7 +466,7 @@ function useDocumentTree(config, initialPath) {
466
466
  setContent(null);
467
467
  return;
468
468
  }
469
- const probe = _chunkPSLL4FAScjs.findDocNodeByPath.call(void 0, _chunkPSLL4FAScjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
469
+ const probe = _chunk6T6O36LTcjs.findDocNodeByPath.call(void 0, _chunk6T6O36LTcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
470
470
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
471
471
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
472
472
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -523,7 +523,7 @@ function useDocumentTree(config, initialPath) {
523
523
  if (selectedPath === "") {
524
524
  pathToFetch = folderIndexFile;
525
525
  } else {
526
- const node = _chunkPSLL4FAScjs.findDocNodeByPath.call(void 0, selectedPath, structure);
526
+ const node = _chunk6T6O36LTcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
527
527
  if (node && node.type === "folder" && !node.hasReadme) {
528
528
  const firstDocPath = findFirstDocPath(node);
529
529
  if (!firstDocPath) {
@@ -564,16 +564,16 @@ function useDocumentTree(config, initialPath) {
564
564
  if (node.type === "folder") {
565
565
  setExpandedNodes((prev) => {
566
566
  if (prev.has(node.id)) {
567
- const ancestorIds = _chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, node.path);
567
+ const ancestorIds = _chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, node.path);
568
568
  ancestorIds.pop();
569
569
  return new Set(ancestorIds);
570
570
  }
571
- return new Set(_chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, node.path));
571
+ return new Set(_chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, node.path));
572
572
  });
573
573
  } else {
574
574
  const lastSlash = node.path.lastIndexOf("/");
575
575
  if (lastSlash > 0) {
576
- setExpandedNodes(new Set(_chunkPSLL4FAScjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
576
+ setExpandedNodes(new Set(_chunk6T6O36LTcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
577
577
  }
578
578
  }
579
579
  lastFetchedPath.current = null;
@@ -588,7 +588,7 @@ function useDocumentTree(config, initialPath) {
588
588
  const hashIndex = path.indexOf("#");
589
589
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
590
590
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
591
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkPSLL4FAScjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
591
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunk6T6O36LTcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
592
592
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
593
593
  _chunkCSJO7ZGNcjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunkCSJO7ZGNcjs.HUB_HEADER_OFFSET_PX });
594
594
  return;
@@ -652,15 +652,15 @@ function useDocumentTree(config, initialPath) {
652
652
  return docNavigation.register({
653
653
  baseRoute: normalizedBaseRoute,
654
654
  findNodeByPath: (path) => {
655
- const clean = _chunkPSLL4FAScjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
- return _nullishCoalesce(_chunkPSLL4FAScjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
655
+ const clean = _chunk6T6O36LTcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
+ return _nullishCoalesce(_chunk6T6O36LTcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
657
657
  },
658
658
  selectNode
659
659
  });
660
660
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
661
661
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
662
662
  if (!selectedPath || structure.length === 0) return false;
663
- const node = _chunkPSLL4FAScjs.findDocNodeByPath.call(void 0, selectedPath, structure);
663
+ const node = _chunk6T6O36LTcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
664
664
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
665
665
  }, [selectedPath, structure]);
666
666
  return {
@@ -741,14 +741,14 @@ function DocViewerContent({
741
741
  },
742
742
  docPath
743
743
  );
744
- const { activeSection, handleSectionClick } = _chunkITO3JRVBcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
744
+ const { activeSection, handleSectionClick } = _chunkD252ICCOcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
745
745
  const docNav = useDocNavigation();
746
746
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
747
747
  const backCfg = backButton === false ? null : {
748
748
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
749
749
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
750
750
  };
751
- const docSearch = _chunk4VRXTQVZcjs.useDocSearch.call(void 0, {
751
+ const docSearch = _chunkNOFJH7MAcjs.useDocSearch.call(void 0, {
752
752
  source: chatSource,
753
753
  baseRoute,
754
754
  searchEndpoint,
@@ -772,7 +772,7 @@ function DocViewerContent({
772
772
  onResolveLink: resolveLink
773
773
  });
774
774
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
775
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkPSLL4FAScjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
775
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunk6T6O36LTcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
776
776
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
777
777
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
778
778
  const showStickyNav = isMarkdownContent;
@@ -784,9 +784,9 @@ function DocViewerContent({
784
784
  const defaultEmptyText = structure.length > 0 ? "Select a document from the sidebar to view" : "No documents yet. Add content from the admin panel.";
785
785
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
786
786
  const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.PageLayout, { title, subtitle, titleSize: "h1", titleWrap: true, backButton: _nullishCoalesce(backCfg, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-10", children: [
787
- synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
787
+ synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
788
788
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
789
- _chunk4VRXTQVZcjs.DocSearchBar,
789
+ _chunkNOFJH7MAcjs.DocSearchBar,
790
790
  {
791
791
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _20 => _20.toLowerCase, 'call', _21 => _21()]) || "documents"}...`,
792
792
  query: docSearch.query,
@@ -805,9 +805,9 @@ function DocViewerContent({
805
805
  ] })
806
806
  ] }) }),
807
807
  !error && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-start gap-6 content-lg:flex-row content-lg:gap-10", children: [
808
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
808
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
809
809
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
810
- _chunkITO3JRVBcjs.MobileNavigationDropdown,
810
+ _chunkD252ICCOcjs.MobileNavigationDropdown,
811
811
  {
812
812
  nodes: structure,
813
813
  selectedPath,
@@ -821,7 +821,7 @@ function DocViewerContent({
821
821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentSidebar, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
822
822
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
823
823
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
824
- _chunkITO3JRVBcjs.MultiLevelNavigation,
824
+ _chunkD252ICCOcjs.MultiLevelNavigation,
825
825
  {
826
826
  nodes: structure,
827
827
  selectedPath,
@@ -860,7 +860,7 @@ function DocViewerContent({
860
860
  showStickyNav && content && stickyNavSections.length > 0 && !isLoadingContent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-24", children: [
861
861
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-4 font-semibold text-ods-text-secondary text-h5", children: "ON THIS PAGE" }),
862
862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
863
- _chunkITO3JRVBcjs.StickySectionNav,
863
+ _chunkD252ICCOcjs.StickySectionNav,
864
864
  {
865
865
  sections: stickyNavSections,
866
866
  activeSection,
@@ -875,7 +875,7 @@ function DocViewerContent({
875
875
  ) })
876
876
  ] })
877
877
  ] }) }) });
878
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
878
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
879
879
  }
880
880
 
881
881
  // src/components/docs/skeletons.tsx
@@ -961,7 +961,7 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
961
961
  ] }),
962
962
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center gap-2 content-sm:w-auto", children: Array.from({ length: buttonCount }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-10 w-full flex-1 rounded content-sm:w-32 content-sm:flex-initial" }, i)) })
963
963
  ] }),
964
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.EmbedLoadingSkeleton, { region: false })
964
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.EmbedLoadingSkeleton, { region: false })
965
965
  ] });
966
966
  }
967
967
 
@@ -969,11 +969,11 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
969
969
 
970
970
  var DEFAULT_TITLE = "Documents";
971
971
  var defaultFallbackRenderer = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-16 text-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: "Unsupported document type" }) });
972
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSULCTARWcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSULCTARWcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
972
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOM3S64Zcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOM3S64Zcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
975
975
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
976
- _chunkSULCTARWcjs.FileDownloadCard,
976
+ _chunkLOM3S64Zcjs.FileDownloadCard,
977
977
  {
978
978
  fileName: content.fileName,
979
979
  mimeType: content.mimeType,
@@ -5,12 +5,12 @@ var _chunkVUWPLQBYcjs = require('./chunk-VUWPLQBY.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkPSLL4FAScjs = require('./chunk-PSLL4FAS.cjs');
8
+ var _chunk6T6O36LTcjs = require('./chunk-6T6O36LT.cjs');
9
9
 
10
10
 
11
11
 
12
12
 
13
- var _chunkQTYSYEHKcjs = require('./chunk-QTYSYEHK.cjs');
13
+ var _chunkSUHPBFNUcjs = require('./chunk-SUHPBFNU.cjs');
14
14
 
15
15
 
16
16
 
@@ -63,7 +63,7 @@ function FaqAccordion({ items, defaultOpenIds = [] }) {
63
63
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
64
64
  "div",
65
65
  {
66
- id: _chunkQTYSYEHKcjs.faqItemAnchor.call(void 0, item.id),
66
+ id: _chunkSUHPBFNUcjs.faqItemAnchor.call(void 0, item.id),
67
67
  className: "scroll-mt-24 transition-colors hover:bg-ods-bg-hover",
68
68
  children: [
69
69
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -116,14 +116,14 @@ function FaqAccordion({ items, defaultOpenIds = [] }) {
116
116
 
117
117
  var PICK_ROOT_MARGIN = "600px";
118
118
  function faqAskCardShown(assistant) {
119
- return _chunkPSLL4FAScjs.assistantAvailable.call(void 0, assistant) && !!assistant.name;
119
+ return _chunk6T6O36LTcjs.assistantAvailable.call(void 0, assistant) && !!assistant.name;
120
120
  }
121
121
  function FaqAskCard({ topic, exclude, count, title, description, onOpen }) {
122
122
  const { ref, inView } = _chunkCSJO7ZGNcjs.useInView.call(void 0, { rootMargin: PICK_ROOT_MARGIN });
123
123
  const [reached, setReached] = _react.useState.call(void 0, false);
124
124
  if (inView && !reached) setReached(true);
125
125
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
126
- _chunkPSLL4FAScjs.AssistantAskPrompts,
126
+ _chunk6T6O36LTcjs.AssistantAskPrompts,
127
127
  {
128
128
  variant: "card",
129
129
  topic,
@@ -197,7 +197,7 @@ function groupFaqsBySection(faqs) {
197
197
  }
198
198
  let group = byName.get(name);
199
199
  if (!group) {
200
- group = { section: name, slug: _chunkQTYSYEHKcjs.faqSectionSlug.call(void 0, name), items: [] };
200
+ group = { section: name, slug: _chunkSUHPBFNUcjs.faqSectionSlug.call(void 0, name), items: [] };
201
201
  byName.set(name, group);
202
202
  }
203
203
  group.items.push(item);
@@ -252,7 +252,7 @@ function GroupedFaqList({
252
252
  }, [slugKey]);
253
253
  const [hashTarget, setHashTarget] = _react.useState.call(void 0, null);
254
254
  _react.useEffect.call(void 0, () => {
255
- const refresh = () => setHashTarget(_chunkQTYSYEHKcjs.parseFaqHash.call(void 0, window.location.hash));
255
+ const refresh = () => setHashTarget(_chunkSUHPBFNUcjs.parseFaqHash.call(void 0, window.location.hash));
256
256
  refresh();
257
257
  window.addEventListener("hashchange", refresh);
258
258
  return () => window.removeEventListener("hashchange", refresh);
@@ -9,7 +9,7 @@ var _chunkSTEJZPIOcjs = require('./chunk-STEJZPIO.cjs');
9
9
  var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
10
10
 
11
11
 
12
- var _chunkEYVYPX5Ncjs = require('./chunk-EYVYPX5N.cjs');
12
+ var _chunk4EM7HIIMcjs = require('./chunk-4EM7HIIM.cjs');
13
13
  require('./chunk-2ANICXS7.cjs');
14
14
  require('./chunk-QU5K52OP.cjs');
15
15
  require('./chunk-AXBVN5SW.cjs');
@@ -22,8 +22,8 @@ require('./chunk-A6P6DHEZ.cjs');
22
22
  require('./chunk-MZ4KBSH7.cjs');
23
23
  require('./chunk-T4BBZ5ST.cjs');
24
24
  require('./chunk-YUMFVQIN.cjs');
25
- require('./chunk-PSLL4FAS.cjs');
26
- require('./chunk-QTYSYEHK.cjs');
25
+ require('./chunk-6T6O36LT.cjs');
26
+ require('./chunk-SUHPBFNU.cjs');
27
27
  require('./chunk-F64VMOIB.cjs');
28
28
  require('./chunk-3RFQPQ7Z.cjs');
29
29
  require('./chunk-LOFDIDSD.cjs');
@@ -1920,7 +1920,7 @@ var getHref = () => "#";
1920
1920
  function CloudTenantsScreen(_props) {
1921
1921
  const cast = _chunkSTEJZPIOcjs.useProductDemoCast.call(void 0, );
1922
1922
  const fixture = _react.useMemo.call(void 0, () => buildCloudTenantsFixture(cast), [cast]);
1923
- const table = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.TenantsTableView, { rows: fixture.rows, getHref, now: fixture.now });
1923
+ const table = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.TenantsTableView, { rows: fixture.rows, getHref, now: fixture.now });
1924
1924
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full bg-ods-bg p-[var(--spacing-system-l)]", children: table });
1925
1925
  }
1926
1926
 
@@ -4,13 +4,13 @@
4
4
  var _chunkDTKGIG4Acjs = require('../../chunk-DTKGIG4A.cjs');
5
5
 
6
6
 
7
- var _chunkNC4QUV73cjs = require('../../chunk-NC4QUV73.cjs');
7
+ var _chunk6M54EVOAcjs = require('../../chunk-6M54EVOA.cjs');
8
8
 
9
9
 
10
10
 
11
11
 
12
12
 
13
- var _chunkEYVYPX5Ncjs = require('../../chunk-EYVYPX5N.cjs');
13
+ var _chunk4EM7HIIMcjs = require('../../chunk-4EM7HIIM.cjs');
14
14
  require('../../chunk-2ANICXS7.cjs');
15
15
  require('../../chunk-QU5K52OP.cjs');
16
16
  require('../../chunk-AXBVN5SW.cjs');
@@ -23,11 +23,11 @@ require('../../chunk-A6P6DHEZ.cjs');
23
23
  require('../../chunk-MZ4KBSH7.cjs');
24
24
  require('../../chunk-T4BBZ5ST.cjs');
25
25
  require('../../chunk-YUMFVQIN.cjs');
26
- require('../../chunk-PSLL4FAS.cjs');
26
+ require('../../chunk-6T6O36LT.cjs');
27
27
 
28
28
 
29
29
 
30
- var _chunkQTYSYEHKcjs = require('../../chunk-QTYSYEHK.cjs');
30
+ var _chunkSUHPBFNUcjs = require('../../chunk-SUHPBFNU.cjs');
31
31
  require('../../chunk-F64VMOIB.cjs');
32
32
  require('../../chunk-3RFQPQ7Z.cjs');
33
33
  require('../../chunk-LOFDIDSD.cjs');
@@ -1927,9 +1927,9 @@ function ShareExperienceSection({
1927
1927
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h2", children: howItWorksTitle }),
1928
1928
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4", children: howItWorksBody })
1929
1929
  ] }),
1930
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEYVYPX5Ncjs.BenefitCardGrid, { columns: 4, children: [
1930
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4EM7HIIMcjs.BenefitCardGrid, { columns: 4, children: [
1931
1931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1932
- _chunkEYVYPX5Ncjs.BenefitCard,
1932
+ _chunk4EM7HIIMcjs.BenefitCard,
1933
1933
  {
1934
1934
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 items-center justify-center rounded-md border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMJQLBIZMcjs.G2Icon, { color: "var(--social-g2)", size: 24 }) }),
1935
1935
  title: "G2",
@@ -1938,7 +1938,7 @@ function ShareExperienceSection({
1938
1938
  }
1939
1939
  ),
1940
1940
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1941
- _chunkEYVYPX5Ncjs.BenefitCard,
1941
+ _chunk4EM7HIIMcjs.BenefitCard,
1942
1942
  {
1943
1943
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 items-center justify-center rounded-md border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkA2VKPXOBcjs.CapterraIcon, { size: 24 }) }),
1944
1944
  title: "Capterra",
@@ -1947,7 +1947,7 @@ function ShareExperienceSection({
1947
1947
  }
1948
1948
  ),
1949
1949
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1950
- _chunkEYVYPX5Ncjs.BenefitCard,
1950
+ _chunk4EM7HIIMcjs.BenefitCard,
1951
1951
  {
1952
1952
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 items-center justify-center rounded-md border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTLKSZG3Dcjs.TrustpilotIcon, { size: 24 }) }),
1953
1953
  title: "TrustPilot",
@@ -1956,7 +1956,7 @@ function ShareExperienceSection({
1956
1956
  }
1957
1957
  ),
1958
1958
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1959
- _chunkEYVYPX5Ncjs.BenefitCard,
1959
+ _chunk4EM7HIIMcjs.BenefitCard,
1960
1960
  {
1961
1961
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 items-center justify-center rounded-md border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkILYW6BQNcjs.GetappIcon, { size: 24 }) }),
1962
1962
  title: "GetApp",
@@ -1965,7 +1965,7 @@ function ShareExperienceSection({
1965
1965
  }
1966
1966
  )
1967
1967
  ] }),
1968
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNC4QUV73cjs.ContactForm, { ...DEFAULT_CONTACT_FORM_PROPS, ...contactFormProps })
1968
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6M54EVOAcjs.ContactForm, { ...DEFAULT_CONTACT_FORM_PROPS, ...contactFormProps })
1969
1969
  ] }) })
1970
1970
  ] });
1971
1971
  }
@@ -1975,7 +1975,7 @@ function ShareExperienceSection({
1975
1975
  function EntityQuotesPanel({ quotes, className }) {
1976
1976
  if (!quotes || quotes.length === 0) return null;
1977
1977
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1978
- _chunkEYVYPX5Ncjs.StackedRowsPanel,
1978
+ _chunk4EM7HIIMcjs.StackedRowsPanel,
1979
1979
  {
1980
1980
  className,
1981
1981
  title: `${_chunkDTKGIG4Acjs.ENTITY_QUOTES_TITLE} \xB7 ${quotes.length}`,
@@ -2004,7 +2004,7 @@ function EntityQuotesPanel({ quotes, className }) {
2004
2004
  function QuoteCardsStrip({ quotes, className }) {
2005
2005
  if (quotes.length === 0) return null;
2006
2006
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2007
- _chunkQTYSYEHKcjs.CardsStrip,
2007
+ _chunkSUHPBFNUcjs.CardsStrip,
2008
2008
  {
2009
2009
  className,
2010
2010
  showTitle: false,
@@ -2019,8 +2019,8 @@ function QuoteCardsStrip({ quotes, className }) {
2019
2019
  onPointerLeave: ctx.isTouch ? void 0 : () => ctx.onDeactivate(ctx.cardKey),
2020
2020
  className: "relative shrink-0 rounded-md border-ods-border bg-ods-card p-[var(--spacing-system-sf)] shadow-none hover:border-ods-border-hover",
2021
2021
  children: [
2022
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEYVYPX5Ncjs.PersonCell, { size: "lg", name: `"${quote.text}"`, secondary: quote.attribution, avatarUrl: quote.logoUrl }),
2023
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.CardHitLayer, { href: quote.href, label: `${quote.text}, ${quote.attribution}`, decorative: ctx.isClone })
2022
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EM7HIIMcjs.PersonCell, { size: "lg", name: `"${quote.text}"`, secondary: quote.attribution, avatarUrl: quote.logoUrl }),
2023
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSUHPBFNUcjs.CardHitLayer, { href: quote.href, label: `${quote.text}, ${quote.attribution}`, decorative: ctx.isClone })
2024
2024
  ]
2025
2025
  },
2026
2026
  ctx.cardKey
@@ -1 +1 @@
1
- {"version":3,"file":"chat-message-enhanced.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-enhanced.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAuE,MAAM,OAAO,CAAC;AA6B5F,OAAO,KAAK,EAA8C,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAysBpG,QAAA,MAAM,2BAA2B,4FAiC/B,CAAC;AAIH,OAAO,EAAE,2BAA2B,IAAI,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"chat-message-enhanced.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-enhanced.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAuE,MAAM,OAAO,CAAC;AA6B5F,OAAO,KAAK,EAA8C,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAktBpG,QAAA,MAAM,2BAA2B,4FAkC/B,CAAC;AAIH,OAAO,EAAE,2BAA2B,IAAI,mBAAmB,EAAE,CAAC"}
@@ -71,6 +71,7 @@ const ChatMessageEnhanced = forwardRef(
71
71
  approvalVariant,
72
72
  appearance: appearanceProp,
73
73
  authorType: authorTypeProp,
74
+ selfAuthorType,
74
75
  assistantIcon,
75
76
  contextItems,
76
77
  resolveContextIcon,
@@ -82,12 +83,14 @@ const ChatMessageEnhanced = forwardRef(
82
83
  NavLinkAnchor,
83
84
  ...props
84
85
  }, ref) => {
85
- const isUser = role === "user";
86
+ const isHuman = role === "user";
86
87
  const isError = role === "error";
87
88
  const inheritedAppearance = useChatAppearance();
88
89
  const appearance = appearanceProp ?? inheritedAppearance;
89
90
  const isV2 = appearance === CHAT_APPEARANCE.V2;
90
- const authorType = authorTypeProp ?? (isUser ? "user" : assistantType === "mingo" ? "mingo" : "fae");
91
+ const authorType = authorTypeProp ?? (isHuman ? "user" : assistantType === "mingo" ? "mingo" : "fae");
92
+ const isOtherPerson = isHuman && selfAuthorType !== void 0 && authorType !== "system" && authorType !== selfAuthorType;
93
+ const isUser = isHuman && !isOtherPerson;
91
94
  const hasMarkerSupport = !!renderEntityCard;
92
95
  const segments = useMemo(() => normalizeContent(content), [content]);
93
96
  const askRuns = useMemo(() => groupAskRuns(segments), [segments]);
@@ -265,10 +268,10 @@ const ChatMessageEnhanced = forwardRef(
265
268
  });
266
269
  };
267
270
  const isSystem = authorType === "system";
268
- const showName = isSystem || authorType === "admin" && !isUser;
269
- const displayName = name || (isUser ? "User" : assistantType === "mingo" ? "Mingo" : "Fae");
271
+ const showName = isSystem || isOtherPerson || authorType === "admin" && !isUser;
272
+ const displayName = name || (isHuman ? "User" : assistantType === "mingo" ? "Mingo" : "Fae");
270
273
  const faceBox = "h-5 w-5 flex-shrink-0";
271
- const face = !showAvatar || isSystem ? null : !isUser && !avatar && assistantIcon ? /* @__PURE__ */ jsx("span", { title: displayName, className: cn("flex items-center justify-center", faceBox), children: assistantIcon }) : !isUser && !avatar && assistantType ? (
274
+ const face = !showAvatar || isSystem ? null : !isHuman && !avatar && assistantIcon ? /* @__PURE__ */ jsx("span", { title: displayName, className: cn("flex items-center justify-center", faceBox), children: assistantIcon }) : !isHuman && !avatar && assistantType ? (
272
275
  // An agent with no picture shows its packaged mark, never initials.
273
276
  /* @__PURE__ */ jsx("span", { role: "img", "aria-label": displayName, title: displayName, className: cn("inline-flex", faceBox), children: /* @__PURE__ */ jsx(AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
274
277
  ) : /* @__PURE__ */ jsx("span", { title: displayName, className: "inline-flex flex-shrink-0", children: /* @__PURE__ */ jsx(
@@ -408,7 +411,7 @@ const ChatMessageEnhanced = forwardRef(
408
411
  );
409
412
  ChatMessageEnhanced.displayName = "ChatMessageEnhanced";
410
413
  const MemoizedChatMessageEnhanced = memo(ChatMessageEnhanced, (prevProps, nextProps) => {
411
- return prevProps.role === nextProps.role && prevProps.content === nextProps.content && prevProps.name === nextProps.name && prevProps.avatar === nextProps.avatar && prevProps.isTyping === nextProps.isTyping && prevProps.timestamp?.getTime() === nextProps.timestamp?.getTime() && prevProps.showAvatar === nextProps.showAvatar && prevProps.assistantType === nextProps.assistantType && prevProps.approvalVariant === nextProps.approvalVariant && prevProps.appearance === nextProps.appearance && prevProps.authorType === nextProps.authorType && prevProps.assistantIcon === nextProps.assistantIcon && prevProps.className === nextProps.className && // Reference equality — the host re-uses the same array instance per
414
+ return prevProps.role === nextProps.role && prevProps.content === nextProps.content && prevProps.name === nextProps.name && prevProps.avatar === nextProps.avatar && prevProps.isTyping === nextProps.isTyping && prevProps.timestamp?.getTime() === nextProps.timestamp?.getTime() && prevProps.showAvatar === nextProps.showAvatar && prevProps.assistantType === nextProps.assistantType && prevProps.approvalVariant === nextProps.approvalVariant && prevProps.appearance === nextProps.appearance && prevProps.authorType === nextProps.authorType && prevProps.selfAuthorType === nextProps.selfAuthorType && prevProps.assistantIcon === nextProps.assistantIcon && prevProps.className === nextProps.className && // Reference equality — the host re-uses the same array instance per
412
415
  // message (it's set once on the optimistic send and never mutated).
413
416
  prevProps.contextItems === nextProps.contextItems && prevProps.resolveContextIcon === nextProps.resolveContextIcon && prevProps.renderContextItem === nextProps.renderContextItem && // Host keeps this stable (module const / useCallback), so reference
414
417
  // equality holds across streaming chunks.
@@ -1 +1 @@
1
- {"version":3,"file":"chat-message-list.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-list.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAyGpD,QAAA,MAAM,eAAe,iHAohCpB,CAAC;AAIF,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"chat-message-list.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-list.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAyGpD,QAAA,MAAM,eAAe,iHAshCpB,CAAC;AAIF,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -62,6 +62,7 @@ const ChatMessageList = forwardRef(
62
62
  contentClassName,
63
63
  assistantType,
64
64
  approvalVariant,
65
+ selfAuthorType,
65
66
  appearance = CHAT_APPEARANCE.CLASSIC,
66
67
  assistantIcon,
67
68
  pendingApprovals,
@@ -467,6 +468,7 @@ const ChatMessageList = forwardRef(
467
468
  assistantType: message.assistantType || assistantType,
468
469
  approvalVariant,
469
470
  authorType: message.authorType,
471
+ selfAuthorType,
470
472
  assistantIcon: message.role !== "user" ? assistantIcon : void 0,
471
473
  contextItems: message.contextItems,
472
474
  resolveContextIcon,