{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "button",
  "title": "Button",
  "description": "A glass button that swells and lights up under a press.",
  "dependencies": [
    "@base-ui/react@^1.8.0"
  ],
  "registryDependencies": [
    "https://liquikit.dev/r/core.json",
    "https://liquikit.dev/r/glass.json",
    "https://liquikit.dev/r/press.json"
  ],
  "files": [
    {
      "path": "src/button.tsx",
      "content": "\"use client\";\n\nimport { Button as BaseButton } from \"@base-ui/react/button\";\nimport type { CSSProperties } from \"react\";\nimport { GlassPane, type GlassRefraction } from \"./glass\";\nimport { usePressGlass } from \"./press\";\nimport { cx, type GlassOptions } from \"./types\";\nimport \"./liquikit.css\";\n\nexport type ButtonProps = Omit<\n\tBaseButton.Props,\n\t\"className\" | \"style\" | \"render\"\n> &\n\tGlassOptions & {\n\t\tvariant?: \"glass\" | \"prominent\" | \"clear\";\n\t\tsize?: \"small\" | \"regular\" | \"large\";\n\t\ticon?: boolean;\n\t\tblock?: boolean;\n\t\ttint?: string;\n\t\trefraction?: GlassRefraction;\n\t\tclassName?: string;\n\t\tstyle?: CSSProperties;\n\t};\n\nexport function Button({\n\tvariant = \"glass\",\n\tsize = \"regular\",\n\ticon = false,\n\tblock = false,\n\ttint,\n\ttheme,\n\tlens,\n\tliquid,\n\trefraction,\n\tclassName,\n\tstyle,\n\tchildren,\n\tdisabled,\n\tonPointerDown,\n\tonPointerEnter,\n\tonPointerLeave,\n\tonKeyDown,\n\tonKeyUp,\n\tonBlur,\n\t...buttonProps\n}: ButtonProps) {\n\tconst { press, pressHandlers } = usePressGlass(disabled, {\n\t\tonPointerDown,\n\t\tonPointerEnter,\n\t\tonPointerLeave,\n\t\tonKeyDown,\n\t\tonKeyUp,\n\t\tonBlur,\n\t});\n\n\treturn (\n\t\t<BaseButton\n\t\t\t{...buttonProps}\n\t\t\tdisabled={disabled}\n\t\t\tclassName={cx(\"glass-ui-button\", className)}\n\t\t\tdata-variant={variant}\n\t\t\tdata-size={size}\n\t\t\tdata-icon={icon ? \"\" : undefined}\n\t\t\tdata-block={block ? \"\" : undefined}\n\t\t\tstyle={style}\n\t\t\t{...pressHandlers}\n\t\t>\n\t\t\t<GlassPane\n\t\t\t\tclassName=\"glass-ui-button__pane\"\n\t\t\t\tvariant={variant === \"clear\" ? \"clear\" : \"regular\"}\n\t\t\t\ttint={\n\t\t\t\t\tvariant === \"prominent\" ? (tint ?? \"var(--glass-accent)\") : undefined\n\t\t\t\t}\n\t\t\t\ttintOpacity={variant === \"prominent\" ? 0.9 : undefined}\n\t\t\t\tpress={press}\n\t\t\t\ttheme={theme}\n\t\t\t\tlens={lens}\n\t\t\t\tliquid={liquid}\n\t\t\t\trefraction={refraction}\n\t\t\t>\n\t\t\t\t<span className=\"glass-ui-button__label\">{children}</span>\n\t\t\t</GlassPane>\n\t\t</BaseButton>\n\t);\n}\n",
      "type": "registry:ui",
      "target": "@components/liquikit/button.tsx"
    }
  ],
  "type": "registry:ui"
}