UNPKG

@radix-ui/themes

Version:

[![Radix Themes Logo](https://radix-ui.com/social/themes.png)](https://radix-ui.com/themes)

3 lines (2 loc) 1.31 kB
import o from"classnames";import{getResponsiveClassNames as P,getResponsiveStyles as g}from"./get-responsive-styles.js";import{isResponsiveObject as p}from"./is-responsive-object.js";import{mergeStyles as c}from"./merge-styles.js";function N(...r){return Object.assign({},...r)}function v(r,...m){let t,l;const a={...r},f=N(...m);for(const n in f){let s=a[n];const e=f[n];if(e.default!==void 0&&s===void 0&&(s=e.default),e.type==="enum"&&![e.default,...e.values].includes(s)&&!p(s)&&(s=e.default),a[n]=s,"className"in e&&e.className){delete a[n];const u="responsive"in e;if(!s||p(s)&&!u)continue;if(p(s)&&(e.default!==void 0&&s.initial===void 0&&(s.initial=e.default),e.type==="enum"&&([e.default,...e.values].includes(s.initial)||(s.initial=e.default))),e.type==="enum"){const i=P({allowArbitraryValues:!1,value:s,className:e.className,propValues:e.values,parseValue:e.parseValue});t=o(t,i);continue}if(e.type==="string"||e.type==="enum | string"){const i=e.type==="string"?[]:e.values,[d,y]=g({className:e.className,customProperties:e.customProperties,propValues:i,parseValue:e.parseValue,value:s});l=c(l,y),t=o(t,d);continue}if(e.type==="boolean"&&s){t=o(t,e.className);continue}}}return a.className=o(t,r.className),a.style=c(l,r.style),a}export{v as extractProps}; //# sourceMappingURL=extract-props.js.map