{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "aip-147-sensitive-fields", "title": "AIP-147 Sensitive fields", "description": "Sensitive values remain usable for submission but are redacted from review output.", "dependencies": [], "registryDependencies": [ "@protoform/protoform-demo-runtime" ], "files": [ { "path": "registry/base-nova/protoform/demo/catalog/aip-147-sensitive-fields.tsx", "content": "// Generated by scripts/generate-demo-catalog.ts.\n'use client';\n\nexport const client = 'only';\n\nimport { formatSubmittedValue } from '../../lib/protobuf-provider';\nimport { useState } from 'react';\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from '@/registry/base-nova/protoform/components/alert';\nimport { AutoForm } from '@/registry/base-nova/protoform/components/auto-form';\nimport { Badge } from '@/registry/base-nova/protoform/components/badge';\nimport { getDemoSchema } from '@/registry/base-nova/protoform/demo/runtime/demo-schemas';\n\nexport function Aip147SensitiveFieldsDemo() {\n const [submittedValue, setSubmittedValue] = useState();\n const { defaultValues, schema } = getDemoSchema(\"book\");\n\n return (\n
\n
\n React Hook Form\n Live protobuf contract\n
\n

\n {\"Edit the focused request, submit it, and compare the live behavior with the executable compatibility evidence below.\"}\n

\n setSubmittedValue(undefined)}\n onSubmit={(values) => setSubmittedValue(formatSubmittedValue(values))}\n schema={schema}\n withSubmit\n />\n {submittedValue ? (\n \n Submitted protobuf value\n \n
\n              {submittedValue}\n            
\n
\n
\n ) : null}\n
\n );\n}\n\nexport default Aip147SensitiveFieldsDemo;\n", "type": "registry:component", "target": "~/components/protoform-examples/aip-147-sensitive-fields.tsx" } ], "type": "registry:example" }