@flamingo-stack/openframe-frontend-core 0.0.757 → 0.0.759

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 (98) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-7RADSQJF.cjs → chunk-4IXA5CJT.cjs} +142 -96
  3. package/dist/{chunk-S5ITKW6G.cjs → chunk-6VDOHVYE.cjs} +83 -82
  4. package/dist/{chunk-RPADJ2E6.cjs → chunk-7ITYKDJN.cjs} +3 -3
  5. package/dist/{chunk-ORC3ZKHT.cjs → chunk-CDA2MY7U.cjs} +48 -24
  6. package/dist/{chunk-L2RNZOCI.cjs → chunk-DHFQECP3.cjs} +11 -11
  7. package/dist/{chunk-33RJU565.cjs → chunk-EFCX5SYN.cjs} +2 -2
  8. package/dist/{chunk-WSRMYHIV.cjs → chunk-F7WIKBRI.cjs} +2 -2
  9. package/dist/{chunk-JEIAB7JQ.cjs → chunk-G7RDJACG.cjs} +2 -2
  10. package/dist/{chunk-AZFSHHWT.cjs → chunk-I4W4DQ6C.cjs} +4 -4
  11. package/dist/{chunk-BLYP7ZT4.cjs → chunk-O75A3FBT.cjs} +47 -36
  12. package/dist/{chunk-NTGIQP7O.cjs → chunk-QU5K52OP.cjs} +8 -2
  13. package/dist/{chunk-VD4HVLXG.cjs → chunk-S23DIVIP.cjs} +25 -25
  14. package/dist/{chunk-UWXUGP3V.cjs → chunk-SIOSQMIB.cjs} +3 -3
  15. package/dist/{chunk-33PJH2TF.cjs → chunk-SYACKQYF.cjs} +13 -13
  16. package/dist/{chunk-HB3QFOHD.cjs → chunk-WBSYC6EY.cjs} +5 -5
  17. package/dist/{chunk-CT3UDNAV.cjs → chunk-WGFTIEHY.cjs} +75 -68
  18. package/dist/{chunk-3C4U4UW6.cjs → chunk-XXM74P3N.cjs} +1 -1
  19. package/dist/{cloud-tenants-PA5UU2KQ.cjs → cloud-tenants-YUMG3O36.cjs} +4 -4
  20. package/dist/components/case-studies/index.cjs +12 -12
  21. package/dist/components/chat/index.cjs +2 -2
  22. package/dist/components/contact/index.cjs +5 -5
  23. package/dist/components/docs/doc-viewer.d.ts +4 -0
  24. package/dist/components/docs/doc-viewer.d.ts.map +1 -1
  25. package/dist/components/docs/doc-viewer.js +3 -0
  26. package/dist/components/docs/index.cjs +8 -8
  27. package/dist/components/docs/use-document-tree.d.ts.map +1 -1
  28. package/dist/components/docs/use-document-tree.js +9 -1
  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 +58 -57
  33. package/dist/components/help-center-pages/trust-center-page.d.ts +7 -1
  34. package/dist/components/help-center-pages/trust-center-page.d.ts.map +1 -1
  35. package/dist/components/help-center-pages/trust-center-page.js +4 -3
  36. package/dist/components/index.cjs +35 -33
  37. package/dist/components/layout/page-data-sync.d.ts +18 -0
  38. package/dist/components/layout/page-data-sync.d.ts.map +1 -0
  39. package/dist/components/layout/page-data-sync.js +33 -0
  40. package/dist/components/meeting-scheduler/index.cjs +20 -20
  41. package/dist/components/navigation/index.cjs +7 -7
  42. package/dist/components/onboarding-guides/index.cjs +6 -6
  43. package/dist/components/product-demo/index.cjs +7 -7
  44. package/dist/components/shared/delivery/delivery-lists.d.ts.map +1 -1
  45. package/dist/components/shared/delivery/delivery-lists.js +6 -0
  46. package/dist/components/shared/dev-section/dev-section-view.d.ts +3 -16
  47. package/dist/components/shared/dev-section/dev-section-view.d.ts.map +1 -1
  48. package/dist/components/shared/dev-section/dev-section-view.js +6 -13
  49. package/dist/components/shared/legal-document/legal-document-page.d.ts +1 -3
  50. package/dist/components/shared/legal-document/legal-document-page.d.ts.map +1 -1
  51. package/dist/components/shared/legal-document/legal-document-page.js +3 -9
  52. package/dist/components/shared/roadmap/roadmap-view.d.ts.map +1 -1
  53. package/dist/components/shared/roadmap/roadmap-view.js +29 -17
  54. package/dist/components/tickets/hooks/use-tickets-list.d.ts +4 -0
  55. package/dist/components/tickets/hooks/use-tickets-list.d.ts.map +1 -1
  56. package/dist/components/tickets/hooks/use-tickets-list.js +1 -0
  57. package/dist/components/tickets/index.cjs +9 -9
  58. package/dist/components/tickets/ticket-center.d.ts.map +1 -1
  59. package/dist/components/tickets/ticket-center.js +5 -6
  60. package/dist/components/ui/data-attribution.d.ts +13 -0
  61. package/dist/components/ui/data-attribution.d.ts.map +1 -1
  62. package/dist/components/ui/data-attribution.js +30 -1
  63. package/dist/components/ui/drawer.d.ts.map +1 -1
  64. package/dist/components/ui/drawer.js +5 -2
  65. package/dist/components/ui/index.cjs +6 -4
  66. package/dist/{devices-72YSJM4Z.cjs → devices-EFDFNWIV.cjs} +5 -5
  67. package/dist/{embeddable-chat-CHHWPGAY.cjs → embeddable-chat-LTXUQWEK.cjs} +4 -4
  68. package/dist/index.cjs +14 -8
  69. package/dist/{knowledge-76RIDA7P.cjs → knowledge-UT2XI45N.cjs} +4 -4
  70. package/dist/{logs-ODMJ3KOP.cjs → logs-ZTYEI35Y.cjs} +12 -12
  71. package/dist/{policies-5BZ5X2S4.cjs → policies-S3IF2U3D.cjs} +8 -8
  72. package/dist/{scripts-TWQPG46M.cjs → scripts-IZWNCX5A.cjs} +9 -9
  73. package/dist/{software-update-TSGISQV5.cjs → software-update-6T4GFJPA.cjs} +7 -7
  74. package/dist/types/data-sync.d.ts +22 -0
  75. package/dist/types/data-sync.d.ts.map +1 -0
  76. package/dist/types/data-sync.js +12 -0
  77. package/dist/types/doc-source.d.ts +4 -0
  78. package/dist/types/doc-source.d.ts.map +1 -1
  79. package/dist/types/index.cjs +12 -0
  80. package/dist/types/index.d.ts +1 -0
  81. package/dist/types/index.d.ts.map +1 -1
  82. package/dist/types/index.js +1 -0
  83. package/package.json +1 -1
  84. package/src/components/docs/doc-viewer.tsx +9 -0
  85. package/src/components/docs/use-document-tree.ts +10 -0
  86. package/src/components/help-center-pages/trust-center-page.tsx +10 -3
  87. package/src/components/layout/page-data-sync.tsx +60 -0
  88. package/src/components/shared/delivery/delivery-lists.tsx +12 -2
  89. package/src/components/shared/dev-section/dev-section-view.tsx +37 -56
  90. package/src/components/shared/legal-document/legal-document-page.tsx +5 -13
  91. package/src/components/shared/roadmap/roadmap-view.tsx +37 -20
  92. package/src/components/tickets/hooks/use-tickets-list.ts +7 -0
  93. package/src/components/tickets/ticket-center.tsx +7 -3
  94. package/src/components/ui/data-attribution.tsx +44 -0
  95. package/src/components/ui/drawer.tsx +12 -1
  96. package/src/types/data-sync.ts +26 -0
  97. package/src/types/doc-source.ts +4 -0
  98. package/src/types/index.ts +1 -0
