Staaarter

Security Questionnaire Answers

A procurement FAQ grouping security controls into hairline rows that pair each question with a tone-coded yes, partial, or not-yet chip and the detail behind it, closing on a security pack request.

By Staaarter Team
FAQ
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button, badge dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/security-questionnaire-answers.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/faq/faq90.tsx instead.

Usage

The file also exports faq90Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Faq90, faq90Demo } from "@/components/blocks/faq/faq90";

export default function Page() {
  return <Faq90 {...faq90Demo} />;
}

Props

PropTypeDefaultDescription
badgestringnoneSmall pill above the heading.
headingstringnoneSection heading.
descriptionstringnoneSection intro text.
groupsControlGroup[]noneGrouped rows of security controls, each rendered under its own group title.
closingHeadingstring"Need the full picture?"Heading in the closing panel.
closingDescriptionstringnoneSupporting copy in the closing panel.
closingButtonLabelstring"Request security pack"Label on the inert closing button.
classNamestringnoneExtra classes for the outer section element.

Types

type ControlStatus = "yes" | "partial" | "not-yet";

type ControlRow = {
  question: string;
  detail: string;
  status: ControlStatus;
};

type ControlGroup = {
  title: string;
  rows: ControlRow[];
};

Behavior notes

  • Plain server component: every row is always open, there is no accordion or toggle state anywhere in this block.
  • The three control statuses map to Badge variants using semantic tokens only (default for yes, secondary for partial, outline for not-yet) rather than literal green/yellow/red colors.
  • "Request security pack" is an inert button with no real submit handler; wiring it to an actual document request flow is left to the consuming app.