{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "submit-button",
  "type": "registry:ui",
  "title": "Submit button",
  "description": "Submit button of a server-action form: spinner while the form submits (useFormStatus).",
  "registryDependencies": [
    "@wibo/button"
  ],
  "files": [
    {
      "path": "src/components/submit-button.tsx",
      "type": "registry:ui",
      "content": "import { useFormStatus } from \"react-dom\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\n\n/**\n * Submit button of a server-action form: shows the button's spinner while the\n * form it sits in is submitting (`useFormStatus`). It reads form state, so a\n * server component renders it through the app's client boundary.\n */\nfunction SubmitButton({ loading, ...props }: Omit<ButtonProps, \"type\" | \"asChild\">) {\n  const { pending } = useFormStatus();\n  return <Button type=\"submit\" loading={pending || loading} {...props} />;\n}\n\nexport { SubmitButton };\n"
    }
  ]
}
