4.2 KiB
4.2 KiB
| 1 | Component | Purpose | States | Data_contract | Copy_namespace | Responsive_rule | RTL_rule | Accessibility_rule |
|---|---|---|---|---|---|---|---|---|
| 2 | SiteHeader | Primary navigation, brand, locale/theme controls, login, demo CTA | default,scrolled | HeaderModel | header.* | Desktop at >=1120; drawer trigger below | Nav order reverses naturally; logo unchanged; directional icons selective | Sticky; 44px targets; skip-link precedes it |
| 3 | MobileDrawer | Compact/medium navigation overlay | closed,open | DrawerModel | header.* | Inline-start fixed drawer <=384px or 88vw | Opens right in RTL | Trap focus; inert background; Escape; focus return |
| 4 | LocaleSelector | Switch locale by stable route ID | closed,open,disabled | LocaleSelectorProps | language names | Native select baseline | Order EN/FR/AR; control follows document direction | Labelled; current locale selected; preserves route/hash |
| 5 | ThemeSelector | Set Light/Dark/System preference | light,dark,system | ThemeSelectorProps | header.light/dark/system | Native select or accessible segmented control | No mirroring needed | Cookie+storage; immediate; live system updates |
| 6 | HeroSection | Communicate category, promise, primary and secondary actions | default | HeroModel | hero.* | 1 column <1120; 7/5 split wide | Text aligns start; preview uses actual RTL rendering | One h1; CTA order follows document direction |
| 7 | ProductPreview | Illustrative/evidence-governed product visual | illustrative,approved-capture | ProductPreviewModel | preview.* | Simplify data table on compact | Do not mirror screenshots; coded preview renders RTL | Accessible caption; no false product claim |
| 8 | LifecycleProof | Show operational coverage without customer logos | default | LifecycleItem[] | trust.* | 1/2/4 columns by available width | Sequence follows reading direction | List semantics; icons decorative |
| 9 | ComparisonSection | Fragmented versus connected workflow | default | ComparisonModel | comparison.* | Stack compact; two columns medium+ | Order follows locale reading direction | Headings identify both columns; do not rely on color |
| 10 | WorkflowSteps | Four-step rental flow and tour source | default | WorkflowStep[] | workflow.* | 1 column compact; 4 columns >=768 | Step order follows reading direction | Ordered list; numerals isolated if needed |
| 11 | RoleCards | Explain value by operating role | default | RoleCard[] | roles.* | 1/2/4 columns content-driven | Same tree; start alignment | Heading hierarchy and readable card order |
| 12 | ModuleGrid | Describe approved product modules | default | ModuleCard[] | modules.* | 1/2/3 columns | Same tree; directional icons selective | No capability beyond approved copy |
| 13 | MeasurementPlan | Show KPI definitions without invented outcomes | default | MetricDefinition[] | results.* | Cards plus methodology block | Same tree | No unapproved numbers; ordered methodology |
| 14 | IntegrationCategories | Neutral category list | default | IntegrationCategory[] | integrations.* | Cloud/list adapts without clipping | Same tree | No partner logos until verified |
| 15 | SecurityChecklist | Evidence-request checklist | default | SecurityCheck[] | security.* | 1/2 columns | Same tree | No badges/certifications without approval |
| 16 | PricingPreview | Explain pricing factors and demo route | quote-only,approved-pricing | PricingModel | pricing.* | Stack compact; 2 columns >=768 | Same tree | Never imply public price when absent |
| 17 | FAQAccordion | Localized questions and answers | closed,open | FaqItem[] | faq.* | Single column | Chevron mirrors only if it conveys expansion direction | Native details baseline; keyboard and SR tested |
| 18 | FinalCTA | Final conversion block and approved secondary contact | default | FinalCtaModel | finalCta.* | Stack compact; 2 columns >=768 | CTA order follows document direction | Secondary link suppressed until real destination approved |
| 19 | SiteFooter | Localized navigation, legal, evidence status internal only | default | FooterModel | footer.* | Stack then grouped columns | Same tree | No public internal proof-status label |
| 20 | DemoDialog | Qualification form and submission states | idle,invalid,submitting,success,recoverable-error,terminal-error | DemoFormProps | form.* | Modal max width; full-screen-safe compact | Field order follows reading direction; emails isolated | Focus trap, summary, inline errors, return focus |
| 21 | ProductTourDialog | Four-step guided overview | step-1,step-2,step-3,step-4,complete | TourProps | tour.* | Modal max width; compact-safe | Back/next positions follow reading direction but meaning stays explicit | Progress announced; focus moves to step heading |