Some checks failed
API CI / API Lint (push) Successful in 53s
API CI / API Type Check (push) Failing after 51s
API CI / API Test (push) Successful in 1m32s
API CI / API Build (push) Failing after 1m0s
API CI / Build Docker Image (push) Has been skipped
CD Pipeline / Deploy to Staging (push) Failing after 32s
CI Pipeline / Lint and Type Check (push) Failing after 33s
CI Pipeline / Build (push) Has been skipped
CI Pipeline / Test Backend (push) Failing after 2m1s
CI Pipeline / Test Frontend (push) Failing after 35s
CI Pipeline / Security Scan (push) Failing after 1m12s
Deploy to Staging / Deploy to Staging (push) Failing after 28s
Portal CI / Portal Lint (push) Failing after 19s
Portal CI / Portal Type Check (push) Failing after 18s
Portal CI / Portal Test (push) Failing after 19s
Portal CI / Portal Build (push) Failing after 18s
Test Suite / frontend-tests (push) Failing after 30s
Test Suite / api-tests (push) Failing after 44s
Test Suite / blockchain-tests (push) Failing after 27s
Type Check / type-check (map[directory:. name:root]) (push) Failing after 18s
Type Check / type-check (map[directory:api name:api]) (push) Failing after 19s
Type Check / type-check (map[directory:portal name:portal]) (push) Failing after 18s
CD Pipeline / Deploy to Production (push) Has been skipped
Add sankofa.nexus marketing site with institutional grade scorecards, server-side metadata/title, dynamic icons, favicon rewrite, and instant landing render without session-loading flash; split authenticated AppShell from unauthenticated corporate chrome. Co-authored-by: Cursor <cursoragent@cursor.com>
48 lines
1.5 KiB
TypeScript
48 lines
1.5 KiB
TypeScript
import { notFound } from 'next/navigation';
|
|
|
|
import { FeaturePreviewPage } from '@/components/preview/FeaturePreviewPage';
|
|
|
|
const sections = {
|
|
docs: {
|
|
title: 'Documentation',
|
|
description:
|
|
'Reference architecture, onboarding guidance, and operating notes for the authenticated client workspace.',
|
|
bullets: [
|
|
'Portal docs should reflect the canonical client and tenant model.',
|
|
'Native and partner offers should be documented with consistent commercial-language rules.',
|
|
'Client-facing docs should not inherit operator-only assumptions.',
|
|
],
|
|
},
|
|
support: {
|
|
title: 'Support',
|
|
description:
|
|
'Client support entrypoint for workspace, billing, onboarding, and fulfillment issues.',
|
|
bullets: [
|
|
'Support routing should respect support owner and fulfillment mode.',
|
|
'Request-only programs should route into review queues, not instant activation flows.',
|
|
'Client-facing support differs from operator-only systems administration.',
|
|
],
|
|
},
|
|
} as const;
|
|
|
|
export default function HelpSectionPage({
|
|
params,
|
|
}: {
|
|
params: { section: keyof typeof sections };
|
|
}) {
|
|
const section = sections[params.section];
|
|
if (!section) notFound();
|
|
|
|
return (
|
|
<FeaturePreviewPage
|
|
eyebrow="Help & Support"
|
|
title={section.title}
|
|
description={section.description}
|
|
bullets={section.bullets}
|
|
primaryAction={{ href: '/', label: 'Return to Dashboard' }}
|
|
secondaryAction={{ href: '/settings', label: 'Workspace Settings' }}
|
|
status="active"
|
|
/>
|
|
);
|
|
}
|