@@ -5,14 +5,15 @@ var _chunkWBOHLXFCcjs = require('./chunk-WBOHLXFC.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkORC3ZKHTcjs = require('./chunk-ORC3ZKHT.cjs');
8
+
9
+ var _chunkCDA2MY7Ucjs = require('./chunk-CDA2MY7U.cjs');
9
10
 
10
11
 
11
12
  var _chunk5E6JHOGXcjs = require('./chunk-5E6JHOGX.cjs');
12
13
 
13
14
 
14
15
 
15
- var _chunkRPADJ2E6cjs = require('./chunk-RPADJ2E6.cjs');
16
+ var _chunk7ITYKDJNcjs = require('./chunk-7ITYKDJN.cjs');
16
17
 
17
18
 
18
19
  var _chunkVUSXDMCEcjs = require('./chunk-VUSXDMCE.cjs');
@@ -27,7 +28,8 @@ var _chunkVUSXDMCEcjs = require('./chunk-VUSXDMCE.cjs');
27
28
 
28
29
 
29
30
 
30
- var _chunk7RADSQJFcjs = require('./chunk-7RADSQJF.cjs');
31
+
32
+ var _chunk4IXA5CJTcjs = require('./chunk-4IXA5CJT.cjs');
31
33
 
32
34
 
33
35
  var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
@@ -39,7 +41,7 @@ var _chunkVUWPLQBYcjs = require('./chunk-VUWPLQBY.cjs');
39
41
 
40
42
 
41
43
 
42
- var _chunk3C4U4UW6cjs = require('./chunk-3C4U4UW6.cjs');
44
+ var _chunkXXM74P3Ncjs = require('./chunk-XXM74P3N.cjs');
43
45
 
44
46
 
45
47
 
@@ -79,9 +81,6 @@ var _chunkB27XV2TCcjs = require('./chunk-B27XV2TC.cjs');
79
81
  var _chunk7Z4EQOIXcjs = require('./chunk-7Z4EQOIX.cjs');
80
82
 
81
83
 
82
- var _chunkJHQNUWFMcjs = require('./chunk-JHQNUWFM.cjs');
83
-
84
-
85
84
 
86
85
  var _chunkBLH2SFOOcjs = require('./chunk-BLH2SFOO.cjs');
87
86
 
@@ -109,8 +108,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
109
108
  // src/components/shared/product-release/product-releases-view.tsx
110
109
  var _jsxruntime = require('react/jsx-runtime');
111
110
  var DEFAULT_ENDPOINT = "/api/releases";
112
- var DEFAULT_SEARCH_PARAM_KEY = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.search;
113
- var DEFAULT_STATUS_PARAM_KEY = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
111
+ var DEFAULT_SEARCH_PARAM_KEY = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.search;
112
+ var DEFAULT_STATUS_PARAM_KEY = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
114
113
  var DEFAULT_PAGE_PARAM_KEY = "page";
115
114
  function ReleaseRow({
116
115
  release,
@@ -119,7 +118,7 @@ function ReleaseRow({
119
118
  }) {
120
119
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
121
120
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
122
- const cta = _chunk3C4U4UW6cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
121
+ const cta = _chunkXXM74P3Ncjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
123
122
  type: "product_release",
124
123
  slug: release.slug,
125
124
  basePath,
@@ -191,10 +190,10 @@ function ProductReleasesView({
191
190
  router.replace(`${pathname}?${params.toString()}`, { scroll: false });
192
191
  };
193
192
  if (error) {
194
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
193
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
195
194
  }
196
195
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col gap-[40px]", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[600px]", children: showEmpty ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[600px] items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
197
- _chunkORC3ZKHTcjs.ListEmptyState,
196
+ _chunkCDA2MY7Ucjs.ListEmptyState,
198
197
  {
199
198
  isFiltered: hasActiveFilters,
200
199
  filtered: {
@@ -289,7 +288,7 @@ function MediaGalleryStrip({ items, className }) {
289
288
  var _lucidereact = require('lucide-react');
290
289
 
291
290
 
292
- var DefaultMarkdownRenderer = _chunk7RADSQJFcjs.RichMarkdownRenderer;
291
+ var DefaultMarkdownRenderer = _chunk4IXA5CJTcjs.RichMarkdownRenderer;
293
292
  var DEFAULT_ENDPOINT2 = "/api/releases";
294
293
  function ReleaseDetailPage({
295
294
  authorHref,
@@ -308,7 +307,7 @@ function ReleaseDetailPage({
308
307
  }) {
309
308
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
310
309
  const captions = _chunkQTYSYEHKcjs.useCaptions.call(void 0, );
311
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
310
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
312
311
  const seed = initialData == null ? void 0 : initialData;
313
312
  const {
314
313
  data: release,
@@ -415,7 +414,7 @@ function ReleaseDetailPage({
415
414
  backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
416
415
  children: [
417
416
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
418
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.EntityTagBadges, { tags: release.product_release_tags }),
417
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.EntityTagBadges, { tags: release.product_release_tags }),
419
418
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid w-full grid-cols-1 overflow-hidden rounded-md border border-ods-border content-md:grid-cols-4", children: [
420
419
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-3 border-b border-ods-border bg-ods-card p-4 content-md:border-b-0 content-md:border-r", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0", children: [
421
420
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
@@ -477,7 +476,7 @@ function ReleaseDetailPage({
477
476
  ] })
478
477
  ] }) }) }),
479
478
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
480
- _chunk7RADSQJFcjs.ReleaseChangelogSection,
479
+ _chunk4IXA5CJTcjs.ReleaseChangelogSection,
481
480
  {
482
481
  title: "Breaking Changes",
483
482
  entries: breakingChanges || [],
@@ -488,7 +487,7 @@ function ReleaseDetailPage({
488
487
  }
489
488
  ),
490
489
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
491
- _chunk7RADSQJFcjs.ReleaseChangelogSection,
490
+ _chunk4IXA5CJTcjs.ReleaseChangelogSection,
492
491
  {
493
492
  title: "Features Added",
494
493
  entries: featuresAdded || [],
@@ -498,7 +497,7 @@ function ReleaseDetailPage({
498
497
  }
499
498
  ),
500
499
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
501
- _chunk7RADSQJFcjs.ReleaseChangelogSection,
500
+ _chunk4IXA5CJTcjs.ReleaseChangelogSection,
502
501
  {
503
502
  title: "Bugs Fixed",
504
503
  entries: bugFixed || [],
@@ -508,7 +507,7 @@ function ReleaseDetailPage({
508
507
  }
509
508
  ),
510
509
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
511
- _chunk7RADSQJFcjs.ReleaseChangelogSection,
510
+ _chunk4IXA5CJTcjs.ReleaseChangelogSection,
512
511
  {
513
512
  title: "Improvements",
514
513
  entries: improvements || [],
@@ -534,7 +533,7 @@ function ReleaseDetailPage({
534
533
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
535
534
  (() => {
536
535
  const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
537
- return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.FadePreview, { hiddenCount: deliveryCount - 1, collapsedHeight: 300, resetKey: deliveryCount, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: false }) }) });
536
+ return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.FadePreview, { hiddenCount: deliveryCount - 1, collapsedHeight: 300, resetKey: deliveryCount, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: false }) }) });
538
537
  })()
539
538
  ] }),
