s-m-r-t
Open the s-m-r-t source on GitHub Switch to dark color scheme
← All packages
Foundation v0.44.0 New

@happyvertical/smrt-fields

Layered field policy: per-field defaults, visibility tiers, labels, help, ordering, and organization locks resolved over the code seed at app, tenant, and user scope.

Source

What it gives you

Layered field policy: per-field defaults, visibility tiers, labels, help, ordering, and organization locks resolved over the code seed at app, tenant, and user scope.

  1. 01Code seed, app, tenant, and user layers resolved into one policy per object
  2. 02Generated forms that render only the fields present in both the manifest definition and the resolved policy
  3. 03A form gear and an organization control panel behind two dedicated permissions

How resolution works

Four layers merge low to high: the code seed from @field({ ui }), app rows, the tenant chain, then the signed-in user. A column left empty inherits from the layer below and resetting a customization deletes the row.

Read the field policy guide →

Building forms

PolicyField adopts an existing form incrementally; ObjectForm renders the fields present in both the generated definitions and the resolved policy.

Build a policy-aware form →

Running it in production

The form gear, the organization control panel, the two permissions, and the difference between a personal preference and an organization rule.

Operate field policies →

API and semantics

Exported functions and types, the canonical object reference format, the default-value wire contract, write validation, and caching.

Field policy API →