UNPKG

@stylezjs/stylez

Version:

Stylez → ā€œZā€ of Zero Runtime | A lightweight utility for generating CSS class names dynamically.

2 lines (1 loc) • 1.63 kB
"use strict";var W=Object.create;var c=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var N=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var P=(t,e)=>{for(var s in e)c(t,s,{get:e[s],enumerable:!0})},f=(t,e,s,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of B(e))!O.call(t,r)&&r!==s&&c(t,r,{get:()=>e[r],enumerable:!(o=M(e,r))||o.enumerable});return t};var $=(t,e,s)=>(s=t!=null?W(N(t)):{},f(e||!t||!t.__esModule?c(s,"default",{value:t,enumerable:!0}):s,t)),I=t=>f(c({},"__esModule",{value:!0}),t);var w={};P(w,{className:()=>d,create:()=>b,getAllCss:()=>k});module.exports=I(w);var y=$(require("crypto"),1),l=(t,e)=>`${e}${y.default.createHash("md5").update(`stylez${t}`).digest("hex").slice(0,8)}`;var n=t=>l(JSON.stringify(t),"z_");var d=t=>Object.freeze({className:n(t)});var x=t=>{let e=t.match(/min-width:\s*(\d+)px/);return e?parseInt(e[1]):1/0},h=t=>t.sort((e,s)=>{let o=e[0],r=s[0],p=o.startsWith("@media"),i=r.startsWith("@media");return o==="root"?-1:r==="root"?1:!p&&i?-1:p&&!i?1:p&&i?x(o)-x(r):o.localeCompare(r)});var C=(t,e={lg:"1280px",md:"1024px",sm:"768px",xl:"1640px",xs:"520px"})=>t.map(([s,o])=>s.startsWith("@")?[`@media (min-width: ${e[s.replace("@","")]})`,o]:[s,o]);var g=t=>{let e,s={};for(let i of t){let S=`.${n(i)}`;for(let[a,m]of Object.entries(i))a==="breakpoints"?e=m:a.startsWith("@")?(s[a]??={})[S]??=m:(s[S]??={})[a]??=m}let o=Object.entries(s),r=C(o,e);return h(r)};var u=new Set,j=[],b=t=>{let e=n(t);return u.has(e)||(u.add(e),j.push(t)),t},k=()=>Object.fromEntries(g(j));0&&(module.exports={className,create,getAllCss});