540
539
  (_optionalChain([githubReleases, 'optionalAccess', _8 => _8.length]) || _optionalChain([knowledgeBaseLinks, 'optionalAccess', _9 => _9.length]) || migrationGuideUrl || documentationUrl) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
@@ -782,7 +781,7 @@ function RoadmapGridSingle({
782
781
  _chunk7Z4EQOIXcjs.RoadmapCard,
783
782
  {
784
783
  item,
785
- id: _chunk3C4U4UW6cjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
784
+ id: _chunkXXM74P3Ncjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
786
785
  userVote: getVote(item.id),
787
786
  onVote: (voteType) => onVote(item.id, voteType),
788
787
  isVoting: votingTasks.has(item.id)
@@ -898,7 +897,7 @@ function RoadmapGrid({
898
897
  );
899
898
  }
900
899
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
901
- _chunk7RADSQJFcjs.Accordion,
900
+ _chunk4IXA5CJTcjs.Accordion,
902
901
  {
903
902
  type: "multiple",
904
903
  value: expandedQuarters,
@@ -908,13 +907,13 @@ function RoadmapGrid({
908
907
  const itemCount = _optionalChain([itemsByQuarter, 'access', _18 => _18[quarter], 'optionalAccess', _19 => _19.length]) || 0;
909
908
  const isExpanded = expandedQuarters.includes(quarter);
910
909
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
911
- _chunk7RADSQJFcjs.AccordionItem,
910
+ _chunk4IXA5CJTcjs.AccordionItem,
912
911
  {
913
912
  value: quarter,
914
913
  id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
915
914
  className: "border-0",
916
915
  children: [
917
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.AccordionTrigger, { className: "w-full p-0 hover:no-underline [&>svg]:ml-auto [&>svg]:h-5 [&>svg]:w-5 [&>svg]:shrink-0 [&>svg]:text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
916
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.AccordionTrigger, { className: "w-full p-0 hover:no-underline [&>svg]:ml-auto [&>svg]:h-5 [&>svg]:w-5 [&>svg]:shrink-0 [&>svg]:text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
918
917
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
919
918
  "h3",
920
919
  {
@@ -944,7 +943,7 @@ function RoadmapGrid({
944
943
  }
945
944
  )
946
945
  ] }) }),
947
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.AccordionContent, { className: "overflow-hidden pb-0 pt-4 data-[state=closed]:animate-none data-[state=open]:animate-none", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
946
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.AccordionContent, { className: "overflow-hidden pb-0 pt-4 data-[state=closed]:animate-none data-[state=open]:animate-none", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
948
947
  RoadmapGridSingle,
949
948
  {
950
949
  items: itemsByQuarter[quarter],
@@ -982,8 +981,9 @@ function RoadmapGridSkeleton({ region = true, count = 4, showLeftMargin = true }
982
981
 
983
982
 
984
983
  var DEFAULT_ENDPOINT3 = "/api/roadmap";
985
- var DEFAULT_SEARCH_PARAM_KEY2 = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.search;
986
- var DEFAULT_STATUS_PARAM_KEY2 = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.status;
984
+ var SYNCED_LIST_CLASS = "flex w-full flex-col gap-[var(--spacing-system-lf)]";
985
+ var DEFAULT_SEARCH_PARAM_KEY2 = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.search;
986
+ var DEFAULT_STATUS_PARAM_KEY2 = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.status;
987
987
  function RoadmapView({
988
988
  endpoint = DEFAULT_ENDPOINT3,
989
989
  initialItems,
@@ -1002,29 +1002,38 @@ function RoadmapView({
1002
1002
  const qs = listParams.toString();
1003
1003
  const url = qs ? `${endpoint}?${qs}` : endpoint;
1004
1004
  const initialData = _react.useMemo.call(void 0, () => initialItems ? { items: initialItems } : void 0, [initialItems]);
1005
- const { data, setData, isLoading, error, reload } = _chunkB27XV2TCcjs.useSelfFetch.call(void 0, url, { initialData });
1005
+ const { data, setData, isLoading, error, reload } = _chunkB27XV2TCcjs.useSelfFetch.call(void 0, url, {
1006
+ initialData
1007
+ });
1006
1008
  const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _20 => _20.items]), () => ( []));
1007
1009
  _chunkVUWPLQBYcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkCSJO7ZGNcjs.STICKY_HEADER_OFFSET_PX });
1010
+ const syncInPage = _chunkCDA2MY7Ucjs.usePageDataSync.call(void 0, _optionalChain([data, 'optionalAccess', _21 => _21.sync]), isLoading && !data);
1008
1011
  if (error) {
1009
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1012
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1010
1013
  }
1011
1014
  if (isLoading && !data) {
1012
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin });
1015
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SYNCED_LIST_CLASS, children: [
1016
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.DataSyncLine, { loading: true }),
1017
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin })
1018
+ ] });
1013
1019
  }
1014
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1015
- RoadmapGrid,
1016
- {
1017
- items,
1018
- showLeftMargin,
1019
- buildRefreshUrl,
1020
- votingOptions,
1021
- groupByQuarter: true,
1022
- hasActiveFilters: search !== "" || status !== "all",
1023
- onItemUpdate: (updated) => setData(
1024
- (prev) => prev ? { ...prev, items: (_nullishCoalesce(prev.items, () => ( []))).map((it) => it.id === updated.id ? updated : it) } : prev
1025
- )
1026
- }
1027
- );
1020
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SYNCED_LIST_CLASS, children: [
1021
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.DataSyncLine, { sync: _optionalChain([data, 'optionalAccess', _22 => _22.sync]) }),
1022
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1023
+ RoadmapGrid,
1024
+ {
1025
+ items,
1026
+ showLeftMargin,
1027
+ buildRefreshUrl,
1028
+ votingOptions,
1029
+ groupByQuarter: true,
1030
+ hasActiveFilters: search !== "" || status !== "all",
1031
+ onItemUpdate: (updated) => setData(
1032
+ (prev) => prev ? { ...prev, items: (_nullishCoalesce(prev.items, () => ( []))).map((it) => it.id === updated.id ? updated : it) } : prev
1033
+ )
1034
+ }
1035
+ )
1036
+ ] });
1028
1037
  }
