@flamingo-stack/openframe-frontend-core 0.0.739 → 0.0.740
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/build/export-map.json +1 -1
- package/dist/{chunk-WMKNZI4G.cjs → chunk-2Y5Y4FLM.cjs} +22 -22
- package/dist/{chunk-ENCAIAMY.cjs → chunk-3ZIQOYNX.cjs} +3 -3
- package/dist/{chunk-UI3HROSI.cjs → chunk-4RLGLB45.cjs} +33 -33
- package/dist/{chunk-FL6UO7IR.cjs → chunk-5SVOGLNK.cjs} +2 -2
- package/dist/{chunk-DTLHY2ZF.cjs → chunk-7UIQPMBJ.cjs} +11 -11
- package/dist/{chunk-UYP3G6PB.cjs → chunk-BDA5F6RM.cjs} +2 -2
- package/dist/{chunk-S2CA5WE4.cjs → chunk-CWRVTQUO.cjs} +9 -1
- package/dist/{chunk-CUDTMCXK.cjs → chunk-D5KEWWLW.cjs} +13 -13
- package/dist/{chunk-UXFJXIUT.cjs → chunk-EKGL5K5K.cjs} +2 -2
- package/dist/{chunk-V2ZFH42N.cjs → chunk-HYBMADYO.cjs} +3 -3
- package/dist/{chunk-Q7GG3WC5.cjs → chunk-LLAC2UZ3.cjs} +5 -5
- package/dist/{chunk-EGN4I5Q7.cjs → chunk-SWR22DOZ.cjs} +134 -46
- package/dist/{chunk-TF7J6VXG.cjs → chunk-UW3YXDC4.cjs} +9 -9
- package/dist/{chunk-SB4VWA5V.cjs → chunk-VC4IV3AY.cjs} +70 -70
- package/dist/{chunk-RGFT3P3L.cjs → chunk-VU4CKUJW.cjs} +55 -55
- package/dist/{chunk-NX6JQT25.cjs → chunk-ZLTCQKTD.cjs} +4 -4
- package/dist/{cloud-tenants-QSFSO3PA.cjs → cloud-tenants-PVXDI5MU.cjs} +3 -3
- package/dist/components/case-studies/index.cjs +11 -11
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/contact/index.cjs +4 -4
- package/dist/components/docs/index.cjs +7 -7
- package/dist/components/embeds/index.cjs +4 -4
- package/dist/components/faq/index.cjs +5 -5
- package/dist/components/features/index.cjs +3 -3
- package/dist/components/help-center-pages/index.cjs +53 -53
- package/dist/components/index.cjs +39 -33
- package/dist/components/meeting-scheduler/index.cjs +17 -17
- package/dist/components/navigation/index.cjs +6 -6
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/product-demo/index.cjs +6 -6
- package/dist/components/shared/legal-document/index.d.ts +2 -1
- package/dist/components/shared/legal-document/index.d.ts.map +1 -1
- package/dist/components/shared/legal-document/index.js +10 -2
- package/dist/components/shared/legal-document/legal-document-page.d.ts +35 -23
- package/dist/components/shared/legal-document/legal-document-page.d.ts.map +1 -1
- package/dist/components/shared/legal-document/legal-document-page.js +27 -10
- package/dist/components/shared/legal-document/use-legal-docs.d.ts +7 -3
- package/dist/components/shared/legal-document/use-legal-docs.d.ts.map +1 -1
- package/dist/components/shared/legal-document/use-legal-docs.js +7 -0
- package/dist/components/shared/legal-document/use-legal-documents.d.ts +31 -0
- package/dist/components/shared/legal-document/use-legal-documents.d.ts.map +1 -0
- package/dist/components/shared/legal-document/use-legal-documents.js +67 -0
- package/dist/components/tickets/index.cjs +8 -8
- package/dist/components/ui/index.cjs +3 -3
- package/dist/{devices-C7XLWJFC.cjs → devices-TWEA7XOR.cjs} +4 -4
- package/dist/index.cjs +11 -7
- package/dist/{knowledge-3QKWTOE7.cjs → knowledge-4GQDBNQB.cjs} +3 -3
- package/dist/{logs-JXD75NR4.cjs → logs-EVU6GJHZ.cjs} +11 -11
- package/dist/{policies-ZPN53PFQ.cjs → policies-OZUEA5YS.cjs} +7 -7
- package/dist/{software-update-CRSIBS3K.cjs → software-update-BLIVYOY2.cjs} +6 -6
- package/dist/utils/index.cjs +8 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/legal-documents.d.ts +18 -0
- package/dist/utils/legal-documents.d.ts.map +1 -0
- package/dist/utils/legal-documents.js +8 -0
- package/package.json +1 -1
- package/src/components/shared/legal-document/index.ts +8 -0
- package/src/components/shared/legal-document/legal-document-page.tsx +83 -44
- package/src/components/shared/legal-document/use-legal-docs.ts +18 -3
- package/src/components/shared/legal-document/use-legal-documents.ts +113 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/legal-documents.ts +21 -0
|
@@ -6,20 +6,20 @@ var _chunkB3XBJCODcjs = require('./chunk-B3XBJCOD.cjs');
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkBDA5F6RMcjs = require('./chunk-BDA5F6RM.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _chunkVC4IV3AYcjs = require('./chunk-VC4IV3AY.cjs');
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
var _chunkDSVNFRY5cjs = require('./chunk-DSVNFRY5.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
@@ -138,14 +138,14 @@ function OnboardingGuidesCatalogView({
|
|
|
138
138
|
});
|
|
139
139
|
};
|
|
140
140
|
const source = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _6 => _6.source]), () => ( "openframe"));
|
|
141
|
-
const docSearch =
|
|
141
|
+
const docSearch = _chunkBDA5F6RMcjs.useDocSearch.call(void 0, {
|
|
142
142
|
source,
|
|
143
143
|
baseRoute: basePath,
|
|
144
144
|
onNavigate: (path) => router.push(path),
|
|
145
145
|
tableIds: ["onboarding-guides"]
|
|
146
146
|
});
|
|
147
147
|
const defaultRenderCard = (guide) => {
|
|
148
|
-
const cta =
|
|
148
|
+
const cta = _chunkCWRVTQUOcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _7 => _7.composeContentUrl]), {
|
|
149
149
|
type: "onboarding_guide",
|
|
150
150
|
slug: guide.slug,
|
|
151
151
|
basePath,
|
|
@@ -156,7 +156,7 @@ function OnboardingGuidesCatalogView({
|
|
|
156
156
|
const renderCardFn = _nullishCoalesce(renderCard, () => ( defaultRenderCard));
|
|
157
157
|
const preControls = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
|
|
158
158
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
159
|
-
|
|
159
|
+
_chunkBDA5F6RMcjs.DocSearchBar,
|
|
160
160
|
{
|
|
161
161
|
placeholder: "Search onboarding guides, releases, case studies\u2026",
|
|
162
162
|
query: docSearch.query,
|
|
@@ -168,7 +168,7 @@ function OnboardingGuidesCatalogView({
|
|
|
168
168
|
}
|
|
169
169
|
),
|
|
170
170
|
sections.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
171
|
-
|
|
171
|
+
_chunkVC4IV3AYcjs.FilterPillRow,
|
|
172
172
|
{
|
|
173
173
|
label: "Section",
|
|
174
174
|
selectedValue: activeSection,
|
|
@@ -178,7 +178,7 @@ function OnboardingGuidesCatalogView({
|
|
|
178
178
|
)
|
|
179
179
|
] });
|
|
180
180
|
if (selfFetch && guidesRes.error) {
|
|
181
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
181
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Failed to load onboarding guides.", onRetry: guidesRes.reload });
|
|
182
182
|
}
|
|
183
183
|
if (selfFetch && guidesRes.data == null && isLoading) {
|
|
184
184
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OnboardingGuidesCatalogSkeleton, {});
|
|
@@ -210,7 +210,7 @@ function OnboardingGuideDetailView({
|
|
|
210
210
|
slug,
|
|
211
211
|
guideEndpoint,
|
|
212
212
|
related = [],
|
|
213
|
-
MarkdownRenderer =
|
|
213
|
+
MarkdownRenderer = _chunkVC4IV3AYcjs.RichMarkdownRenderer,
|
|
214
214
|
renderRelatedCard,
|
|
215
215
|
backHref,
|
|
216
216
|
backLabel = "Back to Getting Started",
|
|
@@ -222,7 +222,7 @@ function OnboardingGuideDetailView({
|
|
|
222
222
|
const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
|
|
223
223
|
const captions = _chunkBV5WZVOPcjs.useCaptions.call(void 0, );
|
|
224
224
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
225
|
-
const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
225
|
+
const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
|
|
226
226
|
const url = initialData ? null : slug && guideEndpoint ? guideEndpoint(slug) : null;
|
|
227
227
|
const { data: guide, isLoading, error, reload } = _chunkYRE3O65Ecjs.useSelfFetch.call(void 0, url, { initialData });
|
|
228
228
|
const { ref: videoWarmupRef } = _chunk3RFQPQ7Zcjs.useVideoWarmup.call(void 0, {
|
|
@@ -230,7 +230,7 @@ function OnboardingGuideDetailView({
|
|
|
230
230
|
supabaseStorageOrigin: _optionalChain([runtime, 'optionalAccess', _9 => _9.endpoints, 'access', _10 => _10.supabaseStorageOrigin])
|
|
231
231
|
});
|
|
232
232
|
if (error || !guide && !isLoading) {
|
|
233
|
-
return renderShell(/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
233
|
+
return renderShell(/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Guide not found.", onRetry: reload }));
|
|
234
234
|
}
|
|
235
235
|
if (!guide) {
|
|
236
236
|
return renderShell(
|
|
@@ -244,7 +244,7 @@ function OnboardingGuideDetailView({
|
|
|
244
244
|
// worst), so it's the terminal fallback — no trailing `|| undefined` needed.
|
|
245
245
|
_chunkI5MSCD57cjs.buildOgPlaceholderUrl.call(void 0, _optionalChain([runtime, 'optionalAccess', _11 => _11.endpoints]), guide.title, { aspect: "wide" });
|
|
246
246
|
const defaultRenderRelatedCard = (g) => {
|
|
247
|
-
const cta =
|
|
247
|
+
const cta = _chunkCWRVTQUOcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _12 => _12.composeContentUrl]), {
|
|
248
248
|
type: "onboarding_guide",
|
|
249
249
|
slug: g.slug,
|
|
250
250
|
basePath,
|
|
@@ -262,7 +262,7 @@ function OnboardingGuideDetailView({
|
|
|
262
262
|
titleWrap: true,
|
|
263
263
|
backButton: { label: backLabel, onClick: () => router.push(resolvedBackHref) },
|
|
264
264
|
children: [
|
|
265
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
265
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.EntityTagBadges, { tags: guide.onboarding_guide_tags }),
|
|
266
266
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
267
267
|
_chunkYXKB5WREcjs.EntityAuthorCard,
|
|
268
268
|
{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
var _chunkBV5WZVOPcjs = require('./chunk-BV5WZVOP.cjs');
|
|
@@ -332,7 +332,7 @@ function useScrollSpy(sections, options = {}) {
|
|
|
332
332
|
// src/components/navigation/multi-level-navigation.tsx
|
|
333
333
|
var _lucidereact = require('lucide-react');
|
|
334
334
|
|
|
335
|
-
var DEFAULT_FOLDER_INDEX_FILE2 =
|
|
335
|
+
var DEFAULT_FOLDER_INDEX_FILE2 = _chunkCWRVTQUOcjs.DEFAULT_FOLDER_INDEX_FILE;
|
|
336
336
|
function isNodeVisuallySelected(node, selectedPath, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE2) {
|
|
337
337
|
const FOLDER_INDEX_FILE = folderIndexFile.toLowerCase();
|
|
338
338
|
if (selectedPath === node.path) {
|
|
@@ -5,7 +5,7 @@ var _chunkVA7OMDZOcjs = require('./chunk-VA7OMDZO.cjs');
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
@@ -110,14 +110,14 @@ function FaqAccordion({ items, defaultOpenIds = [] }) {
|
|
|
110
110
|
|
|
111
111
|
var PICK_ROOT_MARGIN = "600px";
|
|
112
112
|
function faqAskCardShown(assistant) {
|
|
113
|
-
return
|
|
113
|
+
return _chunkCWRVTQUOcjs.assistantAvailable.call(void 0, assistant) && !!assistant.name;
|
|
114
114
|
}
|
|
115
115
|
function FaqAskCard({ topic, exclude, count, title, description, onOpen }) {
|
|
116
116
|
const { ref, inView } = _chunkSA7LDEVJcjs.useInView.call(void 0, { rootMargin: PICK_ROOT_MARGIN });
|
|
117
117
|
const [reached, setReached] = _react.useState.call(void 0, false);
|
|
118
118
|
if (inView && !reached) setReached(true);
|
|
119
119
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
120
|
-
|
|
120
|
+
_chunkCWRVTQUOcjs.AssistantAskPrompts,
|
|
121
121
|
{
|
|
122
122
|
variant: "card",
|
|
123
123
|
topic,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunkVC4IV3AYcjs = require('./chunk-VC4IV3AY.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -17,7 +17,7 @@ var _chunkDSVNFRY5cjs = require('./chunk-DSVNFRY5.cjs');
|
|
|
17
17
|
var _chunkVA7OMDZOcjs = require('./chunk-VA7OMDZO.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
|
|
@@ -203,13 +203,13 @@ function ContactForm({
|
|
|
203
203
|
);
|
|
204
204
|
}),
|
|
205
205
|
className: "flex flex-grow flex-col space-y-4 content-md:space-y-6",
|
|
206
|
-
...
|
|
206
|
+
..._chunkCWRVTQUOcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
207
207
|
children: [
|
|
208
208
|
!showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("name") }),
|
|
209
209
|
!showEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("email") }),
|
|
210
210
|
!showHelpCategory && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("helpCategory") }),
|
|
211
211
|
!showMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("message") }),
|
|
212
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
212
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.HoneypotField, { ...honeypotInputProps }),
|
|
213
213
|
extraTopField,
|
|
214
214
|
showNameEmailRow && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-md:grid-cols-2 content-md:gap-6", children: [
|
|
215
215
|
showName && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
@@ -334,7 +334,7 @@ function ContactForm({
|
|
|
334
334
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.RequiredMark, {})
|
|
335
335
|
] }),
|
|
336
336
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
337
|
-
|
|
337
|
+
_chunkVC4IV3AYcjs.Textarea,
|
|
338
338
|
{
|
|
339
339
|
id: "message",
|
|
340
340
|
...register("message"),
|
|
@@ -5,14 +5,14 @@ var _chunkHF7Z2E4Wcjs = require('./chunk-HF7Z2E4W.cjs');
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkUW3YXDC4cjs = require('./chunk-UW3YXDC4.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
var _chunkWBANGORJcjs = require('./chunk-WBANGORJ.cjs');
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _chunkHYBMADYOcjs = require('./chunk-HYBMADYO.cjs');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
var _chunkB3XBJCODcjs = require('./chunk-B3XBJCOD.cjs');
|
|
@@ -27,7 +27,7 @@ var _chunkB3XBJCODcjs = require('./chunk-B3XBJCOD.cjs');
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _chunkVC4IV3AYcjs = require('./chunk-VC4IV3AY.cjs');
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
var _chunkDSVNFRY5cjs = require('./chunk-DSVNFRY5.cjs');
|
|
@@ -39,7 +39,7 @@ var _chunkVA7OMDZOcjs = require('./chunk-VA7OMDZO.cjs');
|
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
|
|
42
|
-
var
|
|
42
|
+
var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
|
|
@@ -102,8 +102,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
|
|
|
102
102
|
// src/components/shared/product-release/product-releases-view.tsx
|
|
103
103
|
var _jsxruntime = require('react/jsx-runtime');
|
|
104
104
|
var DEFAULT_ENDPOINT = "/api/releases";
|
|
105
|
-
var DEFAULT_SEARCH_PARAM_KEY =
|
|
106
|
-
var DEFAULT_STATUS_PARAM_KEY =
|
|
105
|
+
var DEFAULT_SEARCH_PARAM_KEY = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.search;
|
|
106
|
+
var DEFAULT_STATUS_PARAM_KEY = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
|
|
107
107
|
var DEFAULT_PAGE_PARAM_KEY = "page";
|
|
108
108
|
function ReleaseRow({
|
|
109
109
|
release,
|
|
@@ -112,7 +112,7 @@ function ReleaseRow({
|
|
|
112
112
|
}) {
|
|
113
113
|
const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
|
|
114
114
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
115
|
-
const cta =
|
|
115
|
+
const cta = _chunkCWRVTQUOcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
|
|
116
116
|
type: "product_release",
|
|
117
117
|
slug: release.slug,
|
|
118
118
|
basePath,
|
|
@@ -184,10 +184,10 @@ function ProductReleasesView({
|
|
|
184
184
|
router.replace(`${pathname}?${params.toString()}`, { scroll: false });
|
|
185
185
|
};
|
|
186
186
|
if (error) {
|
|
187
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
187
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
|
|
188
188
|
}
|
|
189
189
|
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,
|
|
190
|
-
|
|
190
|
+
_chunkUW3YXDC4cjs.ListEmptyState,
|
|
191
191
|
{
|
|
192
192
|
isFiltered: hasActiveFilters,
|
|
193
193
|
filtered: {
|
|
@@ -282,7 +282,7 @@ function MediaGalleryStrip({ items, className }) {
|
|
|
282
282
|
var _lucidereact = require('lucide-react');
|
|
283
283
|
|
|
284
284
|
|
|
285
|
-
var DefaultMarkdownRenderer =
|
|
285
|
+
var DefaultMarkdownRenderer = _chunkVC4IV3AYcjs.RichMarkdownRenderer;
|
|
286
286
|
var DEFAULT_ENDPOINT2 = "/api/releases";
|
|
287
287
|
function ReleaseDetailPage({
|
|
288
288
|
authorHref,
|
|
@@ -301,7 +301,7 @@ function ReleaseDetailPage({
|
|
|
301
301
|
}) {
|
|
302
302
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
303
303
|
const captions = _chunkBV5WZVOPcjs.useCaptions.call(void 0, );
|
|
304
|
-
const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
304
|
+
const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
|
|
305
305
|
const seed = initialData == null ? void 0 : initialData;
|
|
306
306
|
const {
|
|
307
307
|
data: release,
|
|
@@ -408,7 +408,7 @@ function ReleaseDetailPage({
|
|
|
408
408
|
backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
|
|
409
409
|
children: [
|
|
410
410
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
|
|
411
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
411
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.EntityTagBadges, { tags: release.product_release_tags }),
|
|
412
412
|
/* @__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: [
|
|
413
413
|
/* @__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: [
|
|
414
414
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
|
|
@@ -470,7 +470,7 @@ function ReleaseDetailPage({
|
|
|
470
470
|
] })
|
|
471
471
|
] }) }) }),
|
|
472
472
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
473
|
-
|
|
473
|
+
_chunkVC4IV3AYcjs.ReleaseChangelogSection,
|
|
474
474
|
{
|
|
475
475
|
title: "Breaking Changes",
|
|
476
476
|
entries: breakingChanges || [],
|
|
@@ -481,7 +481,7 @@ function ReleaseDetailPage({
|
|
|
481
481
|
}
|
|
482
482
|
),
|
|
483
483
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
484
|
-
|
|
484
|
+
_chunkVC4IV3AYcjs.ReleaseChangelogSection,
|
|
485
485
|
{
|
|
486
486
|
title: "Features Added",
|
|
487
487
|
entries: featuresAdded || [],
|
|
@@ -491,7 +491,7 @@ function ReleaseDetailPage({
|
|
|
491
491
|
}
|
|
492
492
|
),
|
|
493
493
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
494
|
-
|
|
494
|
+
_chunkVC4IV3AYcjs.ReleaseChangelogSection,
|
|
495
495
|
{
|
|
496
496
|
title: "Bugs Fixed",
|
|
497
497
|
entries: bugFixed || [],
|
|
@@ -501,7 +501,7 @@ function ReleaseDetailPage({
|
|
|
501
501
|
}
|
|
502
502
|
),
|
|
503
503
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
504
|
-
|
|
504
|
+
_chunkVC4IV3AYcjs.ReleaseChangelogSection,
|
|
505
505
|
{
|
|
506
506
|
title: "Improvements",
|
|
507
507
|
entries: improvements || [],
|
|
@@ -527,7 +527,7 @@ function ReleaseDetailPage({
|
|
|
527
527
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
|
|
528
528
|
(() => {
|
|
529
529
|
const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
|
|
530
|
-
return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
530
|
+
return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.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 }) }) });
|
|
531
531
|
})()
|
|
532
532
|
] }),
|
|
533
533
|
(_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: [
|
|
@@ -781,7 +781,7 @@ function RoadmapGridSingle({
|
|
|
781
781
|
_chunkYXKB5WREcjs.RoadmapCard,
|
|
782
782
|
{
|
|
783
783
|
item,
|
|
784
|
-
id:
|
|
784
|
+
id: _chunkCWRVTQUOcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
|
|
785
785
|
userVote: getVote(item.id),
|
|
786
786
|
onVote: (voteType) => onVote(item.id, voteType),
|
|
787
787
|
isVoting: votingTasks.has(item.id)
|
|
@@ -897,7 +897,7 @@ function RoadmapGrid({
|
|
|
897
897
|
);
|
|
898
898
|
}
|
|
899
899
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
900
|
-
|
|
900
|
+
_chunkVC4IV3AYcjs.Accordion,
|
|
901
901
|
{
|
|
902
902
|
type: "multiple",
|
|
903
903
|
value: expandedQuarters,
|
|
@@ -907,13 +907,13 @@ function RoadmapGrid({
|
|
|
907
907
|
const itemCount = _optionalChain([itemsByQuarter, 'access', _18 => _18[quarter], 'optionalAccess', _19 => _19.length]) || 0;
|
|
908
908
|
const isExpanded = expandedQuarters.includes(quarter);
|
|
909
909
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
910
|
-
|
|
910
|
+
_chunkVC4IV3AYcjs.AccordionItem,
|
|
911
911
|
{
|
|
912
912
|
value: quarter,
|
|
913
913
|
id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
|
|
914
914
|
className: "border-0",
|
|
915
915
|
children: [
|
|
916
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
916
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.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: [
|
|
917
917
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
918
918
|
"h3",
|
|
919
919
|
{
|
|
@@ -943,7 +943,7 @@ function RoadmapGrid({
|
|
|
943
943
|
}
|
|
944
944
|
)
|
|
945
945
|
] }) }),
|
|
946
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
946
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.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,
|
|
947
947
|
RoadmapGridSingle,
|
|
948
948
|
{
|
|
949
949
|
items: itemsByQuarter[quarter],
|
|
@@ -995,8 +995,8 @@ function RoadmapGridSkeleton({ count = 4, showLeftMargin = true }) {
|
|
|
995
995
|
|
|
996
996
|
|
|
997
997
|
var DEFAULT_ENDPOINT3 = "/api/roadmap";
|
|
998
|
-
var DEFAULT_SEARCH_PARAM_KEY2 =
|
|
999
|
-
var DEFAULT_STATUS_PARAM_KEY2 =
|
|
998
|
+
var DEFAULT_SEARCH_PARAM_KEY2 = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.search;
|
|
999
|
+
var DEFAULT_STATUS_PARAM_KEY2 = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.status;
|
|
1000
1000
|
function RoadmapView({
|
|
1001
1001
|
endpoint = DEFAULT_ENDPOINT3,
|
|
1002
1002
|
initialItems,
|
|
@@ -1019,7 +1019,7 @@ function RoadmapView({
|
|
|
1019
1019
|
const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _20 => _20.items]), () => ( []));
|
|
1020
1020
|
_chunkVA7OMDZOcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkSA7LDEVJcjs.STICKY_HEADER_OFFSET_PX });
|
|
1021
1021
|
if (error) {
|
|
1022
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1022
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
|
|
1023
1023
|
}
|
|
1024
1024
|
if (isLoading && !data) {
|
|
1025
1025
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin });
|
|
@@ -1072,7 +1072,7 @@ function DeliveryTable({ items, isLoading = false }) {
|
|
|
1072
1072
|
// → `#delivery-<external_id>`; `useScrollToHash` in
|
|
1073
1073
|
// `delivery-lists.tsx` finds the row by id and scrolls. The
|
|
1074
1074
|
// outer wrapper here ONLY exists for the row separators.
|
|
1075
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1075
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUW3YXDC4cjs.DeliveryRow, { item, id: _chunkCWRVTQUOcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
|
|
1076
1076
|
)) }) });
|
|
1077
1077
|
}
|
|
1078
1078
|
|
|
@@ -1081,8 +1081,8 @@ function DeliveryTable({ items, isLoading = false }) {
|
|
|
1081
1081
|
|
|
1082
1082
|
var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
|
|
1083
1083
|
var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
|
|
1084
|
-
var DEFAULT_SEARCH_PARAM_KEY3 =
|
|
1085
|
-
var DEFAULT_TASK_TYPE_PARAM_KEY =
|
|
1084
|
+
var DEFAULT_SEARCH_PARAM_KEY3 = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.search;
|
|
1085
|
+
var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkCWRVTQUOcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
|
|
1086
1086
|
function DeliveryLists({
|
|
1087
1087
|
completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
|
|
1088
1088
|
inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
|
|
@@ -1149,11 +1149,11 @@ function DeliveryLists({
|
|
|
1149
1149
|
const hasActiveFilters = searchQuery !== "" || taskTypeFilter !== "all";
|
|
1150
1150
|
const hasResults = showCompleted && filteredCompleted.length > 0 || showInProgress && filteredInProgress.length > 0;
|
|
1151
1151
|
if (error) {
|
|
1152
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1152
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
|
|
1153
1153
|
}
|
|
1154
1154
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[40px]", children: [
|
|
1155
1155
|
!isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1156
|
-
|
|
1156
|
+
_chunkUW3YXDC4cjs.ListEmptyState,
|
|
1157
1157
|
{
|
|
1158
1158
|
isFiltered: hasActiveFilters,
|
|
1159
1159
|
filtered: {
|
|
@@ -1230,6 +1230,8 @@ function toLegalDocument(payload, docType) {
|
|
|
1230
1230
|
githubSha: typeof githubSha === "string" ? githubSha : null,
|
|
1231
1231
|
sections,
|
|
1232
1232
|
docType: _nullishCoalesce(readString(payload, "docType"), () => ( docType)),
|
|
1233
|
+
version: _nullishCoalesce(readString(payload, "version"), () => ( null)),
|
|
1234
|
+
effectiveDate: _nullishCoalesce(readString(payload, "effectiveDate"), () => ( null)),
|
|
1233
1235
|
meta: {
|
|
1234
1236
|
sectionsCount: typeof sectionsCount === "number" ? sectionsCount : sections.length,
|
|
1235
1237
|
contentLength: typeof contentLength === "number" ? contentLength : content.length,
|
|
@@ -1260,6 +1262,11 @@ function useLegalDocs(docType, options = {}) {
|
|
|
1260
1262
|
const fetchDocument = async () => {
|
|
1261
1263
|
try {
|
|
1262
1264
|
const response = await _chunkPX7FY655cjs.contentFetch.call(void 0, effectiveEndpoint);
|
|
1265
|
+
if (response.status === 404) {
|
|
1266
|
+
if (!isCurrent()) return;
|
|
1267
|
+
setData(null);
|
|
1268
|
+
return;
|
|
1269
|
+
}
|
|
1263
1270
|
if (!response.ok) {
|
|
1264
1271
|
throw new Error(`Failed to fetch ${docType} document: ${response.status} ${response.statusText}`);
|
|
1265
1272
|
}
|
|
@@ -1294,20 +1301,91 @@ function useLegalDocs(docType, options = {}) {
|
|
|
1294
1301
|
};
|
|
1295
1302
|
}
|
|
1296
1303
|
|
|
1304
|
+
// src/components/shared/legal-document/use-legal-documents.ts
|
|
1305
|
+
|
|
1306
|
+
function isRecord2(value) {
|
|
1307
|
+
return typeof value === "object" && value !== null;
|
|
1308
|
+
}
|
|
1309
|
+
function text(source, key) {
|
|
1310
|
+
const value = source[key];
|
|
1311
|
+
return typeof value === "string" && value ? value : null;
|
|
1312
|
+
}
|
|
1313
|
+
function toLegalDocumentSummaries(payload) {
|
|
1314
|
+
const rows = isRecord2(payload) ? payload.documents : null;
|
|
1315
|
+
if (!Array.isArray(rows)) return [];
|
|
1316
|
+
const documents = [];
|
|
1317
|
+
for (const row of rows) {
|
|
1318
|
+
if (!isRecord2(row)) continue;
|
|
1319
|
+
const docType = text(row, "docType");
|
|
1320
|
+
const title = text(row, "title");
|
|
1321
|
+
if (!docType || !title) continue;
|
|
1322
|
+
documents.push({
|
|
1323
|
+
docType,
|
|
1324
|
+
title,
|
|
1325
|
+
summary: _nullishCoalesce(text(row, "summary"), () => ( "")),
|
|
1326
|
+
route: _nullishCoalesce(text(row, "route"), () => ( "")),
|
|
1327
|
+
sourceFile: _nullishCoalesce(text(row, "sourceFile"), () => ( "")),
|
|
1328
|
+
faqTopic: text(row, "faqTopic"),
|
|
1329
|
+
version: text(row, "version"),
|
|
1330
|
+
effectiveDate: text(row, "effectiveDate"),
|
|
1331
|
+
published: row.published === true
|
|
1332
|
+
});
|
|
1333
|
+
}
|
|
1334
|
+
return documents;
|
|
1335
|
+
}
|
|
1336
|
+
function useLegalDocuments(options = {}) {
|
|
1337
|
+
const endpoint = _nullishCoalesce(options.apiEndpoint, () => ( "/api/legal"));
|
|
1338
|
+
const enabled = _nullishCoalesce(options.enabled, () => ( true));
|
|
1339
|
+
const [state, setState] = _react.useState.call(void 0, { documents: [], isLoading: enabled, error: null });
|
|
1340
|
+
_react.useEffect.call(void 0, () => {
|
|
1341
|
+
let current = enabled;
|
|
1342
|
+
const load = async () => {
|
|
1343
|
+
try {
|
|
1344
|
+
const response = await _chunkPX7FY655cjs.contentFetch.call(void 0, endpoint);
|
|
1345
|
+
if (!response.ok) throw new Error(`Failed to fetch legal documents: ${response.status} ${response.statusText}`);
|
|
1346
|
+
const payload = await response.json();
|
|
1347
|
+
if (current) setState({ documents: toLegalDocumentSummaries(payload), isLoading: false, error: null });
|
|
1348
|
+
} catch (err) {
|
|
1349
|
+
console.error("Error fetching legal documents:", err);
|
|
1350
|
+
if (current) {
|
|
1351
|
+
setState({
|
|
1352
|
+
documents: [],
|
|
1353
|
+
isLoading: false,
|
|
1354
|
+
error: err instanceof Error ? err.message : "Unknown error occurred"
|
|
1355
|
+
});
|
|
1356
|
+
}
|
|
1357
|
+
}
|
|
1358
|
+
};
|
|
1359
|
+
if (enabled) void load();
|
|
1360
|
+
return () => {
|
|
1361
|
+
current = false;
|
|
1362
|
+
};
|
|
1363
|
+
}, [endpoint, enabled]);
|
|
1364
|
+
return state;
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1297
1367
|
// src/components/shared/legal-document/legal-document-page.tsx
|
|
1298
1368
|
|
|
1369
|
+
function legalDocumentStampLabel(doc) {
|
|
1370
|
+
const parts = [
|
|
1371
|
+
_optionalChain([doc, 'optionalAccess', _23 => _23.version]) ? `Version ${doc.version}` : null,
|
|
1372
|
+
_optionalChain([doc, 'optionalAccess', _24 => _24.effectiveDate]) ? `Effective ${doc.effectiveDate}` : null
|
|
1373
|
+
].filter((part) => part !== null);
|
|
1374
|
+
return parts.length > 0 ? parts.join(" \xB7 ") : null;
|
|
1375
|
+
}
|
|
1299
1376
|
function LegalDocumentPage({
|
|
1300
1377
|
docType,
|
|
1301
|
-
title,
|
|
1302
|
-
fallbackDescription,
|
|
1378
|
+
title: titleProp,
|
|
1379
|
+
fallbackDescription = "",
|
|
1303
1380
|
contactEmail,
|
|
1304
|
-
errorContactPrompt,
|
|
1305
|
-
errorTitle,
|
|
1306
|
-
emptyStateMessage,
|
|
1381
|
+
errorContactPrompt = "For questions about this document, please contact:",
|
|
1382
|
+
errorTitle: errorTitleProp,
|
|
1383
|
+
emptyStateMessage: emptyStateMessageProp,
|
|
1307
1384
|
initialData = null,
|
|
1308
1385
|
initialLastUpdatedLabel = null,
|
|
1309
1386
|
apiEndpoint,
|
|
1310
|
-
MarkdownRenderer =
|
|
1387
|
+
MarkdownRenderer = _chunkVC4IV3AYcjs.RichMarkdownRenderer,
|
|
1388
|
+
documentsEndpoint,
|
|
1311
1389
|
backButton,
|
|
1312
1390
|
faq,
|
|
1313
1391
|
shell = true
|
|
@@ -1315,14 +1393,21 @@ function LegalDocumentPage({
|
|
|
1315
1393
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
1316
1394
|
const { data, isLoading, error } = useLegalDocs(docType, { initialData, apiEndpoint });
|
|
1317
1395
|
const backCfg = backButton === false ? void 0 : {
|
|
1318
|
-
label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess',
|
|
1319
|
-
onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess',
|
|
1396
|
+
label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _25 => _25.label]), () => ( "Back to home")),
|
|
1397
|
+
onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _26 => _26.href]), () => ( "/")))
|
|
1320
1398
|
};
|
|
1321
|
-
const
|
|
1399
|
+
const { documents } = useLegalDocuments({ apiEndpoint: documentsEndpoint, enabled: Boolean(documentsEndpoint) });
|
|
1400
|
+
const listed = documents.find((doc) => doc.docType === docType);
|
|
1401
|
+
const title = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(titleProp, () => ( _optionalChain([data, 'optionalAccess', _27 => _27.title]))), () => ( _optionalChain([listed, 'optionalAccess', _28 => _28.title]))), () => ( "Legal document"));
|
|
1402
|
+
const faqTopic = faq && "topic" in faq ? faq.topic : _optionalChain([listed, 'optionalAccess', _29 => _29.faqTopic]);
|
|
1403
|
+
const faqSlot = faq && faqTopic ? { ...faq, topic: faqTopic } : null;
|
|
1404
|
+
const errorTitle = _nullishCoalesce(errorTitleProp, () => ( `Unable to load ${title}`));
|
|
1405
|
+
const emptyStateMessage = _nullishCoalesce(emptyStateMessageProp, () => ( `${title} is not available at this time.`));
|
|
1406
|
+
const fallbackLastUpdatedLabel = _optionalChain([data, 'optionalAccess', _30 => _30.lastSynced]) != null ? _chunk7ZFCR7UYcjs.formatLegalDate.call(void 0, data.lastSynced) : null;
|
|
1322
1407
|
const effectiveLastUpdatedLabel = _nullishCoalesce(initialLastUpdatedLabel, () => ( fallbackLastUpdatedLabel));
|
|
1323
|
-
const subtitle = effectiveLastUpdatedLabel ? `Last Updated: ${effectiveLastUpdatedLabel}` : fallbackDescription;
|
|
1408
|
+
const subtitle = _nullishCoalesce(legalDocumentStampLabel(data), () => ( (effectiveLastUpdatedLabel ? `Last Updated: ${effectiveLastUpdatedLabel}` : fallbackDescription)));
|
|
1324
1409
|
const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDSVNFRY5cjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
|
|
1325
|
-
_optionalChain([data, 'optionalAccess',
|
|
1410
|
+
_optionalChain([data, 'optionalAccess', _31 => _31.sourceFile]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary opacity-75 text-h6", children: [
|
|
1326
1411
|
"Source: ",
|
|
1327
1412
|
data.sourceFile
|
|
1328
1413
|
] }),
|
|
@@ -1346,13 +1431,13 @@ function LegalDocumentPage({
|
|
|
1346
1431
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "mb-2 text-ods-error", children: errorTitle }),
|
|
1347
1432
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-error text-h6", children: error })
|
|
1348
1433
|
] }),
|
|
1349
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-secondary", children: [
|
|
1434
|
+
contactEmail && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-secondary", children: [
|
|
1350
1435
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { children: errorContactPrompt }),
|
|
1351
1436
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href: `mailto:${contactEmail}`, className: "text-ods-accent hover:underline", children: contactEmail })
|
|
1352
1437
|
] })
|
|
1353
1438
|
] }) : data ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: data.content, sectionIds: data.sections || [], demoteMarkdownH1ToH2: true }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "py-16 text-center text-ods-text-secondary", children: [
|
|
1354
1439
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4", children: emptyStateMessage }),
|
|
1355
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "mt-2", children: [
|
|
1440
|
+
contactEmail && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "mt-2", children: [
|
|
1356
1441
|
"Please contact",
|
|
1357
1442
|
" ",
|
|
1358
1443
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href: `mailto:${contactEmail}`, className: "text-ods-accent hover:underline", children: contactEmail }),
|
|
@@ -1360,9 +1445,9 @@ function LegalDocumentPage({
|
|
|
1360
1445
|
"for more information."
|
|
1361
1446
|
] })
|
|
1362
1447
|
] }) }) }) }) }),
|
|
1363
|
-
|
|
1448
|
+
faqSlot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHYBMADYOcjs.FaqSection, { ..._chunkHYBMADYOcjs.pageFaqProps.call(void 0, faqSlot) })
|
|
1364
1449
|
] });
|
|
1365
|
-
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1450
|
+
return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
|
|
1366
1451
|
}
|
|
1367
1452
|
|
|
1368
1453
|
|
|
@@ -1378,4 +1463,7 @@ function LegalDocumentPage({
|
|
|
1378
1463
|
|
|
1379
1464
|
|
|
1380
1465
|
|
|
1381
|
-
|
|
1466
|
+
|
|
1467
|
+
|
|
1468
|
+
|
|
1469
|
+
exports.ProductReleasesView = ProductReleasesView; exports.MediaGalleryStrip = MediaGalleryStrip; exports.ReleaseDetailPage = ReleaseDetailPage; exports.ReleaseDetailSkeleton = ReleaseDetailSkeleton; exports.useRoadmapVoting = useRoadmapVoting; exports.RoadmapGrid = RoadmapGrid; exports.RoadmapGridSkeleton = RoadmapGridSkeleton; exports.RoadmapView = RoadmapView; exports.DeliveryTable = DeliveryTable; exports.DeliveryLists = DeliveryLists; exports.useLegalDocs = useLegalDocs; exports.toLegalDocumentSummaries = toLegalDocumentSummaries; exports.useLegalDocuments = useLegalDocuments; exports.legalDocumentStampLabel = legalDocumentStampLabel; exports.LegalDocumentPage = LegalDocumentPage;
|