@flamingo-stack/openframe-frontend-core 0.0.668 → 0.0.669-snapshot.20260927145656

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 (148) hide show
  1. package/dist/{chunk-B5UP36KY.cjs → chunk-22E6CSIS.cjs} +12 -12
  2. package/dist/{chunk-B5UP36KY.cjs.map → chunk-22E6CSIS.cjs.map} +1 -1
  3. package/dist/{chunk-6KJV6GAJ.js → chunk-5IP7FYUN.js} +4 -4
  4. package/dist/{chunk-GF6WJ4MG.js → chunk-5Q6BE56A.js} +6 -6
  5. package/dist/{chunk-NZD2WTJ2.cjs → chunk-5ZVYPAFQ.cjs} +3 -3
  6. package/dist/{chunk-NZD2WTJ2.cjs.map → chunk-5ZVYPAFQ.cjs.map} +1 -1
  7. package/dist/{chunk-Z3HUP4G7.cjs → chunk-635CAJ36.cjs} +32 -32
  8. package/dist/{chunk-Z3HUP4G7.cjs.map → chunk-635CAJ36.cjs.map} +1 -1
  9. package/dist/{chunk-GO63IT6K.js → chunk-6P335PRA.js} +5 -5
  10. package/dist/{chunk-5V3LERVC.js → chunk-6X66J23J.js} +4 -4
  11. package/dist/{chunk-6W4LUHMY.cjs → chunk-7VZZ5S5V.cjs} +206 -206
  12. package/dist/{chunk-6W4LUHMY.cjs.map → chunk-7VZZ5S5V.cjs.map} +1 -1
  13. package/dist/{chunk-EV2KJ4D2.cjs → chunk-7WK544AC.cjs} +7 -7
  14. package/dist/{chunk-EV2KJ4D2.cjs.map → chunk-7WK544AC.cjs.map} +1 -1
  15. package/dist/{chunk-FOH4MNOZ.js → chunk-C5CTLTKJ.js} +3 -3
  16. package/dist/{chunk-TFVUM6KK.cjs → chunk-CK4BZRVJ.cjs} +10 -10
  17. package/dist/{chunk-TFVUM6KK.cjs.map → chunk-CK4BZRVJ.cjs.map} +1 -1
  18. package/dist/{chunk-Z3GN3MIW.cjs → chunk-D2HYPVYQ.cjs} +81 -81
  19. package/dist/{chunk-Z3GN3MIW.cjs.map → chunk-D2HYPVYQ.cjs.map} +1 -1
  20. package/dist/{chunk-WVCDX7FE.cjs → chunk-DAMA3A5Z.cjs} +15 -15
  21. package/dist/{chunk-WVCDX7FE.cjs.map → chunk-DAMA3A5Z.cjs.map} +1 -1
  22. package/dist/{chunk-P6IJXAEE.js → chunk-DLJGCDHX.js} +2 -1
  23. package/dist/{chunk-P6IJXAEE.js.map → chunk-DLJGCDHX.js.map} +1 -1
  24. package/dist/{chunk-IJPV7OMA.js → chunk-EHB5LETA.js} +591 -466
  25. package/dist/chunk-EHB5LETA.js.map +1 -0
  26. package/dist/{chunk-CFUUVLYQ.cjs → chunk-GXKKWFZR.cjs} +33 -33
  27. package/dist/{chunk-CFUUVLYQ.cjs.map → chunk-GXKKWFZR.cjs.map} +1 -1
  28. package/dist/{chunk-IZ6F7LOE.js → chunk-IHOSMLBC.js} +3 -3
  29. package/dist/{chunk-DK3BHDUZ.js → chunk-INIITSC3.js} +3 -3
  30. package/dist/{chunk-ZHRIFUN3.cjs → chunk-L5TTJXLU.cjs} +28 -28
  31. package/dist/{chunk-ZHRIFUN3.cjs.map → chunk-L5TTJXLU.cjs.map} +1 -1
  32. package/dist/{chunk-7UW2BBFI.cjs → chunk-LGIBMKRM.cjs} +59 -59
  33. package/dist/{chunk-7UW2BBFI.cjs.map → chunk-LGIBMKRM.cjs.map} +1 -1
  34. package/dist/{chunk-IBQT4RTS.js → chunk-O3PPPILJ.js} +3 -3
  35. package/dist/{chunk-CWK4QHVF.js → chunk-OABFQXAI.js} +3 -3
  36. package/dist/{chunk-VEQWH5KH.cjs → chunk-OHLOPLOM.cjs} +30 -30
  37. package/dist/{chunk-VEQWH5KH.cjs.map → chunk-OHLOPLOM.cjs.map} +1 -1
  38. package/dist/{chunk-PHLBRU5P.js → chunk-P7FKI2UW.js} +3 -3
  39. package/dist/{chunk-YH3BUB4W.js → chunk-PTZKMV35.js} +5 -5
  40. package/dist/{chunk-E5HUHKHH.js → chunk-QGHMHW7R.js} +7 -7
  41. package/dist/{chunk-VJ4XBTR5.cjs → chunk-QH6PMRGF.cjs} +22 -22
  42. package/dist/{chunk-VJ4XBTR5.cjs.map → chunk-QH6PMRGF.cjs.map} +1 -1
  43. package/dist/{chunk-37NYF4W2.cjs → chunk-QRUW4UXB.cjs} +2 -1
  44. package/dist/chunk-QRUW4UXB.cjs.map +1 -0
  45. package/dist/{chunk-LJOELK7P.js → chunk-RG7XYHN7.js} +2 -2
  46. package/dist/{chunk-Y7SFGCF4.cjs → chunk-RRJ6EL63.cjs} +20 -20
  47. package/dist/{chunk-Y7SFGCF4.cjs.map → chunk-RRJ6EL63.cjs.map} +1 -1
  48. package/dist/{chunk-FJNX67W2.cjs → chunk-SEW23M5X.cjs} +5 -5
  49. package/dist/{chunk-FJNX67W2.cjs.map → chunk-SEW23M5X.cjs.map} +1 -1
  50. package/dist/{chunk-K4WYWTQV.cjs → chunk-TLMPNPYS.cjs} +6 -6
  51. package/dist/{chunk-K4WYWTQV.cjs.map → chunk-TLMPNPYS.cjs.map} +1 -1
  52. package/dist/{chunk-SHGMDYCR.js → chunk-VEAA5C5X.js} +2 -2
  53. package/dist/{chunk-5CC33IJ7.js → chunk-VXRWR56S.js} +6 -6
  54. package/dist/{chunk-NNYND3I4.js → chunk-XUHLWFEM.js} +3 -3
  55. package/dist/{chunk-QHL4GYYY.cjs → chunk-ZYFDPD73.cjs} +577 -452
  56. package/dist/chunk-ZYFDPD73.cjs.map +1 -0
  57. package/dist/components/case-studies/index.cjs +16 -16
  58. package/dist/components/case-studies/index.js +4 -4
  59. package/dist/components/chat/entity-cards/design-doc-card.d.ts +23 -0
  60. package/dist/components/chat/entity-cards/design-doc-card.d.ts.map +1 -0
  61. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  62. package/dist/components/chat/entity-cards/index.d.ts +1 -0
  63. package/dist/components/chat/entity-cards/index.d.ts.map +1 -1
  64. package/dist/components/chat/index.cjs +11 -3
  65. package/dist/components/chat/index.cjs.map +1 -1
  66. package/dist/components/chat/index.js +10 -2
  67. package/dist/components/contact/index.cjs +5 -5
  68. package/dist/components/contact/index.js +4 -4
  69. package/dist/components/docs/index.cjs +8 -8
  70. package/dist/components/docs/index.js +7 -7
  71. package/dist/components/embeds/index.cjs +5 -5
  72. package/dist/components/embeds/index.js +4 -4
  73. package/dist/components/faq/index.cjs +5 -5
  74. package/dist/components/faq/index.js +4 -4
  75. package/dist/components/features/index.cjs +4 -4
  76. package/dist/components/features/index.js +3 -3
  77. package/dist/components/help-center-pages/index.cjs +197 -89
  78. package/dist/components/help-center-pages/index.cjs.map +1 -1
  79. package/dist/components/help-center-pages/index.d.ts +1 -1
  80. package/dist/components/help-center-pages/index.d.ts.map +1 -1
  81. package/dist/components/help-center-pages/index.js +143 -35
  82. package/dist/components/help-center-pages/index.js.map +1 -1
  83. package/dist/components/help-center-pages/trust-center-page.d.ts +6 -0
  84. package/dist/components/help-center-pages/trust-center-page.d.ts.map +1 -1
  85. package/dist/components/help-center-pages/trust-center-sections.d.ts +17 -2
  86. package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
  87. package/dist/components/index.cjs +62 -54
  88. package/dist/components/index.cjs.map +1 -1
  89. package/dist/components/index.js +23 -15
  90. package/dist/components/index.js.map +1 -1
  91. package/dist/components/meeting-scheduler/index.cjs +40 -40
  92. package/dist/components/meeting-scheduler/index.js +3 -3
  93. package/dist/components/navigation/index.cjs +7 -7
  94. package/dist/components/navigation/index.js +6 -6
  95. package/dist/components/onboarding-guides/index.cjs +7 -7
  96. package/dist/components/onboarding-guides/index.js +6 -6
  97. package/dist/components/related-content/index.cjs +3 -3
  98. package/dist/components/related-content/index.js +2 -2
  99. package/dist/components/tickets/index.cjs +8 -8
  100. package/dist/components/tickets/index.js +7 -7
  101. package/dist/components/ui/index.cjs +12 -4
  102. package/dist/components/ui/index.cjs.map +1 -1
  103. package/dist/components/ui/index.js +11 -3
  104. package/dist/index.cjs +27 -9
  105. package/dist/index.cjs.map +1 -1
  106. package/dist/index.js +25 -7
  107. package/dist/index.js.map +1 -1
  108. package/dist/utils/design-doc-readiness.d.ts +20 -0
  109. package/dist/utils/design-doc-readiness.d.ts.map +1 -0
  110. package/dist/utils/index.cjs +28 -3
  111. package/dist/utils/index.cjs.map +1 -1
  112. package/dist/utils/index.d.ts +1 -0
  113. package/dist/utils/index.d.ts.map +1 -1
  114. package/dist/utils/index.js +24 -4
  115. package/dist/utils/index.js.map +1 -1
  116. package/dist/utils/list-url.d.ts.map +1 -1
  117. package/dist/utils/source-icons.d.ts.map +1 -1
  118. package/package.json +1 -1
  119. package/src/components/chat/entity-cards/design-doc-card.tsx +114 -0
  120. package/src/components/chat/entity-cards/dispatch.tsx +62 -1
  121. package/src/components/chat/entity-cards/index.ts +7 -0
  122. package/src/components/help-center-pages/__tests__/trust-center-page.test.tsx +28 -1
  123. package/src/components/help-center-pages/index.ts +1 -1
  124. package/src/components/help-center-pages/trust-center-page.tsx +59 -16
  125. package/src/components/help-center-pages/trust-center-sections.tsx +159 -8
  126. package/src/utils/design-doc-readiness.ts +34 -0
  127. package/src/utils/index.ts +1 -0
  128. package/src/utils/list-url.ts +1 -0
  129. package/src/utils/source-icons.ts +3 -0
  130. package/dist/chunk-37NYF4W2.cjs.map +0 -1
  131. package/dist/chunk-IJPV7OMA.js.map +0 -1
  132. package/dist/chunk-QHL4GYYY.cjs.map +0 -1
  133. /package/dist/{chunk-6KJV6GAJ.js.map → chunk-5IP7FYUN.js.map} +0 -0
  134. /package/dist/{chunk-GF6WJ4MG.js.map → chunk-5Q6BE56A.js.map} +0 -0
  135. /package/dist/{chunk-GO63IT6K.js.map → chunk-6P335PRA.js.map} +0 -0
  136. /package/dist/{chunk-5V3LERVC.js.map → chunk-6X66J23J.js.map} +0 -0
  137. /package/dist/{chunk-FOH4MNOZ.js.map → chunk-C5CTLTKJ.js.map} +0 -0
  138. /package/dist/{chunk-IZ6F7LOE.js.map → chunk-IHOSMLBC.js.map} +0 -0
  139. /package/dist/{chunk-DK3BHDUZ.js.map → chunk-INIITSC3.js.map} +0 -0
  140. /package/dist/{chunk-IBQT4RTS.js.map → chunk-O3PPPILJ.js.map} +0 -0
  141. /package/dist/{chunk-CWK4QHVF.js.map → chunk-OABFQXAI.js.map} +0 -0
  142. /package/dist/{chunk-PHLBRU5P.js.map → chunk-P7FKI2UW.js.map} +0 -0
  143. /package/dist/{chunk-YH3BUB4W.js.map → chunk-PTZKMV35.js.map} +0 -0
  144. /package/dist/{chunk-E5HUHKHH.js.map → chunk-QGHMHW7R.js.map} +0 -0
  145. /package/dist/{chunk-LJOELK7P.js.map → chunk-RG7XYHN7.js.map} +0 -0
  146. /package/dist/{chunk-SHGMDYCR.js.map → chunk-VEAA5C5X.js.map} +0 -0
  147. /package/dist/{chunk-5CC33IJ7.js.map → chunk-VXRWR56S.js.map} +0 -0
  148. /package/dist/{chunk-NNYND3I4.js.map → chunk-XUHLWFEM.js.map} +0 -0