1029
1038
 
1030
1039
  // src/components/shared/delivery/delivery-table.tsx
@@ -1059,7 +1068,7 @@ function DeliveryTable({ items, isLoading = false }) {
1059
1068
  // → `#delivery-<external_id>`; `useScrollToHash` in
1060
1069
  // `delivery-lists.tsx` finds the row by id and scrolls. The
1061
1070
  // outer wrapper here ONLY exists for the row separators.
1062
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkORC3ZKHTcjs.DeliveryRow, { item, id: _chunk3C4U4UW6cjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1071
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCDA2MY7Ucjs.DeliveryRow, { item, id: _chunkXXM74P3Ncjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1063
1072
  )) }) });
1064
1073
  }
1065
1074
 
@@ -1068,8 +1077,8 @@ function DeliveryTable({ items, isLoading = false }) {
1068
1077
 
1069
1078
  var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
1070
1079
  var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
1071
- var DEFAULT_SEARCH_PARAM_KEY3 = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.search;
1072
- var DEFAULT_TASK_TYPE_PARAM_KEY = _chunk3C4U4UW6cjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1080
+ var DEFAULT_SEARCH_PARAM_KEY3 = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.search;
1081
+ var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkXXM74P3Ncjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1073
1082
  function DeliveryLists({
1074
1083
  completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
1075
1084
  inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
@@ -1082,6 +1091,7 @@ function DeliveryLists({
1082
1091
  const [data, setData] = _react.useState.call(void 0, null);
1083
1092
  const [isLoading, setIsLoading] = _react.useState.call(void 0, true);
1084
1093
  const [error, setError] = _react.useState.call(void 0, null);
1094
+ const [sync, setSync] = _react.useState.call(void 0, null);
1085
1095
  const searchQuery = searchParams.get(searchParamKey) || "";
1086
1096
  const taskTypeFilter = searchParams.get(taskTypeParamKey) || "all";
1087
1097
  _react.useEffect.call(void 0, () => {
@@ -1115,6 +1125,7 @@ function DeliveryLists({
1115
1125
  completed: _nullishCoalesce(completedResult.items, () => ( [])),
1116
1126
  inProgress: _nullishCoalesce(inProgressResult.items, () => ( []))
1117
1127
  });
1128
+ setSync(_nullishCoalesce(_nullishCoalesce(completedResult.sync, () => ( inProgressResult.sync)), () => ( null)));
1118
1129
  } catch (err) {
1119
1130
  if (cancelled) return;
1120
1131
  console.error("Error fetching delivery items:", err);
@@ -1128,19 +1139,21 @@ function DeliveryLists({
1128
1139
  cancelled = true;
1129
1140
  };
1130
1141
  }, [searchQuery, taskTypeFilter, completedApiEndpoint, inProgressApiEndpoint, searchParamKey, taskTypeParamKey]);
1131
- const filteredCompleted = _optionalChain([data, 'optionalAccess', _21 => _21.completed]) || [];
1132
- const filteredInProgress = _optionalChain([data, 'optionalAccess', _22 => _22.inProgress]) || [];
1142
+ const filteredCompleted = _optionalChain([data, 'optionalAccess', _23 => _23.completed]) || [];
1143
+ const filteredInProgress = _optionalChain([data, 'optionalAccess', _24 => _24.inProgress]) || [];
1133
1144
  _chunkVUWPLQBYcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkCSJO7ZGNcjs.STICKY_HEADER_OFFSET_PX });
1145
+ const syncInPage = _chunkCDA2MY7Ucjs.usePageDataSync.call(void 0, sync, isLoading && !data);
1134
1146
  const showCompleted = true;
1135
1147
  const showInProgress = true;
1136
1148
  const hasActiveFilters = searchQuery !== "" || taskTypeFilter !== "all";
1137
1149
  const hasResults = showCompleted && filteredCompleted.length > 0 || showInProgress && filteredInProgress.length > 0;
1138
1150
  if (error) {
1139
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1151
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1140
1152
  }
1141
1153
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[40px]", children: [
1154
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.DataSyncLine, { sync, loading: isLoading && !data }),
1142
1155
  !isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1143
- _chunkORC3ZKHTcjs.ListEmptyState,
1156
+ _chunkCDA2MY7Ucjs.ListEmptyState,
1144
1157
  {
1145
1158
  isFiltered: hasActiveFilters,
1146
1159
  filtered: {
@@ -1355,8 +1368,8 @@ function useLegalDocuments(options = {}) {
1355
1368
 
1356
1369
  function legalDocumentStampLabel(doc) {
1357
1370
  const parts = [
1358
- _optionalChain([doc, 'optionalAccess', _23 => _23.version]) ? `Version ${doc.version}` : null,
1359
- _optionalChain([doc, 'optionalAccess', _24 => _24.effectiveDate]) ? `Effective ${doc.effectiveDate}` : null
1371
+ _optionalChain([doc, 'optionalAccess', _25 => _25.version]) ? `Version ${doc.version}` : null,
1372
+ _optionalChain([doc, 'optionalAccess', _26 => _26.effectiveDate]) ? `Effective ${doc.effectiveDate}` : null
1360
1373
  ].filter((part) => part !== null);
1361
1374
  return parts.length > 0 ? parts.join(" \xB7 ") : null;
1362
1375
  }
@@ -1369,9 +1382,8 @@ function LegalDocumentPage({
1369
1382
  errorTitle: errorTitleProp,
1370
1383
  emptyStateMessage: emptyStateMessageProp,
1371
1384
  initialData = null,
1372
- initialLastUpdatedLabel = null,
1373
1385
  apiEndpoint,
1374
- MarkdownRenderer = _chunk7RADSQJFcjs.RichMarkdownRenderer,
1386
+ MarkdownRenderer = _chunk4IXA5CJTcjs.RichMarkdownRenderer,
1375
1387
  documentsEndpoint,
1376
1388
  backButton,
1377
1389
  faq,
@@ -1380,24 +1392,19 @@ function LegalDocumentPage({
1380
1392
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
1381
1393
  const { data, isLoading, error } = useLegalDocs(docType, { initialData, apiEndpoint });
1382
1394
  const backCfg = backButton === false ? void 0 : {
1383
- label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _25 => _25.label]), () => ( "Back to home")),
1384
- onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _26 => _26.href]), () => ( "/")))
1395
+ label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _27 => _27.label]), () => ( "Back to home")),
1396
+ onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _28 => _28.href]), () => ( "/")))
1385
1397
  };
