@cssxio/unplugin 0.4.0 → 0.4.2

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 oe=Object.create;var P=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ie=Object.getOwnPropertyNames;var le=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ce=(e,t)=>{for(var n in t)P(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ie(t))!de.call(e,s)&&s!==n&&P(e,s,{get:()=>t[s],enumerable:!(r=ae(t,s))||r.enumerable});return e};var ue=(e,t,n)=>(n=e!=null?oe(le(e)):{},W(t||!e||!e.__esModule?P(n,"default",{value:e,enumerable:!0}):n,e)),me=e=>W(P({},"__esModule",{value:!0}),e);var Be={};ce(Be,{default:()=>$e});module.exports=me(Be);var _=require("@cssxio/compiler"),ee=require("unplugin"),te=require("buffer"),R=require("fs/promises"),b=require("path");var L=require("@cssxio/compiler"),q=require("path");async function k(e,t,n,r=!0,s){let u=Object.create(null),m=Object.create(null),o=new Set,y=!0,p=new Map;for(let g of[...e].sort((a,l)=>a.id.localeCompare(l.id))){for(let[a,l]of Object.entries(g.candidates))if(a in u||(u[a]=l),g.id&&!p.has(a)){let c=g.origins?.[a];p.set(a,{id:g.id,line:c?.line??0,column:c?.column??0})}for(let[a,l]of Object.entries(g.composites??{})){let c=m[a];if(c&&c.join(" ")!==l.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);m[a]=l}g.atomicClasses===void 0&&(y=!1);for(let a of g.atomicClasses??[])o.add(a)}let x=Object.keys(u).sort();if(x.length===0)return{css:""};let C=await(0,L.compileUtilities)(x,g=>u[g],t,(0,L.createSelectorAliases)(m),y?o:void 0,{darkMode:s}),i=C.css&&n?`@layer ${n}{`:"",d=`${i}${C.css}${i?"}":""}`,f=r?pe(`${i}${C.prefixCss}`,C.entries,p):void 0;return{css:d,...f?{map:f}:{}}}function v(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function N(e,t){return JSON.stringify({...e,file:t})}function pe(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])),u=[],m=X({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&u.push({...m,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),m=X(m,o.css)}return{version:3,sources:r,names:[],mappings:fe(u)}}function X(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 fe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,u=0,m=0;for(let o of e)m*=+(o.line===u),u=o.line,t[o.line]?.push(`${I(o.column-m)}${I(o.source-n)}${I(o.originalLine-r)}${I(o.originalColumn-s)}`),m=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function I(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 z=require("fs/promises"),S=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,z.readFile)((0,S.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")throw new Error('CSSX darkMode must be "media" or "selector".');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.');D(e.cssFileName??"cssx.css")}function F(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 O(e,t){return D(e).replaceAll("[hash]",F(t))}function j(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(t).replaceAll(S.sep,"/")}`}function G(e,t,n){return t.outdir?(0,S.resolve)(e,t.outdir,n):t.outfile?(0,S.resolve)((0,S.dirname)((0,S.resolve)(e,t.outfile)),n):(0,S.resolve)(e,n)}function w(e){return e.split("?",1).join("")}function D(e){if(!e||(0,S.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,S.normalize)(e);if(t===".."||t.startsWith(`..${S.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 J(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 u=s.buildInfo??(s.buildInfo={});u[n]=t}function U(e,t,n,r,s,u,m,o){let y=e.name??e.options?.name;y==="server"||y==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",p=>{p.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let x=[...p.modules].map(f=>he(f,u)).filter(f=>f!==void 0),C=ge(x,m?.values()??[]),i=await k(C,await n(),r,s,o);if(!i.css)return;let d=O(t,i.css);if(p.getAsset?.(d))throw new Error(`CSSX CSS asset collision at "${d}".`);if(p.emitAsset(d,new e.webpack.sources.RawSource(v(i,d))),i.map){let f=`${d}.map`;if(p.getAsset?.(f))throw new Error(`CSSX CSS map asset collision at "${f}".`);p.emitAsset(f,new e.webpack.sources.RawSource(N(i.map,d)))}})})}function ge(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 he(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:u,atomicClasses:m,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:u&&typeof u=="object"?u:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:o&&typeof o=="object"?o:{}}}var K=require("@babel/core"),Z=ue(require("@cssxio/babel-plugin"),1),M=require("@cssxio/compiler");var Ce=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function T(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",u=t.split("?",1).join("");if(!Ce.has(u.slice(u.lastIndexOf(".")))||!e.includes(s))return null;if(u.endsWith(".astro"))return xe(e,t,n);let m=await $(n),o=await(0,K.transformAsync)(e,{babelrc:!1,configFile:!1,filename:u,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Z.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:m,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:p,origins:x,composites:C,atomicClasses:i,cssOnlySignature:d}=y.cssx,f=Object.keys(p),g=f.length===0?"":(await(0,M.compileUtilities)(f,a=>p[a],m,(0,M.createSelectorAliases)(C),new Set(i),{darkMode:n.darkMode})).css;return{code:o.code,rules:g?[be(ke(g,n.layer))]:[],candidates:p,composites:C,atomicClasses:i,origins:x,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,M.createClassNameAllocator)(),u=n.importSource??"@cssxio/cssx",m={},o={},y=[],p=e;for(let x of[...r].reverse()){let C=await T(`import { sx } from ${JSON.stringify(u)};
4
- const style = ${x.code};`,`${t}.ts`,{...n,classNameAllocator:s}),i=we(C.code);p=`${p.slice(0,x.start)}${i}${p.slice(x.end)}`,Object.assign(m,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:p,rules:y,candidates:m,composites:o,atomicClasses:[],origins:{},cssOnlySignature:p}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,u=e.indexOf("(",s),m=0,o="";for(let y=u;y<e.length;y+=1){let p=e[y];if(o){p==="\\"?y+=1:p===o&&(o="");continue}if(p==='"'||p==="'"||p==="`")o=p;else if(p==="(")m+=1;else if(p===")"&&--m===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 Q(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 be(e){return{className:`cssx-${F(e)}`,css:e}}function ke(e,t){return e&&t?`@layer ${t}{${e}}`:e}function H(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var A="@cssxio/unplugin/rules",ve=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,Y=new Map;function Me(e,t){return`${e}\0${JSON.stringify(t)}`}function V(e,t){let n=Me(e,t),r=Y.get(n);return r||(r={classNameAllocator:(0,_.createClassNameAllocator)(),transformedDataById:new Map},Y.set(n,r)),r}function Re(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Ne(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 u=e.runner?.evaluatedModules?.getModuleById(s.id);u&&e.runner?.evaluatedModules?.invalidateModule(u)}}function Oe(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Ae(e[A])}function Ae(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:u,origins:m,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(u)?{atomicClasses:u}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof o=="string"?o:""}}var Pe=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,u=(0,_.createClassNameAllocator)(),m=new Map,o,y=process.cwd(),p,x=()=>$(e),C=async function(i,d){let f=new Set(Object.values(d).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(w));if(t.framework!=="vite")for(let c of s.keys())f.has(c)||s.delete(c);let g=t.framework==="vite"?[...s.values()]:[...f].map(c=>{let h=Oe(this.getModuleInfo(c)?.meta);return Object.keys(h.candidates).length>0?h:s.get(c)??h}),a=await k(g,await x(),e.layer,r,e.darkMode);if(!a.css)return;let l=O(n,a.css);if(Object.hasOwn(d,l))throw new Error(`CSSX CSS asset collision at "${l}".`);if(this.emitFile({type:"asset",fileName:l,source:v(a,l)}),a.map){let c=`${l}.map`;if(Object.hasOwn(d,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:N(a.map,l)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:ve},async handler(i,d){e.themeFile&&this.addWatchFile?.((0,b.resolve)(process.cwd(),e.themeFile));let f=Re(this),g=f?V(f,e):void 0,a=await T(i,d,{...e,classNameAllocator:g?.classNameAllocator??u},Q(this,d)),l={id:w(d),rules:a?.rules??[],candidates:a?.candidates??{},composites:a?.composites??{},atomicClasses:a?.atomicClasses??[],origins:a?.origins??{},cssOnlySignature:a?.cssOnlySignature??""};J(this,l,A);let c=w(d);(a||c===d)&&(s.set(c,l),m.set((0,b.resolve)(y,c),l),g?.transformedDataById.set(c,l)),t.framework==="vite"&&p&&H(p,j("/",n));let h=a?.code??i;return{code:(t.framework==="webpack"||t.framework==="rspack")&&a?`${h}
5
- ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event==="delete"&&s.delete(w(i))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(i){p=i;let d=j(i.config.base,n),f=j("/",n);i.watcher?.on("unlink",g=>{s.delete(w(g)),H(i,f)}),i.middlewares.use((g,a,l)=>{let c=g.url?.split("?",1)[0];if(c!==d&&(c!==`${d}.map`||!r))return l();x().then(h=>k([...s.values()],h,e.layer,r,e.darkMode)).then(h=>{if(c===`${d}.map`){a.setHeader("Content-Type","application/json; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(h.map?N(h.map,n):"");return}a.setHeader("Content-Type","text/css; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(v(h,n))}).catch(h=>{a.setHeader("Content-Type","text/plain; charset=utf-8"),a.end(h instanceof Error?h.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(i){let d=this.environment;if(!d||d.name==="client")return;let f=i.modules.filter(l=>{let c=s.get(w(l.id??""));return!!(c&&c.cssOnlySignature&&c.atomicClasses?.length===0)});if(f.length===0)return;let g=new Map(f.map(l=>[l,s.get(w(l.id)).cssOnlySignature]));for(let l of f)l.url&&await d.transformRequest(l.url);if(f.every(l=>{let c=s.get(w(l.id));return!!(c&&c.atomicClasses.length===0&&c.cssOnlySignature===g.get(l))}))return Ne(d,f,i.timestamp),i.modules.filter(l=>!f.includes(l))}}},...t.framework==="webpack"?{webpack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="rspack"?{rspack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="esbuild"?{esbuild:{config(i){i.metafile=!0},setup(i){let d=i.initialOptions.absWorkingDir??process.cwd();y=d,i.onEnd(async f=>{if(!f.metafile)return;let g=new Set(Object.keys(f.metafile.inputs).map(h=>(0,b.resolve)(d,h)));for(let h of m.keys())g.has(h)||m.delete(h);let a=await k([...m.values()],await x(),e.layer,r,e.darkMode),l=G(d,i.initialOptions,O(n,a.css));if(!a.css){o&&await(0,R.unlink)(o).catch(()=>{}),o=void 0;return}let c=v(a,(0,b.basename)(l));if(i.initialOptions.write===!1){let h=f.outputFiles;if(!h)return;let se={path:l,contents:te.Buffer.from(c),hash:"",text:c};if(h.findIndex(re=>re.path===l)!==-1)throw new Error(`CSSX CSS asset collision at "${l}".`);h.push(se);return}await(0,R.mkdir)((0,b.dirname)(l),{recursive:!0}),await(0,R.writeFile)(l,c),o=l})}}}:{}}},E=(0,ee.createUnplugin)(Pe);function Ie(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
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")throw new Error('CSSX darkMode must be "media" or "selector".');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) {
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 @@ ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ke=E.vite,ne=E.rollup,Ze=E.webpack,Qe=E.rspack;var Le=ne,$e=Le;
92
+ }`}var Ye=F.vite,re=F.rollup,et=F.webpack,tt=F.rspack;var $e=re,je=$e;
package/dist/rollup.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CHY4_3I-.cjs';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.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-CHY4_3I-.js';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rollup.js CHANGED
@@ -1 +1 @@
1
- import{f as o}from"./chunk-7MEM7X4W.js";var l=o,r=l;export{r as default};
1
+ import{f as o}from"./chunk-VCJX4HRK.js";var l=o,r=l;export{r as default};
package/dist/rspack.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var oe=Object.create;var P=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ie=Object.getOwnPropertyNames;var le=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ce=(e,t)=>{for(var n in t)P(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ie(t))!de.call(e,s)&&s!==n&&P(e,s,{get:()=>t[s],enumerable:!(r=ae(t,s))||r.enumerable});return e};var ue=(e,t,n)=>(n=e!=null?oe(le(e)):{},W(t||!e||!e.__esModule?P(n,"default",{value:e,enumerable:!0}):n,e)),me=e=>W(P({},"__esModule",{value:!0}),e);var Be={};ce(Be,{default:()=>$e});module.exports=me(Be);var _=require("@cssxio/compiler"),ee=require("unplugin"),te=require("buffer"),R=require("fs/promises"),b=require("path");var L=require("@cssxio/compiler"),q=require("path");async function k(e,t,n,r=!0,s){let u=Object.create(null),m=Object.create(null),o=new Set,y=!0,p=new Map;for(let g of[...e].sort((a,l)=>a.id.localeCompare(l.id))){for(let[a,l]of Object.entries(g.candidates))if(a in u||(u[a]=l),g.id&&!p.has(a)){let c=g.origins?.[a];p.set(a,{id:g.id,line:c?.line??0,column:c?.column??0})}for(let[a,l]of Object.entries(g.composites??{})){let c=m[a];if(c&&c.join(" ")!==l.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);m[a]=l}g.atomicClasses===void 0&&(y=!1);for(let a of g.atomicClasses??[])o.add(a)}let x=Object.keys(u).sort();if(x.length===0)return{css:""};let C=await(0,L.compileUtilities)(x,g=>u[g],t,(0,L.createSelectorAliases)(m),y?o:void 0,{darkMode:s}),i=C.css&&n?`@layer ${n}{`:"",d=`${i}${C.css}${i?"}":""}`,f=r?pe(`${i}${C.prefixCss}`,C.entries,p):void 0;return{css:d,...f?{map:f}:{}}}function v(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function N(e,t){return JSON.stringify({...e,file:t})}function pe(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])),u=[],m=X({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&u.push({...m,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),m=X(m,o.css)}return{version:3,sources:r,names:[],mappings:fe(u)}}function X(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 fe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,u=0,m=0;for(let o of e)m*=+(o.line===u),u=o.line,t[o.line]?.push(`${I(o.column-m)}${I(o.source-n)}${I(o.originalLine-r)}${I(o.originalColumn-s)}`),m=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function I(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 z=require("fs/promises"),S=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,z.readFile)((0,S.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")throw new Error('CSSX darkMode must be "media" or "selector".');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.');D(e.cssFileName??"cssx.css")}function F(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 O(e,t){return D(e).replaceAll("[hash]",F(t))}function j(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(t).replaceAll(S.sep,"/")}`}function G(e,t,n){return t.outdir?(0,S.resolve)(e,t.outdir,n):t.outfile?(0,S.resolve)((0,S.dirname)((0,S.resolve)(e,t.outfile)),n):(0,S.resolve)(e,n)}function w(e){return e.split("?",1).join("")}function D(e){if(!e||(0,S.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,S.normalize)(e);if(t===".."||t.startsWith(`..${S.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 J(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 u=s.buildInfo??(s.buildInfo={});u[n]=t}function U(e,t,n,r,s,u,m,o){let y=e.name??e.options?.name;y==="server"||y==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",p=>{p.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let x=[...p.modules].map(f=>he(f,u)).filter(f=>f!==void 0),C=ge(x,m?.values()??[]),i=await k(C,await n(),r,s,o);if(!i.css)return;let d=O(t,i.css);if(p.getAsset?.(d))throw new Error(`CSSX CSS asset collision at "${d}".`);if(p.emitAsset(d,new e.webpack.sources.RawSource(v(i,d))),i.map){let f=`${d}.map`;if(p.getAsset?.(f))throw new Error(`CSSX CSS map asset collision at "${f}".`);p.emitAsset(f,new e.webpack.sources.RawSource(N(i.map,d)))}})})}function ge(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 he(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:u,atomicClasses:m,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:u&&typeof u=="object"?u:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:o&&typeof o=="object"?o:{}}}var K=require("@babel/core"),Z=ue(require("@cssxio/babel-plugin"),1),M=require("@cssxio/compiler");var Ce=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function T(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",u=t.split("?",1).join("");if(!Ce.has(u.slice(u.lastIndexOf(".")))||!e.includes(s))return null;if(u.endsWith(".astro"))return xe(e,t,n);let m=await $(n),o=await(0,K.transformAsync)(e,{babelrc:!1,configFile:!1,filename:u,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Z.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:m,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:p,origins:x,composites:C,atomicClasses:i,cssOnlySignature:d}=y.cssx,f=Object.keys(p),g=f.length===0?"":(await(0,M.compileUtilities)(f,a=>p[a],m,(0,M.createSelectorAliases)(C),new Set(i),{darkMode:n.darkMode})).css;return{code:o.code,rules:g?[be(ke(g,n.layer))]:[],candidates:p,composites:C,atomicClasses:i,origins:x,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,M.createClassNameAllocator)(),u=n.importSource??"@cssxio/cssx",m={},o={},y=[],p=e;for(let x of[...r].reverse()){let C=await T(`import { sx } from ${JSON.stringify(u)};
4
- const style = ${x.code};`,`${t}.ts`,{...n,classNameAllocator:s}),i=we(C.code);p=`${p.slice(0,x.start)}${i}${p.slice(x.end)}`,Object.assign(m,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:p,rules:y,candidates:m,composites:o,atomicClasses:[],origins:{},cssOnlySignature:p}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,u=e.indexOf("(",s),m=0,o="";for(let y=u;y<e.length;y+=1){let p=e[y];if(o){p==="\\"?y+=1:p===o&&(o="");continue}if(p==='"'||p==="'"||p==="`")o=p;else if(p==="(")m+=1;else if(p===")"&&--m===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 Q(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 be(e){return{className:`cssx-${F(e)}`,css:e}}function ke(e,t){return e&&t?`@layer ${t}{${e}}`:e}function H(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var A="@cssxio/unplugin/rules",ve=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,Y=new Map;function Me(e,t){return`${e}\0${JSON.stringify(t)}`}function V(e,t){let n=Me(e,t),r=Y.get(n);return r||(r={classNameAllocator:(0,_.createClassNameAllocator)(),transformedDataById:new Map},Y.set(n,r)),r}function Re(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Ne(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 u=e.runner?.evaluatedModules?.getModuleById(s.id);u&&e.runner?.evaluatedModules?.invalidateModule(u)}}function Oe(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Ae(e[A])}function Ae(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:u,origins:m,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(u)?{atomicClasses:u}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof o=="string"?o:""}}var Pe=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,u=(0,_.createClassNameAllocator)(),m=new Map,o,y=process.cwd(),p,x=()=>$(e),C=async function(i,d){let f=new Set(Object.values(d).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(w));if(t.framework!=="vite")for(let c of s.keys())f.has(c)||s.delete(c);let g=t.framework==="vite"?[...s.values()]:[...f].map(c=>{let h=Oe(this.getModuleInfo(c)?.meta);return Object.keys(h.candidates).length>0?h:s.get(c)??h}),a=await k(g,await x(),e.layer,r,e.darkMode);if(!a.css)return;let l=O(n,a.css);if(Object.hasOwn(d,l))throw new Error(`CSSX CSS asset collision at "${l}".`);if(this.emitFile({type:"asset",fileName:l,source:v(a,l)}),a.map){let c=`${l}.map`;if(Object.hasOwn(d,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:N(a.map,l)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:ve},async handler(i,d){e.themeFile&&this.addWatchFile?.((0,b.resolve)(process.cwd(),e.themeFile));let f=Re(this),g=f?V(f,e):void 0,a=await T(i,d,{...e,classNameAllocator:g?.classNameAllocator??u},Q(this,d)),l={id:w(d),rules:a?.rules??[],candidates:a?.candidates??{},composites:a?.composites??{},atomicClasses:a?.atomicClasses??[],origins:a?.origins??{},cssOnlySignature:a?.cssOnlySignature??""};J(this,l,A);let c=w(d);(a||c===d)&&(s.set(c,l),m.set((0,b.resolve)(y,c),l),g?.transformedDataById.set(c,l)),t.framework==="vite"&&p&&H(p,j("/",n));let h=a?.code??i;return{code:(t.framework==="webpack"||t.framework==="rspack")&&a?`${h}
5
- ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event==="delete"&&s.delete(w(i))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(i){p=i;let d=j(i.config.base,n),f=j("/",n);i.watcher?.on("unlink",g=>{s.delete(w(g)),H(i,f)}),i.middlewares.use((g,a,l)=>{let c=g.url?.split("?",1)[0];if(c!==d&&(c!==`${d}.map`||!r))return l();x().then(h=>k([...s.values()],h,e.layer,r,e.darkMode)).then(h=>{if(c===`${d}.map`){a.setHeader("Content-Type","application/json; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(h.map?N(h.map,n):"");return}a.setHeader("Content-Type","text/css; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(v(h,n))}).catch(h=>{a.setHeader("Content-Type","text/plain; charset=utf-8"),a.end(h instanceof Error?h.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(i){let d=this.environment;if(!d||d.name==="client")return;let f=i.modules.filter(l=>{let c=s.get(w(l.id??""));return!!(c&&c.cssOnlySignature&&c.atomicClasses?.length===0)});if(f.length===0)return;let g=new Map(f.map(l=>[l,s.get(w(l.id)).cssOnlySignature]));for(let l of f)l.url&&await d.transformRequest(l.url);if(f.every(l=>{let c=s.get(w(l.id));return!!(c&&c.atomicClasses.length===0&&c.cssOnlySignature===g.get(l))}))return Ne(d,f,i.timestamp),i.modules.filter(l=>!f.includes(l))}}},...t.framework==="webpack"?{webpack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="rspack"?{rspack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="esbuild"?{esbuild:{config(i){i.metafile=!0},setup(i){let d=i.initialOptions.absWorkingDir??process.cwd();y=d,i.onEnd(async f=>{if(!f.metafile)return;let g=new Set(Object.keys(f.metafile.inputs).map(h=>(0,b.resolve)(d,h)));for(let h of m.keys())g.has(h)||m.delete(h);let a=await k([...m.values()],await x(),e.layer,r,e.darkMode),l=G(d,i.initialOptions,O(n,a.css));if(!a.css){o&&await(0,R.unlink)(o).catch(()=>{}),o=void 0;return}let c=v(a,(0,b.basename)(l));if(i.initialOptions.write===!1){let h=f.outputFiles;if(!h)return;let se={path:l,contents:te.Buffer.from(c),hash:"",text:c};if(h.findIndex(re=>re.path===l)!==-1)throw new Error(`CSSX CSS asset collision at "${l}".`);h.push(se);return}await(0,R.mkdir)((0,b.dirname)(l),{recursive:!0}),await(0,R.writeFile)(l,c),o=l})}}}:{}}},E=(0,ee.createUnplugin)(Pe);function Ie(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
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")throw new Error('CSSX darkMode must be "media" or "selector".');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) {
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 @@ ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ke=E.vite,Ze=E.rollup,Qe=E.webpack,ne=E.rspack;var Le=ne,$e=Le;
92
+ }`}var Ye=F.vite,et=F.rollup,tt=F.webpack,re=F.rspack;var $e=re,je=$e;
package/dist/rspack.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CHY4_3I-.cjs';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.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-CHY4_3I-.js';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/rspack.js CHANGED
@@ -1 +1 @@
1
- import{h as s}from"./chunk-7MEM7X4W.js";var c=s,p=c;export{p as default};
1
+ import{h as s}from"./chunk-VCJX4HRK.js";var c=s,p=c;export{p as default};
package/dist/vite.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var oe=Object.create;var P=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ie=Object.getOwnPropertyNames;var le=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ce=(e,t)=>{for(var n in t)P(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ie(t))!de.call(e,s)&&s!==n&&P(e,s,{get:()=>t[s],enumerable:!(r=ae(t,s))||r.enumerable});return e};var ue=(e,t,n)=>(n=e!=null?oe(le(e)):{},W(t||!e||!e.__esModule?P(n,"default",{value:e,enumerable:!0}):n,e)),me=e=>W(P({},"__esModule",{value:!0}),e);var Be={};ce(Be,{default:()=>$e});module.exports=me(Be);var _=require("@cssxio/compiler"),ee=require("unplugin"),te=require("buffer"),R=require("fs/promises"),b=require("path");var L=require("@cssxio/compiler"),q=require("path");async function k(e,t,n,r=!0,s){let u=Object.create(null),m=Object.create(null),o=new Set,y=!0,p=new Map;for(let g of[...e].sort((a,l)=>a.id.localeCompare(l.id))){for(let[a,l]of Object.entries(g.candidates))if(a in u||(u[a]=l),g.id&&!p.has(a)){let c=g.origins?.[a];p.set(a,{id:g.id,line:c?.line??0,column:c?.column??0})}for(let[a,l]of Object.entries(g.composites??{})){let c=m[a];if(c&&c.join(" ")!==l.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);m[a]=l}g.atomicClasses===void 0&&(y=!1);for(let a of g.atomicClasses??[])o.add(a)}let x=Object.keys(u).sort();if(x.length===0)return{css:""};let C=await(0,L.compileUtilities)(x,g=>u[g],t,(0,L.createSelectorAliases)(m),y?o:void 0,{darkMode:s}),i=C.css&&n?`@layer ${n}{`:"",d=`${i}${C.css}${i?"}":""}`,f=r?pe(`${i}${C.prefixCss}`,C.entries,p):void 0;return{css:d,...f?{map:f}:{}}}function v(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function N(e,t){return JSON.stringify({...e,file:t})}function pe(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])),u=[],m=X({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&u.push({...m,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),m=X(m,o.css)}return{version:3,sources:r,names:[],mappings:fe(u)}}function X(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 fe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,u=0,m=0;for(let o of e)m*=+(o.line===u),u=o.line,t[o.line]?.push(`${I(o.column-m)}${I(o.source-n)}${I(o.originalLine-r)}${I(o.originalColumn-s)}`),m=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function I(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 z=require("fs/promises"),S=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,z.readFile)((0,S.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")throw new Error('CSSX darkMode must be "media" or "selector".');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.');D(e.cssFileName??"cssx.css")}function F(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 O(e,t){return D(e).replaceAll("[hash]",F(t))}function j(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(t).replaceAll(S.sep,"/")}`}function G(e,t,n){return t.outdir?(0,S.resolve)(e,t.outdir,n):t.outfile?(0,S.resolve)((0,S.dirname)((0,S.resolve)(e,t.outfile)),n):(0,S.resolve)(e,n)}function w(e){return e.split("?",1).join("")}function D(e){if(!e||(0,S.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,S.normalize)(e);if(t===".."||t.startsWith(`..${S.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 J(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 u=s.buildInfo??(s.buildInfo={});u[n]=t}function U(e,t,n,r,s,u,m,o){let y=e.name??e.options?.name;y==="server"||y==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",p=>{p.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let x=[...p.modules].map(f=>he(f,u)).filter(f=>f!==void 0),C=ge(x,m?.values()??[]),i=await k(C,await n(),r,s,o);if(!i.css)return;let d=O(t,i.css);if(p.getAsset?.(d))throw new Error(`CSSX CSS asset collision at "${d}".`);if(p.emitAsset(d,new e.webpack.sources.RawSource(v(i,d))),i.map){let f=`${d}.map`;if(p.getAsset?.(f))throw new Error(`CSSX CSS map asset collision at "${f}".`);p.emitAsset(f,new e.webpack.sources.RawSource(N(i.map,d)))}})})}function ge(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 he(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:u,atomicClasses:m,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:u&&typeof u=="object"?u:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:o&&typeof o=="object"?o:{}}}var K=require("@babel/core"),Z=ue(require("@cssxio/babel-plugin"),1),M=require("@cssxio/compiler");var Ce=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function T(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",u=t.split("?",1).join("");if(!Ce.has(u.slice(u.lastIndexOf(".")))||!e.includes(s))return null;if(u.endsWith(".astro"))return xe(e,t,n);let m=await $(n),o=await(0,K.transformAsync)(e,{babelrc:!1,configFile:!1,filename:u,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Z.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:m,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:p,origins:x,composites:C,atomicClasses:i,cssOnlySignature:d}=y.cssx,f=Object.keys(p),g=f.length===0?"":(await(0,M.compileUtilities)(f,a=>p[a],m,(0,M.createSelectorAliases)(C),new Set(i),{darkMode:n.darkMode})).css;return{code:o.code,rules:g?[be(ke(g,n.layer))]:[],candidates:p,composites:C,atomicClasses:i,origins:x,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,M.createClassNameAllocator)(),u=n.importSource??"@cssxio/cssx",m={},o={},y=[],p=e;for(let x of[...r].reverse()){let C=await T(`import { sx } from ${JSON.stringify(u)};
4
- const style = ${x.code};`,`${t}.ts`,{...n,classNameAllocator:s}),i=we(C.code);p=`${p.slice(0,x.start)}${i}${p.slice(x.end)}`,Object.assign(m,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:p,rules:y,candidates:m,composites:o,atomicClasses:[],origins:{},cssOnlySignature:p}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,u=e.indexOf("(",s),m=0,o="";for(let y=u;y<e.length;y+=1){let p=e[y];if(o){p==="\\"?y+=1:p===o&&(o="");continue}if(p==='"'||p==="'"||p==="`")o=p;else if(p==="(")m+=1;else if(p===")"&&--m===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 Q(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 be(e){return{className:`cssx-${F(e)}`,css:e}}function ke(e,t){return e&&t?`@layer ${t}{${e}}`:e}function H(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var A="@cssxio/unplugin/rules",ve=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,Y=new Map;function Me(e,t){return`${e}\0${JSON.stringify(t)}`}function V(e,t){let n=Me(e,t),r=Y.get(n);return r||(r={classNameAllocator:(0,_.createClassNameAllocator)(),transformedDataById:new Map},Y.set(n,r)),r}function Re(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Ne(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 u=e.runner?.evaluatedModules?.getModuleById(s.id);u&&e.runner?.evaluatedModules?.invalidateModule(u)}}function Oe(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Ae(e[A])}function Ae(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:u,origins:m,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(u)?{atomicClasses:u}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof o=="string"?o:""}}var Pe=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,u=(0,_.createClassNameAllocator)(),m=new Map,o,y=process.cwd(),p,x=()=>$(e),C=async function(i,d){let f=new Set(Object.values(d).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(w));if(t.framework!=="vite")for(let c of s.keys())f.has(c)||s.delete(c);let g=t.framework==="vite"?[...s.values()]:[...f].map(c=>{let h=Oe(this.getModuleInfo(c)?.meta);return Object.keys(h.candidates).length>0?h:s.get(c)??h}),a=await k(g,await x(),e.layer,r,e.darkMode);if(!a.css)return;let l=O(n,a.css);if(Object.hasOwn(d,l))throw new Error(`CSSX CSS asset collision at "${l}".`);if(this.emitFile({type:"asset",fileName:l,source:v(a,l)}),a.map){let c=`${l}.map`;if(Object.hasOwn(d,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:N(a.map,l)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:ve},async handler(i,d){e.themeFile&&this.addWatchFile?.((0,b.resolve)(process.cwd(),e.themeFile));let f=Re(this),g=f?V(f,e):void 0,a=await T(i,d,{...e,classNameAllocator:g?.classNameAllocator??u},Q(this,d)),l={id:w(d),rules:a?.rules??[],candidates:a?.candidates??{},composites:a?.composites??{},atomicClasses:a?.atomicClasses??[],origins:a?.origins??{},cssOnlySignature:a?.cssOnlySignature??""};J(this,l,A);let c=w(d);(a||c===d)&&(s.set(c,l),m.set((0,b.resolve)(y,c),l),g?.transformedDataById.set(c,l)),t.framework==="vite"&&p&&H(p,j("/",n));let h=a?.code??i;return{code:(t.framework==="webpack"||t.framework==="rspack")&&a?`${h}
5
- ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event==="delete"&&s.delete(w(i))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(i){p=i;let d=j(i.config.base,n),f=j("/",n);i.watcher?.on("unlink",g=>{s.delete(w(g)),H(i,f)}),i.middlewares.use((g,a,l)=>{let c=g.url?.split("?",1)[0];if(c!==d&&(c!==`${d}.map`||!r))return l();x().then(h=>k([...s.values()],h,e.layer,r,e.darkMode)).then(h=>{if(c===`${d}.map`){a.setHeader("Content-Type","application/json; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(h.map?N(h.map,n):"");return}a.setHeader("Content-Type","text/css; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(v(h,n))}).catch(h=>{a.setHeader("Content-Type","text/plain; charset=utf-8"),a.end(h instanceof Error?h.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(i){let d=this.environment;if(!d||d.name==="client")return;let f=i.modules.filter(l=>{let c=s.get(w(l.id??""));return!!(c&&c.cssOnlySignature&&c.atomicClasses?.length===0)});if(f.length===0)return;let g=new Map(f.map(l=>[l,s.get(w(l.id)).cssOnlySignature]));for(let l of f)l.url&&await d.transformRequest(l.url);if(f.every(l=>{let c=s.get(w(l.id));return!!(c&&c.atomicClasses.length===0&&c.cssOnlySignature===g.get(l))}))return Ne(d,f,i.timestamp),i.modules.filter(l=>!f.includes(l))}}},...t.framework==="webpack"?{webpack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="rspack"?{rspack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="esbuild"?{esbuild:{config(i){i.metafile=!0},setup(i){let d=i.initialOptions.absWorkingDir??process.cwd();y=d,i.onEnd(async f=>{if(!f.metafile)return;let g=new Set(Object.keys(f.metafile.inputs).map(h=>(0,b.resolve)(d,h)));for(let h of m.keys())g.has(h)||m.delete(h);let a=await k([...m.values()],await x(),e.layer,r,e.darkMode),l=G(d,i.initialOptions,O(n,a.css));if(!a.css){o&&await(0,R.unlink)(o).catch(()=>{}),o=void 0;return}let c=v(a,(0,b.basename)(l));if(i.initialOptions.write===!1){let h=f.outputFiles;if(!h)return;let se={path:l,contents:te.Buffer.from(c),hash:"",text:c};if(h.findIndex(re=>re.path===l)!==-1)throw new Error(`CSSX CSS asset collision at "${l}".`);h.push(se);return}await(0,R.mkdir)((0,b.dirname)(l),{recursive:!0}),await(0,R.writeFile)(l,c),o=l})}}}:{}}},E=(0,ee.createUnplugin)(Pe);function Ie(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
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")throw new Error('CSSX darkMode must be "media" or "selector".');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) {
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 @@ ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var ne=E.vite,Ke=E.rollup,Ze=E.webpack,Qe=E.rspack;var Le=ne,$e=Le;
92
+ }`}var re=F.vite,Ye=F.rollup,et=F.webpack,tt=F.rspack;var $e=re,je=$e;
package/dist/vite.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-CHY4_3I-.cjs';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.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-CHY4_3I-.js';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/vite.js CHANGED
@@ -1 +1 @@
1
- import{e as t}from"./chunk-7MEM7X4W.js";var e=t,i=e;export{i as default};
1
+ import{e as t}from"./chunk-VCJX4HRK.js";var e=t,i=e;export{i as default};
package/dist/webpack.cjs CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var oe=Object.create;var P=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ie=Object.getOwnPropertyNames;var le=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ce=(e,t)=>{for(var n in t)P(e,n,{get:t[n],enumerable:!0})},W=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ie(t))!de.call(e,s)&&s!==n&&P(e,s,{get:()=>t[s],enumerable:!(r=ae(t,s))||r.enumerable});return e};var ue=(e,t,n)=>(n=e!=null?oe(le(e)):{},W(t||!e||!e.__esModule?P(n,"default",{value:e,enumerable:!0}):n,e)),me=e=>W(P({},"__esModule",{value:!0}),e);var Be={};ce(Be,{default:()=>$e});module.exports=me(Be);var _=require("@cssxio/compiler"),ee=require("unplugin"),te=require("buffer"),R=require("fs/promises"),b=require("path");var L=require("@cssxio/compiler"),q=require("path");async function k(e,t,n,r=!0,s){let u=Object.create(null),m=Object.create(null),o=new Set,y=!0,p=new Map;for(let g of[...e].sort((a,l)=>a.id.localeCompare(l.id))){for(let[a,l]of Object.entries(g.candidates))if(a in u||(u[a]=l),g.id&&!p.has(a)){let c=g.origins?.[a];p.set(a,{id:g.id,line:c?.line??0,column:c?.column??0})}for(let[a,l]of Object.entries(g.composites??{})){let c=m[a];if(c&&c.join(" ")!==l.join(" "))throw new Error(`CSSX composite class collision for "${a}".`);m[a]=l}g.atomicClasses===void 0&&(y=!1);for(let a of g.atomicClasses??[])o.add(a)}let x=Object.keys(u).sort();if(x.length===0)return{css:""};let C=await(0,L.compileUtilities)(x,g=>u[g],t,(0,L.createSelectorAliases)(m),y?o:void 0,{darkMode:s}),i=C.css&&n?`@layer ${n}{`:"",d=`${i}${C.css}${i?"}":""}`,f=r?pe(`${i}${C.prefixCss}`,C.entries,p):void 0;return{css:d,...f?{map:f}:{}}}function v(e,t){return e.map?`${e.css}
2
- /*# sourceMappingURL=${(0,q.basename)(t)}.map */`:e.css}function N(e,t){return JSON.stringify({...e,file:t})}function pe(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])),u=[],m=X({line:0,column:0},e);for(let o of t){let y=n.get(o.candidate);y&&u.push({...m,source:s.get(y.id),originalLine:y.line,originalColumn:y.column}),m=X(m,o.css)}return{version:3,sources:r,names:[],mappings:fe(u)}}function X(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 fe(e){let t=Array.from({length:Math.max(0,...e.map(o=>o.line))+1},()=>[]),n=0,r=0,s=0,u=0,m=0;for(let o of e)m*=+(o.line===u),u=o.line,t[o.line]?.push(`${I(o.column-m)}${I(o.source-n)}${I(o.originalLine-r)}${I(o.originalColumn-s)}`),m=o.column,n=o.source,r=o.originalLine,s=o.originalColumn;return t.map(o=>o.join(",")).join(";")}var ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function I(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 z=require("fs/promises"),S=require("path");async function $(e){return e.themeFile===void 0?e.theme:(0,z.readFile)((0,S.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")throw new Error('CSSX darkMode must be "media" or "selector".');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.');D(e.cssFileName??"cssx.css")}function F(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 O(e,t){return D(e).replaceAll("[hash]",F(t))}function j(e,t){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(t).replaceAll(S.sep,"/")}`}function G(e,t,n){return t.outdir?(0,S.resolve)(e,t.outdir,n):t.outfile?(0,S.resolve)((0,S.dirname)((0,S.resolve)(e,t.outfile)),n):(0,S.resolve)(e,n)}function w(e){return e.split("?",1).join("")}function D(e){if(!e||(0,S.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let t=(0,S.normalize)(e);if(t===".."||t.startsWith(`..${S.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 J(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 u=s.buildInfo??(s.buildInfo={});u[n]=t}function U(e,t,n,r,s,u,m,o){let y=e.name??e.options?.name;y==="server"||y==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",p=>{p.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let x=[...p.modules].map(f=>he(f,u)).filter(f=>f!==void 0),C=ge(x,m?.values()??[]),i=await k(C,await n(),r,s,o);if(!i.css)return;let d=O(t,i.css);if(p.getAsset?.(d))throw new Error(`CSSX CSS asset collision at "${d}".`);if(p.emitAsset(d,new e.webpack.sources.RawSource(v(i,d))),i.map){let f=`${d}.map`;if(p.getAsset?.(f))throw new Error(`CSSX CSS map asset collision at "${f}".`);p.emitAsset(f,new e.webpack.sources.RawSource(N(i.map,d)))}})})}function ge(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 he(e,t){let n=e.buildInfo?.[t];if(!n||typeof n!="object")return;let{id:r,candidates:s,composites:u,atomicClasses:m,origins:o}=n;return{id:typeof r=="string"?r:"",candidates:s&&typeof s=="object"?s:{},composites:u&&typeof u=="object"?u:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:o&&typeof o=="object"?o:{}}}var K=require("@babel/core"),Z=ue(require("@cssxio/babel-plugin"),1),M=require("@cssxio/compiler");var Ce=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]);async function T(e,t,n={},r){B(n);let s=n.importSource??"@cssxio/cssx",u=t.split("?",1).join("");if(!Ce.has(u.slice(u.lastIndexOf(".")))||!e.includes(s))return null;if(u.endsWith(".astro"))return xe(e,t,n);let m=await $(n),o=await(0,K.transformAsync)(e,{babelrc:!1,configFile:!1,filename:u,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Z.default,{importSource:s,classNameAllocator:n.classNameAllocator,theme:m,reusabilityBudget:n.reusabilityBudget,stableClassNames:n.stableClassNames,darkMode:n.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),y=o.metadata,{candidates:p,origins:x,composites:C,atomicClasses:i,cssOnlySignature:d}=y.cssx,f=Object.keys(p),g=f.length===0?"":(await(0,M.compileUtilities)(f,a=>p[a],m,(0,M.createSelectorAliases)(C),new Set(i),{darkMode:n.darkMode})).css;return{code:o.code,rules:g?[be(ke(g,n.layer))]:[],candidates:p,composites:C,atomicClasses:i,origins:x,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,M.createClassNameAllocator)(),u=n.importSource??"@cssxio/cssx",m={},o={},y=[],p=e;for(let x of[...r].reverse()){let C=await T(`import { sx } from ${JSON.stringify(u)};
4
- const style = ${x.code};`,`${t}.ts`,{...n,classNameAllocator:s}),i=we(C.code);p=`${p.slice(0,x.start)}${i}${p.slice(x.end)}`,Object.assign(m,C.candidates),Object.assign(o,C.composites),y.push(...C.rules)}return{code:p,rules:y,candidates:m,composites:o,atomicClasses:[],origins:{},cssOnlySignature:p}}function Se(e){let t=[],n=/\bsx\s*\(/g;for(let r of e.matchAll(n)){let s=r.index,u=e.indexOf("(",s),m=0,o="";for(let y=u;y<e.length;y+=1){let p=e[y];if(o){p==="\\"?y+=1:p===o&&(o="");continue}if(p==='"'||p==="'"||p==="`")o=p;else if(p==="(")m+=1;else if(p===")"&&--m===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 Q(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 be(e){return{className:`cssx-${F(e)}`,css:e}}function ke(e,t){return e&&t?`@layer ${t}{${e}}`:e}function H(e,t,n=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:t,acceptedPath:t,timestamp:n}]})}var A="@cssxio/unplugin/rules",ve=/\.(?:[cm]?[jt]sx?|astro)(?:\?.*)?$/,Y=new Map;function Me(e,t){return`${e}\0${JSON.stringify(t)}`}function V(e,t){let n=Me(e,t),r=Y.get(n);return r||(r={classNameAllocator:(0,_.createClassNameAllocator)(),transformedDataById:new Map},Y.set(n,r)),r}function Re(e){let t=e.getNativeBuildContext?.();return t&&(t.framework==="webpack"||t.framework==="rspack")?t.loaderContext?.rootContext??process.cwd():void 0}function Ne(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 u=e.runner?.evaluatedModules?.getModuleById(s.id);u&&e.runner?.evaluatedModules?.invalidateModule(u)}}function Oe(e){return!e||typeof e!="object"?{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}:Ae(e[A])}function Ae(e){if(!e||typeof e!="object")return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""};let{id:t,rules:n,candidates:r,composites:s,atomicClasses:u,origins:m,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(u)?{atomicClasses:u}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof o=="string"?o:""}}var Pe=(e={},t)=>{B(e);let n=e.cssFileName??"cssx.css",r=e.sourceMap??!0,s=new Map,u=(0,_.createClassNameAllocator)(),m=new Map,o,y=process.cwd(),p,x=()=>$(e),C=async function(i,d){let f=new Set(Object.values(d).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(w));if(t.framework!=="vite")for(let c of s.keys())f.has(c)||s.delete(c);let g=t.framework==="vite"?[...s.values()]:[...f].map(c=>{let h=Oe(this.getModuleInfo(c)?.meta);return Object.keys(h.candidates).length>0?h:s.get(c)??h}),a=await k(g,await x(),e.layer,r,e.darkMode);if(!a.css)return;let l=O(n,a.css);if(Object.hasOwn(d,l))throw new Error(`CSSX CSS asset collision at "${l}".`);if(this.emitFile({type:"asset",fileName:l,source:v(a,l)}),a.map){let c=`${l}.map`;if(Object.hasOwn(d,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:N(a.map,l)})}};return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:ve},async handler(i,d){e.themeFile&&this.addWatchFile?.((0,b.resolve)(process.cwd(),e.themeFile));let f=Re(this),g=f?V(f,e):void 0,a=await T(i,d,{...e,classNameAllocator:g?.classNameAllocator??u},Q(this,d)),l={id:w(d),rules:a?.rules??[],candidates:a?.candidates??{},composites:a?.composites??{},atomicClasses:a?.atomicClasses??[],origins:a?.origins??{},cssOnlySignature:a?.cssOnlySignature??""};J(this,l,A);let c=w(d);(a||c===d)&&(s.set(c,l),m.set((0,b.resolve)(y,c),l),g?.transformedDataById.set(c,l)),t.framework==="vite"&&p&&H(p,j("/",n));let h=a?.code??i;return{code:(t.framework==="webpack"||t.framework==="rspack")&&a?`${h}
5
- ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event==="delete"&&s.delete(w(i))},rollup:{generateBundle:C},vite:{generateBundle:C,configureServer(i){p=i;let d=j(i.config.base,n),f=j("/",n);i.watcher?.on("unlink",g=>{s.delete(w(g)),H(i,f)}),i.middlewares.use((g,a,l)=>{let c=g.url?.split("?",1)[0];if(c!==d&&(c!==`${d}.map`||!r))return l();x().then(h=>k([...s.values()],h,e.layer,r,e.darkMode)).then(h=>{if(c===`${d}.map`){a.setHeader("Content-Type","application/json; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(h.map?N(h.map,n):"");return}a.setHeader("Content-Type","text/css; charset=utf-8"),a.setHeader("Cache-Control","no-store"),a.end(v(h,n))}).catch(h=>{a.setHeader("Content-Type","text/plain; charset=utf-8"),a.end(h instanceof Error?h.message:"Unable to compile CSSX development stylesheet.")})})},hotUpdate:{order:"pre",async handler(i){let d=this.environment;if(!d||d.name==="client")return;let f=i.modules.filter(l=>{let c=s.get(w(l.id??""));return!!(c&&c.cssOnlySignature&&c.atomicClasses?.length===0)});if(f.length===0)return;let g=new Map(f.map(l=>[l,s.get(w(l.id)).cssOnlySignature]));for(let l of f)l.url&&await d.transformRequest(l.url);if(f.every(l=>{let c=s.get(w(l.id));return!!(c&&c.atomicClasses.length===0&&c.cssOnlySignature===g.get(l))}))return Ne(d,f,i.timestamp),i.modules.filter(l=>!f.includes(l))}}},...t.framework==="webpack"?{webpack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="rspack"?{rspack(i){let d=V(i.context??i.options?.context??process.cwd(),e);U(i,n,x,e.layer,r,A,d.transformedDataById,e.darkMode)}}:{},...t.framework==="esbuild"?{esbuild:{config(i){i.metafile=!0},setup(i){let d=i.initialOptions.absWorkingDir??process.cwd();y=d,i.onEnd(async f=>{if(!f.metafile)return;let g=new Set(Object.keys(f.metafile.inputs).map(h=>(0,b.resolve)(d,h)));for(let h of m.keys())g.has(h)||m.delete(h);let a=await k([...m.values()],await x(),e.layer,r,e.darkMode),l=G(d,i.initialOptions,O(n,a.css));if(!a.css){o&&await(0,R.unlink)(o).catch(()=>{}),o=void 0;return}let c=v(a,(0,b.basename)(l));if(i.initialOptions.write===!1){let h=f.outputFiles;if(!h)return;let se={path:l,contents:te.Buffer.from(c),hash:"",text:c};if(h.findIndex(re=>re.path===l)!==-1)throw new Error(`CSSX CSS asset collision at "${l}".`);h.push(se);return}await(0,R.mkdir)((0,b.dirname)(l),{recursive:!0}),await(0,R.writeFile)(l,c),o=l})}}}:{}}},E=(0,ee.createUnplugin)(Pe);function Ie(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
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")throw new Error('CSSX darkMode must be "media" or "selector".');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) {
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 @@ ${Ie(n)}`:h,meta:{[A]:l},...a?.map?{map:a.map}:{}}}},watchChange(i,d){d.event===
89
89
  state.poll = setInterval(() => void refresh(), 500);
90
90
  }
91
91
  }
92
- }`}var Ke=E.vite,Ze=E.rollup,ne=E.webpack,Qe=E.rspack;var Le=ne,$e=Le;
92
+ }`}var Ye=F.vite,et=F.rollup,re=F.webpack,tt=F.rspack;var $e=re,je=$e;
@@ -1,5 +1,5 @@
1
1
  import * as _webpack from 'webpack';
2
- import { C as CssxPluginOptions } from './options-CHY4_3I-.cjs';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.cjs';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/webpack.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _webpack from 'webpack';
2
- import { C as CssxPluginOptions } from './options-CHY4_3I-.js';
2
+ import { C as CssxPluginOptions } from './options-Cx1s2I5t.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/webpack.js CHANGED
@@ -1 +1 @@
1
- import{g as c}from"./chunk-7MEM7X4W.js";var e=c,p=e;export{p as default};
1
+ import{g as c}from"./chunk-VCJX4HRK.js";var e=c,p=e;export{p as default};