@@ -6,43 +6,42 @@ import {
6
6
  ProductReleasesView,
7
7
  ReleaseDetailPage,
8
8
  RoadmapView
9
- } from "../../chunk-GF6WJ4MG.js";
9
+ } from "../../chunk-5Q6BE56A.js";
10
10
  import {
11
11
  DocsHubPage,
12
12
  useScrollSpy
13
- } from "../../chunk-YH3BUB4W.js";
14
- import "../../chunk-IBQT4RTS.js";
13
+ } from "../../chunk-PTZKMV35.js";
14
+ import "../../chunk-O3PPPILJ.js";
15
15
  import "../../chunk-7EI3NES7.js";
16
16
  import {
17
17
  FaqDocumentPage,
18
18
  FaqSection
19
- } from "../../chunk-FOH4MNOZ.js";
19
+ } from "../../chunk-C5CTLTKJ.js";
20
20
  import {
21
21
  StickySectionNav
22
- } from "../../chunk-LJOELK7P.js";
22
+ } from "../../chunk-RG7XYHN7.js";
23
23
  import {
24
24
  HelpCenterList
25
- } from "../../chunk-E5HUHKHH.js";
25
+ } from "../../chunk-QGHMHW7R.js";
26
26
  import {
27
27
  ContactForm
28
- } from "../../chunk-CWK4QHVF.js";
28
+ } from "../../chunk-OABFQXAI.js";
29
29
  import {
30
30
  DevSectionPage,
31
31
  ListEmptyState
32
- } from "../../chunk-IZ6F7LOE.js";
32
+ } from "../../chunk-IHOSMLBC.js";
33
33
  import "../../chunk-5ONM3FHQ.js";
