@cssxio/unplugin 0.7.0 → 0.8.0

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.
Files changed (44) hide show
  1. package/README.md +51 -13
  2. package/dist/chunk-BPBCQNZV.js +91 -0
  3. package/dist/chunk-GGFXMP4P.js +13 -0
  4. package/dist/chunk-T2L6RO3O.js +1 -0
  5. package/dist/esbuild.cjs +17 -12
  6. package/dist/esbuild.d.cts +1 -1
  7. package/dist/esbuild.d.ts +1 -1
  8. package/dist/esbuild.js +1 -1
  9. package/dist/index.cjs +17 -12
  10. package/dist/index.d.cts +3 -20
  11. package/dist/index.d.ts +3 -20
  12. package/dist/index.js +1 -1
  13. package/dist/next-loader.cjs +16 -0
  14. package/dist/next-loader.d.cts +33 -0
  15. package/dist/next-loader.d.ts +33 -0
  16. package/dist/next-loader.js +4 -0
  17. package/dist/next.cjs +1 -0
  18. package/dist/next.d.cts +39 -0
  19. package/dist/next.d.ts +39 -0
  20. package/dist/next.js +1 -0
  21. package/dist/options-DkqShf7w.d.cts +56 -0
  22. package/dist/options-DkqShf7w.d.ts +56 -0
  23. package/dist/rollup.cjs +16 -11
  24. package/dist/rollup.d.cts +1 -1
  25. package/dist/rollup.d.ts +1 -1
  26. package/dist/rollup.js +1 -1
  27. package/dist/rspack.cjs +16 -11
  28. package/dist/rspack.d.cts +1 -1
  29. package/dist/rspack.d.ts +1 -1
  30. package/dist/rspack.js +1 -1
  31. package/dist/source-map-from-context-B4SX_KAW.d.cts +19 -0
  32. package/dist/source-map-from-context-B4SX_KAW.d.ts +19 -0
  33. package/dist/vite.cjs +16 -11
  34. package/dist/vite.d.cts +1 -1
  35. package/dist/vite.d.ts +1 -1
  36. package/dist/vite.js +1 -1
  37. package/dist/webpack.cjs +16 -11
  38. package/dist/webpack.d.cts +1 -1
  39. package/dist/webpack.d.ts +1 -1
  40. package/dist/webpack.js +1 -1
  41. package/package.json +14 -4
  42. package/dist/chunk-SKXNEQ2Z.js +0 -98
  43. package/dist/options-ByIyWTN0.d.cts +0 -29
  44. package/dist/options-ByIyWTN0.d.ts +0 -29