1386
1398
  const { documents } = useLegalDocuments({ apiEndpoint: documentsEndpoint, enabled: Boolean(documentsEndpoint) });
1387
1399
  const listed = documents.find((doc) => doc.docType === docType);
1388
- const title = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(titleProp, () => ( _optionalChain([data, 'optionalAccess', _27 => _27.title]))), () => ( _optionalChain([listed, 'optionalAccess', _28 => _28.title]))), () => ( "Legal document"));
1389
- const faqTopic = faq && "topic" in faq ? faq.topic : _optionalChain([listed, 'optionalAccess', _29 => _29.faqTopic]);
1400
+ const title = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(titleProp, () => ( _optionalChain([data, 'optionalAccess', _29 => _29.title]))), () => ( _optionalChain([listed, 'optionalAccess', _30 => _30.title]))), () => ( "Legal document"));
1401
+ const faqTopic = faq && "topic" in faq ? faq.topic : _optionalChain([listed, 'optionalAccess', _31 => _31.faqTopic]);
1390
1402
  const faqSlot = faq && faqTopic ? { ...faq, topic: faqTopic } : null;
1391
1403
  const errorTitle = _nullishCoalesce(errorTitleProp, () => ( `Unable to load ${title}`));
1392
1404
  const emptyStateMessage = _nullishCoalesce(emptyStateMessageProp, () => ( `${title} is not available at this time.`));
