modulePackage manifestv2.0.4

module.forms

Reusable builder, respondent, results, and administration module for the shared Forms platform.

@lssm-tech/module.forms
Source, release and verification context

Source snapshot bcc79fcc · Declared package version 2.0.4. This page combines the checked-in package guide and manifest; commands and runtime behavior were not executed in this review.

Package source ↗ Manifest ↗
servernode
EXPLORE THE PACKAGE

See where this package fits.

Follow a declared connection, inspect an import, then open the source guide when you need the detail.

THIS PACKAGEmodule.formsplatform

Arrows point from a package to its direct dependency. Each count is derived from the captured manifests.

5 declaracionesSELECT TO INSPECT

@lssm-tech/module.forms

Provider-neutral Forms feature composition for web and native hosts.

The module owns reusable builder, respondent-session, results, administration, verification/resume DTO, and localized chrome behavior. Product hosts inject authenticated authority, PostgreSQL storage, delivery providers, AI adapters, public routing, branding, and feature flags. Public payloads never carry tenant or workspace authority, and Forms has no dependency on OPA.

Milestones

Each capability has an independent flag (forms.v0 through forms.v0_6). Publishing fails closed when a document requires a disabled milestone.

  • v0: localized one-page authoring, immutable publish/share, anonymous response capture, keyset results, response detail, and audited streaming CSV.
  • v0.1-v0.3: accessible steps, deterministic server-authoritative branching, browser-session progress, encrypted resumable drafts, and provider-backed email/phone verification with expiry, throttling, replay, and attempt limits.
  • v0.4: portable full-FormSpec compilation, including groups, arrays, resolvers, computations, constraints, projections, layouts, and actions.
  • v0.5: consent-aware, redacted or self-hosted AI follow-ups and cited analysis, with recursive declared-PII/contact redaction, versioned consent receipts, pre-invocation call reservations, cumulative remaining token/cost limits, frozen localized questions, and a hard ten-turn ceiling including failed provider calls.
  • v0.6: portable import/export, duplication and revision comparison, extension registries, bounded signed-webhook retries with terminal failed states, signed origin-bound embed grants, SDK/agent adapters, typed OPA destinations, and web, mobile, desktop, native, embed, and MCP surfaces.

Host contract

Hosts mount management at their product route and public responses at /f/{opaqueToken}, backed by /api/forms/v1. They inject a product-owned PostgreSQL connection, authenticated creator authority, a data-protection key, and milestone flags. Verification, AI, distributed request defense, secret resolution, and outbox delivery are optional ports but required when the corresponding published policy needs them.

The PostgreSQL schema forces tenant/workspace/owner RLS and binds anonymous database sessions to the exact response, draft, challenge, or extension being handled. It encrypts answers and verification destinations, pins responses to immutable revisions, and stores only scoped digests where deduplication is required. CSV exports use an exact response-set watermark and redact typed or explicitly classified sensitive fields unless an audited sensitive-export grant is present. Recursive FormSpec model roots and frozen AI extension answers use stable CSV columns. Retention cleanup and audited erasure are scope-bound. Logs and integration events exclude raw answers, contact destinations, verification codes, and raw IP addresses.

Author catalogs may use any valid BCP-47 locale. The built-in authoring chrome ships in English, French, and Spanish; answers remain canonical and locale-independent.

Canonical source ownership: @lssm-tech/lib.contracts-runtime-kernel owns the existing framework-neutral implementation; module.forms/runtime owns the existing Forms service and FormsPlatformError; Observability/contracts-runtime owns the existing automatic backend event binding. Legacy five maps and default behavior are preserved. Clean artifact qualification and runtime authority remain separate requirements.

The runtime-only leaf owns the existing Forms service, FormsPlatformError, immutable revisions, assurance, consent, idempotency, navigation and PII-safe CSV behavior. It imports existing Forms contracts and no UI root. UI and server composition remain existing supported roots. Declared source-unused React-runtime and Legacy RuntimeCore dependencies are removed in this source implementation and require real consumer qualification. Producer declarations/physical consumers/release/final-tree acceptance remain pending.