@@ -0,0 +1,19 @@
1
+ /** A source map accepted from a build tool. */
2
+ interface IncomingSourceMap {
3
+ /** Source map format version. CSSX accepts version 3. */
4
+ readonly version: number;
5
+ /** Source file names referenced by the map. */
6
+ readonly sources: string[];
7
+ /** Original identifier names referenced by the map. */
8
+ readonly names: string[];
9
+ /** Optional prefix for source file names. */
10
+ readonly sourceRoot?: string;
11
+ /** Optional source file contents. */
12
+ readonly sourcesContent?: string[];
13
+ /** Encoded source map segments. */
14
+ readonly mappings: string;
15
+ /** Name of the generated file. */
16
+ readonly file: string;
17
+ }
18
+
19
+ export type { IncomingSourceMap as I };
package/dist/vite.cjs CHANGED
@@ -1,12 +1,17 @@
1
- "use strict";var Ze=Object.create;var V=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var st=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty;var rt=(e,s)=>{for(var t in s)V(e,t,{get:s[t],enumerable:!0})},se=(e,s,t,r)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of tt(s))!ot.call(e,o)&&o!==t&&V(e,o,{get:()=>s[o],enumerable:!(r=et(s,o))||r.enumerable});return e};var nt=(e,s,t)=>(t=e!=null?Ze(st(e)):{},se(s||!e||!e.__esModule?V(t,"default",{value:e,enumerable:!0}):t,e)),it=e=>se(V({},"__esModule",{value:!0}),e);var gt={};rt(gt,{default:()=>ft});module.exports=it(gt);var Ke=require("@cssxio/compiler"),Qe=require("unplugin");function oe(e,s){let t=new Map,r=[];for(let o of s)o.id?t.set(o.id,o):r.push(o);for(let o of e)o.id?t.set(o.id,o):r.push(o);return[...t.values(),...r]}var A=require("path");function P(e){if(!e||(0,A.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let s=(0,A.normalize)(e);if(s===".."||s.startsWith(`..${A.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!s.endsWith(".css"))throw new Error("cssFileName must end in .css.");return s}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');P(e.cssFileName??"cssx.css")}var re=require("fs/promises"),ne=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,re.readFile)((0,ne.resolve)(process.cwd(),e.themeFile),"utf8")}function y(e){return e.split("?",1).join("")}function $(e){let s=2166136261;for(let t=0;t<e.length;t++)s^=e.charCodeAt(t),s=Math.imul(s,16777619);return(s>>>0).toString(36)}function b(e,s){return P(e).replaceAll("[hash]",$(s))}var M=require("path");function Y(e,s,t){return s.outdir?(0,M.resolve)(e,s.outdir,t):s.outfile?(0,M.resolve)((0,M.dirname)((0,M.resolve)(e,s.outfile)),t):(0,M.resolve)(e,t)}var ie=require("path");function T(e,s){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${P(s).replaceAll(ie.sep,"/")}`}function ae(e,s){let t=e.buildInfo?.[s];if(!t||typeof t!="object")return;let{id:r,candidates:o,composites:n,atomicClasses:d,origins:i}=t;return{id:typeof r=="string"?r:"",candidates:o&&typeof o=="object"?o:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:i&&typeof i=="object"?i:{}}}var H=require("@cssxio/compiler");function Z(e,s){let t=s.split(`
2
- `);return{line:e.line+t.length-1,column:t.at(-1).length+e.column*+(t.length===1)}}var at="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let s="",t=e<0?-e<<1|1:e<<1;do{let r=t&31;t>>>=5,t&&(r|=32),s+=at[r]}while(t);return s}function le(e){let s=Array.from({length:Math.max(0,...e.map(i=>i.line))+1},()=>[]),t=0,r=0,o=0,n=0,d=0;for(let i of e)d*=+(i.line===n),n=i.line,s[i.line]?.push(`${L(i.column-d)}${L(i.source-t)}${L(i.originalLine-r)}${L(i.originalColumn-o)}`),d=i.column,t=i.source,r=i.originalLine,o=i.originalColumn;return s.map(i=>i.join(",")).join(";")}function ce(e,s,t){let r=[...new Set(s.map(i=>t.get(i.candidate)?.id).filter(i=>!!i))].sort();if(r.length===0)return;let o=new Map(r.map((i,a)=>[i,a])),n=[],d=Z({line:0,column:0},e);for(let i of s){let a=t.get(i.candidate);a&&n.push({...d,source:o.get(a.id),originalLine:a.line,originalColumn:a.column}),d=Z(d,i.css)}return{version:3,sources:r,names:[],mappings:le(n)}}var de='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-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 h(e,s,t,r=!0,o,n=!0){let d=Object.create(null),i=Object.create(null),a=new Set,m=!0,p=new Map;for(let C of[...e].sort((x,R)=>x.id.localeCompare(R.id))){for(let[x,R]of Object.entries(C.candidates))if(x in d||(d[x]=R),C.id&&!p.has(x)){let D=C.origins?.[x];p.set(x,{id:C.id,line:D?.line??0,column:D?.column??0})}for(let[x,R]of Object.entries(C.composites??{})){let D=i[x];if(D&&D.join(" ")!==R.join(" "))throw new Error(`CSSX composite class collision for "${x}".`);i[x]=R}C.atomicClasses===void 0&&(m=!1);for(let x of C.atomicClasses??[])a.add(x)}let l=Object.keys(d).sort(),u=n?de:"";if(l.length===0)return{css:u&&t?`@layer ${t}{${u}}`:u};let c=await(0,H.compileUtilities)(l,C=>d[C],s,(0,H.createSelectorAliases)(i),m?a:void 0,{darkMode:o}),f=t?`@layer ${t}{`:"",g=`${f}${u}${c.css}${f?"}":""}`,N=r?ce(`${f}${u}${c.prefixCss}`,c.entries,p):void 0;return{css:g,...N?{map:N}:{}}}function v(e,s){return JSON.stringify({...e,file:s})}var me=require("path");function S(e,s){return e.map?`${e.css}
3
- /*# sourceMappingURL=${(0,me.basename)(s)}.map */`:e.css}function ue(e,s,t,r,o,n,d,i,a=!0,m){let p=e.name??e.options?.name;p==="server"||p==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",l=>{l.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let u=m?await m():oe([...l.modules].map(g=>ae(g,n)).filter(g=>g!==void 0),d?.values()??[]),c=await h(u,await t(),r,o,i,a);if(!c.css)return;let f=b(s,c.css);if(l.getAsset?.(f))throw new Error(`CSSX CSS asset collision at "${f}".`);if(l.emitAsset(f,new e.webpack.sources.RawSource(S(c,f))),c.map){let g=`${f}.map`;if(l.getAsset?.(g))throw new Error(`CSSX CSS map asset collision at "${g}".`);l.emitAsset(g,new e.webpack.sources.RawSource(v(c.map,f)))}})})}var w="@cssxio/unplugin/rules";function U(){return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}}var ge=require("@cssxio/compiler");function pe(e,s){return`${e}\0${JSON.stringify(s)}`}var fe=new Map;function _(e,s){let t=pe(e,s),r=fe.get(t);return r||(r={classNameAllocator:(0,ge.createClassNameAllocator)(),transformedDataById:new Map},fe.set(t,r)),r}var De=require("@cssxio/compiler"),Be=require("fs/promises"),J=require("path");var ye=require("fs/promises"),xe=require("path"),lt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),ct=new Set([".git",".next",".turbo","node_modules"]);async function Ce(e){let s=[],t=[e];for(;t.length>0;){let r=t.pop();for(let o of await(0,ye.readdir)(r,{withFileTypes:!0})){let n=(0,xe.join)(r,o.name);if(o.isDirectory()){ct.has(o.name)||t.push(n);continue}o.isFile()&&lt.has(n.slice(n.lastIndexOf(".")))&&s.push(n)}}return s.sort()}var he=require("@cssxio/compiler");function W(e){let s=[],t=/\bsx\s*\(/g;for(let r of e.matchAll(t)){let o=r.index,n=e.indexOf("(",o),d=0,i="";for(let a=n;a<e.length;a+=1){let m=e[a];if(i){m==="\\"?a+=1:m===i&&(i="");continue}if(m==='"'||m==="'"||m==="`")i=m;else if(m==="(")d+=1;else if(m===")"&&--d===0){s.push({start:o,end:a+1,code:e.slice(o,a+1)}),t.lastIndex=a+1;break}}}return s}function I(e,s){return{code:e,rules:s.flatMap(t=>t.rules),candidates:Object.assign({},...s.map(t=>t.candidates)),composites:Object.assign({},...s.map(t=>t.composites)),atomicClasses:[...new Set(s.flatMap(t=>t.atomicClasses))],origins:Object.assign({},...s.map(t=>t.origins)),cssOnlySignature:e}}function z(e){let s="const style = ",t=e.indexOf(s)+s.length,r=e.indexOf(";",t);return e.slice(t,r)}async function Se(e,s,t,r){let o=W(e);if(o.length===0)return null;let n=t.classNameAllocator??(0,he.createClassNameAllocator)(),d=t.importSource??"@cssxio/cssx",i=[],a=e;for(let m of[...o].reverse()){let p=await r(`import { sx } from ${JSON.stringify(d)};
4
- const style = ${m.code};`,`${s}.ts`,{...t,classNameAllocator:n}),l=z(p.code);a=`${a.slice(0,m.start)}${l}${a.slice(m.end)}`,i.push({...p,atomicClasses:[],origins:{}})}return I(a,i)}var ve=require("@babel/core"),we=nt(require("@cssxio/babel-plugin"),1),X=require("@cssxio/compiler");function be(e){return{className:`cssx-${$(e)}`,css:e}}function Me(e,s){return e&&s?`@layer ${s}{${e}}`:e}async function Oe(e,s,t,r){let o=t.importSource??"@cssxio/cssx",n=await j(t),d=await(0,ve.transformAsync)(e,{babelrc:!1,configFile:!1,filename:s,parserOpts:{plugins:["jsx","typescript"]},plugins:[[we.default,{importSource:o,classNameAllocator:t.classNameAllocator,theme:n,reusabilityBudget:t.reusabilityBudget,stableClassNames:t.stableClassNames,stableClassNameFileName:t.stableClassNameFileName,darkMode:t.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),i=d.metadata,{candidates:a,origins:m,composites:p,atomicClasses:l,cssOnlySignature:u}=i.cssx,c=Object.keys(a),f=c.length===0?"":(await(0,X.compileUtilities)(c,g=>a[g],n,(0,X.createSelectorAliases)(p),new Set(l),{darkMode:t.darkMode})).css;return{code:d.code,rules:f?[be(Me(f,t.layer))]:[],candidates:a,composites:p,atomicClasses:l,origins:m,cssOnlySignature:u,map:d.map}}var Te=require("@cssxio/compiler"),Ie=require("@vue/compiler-sfc");function G(e,s){let t=e.split(`
5
- `).slice(0,s.line).reduce((r,o)=>r+o.length+1,0);return Math.min(e.length,t+s.column)}function q(e,s){let t=Math.min(e.length,s),r=e.slice(0,t).split(`
6
- `).length-1,o=e.lastIndexOf(`
7
- `,t-1)+1;return{line:r,column:t-o}}function ee(e,s,t){let r={},o=e.slice(s);for(let[n,d]of Object.entries(t))r[n]=q(e,s+G(o,d));return r}function ke(e){return e.slice(1,-1).replace(/\\(['"\\bnfrtv])/g,(s,t)=>({b:"\b",n:`
8
- `,f:"\f",r:"\r",t:" ",v:"\v"})[t]??t)}function Ne(e,s){if(!s)return e;let t=s==='"'?"'":'"';return e.replace(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g,r=>{let o=r[0]==='"'?JSON.parse(r):ke(r),n=JSON.stringify(o);return t==='"'?n:`'${n.slice(1,-1).replaceAll("'","\\'")}'`})}function Re(e,s,t,r,o){let n={};for(let[d,i]of Object.entries(o)){let a=G(t,i);n[d]=q(e,s+Math.max(0,a-r))}return n}function Ae(e,s){let t=-1,r;for(let o=0;o<s;o++){let n=e[o];if(r){n===r&&(r=void 0);continue}if(n==="<"&&/[A-Za-z]/.test(e[o+1])){t=o;continue}t!==-1&&(n===">"?t=-1:(n==='"'||n==="'")&&(r=n))}return r}async function Pe(e,s,t,r,o){let n=W(e);if(n.length===0)return null;let d=t.importSource??"@cssxio/cssx",i=[],a=e;for(let m of[...n].reverse()){let p=`import { sx } from ${JSON.stringify(d)};
9
- const style = `,l=`${p}${m.code};`,u=await o(l,`${s}.cssx-vue-template.ts`,{...t,classNameAllocator:r}),c=Ne(z(u.code),Ae(e,m.start));a=`${a.slice(0,m.start)}${c}${a.slice(m.end)}`,i.push({...u,origins:Re(e,m.start,l,p.length,u.origins)})}return I(a,i)}async function Ee(e,s,t,r){let o=s.split("?",1).join(""),n=(0,Ie.parse)(e,{filename:o});if(n.errors.length>0)throw new Error(n.errors[0].message);let d=t.classNameAllocator??(0,Te.createClassNameAllocator)(),i=[],a=[];for(let l of[n.descriptor.script,n.descriptor.scriptSetup]){if(!l?.content.includes(t.importSource??"@cssxio/cssx"))continue;let u=l.lang==="js"||l.lang==="jsx"||l.lang==="tsx"?l.lang:"ts",c=await r(l.content,`${o}.cssx-vue-script.${u}`,{...t,classNameAllocator:d});i.push({start:l.loc.start.offset,end:l.loc.end.offset,code:c.code}),a.push({...c,origins:ee(e,l.loc.start.offset,c.origins)})}let m=n.descriptor.template;if(m?.content.includes("sx")){let l=await Pe(m.content,o,t,d,r);l&&(i.push({start:m.loc.start.offset,end:m.loc.end.offset,code:l.code}),a.push({...l,origins:ee(e,m.loc.start.offset,l.origins)}))}if(i.length===0)return null;let p=e;for(let l of i.sort((u,c)=>c.start-u.start))p=`${p.slice(0,l.start)}${l.code}${p.slice(l.end)}`;return I(p,a)}var dt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".vue"]);async function O(e,s,t={},r){B(t);let o=t.importSource??"@cssxio/cssx",n=s.split("?",1).join("");return!dt.has(n.slice(n.lastIndexOf(".")))||!e.includes(o)?null:n.endsWith(".astro")?Se(e,s,t,O):n.endsWith(".vue")?Ee(e,s,t,O):Oe(e,n,t,r)}function Fe(e,s){if(!e||typeof e!="object")return;let t=e.getCombinedSourcemap;if(typeof t!="function")return;let r=t.call(e);if(!r||typeof r!="object")return;let o=r;if(!(o.version!==3||!Array.isArray(o.sources)||typeof o.mappings!="string"))return{version:o.version,sources:[...o.sources],names:[...o.names??[]],mappings:o.mappings,file:o.file??s.split("?",1).join(""),...o.sourceRoot?{sourceRoot:o.sourceRoot}:{},...o.sourcesContent?{sourcesContent:[...o.sourcesContent]}:{}}}async function je(e,s){let t=await Ce(e),r=(0,De.createClassNameAllocator)(s.className),o=[];for(let n of t){let d=await(0,Be.readFile)(n,"utf8"),i=await O(d,n,{...s,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,J.relative)(e,n).replaceAll(J.sep,"/")});i&&o.push({id:n,candidates:i.candidates,composites:i.composites,atomicClasses:i.atomicClasses,origins:i.origins})}return o}function te({compiler:e,options:s,cssFileName:t,sourceMap:r,getTheme:o}){let n=_(e.context,s);ue(e,t,o,s.layer,r,w,n.transformedDataById,s.darkMode,s.preflight,s.stableClassNames?()=>je(e.context,s):void 0)}function K(e,s,t=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:s,acceptedPath:s,timestamp:t}]})}function $e(e,s){let{cssFileName:t,sourceMap:r,options:o,rollupDataById:n,getTheme:d}=s,i=T(e.config.base,t),a=T("/",t);e.watcher?.on("unlink",m=>{n.delete(y(m)),K(e,a)}),e.middlewares.use((m,p,l)=>{let u=m.url?.split("?",1)[0];if(u!==i&&(u!==`${i}.map`||!r))return l();d().then(c=>h([...n.values()],c,o.layer,r,o.darkMode,o.preflight)).then(c=>{if(u===`${i}.map`){p.setHeader("Content-Type","application/json; charset=utf-8"),p.setHeader("Cache-Control","no-store"),p.end(c.map?v(c.map,t):"");return}p.setHeader("Content-Type","text/css; charset=utf-8"),p.setHeader("Cache-Control","no-store"),p.end(S(c,t))}).catch(c=>{p.setHeader("Content-Type","text/plain; charset=utf-8"),p.end(c instanceof Error?c.message:"Unable to compile CSSX development stylesheet.")})})}function Le(e){if(!e||typeof e!="object")return U();let{id:s,rules:t,candidates:r,composites:o,atomicClasses:n,origins:d,cssOnlySignature:i}=e;return{id:typeof s=="string"?s:"",rules:Array.isArray(t)?t:[],candidates:r&&typeof r=="object"?r:{},composites:o&&typeof o=="object"?o:{},...Array.isArray(n)?{atomicClasses:n}:{},origins:d&&typeof d=="object"?d:{},cssOnlySignature:typeof i=="string"?i:""}}function Ve(e){return!e||typeof e!="object"?U():Le(e[w])}function He(e){return async function(s,t){let{framework:r,options:o,cssFileName:n,sourceMap:d,rollupDataById:i,getTheme:a}=e,m=new Set(Object.values(t).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(y));if(r!=="vite")for(let c of i.keys())m.has(c)||i.delete(c);let p=r==="vite"?[...i.values()]:[...m].map(c=>{let f=Ve(this.getModuleInfo(c)?.meta);return Object.keys(f.candidates).length>0?f:i.get(c)??f}),l=await h(p,await a(),o.layer,d,o.darkMode,o.preflight);if(!l.css)return;let u=b(n,l.css);if(Object.hasOwn(t,u))throw new Error(`CSSX CSS asset collision at "${u}".`);if(this.emitFile({type:"asset",fileName:u,source:S(l,u)}),l.map){let c=`${u}.map`;if(Object.hasOwn(t,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:v(l.map,u)})}}}var k=require("path");function Ue(e){let s=e.getNativeBuildContext?.();return s&&(s.framework==="webpack"||s.framework==="rspack")?s.loaderContext?.rootContext??process.cwd():void 0}function _e(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var pt=Object.create;var W=Object.defineProperty;var ft=Object.getOwnPropertyDescriptor;var gt=Object.getOwnPropertyNames;var yt=Object.getPrototypeOf,xt=Object.prototype.hasOwnProperty;var Ct=(e,s)=>{for(var t in s)W(e,t,{get:s[t],enumerable:!0})},pe=(e,s,t,o)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of gt(s))!xt.call(e,r)&&r!==t&&W(e,r,{get:()=>s[r],enumerable:!(o=ft(s,r))||o.enumerable});return e};var ht=(e,s,t)=>(t=e!=null?pt(yt(e)):{},pe(s||!e||!e.__esModule?W(t,"default",{value:e,enumerable:!0}):t,e)),St=e=>pe(W({},"__esModule",{value:!0}),e);var Tt={};Ct(Tt,{default:()=>Et});module.exports=St(Tt);var mt=require("@cssxio/compiler"),dt=require("unplugin");var z=require("fs/promises"),q=require("path");function fe(e,s,t){let o=t.naming??(t.stableClassNames?"source":t.className?.variant==="random"?"hash":t.className?.variant??"serial"),r=t.stableClassNames?"stableClassNames compatibility option selects source-addressed composites":t.naming?"explicit naming option":t.className?.variant?"className.variant option":"default serial naming",n=new Map,m=new Map;for(let l of[...e].sort((d,c)=>d.id.localeCompare(c.id))){let d=new Map;for(let[c,u]of Object.entries(l.candidates)){let p=m.get(c)??new Set;p.add(u),m.set(c,p);let g=n.get(u)??{module:l.id,utilities:new Set,line:l.origins?.[c]?.line??0,column:l.origins?.[c]?.column??0};g.utilities.add(c),n.set(u,g);let f=d.get(u)??[];f.push(c),d.set(u,f)}for(let[c,u]of Object.entries(l.composites??{})){let p=u.flatMap(y=>d.get(y)??[]),g=p[0],f=n.get(c)??{module:l.id,utilities:new Set,line:g?l.origins?.[g]?.line??0:0,column:g?l.origins?.[g]?.column??0:0};for(let y of p)f.utilities.add(y);n.set(c,f)}for(let c of l.atomicClasses??[])n.has(c)||n.set(c,{module:l.id,utilities:new Set,line:0,column:0})}let i=[...n].sort(([l],[d])=>l.localeCompare(d)).map(([l,d])=>({className:l,module:d.module,utilities:[...d.utilities].sort(),line:d.line+1,column:d.column+1,selectorFound:new RegExp(`\\.${wt(l)}(?:[^A-Za-z0-9_-]|$)`).test(s)})),a=[...m].filter(([,l])=>l.size>1).map(([l])=>l).sort();return{version:1,naming:{mode:o,reason:r},coordination:{mode:t.coordination??"memory",...t.coordination==="manifest"&&t.manifestPath?{manifestPath:t.manifestPath}:{}},classes:i,serverClientMappings:{status:a.length>0?"mismatch":t.coordination==="manifest"?"manifest-shared":"consistent-in-process",conflicts:a}}}function wt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ge(e,s){let t=new Map,o=[];for(let r of s)r.id?t.set(r.id,r):o.push(r);for(let r of e)r.id?t.set(r.id,r):o.push(r);return[...t.values(),...o]}var F=require("path");function D(e){if(!e||(0,F.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let s=(0,F.normalize)(e);if(s===".."||s.startsWith(`..${F.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!s.endsWith(".css"))throw new Error("cssFileName must end in .css.");return s}function U(e){if(e.sourceRoots&&e.sourceRoots.some(t=>typeof t!="string"||!t.trim()))throw new Error("CSSX sourceRoots must contain non-empty file-system paths.");let s=e.debug;if(s===null||s!==void 0&&typeof s!="boolean"&&(typeof s!="object"||typeof s.reportFile!="string"||!s.reportFile))throw new Error("CSSX debug must be a boolean or an object with a reportFile path.");if(e.naming!==void 0&&!["serial","hash","source"].includes(e.naming))throw new Error('CSSX naming must be "serial", "hash", or "source".');if(e.coordination!==void 0&&!["memory","manifest"].includes(e.coordination))throw new Error('CSSX coordination must be "memory" or "manifest".');if(e.stableClassNames&&e.naming&&e.naming!=="source")throw new Error('CSSX stableClassNames selects source naming and conflicts with naming. Use naming: "source".');if(e.stableClassNames&&e.coordination==="manifest")throw new Error("CSSX stableClassNames already selects source naming; remove it to use manifest coordination.");if(e.naming==="hash"&&e.className?.variant==="serial")throw new Error('CSSX naming: "hash" conflicts with className.variant: "serial".');if(e.naming==="serial"&&e.className?.variant==="random")throw new Error('CSSX naming: "serial" conflicts with className.variant: "random".');if(e.coordination==="manifest"&&!e.manifestPath)throw new Error('CSSX coordination: "manifest" requires manifestPath.');if(e.manifestPath&&e.coordination!=="manifest")throw new Error('CSSX manifestPath requires coordination: "manifest".');if(e.coordination==="manifest"&&e.classNameAllocator)throw new Error("CSSX manifest coordination cannot use a custom classNameAllocator.");if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');D(e.cssFileName??"cssx.css")}var ye=require("fs/promises"),xe=require("path");async function H(e){return e.themeFile===void 0?e.theme:(0,ye.readFile)((0,xe.resolve)(process.cwd(),e.themeFile),"utf8")}function S(e){return e.split("?",1).join("")}function X(e){let s=2166136261;for(let t=0;t<e.length;t++)s^=e.charCodeAt(t),s=Math.imul(s,16777619);return(s>>>0).toString(36)}function k(e,s){return D(e).replaceAll("[hash]",X(s))}var P=require("path");function ae(e,s,t){return s.outdir?(0,P.resolve)(e,s.outdir,t):s.outfile?(0,P.resolve)((0,P.dirname)((0,P.resolve)(e,s.outfile)),t):(0,P.resolve)(e,t)}var Ce=require("path");function $(e,s){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(s).replaceAll(Ce.sep,"/")}`}function R(e){let s=e.naming==="hash"?"random":e.naming==="serial"?"serial":void 0;if(s&&e.className?.variant&&e.className.variant!==s)throw new Error(`CSSX naming: "${e.naming}" conflicts with className.variant: "${e.className.variant}".`);return{...e.className,...s?{variant:s}:{}}}function he(e,s){let t=e.buildInfo?.[s];if(!t||typeof t!="object")return;let{id:o,candidates:r,composites:n,atomicClasses:m,origins:i}=t;return{id:typeof o=="string"?o:"",candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:i&&typeof i=="object"?i:{}}}var J=require("@cssxio/compiler");function le(e,s){let t=s.split(`
2
+ `);return{line:e.line+t.length-1,column:t.at(-1).length+e.column*+(t.length===1)}}var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function _(e){let s="",t=e<0?-e<<1|1:e<<1;do{let o=t&31;t>>>=5,t&&(o|=32),s+=bt[o]}while(t);return s}function Se(e){let s=Array.from({length:Math.max(0,...e.map(i=>i.line))+1},()=>[]),t=0,o=0,r=0,n=0,m=0;for(let i of e)m*=+(i.line===n),n=i.line,s[i.line]?.push(`${_(i.column-m)}${_(i.source-t)}${_(i.originalLine-o)}${_(i.originalColumn-r)}`),m=i.column,t=i.source,o=i.originalLine,r=i.originalColumn;return s.map(i=>i.join(",")).join(";")}function we(e,s,t){let o=[...new Set(s.map(i=>t.get(i.candidate)?.id).filter(i=>!!i))].sort();if(o.length===0)return;let r=new Map(o.map((i,a)=>[i,a])),n=[],m=le({line:0,column:0},e);for(let i of s){let a=t.get(i.candidate);a&&n.push({...m,source:r.get(a.id),originalLine:a.line,originalColumn:a.column}),m=le(m,i.css)}return{version:3,sources:o,names:[],mappings:Se(n)}}var be='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-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 w(e,s,t,o=!0,r,n=!0){let m=Object.create(null),i=Object.create(null),a=new Set,l=!0,d=new Map;for(let x of[...e].sort((h,v)=>h.id.localeCompare(v.id))){for(let[h,v]of Object.entries(x.candidates))if(h in m||(m[h]=v),x.id&&!d.has(h)){let V=x.origins?.[h];d.set(h,{id:x.id,line:V?.line??0,column:V?.column??0})}for(let[h,v]of Object.entries(x.composites??{})){let V=i[h];if(V&&V.join(" ")!==v.join(" "))throw new Error(`CSSX composite class collision for "${h}".`);i[h]=v}x.atomicClasses===void 0&&(l=!1);for(let h of x.atomicClasses??[])a.add(h)}let c=Object.keys(m).sort(),u=n?be:"";if(c.length===0)return{css:u&&t?`@layer ${t}{${u}}`:u};let p=await(0,J.compileUtilities)(c,x=>m[x],s,(0,J.createSelectorAliases)(i),l?a:void 0,{darkMode:r}),g=t?`@layer ${t}{`:"",f=`${g}${u}${p.css}${g?"}":""}`,y=o?we(`${g}${u}${p.prefixCss}`,p.entries,d):void 0;return{css:f,...y?{map:y}:{}}}function A(e,s){return JSON.stringify({...e,file:s})}var ve=require("path");function b(e,s){return e.map?`${e.css}
3
+ /*# sourceMappingURL=${(0,ve.basename)(s)}.map */`:e.css}function Ne(e,s,t,o,r,n,m,i,a=!0,l,d){let c=e.name??e.options?.name;c==="server"||c==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",u=>{u.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let p=l?await l():ge([...u.modules].map(y=>he(y,n)).filter(y=>y!==void 0),m?.values()??[]),g=await w(p,await t(),o,r,i,a);if(d?.debug){let y=fe(p,g.css,d);if(d.debug===!0)console.info(`CSSX: ${y.naming.mode} naming; ${y.classes.filter(x=>x.selectorFound).length}/${y.classes.length} generated classes have selectors; compiler mappings ${y.serverClientMappings.status}${y.serverClientMappings.conflicts.length?` (${y.serverClientMappings.conflicts.length} utility conflicts)`:""}.`);else{let x=(0,q.resolve)(e.context,d.debug.reportFile);await(0,z.mkdir)((0,q.dirname)(x),{recursive:!0}),await(0,z.writeFile)(x,`${JSON.stringify(y,null,2)}
4
+ `,"utf8")}}if(!g.css)return;let f=k(s,g.css);if(u.getAsset?.(f))throw new Error(`CSSX CSS asset collision at "${f}".`);if(u.emitAsset(f,new e.webpack.sources.RawSource(b(g,f))),g.map){let y=`${f}.map`;if(u.getAsset?.(y))throw new Error(`CSSX CSS map asset collision at "${y}".`);u.emitAsset(y,new e.webpack.sources.RawSource(A(g.map,f)))}})})}var E="@cssxio/unplugin/rules";function G(){return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}}var ke=require("@cssxio/compiler");function Me(e,s){return`${e}\0${JSON.stringify(s)}`}var Oe=new Map;function K(e,s){let t=Me(e,s),o=Oe.get(t);return o||(o={classNameAllocator:s.classNameAllocator??(0,ke.createClassNameAllocator)(R(s)),transformedDataById:new Map},Oe.set(t,o)),o}var Ke=require("@cssxio/compiler"),Qe=require("fs/promises"),j=require("path");var Pe=require("fs/promises"),Q=require("path"),vt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".mdx",".md"]),Nt=new Set([".git",".next",".turbo","node_modules"]);async function Re(e,s=[]){let t=[],o=[e,...s],r=new Set;for(;o.length>0;){let n=o.pop(),m=(0,Q.resolve)(n);if(!r.has(m)){r.add(m);for(let i of await(0,Pe.readdir)(n,{withFileTypes:!0})){let a=(0,Q.join)(n,i.name);if(i.isDirectory()){Nt.has(i.name)||o.push(a);continue}i.isFile()&&vt.has(a.slice(a.lastIndexOf(".")))&&t.push(a)}}}return t.sort()}var Ae=require("module"),Ee=require("path"),ce=require("url");async function Te(e,s,t={}){let o=(0,Ae.createRequire)((0,Ee.resolve)(s,"package.json")),r;try{r=o.resolve("@mdx-js/mdx")}catch{throw new Error("CSSX Next MDX support requires @mdx-js/mdx to be installed in the Next.js project.")}let n=await import((0,ce.pathToFileURL)(r).href),m=async i=>Promise.all((i??[]).map(async a=>{let[l,d]=typeof a=="string"?[a,void 0]:a,c=o.resolve(l),u=await import((0,ce.pathToFileURL)(c).href),p=u.default??u;return d===void 0?p:[p,d]}));return String(await n.compile(e,{outputFormat:"program",development:t.development??!1,remarkPlugins:await m(t.remarkPlugins),rehypePlugins:await m(t.rehypePlugins),recmaPlugins:await m(t.recmaPlugins)}))}var Fe=require("@cssxio/compiler");function Y(e){let s=[],t=/\bsx\s*\(/g;for(let o of e.matchAll(t)){let r=o.index,n=e.indexOf("(",r),m=0,i="";for(let a=n;a<e.length;a+=1){let l=e[a];if(i){l==="\\"?a+=1:l===i&&(i="");continue}if(l==='"'||l==="'"||l==="`")i=l;else if(l==="(")m+=1;else if(l===")"&&--m===0){s.push({start:r,end:a+1,code:e.slice(r,a+1)}),t.lastIndex=a+1;break}}}return s}function I(e,s){return{code:e,rules:s.flatMap(t=>t.rules),candidates:Object.assign({},...s.map(t=>t.candidates)),composites:Object.assign({},...s.map(t=>t.composites)),atomicClasses:[...new Set(s.flatMap(t=>t.atomicClasses))],origins:Object.assign({},...s.map(t=>t.origins)),cssOnlySignature:e}}function Z(e){let s="const style = ",t=e.indexOf(s)+s.length,o=e.indexOf(";",t);return e.slice(t,o)}async function De(e,s,t,o){let r=Y(e);if(r.length===0)return null;let n=t.classNameAllocator??(0,Fe.createClassNameAllocator)(),m=t.importSource??"@cssxio/cssx",i=[],a=e;for(let l of[...r].reverse()){let d=await o(`import { sx } from ${JSON.stringify(m)};
5
+ const style = ${l.code};`,`${s}.ts`,{...t,classNameAllocator:n}),c=Z(d.code);a=`${a.slice(0,l.start)}${c}${a.slice(l.end)}`,i.push({...d,atomicClasses:[],origins:{}})}return I(a,i)}var je=require("@babel/core"),Be=ht(require("@cssxio/babel-plugin"),1),ee=require("@cssxio/compiler");function $e(e){return{className:`cssx-${X(e)}`,css:e}}function Ie(e,s){return e&&s?`@layer ${s}{${e}}`:e}async function Le(e,s,t,o){let r=t.importSource??"@cssxio/cssx",n=await H(t),m=await(0,je.transformAsync)(e,{babelrc:!1,configFile:!1,filename:s,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Be.default,{importSource:r,classNameAllocator:t.classNameAllocator,theme:n,reusabilityBudget:t.reusabilityBudget,stableClassNames:t.stableClassNames,stableClassNameFileName:t.stableClassNameFileName,darkMode:t.darkMode}]],sourceMaps:!0,...o?{inputSourceMap:o}:{}}),i=m.metadata,{candidates:a,origins:l,composites:d,atomicClasses:c,cssOnlySignature:u}=i.cssx,p=Object.keys(a),g=p.length===0?"":(await(0,ee.compileUtilities)(p,f=>a[f],n,(0,ee.createSelectorAliases)(d),new Set(c),{darkMode:t.darkMode})).css;return{code:m.code,rules:g?[$e(Ie(g,t.layer))]:[],candidates:a,composites:d,atomicClasses:c,origins:l,cssOnlySignature:u,map:m.map}}var We=require("@cssxio/compiler"),Je=require("@vue/compiler-sfc");function te(e,s){let t=e.split(`
6
+ `).slice(0,s.line).reduce((o,r)=>o+r.length+1,0);return Math.min(e.length,t+s.column)}function se(e,s){let t=Math.min(e.length,s),o=e.slice(0,t).split(`
7
+ `).length-1,r=e.lastIndexOf(`
8
+ `,t-1)+1;return{line:o,column:t-r}}function me(e,s,t){let o={},r=e.slice(s);for(let[n,m]of Object.entries(t))o[n]=se(e,s+te(r,m));return o}function Ve(e){return e.slice(1,-1).replace(/\\(['"\\bnfrtv])/g,(s,t)=>({b:"\b",n:`
9
+ `,f:"\f",r:"\r",t:" ",v:"\v"})[t]??t)}function Ue(e,s){if(!s)return e;let t=s==='"'?"'":'"';return e.replace(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g,o=>{let r=o[0]==='"'?JSON.parse(o):Ve(o),n=JSON.stringify(r);return t==='"'?n:`'${n.slice(1,-1).replaceAll("'","\\'")}'`})}function He(e,s,t,o,r){let n={};for(let[m,i]of Object.entries(r)){let a=te(t,i);n[m]=se(e,s+Math.max(0,a-o))}return n}function Xe(e,s){let t=-1,o;for(let r=0;r<s;r++){let n=e[r];if(o){n===o&&(o=void 0);continue}if(n==="<"&&/[A-Za-z]/.test(e[r+1])){t=r;continue}t!==-1&&(n===">"?t=-1:(n==='"'||n==="'")&&(o=n))}return o}async function _e(e,s,t,o,r){let n=Y(e);if(n.length===0)return null;let m=t.importSource??"@cssxio/cssx",i=[],a=e;for(let l of[...n].reverse()){let d=`import { sx } from ${JSON.stringify(m)};
10
+ const style = `,c=`${d}${l.code};`,u=await r(c,`${s}.cssx-vue-template.ts`,{...t,classNameAllocator:o}),p=Ue(Z(u.code),Xe(e,l.start));a=`${a.slice(0,l.start)}${p}${a.slice(l.end)}`,i.push({...u,origins:He(e,l.start,c,d.length,u.origins)})}return I(a,i)}async function ze(e,s,t,o){let r=s.split("?",1).join(""),n=(0,Je.parse)(e,{filename:r});if(n.errors.length>0)throw new Error(n.errors[0].message);let m=t.classNameAllocator??(0,We.createClassNameAllocator)(),i=[],a=[];for(let c of[n.descriptor.script,n.descriptor.scriptSetup]){if(!c?.content.includes(t.importSource??"@cssxio/cssx"))continue;let u=c.lang==="js"||c.lang==="jsx"||c.lang==="tsx"?c.lang:"ts",p=await o(c.content,`${r}.cssx-vue-script.${u}`,{...t,classNameAllocator:m});i.push({start:c.loc.start.offset,end:c.loc.end.offset,code:p.code}),a.push({...p,origins:me(e,c.loc.start.offset,p.origins)})}let l=n.descriptor.template;if(l?.content.includes("sx")){let c=await _e(l.content,r,t,m,o);c&&(i.push({start:l.loc.start.offset,end:l.loc.end.offset,code:c.code}),a.push({...c,origins:me(e,l.loc.start.offset,c.origins)}))}if(i.length===0)return null;let d=e;for(let c of i.sort((u,p)=>p.start-u.start))d=`${d.slice(0,c.start)}${c.code}${d.slice(c.end)}`;return I(d,a)}var Mt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".vue"]);async function N(e,s,t={},o){U(t);let r=t.importSource??"@cssxio/cssx",n=s.split("?",1).join("");return!Mt.has(n.slice(n.lastIndexOf(".")))||!e.includes(r)?null:n.endsWith(".astro")?De(e,s,t,N):n.endsWith(".vue")?ze(e,s,t,N):Le(e,n,t,o)}function de(e,s){if(!e||typeof e!="object")return;let t=e.getCombinedSourcemap;if(typeof t!="function")return;let o=t.call(e);if(!o||typeof o!="object")return;let r=o;if(!(r.version!==3||!Array.isArray(r.sources)||typeof r.mappings!="string"))return{version:r.version,sources:[...r.sources],names:[...r.names??[]],mappings:r.mappings,file:r.file??s.split("?",1).join(""),...r.sourceRoot?{sourceRoot:r.sourceRoot}:{},...r.sourcesContent?{sourcesContent:[...r.sourcesContent]}:{}}}var M=require("@cssxio/compiler"),C=require("fs/promises"),re=require("path"),qe=20,Ge=5*6e4;async function oe(e,s,t){let o=(0,re.resolve)(e),r=`${o}.lock`,n=Date.now(),m,i=0;for(;!m;){await(0,C.mkdir)((0,re.dirname)(o),{recursive:!0});let a;try{a=await(0,C.open)(r,"wx")}catch(l){let d=l.code;if(d!=="EEXIST"){if(d!=="EACCES"&&d!=="EPERM")throw l;try{await(0,C.stat)(r)}catch(c){if(c.code==="ENOENT"){if(i+=1,i>1)throw l;await new Promise(u=>setTimeout(u,qe));continue}throw c}}if(i=0,await Ot(r))continue;if(Date.now()-n>=Ge)throw new Error(`Timed out waiting for CSSX class-name manifest lock: ${r}`);await new Promise(c=>setTimeout(c,qe));continue}try{await a.writeFile(`${process.pid}
11
+ ${Date.now()}
12
+ `)}catch(l){throw await a.close().catch(()=>{}),await(0,C.rm)(r,{force:!0}).catch(()=>{}),l}m=a}try{let a=await kt(o,s),l=await t(a),d=(0,M.snapshotClassNameAllocator)(a),c=`${o}.${process.pid}.${Date.now()}.tmp`;try{await(0,C.writeFile)(c,`${JSON.stringify(d,null,2)}
13
+ `,"utf8"),await(0,C.rename)(c,o)}catch(u){throw await(0,C.rm)(c,{force:!0}).catch(()=>{}),u}return l}finally{await m.close(),await(0,C.rm)(r,{force:!0})}}async function Ot(e){try{let s=await(0,C.stat)(e),t;try{t=await(0,C.readFile)(e,"utf8")}catch(n){let m=n.code;if(m==="EACCES"||m==="EPERM")return!1;throw n}let[o]=t.split(`
14
+ `),r=Number(o);if(Number.isSafeInteger(r)&&r>0)try{return process.kill(r,0),!1}catch(n){return n.code!=="ESRCH"?!1:(await(0,C.rm)(e,{force:!0}),!0)}return Date.now()-s.mtimeMs<Ge?!1:(await(0,C.rm)(e,{force:!0}),!0)}catch(s){if(s.code==="ENOENT")return!1;throw s}}async function kt(e,s){try{let t=JSON.parse(await(0,C.readFile)(e,"utf8")),o=(0,M.snapshotClassNameAllocator)((0,M.createClassNameAllocator)(s)).options;if(JSON.stringify(t.options)!==JSON.stringify(o))throw new Error("CSSX class-name manifest options do not match the active compiler options.");return(0,M.restoreClassNameAllocator)(t)}catch(t){if(t.code==="ENOENT")return(0,M.createClassNameAllocator)(s);throw t}}async function O(e,s){let t=await Re(e,s.sourceRoots?.map(n=>(0,j.resolve)(e,n))),o={...s};delete o.coordination,delete o.manifestPath,delete o.classNameAllocator;let r=async n=>{let m=[];for(let i of t){let a=await(0,Qe.readFile)(i,"utf8"),l=/\.(?:md|mdx)$/i.test(i);if(l&&!a.includes(s.importSource??"@cssxio/cssx"))continue;let d=l?await Te(a,e,s.mdx):a,c=s.stableClassNames||s.naming==="source",u=await N(d,l?`${i}.tsx`:i,{...o,classNameAllocator:n,stableClassNames:c,...c?{stableClassNameFileName:(0,j.relative)(e,i).replaceAll(j.sep,"/")}:{}});u&&m.push({id:i,candidates:u.candidates,composites:u.composites,atomicClasses:u.atomicClasses,origins:u.origins})}return m};return s.coordination==="manifest"?oe(s.manifestPath,R(s),r):r(s.classNameAllocator??(0,Ke.createClassNameAllocator)(R(s)))}function ue({compiler:e,options:s,cssFileName:t,sourceMap:o,getTheme:r}){let n=K(e.context,s);Ne(e,t,r,s.layer,o,E,n.transformedDataById,s.darkMode,s.preflight,s.stableClassNames||s.naming==="source"||s.coordination==="manifest"?()=>O(e.context,s):void 0,s)}function ne(e,s,t=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:s,acceptedPath:s,timestamp:t}]})}function Ye(e,s){let{cssFileName:t,sourceMap:o,options:r,rollupDataById:n,getTheme:m}=s,i=$(e.config.base,t),a=$("/",t);e.watcher?.on("unlink",l=>{n.delete(S(l)),ne(e,a)}),e.middlewares.use((l,d,c)=>{let u=l.url?.split("?",1)[0];if(u!==i&&(u!==`${i}.map`||!o))return c();m().then(async p=>{let g=r.coordination==="manifest"?await O(e.config.root??process.cwd(),r):[...n.values()];return w(g,p,r.layer,o,r.darkMode,r.preflight)}).then(p=>{if(u===`${i}.map`){d.setHeader("Content-Type","application/json; charset=utf-8"),d.setHeader("Cache-Control","no-store"),d.end(p.map?A(p.map,t):"");return}d.setHeader("Content-Type","text/css; charset=utf-8"),d.setHeader("Cache-Control","no-store"),d.end(b(p,t))}).catch(p=>{d.setHeader("Content-Type","text/plain; charset=utf-8"),d.end(p instanceof Error?p.message:"Unable to compile CSSX development stylesheet.")})})}function Ze(e){if(!e||typeof e!="object")return G();let{id:s,rules:t,candidates:o,composites:r,atomicClasses:n,origins:m,cssOnlySignature:i}=e;return{id:typeof s=="string"?s:"",rules:Array.isArray(t)?t:[],candidates:o&&typeof o=="object"?o:{},composites:r&&typeof r=="object"?r:{},...Array.isArray(n)?{atomicClasses:n}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof i=="string"?i:""}}function et(e){return!e||typeof e!="object"?G():Ze(e[E])}function tt(e){return async function(s,t){let{framework:o,options:r,cssFileName:n,sourceMap:m,rollupDataById:i,getTheme:a}=e,l=new Set(Object.values(t).flatMap(p=>p.type==="chunk"?Object.keys(p.modules??{}):[]).map(S));if(o!=="vite")for(let p of i.keys())l.has(p)||i.delete(p);let d=r.coordination==="manifest"?await O(process.cwd(),r):o==="vite"?[...i.values()]:[...l].map(p=>{let g=et(this.getModuleInfo(p)?.meta);return Object.keys(g.candidates).length>0?g:i.get(p)??g}),c=await w(d,await a(),r.layer,m,r.darkMode,r.preflight);if(!c.css)return;let u=k(n,c.css);if(Object.hasOwn(t,u))throw new Error(`CSSX CSS asset collision at "${u}".`);if(this.emitFile({type:"asset",fileName:u,source:b(c,u)}),c.map){let p=`${u}.map`;if(Object.hasOwn(t,p))throw new Error(`CSSX CSS map asset collision at "${p}".`);this.emitFile({type:"asset",fileName:p,source:A(c.map,u)})}}}var T=require("path");function st(e){let s=e.getNativeBuildContext?.();return s&&(s.framework==="webpack"||s.framework==="rspack")?s.loaderContext?.rootContext??process.cwd():void 0}function rt(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
10
15
  const key = "__cssxStylesheetHmr";
11
16
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
12
17
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -93,5 +98,5 @@ const style = `,l=`${p}${m.code};`,u=await o(l,`${s}.cssx-vue-template.ts`,{...t
93
98
  state.poll = setInterval(() => void refresh(), 500);
94
99
  }
95
100
  }
96
- }`}function We(e,s,t){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let o=r.loaderContext?._module;if(!o)return;let n=o.buildInfo??(o.buildInfo={});n[t]=s}function ze(e){return async function(s,t){let{framework:r,options:o,classNameAllocator:n,rollupDataById:d,esbuildDataById:i,cssFileName:a,getEsbuildWorkingDirectory:m,notifyViteStyles:p}=e;o.themeFile&&this.addWatchFile?.((0,k.resolve)(o.themeFile));let l=Ue(this),u=l?_(l,o):void 0,c=await O(s,t,{...o,classNameAllocator:u?.classNameAllocator??n,...o.stableClassNames?{stableClassNameFileName:(0,k.relative)(l??process.cwd(),y(t)).replaceAll(k.sep,"/")}:{}},Fe(this,t)),f={id:y(t),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};We(this,f,w);let g=y(t);(c||g===t)&&(d.set(g,f),i.set((0,k.resolve)(m(),g),f),u?.transformedDataById.set(g,f)),r==="vite"&&p(T("/",a));let N=c?.code??s;return{code:(r==="webpack"||r==="rspack")&&c?`${N}
97
- ${_e(a)}`:N,meta:{[w]:f},...c?.map?{map:c.map}:{}}}}var Xe=require("buffer"),E=require("fs/promises"),F=require("path");function Ge(e){let{options:s,cssFileName:t,sourceMap:r,dataById:o,getTheme:n}=e,d,i=process.cwd();return{config(a){a.metafile=!0},setup(a){i=a.initialOptions.absWorkingDir??process.cwd(),a.onEnd(async m=>{if(!m.metafile)return;let p=new Set(Object.keys(m.metafile.inputs).map(f=>(0,F.resolve)(i,f)));for(let f of o.keys())p.has(f)||o.delete(f);let l=await h([...o.values()],await n(),s.layer,r,s.darkMode,s.preflight),u=Y(i,a.initialOptions,b(t,l.css));if(!l.css){d&&await(0,E.unlink)(d).catch(()=>{}),d=void 0;return}let c=S(l,(0,F.basename)(u));if(a.initialOptions.write===!1){let f=m.outputFiles;if(!f)return;let g={path:u,contents:Xe.Buffer.from(c),hash:"",text:c};if(f.findIndex(C=>C.path===u)!==-1)throw new Error(`CSSX CSS asset collision at "${u}".`);f.push(g);return}await(0,E.mkdir)((0,F.dirname)(u),{recursive:!0}),await(0,E.writeFile)(u,c),d=u})},getWorkingDirectory:()=>i}}function qe(e,s,t){let r=new Set;for(let o of s)e.moduleGraph?.invalidateModule(o,r,t,!0);for(let o of r){if(!o.id)continue;let n=e.runner?.evaluatedModules?.getModuleById(o.id);n&&e.runner?.evaluatedModules?.invalidateModule(n)}}function Je(e){return async function(t){let r=this.environment;if(!r||r.name==="client")return;let o=t.modules,n=o.filter(a=>{let m=e.get(y(a.id??""));return!!(m&&m.cssOnlySignature&&m.atomicClasses?.length===0)});if(n.length===0)return;let d=new Map(n.map(a=>[a,e.get(y(a.id)).cssOnlySignature]));for(let a of n)a.url&&await r.transformRequest(a.url);if(n.every(a=>{let m=e.get(y(a.id));return!!(m&&m.atomicClasses.length===0&&m.cssOnlySignature===d.get(a))}))return qe(r,n,t.timestamp),o.filter(a=>!n.includes(a))}}var mt=/\.(?:[cm]?[jt]sx?|astro|vue)(?:\?.*)?$/,ut=(e={},s)=>{B(e);let t=e.cssFileName??"cssx.css",r=e.sourceMap??!0,o=new Map,n=(0,Ke.createClassNameAllocator)(),d=new Map,i,a=()=>j(e),m=Ge({options:e,cssFileName:t,sourceMap:r,dataById:d,getTheme:a}),p=He({framework:s.framework,options:e,cssFileName:t,sourceMap:r,rollupDataById:o,getTheme:a});return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:mt},handler:ze({framework:s.framework,options:e,classNameAllocator:n,rollupDataById:o,esbuildDataById:d,cssFileName:t,getEsbuildWorkingDirectory:m.getWorkingDirectory,notifyViteStyles:l=>{i&&K(i,l)}})},watchChange(l,u){u.event==="delete"&&o.delete(y(l))},rollup:{generateBundle:p},vite:{generateBundle:p,configureServer(l){i=l,$e(l,{cssFileName:t,sourceMap:r,options:e,rollupDataById:o,getTheme:a})},hotUpdate:{order:"pre",handler:Je(o)}},...s.framework==="webpack"?{webpack(l){te({compiler:l,options:e,cssFileName:t,sourceMap:r,getTheme:a})}}:{},...s.framework==="rspack"?{rspack(l){te({compiler:l,options:e,cssFileName:t,sourceMap:r,getTheme:a})}}:{},...s.framework==="esbuild"?{esbuild:{config:m.config,setup:m.setup}}:{}}},Q=(0,Qe.createUnplugin)(ut),Ye=Q.vite,Zo=Q.rollup,er=Q.webpack,tr=Q.rspack;var pt=Ye,ft=pt;
101
+ }`}function ot(e,s,t){let o=e.getNativeBuildContext?.();if(!o||o.framework!=="webpack"&&o.framework!=="rspack")return;let r=o.loaderContext?._module;if(!r)return;let n=r.buildInfo??(r.buildInfo={});n[t]=s}function nt(e){return async function(s,t){let{framework:o,options:r,classNameAllocator:n,rollupDataById:m,esbuildDataById:i,cssFileName:a,getEsbuildWorkingDirectory:l,notifyViteStyles:d}=e;r.themeFile&&this.addWatchFile?.((0,T.resolve)(r.themeFile));let c=st(this),u=c?K(c,r):void 0,p={...r,className:{...r.className,...r.naming==="hash"?{variant:"random"}:{},...r.naming==="serial"?{variant:"serial"}:{}},stableClassNames:r.stableClassNames||r.naming==="source",classNameAllocator:u?.classNameAllocator??n,...r.stableClassNames||r.naming==="source"?{stableClassNameFileName:(0,T.relative)(c??process.cwd(),S(t)).replaceAll(T.sep,"/")}:{}},g={...p};delete g.coordination,delete g.manifestPath;let f=r.coordination==="manifest"?await oe(r.manifestPath,g.className,v=>N(s,t,{...g,classNameAllocator:v},de(this,t))):await N(s,t,p,de(this,t)),y={id:S(t),rules:f?.rules??[],candidates:f?.candidates??{},composites:f?.composites??{},atomicClasses:f?.atomicClasses??[],origins:f?.origins??{},cssOnlySignature:f?.cssOnlySignature??""};ot(this,y,E);let x=S(t);(f||x===t)&&(m.set(x,y),i.set((0,T.resolve)(l(),x),y),u?.transformedDataById.set(x,y)),o==="vite"&&d($("/",a));let h=f?.code??s;return{code:(o==="webpack"||o==="rspack")&&f?`${h}
102
+ ${rt(a)}`:h,meta:{[E]:y},...f?.map?{map:f.map}:{}}}}var it=require("buffer"),B=require("fs/promises"),L=require("path");function at(e){let{options:s,cssFileName:t,sourceMap:o,dataById:r,getTheme:n}=e,m,i=process.cwd();return{config(a){a.metafile=!0},setup(a){i=a.initialOptions.absWorkingDir??process.cwd(),a.onEnd(async l=>{if(!l.metafile)return;let d=new Set(Object.keys(l.metafile.inputs).map(f=>(0,L.resolve)(i,f)));for(let f of r.keys())d.has(f)||r.delete(f);let c=s.coordination==="manifest"?await O(i,s):[...r.values()],u=await w(c,await n(),s.layer,o,s.darkMode,s.preflight),p=ae(i,a.initialOptions,k(t,u.css));if(!u.css){m&&await(0,B.unlink)(m).catch(()=>{}),m=void 0;return}let g=b(u,(0,L.basename)(p));if(a.initialOptions.write===!1){let f=l.outputFiles;if(!f)return;let y={path:p,contents:it.Buffer.from(g),hash:"",text:g};if(f.findIndex(h=>h.path===p)!==-1)throw new Error(`CSSX CSS asset collision at "${p}".`);f.push(y);return}await(0,B.mkdir)((0,L.dirname)(p),{recursive:!0}),await(0,B.writeFile)(p,g),m=p})},getWorkingDirectory:()=>i}}function lt(e,s,t){let o=new Set;for(let r of s)e.moduleGraph?.invalidateModule(r,o,t,!0);for(let r of o){if(!r.id)continue;let n=e.runner?.evaluatedModules?.getModuleById(r.id);n&&e.runner?.evaluatedModules?.invalidateModule(n)}}function ct(e){return async function(t){let o=this.environment;if(!o||o.name==="client")return;let r=t.modules,n=r.filter(a=>{let l=e.get(S(a.id??""));return!!(l&&l.cssOnlySignature&&l.atomicClasses?.length===0)});if(n.length===0)return;let m=new Map(n.map(a=>[a,e.get(S(a.id)).cssOnlySignature]));for(let a of n)a.url&&await o.transformRequest(a.url);if(n.every(a=>{let l=e.get(S(a.id));return!!(l&&l.atomicClasses.length===0&&l.cssOnlySignature===m.get(a))}))return lt(o,n,t.timestamp),r.filter(a=>!n.includes(a))}}var Pt=/\.(?:[cm]?[jt]sx?|astro|vue|md|mdx)(?:\?.*)?$/,Rt=(e={},s)=>{if(U(e),e.classNameAllocator&&e.className)throw new Error("CSSX classNameAllocator owns naming. Omit className when supplying a custom allocator.");let t=e.cssFileName??"cssx.css",o=e.sourceMap??!0,r=new Map,n=e.classNameAllocator??(0,mt.createClassNameAllocator)(R(e)),m=new Map,i,a=()=>H(e),l=at({options:e,cssFileName:t,sourceMap:o,dataById:m,getTheme:a}),d=tt({framework:s.framework,options:e,cssFileName:t,sourceMap:o,rollupDataById:r,getTheme:a});return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Pt},handler:nt({framework:s.framework,options:e,classNameAllocator:n,rollupDataById:r,esbuildDataById:m,cssFileName:t,getEsbuildWorkingDirectory:l.getWorkingDirectory,notifyViteStyles:c=>{i&&ne(i,c)}})},watchChange(c,u){u.event==="delete"&&r.delete(S(c))},rollup:{generateBundle:d},vite:{generateBundle:d,configureServer(c){i=c,Ye(c,{cssFileName:t,sourceMap:o,options:e,rollupDataById:r,getTheme:a})},hotUpdate:{order:"pre",handler:ct(r)}},...s.framework==="webpack"?{webpack(c){ue({compiler:c,options:e,cssFileName:t,sourceMap:o,getTheme:a})}}:{},...s.framework==="rspack"?{rspack(c){ue({compiler:c,options:e,cssFileName:t,sourceMap:o,getTheme:a})}}:{},...s.framework==="esbuild"?{esbuild:{config:l.config,setup:l.setup}}:{}}},ie=(0,dt.createUnplugin)(Rt),ut=ie.vite,Po=ie.rollup,Ro=ie.webpack,Ao=ie.rspack;var At=ut,Et=At;
package/dist/vite.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _unplugin from 'unplugin';
2
- import { C as CssxPluginOptions } from './options-ByIyWTN0.cjs';
2
+ import { C as CssxPluginOptions } from './options-DkqShf7w.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-ByIyWTN0.js';
2
+ import { C as CssxPluginOptions } from './options-DkqShf7w.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/vite.js CHANGED
@@ -1 +1 @@
1
- import{e as t}from"./chunk-SKXNEQ2Z.js";var e=t,i=e;export{i as default};
1
+ import{c as t}from"./chunk-BPBCQNZV.js";import"./chunk-GGFXMP4P.js";import"./chunk-T2L6RO3O.js";var e=t,i=e;export{i as default};
package/dist/webpack.cjs CHANGED
@@ -1,12 +1,17 @@
1
- "use strict";var Ze=Object.create;var V=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var st=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty;var rt=(e,s)=>{for(var t in s)V(e,t,{get:s[t],enumerable:!0})},se=(e,s,t,r)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of tt(s))!ot.call(e,o)&&o!==t&&V(e,o,{get:()=>s[o],enumerable:!(r=et(s,o))||r.enumerable});return e};var nt=(e,s,t)=>(t=e!=null?Ze(st(e)):{},se(s||!e||!e.__esModule?V(t,"default",{value:e,enumerable:!0}):t,e)),it=e=>se(V({},"__esModule",{value:!0}),e);var gt={};rt(gt,{default:()=>ft});module.exports=it(gt);var Ke=require("@cssxio/compiler"),Qe=require("unplugin");function oe(e,s){let t=new Map,r=[];for(let o of s)o.id?t.set(o.id,o):r.push(o);for(let o of e)o.id?t.set(o.id,o):r.push(o);return[...t.values(),...r]}var A=require("path");function P(e){if(!e||(0,A.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let s=(0,A.normalize)(e);if(s===".."||s.startsWith(`..${A.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!s.endsWith(".css"))throw new Error("cssFileName must end in .css.");return s}function B(e){if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');P(e.cssFileName??"cssx.css")}var re=require("fs/promises"),ne=require("path");async function j(e){return e.themeFile===void 0?e.theme:(0,re.readFile)((0,ne.resolve)(process.cwd(),e.themeFile),"utf8")}function y(e){return e.split("?",1).join("")}function $(e){let s=2166136261;for(let t=0;t<e.length;t++)s^=e.charCodeAt(t),s=Math.imul(s,16777619);return(s>>>0).toString(36)}function b(e,s){return P(e).replaceAll("[hash]",$(s))}var M=require("path");function Y(e,s,t){return s.outdir?(0,M.resolve)(e,s.outdir,t):s.outfile?(0,M.resolve)((0,M.dirname)((0,M.resolve)(e,s.outfile)),t):(0,M.resolve)(e,t)}var ie=require("path");function T(e,s){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${P(s).replaceAll(ie.sep,"/")}`}function ae(e,s){let t=e.buildInfo?.[s];if(!t||typeof t!="object")return;let{id:r,candidates:o,composites:n,atomicClasses:d,origins:i}=t;return{id:typeof r=="string"?r:"",candidates:o&&typeof o=="object"?o:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(d)?{atomicClasses:d}:{},origins:i&&typeof i=="object"?i:{}}}var H=require("@cssxio/compiler");function Z(e,s){let t=s.split(`
2
- `);return{line:e.line+t.length-1,column:t.at(-1).length+e.column*+(t.length===1)}}var at="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function L(e){let s="",t=e<0?-e<<1|1:e<<1;do{let r=t&31;t>>>=5,t&&(r|=32),s+=at[r]}while(t);return s}function le(e){let s=Array.from({length:Math.max(0,...e.map(i=>i.line))+1},()=>[]),t=0,r=0,o=0,n=0,d=0;for(let i of e)d*=+(i.line===n),n=i.line,s[i.line]?.push(`${L(i.column-d)}${L(i.source-t)}${L(i.originalLine-r)}${L(i.originalColumn-o)}`),d=i.column,t=i.source,r=i.originalLine,o=i.originalColumn;return s.map(i=>i.join(",")).join(";")}function ce(e,s,t){let r=[...new Set(s.map(i=>t.get(i.candidate)?.id).filter(i=>!!i))].sort();if(r.length===0)return;let o=new Map(r.map((i,a)=>[i,a])),n=[],d=Z({line:0,column:0},e);for(let i of s){let a=t.get(i.candidate);a&&n.push({...d,source:o.get(a.id),originalLine:a.line,originalColumn:a.column}),d=Z(d,i.css)}return{version:3,sources:r,names:[],mappings:le(n)}}var de='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-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 h(e,s,t,r=!0,o,n=!0){let d=Object.create(null),i=Object.create(null),a=new Set,m=!0,p=new Map;for(let C of[...e].sort((x,R)=>x.id.localeCompare(R.id))){for(let[x,R]of Object.entries(C.candidates))if(x in d||(d[x]=R),C.id&&!p.has(x)){let D=C.origins?.[x];p.set(x,{id:C.id,line:D?.line??0,column:D?.column??0})}for(let[x,R]of Object.entries(C.composites??{})){let D=i[x];if(D&&D.join(" ")!==R.join(" "))throw new Error(`CSSX composite class collision for "${x}".`);i[x]=R}C.atomicClasses===void 0&&(m=!1);for(let x of C.atomicClasses??[])a.add(x)}let l=Object.keys(d).sort(),u=n?de:"";if(l.length===0)return{css:u&&t?`@layer ${t}{${u}}`:u};let c=await(0,H.compileUtilities)(l,C=>d[C],s,(0,H.createSelectorAliases)(i),m?a:void 0,{darkMode:o}),f=t?`@layer ${t}{`:"",g=`${f}${u}${c.css}${f?"}":""}`,N=r?ce(`${f}${u}${c.prefixCss}`,c.entries,p):void 0;return{css:g,...N?{map:N}:{}}}function v(e,s){return JSON.stringify({...e,file:s})}var me=require("path");function S(e,s){return e.map?`${e.css}
3
- /*# sourceMappingURL=${(0,me.basename)(s)}.map */`:e.css}function ue(e,s,t,r,o,n,d,i,a=!0,m){let p=e.name??e.options?.name;p==="server"||p==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",l=>{l.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let u=m?await m():oe([...l.modules].map(g=>ae(g,n)).filter(g=>g!==void 0),d?.values()??[]),c=await h(u,await t(),r,o,i,a);if(!c.css)return;let f=b(s,c.css);if(l.getAsset?.(f))throw new Error(`CSSX CSS asset collision at "${f}".`);if(l.emitAsset(f,new e.webpack.sources.RawSource(S(c,f))),c.map){let g=`${f}.map`;if(l.getAsset?.(g))throw new Error(`CSSX CSS map asset collision at "${g}".`);l.emitAsset(g,new e.webpack.sources.RawSource(v(c.map,f)))}})})}var w="@cssxio/unplugin/rules";function U(){return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}}var ge=require("@cssxio/compiler");function pe(e,s){return`${e}\0${JSON.stringify(s)}`}var fe=new Map;function _(e,s){let t=pe(e,s),r=fe.get(t);return r||(r={classNameAllocator:(0,ge.createClassNameAllocator)(),transformedDataById:new Map},fe.set(t,r)),r}var De=require("@cssxio/compiler"),Be=require("fs/promises"),J=require("path");var ye=require("fs/promises"),xe=require("path"),lt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro"]),ct=new Set([".git",".next",".turbo","node_modules"]);async function Ce(e){let s=[],t=[e];for(;t.length>0;){let r=t.pop();for(let o of await(0,ye.readdir)(r,{withFileTypes:!0})){let n=(0,xe.join)(r,o.name);if(o.isDirectory()){ct.has(o.name)||t.push(n);continue}o.isFile()&&lt.has(n.slice(n.lastIndexOf(".")))&&s.push(n)}}return s.sort()}var he=require("@cssxio/compiler");function W(e){let s=[],t=/\bsx\s*\(/g;for(let r of e.matchAll(t)){let o=r.index,n=e.indexOf("(",o),d=0,i="";for(let a=n;a<e.length;a+=1){let m=e[a];if(i){m==="\\"?a+=1:m===i&&(i="");continue}if(m==='"'||m==="'"||m==="`")i=m;else if(m==="(")d+=1;else if(m===")"&&--d===0){s.push({start:o,end:a+1,code:e.slice(o,a+1)}),t.lastIndex=a+1;break}}}return s}function I(e,s){return{code:e,rules:s.flatMap(t=>t.rules),candidates:Object.assign({},...s.map(t=>t.candidates)),composites:Object.assign({},...s.map(t=>t.composites)),atomicClasses:[...new Set(s.flatMap(t=>t.atomicClasses))],origins:Object.assign({},...s.map(t=>t.origins)),cssOnlySignature:e}}function z(e){let s="const style = ",t=e.indexOf(s)+s.length,r=e.indexOf(";",t);return e.slice(t,r)}async function Se(e,s,t,r){let o=W(e);if(o.length===0)return null;let n=t.classNameAllocator??(0,he.createClassNameAllocator)(),d=t.importSource??"@cssxio/cssx",i=[],a=e;for(let m of[...o].reverse()){let p=await r(`import { sx } from ${JSON.stringify(d)};
4
- const style = ${m.code};`,`${s}.ts`,{...t,classNameAllocator:n}),l=z(p.code);a=`${a.slice(0,m.start)}${l}${a.slice(m.end)}`,i.push({...p,atomicClasses:[],origins:{}})}return I(a,i)}var ve=require("@babel/core"),we=nt(require("@cssxio/babel-plugin"),1),X=require("@cssxio/compiler");function be(e){return{className:`cssx-${$(e)}`,css:e}}function Me(e,s){return e&&s?`@layer ${s}{${e}}`:e}async function Oe(e,s,t,r){let o=t.importSource??"@cssxio/cssx",n=await j(t),d=await(0,ve.transformAsync)(e,{babelrc:!1,configFile:!1,filename:s,parserOpts:{plugins:["jsx","typescript"]},plugins:[[we.default,{importSource:o,classNameAllocator:t.classNameAllocator,theme:n,reusabilityBudget:t.reusabilityBudget,stableClassNames:t.stableClassNames,stableClassNameFileName:t.stableClassNameFileName,darkMode:t.darkMode}]],sourceMaps:!0,...r?{inputSourceMap:r}:{}}),i=d.metadata,{candidates:a,origins:m,composites:p,atomicClasses:l,cssOnlySignature:u}=i.cssx,c=Object.keys(a),f=c.length===0?"":(await(0,X.compileUtilities)(c,g=>a[g],n,(0,X.createSelectorAliases)(p),new Set(l),{darkMode:t.darkMode})).css;return{code:d.code,rules:f?[be(Me(f,t.layer))]:[],candidates:a,composites:p,atomicClasses:l,origins:m,cssOnlySignature:u,map:d.map}}var Te=require("@cssxio/compiler"),Ie=require("@vue/compiler-sfc");function G(e,s){let t=e.split(`
5
- `).slice(0,s.line).reduce((r,o)=>r+o.length+1,0);return Math.min(e.length,t+s.column)}function q(e,s){let t=Math.min(e.length,s),r=e.slice(0,t).split(`
6
- `).length-1,o=e.lastIndexOf(`
7
- `,t-1)+1;return{line:r,column:t-o}}function ee(e,s,t){let r={},o=e.slice(s);for(let[n,d]of Object.entries(t))r[n]=q(e,s+G(o,d));return r}function ke(e){return e.slice(1,-1).replace(/\\(['"\\bnfrtv])/g,(s,t)=>({b:"\b",n:`
8
- `,f:"\f",r:"\r",t:" ",v:"\v"})[t]??t)}function Ne(e,s){if(!s)return e;let t=s==='"'?"'":'"';return e.replace(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g,r=>{let o=r[0]==='"'?JSON.parse(r):ke(r),n=JSON.stringify(o);return t==='"'?n:`'${n.slice(1,-1).replaceAll("'","\\'")}'`})}function Re(e,s,t,r,o){let n={};for(let[d,i]of Object.entries(o)){let a=G(t,i);n[d]=q(e,s+Math.max(0,a-r))}return n}function Ae(e,s){let t=-1,r;for(let o=0;o<s;o++){let n=e[o];if(r){n===r&&(r=void 0);continue}if(n==="<"&&/[A-Za-z]/.test(e[o+1])){t=o;continue}t!==-1&&(n===">"?t=-1:(n==='"'||n==="'")&&(r=n))}return r}async function Pe(e,s,t,r,o){let n=W(e);if(n.length===0)return null;let d=t.importSource??"@cssxio/cssx",i=[],a=e;for(let m of[...n].reverse()){let p=`import { sx } from ${JSON.stringify(d)};
9
- const style = `,l=`${p}${m.code};`,u=await o(l,`${s}.cssx-vue-template.ts`,{...t,classNameAllocator:r}),c=Ne(z(u.code),Ae(e,m.start));a=`${a.slice(0,m.start)}${c}${a.slice(m.end)}`,i.push({...u,origins:Re(e,m.start,l,p.length,u.origins)})}return I(a,i)}async function Ee(e,s,t,r){let o=s.split("?",1).join(""),n=(0,Ie.parse)(e,{filename:o});if(n.errors.length>0)throw new Error(n.errors[0].message);let d=t.classNameAllocator??(0,Te.createClassNameAllocator)(),i=[],a=[];for(let l of[n.descriptor.script,n.descriptor.scriptSetup]){if(!l?.content.includes(t.importSource??"@cssxio/cssx"))continue;let u=l.lang==="js"||l.lang==="jsx"||l.lang==="tsx"?l.lang:"ts",c=await r(l.content,`${o}.cssx-vue-script.${u}`,{...t,classNameAllocator:d});i.push({start:l.loc.start.offset,end:l.loc.end.offset,code:c.code}),a.push({...c,origins:ee(e,l.loc.start.offset,c.origins)})}let m=n.descriptor.template;if(m?.content.includes("sx")){let l=await Pe(m.content,o,t,d,r);l&&(i.push({start:m.loc.start.offset,end:m.loc.end.offset,code:l.code}),a.push({...l,origins:ee(e,m.loc.start.offset,l.origins)}))}if(i.length===0)return null;let p=e;for(let l of i.sort((u,c)=>c.start-u.start))p=`${p.slice(0,l.start)}${l.code}${p.slice(l.end)}`;return I(p,a)}var dt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".vue"]);async function O(e,s,t={},r){B(t);let o=t.importSource??"@cssxio/cssx",n=s.split("?",1).join("");return!dt.has(n.slice(n.lastIndexOf(".")))||!e.includes(o)?null:n.endsWith(".astro")?Se(e,s,t,O):n.endsWith(".vue")?Ee(e,s,t,O):Oe(e,n,t,r)}function Fe(e,s){if(!e||typeof e!="object")return;let t=e.getCombinedSourcemap;if(typeof t!="function")return;let r=t.call(e);if(!r||typeof r!="object")return;let o=r;if(!(o.version!==3||!Array.isArray(o.sources)||typeof o.mappings!="string"))return{version:o.version,sources:[...o.sources],names:[...o.names??[]],mappings:o.mappings,file:o.file??s.split("?",1).join(""),...o.sourceRoot?{sourceRoot:o.sourceRoot}:{},...o.sourcesContent?{sourcesContent:[...o.sourcesContent]}:{}}}async function je(e,s){let t=await Ce(e),r=(0,De.createClassNameAllocator)(s.className),o=[];for(let n of t){let d=await(0,Be.readFile)(n,"utf8"),i=await O(d,n,{...s,classNameAllocator:r,stableClassNames:!0,stableClassNameFileName:(0,J.relative)(e,n).replaceAll(J.sep,"/")});i&&o.push({id:n,candidates:i.candidates,composites:i.composites,atomicClasses:i.atomicClasses,origins:i.origins})}return o}function te({compiler:e,options:s,cssFileName:t,sourceMap:r,getTheme:o}){let n=_(e.context,s);ue(e,t,o,s.layer,r,w,n.transformedDataById,s.darkMode,s.preflight,s.stableClassNames?()=>je(e.context,s):void 0)}function K(e,s,t=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:s,acceptedPath:s,timestamp:t}]})}function $e(e,s){let{cssFileName:t,sourceMap:r,options:o,rollupDataById:n,getTheme:d}=s,i=T(e.config.base,t),a=T("/",t);e.watcher?.on("unlink",m=>{n.delete(y(m)),K(e,a)}),e.middlewares.use((m,p,l)=>{let u=m.url?.split("?",1)[0];if(u!==i&&(u!==`${i}.map`||!r))return l();d().then(c=>h([...n.values()],c,o.layer,r,o.darkMode,o.preflight)).then(c=>{if(u===`${i}.map`){p.setHeader("Content-Type","application/json; charset=utf-8"),p.setHeader("Cache-Control","no-store"),p.end(c.map?v(c.map,t):"");return}p.setHeader("Content-Type","text/css; charset=utf-8"),p.setHeader("Cache-Control","no-store"),p.end(S(c,t))}).catch(c=>{p.setHeader("Content-Type","text/plain; charset=utf-8"),p.end(c instanceof Error?c.message:"Unable to compile CSSX development stylesheet.")})})}function Le(e){if(!e||typeof e!="object")return U();let{id:s,rules:t,candidates:r,composites:o,atomicClasses:n,origins:d,cssOnlySignature:i}=e;return{id:typeof s=="string"?s:"",rules:Array.isArray(t)?t:[],candidates:r&&typeof r=="object"?r:{},composites:o&&typeof o=="object"?o:{},...Array.isArray(n)?{atomicClasses:n}:{},origins:d&&typeof d=="object"?d:{},cssOnlySignature:typeof i=="string"?i:""}}function Ve(e){return!e||typeof e!="object"?U():Le(e[w])}function He(e){return async function(s,t){let{framework:r,options:o,cssFileName:n,sourceMap:d,rollupDataById:i,getTheme:a}=e,m=new Set(Object.values(t).flatMap(c=>c.type==="chunk"?Object.keys(c.modules??{}):[]).map(y));if(r!=="vite")for(let c of i.keys())m.has(c)||i.delete(c);let p=r==="vite"?[...i.values()]:[...m].map(c=>{let f=Ve(this.getModuleInfo(c)?.meta);return Object.keys(f.candidates).length>0?f:i.get(c)??f}),l=await h(p,await a(),o.layer,d,o.darkMode,o.preflight);if(!l.css)return;let u=b(n,l.css);if(Object.hasOwn(t,u))throw new Error(`CSSX CSS asset collision at "${u}".`);if(this.emitFile({type:"asset",fileName:u,source:S(l,u)}),l.map){let c=`${u}.map`;if(Object.hasOwn(t,c))throw new Error(`CSSX CSS map asset collision at "${c}".`);this.emitFile({type:"asset",fileName:c,source:v(l.map,u)})}}}var k=require("path");function Ue(e){let s=e.getNativeBuildContext?.();return s&&(s.framework==="webpack"||s.framework==="rspack")?s.loaderContext?.rootContext??process.cwd():void 0}function _e(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
1
+ "use strict";var pt=Object.create;var W=Object.defineProperty;var ft=Object.getOwnPropertyDescriptor;var gt=Object.getOwnPropertyNames;var yt=Object.getPrototypeOf,xt=Object.prototype.hasOwnProperty;var Ct=(e,s)=>{for(var t in s)W(e,t,{get:s[t],enumerable:!0})},pe=(e,s,t,o)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of gt(s))!xt.call(e,r)&&r!==t&&W(e,r,{get:()=>s[r],enumerable:!(o=ft(s,r))||o.enumerable});return e};var ht=(e,s,t)=>(t=e!=null?pt(yt(e)):{},pe(s||!e||!e.__esModule?W(t,"default",{value:e,enumerable:!0}):t,e)),St=e=>pe(W({},"__esModule",{value:!0}),e);var Tt={};Ct(Tt,{default:()=>Et});module.exports=St(Tt);var mt=require("@cssxio/compiler"),dt=require("unplugin");var z=require("fs/promises"),q=require("path");function fe(e,s,t){let o=t.naming??(t.stableClassNames?"source":t.className?.variant==="random"?"hash":t.className?.variant??"serial"),r=t.stableClassNames?"stableClassNames compatibility option selects source-addressed composites":t.naming?"explicit naming option":t.className?.variant?"className.variant option":"default serial naming",n=new Map,m=new Map;for(let l of[...e].sort((d,c)=>d.id.localeCompare(c.id))){let d=new Map;for(let[c,u]of Object.entries(l.candidates)){let p=m.get(c)??new Set;p.add(u),m.set(c,p);let g=n.get(u)??{module:l.id,utilities:new Set,line:l.origins?.[c]?.line??0,column:l.origins?.[c]?.column??0};g.utilities.add(c),n.set(u,g);let f=d.get(u)??[];f.push(c),d.set(u,f)}for(let[c,u]of Object.entries(l.composites??{})){let p=u.flatMap(y=>d.get(y)??[]),g=p[0],f=n.get(c)??{module:l.id,utilities:new Set,line:g?l.origins?.[g]?.line??0:0,column:g?l.origins?.[g]?.column??0:0};for(let y of p)f.utilities.add(y);n.set(c,f)}for(let c of l.atomicClasses??[])n.has(c)||n.set(c,{module:l.id,utilities:new Set,line:0,column:0})}let i=[...n].sort(([l],[d])=>l.localeCompare(d)).map(([l,d])=>({className:l,module:d.module,utilities:[...d.utilities].sort(),line:d.line+1,column:d.column+1,selectorFound:new RegExp(`\\.${wt(l)}(?:[^A-Za-z0-9_-]|$)`).test(s)})),a=[...m].filter(([,l])=>l.size>1).map(([l])=>l).sort();return{version:1,naming:{mode:o,reason:r},coordination:{mode:t.coordination??"memory",...t.coordination==="manifest"&&t.manifestPath?{manifestPath:t.manifestPath}:{}},classes:i,serverClientMappings:{status:a.length>0?"mismatch":t.coordination==="manifest"?"manifest-shared":"consistent-in-process",conflicts:a}}}function wt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ge(e,s){let t=new Map,o=[];for(let r of s)r.id?t.set(r.id,r):o.push(r);for(let r of e)r.id?t.set(r.id,r):o.push(r);return[...t.values(),...o]}var F=require("path");function D(e){if(!e||(0,F.isAbsolute)(e))throw new Error("cssFileName must be a non-empty relative path.");let s=(0,F.normalize)(e);if(s===".."||s.startsWith(`..${F.sep}`))throw new Error("cssFileName must not escape the bundler output directory.");if(!s.endsWith(".css"))throw new Error("cssFileName must end in .css.");return s}function U(e){if(e.sourceRoots&&e.sourceRoots.some(t=>typeof t!="string"||!t.trim()))throw new Error("CSSX sourceRoots must contain non-empty file-system paths.");let s=e.debug;if(s===null||s!==void 0&&typeof s!="boolean"&&(typeof s!="object"||typeof s.reportFile!="string"||!s.reportFile))throw new Error("CSSX debug must be a boolean or an object with a reportFile path.");if(e.naming!==void 0&&!["serial","hash","source"].includes(e.naming))throw new Error('CSSX naming must be "serial", "hash", or "source".');if(e.coordination!==void 0&&!["memory","manifest"].includes(e.coordination))throw new Error('CSSX coordination must be "memory" or "manifest".');if(e.stableClassNames&&e.naming&&e.naming!=="source")throw new Error('CSSX stableClassNames selects source naming and conflicts with naming. Use naming: "source".');if(e.stableClassNames&&e.coordination==="manifest")throw new Error("CSSX stableClassNames already selects source naming; remove it to use manifest coordination.");if(e.naming==="hash"&&e.className?.variant==="serial")throw new Error('CSSX naming: "hash" conflicts with className.variant: "serial".');if(e.naming==="serial"&&e.className?.variant==="random")throw new Error('CSSX naming: "serial" conflicts with className.variant: "random".');if(e.coordination==="manifest"&&!e.manifestPath)throw new Error('CSSX coordination: "manifest" requires manifestPath.');if(e.manifestPath&&e.coordination!=="manifest")throw new Error('CSSX manifestPath requires coordination: "manifest".');if(e.coordination==="manifest"&&e.classNameAllocator)throw new Error("CSSX manifest coordination cannot use a custom classNameAllocator.");if(e.theme!==void 0&&e.themeFile!==void 0)throw new Error("CSSX accepts either theme or themeFile, not both.");if(e.layer!==void 0&&!/^[A-Za-z_-][A-Za-z0-9_-]*$/.test(e.layer))throw new Error("CSSX layer must be a valid CSS layer identifier.");if(e.sourceMap!==void 0&&typeof e.sourceMap!="boolean")throw new Error("CSSX sourceMap must be a boolean.");if(e.darkMode!==void 0&&e.darkMode!=="media"&&e.darkMode!=="selector"&&e.darkMode!=="class")throw new Error('CSSX darkMode must be "media", "selector", or "class".');if(e.preflight!==void 0&&typeof e.preflight!="boolean")throw new Error("CSSX preflight must be a boolean.");if(e.reusabilityBudget!==void 0&&e.reusabilityBudget!=="auto"&&(!Number.isFinite(e.reusabilityBudget)||e.reusabilityBudget<0||e.reusabilityBudget>100))throw new Error('CSSX reusabilityBudget must be "auto" or a number from 0 through 100.');D(e.cssFileName??"cssx.css")}var ye=require("fs/promises"),xe=require("path");async function H(e){return e.themeFile===void 0?e.theme:(0,ye.readFile)((0,xe.resolve)(process.cwd(),e.themeFile),"utf8")}function S(e){return e.split("?",1).join("")}function X(e){let s=2166136261;for(let t=0;t<e.length;t++)s^=e.charCodeAt(t),s=Math.imul(s,16777619);return(s>>>0).toString(36)}function k(e,s){return D(e).replaceAll("[hash]",X(s))}var P=require("path");function ae(e,s,t){return s.outdir?(0,P.resolve)(e,s.outdir,t):s.outfile?(0,P.resolve)((0,P.dirname)((0,P.resolve)(e,s.outfile)),t):(0,P.resolve)(e,t)}var Ce=require("path");function $(e,s){return`${e&&e!=="/"?`/${e.replace(/^\/+|\/+$/g,"")}`:""}/${D(s).replaceAll(Ce.sep,"/")}`}function R(e){let s=e.naming==="hash"?"random":e.naming==="serial"?"serial":void 0;if(s&&e.className?.variant&&e.className.variant!==s)throw new Error(`CSSX naming: "${e.naming}" conflicts with className.variant: "${e.className.variant}".`);return{...e.className,...s?{variant:s}:{}}}function he(e,s){let t=e.buildInfo?.[s];if(!t||typeof t!="object")return;let{id:o,candidates:r,composites:n,atomicClasses:m,origins:i}=t;return{id:typeof o=="string"?o:"",candidates:r&&typeof r=="object"?r:{},composites:n&&typeof n=="object"?n:{},...Array.isArray(m)?{atomicClasses:m}:{},origins:i&&typeof i=="object"?i:{}}}var J=require("@cssxio/compiler");function le(e,s){let t=s.split(`
2
+ `);return{line:e.line+t.length-1,column:t.at(-1).length+e.column*+(t.length===1)}}var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function _(e){let s="",t=e<0?-e<<1|1:e<<1;do{let o=t&31;t>>>=5,t&&(o|=32),s+=bt[o]}while(t);return s}function Se(e){let s=Array.from({length:Math.max(0,...e.map(i=>i.line))+1},()=>[]),t=0,o=0,r=0,n=0,m=0;for(let i of e)m*=+(i.line===n),n=i.line,s[i.line]?.push(`${_(i.column-m)}${_(i.source-t)}${_(i.originalLine-o)}${_(i.originalColumn-r)}`),m=i.column,t=i.source,o=i.originalLine,r=i.originalColumn;return s.map(i=>i.join(",")).join(";")}function we(e,s,t){let o=[...new Set(s.map(i=>t.get(i.candidate)?.id).filter(i=>!!i))].sort();if(o.length===0)return;let r=new Map(o.map((i,a)=>[i,a])),n=[],m=le({line:0,column:0},e);for(let i of s){let a=t.get(i.candidate);a&&n.push({...m,source:r.get(a.id),originalLine:a.line,originalColumn:a.column}),m=le(m,i.css)}return{version:3,sources:o,names:[],mappings:Se(n)}}var be='*,::before,::after,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-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 w(e,s,t,o=!0,r,n=!0){let m=Object.create(null),i=Object.create(null),a=new Set,l=!0,d=new Map;for(let x of[...e].sort((h,v)=>h.id.localeCompare(v.id))){for(let[h,v]of Object.entries(x.candidates))if(h in m||(m[h]=v),x.id&&!d.has(h)){let V=x.origins?.[h];d.set(h,{id:x.id,line:V?.line??0,column:V?.column??0})}for(let[h,v]of Object.entries(x.composites??{})){let V=i[h];if(V&&V.join(" ")!==v.join(" "))throw new Error(`CSSX composite class collision for "${h}".`);i[h]=v}x.atomicClasses===void 0&&(l=!1);for(let h of x.atomicClasses??[])a.add(h)}let c=Object.keys(m).sort(),u=n?be:"";if(c.length===0)return{css:u&&t?`@layer ${t}{${u}}`:u};let p=await(0,J.compileUtilities)(c,x=>m[x],s,(0,J.createSelectorAliases)(i),l?a:void 0,{darkMode:r}),g=t?`@layer ${t}{`:"",f=`${g}${u}${p.css}${g?"}":""}`,y=o?we(`${g}${u}${p.prefixCss}`,p.entries,d):void 0;return{css:f,...y?{map:y}:{}}}function A(e,s){return JSON.stringify({...e,file:s})}var ve=require("path");function b(e,s){return e.map?`${e.css}
3
+ /*# sourceMappingURL=${(0,ve.basename)(s)}.map */`:e.css}function Ne(e,s,t,o,r,n,m,i,a=!0,l,d){let c=e.name??e.options?.name;c==="server"||c==="edge-server"||e.hooks.thisCompilation.tap("@cssxio/unplugin",u=>{u.hooks.processAssets.tapPromise({name:"@cssxio/unplugin",stage:e.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},async()=>{let p=l?await l():ge([...u.modules].map(y=>he(y,n)).filter(y=>y!==void 0),m?.values()??[]),g=await w(p,await t(),o,r,i,a);if(d?.debug){let y=fe(p,g.css,d);if(d.debug===!0)console.info(`CSSX: ${y.naming.mode} naming; ${y.classes.filter(x=>x.selectorFound).length}/${y.classes.length} generated classes have selectors; compiler mappings ${y.serverClientMappings.status}${y.serverClientMappings.conflicts.length?` (${y.serverClientMappings.conflicts.length} utility conflicts)`:""}.`);else{let x=(0,q.resolve)(e.context,d.debug.reportFile);await(0,z.mkdir)((0,q.dirname)(x),{recursive:!0}),await(0,z.writeFile)(x,`${JSON.stringify(y,null,2)}
4
+ `,"utf8")}}if(!g.css)return;let f=k(s,g.css);if(u.getAsset?.(f))throw new Error(`CSSX CSS asset collision at "${f}".`);if(u.emitAsset(f,new e.webpack.sources.RawSource(b(g,f))),g.map){let y=`${f}.map`;if(u.getAsset?.(y))throw new Error(`CSSX CSS map asset collision at "${y}".`);u.emitAsset(y,new e.webpack.sources.RawSource(A(g.map,f)))}})})}var E="@cssxio/unplugin/rules";function G(){return{id:"",rules:[],candidates:{},composites:{},origins:{},cssOnlySignature:""}}var ke=require("@cssxio/compiler");function Me(e,s){return`${e}\0${JSON.stringify(s)}`}var Oe=new Map;function K(e,s){let t=Me(e,s),o=Oe.get(t);return o||(o={classNameAllocator:s.classNameAllocator??(0,ke.createClassNameAllocator)(R(s)),transformedDataById:new Map},Oe.set(t,o)),o}var Ke=require("@cssxio/compiler"),Qe=require("fs/promises"),j=require("path");var Pe=require("fs/promises"),Q=require("path"),vt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".mdx",".md"]),Nt=new Set([".git",".next",".turbo","node_modules"]);async function Re(e,s=[]){let t=[],o=[e,...s],r=new Set;for(;o.length>0;){let n=o.pop(),m=(0,Q.resolve)(n);if(!r.has(m)){r.add(m);for(let i of await(0,Pe.readdir)(n,{withFileTypes:!0})){let a=(0,Q.join)(n,i.name);if(i.isDirectory()){Nt.has(i.name)||o.push(a);continue}i.isFile()&&vt.has(a.slice(a.lastIndexOf(".")))&&t.push(a)}}}return t.sort()}var Ae=require("module"),Ee=require("path"),ce=require("url");async function Te(e,s,t={}){let o=(0,Ae.createRequire)((0,Ee.resolve)(s,"package.json")),r;try{r=o.resolve("@mdx-js/mdx")}catch{throw new Error("CSSX Next MDX support requires @mdx-js/mdx to be installed in the Next.js project.")}let n=await import((0,ce.pathToFileURL)(r).href),m=async i=>Promise.all((i??[]).map(async a=>{let[l,d]=typeof a=="string"?[a,void 0]:a,c=o.resolve(l),u=await import((0,ce.pathToFileURL)(c).href),p=u.default??u;return d===void 0?p:[p,d]}));return String(await n.compile(e,{outputFormat:"program",development:t.development??!1,remarkPlugins:await m(t.remarkPlugins),rehypePlugins:await m(t.rehypePlugins),recmaPlugins:await m(t.recmaPlugins)}))}var Fe=require("@cssxio/compiler");function Y(e){let s=[],t=/\bsx\s*\(/g;for(let o of e.matchAll(t)){let r=o.index,n=e.indexOf("(",r),m=0,i="";for(let a=n;a<e.length;a+=1){let l=e[a];if(i){l==="\\"?a+=1:l===i&&(i="");continue}if(l==='"'||l==="'"||l==="`")i=l;else if(l==="(")m+=1;else if(l===")"&&--m===0){s.push({start:r,end:a+1,code:e.slice(r,a+1)}),t.lastIndex=a+1;break}}}return s}function I(e,s){return{code:e,rules:s.flatMap(t=>t.rules),candidates:Object.assign({},...s.map(t=>t.candidates)),composites:Object.assign({},...s.map(t=>t.composites)),atomicClasses:[...new Set(s.flatMap(t=>t.atomicClasses))],origins:Object.assign({},...s.map(t=>t.origins)),cssOnlySignature:e}}function Z(e){let s="const style = ",t=e.indexOf(s)+s.length,o=e.indexOf(";",t);return e.slice(t,o)}async function De(e,s,t,o){let r=Y(e);if(r.length===0)return null;let n=t.classNameAllocator??(0,Fe.createClassNameAllocator)(),m=t.importSource??"@cssxio/cssx",i=[],a=e;for(let l of[...r].reverse()){let d=await o(`import { sx } from ${JSON.stringify(m)};
5
+ const style = ${l.code};`,`${s}.ts`,{...t,classNameAllocator:n}),c=Z(d.code);a=`${a.slice(0,l.start)}${c}${a.slice(l.end)}`,i.push({...d,atomicClasses:[],origins:{}})}return I(a,i)}var je=require("@babel/core"),Be=ht(require("@cssxio/babel-plugin"),1),ee=require("@cssxio/compiler");function $e(e){return{className:`cssx-${X(e)}`,css:e}}function Ie(e,s){return e&&s?`@layer ${s}{${e}}`:e}async function Le(e,s,t,o){let r=t.importSource??"@cssxio/cssx",n=await H(t),m=await(0,je.transformAsync)(e,{babelrc:!1,configFile:!1,filename:s,parserOpts:{plugins:["jsx","typescript"]},plugins:[[Be.default,{importSource:r,classNameAllocator:t.classNameAllocator,theme:n,reusabilityBudget:t.reusabilityBudget,stableClassNames:t.stableClassNames,stableClassNameFileName:t.stableClassNameFileName,darkMode:t.darkMode}]],sourceMaps:!0,...o?{inputSourceMap:o}:{}}),i=m.metadata,{candidates:a,origins:l,composites:d,atomicClasses:c,cssOnlySignature:u}=i.cssx,p=Object.keys(a),g=p.length===0?"":(await(0,ee.compileUtilities)(p,f=>a[f],n,(0,ee.createSelectorAliases)(d),new Set(c),{darkMode:t.darkMode})).css;return{code:m.code,rules:g?[$e(Ie(g,t.layer))]:[],candidates:a,composites:d,atomicClasses:c,origins:l,cssOnlySignature:u,map:m.map}}var We=require("@cssxio/compiler"),Je=require("@vue/compiler-sfc");function te(e,s){let t=e.split(`
6
+ `).slice(0,s.line).reduce((o,r)=>o+r.length+1,0);return Math.min(e.length,t+s.column)}function se(e,s){let t=Math.min(e.length,s),o=e.slice(0,t).split(`
7
+ `).length-1,r=e.lastIndexOf(`
8
+ `,t-1)+1;return{line:o,column:t-r}}function me(e,s,t){let o={},r=e.slice(s);for(let[n,m]of Object.entries(t))o[n]=se(e,s+te(r,m));return o}function Ve(e){return e.slice(1,-1).replace(/\\(['"\\bnfrtv])/g,(s,t)=>({b:"\b",n:`
9
+ `,f:"\f",r:"\r",t:" ",v:"\v"})[t]??t)}function Ue(e,s){if(!s)return e;let t=s==='"'?"'":'"';return e.replace(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g,o=>{let r=o[0]==='"'?JSON.parse(o):Ve(o),n=JSON.stringify(r);return t==='"'?n:`'${n.slice(1,-1).replaceAll("'","\\'")}'`})}function He(e,s,t,o,r){let n={};for(let[m,i]of Object.entries(r)){let a=te(t,i);n[m]=se(e,s+Math.max(0,a-o))}return n}function Xe(e,s){let t=-1,o;for(let r=0;r<s;r++){let n=e[r];if(o){n===o&&(o=void 0);continue}if(n==="<"&&/[A-Za-z]/.test(e[r+1])){t=r;continue}t!==-1&&(n===">"?t=-1:(n==='"'||n==="'")&&(o=n))}return o}async function _e(e,s,t,o,r){let n=Y(e);if(n.length===0)return null;let m=t.importSource??"@cssxio/cssx",i=[],a=e;for(let l of[...n].reverse()){let d=`import { sx } from ${JSON.stringify(m)};
10
+ const style = `,c=`${d}${l.code};`,u=await r(c,`${s}.cssx-vue-template.ts`,{...t,classNameAllocator:o}),p=Ue(Z(u.code),Xe(e,l.start));a=`${a.slice(0,l.start)}${p}${a.slice(l.end)}`,i.push({...u,origins:He(e,l.start,c,d.length,u.origins)})}return I(a,i)}async function ze(e,s,t,o){let r=s.split("?",1).join(""),n=(0,Je.parse)(e,{filename:r});if(n.errors.length>0)throw new Error(n.errors[0].message);let m=t.classNameAllocator??(0,We.createClassNameAllocator)(),i=[],a=[];for(let c of[n.descriptor.script,n.descriptor.scriptSetup]){if(!c?.content.includes(t.importSource??"@cssxio/cssx"))continue;let u=c.lang==="js"||c.lang==="jsx"||c.lang==="tsx"?c.lang:"ts",p=await o(c.content,`${r}.cssx-vue-script.${u}`,{...t,classNameAllocator:m});i.push({start:c.loc.start.offset,end:c.loc.end.offset,code:p.code}),a.push({...p,origins:me(e,c.loc.start.offset,p.origins)})}let l=n.descriptor.template;if(l?.content.includes("sx")){let c=await _e(l.content,r,t,m,o);c&&(i.push({start:l.loc.start.offset,end:l.loc.end.offset,code:c.code}),a.push({...c,origins:me(e,l.loc.start.offset,c.origins)}))}if(i.length===0)return null;let d=e;for(let c of i.sort((u,p)=>p.start-u.start))d=`${d.slice(0,c.start)}${c.code}${d.slice(c.end)}`;return I(d,a)}var Mt=new Set([".js",".jsx",".ts",".tsx",".cjs",".cjsx",".cts",".ctsx",".mjs",".mjsx",".mts",".mtsx",".astro",".vue"]);async function N(e,s,t={},o){U(t);let r=t.importSource??"@cssxio/cssx",n=s.split("?",1).join("");return!Mt.has(n.slice(n.lastIndexOf(".")))||!e.includes(r)?null:n.endsWith(".astro")?De(e,s,t,N):n.endsWith(".vue")?ze(e,s,t,N):Le(e,n,t,o)}function de(e,s){if(!e||typeof e!="object")return;let t=e.getCombinedSourcemap;if(typeof t!="function")return;let o=t.call(e);if(!o||typeof o!="object")return;let r=o;if(!(r.version!==3||!Array.isArray(r.sources)||typeof r.mappings!="string"))return{version:r.version,sources:[...r.sources],names:[...r.names??[]],mappings:r.mappings,file:r.file??s.split("?",1).join(""),...r.sourceRoot?{sourceRoot:r.sourceRoot}:{},...r.sourcesContent?{sourcesContent:[...r.sourcesContent]}:{}}}var M=require("@cssxio/compiler"),C=require("fs/promises"),re=require("path"),qe=20,Ge=5*6e4;async function oe(e,s,t){let o=(0,re.resolve)(e),r=`${o}.lock`,n=Date.now(),m,i=0;for(;!m;){await(0,C.mkdir)((0,re.dirname)(o),{recursive:!0});let a;try{a=await(0,C.open)(r,"wx")}catch(l){let d=l.code;if(d!=="EEXIST"){if(d!=="EACCES"&&d!=="EPERM")throw l;try{await(0,C.stat)(r)}catch(c){if(c.code==="ENOENT"){if(i+=1,i>1)throw l;await new Promise(u=>setTimeout(u,qe));continue}throw c}}if(i=0,await Ot(r))continue;if(Date.now()-n>=Ge)throw new Error(`Timed out waiting for CSSX class-name manifest lock: ${r}`);await new Promise(c=>setTimeout(c,qe));continue}try{await a.writeFile(`${process.pid}
11
+ ${Date.now()}
12
+ `)}catch(l){throw await a.close().catch(()=>{}),await(0,C.rm)(r,{force:!0}).catch(()=>{}),l}m=a}try{let a=await kt(o,s),l=await t(a),d=(0,M.snapshotClassNameAllocator)(a),c=`${o}.${process.pid}.${Date.now()}.tmp`;try{await(0,C.writeFile)(c,`${JSON.stringify(d,null,2)}
13
+ `,"utf8"),await(0,C.rename)(c,o)}catch(u){throw await(0,C.rm)(c,{force:!0}).catch(()=>{}),u}return l}finally{await m.close(),await(0,C.rm)(r,{force:!0})}}async function Ot(e){try{let s=await(0,C.stat)(e),t;try{t=await(0,C.readFile)(e,"utf8")}catch(n){let m=n.code;if(m==="EACCES"||m==="EPERM")return!1;throw n}let[o]=t.split(`
14
+ `),r=Number(o);if(Number.isSafeInteger(r)&&r>0)try{return process.kill(r,0),!1}catch(n){return n.code!=="ESRCH"?!1:(await(0,C.rm)(e,{force:!0}),!0)}return Date.now()-s.mtimeMs<Ge?!1:(await(0,C.rm)(e,{force:!0}),!0)}catch(s){if(s.code==="ENOENT")return!1;throw s}}async function kt(e,s){try{let t=JSON.parse(await(0,C.readFile)(e,"utf8")),o=(0,M.snapshotClassNameAllocator)((0,M.createClassNameAllocator)(s)).options;if(JSON.stringify(t.options)!==JSON.stringify(o))throw new Error("CSSX class-name manifest options do not match the active compiler options.");return(0,M.restoreClassNameAllocator)(t)}catch(t){if(t.code==="ENOENT")return(0,M.createClassNameAllocator)(s);throw t}}async function O(e,s){let t=await Re(e,s.sourceRoots?.map(n=>(0,j.resolve)(e,n))),o={...s};delete o.coordination,delete o.manifestPath,delete o.classNameAllocator;let r=async n=>{let m=[];for(let i of t){let a=await(0,Qe.readFile)(i,"utf8"),l=/\.(?:md|mdx)$/i.test(i);if(l&&!a.includes(s.importSource??"@cssxio/cssx"))continue;let d=l?await Te(a,e,s.mdx):a,c=s.stableClassNames||s.naming==="source",u=await N(d,l?`${i}.tsx`:i,{...o,classNameAllocator:n,stableClassNames:c,...c?{stableClassNameFileName:(0,j.relative)(e,i).replaceAll(j.sep,"/")}:{}});u&&m.push({id:i,candidates:u.candidates,composites:u.composites,atomicClasses:u.atomicClasses,origins:u.origins})}return m};return s.coordination==="manifest"?oe(s.manifestPath,R(s),r):r(s.classNameAllocator??(0,Ke.createClassNameAllocator)(R(s)))}function ue({compiler:e,options:s,cssFileName:t,sourceMap:o,getTheme:r}){let n=K(e.context,s);Ne(e,t,r,s.layer,o,E,n.transformedDataById,s.darkMode,s.preflight,s.stableClassNames||s.naming==="source"||s.coordination==="manifest"?()=>O(e.context,s):void 0,s)}function ne(e,s,t=Date.now()){e.ws.send({type:"update",updates:[{type:"css-update",path:s,acceptedPath:s,timestamp:t}]})}function Ye(e,s){let{cssFileName:t,sourceMap:o,options:r,rollupDataById:n,getTheme:m}=s,i=$(e.config.base,t),a=$("/",t);e.watcher?.on("unlink",l=>{n.delete(S(l)),ne(e,a)}),e.middlewares.use((l,d,c)=>{let u=l.url?.split("?",1)[0];if(u!==i&&(u!==`${i}.map`||!o))return c();m().then(async p=>{let g=r.coordination==="manifest"?await O(e.config.root??process.cwd(),r):[...n.values()];return w(g,p,r.layer,o,r.darkMode,r.preflight)}).then(p=>{if(u===`${i}.map`){d.setHeader("Content-Type","application/json; charset=utf-8"),d.setHeader("Cache-Control","no-store"),d.end(p.map?A(p.map,t):"");return}d.setHeader("Content-Type","text/css; charset=utf-8"),d.setHeader("Cache-Control","no-store"),d.end(b(p,t))}).catch(p=>{d.setHeader("Content-Type","text/plain; charset=utf-8"),d.end(p instanceof Error?p.message:"Unable to compile CSSX development stylesheet.")})})}function Ze(e){if(!e||typeof e!="object")return G();let{id:s,rules:t,candidates:o,composites:r,atomicClasses:n,origins:m,cssOnlySignature:i}=e;return{id:typeof s=="string"?s:"",rules:Array.isArray(t)?t:[],candidates:o&&typeof o=="object"?o:{},composites:r&&typeof r=="object"?r:{},...Array.isArray(n)?{atomicClasses:n}:{},origins:m&&typeof m=="object"?m:{},cssOnlySignature:typeof i=="string"?i:""}}function et(e){return!e||typeof e!="object"?G():Ze(e[E])}function tt(e){return async function(s,t){let{framework:o,options:r,cssFileName:n,sourceMap:m,rollupDataById:i,getTheme:a}=e,l=new Set(Object.values(t).flatMap(p=>p.type==="chunk"?Object.keys(p.modules??{}):[]).map(S));if(o!=="vite")for(let p of i.keys())l.has(p)||i.delete(p);let d=r.coordination==="manifest"?await O(process.cwd(),r):o==="vite"?[...i.values()]:[...l].map(p=>{let g=et(this.getModuleInfo(p)?.meta);return Object.keys(g.candidates).length>0?g:i.get(p)??g}),c=await w(d,await a(),r.layer,m,r.darkMode,r.preflight);if(!c.css)return;let u=k(n,c.css);if(Object.hasOwn(t,u))throw new Error(`CSSX CSS asset collision at "${u}".`);if(this.emitFile({type:"asset",fileName:u,source:b(c,u)}),c.map){let p=`${u}.map`;if(Object.hasOwn(t,p))throw new Error(`CSSX CSS map asset collision at "${p}".`);this.emitFile({type:"asset",fileName:p,source:A(c.map,u)})}}}var T=require("path");function st(e){let s=e.getNativeBuildContext?.();return s&&(s.framework==="webpack"||s.framework==="rspack")?s.loaderContext?.rootContext??process.cwd():void 0}function rt(e){return`if (typeof document !== "undefined" && typeof module !== "undefined" && module.hot) {
10
15
  const key = "__cssxStylesheetHmr";
11
16
  const state = globalThis[key] || (globalThis[key] = { revision: 0, staged: [], replacements: [] });
12
17
  const stylesheetLink = [...document.querySelectorAll('link[rel="stylesheet"]')].find((link) =>
@@ -93,5 +98,5 @@ const style = `,l=`${p}${m.code};`,u=await o(l,`${s}.cssx-vue-template.ts`,{...t
93
98
  state.poll = setInterval(() => void refresh(), 500);
94
99
  }
95
100
  }
96
- }`}function We(e,s,t){let r=e.getNativeBuildContext?.();if(!r||r.framework!=="webpack"&&r.framework!=="rspack")return;let o=r.loaderContext?._module;if(!o)return;let n=o.buildInfo??(o.buildInfo={});n[t]=s}function ze(e){return async function(s,t){let{framework:r,options:o,classNameAllocator:n,rollupDataById:d,esbuildDataById:i,cssFileName:a,getEsbuildWorkingDirectory:m,notifyViteStyles:p}=e;o.themeFile&&this.addWatchFile?.((0,k.resolve)(o.themeFile));let l=Ue(this),u=l?_(l,o):void 0,c=await O(s,t,{...o,classNameAllocator:u?.classNameAllocator??n,...o.stableClassNames?{stableClassNameFileName:(0,k.relative)(l??process.cwd(),y(t)).replaceAll(k.sep,"/")}:{}},Fe(this,t)),f={id:y(t),rules:c?.rules??[],candidates:c?.candidates??{},composites:c?.composites??{},atomicClasses:c?.atomicClasses??[],origins:c?.origins??{},cssOnlySignature:c?.cssOnlySignature??""};We(this,f,w);let g=y(t);(c||g===t)&&(d.set(g,f),i.set((0,k.resolve)(m(),g),f),u?.transformedDataById.set(g,f)),r==="vite"&&p(T("/",a));let N=c?.code??s;return{code:(r==="webpack"||r==="rspack")&&c?`${N}
97
- ${_e(a)}`:N,meta:{[w]:f},...c?.map?{map:c.map}:{}}}}var Xe=require("buffer"),E=require("fs/promises"),F=require("path");function Ge(e){let{options:s,cssFileName:t,sourceMap:r,dataById:o,getTheme:n}=e,d,i=process.cwd();return{config(a){a.metafile=!0},setup(a){i=a.initialOptions.absWorkingDir??process.cwd(),a.onEnd(async m=>{if(!m.metafile)return;let p=new Set(Object.keys(m.metafile.inputs).map(f=>(0,F.resolve)(i,f)));for(let f of o.keys())p.has(f)||o.delete(f);let l=await h([...o.values()],await n(),s.layer,r,s.darkMode,s.preflight),u=Y(i,a.initialOptions,b(t,l.css));if(!l.css){d&&await(0,E.unlink)(d).catch(()=>{}),d=void 0;return}let c=S(l,(0,F.basename)(u));if(a.initialOptions.write===!1){let f=m.outputFiles;if(!f)return;let g={path:u,contents:Xe.Buffer.from(c),hash:"",text:c};if(f.findIndex(C=>C.path===u)!==-1)throw new Error(`CSSX CSS asset collision at "${u}".`);f.push(g);return}await(0,E.mkdir)((0,F.dirname)(u),{recursive:!0}),await(0,E.writeFile)(u,c),d=u})},getWorkingDirectory:()=>i}}function qe(e,s,t){let r=new Set;for(let o of s)e.moduleGraph?.invalidateModule(o,r,t,!0);for(let o of r){if(!o.id)continue;let n=e.runner?.evaluatedModules?.getModuleById(o.id);n&&e.runner?.evaluatedModules?.invalidateModule(n)}}function Je(e){return async function(t){let r=this.environment;if(!r||r.name==="client")return;let o=t.modules,n=o.filter(a=>{let m=e.get(y(a.id??""));return!!(m&&m.cssOnlySignature&&m.atomicClasses?.length===0)});if(n.length===0)return;let d=new Map(n.map(a=>[a,e.get(y(a.id)).cssOnlySignature]));for(let a of n)a.url&&await r.transformRequest(a.url);if(n.every(a=>{let m=e.get(y(a.id));return!!(m&&m.atomicClasses.length===0&&m.cssOnlySignature===d.get(a))}))return qe(r,n,t.timestamp),o.filter(a=>!n.includes(a))}}var mt=/\.(?:[cm]?[jt]sx?|astro|vue)(?:\?.*)?$/,ut=(e={},s)=>{B(e);let t=e.cssFileName??"cssx.css",r=e.sourceMap??!0,o=new Map,n=(0,Ke.createClassNameAllocator)(),d=new Map,i,a=()=>j(e),m=Ge({options:e,cssFileName:t,sourceMap:r,dataById:d,getTheme:a}),p=He({framework:s.framework,options:e,cssFileName:t,sourceMap:r,rollupDataById:o,getTheme:a});return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:mt},handler:ze({framework:s.framework,options:e,classNameAllocator:n,rollupDataById:o,esbuildDataById:d,cssFileName:t,getEsbuildWorkingDirectory:m.getWorkingDirectory,notifyViteStyles:l=>{i&&K(i,l)}})},watchChange(l,u){u.event==="delete"&&o.delete(y(l))},rollup:{generateBundle:p},vite:{generateBundle:p,configureServer(l){i=l,$e(l,{cssFileName:t,sourceMap:r,options:e,rollupDataById:o,getTheme:a})},hotUpdate:{order:"pre",handler:Je(o)}},...s.framework==="webpack"?{webpack(l){te({compiler:l,options:e,cssFileName:t,sourceMap:r,getTheme:a})}}:{},...s.framework==="rspack"?{rspack(l){te({compiler:l,options:e,cssFileName:t,sourceMap:r,getTheme:a})}}:{},...s.framework==="esbuild"?{esbuild:{config:m.config,setup:m.setup}}:{}}},Q=(0,Qe.createUnplugin)(ut),Zo=Q.vite,er=Q.rollup,Ye=Q.webpack,tr=Q.rspack;var pt=Ye,ft=pt;
101
+ }`}function ot(e,s,t){let o=e.getNativeBuildContext?.();if(!o||o.framework!=="webpack"&&o.framework!=="rspack")return;let r=o.loaderContext?._module;if(!r)return;let n=r.buildInfo??(r.buildInfo={});n[t]=s}function nt(e){return async function(s,t){let{framework:o,options:r,classNameAllocator:n,rollupDataById:m,esbuildDataById:i,cssFileName:a,getEsbuildWorkingDirectory:l,notifyViteStyles:d}=e;r.themeFile&&this.addWatchFile?.((0,T.resolve)(r.themeFile));let c=st(this),u=c?K(c,r):void 0,p={...r,className:{...r.className,...r.naming==="hash"?{variant:"random"}:{},...r.naming==="serial"?{variant:"serial"}:{}},stableClassNames:r.stableClassNames||r.naming==="source",classNameAllocator:u?.classNameAllocator??n,...r.stableClassNames||r.naming==="source"?{stableClassNameFileName:(0,T.relative)(c??process.cwd(),S(t)).replaceAll(T.sep,"/")}:{}},g={...p};delete g.coordination,delete g.manifestPath;let f=r.coordination==="manifest"?await oe(r.manifestPath,g.className,v=>N(s,t,{...g,classNameAllocator:v},de(this,t))):await N(s,t,p,de(this,t)),y={id:S(t),rules:f?.rules??[],candidates:f?.candidates??{},composites:f?.composites??{},atomicClasses:f?.atomicClasses??[],origins:f?.origins??{},cssOnlySignature:f?.cssOnlySignature??""};ot(this,y,E);let x=S(t);(f||x===t)&&(m.set(x,y),i.set((0,T.resolve)(l(),x),y),u?.transformedDataById.set(x,y)),o==="vite"&&d($("/",a));let h=f?.code??s;return{code:(o==="webpack"||o==="rspack")&&f?`${h}
102
+ ${rt(a)}`:h,meta:{[E]:y},...f?.map?{map:f.map}:{}}}}var it=require("buffer"),B=require("fs/promises"),L=require("path");function at(e){let{options:s,cssFileName:t,sourceMap:o,dataById:r,getTheme:n}=e,m,i=process.cwd();return{config(a){a.metafile=!0},setup(a){i=a.initialOptions.absWorkingDir??process.cwd(),a.onEnd(async l=>{if(!l.metafile)return;let d=new Set(Object.keys(l.metafile.inputs).map(f=>(0,L.resolve)(i,f)));for(let f of r.keys())d.has(f)||r.delete(f);let c=s.coordination==="manifest"?await O(i,s):[...r.values()],u=await w(c,await n(),s.layer,o,s.darkMode,s.preflight),p=ae(i,a.initialOptions,k(t,u.css));if(!u.css){m&&await(0,B.unlink)(m).catch(()=>{}),m=void 0;return}let g=b(u,(0,L.basename)(p));if(a.initialOptions.write===!1){let f=l.outputFiles;if(!f)return;let y={path:p,contents:it.Buffer.from(g),hash:"",text:g};if(f.findIndex(h=>h.path===p)!==-1)throw new Error(`CSSX CSS asset collision at "${p}".`);f.push(y);return}await(0,B.mkdir)((0,L.dirname)(p),{recursive:!0}),await(0,B.writeFile)(p,g),m=p})},getWorkingDirectory:()=>i}}function lt(e,s,t){let o=new Set;for(let r of s)e.moduleGraph?.invalidateModule(r,o,t,!0);for(let r of o){if(!r.id)continue;let n=e.runner?.evaluatedModules?.getModuleById(r.id);n&&e.runner?.evaluatedModules?.invalidateModule(n)}}function ct(e){return async function(t){let o=this.environment;if(!o||o.name==="client")return;let r=t.modules,n=r.filter(a=>{let l=e.get(S(a.id??""));return!!(l&&l.cssOnlySignature&&l.atomicClasses?.length===0)});if(n.length===0)return;let m=new Map(n.map(a=>[a,e.get(S(a.id)).cssOnlySignature]));for(let a of n)a.url&&await o.transformRequest(a.url);if(n.every(a=>{let l=e.get(S(a.id));return!!(l&&l.atomicClasses.length===0&&l.cssOnlySignature===m.get(a))}))return lt(o,n,t.timestamp),r.filter(a=>!n.includes(a))}}var Pt=/\.(?:[cm]?[jt]sx?|astro|vue|md|mdx)(?:\?.*)?$/,Rt=(e={},s)=>{if(U(e),e.classNameAllocator&&e.className)throw new Error("CSSX classNameAllocator owns naming. Omit className when supplying a custom allocator.");let t=e.cssFileName??"cssx.css",o=e.sourceMap??!0,r=new Map,n=e.classNameAllocator??(0,mt.createClassNameAllocator)(R(e)),m=new Map,i,a=()=>H(e),l=at({options:e,cssFileName:t,sourceMap:o,dataById:m,getTheme:a}),d=tt({framework:s.framework,options:e,cssFileName:t,sourceMap:o,rollupDataById:r,getTheme:a});return{name:"@cssxio/unplugin",enforce:"pre",transform:{filter:{id:Pt},handler:nt({framework:s.framework,options:e,classNameAllocator:n,rollupDataById:r,esbuildDataById:m,cssFileName:t,getEsbuildWorkingDirectory:l.getWorkingDirectory,notifyViteStyles:c=>{i&&ne(i,c)}})},watchChange(c,u){u.event==="delete"&&r.delete(S(c))},rollup:{generateBundle:d},vite:{generateBundle:d,configureServer(c){i=c,Ye(c,{cssFileName:t,sourceMap:o,options:e,rollupDataById:r,getTheme:a})},hotUpdate:{order:"pre",handler:ct(r)}},...s.framework==="webpack"?{webpack(c){ue({compiler:c,options:e,cssFileName:t,sourceMap:o,getTheme:a})}}:{},...s.framework==="rspack"?{rspack(c){ue({compiler:c,options:e,cssFileName:t,sourceMap:o,getTheme:a})}}:{},...s.framework==="esbuild"?{esbuild:{config:l.config,setup:l.setup}}:{}}},ie=(0,dt.createUnplugin)(Rt),Po=ie.vite,Ro=ie.rollup,ut=ie.webpack,Ao=ie.rspack;var At=ut,Et=At;
@@ -1,5 +1,5 @@
1
1
  import * as _webpack from 'webpack';
2
- import { C as CssxPluginOptions } from './options-ByIyWTN0.cjs';
2
+ import { C as CssxPluginOptions } from './options-DkqShf7w.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-ByIyWTN0.js';
2
+ import { C as CssxPluginOptions } from './options-DkqShf7w.js';
3
3
  import '@cssxio/compiler';
4
4
 
5
5
  /**
package/dist/webpack.js CHANGED
@@ -1 +1 @@
1
- import{g as c}from"./chunk-SKXNEQ2Z.js";var e=c,p=e;export{p as default};
1
+ import{e as c}from"./chunk-BPBCQNZV.js";import"./chunk-GGFXMP4P.js";import"./chunk-T2L6RO3O.js";var e=c,p=e;export{p as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cssxio/unplugin",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Universal bundler plugin for CSSX.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -33,6 +33,16 @@
33
33
  "import": "./dist/webpack.js",
34
34
  "require": "./dist/webpack.cjs"
35
35
  },
36
+ "./next": {
37
+ "types": "./dist/next.d.ts",
38
+ "import": "./dist/next.js",
39
+ "require": "./dist/next.cjs"
40
+ },
41
+ "./next-loader": {
42
+ "types": "./dist/next-loader.d.ts",
43
+ "import": "./dist/next-loader.js",
44
+ "require": "./dist/next-loader.cjs"
45
+ },
36
46
  "./rspack": {
37
47
  "types": "./dist/rspack.d.ts",
38
48
  "import": "./dist/rspack.js",
@@ -50,8 +60,8 @@
50
60
  "sideEffects": false,
51
61
  "dependencies": {
52
62
  "@babel/core": "^7.29.7",
53
- "@cssxio/babel-plugin": "^0.6.0",
54
- "@cssxio/compiler": "^0.8.0",
63
+ "@cssxio/babel-plugin": "^0.7.0",
64
+ "@cssxio/compiler": "^0.9.0",
55
65
  "@vue/compiler-sfc": "^3.5.0",
56
66
  "unplugin": "^3.3.0"
57
67
  },
@@ -64,6 +74,6 @@
64
74
  }
65
75
  },
66
76
  "scripts": {
67
- "build": "tsup src/index.ts src/vite.ts src/rollup.ts src/webpack.ts src/rspack.ts src/esbuild.ts --format esm,cjs --dts --minify --clean"
77
+ "build": "tsup src/index.ts src/vite.ts src/rollup.ts src/webpack.ts src/rspack.ts src/esbuild.ts src/next.ts src/next-loader.ts --format esm,cjs --dts --minify --clean"
68
78
  }
69
79
  }