ant-design-x-vue
Version:
Craft AI-driven interfaces effortlessly
2 lines (1 loc) • 804 B
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("../hooks/useStyleRegister/index.tsx2.js"),a=/url\([^)]+\)|var\([^)]+\)|(\d*\.?\d+)px/g;function f(o,i){const n=Math.pow(10,i+1),c=Math.floor(o*n);return Math.round(c/10)*10/n}const x=(o={})=>{const{rootValue:i=16,precision:n=5,mediaQuery:c=!1}=o,l=(s,t)=>{if(!t)return s;const e=parseFloat(t);return e<=1?s:`${f(e/i,n)}rem`};return{visit:s=>{const t={...s};return Object.entries(s).forEach(([e,r])=>{if(typeof r=="string"&&r.includes("px")){const u=r.replace(a,l);t[e]=u}!d.unitlessKeys[e]&&typeof r=="number"&&r!==0&&(t[e]=`${r}px`.replace(a,l));const p=e.trim();if(p.startsWith("@")&&p.includes("px")&&c){const u=e.replace(a,l);t[u]=t[e],delete t[e]}}),t}}};exports.default=x;
;