{"version":3,"file":"button.mjs","names":[],"sources":["../../../../src/web-components/catalog/minimal/button.ts"],"sourcesContent":["import { html } from \"lit\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { CommonSchemas } from \"@a2ui/web_core/v0_9\";\nimport { z } from \"zod\";\nimport { createLitComponent } from \"../../adapter\";\n\nexport const ButtonSchema = z.object({\n  child: CommonSchemas.ComponentId,\n  action: CommonSchemas.Action,\n  variant: z.enum([\"primary\", \"borderless\"]).optional(),\n});\n\nexport const ButtonApiDef = {\n  name: \"Button\",\n  schema: ButtonSchema,\n};\n\nexport const Button = createLitComponent(\n  ButtonApiDef,\n  ({ props, buildChild }) => html`\n    <button\n      type=\"button\"\n      style=${styleMap({\n        padding: \"8px 16px\",\n        cursor: \"pointer\",\n        border: props.variant === \"borderless\" ? \"none\" : \"1px solid #ccc\",\n        backgroundColor:\n          props.variant === \"primary\" ? \"#007bff\" : \"transparent\",\n        color: props.variant === \"primary\" ? \"#fff\" : \"inherit\",\n        borderRadius: \"4px\",\n      })}\n      @click=${() => props.action?.()}\n    >\n      ${props.child ? buildChild(props.child) : null}\n    </button>\n  `,\n);\n"],"mappings":";;;;;;;AAMA,MAAa,eAAe,EAAE,OAAO;CACnC,OAAO,cAAc;CACrB,QAAQ,cAAc;CACtB,SAAS,EAAE,KAAK,CAAC,WAAW,aAAa,CAAC,CAAC,UAAU;CACtD,CAAC;AAEF,MAAa,eAAe;CAC1B,MAAM;CACN,QAAQ;CACT;AAED,MAAa,SAAS,mBACpB,eACC,EAAE,OAAO,iBAAiB,IAAI;;;cAGnB,SAAS;CACf,SAAS;CACT,QAAQ;CACR,QAAQ,MAAM,YAAY,eAAe,SAAS;CAClD,iBACE,MAAM,YAAY,YAAY,YAAY;CAC5C,OAAO,MAAM,YAAY,YAAY,SAAS;CAC9C,cAAc;CACf,CAAC,CAAC;qBACY,MAAM,UAAU,CAAC;;QAE9B,MAAM,QAAQ,WAAW,MAAM,MAAM,GAAG,KAAK;;IAGpD"}