1393
- const fallbackLastUpdatedLabel = _optionalChain([data, 'optionalAccess', _30 => _30.lastSynced]) != null ? _chunkJHQNUWFMcjs.formatLegalDate.call(void 0, data.lastSynced) : null;
1394
- const effectiveLastUpdatedLabel = _nullishCoalesce(initialLastUpdatedLabel, () => ( fallbackLastUpdatedLabel));
1395
- const subtitle = _nullishCoalesce(legalDocumentStampLabel(data), () => ( (effectiveLastUpdatedLabel ? `Last Updated: ${effectiveLastUpdatedLabel}` : fallbackDescription)));
1405
+ const subtitle = _nullishCoalesce(legalDocumentStampLabel(data), () => ( fallbackDescription));
1396
1406
  const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1397
- _optionalChain([data, 'optionalAccess', _31 => _31.sourceFile]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary opacity-75 text-h6", children: [
1398
- "Source: ",
1399
- data.sourceFile
1400
- ] }),
1407
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.DataSyncLine, { sync: data ? { source: "github", syncedAt: data.lastSynced } : null, loading: isLoading && !data }),
1401
1408
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-1 flex-col items-start gap-6 lg:flex-row lg:gap-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "article", { className: "space-y-2", children: isLoading ? (
1402
1409
  // Loading skeleton matching Knowledge Hub pattern
1403
1410
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6", children: [
@@ -1432,9 +1439,9 @@ function LegalDocumentPage({
1432
1439
  "for more information."
1433
1440
  ] })
1434
1441
  ] }) }) }) }) }),
