// @bun
import a from"@contractspec/lib.ui-link";import{jsx as e,jsxs as t}from"react/jsx-runtime";function l(){return t("div",{className:"space-y-8",children:[t("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Overlay Editor"}),e("p",{className:"text-lg text-muted-foreground",children:"A Next.js app (`@contractspec/app.overlay-editor`) that lets tenant admins tweak field visibility, labels, and ordering, then sign OverlaySpecs."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Features"}),t("ul",{className:"list-disc space-y-2 pl-6",children:[e("li",{children:"Toggle visibility and rename labels without touching code."}),e("li",{children:"Move fields up/down to define the overlay order."}),e("li",{children:"Preview JSON output powered by `@contractspec/lib.overlay-engine`."}),e("li",{children:"Server action for PEM signing (Ed25519/RSA-PSS)."})]}),t("p",{children:["Project path: ",e("code",{children:"packages/apps/overlay-editor"})]})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Provisioning flow"}),t("ol",{className:"list-decimal space-y-2 pl-6",children:[t("li",{children:["Clone the repo and run ",e("code",{children:"bun dev"})," inside the app."]}),e("li",{children:"Use the UI to craft the overlay for a tenant."}),e("li",{children:"Paste the tenant's PEM private key (stored in Vault/KMS)."}),e("li",{children:"Click \u201CSign overlay\u201D to get the final JSON payload."}),e("li",{children:"Persist in the `Overlay` table and register with `OverlayRegistry`."})]}),t("p",{children:["See also:"," ",e(a,{href:"/docs/ops/tenant-customization",className:"text-violet-400 underline",children:"Tenant customization runbook"}),"."]})]})]})}export{l as AdvancedOverlayEditorPage};
