@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.
- package/dist/{chunk-B5UP36KY.cjs → chunk-22E6CSIS.cjs} +12 -12
- package/dist/{chunk-B5UP36KY.cjs.map → chunk-22E6CSIS.cjs.map} +1 -1
- package/dist/{chunk-6KJV6GAJ.js → chunk-5IP7FYUN.js} +4 -4
- package/dist/{chunk-GF6WJ4MG.js → chunk-5Q6BE56A.js} +6 -6
- package/dist/{chunk-NZD2WTJ2.cjs → chunk-5ZVYPAFQ.cjs} +3 -3
- package/dist/{chunk-NZD2WTJ2.cjs.map → chunk-5ZVYPAFQ.cjs.map} +1 -1
- package/dist/{chunk-Z3HUP4G7.cjs → chunk-635CAJ36.cjs} +32 -32
- package/dist/{chunk-Z3HUP4G7.cjs.map → chunk-635CAJ36.cjs.map} +1 -1
- package/dist/{chunk-GO63IT6K.js → chunk-6P335PRA.js} +5 -5
- package/dist/{chunk-5V3LERVC.js → chunk-6X66J23J.js} +4 -4
- package/dist/{chunk-6W4LUHMY.cjs → chunk-7VZZ5S5V.cjs} +206 -206
- package/dist/{chunk-6W4LUHMY.cjs.map → chunk-7VZZ5S5V.cjs.map} +1 -1
- package/dist/{chunk-EV2KJ4D2.cjs → chunk-7WK544AC.cjs} +7 -7
- package/dist/{chunk-EV2KJ4D2.cjs.map → chunk-7WK544AC.cjs.map} +1 -1
- package/dist/{chunk-FOH4MNOZ.js → chunk-C5CTLTKJ.js} +3 -3
- package/dist/{chunk-TFVUM6KK.cjs → chunk-CK4BZRVJ.cjs} +10 -10
- package/dist/{chunk-TFVUM6KK.cjs.map → chunk-CK4BZRVJ.cjs.map} +1 -1
- package/dist/{chunk-Z3GN3MIW.cjs → chunk-D2HYPVYQ.cjs} +81 -81
- package/dist/{chunk-Z3GN3MIW.cjs.map → chunk-D2HYPVYQ.cjs.map} +1 -1
- package/dist/{chunk-WVCDX7FE.cjs → chunk-DAMA3A5Z.cjs} +15 -15
- package/dist/{chunk-WVCDX7FE.cjs.map → chunk-DAMA3A5Z.cjs.map} +1 -1
- package/dist/{chunk-P6IJXAEE.js → chunk-DLJGCDHX.js} +2 -1
- package/dist/{chunk-P6IJXAEE.js.map → chunk-DLJGCDHX.js.map} +1 -1
- package/dist/{chunk-IJPV7OMA.js → chunk-EHB5LETA.js} +591 -466
- package/dist/chunk-EHB5LETA.js.map +1 -0
- package/dist/{chunk-CFUUVLYQ.cjs → chunk-GXKKWFZR.cjs} +33 -33
- package/dist/{chunk-CFUUVLYQ.cjs.map → chunk-GXKKWFZR.cjs.map} +1 -1
- package/dist/{chunk-IZ6F7LOE.js → chunk-IHOSMLBC.js} +3 -3
- package/dist/{chunk-DK3BHDUZ.js → chunk-INIITSC3.js} +3 -3
- package/dist/{chunk-ZHRIFUN3.cjs → chunk-L5TTJXLU.cjs} +28 -28
- package/dist/{chunk-ZHRIFUN3.cjs.map → chunk-L5TTJXLU.cjs.map} +1 -1
- package/dist/{chunk-7UW2BBFI.cjs → chunk-LGIBMKRM.cjs} +59 -59
- package/dist/{chunk-7UW2BBFI.cjs.map → chunk-LGIBMKRM.cjs.map} +1 -1
- package/dist/{chunk-IBQT4RTS.js → chunk-O3PPPILJ.js} +3 -3
- package/dist/{chunk-CWK4QHVF.js → chunk-OABFQXAI.js} +3 -3
- package/dist/{chunk-VEQWH5KH.cjs → chunk-OHLOPLOM.cjs} +30 -30
- package/dist/{chunk-VEQWH5KH.cjs.map → chunk-OHLOPLOM.cjs.map} +1 -1
- package/dist/{chunk-PHLBRU5P.js → chunk-P7FKI2UW.js} +3 -3
- package/dist/{chunk-YH3BUB4W.js → chunk-PTZKMV35.js} +5 -5
- package/dist/{chunk-E5HUHKHH.js → chunk-QGHMHW7R.js} +7 -7
- package/dist/{chunk-VJ4XBTR5.cjs → chunk-QH6PMRGF.cjs} +22 -22
- package/dist/{chunk-VJ4XBTR5.cjs.map → chunk-QH6PMRGF.cjs.map} +1 -1
- package/dist/{chunk-37NYF4W2.cjs → chunk-QRUW4UXB.cjs} +2 -1
- package/dist/chunk-QRUW4UXB.cjs.map +1 -0
- package/dist/{chunk-LJOELK7P.js → chunk-RG7XYHN7.js} +2 -2
- package/dist/{chunk-Y7SFGCF4.cjs → chunk-RRJ6EL63.cjs} +20 -20
- package/dist/{chunk-Y7SFGCF4.cjs.map → chunk-RRJ6EL63.cjs.map} +1 -1
- package/dist/{chunk-FJNX67W2.cjs → chunk-SEW23M5X.cjs} +5 -5
- package/dist/{chunk-FJNX67W2.cjs.map → chunk-SEW23M5X.cjs.map} +1 -1
- package/dist/{chunk-K4WYWTQV.cjs → chunk-TLMPNPYS.cjs} +6 -6
- package/dist/{chunk-K4WYWTQV.cjs.map → chunk-TLMPNPYS.cjs.map} +1 -1
- package/dist/{chunk-SHGMDYCR.js → chunk-VEAA5C5X.js} +2 -2
- package/dist/{chunk-5CC33IJ7.js → chunk-VXRWR56S.js} +6 -6
- package/dist/{chunk-NNYND3I4.js → chunk-XUHLWFEM.js} +3 -3
- package/dist/{chunk-QHL4GYYY.cjs → chunk-ZYFDPD73.cjs} +577 -452
- package/dist/chunk-ZYFDPD73.cjs.map +1 -0
- package/dist/components/case-studies/index.cjs +16 -16
- package/dist/components/case-studies/index.js +4 -4
- package/dist/components/chat/entity-cards/design-doc-card.d.ts +23 -0
- package/dist/components/chat/entity-cards/design-doc-card.d.ts.map +1 -0
- package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/index.d.ts +1 -0
- package/dist/components/chat/entity-cards/index.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +11 -3
- package/dist/components/chat/index.cjs.map +1 -1
- package/dist/components/chat/index.js +10 -2
- package/dist/components/contact/index.cjs +5 -5
- package/dist/components/contact/index.js +4 -4
- package/dist/components/docs/index.cjs +8 -8
- package/dist/components/docs/index.js +7 -7
- package/dist/components/embeds/index.cjs +5 -5
- package/dist/components/embeds/index.js +4 -4
- package/dist/components/faq/index.cjs +5 -5
- package/dist/components/faq/index.js +4 -4
- package/dist/components/features/index.cjs +4 -4
- package/dist/components/features/index.js +3 -3
- package/dist/components/help-center-pages/index.cjs +197 -89
- package/dist/components/help-center-pages/index.cjs.map +1 -1
- package/dist/components/help-center-pages/index.d.ts +1 -1
- package/dist/components/help-center-pages/index.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.js +143 -35
- package/dist/components/help-center-pages/index.js.map +1 -1
- package/dist/components/help-center-pages/trust-center-page.d.ts +6 -0
- package/dist/components/help-center-pages/trust-center-page.d.ts.map +1 -1
- package/dist/components/help-center-pages/trust-center-sections.d.ts +17 -2
- package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
- package/dist/components/index.cjs +62 -54
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +23 -15
- package/dist/components/index.js.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +40 -40
- package/dist/components/meeting-scheduler/index.js +3 -3
- package/dist/components/navigation/index.cjs +7 -7
- package/dist/components/navigation/index.js +6 -6
- package/dist/components/onboarding-guides/index.cjs +7 -7
- package/dist/components/onboarding-guides/index.js +6 -6
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +8 -8
- package/dist/components/tickets/index.js +7 -7
- package/dist/components/ui/index.cjs +12 -4
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.js +11 -3
- package/dist/index.cjs +27 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +25 -7
- package/dist/index.js.map +1 -1
- package/dist/utils/design-doc-readiness.d.ts +20 -0
- package/dist/utils/design-doc-readiness.d.ts.map +1 -0
- package/dist/utils/index.cjs +28 -3
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +24 -4
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/list-url.d.ts.map +1 -1
- package/dist/utils/source-icons.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/chat/entity-cards/design-doc-card.tsx +114 -0
- package/src/components/chat/entity-cards/dispatch.tsx +62 -1
- package/src/components/chat/entity-cards/index.ts +7 -0
- package/src/components/help-center-pages/__tests__/trust-center-page.test.tsx +28 -1
- package/src/components/help-center-pages/index.ts +1 -1
- package/src/components/help-center-pages/trust-center-page.tsx +59 -16
- package/src/components/help-center-pages/trust-center-sections.tsx +159 -8
- package/src/utils/design-doc-readiness.ts +34 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/list-url.ts +1 -0
- package/src/utils/source-icons.ts +3 -0
- package/dist/chunk-37NYF4W2.cjs.map +0 -1
- package/dist/chunk-IJPV7OMA.js.map +0 -1
- package/dist/chunk-QHL4GYYY.cjs.map +0 -1
- /package/dist/{chunk-6KJV6GAJ.js.map → chunk-5IP7FYUN.js.map} +0 -0
- /package/dist/{chunk-GF6WJ4MG.js.map → chunk-5Q6BE56A.js.map} +0 -0
- /package/dist/{chunk-GO63IT6K.js.map → chunk-6P335PRA.js.map} +0 -0
- /package/dist/{chunk-5V3LERVC.js.map → chunk-6X66J23J.js.map} +0 -0
- /package/dist/{chunk-FOH4MNOZ.js.map → chunk-C5CTLTKJ.js.map} +0 -0
- /package/dist/{chunk-IZ6F7LOE.js.map → chunk-IHOSMLBC.js.map} +0 -0
- /package/dist/{chunk-DK3BHDUZ.js.map → chunk-INIITSC3.js.map} +0 -0
- /package/dist/{chunk-IBQT4RTS.js.map → chunk-O3PPPILJ.js.map} +0 -0
- /package/dist/{chunk-CWK4QHVF.js.map → chunk-OABFQXAI.js.map} +0 -0
- /package/dist/{chunk-PHLBRU5P.js.map → chunk-P7FKI2UW.js.map} +0 -0
- /package/dist/{chunk-YH3BUB4W.js.map → chunk-PTZKMV35.js.map} +0 -0
- /package/dist/{chunk-E5HUHKHH.js.map → chunk-QGHMHW7R.js.map} +0 -0
- /package/dist/{chunk-LJOELK7P.js.map → chunk-RG7XYHN7.js.map} +0 -0
- /package/dist/{chunk-SHGMDYCR.js.map → chunk-VEAA5C5X.js.map} +0 -0
- /package/dist/{chunk-5CC33IJ7.js.map → chunk-VXRWR56S.js.map} +0 -0
- /package/dist/{chunk-NNYND3I4.js.map → chunk-XUHLWFEM.js.map} +0 -0
|
@@ -6,38 +6,38 @@
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkLGIBMKRMcjs = require('../../chunk-LGIBMKRM.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var
|
|
14
|
-
require('../../chunk-
|
|
13
|
+
var _chunkGXKKWFZRcjs = require('../../chunk-GXKKWFZR.cjs');
|
|
14
|
+
require('../../chunk-TLMPNPYS.cjs');
|
|
15
15
|
require('../../chunk-WKX7DYFM.cjs');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _chunkCK4BZRVJcjs = require('../../chunk-CK4BZRVJ.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunk5ZVYPAFQcjs = require('../../chunk-5ZVYPAFQ.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var _chunkD2HYPVYQcjs = require('../../chunk-D2HYPVYQ.cjs');
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _chunkQH6PMRGFcjs = require('../../chunk-QH6PMRGF.cjs');
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
var
|
|
32
|
+
var _chunkDAMA3A5Zcjs = require('../../chunk-DAMA3A5Z.cjs');
|
|
33
33
|
require('../../chunk-77BLJHKI.cjs');
|
|
34
|
-
require('../../chunk-
|
|
34
|
+
require('../../chunk-SEW23M5X.cjs');
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
39
|
-
require('../../chunk-
|
|
40
|
-
require('../../chunk-
|
|
38
|
+
var _chunkL5TTJXLUcjs = require('../../chunk-L5TTJXLU.cjs');
|
|
39
|
+
require('../../chunk-7WK544AC.cjs');
|
|
40
|
+
require('../../chunk-22E6CSIS.cjs');
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
var _chunkDOVVKQMZcjs = require('../../chunk-DOVVKQMZ.cjs');
|
|
@@ -55,7 +55,7 @@ var _chunkDOVVKQMZcjs = require('../../chunk-DOVVKQMZ.cjs');
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
var
|
|
58
|
+
var _chunk7VZZ5S5Vcjs = require('../../chunk-7VZZ5S5V.cjs');
|
|
59
59
|
require('../../chunk-GQWM3ECA.cjs');
|
|
60
60
|
require('../../chunk-TON3YCCW.cjs');
|
|
61
61
|
|
|
@@ -74,7 +74,7 @@ require('../../chunk-QVSVRG7I.cjs');
|
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
|
|
77
|
-
var
|
|
77
|
+
var _chunkZYFDPD73cjs = require('../../chunk-ZYFDPD73.cjs');
|
|
78
78
|
|
|
79
79
|
|
|
80
80
|
|
|
@@ -107,7 +107,7 @@ require('../../chunk-XQFFGR6U.cjs');
|
|
|
107
107
|
|
|
108
108
|
|
|
109
109
|
|
|
110
|
-
var
|
|
110
|
+
var _chunkQRUW4UXBcjs = require('../../chunk-QRUW4UXB.cjs');
|
|
111
111
|
require('../../chunk-WLSFBRT5.cjs');
|
|
112
112
|
require('../../chunk-XOGD2AME.cjs');
|
|
113
113
|
require('../../chunk-63QUMV72.cjs');
|
|
@@ -137,9 +137,9 @@ function RoadmapPage({
|
|
|
137
137
|
belowContent,
|
|
138
138
|
shell
|
|
139
139
|
}) {
|
|
140
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
140
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDAMA3A5Zcjs.DevSectionPage, { sectionKey: "roadmap", backButton, title, subtitle, shell, children: [
|
|
141
141
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
142
|
-
|
|
142
|
+
_chunkLGIBMKRMcjs.RoadmapView,
|
|
143
143
|
{
|
|
144
144
|
endpoint: roadmapEndpoint,
|
|
145
145
|
initialItems,
|
|
@@ -165,9 +165,9 @@ function ProductReleasesListPage({
|
|
|
165
165
|
belowContent,
|
|
166
166
|
shell
|
|
167
167
|
}) {
|
|
168
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
168
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDAMA3A5Zcjs.DevSectionPage, { sectionKey: "releases", backButton, title, subtitle, shell, children: [
|
|
169
169
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
170
|
-
|
|
170
|
+
_chunkLGIBMKRMcjs.ProductReleasesView,
|
|
171
171
|
{
|
|
172
172
|
endpoint: releasesEndpoint,
|
|
173
173
|
basePath,
|
|
@@ -190,8 +190,8 @@ function DeliveryPage({
|
|
|
190
190
|
belowContent,
|
|
191
191
|
shell
|
|
192
192
|
}) {
|
|
193
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
194
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
193
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDAMA3A5Zcjs.DevSectionPage, { sectionKey: "delivery", backButton, title, subtitle, shell, children: [
|
|
194
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLGIBMKRMcjs.DeliveryLists, { completedApiEndpoint: completedEndpoint, inProgressApiEndpoint: inProgressEndpoint }),
|
|
195
195
|
belowContent
|
|
196
196
|
] });
|
|
197
197
|
}
|
|
@@ -211,9 +211,9 @@ function OnboardingGuidesCatalogPage({
|
|
|
211
211
|
belowContent,
|
|
212
212
|
shell
|
|
213
213
|
}) {
|
|
214
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
214
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDAMA3A5Zcjs.DevSectionPage, { sectionKey: "onboarding", backButton, title, subtitle, shell, children: [
|
|
215
215
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
216
|
-
|
|
216
|
+
_chunkL5TTJXLUcjs.OnboardingGuidesCatalogView,
|
|
217
217
|
{
|
|
218
218
|
guidesEndpoint,
|
|
219
219
|
sectionsEndpoint,
|
|
@@ -237,8 +237,17 @@ var FRAMEWORK_ICONS = {
|
|
|
237
237
|
"shield-check": _chunkOIDKQ77Rcjs.ShieldCheckIcon,
|
|
238
238
|
"file-shield": _chunkOIDKQ77Rcjs.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,
|
|
@@ -256,7 +265,7 @@ function TrustSection({
|
|
|
256
265
|
style: { scrollMarginTop: _chunkV2A4MAALcjs.STICKY_HEADER_OFFSET_PX },
|
|
257
266
|
children: [
|
|
258
267
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
259
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: headingId, className:
|
|
268
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: headingId, className: _chunkZYFDPD73cjs.SECTION_HEADING_CLASS, children: title }),
|
|
260
269
|
lead ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: lead }) : null
|
|
261
270
|
] }),
|
|
262
271
|
children
|
|
@@ -277,18 +286,18 @@ function AiSection({ practices }) {
|
|
|
277
286
|
}
|
|
278
287
|
]
|
|
279
288
|
}));
|
|
280
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
289
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows });
|
|
281
290
|
}
|
|
282
291
|
function ComplianceSection({ frameworks }) {
|
|
283
292
|
const rows = frameworks.map((framework) => {
|
|
284
|
-
const entry =
|
|
293
|
+
const entry = _chunkQRUW4UXBcjs.trustFrameworkMonitoringEntry.call(void 0, framework.monitoring);
|
|
285
294
|
const Icon = FRAMEWORK_ICONS[entry.icon];
|
|
286
295
|
return {
|
|
287
296
|
id: framework.id,
|
|
288
297
|
columns: [
|
|
289
298
|
{
|
|
290
299
|
key: "framework",
|
|
291
|
-
leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
300
|
+
leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.ComplianceLogo, { names: [framework.standard, framework.label], fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { "aria-hidden": "true" }) }),
|
|
292
301
|
value: framework.label,
|
|
293
302
|
label: _nullishCoalesce(framework.description, () => ( void 0)),
|
|
294
303
|
wrap: true
|
|
@@ -297,12 +306,12 @@ function ComplianceSection({ frameworks }) {
|
|
|
297
306
|
key: "monitoring",
|
|
298
307
|
width: ACTION_COLUMN,
|
|
299
308
|
align: "right",
|
|
300
|
-
content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
309
|
+
content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQRUW4UXBcjs.StatusBadge, { text: _chunkQRUW4UXBcjs.trustFrameworkBadge.call(void 0, framework), colorScheme: entry.color, singleLine: true })
|
|
301
310
|
}
|
|
302
311
|
]
|
|
303
312
|
};
|
|
304
313
|
});
|
|
305
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
314
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows });
|
|
306
315
|
}
|
|
307
316
|
var CONTROL_ROW_CLASS = "h-14 md:h-20 overflow-hidden";
|
|
308
317
|
function controlRows(controls) {
|
|
@@ -335,22 +344,22 @@ function ControlsListSkeleton() {
|
|
|
335
344
|
{
|
|
336
345
|
key: "control",
|
|
337
346
|
content: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
338
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
339
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
347
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-2/3" }),
|
|
348
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Caption, { className: "w-full" })
|
|
340
349
|
] })
|
|
341
350
|
}
|
|
342
351
|
]
|
|
343
352
|
}));
|
|
344
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
353
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows });
|
|
345
354
|
}
|
|
346
355
|
function ControlsSection({ endpoint, seed }) {
|
|
347
356
|
const [domain, setDomain] = _react.useState.call(void 0, seed.domain);
|
|
348
357
|
const [typed, setTyped] = _react.useState.call(void 0, "");
|
|
349
|
-
const query = _chunkV2A4MAALcjs.useDebounce.call(void 0,
|
|
350
|
-
const url =
|
|
351
|
-
const seedUrl =
|
|
358
|
+
const query = _chunkV2A4MAALcjs.useDebounce.call(void 0, _chunkQRUW4UXBcjs.normalizeTrustControlQuery.call(void 0, typed), _chunkQRUW4UXBcjs.TRUST_CENTER_SEARCH_DEBOUNCE_MS);
|
|
359
|
+
const url = _chunkQRUW4UXBcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain, query });
|
|
360
|
+
const seedUrl = _chunkQRUW4UXBcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain: seed.domain, query: "" });
|
|
352
361
|
const answer = _chunkDOVVKQMZcjs.useSelfFetch.call(void 0, url, url === seedUrl ? { initialData: seed } : void 0);
|
|
353
|
-
const typedQuery =
|
|
362
|
+
const typedQuery = _chunkQRUW4UXBcjs.normalizeTrustControlQuery.call(void 0, typed);
|
|
354
363
|
const current = answer.data && !answer.isLoading && typedQuery === query && answer.data.query === query ? answer.data : null;
|
|
355
364
|
const [categories, setCategories] = _react.useState.call(void 0, seed.categories);
|
|
356
365
|
if (current && current.categories !== categories) setCategories(current.categories);
|
|
@@ -369,12 +378,12 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
369
378
|
else summary = `${countLabel(current.controls.length, "passing control")} in ${current.domain}`;
|
|
370
379
|
let body;
|
|
371
380
|
if (answer.error && !current) {
|
|
372
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
381
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.LoadError, { message: "Could not load the controls", onRetry: answer.reload });
|
|
373
382
|
} else if (!current) {
|
|
374
383
|
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsListSkeleton, {});
|
|
375
384
|
} else if (current.controls.length === 0) {
|
|
376
385
|
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
377
|
-
|
|
386
|
+
_chunkDAMA3A5Zcjs.ListEmptyState,
|
|
378
387
|
{
|
|
379
388
|
isFiltered: true,
|
|
380
389
|
filtered: {
|
|
@@ -387,11 +396,11 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
387
396
|
}
|
|
388
397
|
);
|
|
389
398
|
} else {
|
|
390
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
399
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows: controlRows(current.controls) });
|
|
391
400
|
}
|
|
392
401
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
393
402
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
394
|
-
|
|
403
|
+
_chunk7VZZ5S5Vcjs.TabNavigation,
|
|
395
404
|
{
|
|
396
405
|
tabs,
|
|
397
406
|
activeTab,
|
|
@@ -401,7 +410,7 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
401
410
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-s)] md:flex-row md:items-center md:justify-between", children: [
|
|
402
411
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, "aria-live": "polite", children: summary }),
|
|
403
412
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full md:w-80", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
404
|
-
|
|
413
|
+
_chunk7VZZ5S5Vcjs.SearchInput,
|
|
405
414
|
{
|
|
406
415
|
placeholder: "Search controls",
|
|
407
416
|
value: typed,
|
|
@@ -411,7 +420,7 @@ function ControlsSection({ endpoint, seed }) {
|
|
|
411
420
|
}
|
|
412
421
|
) })
|
|
413
422
|
] }),
|
|
414
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
423
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZYFDPD73cjs.ScrollShadow, { className: CONTROLS_LIST_HEIGHT, scrollClassName: "h-full", "data-testid": "controls-list", children: body })
|
|
415
424
|
] });
|
|
416
425
|
}
|
|
417
426
|
function DocumentsSection({
|
|
@@ -450,7 +459,7 @@ function DocumentsSection({
|
|
|
450
459
|
]
|
|
451
460
|
};
|
|
452
461
|
});
|
|
453
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
462
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows });
|
|
454
463
|
}
|
|
455
464
|
function DocumentRequestModal({
|
|
456
465
|
open,
|
|
@@ -459,12 +468,12 @@ function DocumentRequestModal({
|
|
|
459
468
|
onClose
|
|
460
469
|
}) {
|
|
461
470
|
const message = documentTitle ? `I'd like access to: ${documentTitle}.` : "I'd like access to your gated security documentation.";
|
|
462
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
463
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
464
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
471
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkZYFDPD73cjs.Modal, { isOpen: open, onClose, size: "medium", children: [
|
|
472
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZYFDPD73cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZYFDPD73cjs.ModalTitle, { children: "Request access" }) }),
|
|
473
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZYFDPD73cjs.ModalContent, { children: open ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
465
474
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: "We share gated security documents under NDA. Leave your work email and our security team will follow up with access, usually within one business day." }),
|
|
466
475
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
467
|
-
|
|
476
|
+
_chunkQH6PMRGFcjs.ContactForm,
|
|
468
477
|
{
|
|
469
478
|
title: "",
|
|
470
479
|
noBorder: true,
|
|
@@ -481,12 +490,12 @@ function DocumentRequestModal({
|
|
|
481
490
|
] });
|
|
482
491
|
}
|
|
483
492
|
function subprocessorMark({ name, logoUrl }) {
|
|
484
|
-
if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
485
|
-
const logo =
|
|
486
|
-
return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
493
|
+
if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.EntityImage, { src: logoUrl, alt: name, fallbackText: name, sizeClassName: "size-6" });
|
|
494
|
+
const logo = _chunkZYFDPD73cjs.brandLogoForName.call(void 0, name);
|
|
495
|
+
return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.EntityImage, { alt: name, fallbackText: name, sizeClassName: "size-6" });
|
|
487
496
|
}
|
|
488
497
|
function countryWithFlag(country) {
|
|
489
|
-
const flag =
|
|
498
|
+
const flag = _chunk7VZZ5S5Vcjs.getFlagFromCountryName.call(void 0, country);
|
|
490
499
|
return flag ? `${flag} ${country}` : country;
|
|
491
500
|
}
|
|
492
501
|
function SubprocessorsSection({ subprocessors }) {
|
|
@@ -513,11 +522,11 @@ function SubprocessorsSection({ subprocessors }) {
|
|
|
513
522
|
] : []
|
|
514
523
|
]
|
|
515
524
|
}));
|
|
516
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
525
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows });
|
|
517
526
|
}
|
|
518
527
|
function ContactSection({ onContact }) {
|
|
519
528
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
520
|
-
|
|
529
|
+
_chunk7VZZ5S5Vcjs.StackedRowsPanel,
|
|
521
530
|
{
|
|
522
531
|
rows: [
|
|
523
532
|
{
|
|
@@ -542,10 +551,90 @@ function ContactSection({ onContact }) {
|
|
|
542
551
|
}
|
|
543
552
|
);
|
|
544
553
|
}
|
|
554
|
+
function SkeletonSection({ id, children }) {
|
|
555
|
+
const label = _nullishCoalesce(_optionalChain([_chunkQRUW4UXBcjs.TRUST_CENTER_SECTIONS, 'access', _7 => _7.find, 'call', _8 => _8((section) => section.id === id), 'optionalAccess', _9 => _9.label]), () => ( id));
|
|
556
|
+
const lead = TRUST_SECTION_LEADS[id];
|
|
557
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "aria-hidden": "true", className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
558
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
559
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkZYFDPD73cjs.SECTION_HEADING_CLASS, children: label }),
|
|
560
|
+
lead ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "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__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-s)]", children: [
|
|
572
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
573
|
+
_chunk7VZZ5S5Vcjs.UnifiedSkeleton,
|
|
574
|
+
{
|
|
575
|
+
className: shape.mark === "logo" ? "size-10 shrink-0 rounded-full" : "size-6 shrink-0 rounded"
|
|
576
|
+
}
|
|
577
|
+
),
|
|
578
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
579
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-1/3 md:h-6" }),
|
|
580
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.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__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { className: "h-4 w-28 rounded" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { className: "h-6 w-16 rounded md:h-8" })
|
|
589
|
+
}
|
|
590
|
+
]
|
|
591
|
+
}));
|
|
592
|
+
}
|
|
593
|
+
function ControlsSectionSkeleton() {
|
|
594
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
|
|
595
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] overflow-hidden", children: [0, 1, 2, 3].map((index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 p-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-36 md:h-6" }) }, index)) }),
|
|
596
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-s)] md:flex-row md:items-center md:justify-between", children: [
|
|
597
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-48" }),
|
|
598
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { className: "h-11 w-full rounded-[6px] md:h-12 md:w-80" })
|
|
599
|
+
] }),
|
|
600
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CONTROLS_LIST_HEIGHT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsListSkeleton, {}) })
|
|
601
|
+
] });
|
|
602
|
+
}
|
|
603
|
+
function SectionRailSkeleton() {
|
|
604
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkV2A4MAALcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", children: [
|
|
605
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
606
|
+
"div",
|
|
607
|
+
{
|
|
608
|
+
className: "absolute -left-0.5 top-0 w-px bg-ods-border",
|
|
609
|
+
style: { height: _chunkQRUW4UXBcjs.TRUST_CENTER_SECTIONS.length * 40 }
|
|
610
|
+
}
|
|
611
|
+
),
|
|
612
|
+
_chunkQRUW4UXBcjs.TRUST_CENTER_SECTIONS.map((section) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 items-center px-3 py-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-24" }) }, section.id))
|
|
613
|
+
] }) });
|
|
614
|
+
}
|
|
545
615
|
function TrustCenterSkeleton() {
|
|
546
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
547
|
-
/* @__PURE__ */ _jsxruntime.
|
|
548
|
-
|
|
616
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
617
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_STATUS_ROW_CLASS, "aria-hidden": "true", children: [
|
|
618
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5", children: [
|
|
619
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { className: "size-3 rounded-full" }),
|
|
620
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-44" })
|
|
621
|
+
] }),
|
|
622
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "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__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
624
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.UnifiedSkeleton, { className: "size-4 rounded" }),
|
|
625
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-36" })
|
|
626
|
+
] }),
|
|
627
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.TextSkeleton.Body, { className: "w-44" })
|
|
628
|
+
] })
|
|
629
|
+
] }),
|
|
630
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_BODY_GRID_CLASS, "aria-busy": "true", "aria-label": "Loading the trust center", children: [
|
|
631
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: [
|
|
632
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "compliance", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows: skeletonRows(3, { mark: "logo", action: "badge" }) }) }),
|
|
633
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "controls", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsSectionSkeleton, {}) }),
|
|
634
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "documents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StackedRowsPanel, { rows: skeletonRows(2, { mark: "glyph", action: "button" }) }) })
|
|
635
|
+
] }),
|
|
636
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden lg:block", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SectionRailSkeleton, {}) })
|
|
637
|
+
] })
|
|
549
638
|
] });
|
|
550
639
|
}
|
|
551
640
|
|
|
@@ -561,15 +650,15 @@ function visibleSections(data) {
|
|
|
561
650
|
faq: data.faqs.length > 0,
|
|
562
651
|
contact: true
|
|
563
652
|
};
|
|
564
|
-
return
|
|
653
|
+
return _chunkQRUW4UXBcjs.TRUST_CENTER_SECTIONS.filter((section) => hasContent[section.id]);
|
|
565
654
|
}
|
|
566
655
|
function controlsSeed(data) {
|
|
567
656
|
const first = _nullishCoalesce(data.controlDomains[0], () => ( null));
|
|
568
657
|
return {
|
|
569
|
-
domain: _nullishCoalesce(_optionalChain([first, 'optionalAccess',
|
|
658
|
+
domain: _nullishCoalesce(_optionalChain([first, 'optionalAccess', _10 => _10.domain]), () => ( null)),
|
|
570
659
|
query: "",
|
|
571
660
|
categories: data.controlDomains.map((domain) => ({ domain: domain.domain, count: domain.controls.length })),
|
|
572
|
-
controls: _nullishCoalesce(_optionalChain([first, 'optionalAccess',
|
|
661
|
+
controls: _nullishCoalesce(_optionalChain([first, 'optionalAccess', _11 => _11.controls]), () => ( [])),
|
|
573
662
|
total: data.controlDomains.reduce((sum, domain) => sum + domain.controls.length, 0)
|
|
574
663
|
};
|
|
575
664
|
}
|
|
@@ -577,22 +666,21 @@ var MONITORING_CLOCK_TICK_MS = 6e4;
|
|
|
577
666
|
function monitoringStatus(data, hydrated, nowMs) {
|
|
578
667
|
if (!data.connected) return { status: "missing", label: "Live control monitoring is not enabled yet" };
|
|
579
668
|
if (!hydrated) return { status: "missing", label: "Checking monitoring status" };
|
|
580
|
-
return
|
|
669
|
+
return _chunkQRUW4UXBcjs.isTrustCenterMonitored.call(void 0, data, nowMs) ? { status: "success", label: "Controls continuously monitored" } : { status: "pending", label: "Monitoring paused" };
|
|
581
670
|
}
|
|
582
671
|
function TrustCenterPage({
|
|
583
|
-
endpoint =
|
|
672
|
+
endpoint = _chunkQRUW4UXBcjs.TRUST_CENTER_API_PATH,
|
|
584
673
|
initialData,
|
|
585
674
|
shell = true,
|
|
586
675
|
backButton = false,
|
|
587
|
-
title =
|
|
588
|
-
subtitle =
|
|
676
|
+
title = _chunkQRUW4UXBcjs.TRUST_CENTER_TITLE,
|
|
677
|
+
subtitle = _chunkQRUW4UXBcjs.TRUST_CENTER_TAGLINE
|
|
589
678
|
}) {
|
|
590
|
-
const router = _chunkSADRZ4YIcjs.useRouter.call(void 0, );
|
|
591
679
|
const { data, isLoading, error, reload } = _chunkDOVVKQMZcjs.useSelfFetch.call(void 0, endpoint, {
|
|
592
680
|
initialData,
|
|
593
|
-
revalidateOnVisibleAfterMs:
|
|
681
|
+
revalidateOnVisibleAfterMs: _chunkQRUW4UXBcjs.TRUST_CENTER_CACHE_SECONDS * 1e3
|
|
594
682
|
});
|
|
595
|
-
const hydrated =
|
|
683
|
+
const hydrated = _chunkZYFDPD73cjs.useIsHydrated.call(void 0, );
|
|
596
684
|
const [clock, setClock] = _react.useState.call(void 0, () => ({ data, nowMs: Date.now() }));
|
|
597
685
|
if (clock.data !== data) {
|
|
598
686
|
setClock(() => ({ data, nowMs: Date.now() }));
|
|
@@ -608,7 +696,7 @@ function TrustCenterPage({
|
|
|
608
696
|
documentTitle: null
|
|
609
697
|
});
|
|
610
698
|
const sections = _react.useMemo.call(void 0, () => data ? visibleSections(data) : [], [data]);
|
|
611
|
-
const { activeSection } =
|
|
699
|
+
const { activeSection } = _chunkGXKKWFZRcjs.useScrollSpy.call(void 0, sections, { syncHash: true });
|
|
612
700
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
613
701
|
_chunkV2A4MAALcjs.navigateSamePageHash.call(void 0, `#${sectionId}`, { headerOffset: _chunkV2A4MAALcjs.STICKY_HEADER_OFFSET_PX, history: "replace" });
|
|
614
702
|
}, []);
|
|
@@ -617,55 +705,54 @@ function TrustCenterPage({
|
|
|
617
705
|
});
|
|
618
706
|
const openRequest = _react.useCallback.call(void 0, (documentTitle) => setRequest({ open: true, documentTitle }), []);
|
|
619
707
|
const closeRequest = _react.useCallback.call(void 0, () => setRequest((current) => ({ ...current, open: false })), []);
|
|
620
|
-
const
|
|
621
|
-
const hasGatedDocuments = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _9 => _9.documents, 'access', _10 => _10.some, 'call', _11 => _11((document) => document.access === "request")]), () => ( false));
|
|
708
|
+
const hasGatedDocuments = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _12 => _12.documents, 'access', _13 => _13.some, 'call', _14 => _14((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:
|
|
712
|
+
lead: TRUST_SECTION_LEADS.ai,
|
|
626
713
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AiSection, { practices: d.aiPractices })
|
|
627
714
|
},
|
|
628
715
|
compliance: {
|
|
629
|
-
lead:
|
|
716
|
+
lead: TRUST_SECTION_LEADS.compliance,
|
|
630
717
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ComplianceSection, { frameworks: d.frameworks })
|
|
631
718
|
},
|
|
632
719
|
controls: {
|
|
633
|
-
lead:
|
|
720
|
+
lead: TRUST_SECTION_LEADS.controls,
|
|
634
721
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsSection, { endpoint, seed: controlsSeed(d) })
|
|
635
722
|
},
|
|
636
723
|
documents: {
|
|
637
|
-
lead:
|
|
724
|
+
lead: TRUST_SECTION_LEADS.documents,
|
|
638
725
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
639
726
|
DocumentsSection,
|
|
640
727
|
{
|
|
641
728
|
documents: d.documents,
|
|
642
|
-
documentUrl: (document) =>
|
|
729
|
+
documentUrl: (document) => _chunkQRUW4UXBcjs.trustCenterDocumentUrl.call(void 0, endpoint, document),
|
|
643
730
|
onRequest: openRequest
|
|
644
731
|
}
|
|
645
732
|
)
|
|
646
733
|
},
|
|
647
734
|
subprocessors: {
|
|
648
|
-
lead:
|
|
735
|
+
lead: TRUST_SECTION_LEADS.subprocessors,
|
|
649
736
|
render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SubprocessorsSection, { subprocessors: d.subprocessors })
|
|
650
737
|
},
|
|
651
|
-
faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
738
|
+
faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCK4BZRVJcjs.FaqSection, { initialFaqs: d.faqs, heading: null }) },
|
|
652
739
|
contact: { render: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ContactSection, { onContact: () => openRequest(null) }) }
|
|
653
740
|
};
|
|
654
741
|
let body;
|
|
655
742
|
if (error && !data) {
|
|
656
|
-
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
743
|
+
body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.LoadError, { message: "Could not load the trust center", onRetry: reload });
|
|
657
744
|
} else if (!data) {
|
|
658
745
|
body = isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterSkeleton, {}) : null;
|
|
659
746
|
} else {
|
|
660
747
|
const status = monitoringStatus(data, hydrated, nowMs);
|
|
661
748
|
body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
662
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className:
|
|
663
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
749
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_STATUS_ROW_CLASS, children: [
|
|
750
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.StatusIndicator, { status: status.status, label: status.label }),
|
|
664
751
|
data.connected ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
665
|
-
|
|
752
|
+
_chunk7VZZ5S5Vcjs.DataAttribution,
|
|
666
753
|
{
|
|
667
754
|
icon: data.dataSource.logoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
668
|
-
|
|
755
|
+
_chunk7VZZ5S5Vcjs.EntityImage,
|
|
669
756
|
{
|
|
670
757
|
src: data.dataSource.logoUrl,
|
|
671
758
|
alt: data.dataSource.name,
|
|
@@ -678,13 +765,13 @@ function TrustCenterPage({
|
|
|
678
765
|
}
|
|
679
766
|
) : null
|
|
680
767
|
] }),
|
|
681
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className:
|
|
682
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
768
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_BODY_GRID_CLASS, children: [
|
|
769
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: sections.map((section) => {
|
|
683
770
|
const view = views[section.id];
|
|
684
771
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustSection, { id: section.id, title: section.label, lead: view.lead, children: view.render(data) }, section.id);
|
|
685
772
|
}) }),
|
|
686
773
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden lg:block", "aria-label": "Trust center sections", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkV2A4MAALcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
687
|
-
|
|
774
|
+
_chunk5ZVYPAFQcjs.StickySectionNav,
|
|
688
775
|
{
|
|
689
776
|
sections: sections.map((section) => ({ id: section.id, label: section.label })),
|
|
690
777
|
activeSection,
|
|
@@ -703,8 +790,20 @@ function TrustCenterPage({
|
|
|
703
790
|
)
|
|
704
791
|
] });
|
|
705
792
|
}
|
|
793
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, 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 = _chunkSADRZ4YIcjs.useRouter.call(void 0, );
|
|
804
|
+
const backCfg = backButton === false ? void 0 : { label: _nullishCoalesce(backButton.label, () => ( "Back to home")), onClick: () => router.push(_nullishCoalesce(backButton.href, () => ( "/"))) };
|
|
706
805
|
const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
707
|
-
|
|
806
|
+
_chunk7VZZ5S5Vcjs.PageLayout,
|
|
708
807
|
{
|
|
709
808
|
title,
|
|
710
809
|
subtitle,
|
|
@@ -713,11 +812,20 @@ function TrustCenterPage({
|
|
|
713
812
|
titleWrap: true,
|
|
714
813
|
actions,
|
|
715
814
|
actionsVariant: "primary-buttons",
|
|
716
|
-
children
|
|
815
|
+
children
|
|
717
816
|
}
|
|
718
817
|
);
|
|
719
|
-
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
818
|
+
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7VZZ5S5Vcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
|
|
720
819
|
}
|
|
820
|
+
function TrustCenterPageSkeleton({
|
|
821
|
+
shell = true,
|
|
822
|
+
backButton = false,
|
|
823
|
+
title = _chunkQRUW4UXBcjs.TRUST_CENTER_TITLE,
|
|
824
|
+
subtitle = _chunkQRUW4UXBcjs.TRUST_CENTER_TAGLINE
|
|
825
|
+
}) {
|
|
826
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterChrome, { shell, title, subtitle, backButton, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterSkeleton, {}) });
|
|
827
|
+
}
|
|
828
|
+
|
|
721
829
|
|
|
722
830
|
|
|
723
831
|
|
|
@@ -730,5 +838,5 @@ function TrustCenterPage({
|
|
|
730
838
|
|
|
731
839
|
|
|
732
840
|
|
|
733
|
-
exports.DeliveryPage = DeliveryPage; exports.DocsHubPage =
|
|
841
|
+
exports.DeliveryPage = DeliveryPage; exports.DocsHubPage = _chunkGXKKWFZRcjs.DocsHubPage; exports.FaqDocumentPage = _chunkCK4BZRVJcjs.FaqDocumentPage; exports.HelpCenterList = _chunkD2HYPVYQcjs.HelpCenterList; exports.LegalDocumentPage = _chunkLGIBMKRMcjs.LegalDocumentPage; exports.OnboardingGuideDetailView = _chunkL5TTJXLUcjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogPage = OnboardingGuidesCatalogPage; exports.ProductReleasesListPage = ProductReleasesListPage; exports.ReleaseDetailPage = _chunkLGIBMKRMcjs.ReleaseDetailPage; exports.RoadmapPage = RoadmapPage; exports.TrustCenterPage = TrustCenterPage; exports.TrustCenterPageSkeleton = TrustCenterPageSkeleton;
|
|
734
842
|
//# sourceMappingURL=index.cjs.map
|