@cssxio/unplugin 0.4.3 → 0.4.5

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/rollup.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var ae=Object.create;var I=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of le(t))!ce.call(e,s)&&s!==n&&I(e,s,{get:()=>t[s],enumerable:!(r=ie(t,s))||r.enumerable});return e};var me=(e,t,n)=>(n=e!=null?ae(de(e)):{},W(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)),pe=e=>W(I({},"__esModule",{value:!0}),e);var Be={};ue(Be,{default:()=>je});module.exports=pe(Be);var z=require("@cssxio/compiler"),ne=require("unplugin"),se=require("buffer"),N=require("fs/promises"),w=require("path");var $=require("@cssxio/compiler"),q=require("path");var X='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,n,r=!0,s,m=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,C=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!C.has(a)){let k=i.origins?.[a];C.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let b=Object.keys(u).sort(),l=m?X:"";if(b.length===0)return{css:l&&n?`@layer ${n}{${l}}`:l};let d=await(0,$.compileUtilities)(b,i=>u[i],t,(0,$.createSelectorAliases)(o),g?y:void 0,{darkMode:s}),p=n?`@layer ${n}{`:"",h=`${p}${l}${d.css}${p?"}":""}`,c=r?fe(`${p}${l}${d.prefixCss}`,d.entries,C):void 0;return{css:h,...c?{map:c}:{}}}function M(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function O(e,t){return JSON.stringify({...e,file:t})}function fe(e,t,n){let r=[...new Set(t.map(o=>n.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let s=new Map(r.map((o,y)=>[o,y])),m=[],u=G({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&m.push({...u,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),u=G(u,o.css)}return{version:3,sources:r,names:[],mappings:ge(m)}}function G(e,t){let n=t.split(`
3
- `);return{line:e.line+n.length-1,column:n.at(-1).length+e.column*+(n.length===1)}}function ge(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,m=0,u=0;for(let o of e)u*=+(o.line===m),m=o.line,t[o.line]?.push(`${L(o.column-u)}${L(o.source-n)}${L(o.originalLine-r)}${L(o.originalColumn-s)}`),u=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let t="",n=e<0?-e<<1|1:e<<1;do{let r=n&31;n>>>=5,n&&(r|=32),t+=ye[r]}while(n);return t}var J=require("fs/promises"),x=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,J.readFile)((0,x.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');T(e.cssFileName??"cssx.css")}function D(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function A(e,t){return T(e).replaceAll("[hash]",D(t))}function E(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${T(t).replaceAll(x.sep,"/")}`}function K(e,t,n){return t.outdir?(0,x.resolve)(e,t.outdir,n):t.outfile?(0,x.resolve)((0,x.dirname)((0,x.resolve)(e,t.outfile)),n):(0,x.resolve)(e,n)}function S(e){return e.split("?",1).join("")}function T(e){if(!e||(0,x.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,x.normalize)(e);if(t===".."||t.startsWith(`..${x.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function Z(e,t,n){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let s=r.loaderContext?._module;if(!s)return;let m=s.buildInfo??(s.buildInfo={});m[n]=t}function U(e,t,n,r,s,m,u,o,y=!1){let g=e.name??e.options?.name;g==="server"||g==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let b=[...C.modules].map(h=>Ce(h,m)).filter(h=>h!==void 0),l=he(b,u?.values()??[]),d=await v(l,await n(),r,s,o,y);if(!d.css)return;let p=A(t,d.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(d,p))),d.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(O(d.map,p)))}})})}function he(e,t){let n=new Map,r=[];for(let s of t)s.id?n.set(s.id,s):r.push(s);for(let s of e)s.id?n.set(s.id,s):r.push(s);return[...n.values(),...r]}function Ce(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:m,atomicClasses:u,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:m&&typeof m=="object"?m:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var Q=require("@babel/core"),Y=me(require("@cssxio/babel-plugin"),1),R=require("@cssxio/compiler");var be=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function H(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",m=t.split("?",1).join("");if(!be.has(m.slice(m.lastIndexOf(".")))||!e.includes(s))return null;if(m.endsWith(".astro"))return xe(e,t,n);let u=await j(n),o=await(0,Q.transformAsync)(e,{babelrc:!1,configFile:!1,filename:m,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Y.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:u,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:C,composites:b,atomicClasses:l,cssOnlySignature:d}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,R.compileUtilities)(p,c=>g[c],u,(0,R.createSelectorAliases)(b),new Set(l),{darkMode:n.darkMode})).css;return{code:o.code,rules:h?[ke(ve(h,n.layer))]:[],candidates:g,composites:b,atomicClasses:l,origins:C,cssOnlySignature:d,map:o.map}}async function xe(e,t,n){let r=Se(e);if(r.length===0)return null;let s=n.classNameAllocator??(0,R.createClassNameAllocator)(),m=n.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let C of[...r].reverse()){let b=await H(`import { sx } from ${JSON.stringify(m)};
4
- const style = ${C.code};`,`${t}.ts`,{...n,classNameAllocator:s}),l=we(b.code);g=`${g.slice(0,C.start)}${l}${g.slice(C.end)}`,Object.assign(u,b.candidates),Object.assign(o,b.composites),y.push(...b.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,m=e.indexOf("(",s),u=0,o="";for(let y=m;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:s,end:y+1,code:e.slice(s,y+1)}),n.lastIndex=y+1;break}}}return t}function we(e){let t="const style = ",n=e.indexOf(t)+t.length,r=e.indexOf(";",n);return e.slice(n,r)}function ee(e,t){if(!e||typeof e!="object")return;let n=e.getCombinedSourcemap;if(typeof n!="function")return;let r=n.call(e);if(!r||typeof r!="object")return;let s=r;if(!(s.version!==3||!Array.isArray(s.sources)||typeof s.mappings!="string"))return{version:s.version,sources:[...s.sources],names:[...s.names??[]],mappings:s.mappings,file:s.file??t.split("?",1).join(""),...s.sourceRoot?{sourceRoot:s.sourceRoot}:{},...s.sourcesContent?{sourcesContent:[...s.sourcesContent]}:{}}}function ke(e){return{className:`cssx-${D(e)}`,css:e}}function ve(e,t){return e&&t?`@layer ${t}{${e}}`:e}function V(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var P="@cssxio/unplugin/rules",Me=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,te=new Map;function Re(e,t){return`${e}\0${JSON.stringify(t)}`}function _(e,t){let n=Re(e,t),r=te.get(n);return r||(r={classNameAllocator:(0,z.createClassNameAllocator)(),transformedDataById:new Map},te.set(n,r)),r}function Ne(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Oe(e,t,n){let r=new Set;for(let s of t)e.moduleGraph?.invalidateModule(s,r,n,!0);for(let s of r){if(!s.id)continue;let m=e.runner?.evaluatedModules?.getModuleById(s.id);m&&e.runner?.evaluatedModules?.invalidateModule(m)}}function Ae(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Pe(e[P])}function Pe(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:m,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(n)?n:[],candidates:r&&typeof r=="object"?r:{},composites:s&&typeof s=="object"?s:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var Ie=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,m=(0,z.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,C=()=>j(e),b=async function(l,d){let p=new Set(Object.values(d).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(S));if(t.framework!=="vite")for(let a of s.keys())p.has(a)||s.delete(a);let h=t.framework==="vite"?[...s.values()]:[...p].map(a=>{let f=Ae(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:s.get(a)??f}),c=await v(h,await C(),e.layer,r,e.darkMode,e.preflight);if(!c.css)return;let i=A(n,c.css);if(Object.hasOwn(d,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(c,i)}),c.map){let a=`${i}.map`;if(Object.hasOwn(d,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:O(c.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Me},async handler(l,d){e.themeFile&&this.addWatchFile?.((0,w.resolve)(process.cwd(),e.themeFile));let p=Ne(this),h=p?_(p,e):void 0,c=await H(l,d,{...e,classNameAllocator:h?.classNameAllocator??m},ee(this,d)),i={id:S(d),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};Z(this,i,P);let a=S(d);(c||a===d)&&(s.set(a,i),u.set((0,w.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&V(g,E("/",n));let f=c?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&c?`${f}
5
- ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event==="delete"&&s.delete(S(l))},rollup:{generateBundle:b},vite:{generateBundle:b,configureServer(l){g=l;let d=E(l.config.base,n),p=E("/",n);l.watcher?.on("unlink",h=>{s.delete(S(h)),V(l,p)}),l.middlewares.use((h,c,i)=>{let a=h.url?.split("?",1)[0];if(a!==d&&(a!==`${d}.map`||!r))return i();C().then(f=>v([...s.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${d}.map`){c.setHeader("Content-Type","application/json; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(f.map?O(f.map,n):"");return}c.setHeader("Content-Type","text/css; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(M(f,n))}).catch(f=>{c.setHeader("Content-Type","text/plain; charset=utf-8"),c.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let d=this.environment;if(!d||d.name==="client")return;let p=l.modules.filter(i=>{let a=s.get(S(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,s.get(S(i.id)).cssOnlySignature]));for(let i of p)i.url&&await d.transformRequest(i.url);if(p.every(i=>{let a=s.get(S(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Oe(d,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="rspack"?{rspack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let d=l.initialOptions.absWorkingDir??process.cwd();y=d,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,w.resolve)(d,f)));for(let f of u.keys())h.has(f)||u.delete(f);let c=await v([...u.values()],await C(),e.layer,r,e.darkMode,e.preflight),i=K(d,l.initialOptions,A(n,c.css));if(!c.css){o&&await(0,N.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(c,(0,w.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:se.Buffer.from(a),hash:"",text:a};if(f.findIndex(oe=>oe.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,N.mkdir)((0,w.dirname)(i),{recursive:!0}),await(0,N.writeFile)(i,a),o=i})}}}:{}}},F=(0,ne.createUnplugin)(Ie);function Le(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var ce=Object.create;var F=Object.defineProperty;var ue=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,fe=Object.prototype.hasOwnProperty;var ge=(e,t)=>{for(var s in t)F(e,s,{get:t[s],enumerable:!0})},q=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of me(t))!fe.call(e,n)&&n!==s&&F(e,n,{get:()=>t[n],enumerable:!(r=ue(t,n))||r.enumerable});return e};var ye=(e,t,s)=>(s=e!=null?ce(pe(e)):{},q(t||!e||!e.__esModule?F(s,"default",{value:e,enumerable:!0}):s,e)),he=e=>q(F({},"__esModule",{value:!0}),e);var _e={};ge(_e,{default:()=>He});module.exports=he(_e);var G=require("@cssxio/compiler"),ae=require("unplugin"),ie=require("buffer"),O=require("fs/promises"),S=require("path");var L=require("@cssxio/compiler"),Z=require("path");var J='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,s,r=!0,n,d=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,x=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!x.has(a)){let k=i.origins?.[a];x.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let C=Object.keys(u).sort(),l=d?J:"";if(C.length===0)return{css:l&&s?`@layer ${s}{${l}}`:l};let c=await(0,L.compileUtilities)(C,i=>u[i],t,(0,L.createSelectorAliases)(o),g?y:void 0,{darkMode:n}),p=s?`@layer ${s}{`:"",h=`${p}${l}${c.css}${p?"}":""}`,m=r?Ce(`${p}${l}${c.prefixCss}`,c.entries,x):void 0;return{css:h,...m?{map:m}:{}}}function M(e,t){return e.map?`${e.css}
2
+ /*# sourceMappingURL=${(0,Z.basename)(t)}.map */`:e.css}function A(e,t){return JSON.stringify({...e,file:t})}function Ce(e,t,s){let r=[...new Set(t.map(o=>s.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let n=new Map(r.map((o,y)=>[o,y])),d=[],u=K({line:0,column:0},e);for(let o of t){let y=s.get(o.candidate);y&&d.push({...u,source:n.get(y.id),originalLine:y.line,originalColumn:y.column}),u=K(u,o.css)}return{version:3,sources:r,names:[],mappings:xe(d)}}function K(e,t){let s=t.split(`
3
+ `);return{line:e.line+s.length-1,column:s.at(-1).length+e.column*+(s.length===1)}}function xe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),s=0,r=0,n=0,d=0,u=0;for(let o of e)u*=+(o.line===d),d=o.line,t[o.line]?.push(`${E(o.column-u)}${E(o.source-s)}${E(o.originalLine-r)}${E(o.originalColumn-n)}`),u=o.column,s=o.source,r=o.originalLine,n=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var be="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function E(e){let t="",s=e<0?-e<<1|1:e<<1;do{let r=s&31;s>>>=5,s&&(r|=32),t+=be[r]}while(s);return t}var Q=require("fs/promises"),b=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,Q.readFile)((0,b.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');_(e.cssFileName??"cssx.css")}function H(e){let t=2166136261;for(let s=0;s<e.length;s++)t^=e.charCodeAt(s),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function P(e,t){return _(e).replaceAll("[hash]",H(t))}function D(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${_(t).replaceAll(b.sep,"/")}`}function Y(e,t,s){return t.outdir?(0,b.resolve)(e,t.outdir,s):t.outfile?(0,b.resolve)((0,b.dirname)((0,b.resolve)(e,t.outfile)),s):(0,b.resolve)(e,s)}function w(e){return e.split("?",1).join("")}function _(e){if(!e||(0,b.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,b.normalize)(e);if(t===".."||t.startsWith(`..${b.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function ee(e,t,s){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let n=r.loaderContext?._module;if(!n)return;let d=n.buildInfo??(n.buildInfo={});d[s]=t}function V(e,t,s,r,n,d,u,o,y=!1,g){let x=e.name??e.options?.name;x==="server"||x==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let l=g?await g():Se([...C.modules].map(h=>we(h,d)).filter(h=>h!==void 0),u?.values()??[]),c=await v(l,await s(),r,n,o,y);if(!c.css)return;let p=P(t,c.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(c,p))),c.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(A(c.map,p)))}})})}function Se(e,t){let s=new Map,r=[];for(let n of t)n.id?s.set(n.id,n):r.push(n);for(let n of e)n.id?s.set(n.id,n):r.push(n);return[...s.values(),...r]}function we(e,t){let s=e.buildInfo?.[t];if(!s||typeof s!="object")return;let{id:r,candidates:n,composites:d,atomicClasses:u,origins:o}=s;return{id:typeof r=="string"?r:"",candidates:n&&typeof n=="object"?n:{},composites:d&&typeof d=="object"?d:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var T=require("fs/promises"),R=require("path"),re=require("@cssxio/compiler");var te=require("@babel/core"),se=ye(require("@cssxio/babel-plugin"),1),N=require("@cssxio/compiler");var ke=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function I(e,t,s={},r){B(s);let n=s.importSource??"@cssxio/cssx",d=t.split("?",1).join("");if(!ke.has(d.slice(d.lastIndexOf(".")))||!e.includes(n))return null;if(d.endsWith(".astro"))return ve(e,t,s);let u=await $(s),o=await(0,te.transformAsync)(e,{babelrc:!1,configFile:!1,filename:d,parserOpts:{plugins:["jsx","typescript"]},plugins:[[se.default,{importSource:n,classNameAllocator:s.classNameAllocator,theme:u,reusabilityBudget:s.reusabilityBudget,stableClassNames:s.stableClassNames,stableClassNameFileName:s.stableClassNameFileName,darkMode:s.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:x,composites:C,atomicClasses:l,cssOnlySignature:c}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,N.compileUtilities)(p,m=>g[m],u,(0,N.createSelectorAliases)(C),new Set(l),{darkMode:s.darkMode})).css;return{code:o.code,rules:h?[Re(Oe(h,s.layer))]:[],candidates:g,composites:C,atomicClasses:l,origins:x,cssOnlySignature:c,map:o.map}}async function ve(e,t,s){let r=Me(e);if(r.length===0)return null;let n=s.classNameAllocator??(0,N.createClassNameAllocator)(),d=s.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let x of[...r].reverse()){let C=await I(`import { sx } from ${JSON.stringify(d)};
4
+ const style = ${x.code};`,`${t}.ts`,{...s,classNameAllocator:n}),l=Ne(C.code);g=`${g.slice(0,x.start)}${l}${g.slice(x.end)}`,Object.assign(u,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Me(e){let t=[],s=/\bsx\s*\(/g;for(let r of e.matchAll(s)){let n=r.index,d=e.indexOf("(",n),u=0,o="";for(let y=d;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:n,end:y+1,code:e.slice(n,y+1)}),s.lastIndex=y+1;break}}}return t}function Ne(e){let t="const style = ",s=e.indexOf(t)+t.length,r=e.indexOf(";",s);return e.slice(s,r)}function ne(e,t){if(!e||typeof e!="object")return;let s=e.getCombinedSourcemap;if(typeof s!="function")return;let r=s.call(e);if(!r||typeof r!="object")return;let n=r;if(!(n.version!==3||!Array.isArray(n.sources)||typeof n.mappings!="string"))return{version:n.version,sources:[...n.sources],names:[...n.names??[]],mappings:n.mappings,file:n.file??t.split("?",1).join(""),...n.sourceRoot?{sourceRoot:n.sourceRoot}:{},...n.sourcesContent?{sourcesContent:[...n.sourcesContent]}:{}}}function Re(e){return{className:`cssx-${H(e)}`,css:e}}function Oe(e,t){return e&&t?`@layer ${t}{${e}}`:e}var Ae=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),Pe=new Set([".git",".next",".turbo","node_modules"]);async function X(e,t){let s=await Ie(e),r=(0,re.createClassNameAllocator)(t.className),n=[];for(let d of s){let u=await(0,T.readFile)(d,"utf8"),o=await I(u,d,{...t,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,R.relative)(e,d).replaceAll(R.sep,"/")});o&&n.push({id:d,candidates:o.candidates,composites:o.composites,atomicClasses:o.atomicClasses,origins:o.origins})}return n}async function Ie(e){let t=[],s=[e];for(;s.length>0;){let r=s.pop();for(let n of await(0,T.readdir)(r,{withFileTypes:!0})){let d=(0,R.join)(r,n.name);if(n.isDirectory()){Pe.has(n.name)||s.push(d);continue}n.isFile()&&Ae.has(d.slice(d.lastIndexOf(".")))&&t.push(d)}}return t.sort()}function z(e,t,s=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:s}]})}var j="@cssxio/unplugin/rules",je=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,oe=new Map;function Fe(e,t){return`${e}\0${JSON.stringify(t)}`}function W(e,t){let s=Fe(e,t),r=oe.get(s);return r||(r={classNameAllocator:(0,G.createClassNameAllocator)(),transformedDataById:new Map},oe.set(s,r)),r}function Ee(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Le(e,t,s){let r=new Set;for(let n of t)e.moduleGraph?.invalidateModule(n,r,s,!0);for(let n of r){if(!n.id)continue;let d=e.runner?.evaluatedModules?.getModuleById(n.id);d&&e.runner?.evaluatedModules?.invalidateModule(d)}}function $e(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Be(e[j])}function Be(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:s,candidates:r,composites:n,atomicClasses:d,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(s)?s:[],candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var De=(e={},t)=>{B(e);let s=e.cssFileName??"cssx.css",r=e.sourceMap??!0,n=new Map,d=(0,G.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,x=()=>$(e),C=async function(l,c){let p=new Set(Object.values(c).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(w));if(t.framework!=="vite")for(let a of n.keys())p.has(a)||n.delete(a);let h=t.framework==="vite"?[...n.values()]:[...p].map(a=>{let f=$e(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:n.get(a)??f}),m=await v(h,await x(),e.layer,r,e.darkMode,e.preflight);if(!m.css)return;let i=P(s,m.css);if(Object.hasOwn(c,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(m,i)}),m.map){let a=`${i}.map`;if(Object.hasOwn(c,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:A(m.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:je},async handler(l,c){e.themeFile&&this.addWatchFile?.((0,S.resolve)(process.cwd(),e.themeFile));let p=Ee(this),h=p?W(p,e):void 0,m=await I(l,c,{...e,classNameAllocator:h?.classNameAllocator??d,...e.stableClassNames?{stableClassNameFileName:(0,S.relative)(p??process.cwd(),w(c)).replaceAll(S.sep,"/")}:{}},ne(this,c)),i={id:w(c),rules:m?.rules??[],candidates:m?.candidates??{},composites:m?.composites??{},atomicClasses:m?.atomicClasses??[],origins:m?.origins??{},cssOnlySignature:m?.cssOnlySignature??""};ee(this,i,j);let a=w(c);(m||a===c)&&(n.set(a,i),u.set((0,S.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&z(g,D("/",s));let f=m?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&m?`${f}
5
+ ${Te(s)}`:f,meta:{[j]:i},...m?.map?{map:m.map}:{}}}},watchChange(l,c){c.event==="delete"&&n.delete(w(l))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(l){g=l;let c=D(l.config.base,s),p=D("/",s);l.watcher?.on("unlink",h=>{n.delete(w(h)),z(l,p)}),l.middlewares.use((h,m,i)=>{let a=h.url?.split("?",1)[0];if(a!==c&&(a!==`${c}.map`||!r))return i();x().then(f=>v([...n.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${c}.map`){m.setHeader("Content-Type","application/json; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(f.map?A(f.map,s):"");return}m.setHeader("Content-Type","text/css; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(M(f,s))}).catch(f=>{m.setHeader("Content-Type","text/plain; charset=utf-8"),m.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let c=this.environment;if(!c||c.name==="client")return;let p=l.modules.filter(i=>{let a=n.get(w(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,n.get(w(i.id)).cssOnlySignature]));for(let i of p)i.url&&await c.transformRequest(i.url);if(p.every(i=>{let a=n.get(w(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Le(c,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="rspack"?{rspack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let c=l.initialOptions.absWorkingDir??process.cwd();y=c,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,S.resolve)(c,f)));for(let f of u.keys())h.has(f)||u.delete(f);let m=await v([...u.values()],await x(),e.layer,r,e.darkMode,e.preflight),i=Y(c,l.initialOptions,P(s,m.css));if(!m.css){o&&await(0,O.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(m,(0,S.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:ie.Buffer.from(a),hash:"",text:a};if(f.findIndex(de=>de.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,O.mkdir)((0,S.dirname)(i),{recursive:!0}),await(0,O.writeFile)(i,a),o=i})}}}:{}}},U=(0,ae.createUnplugin)(De);function Te(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
6
6
  const key = "__cssxStylesheetHmr";
7
7
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
8
8
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -89,4 +89,4 @@ ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ye=F.vite,re=F.rollup,et=F.webpack,tt=F.rspack;var $e=re,je=$e;
92
+ }`}var dt=U.vite,le=U.rollup,ct=U.webpack,ut=U.rspack;var Ue=le,He=Ue;
package/dist/rollup.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.cjs';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.cjs';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rollup.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.js';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rollup.js CHANGED
@@ -1 +1 @@
1
- import{f as o}from"./chunk-ZGXUEAIG.js";var l=o,r=l;export{r as default};
1
+ import{f as o}from"./chunk-S64RLZTF.js";var l=o,r=l;export{r as default};
package/dist/rspack.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var ae=Object.create;var I=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of le(t))!ce.call(e,s)&&s!==n&&I(e,s,{get:()=>t[s],enumerable:!(r=ie(t,s))||r.enumerable});return e};var me=(e,t,n)=>(n=e!=null?ae(de(e)):{},W(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)),pe=e=>W(I({},"__esModule",{value:!0}),e);var Be={};ue(Be,{default:()=>je});module.exports=pe(Be);var z=require("@cssxio/compiler"),ne=require("unplugin"),se=require("buffer"),N=require("fs/promises"),w=require("path");var $=require("@cssxio/compiler"),q=require("path");var X='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,n,r=!0,s,m=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,C=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!C.has(a)){let k=i.origins?.[a];C.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let b=Object.keys(u).sort(),l=m?X:"";if(b.length===0)return{css:l&&n?`@layer ${n}{${l}}`:l};let d=await(0,$.compileUtilities)(b,i=>u[i],t,(0,$.createSelectorAliases)(o),g?y:void 0,{darkMode:s}),p=n?`@layer ${n}{`:"",h=`${p}${l}${d.css}${p?"}":""}`,c=r?fe(`${p}${l}${d.prefixCss}`,d.entries,C):void 0;return{css:h,...c?{map:c}:{}}}function M(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function O(e,t){return JSON.stringify({...e,file:t})}function fe(e,t,n){let r=[...new Set(t.map(o=>n.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let s=new Map(r.map((o,y)=>[o,y])),m=[],u=G({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&m.push({...u,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),u=G(u,o.css)}return{version:3,sources:r,names:[],mappings:ge(m)}}function G(e,t){let n=t.split(`
3
- `);return{line:e.line+n.length-1,column:n.at(-1).length+e.column*+(n.length===1)}}function ge(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,m=0,u=0;for(let o of e)u*=+(o.line===m),m=o.line,t[o.line]?.push(`${L(o.column-u)}${L(o.source-n)}${L(o.originalLine-r)}${L(o.originalColumn-s)}`),u=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let t="",n=e<0?-e<<1|1:e<<1;do{let r=n&31;n>>>=5,n&&(r|=32),t+=ye[r]}while(n);return t}var J=require("fs/promises"),x=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,J.readFile)((0,x.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');T(e.cssFileName??"cssx.css")}function D(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function A(e,t){return T(e).replaceAll("[hash]",D(t))}function E(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${T(t).replaceAll(x.sep,"/")}`}function K(e,t,n){return t.outdir?(0,x.resolve)(e,t.outdir,n):t.outfile?(0,x.resolve)((0,x.dirname)((0,x.resolve)(e,t.outfile)),n):(0,x.resolve)(e,n)}function S(e){return e.split("?",1).join("")}function T(e){if(!e||(0,x.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,x.normalize)(e);if(t===".."||t.startsWith(`..${x.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function Z(e,t,n){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let s=r.loaderContext?._module;if(!s)return;let m=s.buildInfo??(s.buildInfo={});m[n]=t}function U(e,t,n,r,s,m,u,o,y=!1){let g=e.name??e.options?.name;g==="server"||g==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let b=[...C.modules].map(h=>Ce(h,m)).filter(h=>h!==void 0),l=he(b,u?.values()??[]),d=await v(l,await n(),r,s,o,y);if(!d.css)return;let p=A(t,d.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(d,p))),d.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(O(d.map,p)))}})})}function he(e,t){let n=new Map,r=[];for(let s of t)s.id?n.set(s.id,s):r.push(s);for(let s of e)s.id?n.set(s.id,s):r.push(s);return[...n.values(),...r]}function Ce(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:m,atomicClasses:u,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:m&&typeof m=="object"?m:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var Q=require("@babel/core"),Y=me(require("@cssxio/babel-plugin"),1),R=require("@cssxio/compiler");var be=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function H(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",m=t.split("?",1).join("");if(!be.has(m.slice(m.lastIndexOf(".")))||!e.includes(s))return null;if(m.endsWith(".astro"))return xe(e,t,n);let u=await j(n),o=await(0,Q.transformAsync)(e,{babelrc:!1,configFile:!1,filename:m,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Y.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:u,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:C,composites:b,atomicClasses:l,cssOnlySignature:d}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,R.compileUtilities)(p,c=>g[c],u,(0,R.createSelectorAliases)(b),new Set(l),{darkMode:n.darkMode})).css;return{code:o.code,rules:h?[ke(ve(h,n.layer))]:[],candidates:g,composites:b,atomicClasses:l,origins:C,cssOnlySignature:d,map:o.map}}async function xe(e,t,n){let r=Se(e);if(r.length===0)return null;let s=n.classNameAllocator??(0,R.createClassNameAllocator)(),m=n.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let C of[...r].reverse()){let b=await H(`import { sx } from ${JSON.stringify(m)};
4
- const style = ${C.code};`,`${t}.ts`,{...n,classNameAllocator:s}),l=we(b.code);g=`${g.slice(0,C.start)}${l}${g.slice(C.end)}`,Object.assign(u,b.candidates),Object.assign(o,b.composites),y.push(...b.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,m=e.indexOf("(",s),u=0,o="";for(let y=m;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:s,end:y+1,code:e.slice(s,y+1)}),n.lastIndex=y+1;break}}}return t}function we(e){let t="const style = ",n=e.indexOf(t)+t.length,r=e.indexOf(";",n);return e.slice(n,r)}function ee(e,t){if(!e||typeof e!="object")return;let n=e.getCombinedSourcemap;if(typeof n!="function")return;let r=n.call(e);if(!r||typeof r!="object")return;let s=r;if(!(s.version!==3||!Array.isArray(s.sources)||typeof s.mappings!="string"))return{version:s.version,sources:[...s.sources],names:[...s.names??[]],mappings:s.mappings,file:s.file??t.split("?",1).join(""),...s.sourceRoot?{sourceRoot:s.sourceRoot}:{},...s.sourcesContent?{sourcesContent:[...s.sourcesContent]}:{}}}function ke(e){return{className:`cssx-${D(e)}`,css:e}}function ve(e,t){return e&&t?`@layer ${t}{${e}}`:e}function V(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var P="@cssxio/unplugin/rules",Me=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,te=new Map;function Re(e,t){return`${e}\0${JSON.stringify(t)}`}function _(e,t){let n=Re(e,t),r=te.get(n);return r||(r={classNameAllocator:(0,z.createClassNameAllocator)(),transformedDataById:new Map},te.set(n,r)),r}function Ne(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Oe(e,t,n){let r=new Set;for(let s of t)e.moduleGraph?.invalidateModule(s,r,n,!0);for(let s of r){if(!s.id)continue;let m=e.runner?.evaluatedModules?.getModuleById(s.id);m&&e.runner?.evaluatedModules?.invalidateModule(m)}}function Ae(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Pe(e[P])}function Pe(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:m,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(n)?n:[],candidates:r&&typeof r=="object"?r:{},composites:s&&typeof s=="object"?s:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var Ie=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,m=(0,z.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,C=()=>j(e),b=async function(l,d){let p=new Set(Object.values(d).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(S));if(t.framework!=="vite")for(let a of s.keys())p.has(a)||s.delete(a);let h=t.framework==="vite"?[...s.values()]:[...p].map(a=>{let f=Ae(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:s.get(a)??f}),c=await v(h,await C(),e.layer,r,e.darkMode,e.preflight);if(!c.css)return;let i=A(n,c.css);if(Object.hasOwn(d,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(c,i)}),c.map){let a=`${i}.map`;if(Object.hasOwn(d,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:O(c.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Me},async handler(l,d){e.themeFile&&this.addWatchFile?.((0,w.resolve)(process.cwd(),e.themeFile));let p=Ne(this),h=p?_(p,e):void 0,c=await H(l,d,{...e,classNameAllocator:h?.classNameAllocator??m},ee(this,d)),i={id:S(d),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};Z(this,i,P);let a=S(d);(c||a===d)&&(s.set(a,i),u.set((0,w.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&V(g,E("/",n));let f=c?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&c?`${f}
5
- ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event==="delete"&&s.delete(S(l))},rollup:{generateBundle:b},vite:{generateBundle:b,configureServer(l){g=l;let d=E(l.config.base,n),p=E("/",n);l.watcher?.on("unlink",h=>{s.delete(S(h)),V(l,p)}),l.middlewares.use((h,c,i)=>{let a=h.url?.split("?",1)[0];if(a!==d&&(a!==`${d}.map`||!r))return i();C().then(f=>v([...s.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${d}.map`){c.setHeader("Content-Type","application/json; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(f.map?O(f.map,n):"");return}c.setHeader("Content-Type","text/css; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(M(f,n))}).catch(f=>{c.setHeader("Content-Type","text/plain; charset=utf-8"),c.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let d=this.environment;if(!d||d.name==="client")return;let p=l.modules.filter(i=>{let a=s.get(S(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,s.get(S(i.id)).cssOnlySignature]));for(let i of p)i.url&&await d.transformRequest(i.url);if(p.every(i=>{let a=s.get(S(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Oe(d,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="rspack"?{rspack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let d=l.initialOptions.absWorkingDir??process.cwd();y=d,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,w.resolve)(d,f)));for(let f of u.keys())h.has(f)||u.delete(f);let c=await v([...u.values()],await C(),e.layer,r,e.darkMode,e.preflight),i=K(d,l.initialOptions,A(n,c.css));if(!c.css){o&&await(0,N.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(c,(0,w.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:se.Buffer.from(a),hash:"",text:a};if(f.findIndex(oe=>oe.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,N.mkdir)((0,w.dirname)(i),{recursive:!0}),await(0,N.writeFile)(i,a),o=i})}}}:{}}},F=(0,ne.createUnplugin)(Ie);function Le(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var ce=Object.create;var F=Object.defineProperty;var ue=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,fe=Object.prototype.hasOwnProperty;var ge=(e,t)=>{for(var s in t)F(e,s,{get:t[s],enumerable:!0})},q=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of me(t))!fe.call(e,n)&&n!==s&&F(e,n,{get:()=>t[n],enumerable:!(r=ue(t,n))||r.enumerable});return e};var ye=(e,t,s)=>(s=e!=null?ce(pe(e)):{},q(t||!e||!e.__esModule?F(s,"default",{value:e,enumerable:!0}):s,e)),he=e=>q(F({},"__esModule",{value:!0}),e);var _e={};ge(_e,{default:()=>He});module.exports=he(_e);var G=require("@cssxio/compiler"),ae=require("unplugin"),ie=require("buffer"),O=require("fs/promises"),S=require("path");var L=require("@cssxio/compiler"),Z=require("path");var J='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,s,r=!0,n,d=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,x=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!x.has(a)){let k=i.origins?.[a];x.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let C=Object.keys(u).sort(),l=d?J:"";if(C.length===0)return{css:l&&s?`@layer ${s}{${l}}`:l};let c=await(0,L.compileUtilities)(C,i=>u[i],t,(0,L.createSelectorAliases)(o),g?y:void 0,{darkMode:n}),p=s?`@layer ${s}{`:"",h=`${p}${l}${c.css}${p?"}":""}`,m=r?Ce(`${p}${l}${c.prefixCss}`,c.entries,x):void 0;return{css:h,...m?{map:m}:{}}}function M(e,t){return e.map?`${e.css}
2
+ /*# sourceMappingURL=${(0,Z.basename)(t)}.map */`:e.css}function A(e,t){return JSON.stringify({...e,file:t})}function Ce(e,t,s){let r=[...new Set(t.map(o=>s.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let n=new Map(r.map((o,y)=>[o,y])),d=[],u=K({line:0,column:0},e);for(let o of t){let y=s.get(o.candidate);y&&d.push({...u,source:n.get(y.id),originalLine:y.line,originalColumn:y.column}),u=K(u,o.css)}return{version:3,sources:r,names:[],mappings:xe(d)}}function K(e,t){let s=t.split(`
3
+ `);return{line:e.line+s.length-1,column:s.at(-1).length+e.column*+(s.length===1)}}function xe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),s=0,r=0,n=0,d=0,u=0;for(let o of e)u*=+(o.line===d),d=o.line,t[o.line]?.push(`${E(o.column-u)}${E(o.source-s)}${E(o.originalLine-r)}${E(o.originalColumn-n)}`),u=o.column,s=o.source,r=o.originalLine,n=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var be="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function E(e){let t="",s=e<0?-e<<1|1:e<<1;do{let r=s&31;s>>>=5,s&&(r|=32),t+=be[r]}while(s);return t}var Q=require("fs/promises"),b=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,Q.readFile)((0,b.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');_(e.cssFileName??"cssx.css")}function H(e){let t=2166136261;for(let s=0;s<e.length;s++)t^=e.charCodeAt(s),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function P(e,t){return _(e).replaceAll("[hash]",H(t))}function D(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${_(t).replaceAll(b.sep,"/")}`}function Y(e,t,s){return t.outdir?(0,b.resolve)(e,t.outdir,s):t.outfile?(0,b.resolve)((0,b.dirname)((0,b.resolve)(e,t.outfile)),s):(0,b.resolve)(e,s)}function w(e){return e.split("?",1).join("")}function _(e){if(!e||(0,b.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,b.normalize)(e);if(t===".."||t.startsWith(`..${b.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function ee(e,t,s){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let n=r.loaderContext?._module;if(!n)return;let d=n.buildInfo??(n.buildInfo={});d[s]=t}function V(e,t,s,r,n,d,u,o,y=!1,g){let x=e.name??e.options?.name;x==="server"||x==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let l=g?await g():Se([...C.modules].map(h=>we(h,d)).filter(h=>h!==void 0),u?.values()??[]),c=await v(l,await s(),r,n,o,y);if(!c.css)return;let p=P(t,c.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(c,p))),c.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(A(c.map,p)))}})})}function Se(e,t){let s=new Map,r=[];for(let n of t)n.id?s.set(n.id,n):r.push(n);for(let n of e)n.id?s.set(n.id,n):r.push(n);return[...s.values(),...r]}function we(e,t){let s=e.buildInfo?.[t];if(!s||typeof s!="object")return;let{id:r,candidates:n,composites:d,atomicClasses:u,origins:o}=s;return{id:typeof r=="string"?r:"",candidates:n&&typeof n=="object"?n:{},composites:d&&typeof d=="object"?d:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var T=require("fs/promises"),R=require("path"),re=require("@cssxio/compiler");var te=require("@babel/core"),se=ye(require("@cssxio/babel-plugin"),1),N=require("@cssxio/compiler");var ke=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function I(e,t,s={},r){B(s);let n=s.importSource??"@cssxio/cssx",d=t.split("?",1).join("");if(!ke.has(d.slice(d.lastIndexOf(".")))||!e.includes(n))return null;if(d.endsWith(".astro"))return ve(e,t,s);let u=await $(s),o=await(0,te.transformAsync)(e,{babelrc:!1,configFile:!1,filename:d,parserOpts:{plugins:["jsx","typescript"]},plugins:[[se.default,{importSource:n,classNameAllocator:s.classNameAllocator,theme:u,reusabilityBudget:s.reusabilityBudget,stableClassNames:s.stableClassNames,stableClassNameFileName:s.stableClassNameFileName,darkMode:s.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:x,composites:C,atomicClasses:l,cssOnlySignature:c}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,N.compileUtilities)(p,m=>g[m],u,(0,N.createSelectorAliases)(C),new Set(l),{darkMode:s.darkMode})).css;return{code:o.code,rules:h?[Re(Oe(h,s.layer))]:[],candidates:g,composites:C,atomicClasses:l,origins:x,cssOnlySignature:c,map:o.map}}async function ve(e,t,s){let r=Me(e);if(r.length===0)return null;let n=s.classNameAllocator??(0,N.createClassNameAllocator)(),d=s.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let x of[...r].reverse()){let C=await I(`import { sx } from ${JSON.stringify(d)};
4
+ const style = ${x.code};`,`${t}.ts`,{...s,classNameAllocator:n}),l=Ne(C.code);g=`${g.slice(0,x.start)}${l}${g.slice(x.end)}`,Object.assign(u,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Me(e){let t=[],s=/\bsx\s*\(/g;for(let r of e.matchAll(s)){let n=r.index,d=e.indexOf("(",n),u=0,o="";for(let y=d;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:n,end:y+1,code:e.slice(n,y+1)}),s.lastIndex=y+1;break}}}return t}function Ne(e){let t="const style = ",s=e.indexOf(t)+t.length,r=e.indexOf(";",s);return e.slice(s,r)}function ne(e,t){if(!e||typeof e!="object")return;let s=e.getCombinedSourcemap;if(typeof s!="function")return;let r=s.call(e);if(!r||typeof r!="object")return;let n=r;if(!(n.version!==3||!Array.isArray(n.sources)||typeof n.mappings!="string"))return{version:n.version,sources:[...n.sources],names:[...n.names??[]],mappings:n.mappings,file:n.file??t.split("?",1).join(""),...n.sourceRoot?{sourceRoot:n.sourceRoot}:{},...n.sourcesContent?{sourcesContent:[...n.sourcesContent]}:{}}}function Re(e){return{className:`cssx-${H(e)}`,css:e}}function Oe(e,t){return e&&t?`@layer ${t}{${e}}`:e}var Ae=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),Pe=new Set([".git",".next",".turbo","node_modules"]);async function X(e,t){let s=await Ie(e),r=(0,re.createClassNameAllocator)(t.className),n=[];for(let d of s){let u=await(0,T.readFile)(d,"utf8"),o=await I(u,d,{...t,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,R.relative)(e,d).replaceAll(R.sep,"/")});o&&n.push({id:d,candidates:o.candidates,composites:o.composites,atomicClasses:o.atomicClasses,origins:o.origins})}return n}async function Ie(e){let t=[],s=[e];for(;s.length>0;){let r=s.pop();for(let n of await(0,T.readdir)(r,{withFileTypes:!0})){let d=(0,R.join)(r,n.name);if(n.isDirectory()){Pe.has(n.name)||s.push(d);continue}n.isFile()&&Ae.has(d.slice(d.lastIndexOf(".")))&&t.push(d)}}return t.sort()}function z(e,t,s=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:s}]})}var j="@cssxio/unplugin/rules",je=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,oe=new Map;function Fe(e,t){return`${e}\0${JSON.stringify(t)}`}function W(e,t){let s=Fe(e,t),r=oe.get(s);return r||(r={classNameAllocator:(0,G.createClassNameAllocator)(),transformedDataById:new Map},oe.set(s,r)),r}function Ee(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Le(e,t,s){let r=new Set;for(let n of t)e.moduleGraph?.invalidateModule(n,r,s,!0);for(let n of r){if(!n.id)continue;let d=e.runner?.evaluatedModules?.getModuleById(n.id);d&&e.runner?.evaluatedModules?.invalidateModule(d)}}function $e(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Be(e[j])}function Be(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:s,candidates:r,composites:n,atomicClasses:d,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(s)?s:[],candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var De=(e={},t)=>{B(e);let s=e.cssFileName??"cssx.css",r=e.sourceMap??!0,n=new Map,d=(0,G.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,x=()=>$(e),C=async function(l,c){let p=new Set(Object.values(c).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(w));if(t.framework!=="vite")for(let a of n.keys())p.has(a)||n.delete(a);let h=t.framework==="vite"?[...n.values()]:[...p].map(a=>{let f=$e(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:n.get(a)??f}),m=await v(h,await x(),e.layer,r,e.darkMode,e.preflight);if(!m.css)return;let i=P(s,m.css);if(Object.hasOwn(c,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(m,i)}),m.map){let a=`${i}.map`;if(Object.hasOwn(c,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:A(m.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:je},async handler(l,c){e.themeFile&&this.addWatchFile?.((0,S.resolve)(process.cwd(),e.themeFile));let p=Ee(this),h=p?W(p,e):void 0,m=await I(l,c,{...e,classNameAllocator:h?.classNameAllocator??d,...e.stableClassNames?{stableClassNameFileName:(0,S.relative)(p??process.cwd(),w(c)).replaceAll(S.sep,"/")}:{}},ne(this,c)),i={id:w(c),rules:m?.rules??[],candidates:m?.candidates??{},composites:m?.composites??{},atomicClasses:m?.atomicClasses??[],origins:m?.origins??{},cssOnlySignature:m?.cssOnlySignature??""};ee(this,i,j);let a=w(c);(m||a===c)&&(n.set(a,i),u.set((0,S.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&z(g,D("/",s));let f=m?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&m?`${f}
5
+ ${Te(s)}`:f,meta:{[j]:i},...m?.map?{map:m.map}:{}}}},watchChange(l,c){c.event==="delete"&&n.delete(w(l))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(l){g=l;let c=D(l.config.base,s),p=D("/",s);l.watcher?.on("unlink",h=>{n.delete(w(h)),z(l,p)}),l.middlewares.use((h,m,i)=>{let a=h.url?.split("?",1)[0];if(a!==c&&(a!==`${c}.map`||!r))return i();x().then(f=>v([...n.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${c}.map`){m.setHeader("Content-Type","application/json; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(f.map?A(f.map,s):"");return}m.setHeader("Content-Type","text/css; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(M(f,s))}).catch(f=>{m.setHeader("Content-Type","text/plain; charset=utf-8"),m.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let c=this.environment;if(!c||c.name==="client")return;let p=l.modules.filter(i=>{let a=n.get(w(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,n.get(w(i.id)).cssOnlySignature]));for(let i of p)i.url&&await c.transformRequest(i.url);if(p.every(i=>{let a=n.get(w(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Le(c,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="rspack"?{rspack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let c=l.initialOptions.absWorkingDir??process.cwd();y=c,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,S.resolve)(c,f)));for(let f of u.keys())h.has(f)||u.delete(f);let m=await v([...u.values()],await x(),e.layer,r,e.darkMode,e.preflight),i=Y(c,l.initialOptions,P(s,m.css));if(!m.css){o&&await(0,O.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(m,(0,S.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:ie.Buffer.from(a),hash:"",text:a};if(f.findIndex(de=>de.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,O.mkdir)((0,S.dirname)(i),{recursive:!0}),await(0,O.writeFile)(i,a),o=i})}}}:{}}},U=(0,ae.createUnplugin)(De);function Te(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
6
6
  const key = "__cssxStylesheetHmr";
7
7
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
8
8
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -89,4 +89,4 @@ ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ye=F.vite,et=F.rollup,tt=F.webpack,re=F.rspack;var $e=re,je=$e;
92
+ }`}var dt=U.vite,ct=U.rollup,ut=U.webpack,le=U.rspack;var Ue=le,He=Ue;
package/dist/rspack.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.cjs';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.cjs';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rspack.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.js';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rspack.js CHANGED
@@ -1 +1 @@
1
- import{h as s}from"./chunk-ZGXUEAIG.js";var c=s,p=c;export{p as default};
1
+ import{h as s}from"./chunk-S64RLZTF.js";var c=s,p=c;export{p as default};
package/dist/vite.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var ae=Object.create;var I=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of le(t))!ce.call(e,s)&&s!==n&&I(e,s,{get:()=>t[s],enumerable:!(r=ie(t,s))||r.enumerable});return e};var me=(e,t,n)=>(n=e!=null?ae(de(e)):{},W(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)),pe=e=>W(I({},"__esModule",{value:!0}),e);var Be={};ue(Be,{default:()=>je});module.exports=pe(Be);var z=require("@cssxio/compiler"),ne=require("unplugin"),se=require("buffer"),N=require("fs/promises"),w=require("path");var $=require("@cssxio/compiler"),q=require("path");var X='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,n,r=!0,s,m=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,C=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!C.has(a)){let k=i.origins?.[a];C.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let b=Object.keys(u).sort(),l=m?X:"";if(b.length===0)return{css:l&&n?`@layer ${n}{${l}}`:l};let d=await(0,$.compileUtilities)(b,i=>u[i],t,(0,$.createSelectorAliases)(o),g?y:void 0,{darkMode:s}),p=n?`@layer ${n}{`:"",h=`${p}${l}${d.css}${p?"}":""}`,c=r?fe(`${p}${l}${d.prefixCss}`,d.entries,C):void 0;return{css:h,...c?{map:c}:{}}}function M(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function O(e,t){return JSON.stringify({...e,file:t})}function fe(e,t,n){let r=[...new Set(t.map(o=>n.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let s=new Map(r.map((o,y)=>[o,y])),m=[],u=G({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&m.push({...u,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),u=G(u,o.css)}return{version:3,sources:r,names:[],mappings:ge(m)}}function G(e,t){let n=t.split(`
3
- `);return{line:e.line+n.length-1,column:n.at(-1).length+e.column*+(n.length===1)}}function ge(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,m=0,u=0;for(let o of e)u*=+(o.line===m),m=o.line,t[o.line]?.push(`${L(o.column-u)}${L(o.source-n)}${L(o.originalLine-r)}${L(o.originalColumn-s)}`),u=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let t="",n=e<0?-e<<1|1:e<<1;do{let r=n&31;n>>>=5,n&&(r|=32),t+=ye[r]}while(n);return t}var J=require("fs/promises"),x=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,J.readFile)((0,x.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');T(e.cssFileName??"cssx.css")}function D(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function A(e,t){return T(e).replaceAll("[hash]",D(t))}function E(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${T(t).replaceAll(x.sep,"/")}`}function K(e,t,n){return t.outdir?(0,x.resolve)(e,t.outdir,n):t.outfile?(0,x.resolve)((0,x.dirname)((0,x.resolve)(e,t.outfile)),n):(0,x.resolve)(e,n)}function S(e){return e.split("?",1).join("")}function T(e){if(!e||(0,x.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,x.normalize)(e);if(t===".."||t.startsWith(`..${x.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function Z(e,t,n){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let s=r.loaderContext?._module;if(!s)return;let m=s.buildInfo??(s.buildInfo={});m[n]=t}function U(e,t,n,r,s,m,u,o,y=!1){let g=e.name??e.options?.name;g==="server"||g==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let b=[...C.modules].map(h=>Ce(h,m)).filter(h=>h!==void 0),l=he(b,u?.values()??[]),d=await v(l,await n(),r,s,o,y);if(!d.css)return;let p=A(t,d.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(d,p))),d.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(O(d.map,p)))}})})}function he(e,t){let n=new Map,r=[];for(let s of t)s.id?n.set(s.id,s):r.push(s);for(let s of e)s.id?n.set(s.id,s):r.push(s);return[...n.values(),...r]}function Ce(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:m,atomicClasses:u,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:m&&typeof m=="object"?m:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var Q=require("@babel/core"),Y=me(require("@cssxio/babel-plugin"),1),R=require("@cssxio/compiler");var be=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function H(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",m=t.split("?",1).join("");if(!be.has(m.slice(m.lastIndexOf(".")))||!e.includes(s))return null;if(m.endsWith(".astro"))return xe(e,t,n);let u=await j(n),o=await(0,Q.transformAsync)(e,{babelrc:!1,configFile:!1,filename:m,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Y.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:u,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:C,composites:b,atomicClasses:l,cssOnlySignature:d}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,R.compileUtilities)(p,c=>g[c],u,(0,R.createSelectorAliases)(b),new Set(l),{darkMode:n.darkMode})).css;return{code:o.code,rules:h?[ke(ve(h,n.layer))]:[],candidates:g,composites:b,atomicClasses:l,origins:C,cssOnlySignature:d,map:o.map}}async function xe(e,t,n){let r=Se(e);if(r.length===0)return null;let s=n.classNameAllocator??(0,R.createClassNameAllocator)(),m=n.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let C of[...r].reverse()){let b=await H(`import { sx } from ${JSON.stringify(m)};
4
- const style = ${C.code};`,`${t}.ts`,{...n,classNameAllocator:s}),l=we(b.code);g=`${g.slice(0,C.start)}${l}${g.slice(C.end)}`,Object.assign(u,b.candidates),Object.assign(o,b.composites),y.push(...b.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,m=e.indexOf("(",s),u=0,o="";for(let y=m;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:s,end:y+1,code:e.slice(s,y+1)}),n.lastIndex=y+1;break}}}return t}function we(e){let t="const style = ",n=e.indexOf(t)+t.length,r=e.indexOf(";",n);return e.slice(n,r)}function ee(e,t){if(!e||typeof e!="object")return;let n=e.getCombinedSourcemap;if(typeof n!="function")return;let r=n.call(e);if(!r||typeof r!="object")return;let s=r;if(!(s.version!==3||!Array.isArray(s.sources)||typeof s.mappings!="string"))return{version:s.version,sources:[...s.sources],names:[...s.names??[]],mappings:s.mappings,file:s.file??t.split("?",1).join(""),...s.sourceRoot?{sourceRoot:s.sourceRoot}:{},...s.sourcesContent?{sourcesContent:[...s.sourcesContent]}:{}}}function ke(e){return{className:`cssx-${D(e)}`,css:e}}function ve(e,t){return e&&t?`@layer ${t}{${e}}`:e}function V(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var P="@cssxio/unplugin/rules",Me=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,te=new Map;function Re(e,t){return`${e}\0${JSON.stringify(t)}`}function _(e,t){let n=Re(e,t),r=te.get(n);return r||(r={classNameAllocator:(0,z.createClassNameAllocator)(),transformedDataById:new Map},te.set(n,r)),r}function Ne(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Oe(e,t,n){let r=new Set;for(let s of t)e.moduleGraph?.invalidateModule(s,r,n,!0);for(let s of r){if(!s.id)continue;let m=e.runner?.evaluatedModules?.getModuleById(s.id);m&&e.runner?.evaluatedModules?.invalidateModule(m)}}function Ae(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Pe(e[P])}function Pe(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:m,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(n)?n:[],candidates:r&&typeof r=="object"?r:{},composites:s&&typeof s=="object"?s:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var Ie=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,m=(0,z.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,C=()=>j(e),b=async function(l,d){let p=new Set(Object.values(d).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(S));if(t.framework!=="vite")for(let a of s.keys())p.has(a)||s.delete(a);let h=t.framework==="vite"?[...s.values()]:[...p].map(a=>{let f=Ae(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:s.get(a)??f}),c=await v(h,await C(),e.layer,r,e.darkMode,e.preflight);if(!c.css)return;let i=A(n,c.css);if(Object.hasOwn(d,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(c,i)}),c.map){let a=`${i}.map`;if(Object.hasOwn(d,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:O(c.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Me},async handler(l,d){e.themeFile&&this.addWatchFile?.((0,w.resolve)(process.cwd(),e.themeFile));let p=Ne(this),h=p?_(p,e):void 0,c=await H(l,d,{...e,classNameAllocator:h?.classNameAllocator??m},ee(this,d)),i={id:S(d),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};Z(this,i,P);let a=S(d);(c||a===d)&&(s.set(a,i),u.set((0,w.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&V(g,E("/",n));let f=c?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&c?`${f}
5
- ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event==="delete"&&s.delete(S(l))},rollup:{generateBundle:b},vite:{generateBundle:b,configureServer(l){g=l;let d=E(l.config.base,n),p=E("/",n);l.watcher?.on("unlink",h=>{s.delete(S(h)),V(l,p)}),l.middlewares.use((h,c,i)=>{let a=h.url?.split("?",1)[0];if(a!==d&&(a!==`${d}.map`||!r))return i();C().then(f=>v([...s.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${d}.map`){c.setHeader("Content-Type","application/json; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(f.map?O(f.map,n):"");return}c.setHeader("Content-Type","text/css; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(M(f,n))}).catch(f=>{c.setHeader("Content-Type","text/plain; charset=utf-8"),c.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let d=this.environment;if(!d||d.name==="client")return;let p=l.modules.filter(i=>{let a=s.get(S(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,s.get(S(i.id)).cssOnlySignature]));for(let i of p)i.url&&await d.transformRequest(i.url);if(p.every(i=>{let a=s.get(S(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Oe(d,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="rspack"?{rspack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let d=l.initialOptions.absWorkingDir??process.cwd();y=d,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,w.resolve)(d,f)));for(let f of u.keys())h.has(f)||u.delete(f);let c=await v([...u.values()],await C(),e.layer,r,e.darkMode,e.preflight),i=K(d,l.initialOptions,A(n,c.css));if(!c.css){o&&await(0,N.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(c,(0,w.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:se.Buffer.from(a),hash:"",text:a};if(f.findIndex(oe=>oe.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,N.mkdir)((0,w.dirname)(i),{recursive:!0}),await(0,N.writeFile)(i,a),o=i})}}}:{}}},F=(0,ne.createUnplugin)(Ie);function Le(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var ce=Object.create;var F=Object.defineProperty;var ue=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,fe=Object.prototype.hasOwnProperty;var ge=(e,t)=>{for(var s in t)F(e,s,{get:t[s],enumerable:!0})},q=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of me(t))!fe.call(e,n)&&n!==s&&F(e,n,{get:()=>t[n],enumerable:!(r=ue(t,n))||r.enumerable});return e};var ye=(e,t,s)=>(s=e!=null?ce(pe(e)):{},q(t||!e||!e.__esModule?F(s,"default",{value:e,enumerable:!0}):s,e)),he=e=>q(F({},"__esModule",{value:!0}),e);var _e={};ge(_e,{default:()=>He});module.exports=he(_e);var G=require("@cssxio/compiler"),ae=require("unplugin"),ie=require("buffer"),O=require("fs/promises"),S=require("path");var L=require("@cssxio/compiler"),Z=require("path");var J='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,s,r=!0,n,d=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,x=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!x.has(a)){let k=i.origins?.[a];x.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let C=Object.keys(u).sort(),l=d?J:"";if(C.length===0)return{css:l&&s?`@layer ${s}{${l}}`:l};let c=await(0,L.compileUtilities)(C,i=>u[i],t,(0,L.createSelectorAliases)(o),g?y:void 0,{darkMode:n}),p=s?`@layer ${s}{`:"",h=`${p}${l}${c.css}${p?"}":""}`,m=r?Ce(`${p}${l}${c.prefixCss}`,c.entries,x):void 0;return{css:h,...m?{map:m}:{}}}function M(e,t){return e.map?`${e.css}
2
+ /*# sourceMappingURL=${(0,Z.basename)(t)}.map */`:e.css}function A(e,t){return JSON.stringify({...e,file:t})}function Ce(e,t,s){let r=[...new Set(t.map(o=>s.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let n=new Map(r.map((o,y)=>[o,y])),d=[],u=K({line:0,column:0},e);for(let o of t){let y=s.get(o.candidate);y&&d.push({...u,source:n.get(y.id),originalLine:y.line,originalColumn:y.column}),u=K(u,o.css)}return{version:3,sources:r,names:[],mappings:xe(d)}}function K(e,t){let s=t.split(`
3
+ `);return{line:e.line+s.length-1,column:s.at(-1).length+e.column*+(s.length===1)}}function xe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),s=0,r=0,n=0,d=0,u=0;for(let o of e)u*=+(o.line===d),d=o.line,t[o.line]?.push(`${E(o.column-u)}${E(o.source-s)}${E(o.originalLine-r)}${E(o.originalColumn-n)}`),u=o.column,s=o.source,r=o.originalLine,n=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var be="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function E(e){let t="",s=e<0?-e<<1|1:e<<1;do{let r=s&31;s>>>=5,s&&(r|=32),t+=be[r]}while(s);return t}var Q=require("fs/promises"),b=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,Q.readFile)((0,b.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');_(e.cssFileName??"cssx.css")}function H(e){let t=2166136261;for(let s=0;s<e.length;s++)t^=e.charCodeAt(s),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function P(e,t){return _(e).replaceAll("[hash]",H(t))}function D(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${_(t).replaceAll(b.sep,"/")}`}function Y(e,t,s){return t.outdir?(0,b.resolve)(e,t.outdir,s):t.outfile?(0,b.resolve)((0,b.dirname)((0,b.resolve)(e,t.outfile)),s):(0,b.resolve)(e,s)}function w(e){return e.split("?",1).join("")}function _(e){if(!e||(0,b.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,b.normalize)(e);if(t===".."||t.startsWith(`..${b.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function ee(e,t,s){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let n=r.loaderContext?._module;if(!n)return;let d=n.buildInfo??(n.buildInfo={});d[s]=t}function V(e,t,s,r,n,d,u,o,y=!1,g){let x=e.name??e.options?.name;x==="server"||x==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let l=g?await g():Se([...C.modules].map(h=>we(h,d)).filter(h=>h!==void 0),u?.values()??[]),c=await v(l,await s(),r,n,o,y);if(!c.css)return;let p=P(t,c.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(c,p))),c.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(A(c.map,p)))}})})}function Se(e,t){let s=new Map,r=[];for(let n of t)n.id?s.set(n.id,n):r.push(n);for(let n of e)n.id?s.set(n.id,n):r.push(n);return[...s.values(),...r]}function we(e,t){let s=e.buildInfo?.[t];if(!s||typeof s!="object")return;let{id:r,candidates:n,composites:d,atomicClasses:u,origins:o}=s;return{id:typeof r=="string"?r:"",candidates:n&&typeof n=="object"?n:{},composites:d&&typeof d=="object"?d:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var T=require("fs/promises"),R=require("path"),re=require("@cssxio/compiler");var te=require("@babel/core"),se=ye(require("@cssxio/babel-plugin"),1),N=require("@cssxio/compiler");var ke=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function I(e,t,s={},r){B(s);let n=s.importSource??"@cssxio/cssx",d=t.split("?",1).join("");if(!ke.has(d.slice(d.lastIndexOf(".")))||!e.includes(n))return null;if(d.endsWith(".astro"))return ve(e,t,s);let u=await $(s),o=await(0,te.transformAsync)(e,{babelrc:!1,configFile:!1,filename:d,parserOpts:{plugins:["jsx","typescript"]},plugins:[[se.default,{importSource:n,classNameAllocator:s.classNameAllocator,theme:u,reusabilityBudget:s.reusabilityBudget,stableClassNames:s.stableClassNames,stableClassNameFileName:s.stableClassNameFileName,darkMode:s.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:x,composites:C,atomicClasses:l,cssOnlySignature:c}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,N.compileUtilities)(p,m=>g[m],u,(0,N.createSelectorAliases)(C),new Set(l),{darkMode:s.darkMode})).css;return{code:o.code,rules:h?[Re(Oe(h,s.layer))]:[],candidates:g,composites:C,atomicClasses:l,origins:x,cssOnlySignature:c,map:o.map}}async function ve(e,t,s){let r=Me(e);if(r.length===0)return null;let n=s.classNameAllocator??(0,N.createClassNameAllocator)(),d=s.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let x of[...r].reverse()){let C=await I(`import { sx } from ${JSON.stringify(d)};
4
+ const style = ${x.code};`,`${t}.ts`,{...s,classNameAllocator:n}),l=Ne(C.code);g=`${g.slice(0,x.start)}${l}${g.slice(x.end)}`,Object.assign(u,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Me(e){let t=[],s=/\bsx\s*\(/g;for(let r of e.matchAll(s)){let n=r.index,d=e.indexOf("(",n),u=0,o="";for(let y=d;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:n,end:y+1,code:e.slice(n,y+1)}),s.lastIndex=y+1;break}}}return t}function Ne(e){let t="const style = ",s=e.indexOf(t)+t.length,r=e.indexOf(";",s);return e.slice(s,r)}function ne(e,t){if(!e||typeof e!="object")return;let s=e.getCombinedSourcemap;if(typeof s!="function")return;let r=s.call(e);if(!r||typeof r!="object")return;let n=r;if(!(n.version!==3||!Array.isArray(n.sources)||typeof n.mappings!="string"))return{version:n.version,sources:[...n.sources],names:[...n.names??[]],mappings:n.mappings,file:n.file??t.split("?",1).join(""),...n.sourceRoot?{sourceRoot:n.sourceRoot}:{},...n.sourcesContent?{sourcesContent:[...n.sourcesContent]}:{}}}function Re(e){return{className:`cssx-${H(e)}`,css:e}}function Oe(e,t){return e&&t?`@layer ${t}{${e}}`:e}var Ae=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),Pe=new Set([".git",".next",".turbo","node_modules"]);async function X(e,t){let s=await Ie(e),r=(0,re.createClassNameAllocator)(t.className),n=[];for(let d of s){let u=await(0,T.readFile)(d,"utf8"),o=await I(u,d,{...t,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,R.relative)(e,d).replaceAll(R.sep,"/")});o&&n.push({id:d,candidates:o.candidates,composites:o.composites,atomicClasses:o.atomicClasses,origins:o.origins})}return n}async function Ie(e){let t=[],s=[e];for(;s.length>0;){let r=s.pop();for(let n of await(0,T.readdir)(r,{withFileTypes:!0})){let d=(0,R.join)(r,n.name);if(n.isDirectory()){Pe.has(n.name)||s.push(d);continue}n.isFile()&&Ae.has(d.slice(d.lastIndexOf(".")))&&t.push(d)}}return t.sort()}function z(e,t,s=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:s}]})}var j="@cssxio/unplugin/rules",je=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,oe=new Map;function Fe(e,t){return`${e}\0${JSON.stringify(t)}`}function W(e,t){let s=Fe(e,t),r=oe.get(s);return r||(r={classNameAllocator:(0,G.createClassNameAllocator)(),transformedDataById:new Map},oe.set(s,r)),r}function Ee(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Le(e,t,s){let r=new Set;for(let n of t)e.moduleGraph?.invalidateModule(n,r,s,!0);for(let n of r){if(!n.id)continue;let d=e.runner?.evaluatedModules?.getModuleById(n.id);d&&e.runner?.evaluatedModules?.invalidateModule(d)}}function $e(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Be(e[j])}function Be(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:s,candidates:r,composites:n,atomicClasses:d,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(s)?s:[],candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var De=(e={},t)=>{B(e);let s=e.cssFileName??"cssx.css",r=e.sourceMap??!0,n=new Map,d=(0,G.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,x=()=>$(e),C=async function(l,c){let p=new Set(Object.values(c).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(w));if(t.framework!=="vite")for(let a of n.keys())p.has(a)||n.delete(a);let h=t.framework==="vite"?[...n.values()]:[...p].map(a=>{let f=$e(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:n.get(a)??f}),m=await v(h,await x(),e.layer,r,e.darkMode,e.preflight);if(!m.css)return;let i=P(s,m.css);if(Object.hasOwn(c,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(m,i)}),m.map){let a=`${i}.map`;if(Object.hasOwn(c,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:A(m.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:je},async handler(l,c){e.themeFile&&this.addWatchFile?.((0,S.resolve)(process.cwd(),e.themeFile));let p=Ee(this),h=p?W(p,e):void 0,m=await I(l,c,{...e,classNameAllocator:h?.classNameAllocator??d,...e.stableClassNames?{stableClassNameFileName:(0,S.relative)(p??process.cwd(),w(c)).replaceAll(S.sep,"/")}:{}},ne(this,c)),i={id:w(c),rules:m?.rules??[],candidates:m?.candidates??{},composites:m?.composites??{},atomicClasses:m?.atomicClasses??[],origins:m?.origins??{},cssOnlySignature:m?.cssOnlySignature??""};ee(this,i,j);let a=w(c);(m||a===c)&&(n.set(a,i),u.set((0,S.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&z(g,D("/",s));let f=m?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&m?`${f}
5
+ ${Te(s)}`:f,meta:{[j]:i},...m?.map?{map:m.map}:{}}}},watchChange(l,c){c.event==="delete"&&n.delete(w(l))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(l){g=l;let c=D(l.config.base,s),p=D("/",s);l.watcher?.on("unlink",h=>{n.delete(w(h)),z(l,p)}),l.middlewares.use((h,m,i)=>{let a=h.url?.split("?",1)[0];if(a!==c&&(a!==`${c}.map`||!r))return i();x().then(f=>v([...n.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${c}.map`){m.setHeader("Content-Type","application/json; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(f.map?A(f.map,s):"");return}m.setHeader("Content-Type","text/css; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(M(f,s))}).catch(f=>{m.setHeader("Content-Type","text/plain; charset=utf-8"),m.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let c=this.environment;if(!c||c.name==="client")return;let p=l.modules.filter(i=>{let a=n.get(w(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,n.get(w(i.id)).cssOnlySignature]));for(let i of p)i.url&&await c.transformRequest(i.url);if(p.every(i=>{let a=n.get(w(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Le(c,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="rspack"?{rspack(l){let c=W(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>X(l.context,e):void 0)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let c=l.initialOptions.absWorkingDir??process.cwd();y=c,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,S.resolve)(c,f)));for(let f of u.keys())h.has(f)||u.delete(f);let m=await v([...u.values()],await x(),e.layer,r,e.darkMode,e.preflight),i=Y(c,l.initialOptions,P(s,m.css));if(!m.css){o&&await(0,O.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(m,(0,S.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:ie.Buffer.from(a),hash:"",text:a};if(f.findIndex(de=>de.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,O.mkdir)((0,S.dirname)(i),{recursive:!0}),await(0,O.writeFile)(i,a),o=i})}}}:{}}},U=(0,ae.createUnplugin)(De);function Te(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
6
6
  const key = "__cssxStylesheetHmr";
7
7
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
8
8
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -89,4 +89,4 @@ ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var re=F.vite,Ye=F.rollup,et=F.webpack,tt=F.rspack;var $e=re,je=$e;
92
+ }`}var le=U.vite,dt=U.rollup,ct=U.webpack,ut=U.rspack;var Ue=le,He=Ue;
package/dist/vite.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.cjs';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.cjs';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/vite.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CzBQAUBO.js';
2
+ import { C as CssxPluginOptions } from './options-BOiVAsHI.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/vite.js CHANGED
@@ -1 +1 @@
1
- import{e as t}from"./chunk-ZGXUEAIG.js";var e=t,i=e;export{i as default};
1
+ import{e as t}from"./chunk-S64RLZTF.js";var e=t,i=e;export{i as default};
package/dist/webpack.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var ae=Object.create;var I=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var de=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},z=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of le(t))!ce.call(e,s)&&s!==n&&I(e,s,{get:()=>t[s],enumerable:!(r=ie(t,s))||r.enumerable});return e};var me=(e,t,n)=>(n=e!=null?ae(de(e)):{},z(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)),pe=e=>z(I({},"__esModule",{value:!0}),e);var Be={};ue(Be,{default:()=>je});module.exports=pe(Be);var W=require("@cssxio/compiler"),ne=require("unplugin"),se=require("buffer"),N=require("fs/promises"),w=require("path");var $=require("@cssxio/compiler"),q=require("path");var X='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,n,r=!0,s,m=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,C=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!C.has(a)){let k=i.origins?.[a];C.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let b=Object.keys(u).sort(),l=m?X:"";if(b.length===0)return{css:l&&n?`@layer ${n}{${l}}`:l};let d=await(0,$.compileUtilities)(b,i=>u[i],t,(0,$.createSelectorAliases)(o),g?y:void 0,{darkMode:s}),p=n?`@layer ${n}{`:"",h=`${p}${l}${d.css}${p?"}":""}`,c=r?fe(`${p}${l}${d.prefixCss}`,d.entries,C):void 0;return{css:h,...c?{map:c}:{}}}function M(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function O(e,t){return JSON.stringify({...e,file:t})}function fe(e,t,n){let r=[...new Set(t.map(o=>n.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let s=new Map(r.map((o,y)=>[o,y])),m=[],u=G({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&m.push({...u,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),u=G(u,o.css)}return{version:3,sources:r,names:[],mappings:ge(m)}}function G(e,t){let n=t.split(`
3
- `);return{line:e.line+n.length-1,column:n.at(-1).length+e.column*+(n.length===1)}}function ge(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,m=0,u=0;for(let o of e)u*=+(o.line===m),m=o.line,t[o.line]?.push(`${L(o.column-u)}${L(o.source-n)}${L(o.originalLine-r)}${L(o.originalColumn-s)}`),u=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let t="",n=e<0?-e<<1|1:e<<1;do{let r=n&31;n>>>=5,n&&(r|=32),t+=ye[r]}while(n);return t}var J=require("fs/promises"),x=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,J.readFile)((0,x.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');T(e.cssFileName??"cssx.css")}function D(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function A(e,t){return T(e).replaceAll("[hash]",D(t))}function E(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${T(t).replaceAll(x.sep,"/")}`}function K(e,t,n){return t.outdir?(0,x.resolve)(e,t.outdir,n):t.outfile?(0,x.resolve)((0,x.dirname)((0,x.resolve)(e,t.outfile)),n):(0,x.resolve)(e,n)}function S(e){return e.split("?",1).join("")}function T(e){if(!e||(0,x.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,x.normalize)(e);if(t===".."||t.startsWith(`..${x.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function Z(e,t,n){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let s=r.loaderContext?._module;if(!s)return;let m=s.buildInfo??(s.buildInfo={});m[n]=t}function U(e,t,n,r,s,m,u,o,y=!1){let g=e.name??e.options?.name;g==="server"||g==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let b=[...C.modules].map(h=>Ce(h,m)).filter(h=>h!==void 0),l=he(b,u?.values()??[]),d=await v(l,await n(),r,s,o,y);if(!d.css)return;let p=A(t,d.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(d,p))),d.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(O(d.map,p)))}})})}function he(e,t){let n=new Map,r=[];for(let s of t)s.id?n.set(s.id,s):r.push(s);for(let s of e)s.id?n.set(s.id,s):r.push(s);return[...n.values(),...r]}function Ce(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:m,atomicClasses:u,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:m&&typeof m=="object"?m:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var Q=require("@babel/core"),Y=me(require("@cssxio/babel-plugin"),1),R=require("@cssxio/compiler");var be=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function H(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",m=t.split("?",1).join("");if(!be.has(m.slice(m.lastIndexOf(".")))||!e.includes(s))return null;if(m.endsWith(".astro"))return xe(e,t,n);let u=await j(n),o=await(0,Q.transformAsync)(e,{babelrc:!1,configFile:!1,filename:m,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Y.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:u,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:C,composites:b,atomicClasses:l,cssOnlySignature:d}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,R.compileUtilities)(p,c=>g[c],u,(0,R.createSelectorAliases)(b),new Set(l),{darkMode:n.darkMode})).css;return{code:o.code,rules:h?[ke(ve(h,n.layer))]:[],candidates:g,composites:b,atomicClasses:l,origins:C,cssOnlySignature:d,map:o.map}}async function xe(e,t,n){let r=Se(e);if(r.length===0)return null;let s=n.classNameAllocator??(0,R.createClassNameAllocator)(),m=n.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let C of[...r].reverse()){let b=await H(`import { sx } from ${JSON.stringify(m)};
4
- const style = ${C.code};`,`${t}.ts`,{...n,classNameAllocator:s}),l=we(b.code);g=`${g.slice(0,C.start)}${l}${g.slice(C.end)}`,Object.assign(u,b.candidates),Object.assign(o,b.composites),y.push(...b.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,m=e.indexOf("(",s),u=0,o="";for(let y=m;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:s,end:y+1,code:e.slice(s,y+1)}),n.lastIndex=y+1;break}}}return t}function we(e){let t="const style = ",n=e.indexOf(t)+t.length,r=e.indexOf(";",n);return e.slice(n,r)}function ee(e,t){if(!e||typeof e!="object")return;let n=e.getCombinedSourcemap;if(typeof n!="function")return;let r=n.call(e);if(!r||typeof r!="object")return;let s=r;if(!(s.version!==3||!Array.isArray(s.sources)||typeof s.mappings!="string"))return{version:s.version,sources:[...s.sources],names:[...s.names??[]],mappings:s.mappings,file:s.file??t.split("?",1).join(""),...s.sourceRoot?{sourceRoot:s.sourceRoot}:{},...s.sourcesContent?{sourcesContent:[...s.sourcesContent]}:{}}}function ke(e){return{className:`cssx-${D(e)}`,css:e}}function ve(e,t){return e&&t?`@layer ${t}{${e}}`:e}function V(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var P="@cssxio/unplugin/rules",Me=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,te=new Map;function Re(e,t){return`${e}\0${JSON.stringify(t)}`}function _(e,t){let n=Re(e,t),r=te.get(n);return r||(r={classNameAllocator:(0,W.createClassNameAllocator)(),transformedDataById:new Map},te.set(n,r)),r}function Ne(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Oe(e,t,n){let r=new Set;for(let s of t)e.moduleGraph?.invalidateModule(s,r,n,!0);for(let s of r){if(!s.id)continue;let m=e.runner?.evaluatedModules?.getModuleById(s.id);m&&e.runner?.evaluatedModules?.invalidateModule(m)}}function Ae(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Pe(e[P])}function Pe(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:m,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(n)?n:[],candidates:r&&typeof r=="object"?r:{},composites:s&&typeof s=="object"?s:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var Ie=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,m=(0,W.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,C=()=>j(e),b=async function(l,d){let p=new Set(Object.values(d).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(S));if(t.framework!=="vite")for(let a of s.keys())p.has(a)||s.delete(a);let h=t.framework==="vite"?[...s.values()]:[...p].map(a=>{let f=Ae(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:s.get(a)??f}),c=await v(h,await C(),e.layer,r,e.darkMode,e.preflight);if(!c.css)return;let i=A(n,c.css);if(Object.hasOwn(d,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(c,i)}),c.map){let a=`${i}.map`;if(Object.hasOwn(d,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:O(c.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Me},async handler(l,d){e.themeFile&&this.addWatchFile?.((0,w.resolve)(process.cwd(),e.themeFile));let p=Ne(this),h=p?_(p,e):void 0,c=await H(l,d,{...e,classNameAllocator:h?.classNameAllocator??m},ee(this,d)),i={id:S(d),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};Z(this,i,P);let a=S(d);(c||a===d)&&(s.set(a,i),u.set((0,w.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&V(g,E("/",n));let f=c?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&c?`${f}
5
- ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event==="delete"&&s.delete(S(l))},rollup:{generateBundle:b},vite:{generateBundle:b,configureServer(l){g=l;let d=E(l.config.base,n),p=E("/",n);l.watcher?.on("unlink",h=>{s.delete(S(h)),V(l,p)}),l.middlewares.use((h,c,i)=>{let a=h.url?.split("?",1)[0];if(a!==d&&(a!==`${d}.map`||!r))return i();C().then(f=>v([...s.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${d}.map`){c.setHeader("Content-Type","application/json; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(f.map?O(f.map,n):"");return}c.setHeader("Content-Type","text/css; charset=utf-8"),c.setHeader("Cache-Control","no-store"),c.end(M(f,n))}).catch(f=>{c.setHeader("Content-Type","text/plain; charset=utf-8"),c.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let d=this.environment;if(!d||d.name==="client")return;let p=l.modules.filter(i=>{let a=s.get(S(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,s.get(S(i.id)).cssOnlySignature]));for(let i of p)i.url&&await d.transformRequest(i.url);if(p.every(i=>{let a=s.get(S(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Oe(d,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="rspack"?{rspack(l){let d=_(l.context??l.options?.context??process.cwd(),e);U(l,n,C,e.layer,r,P,d.transformedDataById,e.darkMode,e.preflight)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let d=l.initialOptions.absWorkingDir??process.cwd();y=d,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,w.resolve)(d,f)));for(let f of u.keys())h.has(f)||u.delete(f);let c=await v([...u.values()],await C(),e.layer,r,e.darkMode,e.preflight),i=K(d,l.initialOptions,A(n,c.css));if(!c.css){o&&await(0,N.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(c,(0,w.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:se.Buffer.from(a),hash:"",text:a};if(f.findIndex(oe=>oe.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,N.mkdir)((0,w.dirname)(i),{recursive:!0}),await(0,N.writeFile)(i,a),o=i})}}}:{}}},F=(0,ne.createUnplugin)(Ie);function Le(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var ce=Object.create;var F=Object.defineProperty;var ue=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,fe=Object.prototype.hasOwnProperty;var ge=(e,t)=>{for(var s in t)F(e,s,{get:t[s],enumerable:!0})},q=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of me(t))!fe.call(e,n)&&n!==s&&F(e,n,{get:()=>t[n],enumerable:!(r=ue(t,n))||r.enumerable});return e};var ye=(e,t,s)=>(s=e!=null?ce(pe(e)):{},q(t||!e||!e.__esModule?F(s,"default",{value:e,enumerable:!0}):s,e)),he=e=>q(F({},"__esModule",{value:!0}),e);var _e={};ge(_e,{default:()=>He});module.exports=he(_e);var G=require("@cssxio/compiler"),ae=require("unplugin"),ie=require("buffer"),O=require("fs/promises"),S=require("path");var L=require("@cssxio/compiler"),Z=require("path");var J='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}button,select{text-transform:none}button,input:where([type="button"],[type="reset"],[type="submit"]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit}textarea{resize:vertical}::placeholder{opacity:1}button,[role="button"]{cursor:pointer}:disabled{cursor:default}[hidden]:where(:not([hidden="until-found"])){display:none!important}';async function v(e,t,s,r=!0,n,d=!1){let u=Object.create(null),o=Object.create(null),y=new Set,g=!0,x=new Map;for(let i of[...e].sort((a,f)=>a.id.localeCompare(f.id))){for(let[a,f]of Object.entries(i.candidates))if(a in u||(u[a]=f),i.id&&!x.has(a)){let k=i.origins?.[a];x.set(a,{id:i.id,line:k?.line??0,column:k?.column??0})}for(let[a,f]of Object.entries(i.composites??{})){let k=o[a];if(k&&k.join(" ")!==f.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);o[a]=f}i.atomicClasses===void 0&&(g=!1);for(let a of i.atomicClasses??[])y.add(a)}let C=Object.keys(u).sort(),l=d?J:"";if(C.length===0)return{css:l&&s?`@layer ${s}{${l}}`:l};let c=await(0,L.compileUtilities)(C,i=>u[i],t,(0,L.createSelectorAliases)(o),g?y:void 0,{darkMode:n}),p=s?`@layer ${s}{`:"",h=`${p}${l}${c.css}${p?"}":""}`,m=r?Ce(`${p}${l}${c.prefixCss}`,c.entries,x):void 0;return{css:h,...m?{map:m}:{}}}function M(e,t){return e.map?`${e.css}
2
+ /*# sourceMappingURL=${(0,Z.basename)(t)}.map */`:e.css}function A(e,t){return JSON.stringify({...e,file:t})}function Ce(e,t,s){let r=[...new Set(t.map(o=>s.get(o.candidate)?.id).filter(o=>!!o))].sort();if(r.length===0)return;let n=new Map(r.map((o,y)=>[o,y])),d=[],u=K({line:0,column:0},e);for(let o of t){let y=s.get(o.candidate);y&&d.push({...u,source:n.get(y.id),originalLine:y.line,originalColumn:y.column}),u=K(u,o.css)}return{version:3,sources:r,names:[],mappings:xe(d)}}function K(e,t){let s=t.split(`
3
+ `);return{line:e.line+s.length-1,column:s.at(-1).length+e.column*+(s.length===1)}}function xe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),s=0,r=0,n=0,d=0,u=0;for(let o of e)u*=+(o.line===d),d=o.line,t[o.line]?.push(`${E(o.column-u)}${E(o.source-s)}${E(o.originalLine-r)}${E(o.originalColumn-n)}`),u=o.column,s=o.source,r=o.originalLine,n=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var be="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function E(e){let t="",s=e<0?-e<<1|1:e<<1;do{let r=s&31;s>>>=5,s&&(r|=32),t+=be[r]}while(s);return t}var Q=require("fs/promises"),b=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,Q.readFile)((0,b.resolve)(process.cwd(),e.themeFile),"utf8")}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');_(e.cssFileName??"cssx.css")}function H(e){let t=2166136261;for(let s=0;s<e.length;s++)t^=e.charCodeAt(s),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function P(e,t){return _(e).replaceAll("[hash]",H(t))}function D(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${_(t).replaceAll(b.sep,"/")}`}function Y(e,t,s){return t.outdir?(0,b.resolve)(e,t.outdir,s):t.outfile?(0,b.resolve)((0,b.dirname)((0,b.resolve)(e,t.outfile)),s):(0,b.resolve)(e,s)}function w(e){return e.split("?",1).join("")}function _(e){if(!e||(0,b.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,b.normalize)(e);if(t===".."||t.startsWith(`..${b.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!t.endsWith(".css"))throw new Error("cssFileName must end in .css.");return t}function ee(e,t,s){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let n=r.loaderContext?._module;if(!n)return;let d=n.buildInfo??(n.buildInfo={});d[s]=t}function V(e,t,s,r,n,d,u,o,y=!1,g){let x=e.name??e.options?.name;x==="server"||x==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",C=>{C.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let l=g?await g():Se([...C.modules].map(h=>we(h,d)).filter(h=>h!==void 0),u?.values()??[]),c=await v(l,await s(),r,n,o,y);if(!c.css)return;let p=P(t,c.css);if(C.getAsset?.(p))throw new Error(`CSSX CSS asset collision at "${p}".`);if(C.emitAsset(p,new e.webpack.sources.RawSource(M(c,p))),c.map){let h=`${p}.map`;if(C.getAsset?.(h))throw new Error(`CSSX CSS map asset collision at "${h}".`);C.emitAsset(h,new e.webpack.sources.RawSource(A(c.map,p)))}})})}function Se(e,t){let s=new Map,r=[];for(let n of t)n.id?s.set(n.id,n):r.push(n);for(let n of e)n.id?s.set(n.id,n):r.push(n);return[...s.values(),...r]}function we(e,t){let s=e.buildInfo?.[t];if(!s||typeof s!="object")return;let{id:r,candidates:n,composites:d,atomicClasses:u,origins:o}=s;return{id:typeof r=="string"?r:"",candidates:n&&typeof n=="object"?n:{},composites:d&&typeof d=="object"?d:{},...Array.isArray(u)?{atomicClasses:u}:{},origins:o&&typeof o=="object"?o:{}}}var T=require("fs/promises"),R=require("path"),re=require("@cssxio/compiler");var te=require("@babel/core"),se=ye(require("@cssxio/babel-plugin"),1),N=require("@cssxio/compiler");var ke=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function I(e,t,s={},r){B(s);let n=s.importSource??"@cssxio/cssx",d=t.split("?",1).join("");if(!ke.has(d.slice(d.lastIndexOf(".")))||!e.includes(n))return null;if(d.endsWith(".astro"))return ve(e,t,s);let u=await $(s),o=await(0,te.transformAsync)(e,{babelrc:!1,configFile:!1,filename:d,parserOpts:{plugins:["jsx","typescript"]},plugins:[[se.default,{importSource:n,classNameAllocator:s.classNameAllocator,theme:u,reusabilityBudget:s.reusabilityBudget,stableClassNames:s.stableClassNames,stableClassNameFileName:s.stableClassNameFileName,darkMode:s.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:g,origins:x,composites:C,atomicClasses:l,cssOnlySignature:c}=y.cssx,p=Object.keys(g),h=p.length===0?"":(await(0,N.compileUtilities)(p,m=>g[m],u,(0,N.createSelectorAliases)(C),new Set(l),{darkMode:s.darkMode})).css;return{code:o.code,rules:h?[Re(Oe(h,s.layer))]:[],candidates:g,composites:C,atomicClasses:l,origins:x,cssOnlySignature:c,map:o.map}}async function ve(e,t,s){let r=Me(e);if(r.length===0)return null;let n=s.classNameAllocator??(0,N.createClassNameAllocator)(),d=s.importSource??"@cssxio/cssx",u={},o={},y=[],g=e;for(let x of[...r].reverse()){let C=await I(`import { sx } from ${JSON.stringify(d)};
4
+ const style = ${x.code};`,`${t}.ts`,{...s,classNameAllocator:n}),l=Ne(C.code);g=`${g.slice(0,x.start)}${l}${g.slice(x.end)}`,Object.assign(u,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:g,rules:y,candidates:u,composites:o,atomicClasses:[],origins:{},cssOnlySignature:g}}function Me(e){let t=[],s=/\bsx\s*\(/g;for(let r of e.matchAll(s)){let n=r.index,d=e.indexOf("(",n),u=0,o="";for(let y=d;y<e.length;y+=1){let g=e[y];if(o){g==="\\"?y+=1:g===o&&(o="");continue}if(g==='"'||g==="'"||g==="`")o=g;else if(g==="(")u+=1;else if(g===")"&&--u===0){t.push({start:n,end:y+1,code:e.slice(n,y+1)}),s.lastIndex=y+1;break}}}return t}function Ne(e){let t="const style = ",s=e.indexOf(t)+t.length,r=e.indexOf(";",s);return e.slice(s,r)}function ne(e,t){if(!e||typeof e!="object")return;let s=e.getCombinedSourcemap;if(typeof s!="function")return;let r=s.call(e);if(!r||typeof r!="object")return;let n=r;if(!(n.version!==3||!Array.isArray(n.sources)||typeof n.mappings!="string"))return{version:n.version,sources:[...n.sources],names:[...n.names??[]],mappings:n.mappings,file:n.file??t.split("?",1).join(""),...n.sourceRoot?{sourceRoot:n.sourceRoot}:{},...n.sourcesContent?{sourcesContent:[...n.sourcesContent]}:{}}}function Re(e){return{className:`cssx-${H(e)}`,css:e}}function Oe(e,t){return e&&t?`@layer ${t}{${e}}`:e}var Ae=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),Pe=new Set([".git",".next",".turbo","node_modules"]);async function W(e,t){let s=await Ie(e),r=(0,re.createClassNameAllocator)(t.className),n=[];for(let d of s){let u=await(0,T.readFile)(d,"utf8"),o=await I(u,d,{...t,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,R.relative)(e,d).replaceAll(R.sep,"/")});o&&n.push({id:d,candidates:o.candidates,composites:o.composites,atomicClasses:o.atomicClasses,origins:o.origins})}return n}async function Ie(e){let t=[],s=[e];for(;s.length>0;){let r=s.pop();for(let n of await(0,T.readdir)(r,{withFileTypes:!0})){let d=(0,R.join)(r,n.name);if(n.isDirectory()){Pe.has(n.name)||s.push(d);continue}n.isFile()&&Ae.has(d.slice(d.lastIndexOf(".")))&&t.push(d)}}return t.sort()}function X(e,t,s=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:s}]})}var j="@cssxio/unplugin/rules",je=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,oe=new Map;function Fe(e,t){return`${e}\0${JSON.stringify(t)}`}function z(e,t){let s=Fe(e,t),r=oe.get(s);return r||(r={classNameAllocator:(0,G.createClassNameAllocator)(),transformedDataById:new Map},oe.set(s,r)),r}function Ee(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Le(e,t,s){let r=new Set;for(let n of t)e.moduleGraph?.invalidateModule(n,r,s,!0);for(let n of r){if(!n.id)continue;let d=e.runner?.evaluatedModules?.getModuleById(n.id);d&&e.runner?.evaluatedModules?.invalidateModule(d)}}function $e(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Be(e[j])}function Be(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:s,candidates:r,composites:n,atomicClasses:d,origins:u,cssOnlySignature:o}=e;return{id:typeof t=="string"?t:"",rules:Array.isArray(s)?s:[],candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:u&&typeof u=="object"?u:{},cssOnlySignature:typeof o=="string"?o:""}}var De=(e={},t)=>{B(e);let s=e.cssFileName??"cssx.css",r=e.sourceMap??!0,n=new Map,d=(0,G.createClassNameAllocator)(),u=new Map,o,y=process.cwd(),g,x=()=>$(e),C=async function(l,c){let p=new Set(Object.values(c).flatMap(a=>a.type==="chunk"?Object.keys(a.modules??{}):[]).map(w));if(t.framework!=="vite")for(let a of n.keys())p.has(a)||n.delete(a);let h=t.framework==="vite"?[...n.values()]:[...p].map(a=>{let f=$e(this.getModuleInfo(a)?.meta);return Object.keys(f.candidates).length>0?f:n.get(a)??f}),m=await v(h,await x(),e.layer,r,e.darkMode,e.preflight);if(!m.css)return;let i=P(s,m.css);if(Object.hasOwn(c,i))throw new Error(`CSSX CSS asset collision at "${i}".`);if(this.emitFile({type:"asset",fileName:i,source:M(m,i)}),m.map){let a=`${i}.map`;if(Object.hasOwn(c,a))throw new Error(`CSSX CSS map asset collision at "${a}".`);this.emitFile({type:"asset",fileName:a,source:A(m.map,i)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:je},async handler(l,c){e.themeFile&&this.addWatchFile?.((0,S.resolve)(process.cwd(),e.themeFile));let p=Ee(this),h=p?z(p,e):void 0,m=await I(l,c,{...e,classNameAllocator:h?.classNameAllocator??d,...e.stableClassNames?{stableClassNameFileName:(0,S.relative)(p??process.cwd(),w(c)).replaceAll(S.sep,"/")}:{}},ne(this,c)),i={id:w(c),rules:m?.rules??[],candidates:m?.candidates??{},composites:m?.composites??{},atomicClasses:m?.atomicClasses??[],origins:m?.origins??{},cssOnlySignature:m?.cssOnlySignature??""};ee(this,i,j);let a=w(c);(m||a===c)&&(n.set(a,i),u.set((0,S.resolve)(y,a),i),h?.transformedDataById.set(a,i)),t.framework==="vite"&&g&&X(g,D("/",s));let f=m?.code??l;return{code:(t.framework==="webpack"||t.framework==="rspack")&&m?`${f}
5
+ ${Te(s)}`:f,meta:{[j]:i},...m?.map?{map:m.map}:{}}}},watchChange(l,c){c.event==="delete"&&n.delete(w(l))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(l){g=l;let c=D(l.config.base,s),p=D("/",s);l.watcher?.on("unlink",h=>{n.delete(w(h)),X(l,p)}),l.middlewares.use((h,m,i)=>{let a=h.url?.split("?",1)[0];if(a!==c&&(a!==`${c}.map`||!r))return i();x().then(f=>v([...n.values()],f,e.layer,r,e.darkMode,e.preflight)).then(f=>{if(a===`${c}.map`){m.setHeader("Content-Type","application/json; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(f.map?A(f.map,s):"");return}m.setHeader("Content-Type","text/css; charset=utf-8"),m.setHeader("Cache-Control","no-store"),m.end(M(f,s))}).catch(f=>{m.setHeader("Content-Type","text/plain; charset=utf-8"),m.end(f instanceof Error?f.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(l){let c=this.environment;if(!c||c.name==="client")return;let p=l.modules.filter(i=>{let a=n.get(w(i.id??""));return!!(a&&a.cssOnlySignature&&a.atomicClasses?.length===0)});if(p.length===0)return;let h=new Map(p.map(i=>[i,n.get(w(i.id)).cssOnlySignature]));for(let i of p)i.url&&await c.transformRequest(i.url);if(p.every(i=>{let a=n.get(w(i.id));return!!(a&&a.atomicClasses.length===0&&a.cssOnlySignature===h.get(i))}))return Le(c,p,l.timestamp),l.modules.filter(i=>!p.includes(i))}}},...t.framework==="webpack"?{webpack(l){let c=z(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>W(l.context,e):void 0)}}:{},...t.framework==="rspack"?{rspack(l){let c=z(l.context,e);V(l,s,x,e.layer,r,j,c.transformedDataById,e.darkMode,e.preflight,e.stableClassNames?()=>W(l.context,e):void 0)}}:{},...t.framework==="esbuild"?{esbuild:{config(l){l.metafile=!0},setup(l){let c=l.initialOptions.absWorkingDir??process.cwd();y=c,l.onEnd(async p=>{if(!p.metafile)return;let h=new Set(Object.keys(p.metafile.inputs).map(f=>(0,S.resolve)(c,f)));for(let f of u.keys())h.has(f)||u.delete(f);let m=await v([...u.values()],await x(),e.layer,r,e.darkMode,e.preflight),i=Y(c,l.initialOptions,P(s,m.css));if(!m.css){o&&await(0,O.unlink)(o).catch(()=>{}),o=void 0;return}let a=M(m,(0,S.basename)(i));if(l.initialOptions.write===!1){let f=p.outputFiles;if(!f)return;let k={path:i,contents:ie.Buffer.from(a),hash:"",text:a};if(f.findIndex(de=>de.path===i)!==-1)throw new Error(`CSSX CSS asset collision at "${i}".`);f.push(k);return}await(0,O.mkdir)((0,S.dirname)(i),{recursive:!0}),await(0,O.writeFile)(i,a),o=i})}}}:{}}},U=(0,ae.createUnplugin)(De);function Te(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
6
6
  const key = "__cssxStylesheetHmr";
7
7
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
8
8
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -89,4 +89,4 @@ ${Le(n)}`:f,meta:{[P]:i},...c?.map?{map:c.map}:{}}}},watchChange(l,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ye=F.vite,et=F.rollup,re=F.webpack,tt=F.rspack;var $e=re,je=$e;
92
+ }`}var dt=U.vite,ct=U.rollup,le=U.webpack,ut=U.rspack;var Ue=le,He=Ue;