34
- import "../../chunk-NNYND3I4.js";
34
+ import "../../chunk-XUHLWFEM.js";
35
35
  import {
36
36
  OnboardingGuideDetailView,
37
37
  OnboardingGuidesCatalogView
38
- } from "../../chunk-5CC33IJ7.js";
39
- import "../../chunk-DK3BHDUZ.js";
40
- import "../../chunk-5V3LERVC.js";
38
+ } from "../../chunk-VXRWR56S.js";
39
+ import "../../chunk-INIITSC3.js";
40
+ import "../../chunk-6X66J23J.js";
41
41
  import {
42
42
  useSelfFetch
43
43
  } from "../../chunk-KKSSA4CS.js";
44
44
  import {
45
- CardSkeletonGrid,
46
45
  ComplianceLogo,
47
46
  DataAttribution,
48
47
  EntityImage,
@@ -54,8 +53,9 @@ import {
54
53
  StatusIndicator,
55
54
  TabNavigation,
56
55
  TextSkeleton,
56
+ UnifiedSkeleton,
57
57
  getFlagFromCountryName
58
- } from "../../chunk-PHLBRU5P.js";
58
+ } from "../../chunk-P7FKI2UW.js";
59
59
  import "../../chunk-L2SLFCXP.js";
60
60
  import "../../chunk-BJXDHKUX.js";
