{"version":3,"file":"BauhausShape.BsYO2pIv.mjs","names":["React.useId","React.useRef","React.useState","React.useMemo","p"],"sources":["https:/framerusercontent.com/modules/pJgJetCMXny7I3QYRJz6/9dV9QM0cdNamlJrS4mHL/BauhausShape.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";export default function GlassShape(props){const{shape=\"circle\",corner=\"TL\",innerRatio=50,fit=\"contain\",fillEnabled=true,blur=12,tint=\"#ffffff\",tintAlpha=.06,strokeEnabled=true,strokeWidth=1,colors=[\"#ffffff40\",\"#F59A0066\",\"#A4005980\",\"#ffffff40\"],spin=true,spinDuration=10,cycleDuration=12,capDirection=\"right\",rectRadius=0}=props;// If fill is disabled, force blur to 0\nconst blurPx=fillEnabled?blur:0;// Unique ids per instance so multiple components don’t clash\nconst uid=React.useId().replace(/[:]/g,\"\");const gradId=`ringGradient-${uid}`;// Measure the frame so the D-cap can keep a true semicircle regardless of length\nconst hostRef=React.useRef(null);const[size,setSize]=React.useState({w:0,h:0});React.useLayoutEffect(()=>{const el=hostRef.current;if(!el)return;const ro=new ResizeObserver(entries=>{const cr=entries[0]?.contentRect;if(cr)setSize({w:cr.width,h:cr.height});});ro.observe(el);return()=>ro.disconnect();},[]);// Compose the SMIL values list for stop-color animation\nconst colorValues=React.useMemo(()=>{const arr=colors.length>=2?colors:[\"#ffffff\",\"#ffffff\"];// ensure we loop back to the first color smoothly\nreturn[...arr,arr[0]].join(\";\");},[colors]);// Corner → anchors (for masks and SVG path orientation)\nconst sectorFromDeg={TL:0,TR:270,BR:180,BL:90};const cornerAnchor={TL:\"0% 0%\",TR:\"100% 0%\",BR:\"100% 100%\",BL:\"0% 100%\"}[corner];// triangle as percentages (prevents full-rect fill)\nconst triClip={TL:\"0% 0%, 100% 0%, 0% 100%\",TR:\"100% 0%, 100% 100%, 0% 0%\",BR:\"100% 100%, 0% 100%, 100% 0%\",BL:\"0% 100%, 0% 0%, 100% 100%\"}[corner];// For triangle orientation, pick vertices by corner (right angle at corner)\nconst triPointsSvg={TL:\"0,0 100,0 0,100\",TR:\"100,0 100,100 0,0\",BR:\"100,100 0,100 100,0\",BL:\"0,100 0,0 100,100\"}[corner];// For quarter circle/annulus path (SVG stroke outline)\nconst quarterPath={TL:\"M 0 0 L 100 0 A 100 100 0 0 1 0 100 Z\",TR:\"M 100 0 L 100 100 A 100 100 0 0 1 0 0 Z\",BR:\"M 100 100 L 0 100 A 100 100 0 0 1 100 0 Z\",BL:\"M 0 100 L 0 0 A 100 100 0 0 1 100 100 Z\"}[corner];/** Quarter-annulus as a single closed path, viewBox 0..100 (R=100, r=50) */const quarterAnnulusPath={TL:\"M 50 0 A 50 50 0 0 1 0 50 L 0 100 A 100 100 0 0 0 100 0 L 50 0 Z\",TR:\"M 50 0 A 50 50 0 0 0 100 50 L 100 100 A 100 100 0 0 1 0 0 L 50 0 Z\",BR:\"M 50 100 A 50 50 0 0 1 100 50 L 100 0 A 100 100 0 0 0 0 100 L 50 100 Z\",BL:\"M 50 100 A 50 50 0 0 0 0 50 L 0 0 A 100 100 0 0 1 100 100 L 50 100 Z\"}[corner];// Quarter-annulus path in objectBoundingBox units (R=1, r=0.5) for SVG <mask>\nconst quarterAnnulusOBB={TL:\"M .5 0 A .5 .5 0 0 1 0 .5 L 0 1 A 1 1 0 0 0 1 0 L .5 0 Z\",TR:\"M .5 0 A .5 .5 0 0 0 1 .5 L 1 1 A 1 1 0 0 1 0 0 L .5 0 Z\",BR:\"M .5 1 A .5 .5 0 0 1 1 .5 L 1 0 A 1 1 0 0 0 0 1 L .5 1 Z\",BL:\"M .5 1 A .5 .5 0 0 0 0 .5 L 0 0 A 1 1 0 0 1 1 1 L .5 1 Z\"}[corner];const qaMaskId=`qa-mask-${uid}`;// Vesica piscis shapes in objectBoundingBox coordinates (0..1) for each corner\n// TR (user-provided) and mirrored variants for other corners\n// Corresponding vesica paths in 0..100 viewBox coordinates for the SVG stroke\nconst vesicaPath100={TL:\"M 0 0 A 100 100 0 0 0 100 100 A 100 100 0 0 0 0 0 Z\",TR:\"M 100 0 A 100 100 0 0 0 0 100 A 100 100 0 0 0 100 0 Z\",BR:\"M 100 100 A 100 100 0 0 0 0 0 A 100 100 0 0 0 100 100 Z\",BL:\"M 0 100 A 100 100 0 0 0 100 0 A 100 100 0 0 0 0 100 Z\"}[corner];// Vesica circle centers (objectBoundingBox anchors) per corner\nconst vesicaCenters={TL:[\"100% 0%\",\"0% 100%\"],TR:[\"0% 0%\",\"100% 100%\"],BR:[\"100% 0%\",\"0% 100%\"],BL:[\"0% 0%\",\"100% 100%\"]}[corner];// D-cap circle anchor per direction (for masks)\nconst dShapeAnchorMap={right:\"50% 50%\",left:\"50% 50%\",top:\"50% 50%\",bottom:\"50% 50%\"};const dShapeAnchor=dShapeAnchorMap[capDirection];// D-cap geometry derived from current frame size\nconst W=Math.max(1,size.w);const H=Math.max(1,size.h);const thicknessPx=capDirection===\"left\"||capDirection===\"right\"?H:W;const radiusPx=thicknessPx/2;// Normalized (0..100) values for the stroke path\nconst rPct=capDirection===\"left\"||capDirection===\"right\"?H/W*50:W/H*50;const cXPct=capDirection===\"right\"?100-rPct:capDirection===\"left\"?rPct:50;const cYPct=capDirection===\"top\"?rPct:capDirection===\"bottom\"?100-rPct:50;// Rectangle rounded corners for stroke/mask in 0..100 viewBox units\nconst rectRx=+Math.min(50,rectRadius/W*100).toFixed(3);const rectRy=+Math.min(50,rectRadius/H*100).toFixed(3);// Fit strategy\nconst sizeStyle=fit===\"contain\"?{width:\"min(100%, 100%)\",height:\"min(100%, 100%)\"}:{width:\"100%\",height:\"100%\"};// Build dynamic CSS for mask-based shapes (scales with element)\n// - Quarter circle: one radial mask anchored to the selected corner\n// - Quarter annulus: two radial masks (outer minus inner)\nconst css=`\n/* Host fills the Framer frame */\n.glass-host-${uid}{\n  position: relative;\n  width: 100%;\n  height: 100%;\n}\n\n/* The blurred, masked “glass” shape */\n.glass-shape-${uid}{\n  position: absolute;\n  inset: 0;\n  ${fit===\"contain\"?\"\":\"\"} /* (we rely on inset:0 and frame size) */\n  background: ${fillEnabled?toRGBA(tint,tintAlpha):\"transparent\"};\n  backdrop-filter: blur(${blurPx}px);\n  -webkit-backdrop-filter: blur(${blurPx}px);\n\n/* RECTANGLE: fill is the whole layer (scales with frame) */\n${shape===\"rectangle\"?`clip-path: inset(0 round ${rectRadius}px);`:\"\"}\n\n  ${shape===\"circle\"?\"border-radius: 9999px;\":\"border-radius: 0;\"}\n  overflow: visible;\n}\n\n/* Square & circle need no masks (circle uses radius).\n   Triangle uses clip-path with percentages (scales automatically). */\n${shape===\"isoRightTriangle\"?`.glass-shape-${uid}{\n  clip-path: polygon(${triClip});\n}`:\"\"}\n\n/* Quarter circle — scalable mask (percentages) */\n${shape===\"quarterCircle\"?`.glass-shape-${uid}{\n  -webkit-mask-image: radial-gradient(farthest-side circle at ${cornerAnchor}, #000 100%, transparent 100%);\n          mask-image: radial-gradient(farthest-side circle at ${cornerAnchor}, #000 100%, transparent 100%);\n  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;\n  -webkit-mask-size: 100% 100%;   mask-size: 100% 100%;\n  -webkit-mask-position: 0 0;     mask-position: 0 0;\n}`:\"\"}\n\n${shape===\"quarterAnnulus\"?`.glass-shape-${uid}{\n  /* Use a single SVG mask that scales with objectBoundingBox, supports hole via evenodd */\n  -webkit-mask: url(#${qaMaskId});\n          mask: url(#${qaMaskId});\n  -webkit-mask-repeat: no-repeat;  mask-repeat: no-repeat;\n  -webkit-mask-size: 100% 100%;    mask-size: 100% 100%;\n  -webkit-mask-position: 0 0;      mask-position: 0 0;\n}`:\"\"}\n\n/* VESICA PISCIS: intersection of two circles (scales with frame)\n    both circles are anchored horizontally at 25%/75% and vertically centered.\n    we compose the two masks with source-in to keep only the overlap. */\n${shape===\"vesica\"?`.glass-shape-${uid}{\n  border-radius: 0;\n\n  /* Two equal circles anchored per corner (scales with frame) */\n  -webkit-mask:\n    radial-gradient(farthest-side circle at ${vesicaCenters[0]}, #000 99.5%, transparent 100%),\n    radial-gradient(farthest-side circle at ${vesicaCenters[1]}, #000 99.5%, transparent 100%);\n  -webkit-mask-repeat: no-repeat, no-repeat;\n  -webkit-mask-size: 100% 100%, 100% 100%;\n  -webkit-mask-position: 0 0, 0 0;\n  -webkit-mask-composite: source-in;   /* intersection */\n\n          mask:\n    radial-gradient(farthest-side circle at ${vesicaCenters[0]}, #000 99.5%, transparent 100%),\n    radial-gradient(farthest-side circle at ${vesicaCenters[1]}, #000 99.5%, transparent 100%);\n  mask-repeat: no-repeat, no-repeat;\n  mask-size: 100% 100%, 100% 100%;\n  mask-position: 0 0, 0 0;\n  mask-composite: intersect;           /* standards hint */\n}`:\"\"}\n\n/* D-cap: outward semicircle (flat side on midline; no distortion) */\n${shape===\"dCap\"?`.glass-shape-${uid}{\n  border-radius: 0;\n  /* Union of a rectangle (length) and a fixed-radius circular cap. */\n  /* Rectangle covers the straight side; circle sits at dShapeAnchor. */\n  -webkit-mask:\n    ${capDirection===\"right\"?`linear-gradient(90deg, #000 0 calc(100% - var(--r)), transparent calc(100% - var(--r)) 100%)`:capDirection===\"left\"?`linear-gradient(90deg, transparent 0 var(--r), #000 var(--r) 100%)`:capDirection===\"top\"?`linear-gradient(180deg, transparent 0 var(--r), #000 var(--r) 100%)`:/* bottom */`linear-gradient(180deg, #000 0 calc(100% - var(--r)), transparent calc(100% - var(--r)) 100%)`},\n    radial-gradient(circle at ${dShapeAnchor}, #000 0 var(--r), transparent calc(var(--r) + 0.1px));\n  -webkit-mask-repeat: no-repeat, no-repeat;\n  -webkit-mask-size: 100% 100%, 100% 100%;\n  -webkit-mask-position: 0 0, 0 0;\n  -webkit-mask-composite: source-over; /* union */\n\n          mask:\n    ${capDirection===\"right\"?`linear-gradient(90deg, #000 0 calc(100% - var(--r)), transparent calc(100% - var(--r)) 100%)`:capDirection===\"left\"?`linear-gradient(90deg, transparent 0 var(--r), #000 var(--r) 100%)`:capDirection===\"top\"?`linear-gradient(180deg, transparent 0 var(--r), #000 var(--r) 100%)`:/* bottom */`linear-gradient(180deg, #000 0 calc(100% - var(--r)), transparent calc(100% - var(--r)) 100%)`},\n    radial-gradient(circle at ${dShapeAnchor}, #000 0 var(--r), transparent calc(var(--r) + 0.1px));\n  mask-repeat: no-repeat, no-repeat;\n  mask-size: 100% 100%, 100% 100%;\n  mask-position: 0 0, 0 0;\n  mask-composite: add; /* union */\n}`:\"\"}\n\n/* SVG overlay (stroke) fills the host; we keep stroke width invariant via vector-effect */\n.glass-ring-${uid}{\n  position: absolute;\n  inset: 0;\n  width: 100%;\n  height: 100%;\n  display: block;\n  pointer-events: none;\n  overflow: visible;\n}\n`;// Choose SVG outline for the stroke by shape\nconst strokeElement=(()=>{if(!strokeEnabled)return null;const ringDefs=/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"linearGradient\",{id:gradId,gradientUnits:\"objectBoundingBox\",children:[/*#__PURE__*/_jsx(\"stop\",{offset:\"0%\",stopColor:colors[0]??\"#ffffff\",children:/*#__PURE__*/_jsx(\"animate\",{attributeName:\"stop-color\",values:colorValues,dur:`${cycleDuration}s`,repeatCount:\"indefinite\"})}),/*#__PURE__*/_jsx(\"stop\",{offset:\"100%\",stopColor:colors[0]??\"#ffffff\",stopOpacity:0,children:/*#__PURE__*/_jsx(\"animate\",{attributeName:\"stop-color\",values:colorValues,dur:`${cycleDuration}s`,repeatCount:\"indefinite\"})}),spin&&/*#__PURE__*/_jsx(\"animateTransform\",{attributeName:\"gradientTransform\",type:\"rotate\",from:\"0 .5 .5\",to:\"360 .5 .5\",dur:`${spinDuration}s`,repeatCount:\"indefinite\"})]})});const strokeProps={fill:\"none\",stroke:`url(#${gradId})`,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{vectorEffect:\"non-scaling-stroke\",strokeWidth}};switch(shape){case\"circle\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"xMidYMid meet\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"circle\",{cx:\"50\",cy:\"50\",r:\"50\",fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"circle\",{cx:\"50\",cy:\"50\",r:\"50\",fill:\"none\",stroke:`url(#${gradId})`,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{vectorEffect:\"non-scaling-stroke\",strokeWidth},mask:`url(#strokeMask-${shape}-${uid})`})]});case\"rectangle\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"rect\",{x:\"0\",y:\"0\",width:\"100\",height:\"100\",rx:rectRx,ry:rectRy,fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"rect\",{x:\"0\",y:\"0\",width:\"100\",height:\"100\",rx:rectRx,ry:rectRy,...strokeProps,strokeLinejoin:\"miter\",strokeLinecap:\"butt\",shapeRendering:\"crispEdges\",mask:`url(#strokeMask-${shape}-${uid})`})]});case\"isoRightTriangle\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"polygon\",{points:triPointsSvg,fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"polygon\",{points:triPointsSvg,...strokeProps,mask:`url(#strokeMask-${shape}-${uid})`})]});case\"quarterCircle\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"xMidYMid meet\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"path\",{d:quarterPath,fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"path\",{d:quarterPath,...strokeProps,mask:`url(#strokeMask-${shape}-${uid})`})]});case\"quarterAnnulus\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"xMidYMid meet\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"path\",{d:quarterAnnulusPath,fill:\"#fff\",fillRule:\"evenodd\"})}),/*#__PURE__*/_jsx(\"path\",{d:quarterAnnulusPath,...strokeProps,mask:`url(#strokeMask-${shape}-${uid})`})]});case\"vesica\":return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"path\",{d:vesicaPath100,fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"path\",{d:vesicaPath100,...strokeProps,mask:`url(#strokeMask-${shape}-${uid})`})]});case\"dCap\":{const r=Math.max(0,Math.min(50,+rPct.toFixed(3)));const cx=+cXPct.toFixed(3);const cy=+cYPct.toFixed(3);let d=\"\";if(capDirection===\"right\"){d=`M 0 0 H ${cx} A ${r} ${r} 0 0 1 ${cx} 100 H 0 Z`;}else if(capDirection===\"left\"){d=`M 100 0 H ${cx} A ${r} ${r} 0 0 0 ${cx} 100 H 100 Z`;}else if(capDirection===\"top\"){d=`M 0 100 V ${cy} A ${r} ${r} 0 0 1 100 ${cy} V 100 Z`;}else{/* bottom */d=`M 0 0 V ${cy} A ${r} ${r} 0 0 0 100 ${cy} V 0 Z`;}return /*#__PURE__*/_jsxs(\"svg\",{className:`glass-ring-${uid}`,viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",\"aria-hidden\":true,children:[ringDefs,/*#__PURE__*/_jsx(\"mask\",{id:`strokeMask-${shape}-${uid}`,maskUnits:\"userSpaceOnUse\",children:/*#__PURE__*/_jsx(\"path\",{d:d,fill:\"#fff\"})}),/*#__PURE__*/_jsx(\"path\",{d:d,...strokeProps,mask:`url(#strokeMask-${shape}-${uid})`})]});}}})();return /*#__PURE__*/_jsxs(\"div\",{ref:hostRef,className:`glass-host-${uid}`,style:{[\"--d\"]:`${thicknessPx}px`,[\"--r\"]:`${radiusPx}px`},children:[shape===\"quarterAnnulus\"&&/*#__PURE__*/_jsx(\"svg\",{width:\"0\",height:\"0\",\"aria-hidden\":true,focusable:\"false\",style:{position:\"absolute\"},children:/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsx(\"mask\",{id:qaMaskId,maskUnits:\"objectBoundingBox\",maskContentUnits:\"objectBoundingBox\",children:/*#__PURE__*/_jsx(\"path\",{d:quarterAnnulusOBB,fill:\"#fff\",fillRule:\"evenodd\"})})})}),/*#__PURE__*/_jsx(\"style\",{children:css}),/*#__PURE__*/_jsx(\"div\",{className:`glass-shape-${uid}`,style:shape===\"circle\"?undefined:shape===\"isoRightTriangle\"?undefined// handled in CSS via polygon percent clip-path\n:undefined// other shapes handled via mask/clip in CSS\n}),strokeElement]});}/* ---------- helpers ---------- */function clamp(v,min,max){return Math.max(min,Math.min(max,v));}function toRGBA(hexOrCss,alpha){// If user passed an rgba/hsla/etc., just append opacity via CSS trick:\nif(/rgba|hsla|hsl|rgb/.test(hexOrCss))return hexOrCss;// Basic hex (#rrggbb or #rgb) → rgba\nlet c=hexOrCss.replace(\"#\",\"\").trim();if(c.length===3)c=c.split(\"\").map(ch=>ch+ch).join(\"\");const r=parseInt(c.slice(0,2),16)||255;const g=parseInt(c.slice(2,4),16)||255;const b=parseInt(c.slice(4,6),16)||255;return`rgba(${r}, ${g}, ${b}, ${clamp(alpha,0,1)})`;}function trianglePolyline(points){// Convert \"x y, x y, x y\" to closed polyline \"a,b c,d e,f a,b\"\nconst pts=points.split(\",\").map(p=>p.trim());return`${pts.join(\" \")} ${pts[0]}`;}/* ---------- Framer Property Controls ---------- */addPropertyControls(GlassShape,{shape:{type:ControlType.Enum,title:\"Shape\",options:[\"circle\",\"rectangle\",\"quarterCircle\",\"isoRightTriangle\",\"quarterAnnulus\",\"vesica\",\"dCap\"],optionTitles:[\"Circle\",\"Rectangle\",\"Quarter Circle\",\"Iso Right Triangle\",\"Quarter Annulus\",\"Vesica\",\"D Shape\"],defaultValue:\"circle\"},capDirection:{type:ControlType.Enum,title:\"Arc\",options:[\"right\",\"bottom\",\"left\",\"top\"],optionTitles:[\"Right\",\"Bottom\",\"Left\",\"Top\"],defaultValue:\"right\",hidden:p=>p.shape!==\"dCap\"},rectRadius:{type:ControlType.Number,title:\"Corner r\",min:0,max:400,step:1,defaultValue:0,hidden:p=>p.shape!==\"rectangle\"},corner:{type:ControlType.Enum,title:\"Corner\",options:[\"TL\",\"TR\",\"BR\",\"BL\"],optionTitles:[\"Top-Left\",\"Top-Right\",\"Bottom-Right\",\"Bottom-Left\"],defaultValue:\"TL\",hidden:p=>!(p.shape===\"quarterCircle\"||p.shape===\"isoRightTriangle\"||p.shape===\"quarterAnnulus\"||p.shape===\"vesica\")},innerRatio:{type:ControlType.Number,title:\"Inner r\",min:5,max:100,step:1,defaultValue:50,hidden:p=>p.shape!==\"quarterAnnulus\"},fit:{type:ControlType.Enum,title:\"Fit\",options:[\"contain\",\"cover\"],optionTitles:[\"Contain\",\"Cover\"],defaultValue:\"cover\"},fillEnabled:{type:ControlType.Boolean,title:\"Glass Fill\",defaultValue:true},blur:{type:ControlType.Number,title:\"Blur\",min:0,max:40,step:1,defaultValue:12,hidden:p=>!p.fillEnabled},tint:{type:ControlType.Color,title:\"Tint\",defaultValue:\"#ffffff\",hidden:p=>!p.fillEnabled},tintAlpha:{type:ControlType.Number,title:\"Tint α\",min:0,max:1,step:.01,defaultValue:.06,hidden:p=>!p.fillEnabled},strokeEnabled:{type:ControlType.Boolean,title:\"Stroke\",defaultValue:true},strokeWidth:{type:ControlType.Number,title:\"Width\",min:1,max:60,step:1,defaultValue:1,hidden:p=>!p.strokeEnabled},colors:{type:ControlType.Array,title:\"Colors\",propertyControl:{type:ControlType.Color},defaultValue:[\"#80808040\",\"#F59A0066\",\"#A4005980\"],hidden:p=>!p.strokeEnabled},spin:{type:ControlType.Boolean,title:\"Spin\",defaultValue:true,hidden:p=>!p.strokeEnabled},spinDuration:{type:ControlType.Number,title:\"Spin (s)\",min:2,max:60,step:1,defaultValue:10,hidden:p=>!p.strokeEnabled||!p.spin},cycleDuration:{type:ControlType.Number,title:\"Cycle (s)\",min:2,max:60,step:1,defaultValue:12,hidden:p=>!p.strokeEnabled}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GlassShape\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BauhausShape.map"],"mappings":"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"}