From 8ce9e2e11815178cf583ba94ee8201b2bd4e26b7 Mon Sep 17 00:00:00 2001 From: justin Date: Sat, 30 May 2026 15:23:48 -0500 Subject: [PATCH] =?UTF-8?q?Unified=20DOT=20intake=20form=20=E2=80=94=20one?= =?UTF-8?q?=20form=20for=20all=20trucking=20services?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Single DOTIntakeStep shows/hides sections based on services ordered: - Company info + address + signer (always) - Entity & operations (MCS-150, USDOT, MC Auth, bundles) - Fleet info (MCS-150, UCR, bundles) - UCR fleet bracket + base state (UCR) - Cargo types (MCS-150, bundles) - D&A program (CDL drivers, DER, consortium) - BOC-3 docket info (BOC-3) - Photo ID upload (MCS-150, MC Auth) - Security/encryption notices All DOT services now use ["dot-intake", "review"] instead of ["review"]. Co-Authored-By: Claude Opus 4.6 (1M context) --- site/src/components/intake/Wizard.astro | 2 + .../intake/steps/DOTIntakeStep.astro | 410 ++++++++++++++++++ site/src/lib/intake_manifest.ts | 22 +- 3 files changed, 423 insertions(+), 11 deletions(-) create mode 100644 site/src/components/intake/steps/DOTIntakeStep.astro diff --git a/site/src/components/intake/Wizard.astro b/site/src/components/intake/Wizard.astro index 6941674..9da381b 100644 --- a/site/src/components/intake/Wizard.astro +++ b/site/src/components/intake/Wizard.astro @@ -40,6 +40,7 @@ import CPNIStep from "./steps/CPNIStep.astro"; import CDRPeriodStep from "./steps/CDRPeriodStep.astro"; import OCNStep from "./steps/OCNStep.astro"; import MCS150Step from "./steps/MCS150Step.astro"; +import DOTIntakeStep from "./steps/DOTIntakeStep.astro"; import ClassificationWizard from "./steps/ClassificationWizard.astro"; import ReviewStep from "./steps/ReviewStep.astro"; import PaymentStep from "./steps/PaymentStep.astro"; @@ -120,6 +121,7 @@ const STEP_LABELS: Record = { {steps.includes("cdr_period") && } {steps.includes("ocn") && } {steps.includes("mcs150") && } + {steps.includes("dot-intake") && } {steps.includes("classification") && } {steps.includes("review") && } {steps.includes("payment") && } diff --git a/site/src/components/intake/steps/DOTIntakeStep.astro b/site/src/components/intake/steps/DOTIntakeStep.astro new file mode 100644 index 0000000..a9eefc2 --- /dev/null +++ b/site/src/components/intake/steps/DOTIntakeStep.astro @@ -0,0 +1,410 @@ +--- +// Unified DOT intake form — shows relevant sections based on services ordered. +// Handles: MCS-150, UCR, D&A, BOC-3, USDOT, MC Authority, Audit Prep, bundles. +--- + +
+

DOT Filing Information

+

+ Provide your carrier information. We will prepare and submit your filings on your behalf. +

+
+ + All personal information is transmitted over 256-bit SSL encryption and stored encrypted at rest. We never share your data with third parties. +
+ +
+ + +

Company Information

+
+ +
+
+ +
+
+ + + +
+ +

Principal Business Address

+
+ +
+
+ + + +
+
+ + +
+ + +
+

Entity & Operations

+
+ + +
+
+ + +
+
+ + +
+

Fleet Information

+
+ + + +
+
+ + + + + +
+

Cargo Types (check all that apply)

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + +

Authorized Signer

+
+ + +
+ + +
+

Government-Issued Photo ID

+

Required for FMCSA filings. Driver's license, passport, or state ID.

+
+ + + +
+
+ + Your ID is encrypted in transit and at rest. Used only for FMCSA identity verification and automatically deleted after filing. +
+
+
+ + +
+ + + + diff --git a/site/src/lib/intake_manifest.ts b/site/src/lib/intake_manifest.ts index 95e44d7..574e610 100644 --- a/site/src/lib/intake_manifest.ts +++ b/site/src/lib/intake_manifest.ts @@ -35,7 +35,8 @@ export type IntakeStep = | "cpni_questions" // NEW: CPNI certification questionnaire (sec 5-9) | "cdr_period" | "ocn" - | "mcs150" // MCS-150 biennial update form fields + | "mcs150" // MCS-150 biennial update form fields (standalone) + | "dot-intake" // Unified DOT intake — shows sections based on services ordered | "review" | "payment"; @@ -103,16 +104,15 @@ export const INTAKE_MANIFEST: Record = { ], // ── DOT / FMCSA Motor Carrier Services ────────────────────────── - // Review-only intake: DOT#, name, email already collected at checkout. - // Admin handles the filing using the info from the order. - "mcs150-update": ["mcs150", "review"], - "boc3-filing": ["review"], - "ucr-registration": ["review"], - "dot-registration": ["review"], - "mc-authority": ["review"], - "dot-drug-alcohol": ["review"], - "dot-audit-prep": ["review"], - "dot-full-compliance": ["review"], + // Unified DOT intake form — shows relevant sections based on service. + "mcs150-update": ["dot-intake", "review"], + "boc3-filing": ["dot-intake", "review"], + "ucr-registration": ["dot-intake", "review"], + "dot-registration": ["dot-intake", "review"], + "mc-authority": ["dot-intake", "review"], + "dot-drug-alcohol": ["dot-intake", "review"], + "dot-audit-prep": ["dot-intake", "review"], + "dot-full-compliance": ["dot-intake", "review"], // ── State-Level Trucking Compliance ───────────────────────────────── // Admin-assisted: info collected at checkout, no intake form needed.