{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "snapp-feature-layout", "title": "Snapp Feature Layout", "description": "Shared feature shell, page body, and bordered surface primitives for embedded Snapps.", "registryDependencies": [ "@snapp/snapp-theme", "@snapp/snapp-utils" ], "files": [ { "path": "registry/radix-nova/components/layout/feature-layout.tsx", "content": "import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\ninterface FeatureShellProps extends React.ComponentProps<\"div\"> {\n navigation?: React.ReactNode\n showNavBar?: boolean\n}\n\nfunction FeatureShell({\n children,\n className,\n navigation,\n showNavBar = true,\n ...props\n}: FeatureShellProps) {\n return (\n \n {showNavBar ? navigation : null}\n {children}\n \n )\n}\n\nfunction PageBody({\n className,\n ...props\n}: React.ComponentProps<\"main\">) {\n return (\n \n )\n}\n\ninterface SurfaceCardProps extends React.ComponentProps<\"div\"> {\n padding?: \"compact\" | \"default\"\n}\n\nfunction SurfaceCard({\n className,\n padding = \"default\",\n ...props\n}: SurfaceCardProps) {\n return (\n \n )\n}\n\nexport { FeatureShell, PageBody, SurfaceCard }\nexport type { FeatureShellProps, SurfaceCardProps }\n", "type": "registry:component", "target": "@components/snapp/layout/feature-layout.tsx" } ], "type": "registry:component" }