next-style 2.1.2 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs ADDED
@@ -0,0 +1,31 @@
1
+ "use strict";var H=Object.create;var $=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var J=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var Z=(s,e)=>{for(var t in e)$(s,t,{get:e[t],enumerable:!0})},N=(s,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of G(e))!L.call(s,r)&&r!==t&&$(s,r,{get:()=>e[r],enumerable:!(n=k(e,r))||n.enumerable});return s};var Q=(s,e,t)=>(t=s!=null?H(J(s)):{},N(e||!s||!s.__esModule?$(t,"default",{value:s,enumerable:!0}):t,s)),_=s=>N($({},"__esModule",{value:!0}),s);var v={};Z(v,{BREAKPOINTS:()=>f,StyleCollector:()=>p,camelToKebab:()=>R,createTransformer:()=>K,css:()=>z,deduplicateStyles:()=>T,generateClassHash:()=>m,global:()=>F,normalizeMediaQuery:()=>x,styleCollector:()=>g,validateCSSProperty:()=>W});module.exports=_(v);var j=Q(require("fs"),1),E=Q(require("path"),1);function R(s){return s.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}function m(s){let e=typeof s=="string"?s:JSON.stringify(s),t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t=(t<<5)-t+r,t=t&t}return Math.abs(t).toString(36)}var f={"@sm":"@media (min-width: 640px)","@md":"@media (min-width: 768px)","@lg":"@media (min-width: 1024px)","@xl":"@media (min-width: 1280px)","@2xl":"@media (min-width: 1536px)"};function x(s){return f[s]??s}function W(s,e){return typeof e=="string"||typeof e=="number"||typeof e=="object"&&!Array.isArray(e)}function T(s){let e=new Map,t=new Set;return s.forEach((n,r)=>{let l=JSON.stringify(n);t.has(l)||(t.add(l),e.set(r,n))}),e}var p=class s{constructor(){this.styles=new Map}addStyle(e){let n=`ns-${m(e)}`;if(this.styles.has(n))return n;let r=this.compileStyle(e);return this.styles.set(n,r),n}addGlobalStyle(e,t){let n=`global:${e}`;if(this.styles.has(n))return;let r=this.buildDeclarations(t);r&&this.styles.set(n,{className:n,css:`${e} {
2
+ ${r}}`,mediaQueries:{},pseudoClasses:{},keyframes:"",supports:{},layers:{}})}compileStyle(e){let{mediaQueries:t,pseudoClasses:n,normalStyles:r,keyframes:l,supports:h,container:u,layer:S}=this.parseStyles(e),o=`ns-${m(e)}`,P=this.buildDeclarations(r),I=`.${o} {
3
+ ${P}}`,y={};Object.entries(t).forEach(([c,d])=>{let a=x(c),C=this.buildDeclarations(d," ");if(y[a]){let B=y[a].split(`
4
+ `).slice(2,-2).join(`
5
+ `);y[a]=`${a} {
6
+ .${o} {
7
+ ${B}
8
+ ${C} }
9
+ }`}else y[a]=`${a} {
10
+ .${o} {
11
+ ${C} }
12
+ }`}),Object.entries(u).forEach(([c,d])=>{let a=this.buildDeclarations(d," ");y[c]=`${c} {
13
+ .${o} {
14
+ ${a} }
15
+ }`});let w={};Object.entries(n).forEach(([c,d])=>{let a=this.buildDeclarations(d);w[c]=`.${o}${c} {
16
+ ${a}}`});let b="";Object.entries(l).forEach(([c,d])=>{b+=`@keyframes ${c} {
17
+ `,Object.entries(d).forEach(([a,C])=>{let D=this.buildDeclarations(C," ");b+=` ${a} {
18
+ ${D} }
19
+ `}),b+=`}
20
+ `});let M={};Object.entries(h).forEach(([c,d])=>{let a=this.buildDeclarations(d," ");M[c]=`@supports ${c} {
21
+ .${o} {
22
+ ${a} }
23
+ }`});let A={};return Object.entries(S).forEach(([c,d])=>{let a=this.buildDeclarations(d," ");A[c]=`@layer ${c} {
24
+ ${a}}`}),{className:o,css:I,mediaQueries:y,pseudoClasses:w,keyframes:b,supports:M,layers:A}}parseStyles(e){let t={},n={},r={},l={},h={},u={},S={};return Object.entries(e).forEach(([i,o])=>{if(i.startsWith("@keyframes "))l[i.slice(11)]=o;else if(i==="@keyframes"&&typeof o=="object")Object.assign(l,o);else if(i.startsWith("@supports")){let P=i.slice(0,9)==="@supports"?i.slice(9).trim():i;h[P]=o}else i.startsWith("@container")?u[i]=o:i.startsWith("@layer")?S[i.slice(7)||"default"]=o:i in f||i.startsWith("@media")?n[i]=o:i.startsWith(":")||i.startsWith("::")?r[i]=o:t[i]=o}),{normalStyles:t,mediaQueries:n,pseudoClasses:r,keyframes:l,supports:h,container:u,layer:S}}buildDeclarations(e,t=" "){let n="";return Object.entries(e).forEach(([r,l])=>{(typeof l=="string"||typeof l=="number")&&(n+=`${t}${R(r)}: ${l};
25
+ `)}),n}getAllStyles(){let e="";return this.styles.forEach(t=>{t.keyframes&&(e+=`${t.keyframes}
26
+ `),t.css&&(e+=`${t.css}
27
+ `),Object.values(t.pseudoClasses).forEach(r=>{e+=`${r}
28
+ `}),Object.values(t.layers).forEach(r=>{e+=`${r}
29
+ `}),Object.values(t.supports).forEach(r=>{e+=`${r}
30
+ `}),Object.entries(t.mediaQueries).sort(([r],[l])=>this.extractMinWidth(r)-this.extractMinWidth(l)).forEach(([,r])=>{e+=`${r}
31
+ `})}),e}extractMinWidth(e){let t=e.match(/min-width:\s*(\d+)px/);return t?parseInt(t[1],10):0}flush(e){try{let t=e??s.defaultCacheFile();j.default.mkdirSync(E.default.dirname(t),{recursive:!0}),j.default.writeFileSync(t,this.getAllStyles(),"utf-8")}catch(t){console.error("Failed to flush styles to cache file:",t)}}static defaultCacheFile(){return E.default.join(process.cwd(),"node_modules",".cache","next-style","styles.css")}getStyleMap(){return new Map(this.styles)}};function K(){let s=new p;return{collector:s,transformCssCall(e){return s.addStyle(e)}}}function z(s){let e=g.addStyle(s);return g.flush(),e}function F(s){Object.entries(s).forEach(([e,t])=>{g.addGlobalStyle(e,t)}),g.flush()}var g=new p;0&&(module.exports={BREAKPOINTS,StyleCollector,camelToKebab,createTransformer,css,deduplicateStyles,generateClassHash,global,normalizeMediaQuery,styleCollector,validateCSSProperty});