61
61
  import {
@@ -74,7 +74,7 @@ import {
74
74
  ScrollShadow,
75
75
  brandLogoForName,
76
76
  useIsHydrated
77
- } from "../../chunk-IJPV7OMA.js";
77
+ } from "../../chunk-EHB5LETA.js";
78
78
  import {
79
79
  STICKY_HEADER_OFFSET_PX,
80
80
  navigateSamePageHash,
@@ -107,7 +107,7 @@ import {
107
107
  trustCenterDocumentUrl,
108
108
  trustFrameworkBadge,
109
109
  trustFrameworkMonitoringEntry
110
- } from "../../chunk-P6IJXAEE.js";
110
+ } from "../../chunk-DLJGCDHX.js";
111
111
  import "../../chunk-MDKCTSDS.js";
112
112
  import "../../chunk-LZLT67PE.js";
113
113
  import "../../chunk-OTX6XNSA.js";
@@ -232,13 +232,22 @@ import { useCallback, useEffect, useMemo, useState as useState2 } from "react";
232
232
 
233
233
  // src/components/help-center-pages/trust-center-sections.tsx
234
234
  import { createElement, useState } from "react";
235
- import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
235
+ import { Fragment, jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
236
236
  var FRAMEWORK_ICONS = {
237
237
  "shield-check": ShieldCheckIcon,
238
238
  "file-shield": FileShieldIcon
239
239
  };
240
- var STACK_CLASSES = "flex flex-col gap-[var(--spacing-system-l)]";
241
240
  var BODY_TEXT = "text-h6 text-ods-text-secondary";
241
+ var TRUST_STATUS_ROW_CLASS = "flex flex-col gap-[var(--spacing-system-xs)] md:flex-row md:items-center md:justify-between";
242
+ var TRUST_BODY_GRID_CLASS = "grid grid-cols-1 gap-[var(--spacing-system-xl)] lg:grid-cols-[minmax(0,1fr)_12rem]";
243
+ var TRUST_SECTIONS_COLUMN_CLASS = "flex min-w-0 flex-col gap-[var(--spacing-system-xxl)]";
244
+ var TRUST_SECTION_LEADS = {
245
+ compliance: "Frameworks we are audited against, and what is next.",
246
+ controls: "Security controls currently passing in continuous monitoring (via Vanta).",
247
+ documents: "Public documents open directly. Gated documents are shared under NDA after one short request.",
248
+ subprocessors: "Third parties that process customer data on our behalf.",
249
+ ai: "How customer data is handled by the AI in our products."
250
+ };
242
251
  var ACTION_COLUMN = "shrink-0 md:w-36";
243
252
  function TrustSection({
244
253
  id,
@@ -542,15 +551,95 @@ function ContactSection({ onContact }) {
542
551
  }
543
552
  );
544
553
  }
554
+ function SkeletonSection({ id, children }) {
555
+ const label = TRUST_CENTER_SECTIONS.find((section) => section.id === id)?.label ?? id;
556
+ const lead = TRUST_SECTION_LEADS[id];
557
+ return /* @__PURE__ */ jsxs5("section", { "aria-hidden": "true", className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
558
+ /* @__PURE__ */ jsxs5("div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
559
+ /* @__PURE__ */ jsx5("h2", { className: SECTION_HEADING_CLASS, children: label }),
560
+ lead ? /* @__PURE__ */ jsx5("p", { className: BODY_TEXT, children: lead }) : null
561
+ ] }),
562
+ children
563
+ ] });
564
+ }
565
+ function skeletonRows(count, shape) {
566
+ return Array.from({ length: count }, (_, index) => ({
567
+ id: `skeleton-${index}`,
568
+ columns: [
569
+ {
570
+ key: "item",
571
+ content: /* @__PURE__ */ jsxs5("div", { className: "flex w-full items-center gap-[var(--spacing-system-s)]", children: [
572
+ /* @__PURE__ */ jsx5(
573
+ UnifiedSkeleton,
574
+ {
575
+ className: shape.mark === "logo" ? "size-10 shrink-0 rounded-full" : "size-6 shrink-0 rounded"
576
+ }
577
+ ),
578
+ /* @__PURE__ */ jsxs5("div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
579
+ /* @__PURE__ */ jsx5(UnifiedSkeleton, { variant: "text", className: "h-5 w-1/3 md:h-6" }),
580
+ /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-1/2" })
581
+ ] })
582
+ ] })
583
+ },
584
+ {
585
+ key: "action",
586
+ width: ACTION_COLUMN,
587
+ align: "right",
588
+ content: shape.action === "badge" ? /* @__PURE__ */ jsx5(UnifiedSkeleton, { className: "h-4 w-28 rounded" }) : /* @__PURE__ */ jsx5(UnifiedSkeleton, { className: "h-6 w-16 rounded md:h-8" })
589
+ }
590
+ ]
591
+ }));
592
+ }
593
+ function ControlsSectionSkeleton() {
594
+ return /* @__PURE__ */ jsxs5("div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
595
+ /* @__PURE__ */ jsx5("div", { className: "flex items-center gap-[var(--spacing-system-xxs)] overflow-hidden", children: [0, 1, 2, 3].map((index) => /* @__PURE__ */ jsx5("div", { className: "shrink-0 p-[var(--spacing-system-m)]", children: /* @__PURE__ */ jsx5(UnifiedSkeleton, { variant: "text", className: "h-5 w-36 md:h-6" }) }, index)) }),
596
+ /* @__PURE__ */ jsxs5("div", { className: "flex flex-col gap-[var(--spacing-system-s)] md:flex-row md:items-center md:justify-between", children: [
597
+ /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-48" }),
598
+ /* @__PURE__ */ jsx5(UnifiedSkeleton, { className: "h-11 w-full rounded-[6px] md:h-12 md:w-80" })
599
+ ] }),
600
+ /* @__PURE__ */ jsx5("div", { className: CONTROLS_LIST_HEIGHT, children: /* @__PURE__ */ jsx5(ControlsListSkeleton, {}) })
601
+ ] });
602
+ }
603
+ function SectionRailSkeleton() {
604
+ return /* @__PURE__ */ jsx5("div", { className: "sticky", style: { top: STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ jsxs5("div", { className: "relative", children: [
605
+ /* @__PURE__ */ jsx5(
606
+ "div",
607
+ {
608
+ className: "absolute -left-0.5 top-0 w-px bg-ods-border",
609
+ style: { height: TRUST_CENTER_SECTIONS.length * 40 }
610
+ }
611
+ ),
612
+ TRUST_CENTER_SECTIONS.map((section) => /* @__PURE__ */ jsx5("div", { className: "flex h-10 items-center px-3 py-2", children: /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-24" }) }, section.id))
613
+ ] }) });
614
+ }
545
615
  function TrustCenterSkeleton() {
546
- return /* @__PURE__ */ jsxs5("div", { className: STACK_CLASSES, children: [
547
- /* @__PURE__ */ jsx5(CardSkeletonGrid, { count: 2, variant: "category" }),
548
- /* @__PURE__ */ jsx5(CardSkeletonGrid, { count: 4, variant: "category" })
616
+ return /* @__PURE__ */ jsxs5(Fragment, { children: [
617
+ /* @__PURE__ */ jsxs5("div", { className: TRUST_STATUS_ROW_CLASS, "aria-hidden": "true", children: [
618
+ /* @__PURE__ */ jsxs5("div", { className: "flex items-center gap-1.5", children: [
619
+ /* @__PURE__ */ jsx5(UnifiedSkeleton, { className: "size-3 rounded-full" }),
620
+ /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-44" })
621
+ ] }),
622
+ /* @__PURE__ */ jsxs5("div", { className: "flex shrink-0 flex-col gap-[var(--spacing-system-xxs)] sm:flex-row sm:items-center sm:gap-[var(--spacing-system-sf)]", children: [
623
+ /* @__PURE__ */ jsxs5("div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
624
+ /* @__PURE__ */ jsx5(UnifiedSkeleton, { className: "size-4 rounded" }),
625
+ /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-36" })
626
+ ] }),
627
+ /* @__PURE__ */ jsx5(TextSkeleton.Body, { className: "w-44" })
628
+ ] })
629
+ ] }),
630
+ /* @__PURE__ */ jsxs5("div", { className: TRUST_BODY_GRID_CLASS, "aria-busy": "true", "aria-label": "Loading the trust center", children: [
631
+ /* @__PURE__ */ jsxs5("div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: [
632
+ /* @__PURE__ */ jsx5(SkeletonSection, { id: "compliance", children: /* @__PURE__ */ jsx5(StackedRowsPanel, { rows: skeletonRows(3, { mark: "logo", action: "badge" }) }) }),
633
+ /* @__PURE__ */ jsx5(SkeletonSection, { id: "controls", children: /* @__PURE__ */ jsx5(ControlsSectionSkeleton, {}) }),
634
+ /* @__PURE__ */ jsx5(SkeletonSection, { id: "documents", children: /* @__PURE__ */ jsx5(StackedRowsPanel, { rows: skeletonRows(2, { mark: "glyph", action: "button" }) }) })
635
+ ] }),
636
+ /* @__PURE__ */ jsx5("aside", { className: "hidden lg:block", "aria-hidden": "true", children: /* @__PURE__ */ jsx5(SectionRailSkeleton, {}) })
637
+ ] })
549
638
  ] });
550
639
  }
551
640
 
552
641
  // src/components/help-center-pages/trust-center-page.tsx
553
- import { Fragment, jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
642
+ import { Fragment as Fragment2, jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
554
643
  function visibleSections(data) {
555
644
  const hasContent = {
556
645
  ai: data.aiPractices.length > 0,
@@ -587,7 +676,6 @@ function TrustCenterPage({
587
676
  title = TRUST_CENTER_TITLE,
588
677
  subtitle = TRUST_CENTER_TAGLINE
589
678
  }) {
590
- const router = useRouter();
591
679
  const { data, isLoading, error, reload } = useSelfFetch(endpoint, {
592
680
  initialData,
593
681
  revalidateOnVisibleAfterMs: TRUST_CENTER_CACHE_SECONDS * 1e3
@@ -617,24 +705,23 @@ function TrustCenterPage({
617
705
  });
618
706
  const openRequest = useCallback((documentTitle) => setRequest({ open: true, documentTitle }), []);
619
707
  const closeRequest = useCallback(() => setRequest((current) => ({ ...current, open: false })), []);
620
- const backCfg = backButton === false ? void 0 : { label: backButton.label ?? "Back to home", onClick: () => router.push(backButton.href ?? "/") };
621
708
  const hasGatedDocuments = data?.documents.some((document) => document.access === "request") ?? false;
622
709
  const actions = hasGatedDocuments ? [{ label: "Request access", variant: "accent", onClick: () => openRequest(null) }] : void 0;
623
710
  const views = {
624
711
  ai: {
625
- lead: "How customer data is handled by the AI in our products.",
712
+ lead: TRUST_SECTION_LEADS.ai,
626
713
  render: (d) => /* @__PURE__ */ jsx6(AiSection, { practices: d.aiPractices })
627
714
  },
628
715
  compliance: {
629
- lead: "Frameworks we are audited against, and what is next.",
716
+ lead: TRUST_SECTION_LEADS.compliance,
630
717
  render: (d) => /* @__PURE__ */ jsx6(ComplianceSection, { frameworks: d.frameworks })
631
718
  },
632
719
  controls: {
633
- lead: "Security controls currently passing in continuous monitoring (via Vanta).",
720
+ lead: TRUST_SECTION_LEADS.controls,
634
721
  render: (d) => /* @__PURE__ */ jsx6(ControlsSection, { endpoint, seed: controlsSeed(d) })
635
722
  },
636
723
  documents: {
637
- lead: "Public documents open directly. Gated documents are shared under NDA after one short request.",
724
+ lead: TRUST_SECTION_LEADS.documents,
638
725
  render: (d) => /* @__PURE__ */ jsx6(
639
726
  DocumentsSection,
640
727
  {
@@ -645,7 +732,7 @@ function TrustCenterPage({
645
732
  )
646
733
  },
647
734
  subprocessors: {
648
- lead: "Third parties that process customer data on our behalf.",
735
+ lead: TRUST_SECTION_LEADS.subprocessors,
649
736
  render: (d) => /* @__PURE__ */ jsx6(SubprocessorsSection, { subprocessors: d.subprocessors })
650
737
  },
651
738
  faq: { render: (d) => /* @__PURE__ */ jsx6(FaqSection, { initialFaqs: d.faqs, heading: null }) },
@@ -658,8 +745,8 @@ function TrustCenterPage({
658
745
  body = isLoading ? /* @__PURE__ */ jsx6(TrustCenterSkeleton, {}) : null;
659
746
  } else {
660
747
  const status = monitoringStatus(data, hydrated, nowMs);
661
- body = /* @__PURE__ */ jsxs6(Fragment, { children: [
662
- /* @__PURE__ */ jsxs6("div", { className: "flex flex-col gap-[var(--spacing-system-xs)] md:flex-row md:items-center md:justify-between", children: [
748
+ body = /* @__PURE__ */ jsxs6(Fragment2, { children: [
749
+ /* @__PURE__ */ jsxs6("div", { className: TRUST_STATUS_ROW_CLASS, children: [
663
750
  /* @__PURE__ */ jsx6(StatusIndicator, { status: status.status, label: status.label }),
664
751
  data.connected ? /* @__PURE__ */ jsx6(
665
752
  DataAttribution,
@@ -678,8 +765,8 @@ function TrustCenterPage({
678
765
  }
679
766
  ) : null
680
767
  ] }),
681
- /* @__PURE__ */ jsxs6("div", { className: "grid grid-cols-1 gap-[var(--spacing-system-xl)] lg:grid-cols-[minmax(0,1fr)_12rem]", children: [
682
- /* @__PURE__ */ jsx6("div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxl)]", children: sections.map((section) => {
768
+ /* @__PURE__ */ jsxs6("div", { className: TRUST_BODY_GRID_CLASS, children: [
769
+ /* @__PURE__ */ jsx6("div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: sections.map((section) => {
683
770
  const view = views[section.id];
684
771
  return /* @__PURE__ */ jsx6(TrustSection, { id: section.id, title: section.label, lead: view.lead, children: view.render(data) }, section.id);
685
772
  }) }),
@@ -703,6 +790,18 @@ function TrustCenterPage({
703
790
  )
704
791
  ] });
705
792
  }
793
+ return /* @__PURE__ */ jsx6(TrustCenterChrome, { shell, title, subtitle, backButton, actions, children: body });
794
+ }
795
+ function TrustCenterChrome({
796
+ shell,
797
+ title,
798
+ subtitle,
799
+ backButton,
800
+ actions,
801
+ children
802
+ }) {
803
+ const router = useRouter();
804
+ const backCfg = backButton === false ? void 0 : { label: backButton.label ?? "Back to home", onClick: () => router.push(backButton.href ?? "/") };
706
805
  const inner = /* @__PURE__ */ jsx6(
707
806
  PageLayout,
708
807
  {
@@ -713,11 +812,19 @@ function TrustCenterPage({
713
812
  titleWrap: true,
714
813
  actions,
715
814
  actionsVariant: "primary-buttons",
716
- children: body
815
+ children
717
816
  }
718
817
  );
719
818
  return shell ? /* @__PURE__ */ jsx6(PageShell, { children: inner }) : /* @__PURE__ */ jsx6("div", { className: "page-shell-content", children: inner });
720
819
  }
820
+ function TrustCenterPageSkeleton({
821
+ shell = true,
822
+ backButton = false,
823
+ title = TRUST_CENTER_TITLE,
824
+ subtitle = TRUST_CENTER_TAGLINE
825
+ }) {
826
+ return /* @__PURE__ */ jsx6(TrustCenterChrome, { shell, title, subtitle, backButton, children: /* @__PURE__ */ jsx6(TrustCenterSkeleton, {}) });
827
+ }
721
828
  export {
722
829
  DeliveryPage,
723
830
  DocsHubPage,
@@ -729,6 +836,7 @@ export {
729
836
  ProductReleasesListPage,
730
837
  ReleaseDetailPage,
731
838
  RoadmapPage,
732
- TrustCenterPage
839
+ TrustCenterPage,
840
+ TrustCenterPageSkeleton
733
841
  };
734
842
  //# sourceMappingURL=index.js.map