{"version":3,"file":"Button.CBF4bug1.mjs","names":["React.useMemo","_Fragment"],"sources":["https:/framerusercontent.com/modules/1al3cIMSZOoyeJ0bp4gA/QRZ5M9sVA1aVj5ZsCbO4/Button.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";const VARIANTS={primary:{bg:\"#522C00\",bgHover:\"#3D2000\",color:\"#FFFFFF\",border:\"transparent\",ring:\"#522C00\",shadow:\"0 1px 2px rgba(0,0,0,0.10), inset 0 1px 0 rgba(255,255,255,0.12)\"},secondary:{bg:\"#EFE6D9\",bgHover:\"#E6DAC8\",color:\"#522C00\",border:\"rgba(82,44,0,0.08)\",ring:\"#522C00\",shadow:\"0 1px 2px rgba(82,44,0,0.06)\"},ghost:{bg:\"transparent\",bgHover:\"rgba(82,44,0,0.06)\",color:\"#522C00\",border:\"rgba(82,44,0,0.14)\",ring:\"#522C00\",shadow:\"none\"}};const SIZES={sm:{height:28,pad:8,font:13,gap:5},md:{height:32,pad:10,font:14,gap:6},lg:{height:40,pad:16,font:15,gap:8}};// eindeutige ID, damit sich mehrere Instanzen im :hover/:focus nicht stören\nlet counter=0;function Arrow(){return /*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 6l6 6-6 6\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}export default function Button(props){const{label=\"Get Started\",variant=\"primary\",size=\"md\",href=\"\",newTab=false,disabled=false,radius=6,font=\"inherit\",icon=\"none\",fullWidth=false}=props;const v=VARIANTS[variant];const sz=SIZES[size];const cls=React.useMemo(()=>`sov-btn-${counter++}`,[]);// seitliches Padding wird bei Icon leicht reduziert (wie has-data-[icon]-Klassen)\nconst padStart=icon===\"start\"?sz.pad-2:sz.pad;const padEnd=icon===\"end\"?sz.pad-2:sz.pad;const iconSize=size===\"lg\"?18:16;const css=`\n      .${cls} {\n        display: ${fullWidth?\"flex\":\"inline-flex\"};\n        width: ${fullWidth?\"100%\":\"auto\"};\n        align-items: center; justify-content: center;\n        gap: ${sz.gap}px; position: relative;\n        height: ${sz.height}px; padding: 0 ${padEnd}px 0 ${padStart}px;\n        border: 1px solid ${v.border}; border-radius: ${radius}px;\n        font-family: ${font===\"inherit\"?\"inherit\":`'${font}', sans-serif`};\n        font-size: ${sz.font}px; line-height: 20px; font-weight: 500;\n        white-space: nowrap; user-select: none; cursor: pointer;\n        text-decoration: none; box-sizing: border-box;\n        background: ${v.bg}; color: ${v.color};\n        box-shadow: ${v.shadow};\n        transition: background 50ms ease, transform 50ms ease;\n        outline: none;\n      }\n      .${cls}:hover { background: ${v.bgHover}; }\n      .${cls}:active { transform: scale(0.98); }\n      .${cls}:focus-visible {\n        box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px ${v.ring};\n      }\n      .${cls}[aria-disabled=\"true\"] {\n        pointer-events: none; opacity: 0.5; box-shadow: none;\n      }\n      .${cls} svg {\n        width: ${iconSize}px; height: ${iconSize}px;\n        flex-shrink: 0; pointer-events: none;\n      }\n    `;const inner=/*#__PURE__*/_jsxs(_Fragment,{children:[icon===\"start\"&&/*#__PURE__*/_jsx(Arrow,{}),/*#__PURE__*/_jsx(\"span\",{children:label}),icon===\"end\"&&/*#__PURE__*/_jsx(Arrow,{})]});const commonProps={className:cls,\"aria-disabled\":disabled?true:undefined,tabIndex:disabled?-1:0};return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:css}),href&&!disabled?/*#__PURE__*/_jsx(\"a\",{...commonProps,href:href,target:newTab?\"_blank\":undefined,rel:newTab?\"noopener noreferrer\":undefined,children:inner}):/*#__PURE__*/_jsx(\"button\",{...commonProps,type:\"button\",children:inner})]});}addPropertyControls(Button,{label:{type:ControlType.String,title:\"Text\",defaultValue:\"Get Started\"},variant:{type:ControlType.Enum,title:\"Variante\",options:[\"primary\",\"secondary\",\"ghost\"],optionTitles:[\"Primary\",\"Secondary\",\"Ghost\"],defaultValue:\"primary\",displaySegmentedControl:true},size:{type:ControlType.Enum,title:\"Gr\\xf6\\xdfe\",options:[\"sm\",\"md\",\"lg\"],optionTitles:[\"S\",\"M\",\"L\"],defaultValue:\"md\",displaySegmentedControl:true},icon:{type:ControlType.Enum,title:\"Icon\",options:[\"none\",\"start\",\"end\"],optionTitles:[\"Keins\",\"Links\",\"Rechts\"],defaultValue:\"none\",displaySegmentedControl:true},href:{type:ControlType.Link,title:\"Link\"},newTab:{type:ControlType.Boolean,title:\"Neuer Tab\",defaultValue:false},disabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},fullWidth:{type:ControlType.Boolean,title:\"Volle Breite\",defaultValue:false},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:6,min:0,max:24,step:1},font:{type:ControlType.String,title:\"Font\",defaultValue:\"inherit\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Button\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Button.map"],"mappings":"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"}