Declared capabilities.

Module Forms

Reusable builder, respondent, results, and administration module for the shared Forms platform.

Use it to

  • Adopt reusable builder, respondent, results, and administration module for the shared forms platform

Requires

  • TypeScript

Choose another boundary when

  • The @lssm-tech/module.forms package constraints do not match the target runtime or platform.

@lssm-tech/module.forms

@lssm-tech/module.forms/administration

@lssm-tech/module.forms/builder

@lssm-tech/module.forms/i18n

@lssm-tech/module.forms/respondent

@lssm-tech/module.forms/server

@lssm-tech/module.forms/templates

@lssm-tech/module.forms/types

@lssm-tech/module.forms/ui

@lssm-tech/module.forms/runtime

Imports and export paths.

95 entries

These are package-manifest entry points. Named symbols listed above come from the capability catalogue; this is not an exhaustive TypeScript symbol reference.

95 importaciones · se muestran 35

Dependencies and related packages.

Runtime dependencies 5
react
catalog:
Development dependencies 9
@electric-sql/pglite
catalog:data
@types/react
catalog:types
@types/react-dom
catalog:types
happy-dom
catalog:testing
react-dom
catalog:
typescript
catalog:

Package scripts.

Commands declared by this package. Review its setup requirements before running them; no command here was executed by this review.

buildcontractspec-bun-build build
build:bundlecontractspec-bun-build transpile
build:typescontractspec-bun-build types
cleanrimraf dist .turbo
lint:checknode ../../../../scripts/biome.cjs check .
lint:fixnode ../../../../scripts/biome.cjs check --write .
testbun test
typechecktsgo --noEmit
Tu vista

Make room for your context.

Shape the presentation around this moment. You can change it whenever you need.

Tu contexto

The different parts of you

Choose a starting point

Una mezcla útil de contexto, imágenes y orientación discreta.

Tune each dimension
Each dimension can change independently. Product permissions and available actions stay unchanged.

Support the way you begin and return

Tune your support

Comodidad de lectura

Elige tu idioma

El idioma de la interfaz solo cambia el texto. Los mercados, precios y flujos de trabajo conservan sus propios ajustes.

Cobertura de traducción

Parte del contenido se muestra en inglés.

Navegación151
Grafo616
Categorías188
Portafolio332
Ejemplos2035
Vista previa de la fuente41

Se añadirán más traducciones a medida que se revise el contenido.

Esta preferencia se guarda en este navegador.

Buscar en el sitio web

Puntos de partida útiles

Sin resultados. Prueba una frase más corta, un nombre de operación u otro ámbito de búsqueda.

UN POCO DE ESPACIO PARA EXPLORAR

Encuentra algo que explorar.

Abre una vista detallada en esta página, prueba otra perspectiva o sigue el detalle a su propia página.

Cómo funcionan las vistas previas y los controles
01

Mirar antes de salir

Pasa el cursor por un enlace o enfócalo con Tab para ver una vista previa. Hacer clic en el enlace original o pulsar Intro siempre abre su destino.

02

Mantener el contexto

Entra en la vista previa para explorar sus secciones. Usa Alt + ↓ desde un enlace enfocado para entrar con el teclado. Escape la cierra.

03

Abrir las posibilidades

Las filas desplegables, las perspectivas y los controles destacados revelan más. Tu vista cambia la comodidad de lectura y el contexto que exploras.

Un botón separado para mirar más de cerca

Muestra pequeños botones de vista previa junto a los enlaces donde haya espacio. Toca el ojo para inspeccionar o el enlace para ir directamente. Esta elección permanece en esta pestaña.

No se recoge historial de navegación. El movimiento reducido sigue tu dispositivo y Tu vista.