1435
- faqSlot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRPADJ2E6cjs.FaqSection, { ..._chunkRPADJ2E6cjs.pageFaqProps.call(void 0, faqSlot) })
1442
+ faqSlot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7ITYKDJNcjs.FaqSection, { ..._chunk7ITYKDJNcjs.pageFaqProps.call(void 0, faqSlot) })
1436
1443
  ] });
1437
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1444
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1438
1445
  }
1439
1446
 
1440
1447
 
@@ -5150,7 +5150,7 @@ function ProxyCredentialsForm({ description, saved }) {
5150
5150
 
5151
5151
  // src/components/chat/index.ts
5152
5152
  var LoadedEmbeddableChat = _react.lazy.call(void 0,
5153
- () => Promise.resolve().then(() => _interopRequireWildcard(require("./embeddable-chat-CHHWPGAY.cjs"))).then((module) => ({ default: module.EmbeddableChat }))
5153
+ () => Promise.resolve().then(() => _interopRequireWildcard(require("./embeddable-chat-LTXUQWEK.cjs"))).then((module) => ({ default: module.EmbeddableChat }))
5154
5154
  );
5155
5155
  var EmbeddableChat = _react.forwardRef.call(void 0, (props, ref) => {
5156
5156
  _react.useEffect.call(void 0, () => _chunkQTYSYEHKcjs.holdAskAiOpens.call(void 0, ), []);
@@ -9,9 +9,9 @@ var _chunkSTEJZPIOcjs = require('./chunk-STEJZPIO.cjs');
9
9
  var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
10
10
 
11
11
 
12
- var _chunk7RADSQJFcjs = require('./chunk-7RADSQJF.cjs');
12
+ var _chunk4IXA5CJTcjs = require('./chunk-4IXA5CJT.cjs');
13
13
  require('./chunk-2ANICXS7.cjs');
14
- require('./chunk-NTGIQP7O.cjs');
14
+ require('./chunk-QU5K52OP.cjs');
15
15
  require('./chunk-AXBVN5SW.cjs');
16
16
  require('./chunk-HQQE74RO.cjs');
17
17
  require('./chunk-DEY6XXGO.cjs');
@@ -22,7 +22,7 @@ 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-3C4U4UW6.cjs');
25
+ require('./chunk-XXM74P3N.cjs');
26
26
  require('./chunk-QTYSYEHK.cjs');
27
27
  require('./chunk-F64VMOIB.cjs');
28
28
  require('./chunk-3RFQPQ7Z.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, _chunk7RADSQJFcjs.TenantsTableView, { rows: fixture.rows, getHref, now: fixture.now });
1923
+ const table = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.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,15 +4,15 @@
4
4
  var _chunkDTKGIG4Acjs = require('../../chunk-DTKGIG4A.cjs');
5
5
 
6
6
 
7
- var _chunkHB3QFOHDcjs = require('../../chunk-HB3QFOHD.cjs');
7
+ var _chunkWBSYC6EYcjs = require('../../chunk-WBSYC6EY.cjs');
8
8
 
9
9
 
10
10
 
11
11
 
12
12
 
13
- var _chunk7RADSQJFcjs = require('../../chunk-7RADSQJF.cjs');
13
+ var _chunk4IXA5CJTcjs = require('../../chunk-4IXA5CJT.cjs');
14
14
  require('../../chunk-2ANICXS7.cjs');
15
- require('../../chunk-NTGIQP7O.cjs');
15
+ require('../../chunk-QU5K52OP.cjs');
16
16
  require('../../chunk-AXBVN5SW.cjs');
17
17
  require('../../chunk-HQQE74RO.cjs');
18
18
  require('../../chunk-DEY6XXGO.cjs');
@@ -23,7 +23,7 @@ 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-3C4U4UW6.cjs');
26
+ require('../../chunk-XXM74P3N.cjs');
27
27
 
28
28
 
29
29
 
@@ -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, _chunk7RADSQJFcjs.BenefitCardGrid, { columns: 4, children: [
1930
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4IXA5CJTcjs.BenefitCardGrid, { columns: 4, children: [
1931
1931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1932
- _chunk7RADSQJFcjs.BenefitCard,
1932
+ _chunk4IXA5CJTcjs.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
- _chunk7RADSQJFcjs.BenefitCard,
1941
+ _chunk4IXA5CJTcjs.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
- _chunk7RADSQJFcjs.BenefitCard,
1950
+ _chunk4IXA5CJTcjs.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
- _chunk7RADSQJFcjs.BenefitCard,
1959
+ _chunk4IXA5CJTcjs.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, _chunkHB3QFOHDcjs.ContactForm, { ...DEFAULT_CONTACT_FORM_PROPS, ...contactFormProps })
1968
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWBSYC6EYcjs.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
- _chunk7RADSQJFcjs.StackedRowsPanel,
1978
+ _chunk4IXA5CJTcjs.StackedRowsPanel,
1979
1979
  {
1980
1980
  className,
1981
1981
  title: `${_chunkDTKGIG4Acjs.ENTITY_QUOTES_TITLE} \xB7 ${quotes.length}`,
@@ -2019,7 +2019,7 @@ 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, _chunk7RADSQJFcjs.PersonCell, { size: "lg", name: `"${quote.text}"`, secondary: quote.attribution, avatarUrl: quote.logoUrl }),
2022
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4IXA5CJTcjs.PersonCell, { size: "lg", name: `"${quote.text}"`, secondary: quote.attribution, avatarUrl: quote.logoUrl }),
2023
2023
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.CardHitLayer, { href: quote.href, label: `${quote.text}, ${quote.attribution}`, decorative: ctx.isClone })
2024
2024
  ]
2025
2025
  },