--- // @requirements REQ-PRODUCT-ASTRO REQ-PRODUCT-FORM-PERMISSIONS REQ-PRODUCT-MOBILE import {ClientRouter} from 'astro:transitions'; import FormPermissionField from 'notabenda/astro/FormPermissionField.astro'; import LegalLinks from 'notabenda/astro/LegalLinks.astro'; import {permissionExample} from '../lib/permission.mjs'; export interface Props {review?:boolean} const {review=false}=Astro.props; const {offer,build}=permissionExample; --- {review?'Review email permission':'Email permissions with Astro'} · Juniper Notes Skip to content
juniper/notes

Notabenda · Astro form permissions

{review?'Review email permission':'Email permissions with Astro'}

{review?'Your choice stays with you between pages. Review it, change it or leave it off. Your workspace draft remains independent.':'Prepare a reading space and choose updates separately. Moving to the review page preserves this draft without saving permission.'}

01 / YOUR READING SPACE

Workspace draft

Email destination reader@example.test

Permission controls require JavaScript. You can read the privacy policy below.

A local draft. Email permission is recorded separately.

02 / THE RECORDED STATE

Permission and recording status

Email updates
Not checked
Choice revision
—
Permission version
{offer.revision}
Last acknowledged action
None this visit

A checked box is a draft. Preparing the workspace or moving between pages makes no permission write.

{review?'Back to your workspace':'Continue to review'} Open permission history ↗Plain JavaScript example ↗
Follow the Astro integration

One host-owned controller connects both pages. Navigation attaches the field without saving or retrying a request. The host explicitly checks current state. This example sends no email.

Integration guide ↗