@unocss/runtime 0.62.3 → 0.63.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.
package/core.global.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";(()=>{function Pe(n){let e=n.length,t=-1,r,s="",i=n.charCodeAt(0);for(;++t<e;){if(r=n.charCodeAt(t),r===0){s+="\uFFFD";continue}if(r===37){s+="\\%";continue}if(r===44){s+="\\,";continue}if(r>=1&&r<=31||r===127||t===0&&r>=48&&r<=57||t===1&&r>=48&&r<=57&&i===45){s+=`\\${r.toString(16)} `;continue}if(t===0&&e===1&&r===45){s+=`\\${n.charAt(t)}`;continue}if(r>=128||r===45||r===95||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122){s+=n.charAt(t);continue}s+=`\\${n.charAt(t)}`}return s}var N=Pe;function U(n=[]){return Array.isArray(n)?n:[n]}function j(n){return Array.from(new Set(n))}function ee(n,e){return n.reduce((t,r)=>(t.findIndex(i=>e(r,i))===-1&&t.push(r),t),[])}function A(n){return typeof n=="string"}function F(n){return A(n)?n:(Array.isArray(n)?n:Object.entries(n)).filter(e=>e[1]!=null)}function ae(n){return Array.isArray(n)?n.find(e=>!Array.isArray(e)||Array.isArray(e[0]))?n.map(e=>F(e)):[n]:[F(n)]}function $e(n){return n.filter(([e,t],r)=>{if(e.startsWith("$$"))return!1;for(let s=r-1;s>=0;s--)if(n[s][0]===e&&n[s][1]===t)return!1;return!0})}function W(n){return n==null?"":$e(n).map(([e,t])=>t!=null&&typeof t!="function"?`${e}:${t};`:void 0).filter(Boolean).join("")}function z(n){return n&&typeof n=="object"&&!Array.isArray(n)}function te(n,e,t=!1){let r=n,s=e;if(Array.isArray(s))return t&&Array.isArray(s)?[...r,...s]:[...s];let i={...r};return z(r)&&z(s)&&Object.keys(s).forEach(a=>{z(r[a])&&z(s[a])||Array.isArray(r[a])&&Array.isArray(s[a])?i[a]=te(r[a],s[a],t):Object.assign(i,{[a]:s[a]})}),i}function I(n){let e,t,r;if(Array.isArray(n)){for(t=Array(e=n.length);e--;)t[e]=(r=n[e])&&typeof r=="object"?I(r):r;return t}if(Object.prototype.toString.call(n)==="[object Object]"){t={};for(e in n)e==="__proto__"?Object.defineProperty(t,e,{value:I(n[e]),configurable:!0,enumerable:!0,writable:!0}):t[e]=(r=n[e])&&typeof r=="object"?I(r):r;return t}return n}function ce(n){return A(n[0])}function le(n){return A(n[0])}function ue(n){return typeof n=="function"?{match:n}:n}function ne(n){return n.length===3}function re(n){return n!=null}function fe(){}var Y=class{_map=new Map;get(e,t){let r=this._map.get(e);if(r)return r.get(t)}getFallback(e,t,r){let s=this._map.get(e);return s||(s=new Map,this._map.set(e,s)),s.has(t)||s.set(t,r),s.get(t)}set(e,t,r){let s=this._map.get(e);return s||(s=new Map,this._map.set(e,s)),s.set(t,r),this}has(e,t){return this._map.get(e)?.has(t)}delete(e,t){return this._map.get(e)?.delete(t)||!1}deleteTop(e){return this._map.delete(e)}map(e){return Array.from(this._map.entries()).flatMap(([t,r])=>Array.from(r.entries()).map(([s,i])=>e(i,t,s)))}},q=class extends Map{getFallback(e,t){let r=this.get(e);return r===void 0?(this.set(e,t),t):r}map(e){let t=[];return this.forEach((r,s)=>{t.push(e(r,s))}),t}flatMap(e){let t=[];return this.forEach((r,s)=>{t.push(...e(r,s))}),t}};var G=class extends Set{_map;constructor(e){super(e),this._map??=new Map}add(e){return this._map??=new Map,this._map.set(e,(this._map.get(e)??0)+1),super.add(e)}delete(e){return this._map.delete(e),super.delete(e)}clear(){this._map.clear(),super.clear()}getCount(e){return this._map.get(e)??0}setCount(e,t){return this._map.set(e,t),super.add(e)}};function Z(n){return n instanceof G}var J={};function je(n=["-",":"]){let e=n.join("|");return J[e]||(J[e]=new RegExp(`((?:[!@<~\\w+:_/-]|\\[&?>?:?\\S*\\])+?)(${e})\\(((?:[~!<>\\w\\s:/\\\\,%#.$?-]|\\[.*?\\])+?)\\)(?!\\s*?=>)`,"gm")),J[e].lastIndex=0,J[e]}function _e(n,e=["-",":"],t=5){let r=je(e),s,i=n.toString(),a=new Set,c=new Map;do s=!1,i=i.replace(r,(p,l,f,S,b)=>{if(!e.includes(f))return p;s=!0,a.add(l+f);let M=b+l.length+f.length+1,w={length:p.length,items:[]};c.set(b,w);for(let T of[...S.matchAll(/\S+/g)]){let P=M+T.index,m=c.get(P)?.items;m?c.delete(P):m=[{offset:P,length:T[0].length,className:T[0]}];for(let y of m)y.className=y.className==="~"?l:y.className.replace(/^(!?)(.*)/,`$1${l}${f}$2`),w.items.push(y)}return"$".repeat(p.length)}),t-=1;while(s&&t);let u;if(typeof n=="string"){u="";let p=0;for(let[l,f]of c)u+=n.slice(p,l),u+=f.items.map(S=>S.className).join(" "),p=l+f.length;u+=n.slice(p)}else{u=n;for(let[p,l]of c)u.overwrite(p,p+l.length,l.items.map(f=>f.className).join(" "))}return{prefixes:Array.from(a),hasChanged:s,groupsByOffset:c,get expanded(){return u.toString()}}}function pe(n,e=["-",":"],t=5){let r=_e(n,e,t);return typeof n=="string"?r.expanded:n}var de=new Set;function me(n){de.has(n)||(console.warn("[unocss]",n),de.add(n))}var ge=/[\\:]?[\s'"`;{}]+/g;function Oe(n){return n.split(ge)}var Q={name:"@unocss/core/extractor-split",order:0,extract({code:n}){return Oe(n)}};function he(){return{events:{},emit(n,...e){(this.events[n]||[]).forEach(t=>t(...e))},on(n,e){return(this.events[n]=this.events[n]||[]).push(e),()=>this.events[n]=(this.events[n]||[]).filter(t=>t!==e)}}}var H="default",X="preflights",ke="shortcuts",Le="imports",ye={[Le]:-200,[X]:-100,[ke]:-10,[H]:0};function be(n){return U(n).flatMap(e=>Array.isArray(e)?[e]:Object.entries(e))}var xe="_uno_resolved";function De(n){let e=typeof n=="function"?n():n;if(xe in e)return e;e={...e},Object.defineProperty(e,xe,{value:!0,enumerable:!1});let t=e.shortcuts?be(e.shortcuts):void 0;if(e.shortcuts=t,e.prefix||e.layer){let r=s=>{s[2]||(s[2]={});let i=s[2];i.prefix==null&&e.prefix&&(i.prefix=U(e.prefix)),i.layer==null&&e.layer&&(i.layer=e.layer)};t?.forEach(r),e.rules?.forEach(r)}return e}function Ce(n){let e=De(n);if(!e.presets)return[e];let t=(e.presets||[]).flatMap(U).flatMap(Ce);return[e,...t]}function Fe(n){if(n.length===0)return{};let e=[],t=[],r=!1;for(let s of n)s.pipeline===!1?r=!0:(e.push(s.pipeline?.include??[]),t.push(s.pipeline?.exclude??[]));return{filesystem:j(n.flatMap(s=>s.filesystem??[])),inline:j(n.flatMap(s=>s.inline??[])),plain:j(n.flatMap(s=>s.plain??[])),pipeline:r?!1:{include:j(Se(...e)),exclude:j(Se(...t))}}}function se(n={},e={}){let t=Object.assign({},e,n),r=ee((t.presets||[]).flatMap(U).flatMap(Ce),(o,h)=>o.name===h.name),s=[...r.filter(o=>o.enforce==="pre"),...r.filter(o=>!o.enforce),...r.filter(o=>o.enforce==="post")],i=[...s,t],a=[...i].reverse(),c=Object.assign({},ye,...i.map(o=>o.layers));function u(o){return j(i.flatMap(h=>U(h[o]||[])))}let p=u("extractors"),l=a.find(o=>o.extractorDefault!==void 0)?.extractorDefault;l===void 0&&(l=Q),l&&!p.includes(l)&&p.unshift(l),p.sort((o,h)=>(o.order||0)-(h.order||0));let f=u("rules"),S={},b=f.length,M=f.map((o,h)=>{if(ce(o)){U(o[2]?.prefix||"").forEach($=>{S[$+o[0]]=[h,o[1],o[2],o]});return}return[h,...o]}).filter(Boolean).reverse(),w=Ke(i.map(o=>o.theme)),T=u("extendTheme");for(let o of T)w=o(w)||w;let P={templates:j(i.flatMap(o=>U(o.autocomplete?.templates))),extractors:i.flatMap(o=>U(o.autocomplete?.extractors)).sort((o,h)=>(o.order||0)-(h.order||0)),shorthands:Ie(i.map(o=>o.autocomplete?.shorthands||{}))},m=u("separators");m.length||(m=[":","-"]);let y=u("content"),E=Fe(y),x={mergeSelectors:!0,warn:!0,sortLayers:o=>o,...t,blocklist:u("blocklist"),presets:s,envMode:t.envMode||"build",shortcutsLayer:t.shortcutsLayer||"shortcuts",layers:c,theme:w,rulesSize:b,rulesDynamic:M,rulesStaticMap:S,preprocess:u("preprocess"),postprocess:u("postprocess"),preflights:u("preflights"),autocomplete:P,variants:u("variants").map(ue).sort((o,h)=>(o.order||0)-(h.order||0)),shortcuts:be(u("shortcuts")).reverse(),extractors:p,safelist:u("safelist"),separators:m,details:t.details??t.envMode==="dev",content:E,transformers:ee(u("transformers"),(o,h)=>o.name===h.name)};for(let o of i)o?.configResolved?.(x);return x}function Ke(n){return n.map(e=>e?I(e):{}).reduce((e,t)=>te(e,t),{})}function Ie(n){return n.reduce((e,t)=>{let r={};for(let s in t){let i=t[s];Array.isArray(i)?r[s]=`(${i.join("|")})`:r[s]=i}return{...e,...r}},{})}function Se(...n){return n.flatMap(Ge)}function Ge(n){return Array.isArray(n)?n:n?[n]:[]}var Te="0.62.3";var K={shortcutsNoMerge:"$$symbol-shortcut-no-merge",variants:"$$symbol-variants",parent:"$$symbol-parent",selector:"$$symbol-selector"},ie=class{constructor(e={},t={}){this.userConfig=e;this.defaults=t;this.config=se(e,t),this.events.emit("config",this.config)}version=Te;_cache=new Map;config;blocked=new Set;parentOrders=new Map;events=he();setConfig(e,t){e&&(t&&(this.defaults=t),this.userConfig=e,this.blocked.clear(),this.parentOrders.clear(),this._cache.clear(),this.config=se(e,this.defaults),this.events.emit("config",this.config))}async applyExtractors(e,t,r=new Set){let s={original:e,code:e,id:t,extracted:r,envMode:this.config.envMode};for(let i of this.config.extractors){let a=await i.extract?.(s);if(a)if(Z(a)&&Z(r))for(let c of a)r.setCount(c,r.getCount(c)+a.getCount(c));else for(let c of a)r.add(c)}return r}makeContext(e,t){let r={rawSelector:e,currentSelector:t[1],theme:this.config.theme,generator:this,symbols:K,variantHandlers:t[2],constructCSS:(...s)=>this.constructCustomCSS(r,...s),variantMatch:t};return r}async parseToken(e,t){if(this.blocked.has(e))return;let r=`${e}${t?` ${t}`:""}`;if(this._cache.has(r))return this._cache.get(r);let s=e;for(let p of this.config.preprocess)s=p(e);if(this.isBlocked(s)){this.blocked.add(e),this._cache.set(r,null);return}let i=await this.matchVariants(e,s);if(!i||this.isBlocked(i[1])){this.blocked.add(e),this._cache.set(r,null);return}let a=this.makeContext(e,[t||i[0],i[1],i[2],i[3]]);this.config.details&&(a.variants=[...i[3]]);let c=await this.expandShortcut(a.currentSelector,a),u=c?await this.stringifyShortcuts(a.variantMatch,a,c[0],c[1]):(await this.parseUtil(a.variantMatch,a))?.map(p=>this.stringifyUtil(p,a)).filter(re);if(u?.length)return this._cache.set(r,u),u;this._cache.set(r,null)}async generate(e,t={}){let{id:r,scope:s,preflights:i=!0,safelist:a=!0,minify:c=!1,extendedInfo:u=!1}=t,p=this.config.outputToCssLayers,l=A(e)?await this.applyExtractors(e,r,u?new G:new Set):Array.isArray(e)?new Set(e):e;if(a){let x={generator:this,theme:this.config.theme};this.config.safelist.flatMap(o=>typeof o=="function"?o(x):o).forEach(o=>{l.has(o)||l.add(o)})}let f=c?"":`
2
- `,S=new Set([H]),b=u?new Map:new Set,M=new Map,w={},T=Array.from(l).map(async x=>{if(b.has(x))return;let o=await this.parseToken(x);if(o!=null){b instanceof Map?b.set(x,{data:o,count:Z(l)?l.getCount(x):-1}):b.add(x);for(let h of o){let v=h[3]||"",$=h[4]?.layer;M.has(v)||M.set(v,[]),M.get(v).push(h),$&&S.add($)}}});await Promise.all(T),await(async()=>{if(!i)return;let x={generator:this,theme:this.config.theme},o=new Set([]);this.config.preflights.forEach(({layer:h=X})=>{S.add(h),o.add(h)}),w=Object.fromEntries(await Promise.all(Array.from(o).map(async h=>{let $=(await Promise.all(this.config.preflights.filter(O=>(O.layer||X)===h).map(async O=>await O.getCSS(x)))).filter(Boolean).join(f);return[h,$]})))})();let P=this.config.sortLayers(Array.from(S).sort((x,o)=>(this.config.layers[x]??0)-(this.config.layers[o]??0)||x.localeCompare(o))),m={},y=(x=H)=>{if(m[x])return m[x];let o=Array.from(M).sort((v,$)=>(this.parentOrders.get(v[0])??0)-(this.parentOrders.get($[0])??0)||v[0]?.localeCompare($[0]||"")||0).map(([v,$])=>{let O=$.length,D=$.filter(d=>(d[4]?.layer||H)===x).sort((d,C)=>d[0]-C[0]||(d[4]?.sort||0)-(C[4]?.sort||0)||d[5]?.currentSelector?.localeCompare(C[5]?.currentSelector??"")||d[1]?.localeCompare(C[1]||"")||d[2]?.localeCompare(C[2]||"")||0).map(([,d,C,,R,,V])=>[[[(d&&Ne(d,s))??"",R?.sort??0]],C,!!(V??R?.noMerge)]);if(!D.length)return;let B=D.reverse().map(([d,C,R],V)=>{if(!R&&this.config.mergeSelectors)for(let L=V+1;L<O;L++){let _=D[L];if(_&&!_[2]&&(d&&_[0]||d==null&&_[0]==null)&&_[1]===C)return d&&_[0]&&_[0].push(...d),null}let k=d?j(d.sort((L,_)=>L[1]-_[1]||L[0]?.localeCompare(_[0]||"")||0).map(L=>L[0]).filter(Boolean)):[];return k.length?`${k.join(`,${f}`)}{${C}}`:C}).filter(Boolean).reverse().join(f);if(!v)return B;let g=v.split(" $$ ");return`${g.join("{")}{${f}${B}${f}${"}".repeat(g.length)}`}).filter(Boolean).join(f);if(i&&(o=[w[x],o].filter(Boolean).join(f)),p&&o){let v=typeof p=="object"?p.cssLayerName?.(x):void 0;v!==null&&(v||(v=x),o=`@layer ${v}{${f}${o}${f}}`)}let h=c?"":`/* layer: ${x} */${f}`;return m[x]=o?h+o:""},E=(x=P,o)=>x.filter(h=>!o?.includes(h)).map(h=>y(h)||"").filter(Boolean).join(f);return{get css(){return E()},layers:P,matched:b,getLayers:E,getLayer:y}}async matchVariants(e,t){let r=new Set,s=[],i=t||e,a=!0,c={rawSelector:e,theme:this.config.theme,generator:this};for(;a;){a=!1;for(let u of this.config.variants){if(!u.multiPass&&r.has(u))continue;let p=await u.match(i,c);if(p){if(A(p)){if(p===i)continue;p={matcher:p}}i=p.matcher??i,s.unshift(p),r.add(u),a=!0;break}}if(!a)break;if(s.length>500)throw new Error(`Too many variants applied to "${e}"`)}return[e,i,s,r]}applyVariants(e,t=e[4],r=e[1]){let i=t.slice().sort((p,l)=>(p.order||0)-(l.order||0)).reduceRight((p,l)=>f=>{let S=l.body?.(f.entries)||f.entries,b=Array.isArray(l.parent)?l.parent:[l.parent,void 0];return(l.handle??We)({...f,entries:S,selector:l.selector?.(f.selector,S)||f.selector,parent:b[0]||f.parent,parentOrder:b[1]||f.parentOrder,layer:l.layer||f.layer,sort:l.sort||f.sort},p)},p=>p)({prefix:"",selector:ze(r),pseudo:"",entries:e[2]}),{parent:a,parentOrder:c}=i;a!=null&&c!=null&&this.parentOrders.set(a,c);let u={selector:[i.prefix,i.selector,i.pseudo].join(""),entries:i.entries,parent:a,layer:i.layer,sort:i.sort,noMerge:i.noMerge};for(let p of this.config.postprocess)p(u);return u}constructCustomCSS(e,t,r){let s=F(t);if(A(s))return s;let{selector:i,entries:a,parent:c}=this.applyVariants([0,r||e.rawSelector,s,void 0,e.variantHandlers]),u=`${i}{${W(a)}}`;return c?`${c}{${u}}`:u}async parseUtil(e,t,r=!1,s){let[i,a,c]=A(e)?await this.matchVariants(e):e;this.config.details&&(t.rules=t.rules??[]);let u=this.config.rulesStaticMap[a];if(u&&u[1]&&(r||!u[2]?.internal)){this.config.details&&t.rules.push(u[3]);let l=u[0],f=F(u[1]),S=u[2];return A(f)?[[l,f,S]]:[[l,i,f,S,c]]}t.variantHandlers=c;let{rulesDynamic:p}=this.config;for(let[l,f,S,b]of p){if(b?.internal&&!r)continue;let M=a;if(b?.prefix){let m=U(b.prefix);if(s){let y=U(s);if(!m.some(E=>y.includes(E)))continue}else{let y=m.find(E=>a.startsWith(E));if(y==null)continue;M=a.slice(y.length)}}let w=M.match(f);if(!w)continue;let T=await S(w,t);if(!T)continue;if(this.config.details&&t.rules.push([f,S,b]),typeof T!="string")if(Symbol.asyncIterator in T){let m=[];for await(let y of T)y&&m.push(y);T=m}else Symbol.iterator in T&&!Array.isArray(T)&&(T=Array.from(T).filter(re));let P=ae(T).filter(m=>m.length);if(P.length)return P.map(m=>{if(A(m))return[l,m,b];let y=c;for(let E of m)E[0]===K.variants?y=[...U(E[1]),...y]:E[0]===K.parent?y=[{parent:E[1]},...y]:E[0]===K.selector&&(y=[{selector:E[1]},...y]);return[l,i,m,b,y]})}}stringifyUtil(e,t){if(!e)return;if(ne(e))return[e[0],void 0,e[1],void 0,e[2],this.config.details?t:void 0,void 0];let{selector:r,entries:s,parent:i,layer:a,sort:c,noMerge:u}=this.applyVariants(e),p=W(s);if(!p)return;let{layer:l,sort:f,...S}=e[3]??{},b={...S,layer:a??l,sort:c??f};return[e[0],r,p,i,b,this.config.details?t:void 0,u]}async expandShortcut(e,t,r=5){if(r===0)return;let s=this.config.details?c=>{t.shortcuts=t.shortcuts??[],t.shortcuts.push(c)}:fe,i,a;for(let c of this.config.shortcuts){let u=e;if(c[2]?.prefix){let l=U(c[2].prefix).find(f=>e.startsWith(f));if(l==null)continue;u=e.slice(l.length)}if(le(c)){if(c[0]===u){i=i||c[2],a=c[1],s(c);break}}else{let p=u.match(c[0]);if(p&&(a=c[1](p,t)),a){i=i||c[2],s(c);break}}}if(a&&(a=U(a).map(c=>A(c)?pe(c.trim()).split(/\s+/g):c).flat()),!a){let[c,u]=A(e)?await this.matchVariants(e):e;if(c!==u){let p=await this.expandShortcut(u,t,r-1);p&&(a=p[0].map(l=>A(l)?c.replace(u,l):l))}}if(a)return[(await Promise.all(a.map(async c=>(A(c)?(await this.expandShortcut(c,t,r-1))?.[0]:void 0)||[c]))).flat(1).filter(Boolean),i]}async stringifyShortcuts(e,t,r,s={layer:this.config.shortcutsLayer}){let i=new q,a=(await Promise.all(j(r).map(async l=>{let f=A(l)?await this.parseUtil(l,t,!0,s.prefix):[[Number.POSITIVE_INFINITY,"{inline}",F(l),void 0,[]]];return!f&&this.config.warn&&me(`unmatched utility "${l}" in shortcut "${e[1]}"`),f||[]}))).flat(1).filter(Boolean).sort((l,f)=>l[0]-f[0]),[c,,u]=e,p=[];for(let l of a){if(ne(l)){p.push([l[0],void 0,l[1],void 0,l[2],t,void 0]);continue}let{selector:f,entries:S,parent:b,sort:M,noMerge:w,layer:T}=this.applyVariants(l,[...l[4],...u],c);i.getFallback(T??s.layer,new Y).getFallback(f,b,[[],l[0]])[0].push([S,!!(w??l[3]?.noMerge),M??0])}return p.concat(i.flatMap((l,f)=>l.map(([S,b],M,w)=>{let T=(m,y,E)=>{let x=Math.max(...E.map(h=>h[1])),o=E.map(h=>h[0]);return(m?[o.flat(1)]:o).map(h=>{let v=W(h);if(v)return[b,M,v,w,{...s,noMerge:y,sort:x,layer:f},t,void 0]})};return[[S.filter(([,m])=>m).map(([m,,y])=>[m,y]),!0],[S.filter(([,m])=>!m).map(([m,,y])=>[m,y]),!1]].map(([m,y])=>[...T(!1,y,m.filter(([E])=>E.some(x=>x[0]===K.shortcutsNoMerge))),...T(!0,y,m.filter(([E])=>E.every(x=>x[0]!==K.shortcutsNoMerge)))])}).flat(2).filter(Boolean)))}isBlocked(e){return!e||this.config.blocklist.map(t=>Array.isArray(t)?t[0]:t).some(t=>typeof t=="function"?t(e):A(t)?t===e:t.test(e))}getBlocked(e){let t=this.config.blocklist.find(r=>{let s=Array.isArray(r)?r[0]:r;return typeof s=="function"?s(e):A(s)?s===e:s.test(e)});return t?Array.isArray(t)?t:[t,void 0]:void 0}};function Re(n,e){return new ie(n,e)}var ve=/\s\$\$\s+/g;function Be(n){return ve.test(n)}function Ne(n,e){return Be(n)?n.replace(ve,e?` ${e} `:" "):e?`${e} ${n}`:n}var Ee=/^\[(.+?)(~?=)"(.*)"\]$/;function ze(n){return Ee.test(n)?n.replace(Ee,(e,t,r,s)=>`[${N(t)}${r}"${N(s)}"]`):`.${N(n)}`}function We(n,e){return e(n)}function Ye(n){return n.replace(/-(\w)/g,(e,t)=>t?t.toUpperCase():"")}function Me(n){return n.charAt(0).toUpperCase()+n.slice(1)}function we(n){return n.replace(/(?:^|\B)([A-Z])/g,"-$1").toLowerCase()}var Ae=["Webkit","Moz","ms"];function Ue(n){let e={};function t(r){let s=e[r];if(s)return s;let i=Ye(r);if(i!=="filter"&&i in n)return e[r]=we(i);i=Me(i);for(let a=0;a<Ae.length;a++){let c=`${Ae[a]}${i}`;if(c in n)return e[r]=we(Me(c))}return r}return({entries:r})=>r.forEach(s=>{s[0].startsWith("--")||(s[0]=t(s[0]))})}function Ve(n){return n.replace(/&amp;/g,"&").replace(/&gt;/g,">").replace(/&lt;/g,"<")}function oe(n={}){if(typeof window>"u"){console.warn("@unocss/runtime been used in non-browser environment, skipped.");return}let e=window,t=window.document,r=()=>t.documentElement,s=e.__unocss||{},i=Object.assign({},n,s.runtime),a=i.defaults||{},c=i.cloakAttribute??"un-cloak";i.autoPrefix&&(a.postprocess=U(a.postprocess)).unshift(Ue(t.createElement("div").style)),i.configResolved?.(s,a);let u=Re(s,a),p=g=>i.inject?i.inject(g):r().prepend(g),l=()=>i.rootElement?i.rootElement():t.body,f=new Map,S=!0,b=new Set,M,w,T=[],P=()=>new Promise(g=>{T.push(g),w!=null&&clearTimeout(w),w=setTimeout(()=>E().then(()=>{let d=T;T=[],d.forEach(C=>C())}),0)});function m(g,d=!1){if(g.nodeType!==1)return;let C=g;C.hasAttribute(c)&&C.removeAttribute(c),d&&C.querySelectorAll(`[${c}]`).forEach(R=>{R.removeAttribute(c)})}function y(g,d){let C=f.get(g);if(!C)if(C=t.createElement("style"),C.setAttribute("data-unocss-runtime-layer",g),f.set(g,C),d==null)p(C);else{let R=y(d),V=R.parentNode;V?V.insertBefore(C,R.nextSibling):p(C)}return C}async function E(){let g=[...b],d=await u.generate(g);return d.layers.reduce((R,V)=>(y(V,R).innerHTML=d.getLayer(V)??"",V),void 0),g.filter(R=>!d.matched.has(R)).forEach(R=>b.delete(R)),{...d,getStyleElement:R=>f.get(R),getStyleElements:()=>f}}async function x(g){let d=b.size;await u.applyExtractors(g,void 0,b),d!==b.size&&await P()}async function o(g=l()){let d=g&&g.outerHTML;d&&(await x(`${d} ${Ve(d)}`),m(r()),m(g,!0))}let h=new MutationObserver(g=>{S||g.forEach(async d=>{if(d.target.nodeType!==1)return;let C=d.target;for(let R of f)if(C===R[1])return;if(d.type==="childList")d.addedNodes.forEach(async R=>{if(R.nodeType!==1)return;let V=R;M&&!M(V)||(await x(V.outerHTML),m(V))});else{if(M&&!M(C))return;if(d.attributeName!==c){let R=Array.from(C.attributes).map(k=>k.value?`${k.name}="${k.value}"`:k.name).join(" "),V=`<${C.tagName.toLowerCase()} ${R}>`;await x(V)}m(C)}})}),v=!1;function $(){if(v)return;let g=i.observer?.target?i.observer.target():l();g&&(h.observe(g,{childList:!0,subtree:!0,attributes:!0,attributeFilter:i.observer?.attributeFilter}),v=!0)}function O(){i.bypassDefined&&qe(u.blocked),o(),$()}function D(){t.readyState==="loading"?e.addEventListener("DOMContentLoaded",O):O()}let B=e.__unocss_runtime=e.__unocss_runtime={version:u.version,uno:u,async extract(g){A(g)||(g.forEach(d=>b.add(d)),g=""),await x(g)},extractAll:o,inspect(g){M=g},toggleObserver(g){g===void 0?S=!S:S=!!g,!v&&!S&&D()},update:E,presets:e.__unocss_runtime?.presets??{}};i.ready?.(B)!==!1&&(S=!1,D())}function qe(n=new Set){for(let e=0;e<document.styleSheets.length;e++){let t=document.styleSheets[e],r;try{if(r=t.cssRules||t.rules,!r)continue;Array.from(r).flatMap(s=>s.selectorText?.split(/,/g)||[]).forEach(s=>{s&&(s=s.trim(),s.startsWith(".")&&(s=s.slice(1)),n.add(s))})}catch{continue}}return n}oe();})();
1
+ "use strict";(()=>{var G="default",N="preflights",Pe="shortcuts",je="imports",ce={[je]:-200,[N]:-100,[Pe]:-10,[G]:0};var le=/[\\:]?[\s'"`;{}]+/g;function _e(n){return n.split(le)}var z={name:"@unocss/core/extractor-split",order:0,extract({code:n}){return _e(n)}};function V(n=[]){return Array.isArray(n)?n:[n]}function _(n){return Array.from(new Set(n))}function te(n,e){return n.reduce((t,r)=>(t.findIndex(i=>e(r,i))===-1&&t.push(r),t),[])}function w(n){return typeof n=="string"}var H=class extends Set{_map;constructor(e){super(e),this._map??=new Map}add(e){return this._map??=new Map,this._map.set(e,(this._map.get(e)??0)+1),super.add(e)}delete(e){return this._map.delete(e),super.delete(e)}clear(){this._map.clear(),super.clear()}getCount(e){return this._map.get(e)??0}setCount(e,t){return this._map.set(e,t),super.add(e)}};function W(n){return n instanceof H}function Oe(n){let e=n.length,t=-1,r,s="",i=n.charCodeAt(0);for(;++t<e;){if(r=n.charCodeAt(t),r===0){s+="\uFFFD";continue}if(r===37){s+="\\%";continue}if(r===44){s+="\\,";continue}if(r>=1&&r<=31||r===127||t===0&&r>=48&&r<=57||t===1&&r>=48&&r<=57&&i===45){s+=`\\${r.toString(16)} `;continue}if(t===0&&e===1&&r===45){s+=`\\${n.charAt(t)}`;continue}if(r>=128||r===45||r===95||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122){s+=n.charAt(t);continue}s+=`\\${n.charAt(t)}`}return s}var Y=Oe;function ue(n){return typeof n=="function"?{match:n}:n}function ne(n){return n.length===3}function re(n){return n!=null}function fe(){}var q=class{_map=new Map;get(e,t){let r=this._map.get(e);if(r)return r.get(t)}getFallback(e,t,r){let s=this._map.get(e);return s||(s=new Map,this._map.set(e,s)),s.has(t)||s.set(t,r),s.get(t)}set(e,t,r){let s=this._map.get(e);return s||(s=new Map,this._map.set(e,s)),s.set(t,r),this}has(e,t){return this._map.get(e)?.has(t)}delete(e,t){return this._map.get(e)?.delete(t)||!1}deleteTop(e){return this._map.delete(e)}map(e){return Array.from(this._map.entries()).flatMap(([t,r])=>Array.from(r.entries()).map(([s,i])=>e(i,t,s)))}},Z=class extends Map{getFallback(e,t){let r=this.get(e);return r===void 0?(this.set(e,t),t):r}map(e){let t=[];return this.forEach((r,s)=>{t.push(e(r,s))}),t}flatMap(e){let t=[];return this.forEach((r,s)=>{t.push(...e(r,s))}),t}};function K(n){return w(n)?n:(Array.isArray(n)?n:Object.entries(n)).filter(e=>e[1]!=null)}function pe(n){return Array.isArray(n)?n.find(e=>!Array.isArray(e)||Array.isArray(e[0]))?n.map(e=>K(e)):[n]:[K(n)]}function ke(n){return n.filter(([e,t],r)=>{if(e.startsWith("$$"))return!1;for(let s=r-1;s>=0;s--)if(n[s][0]===e&&n[s][1]===t)return!1;return!0})}function Q(n){return n==null?"":ke(n).map(([e,t])=>t!=null&&typeof t!="function"?`${e}:${t};`:void 0).filter(Boolean).join("")}function J(n){return n&&typeof n=="object"&&!Array.isArray(n)}function se(n,e,t=!1){let r=n,s=e;if(Array.isArray(s))return t&&Array.isArray(s)?[...r,...s]:[...s];let i={...r};return J(r)&&J(s)&&Object.keys(s).forEach(a=>{J(r[a])&&J(s[a])||Array.isArray(r[a])&&Array.isArray(s[a])?i[a]=se(r[a],s[a],t):Object.assign(i,{[a]:s[a]})}),i}function B(n){let e,t,r;if(Array.isArray(n)){for(t=Array.from({length:e=n.length});e--;)t[e]=(r=n[e])&&typeof r=="object"?B(r):r;return t}if(Object.prototype.toString.call(n)==="[object Object]"){t={};for(e in n)e==="__proto__"?Object.defineProperty(t,e,{value:B(n[e]),configurable:!0,enumerable:!0,writable:!0}):t[e]=(r=n[e])&&typeof r=="object"?B(r):r;return t}return n}function de(n){return w(n[0])}function me(n){return w(n[0])}var X={};function Le(n=["-",":"]){let e=n.join("|");return X[e]||(X[e]=new RegExp(`((?:[!@<~\\w+:_/-]|\\[&?>?:?\\S*\\])+?)(${e})\\(((?:[~!<>\\w\\s:/\\\\,%#.$?-]|\\[.*?\\])+?)\\)(?!\\s*?=>)`,"gm")),X[e].lastIndex=0,X[e]}function De(n,e=["-",":"],t=5){let r=Le(e),s,i=n.toString(),a=new Set,c=new Map;do s=!1,i=i.replace(r,(p,l,f,x,S)=>{if(!e.includes(f))return p;s=!0,a.add(l+f);let v=S+l.length+f.length+1,M={length:p.length,items:[]};c.set(S,M);for(let T of[...x.matchAll(/\S+/g)]){let $=v+T.index,m=c.get($)?.items;m?c.delete($):m=[{offset:$,length:T[0].length,className:T[0]}];for(let g of m)g.className=g.className==="~"?l:g.className.replace(/^(!?)(.*)/,`$1${l}${f}$2`),M.items.push(g)}return"$".repeat(p.length)}),t-=1;while(s&&t);let u;if(typeof n=="string"){u="";let p=0;for(let[l,f]of c)u+=n.slice(p,l),u+=f.items.map(x=>x.className).join(" "),p=l+f.length;u+=n.slice(p)}else{u=n;for(let[p,l]of c)u.overwrite(p,p+l.length,l.items.map(f=>f.className).join(" "))}return{prefixes:Array.from(a),hasChanged:s,groupsByOffset:c,get expanded(){return u.toString()}}}function ge(n,e=["-",":"],t=5){let r=De(n,e,t);return typeof n=="string"?r.expanded:n}var he=new Set;function ye(n){he.has(n)||(console.warn("[unocss]",n),he.add(n))}function be(n){return V(n).flatMap(e=>Array.isArray(e)?[e]:Object.entries(e))}var xe="_uno_resolved";function Fe(n){let e=typeof n=="function"?n():n;if(xe in e)return e;e={...e},Object.defineProperty(e,xe,{value:!0,enumerable:!1});let t=e.shortcuts?be(e.shortcuts):void 0;if(e.shortcuts=t,e.prefix||e.layer){let r=s=>{s[2]||(s[2]={});let i=s[2];i.prefix==null&&e.prefix&&(i.prefix=V(e.prefix)),i.layer==null&&e.layer&&(i.layer=e.layer)};t?.forEach(r),e.rules?.forEach(r)}return e}function Ce(n){let e=Fe(n);if(!e.presets)return[e];let t=(e.presets||[]).flatMap(V).flatMap(Ce);return[e,...t]}function Ke(n){if(n.length===0)return{};let e=[],t=[],r=!1;for(let s of n)s.pipeline===!1?r=!0:(e.push(s.pipeline?.include??[]),t.push(s.pipeline?.exclude??[]));return{filesystem:_(n.flatMap(s=>s.filesystem??[])),inline:_(n.flatMap(s=>s.inline??[])),plain:_(n.flatMap(s=>s.plain??[])),pipeline:r?!1:{include:_(Se(...e)),exclude:_(Se(...t))}}}function ie(n={},e={}){let t=Object.assign({},e,n),r=te((t.presets||[]).flatMap(V).flatMap(Ce),(o,d)=>o.name===d.name),s=[...r.filter(o=>o.enforce==="pre"),...r.filter(o=>!o.enforce),...r.filter(o=>o.enforce==="post")],i=[...s,t],a=[...i].reverse(),c=Object.assign({},ce,...i.map(o=>o.layers));function u(o){return _(i.flatMap(d=>V(d[o]||[])))}let p=u("extractors"),l=a.find(o=>o.extractorDefault!==void 0)?.extractorDefault;l===void 0&&(l=z),l&&!p.includes(l)&&p.unshift(l),p.sort((o,d)=>(o.order||0)-(d.order||0));let f=u("rules"),x={},S=f.length,v=f.map((o,d)=>{if(de(o)){V(o[2]?.prefix||"").forEach(A=>{x[A+o[0]]=[d,o[1],o[2],o]});return}return[d,...o]}).filter(Boolean).reverse(),M=Ie(i.map(o=>o.theme)),T=u("extendTheme");for(let o of T)M=o(M)||M;let $={templates:_(i.flatMap(o=>V(o.autocomplete?.templates))),extractors:i.flatMap(o=>V(o.autocomplete?.extractors)).sort((o,d)=>(o.order||0)-(d.order||0)),shorthands:Ge(i.map(o=>o.autocomplete?.shorthands||{}))},m=u("separators");m.length||(m=[":","-"]);let g=u("content"),E=Ke(g),P={mergeSelectors:!0,warn:!0,sortLayers:o=>o,...t,blocklist:u("blocklist"),presets:s,envMode:t.envMode||"build",shortcutsLayer:t.shortcutsLayer||"shortcuts",layers:c,theme:M,rulesSize:S,rulesDynamic:v,rulesStaticMap:x,preprocess:u("preprocess"),postprocess:u("postprocess"),preflights:u("preflights"),autocomplete:$,variants:u("variants").map(ue).sort((o,d)=>(o.order||0)-(d.order||0)),shortcuts:be(u("shortcuts")).reverse(),extractors:p,safelist:u("safelist"),separators:m,details:t.details??t.envMode==="dev",content:E,transformers:te(u("transformers"),(o,d)=>o.name===d.name)};for(let o of i)o?.configResolved?.(P);return P}function Ie(n){return n.map(e=>e?B(e):{}).reduce((e,t)=>se(e,t),{})}function Ge(n){return n.reduce((e,t)=>{let r={};for(let s in t){let i=t[s];Array.isArray(i)?r[s]=`(${i.join("|")})`:r[s]=i}return{...e,...r}},{})}function Se(...n){return n.flatMap(He)}function He(n){return Array.isArray(n)?n:n?[n]:[]}var Te="0.63.0";function Ee(){return{events:{},emit(n,...e){(this.events[n]||[]).forEach(t=>t(...e))},on(n,e){return(this.events[n]=this.events[n]||[]).push(e),()=>this.events[n]=(this.events[n]||[]).filter(t=>t!==e)}}}var F={shortcutsNoMerge:"$$symbol-shortcut-no-merge",variants:"$$symbol-variants",parent:"$$symbol-parent",selector:"$$symbol-selector",layer:"$$symbol-layer"},oe=class{constructor(e={},t={}){this.userConfig=e;this.defaults=t;this.config=ie(e,t),this.events.emit("config",this.config)}version=Te;_cache=new Map;config;blocked=new Set;parentOrders=new Map;events=Ee();setConfig(e,t){e&&(t&&(this.defaults=t),this.userConfig=e,this.blocked.clear(),this.parentOrders.clear(),this._cache.clear(),this.config=ie(e,this.defaults),this.events.emit("config",this.config))}async applyExtractors(e,t,r=new Set){let s={original:e,code:e,id:t,extracted:r,envMode:this.config.envMode};for(let i of this.config.extractors){let a=await i.extract?.(s);if(a)if(W(a)&&W(r))for(let c of a)r.setCount(c,r.getCount(c)+a.getCount(c));else for(let c of a)r.add(c)}return r}makeContext(e,t){let r={rawSelector:e,currentSelector:t[1],theme:this.config.theme,generator:this,symbols:F,variantHandlers:t[2],constructCSS:(...s)=>this.constructCustomCSS(r,...s),variantMatch:t};return r}async parseToken(e,t){if(this.blocked.has(e))return;let r=`${e}${t?` ${t}`:""}`;if(this._cache.has(r))return this._cache.get(r);let s=e;for(let p of this.config.preprocess)s=p(e);if(this.isBlocked(s)){this.blocked.add(e),this._cache.set(r,null);return}let i=await this.matchVariants(e,s);if(!i||this.isBlocked(i[1])){this.blocked.add(e),this._cache.set(r,null);return}let a=this.makeContext(e,[t||i[0],i[1],i[2],i[3]]);this.config.details&&(a.variants=[...i[3]]);let c=await this.expandShortcut(a.currentSelector,a),u=c?await this.stringifyShortcuts(a.variantMatch,a,c[0],c[1]):(await this.parseUtil(a.variantMatch,a))?.map(p=>this.stringifyUtil(p,a)).filter(re);if(u?.length)return this._cache.set(r,u),u;this._cache.set(r,null)}async generate(e,t={}){let{id:r,scope:s,preflights:i=!0,safelist:a=!0,minify:c=!1,extendedInfo:u=!1}=t,p=this.config.outputToCssLayers,l=w(e)?await this.applyExtractors(e,r,u?new H:new Set):Array.isArray(e)?new Set(e):e;if(a){let o={generator:this,theme:this.config.theme};this.config.safelist.flatMap(d=>typeof d=="function"?d(o):d).forEach(d=>{l.has(d)||l.add(d)})}let f=c?"":`
2
+ `,x=new Set([G]),S=u?new Map:new Set,v=new Map,M={},T=Array.from(l).map(async o=>{if(S.has(o))return;let d=await this.parseToken(o);if(d!=null){S instanceof Map?S.set(o,{data:d,count:W(l)?l.getCount(o):-1}):S.add(o);for(let R of d){let A=R[3]||"",j=R[4]?.layer;v.has(A)||v.set(A,[]),v.get(A).push(R),j&&x.add(j)}}});await Promise.all(T),await(async()=>{if(!i)return;let o={generator:this,theme:this.config.theme},d=new Set([]);this.config.preflights.forEach(({layer:R=N})=>{x.add(R),d.add(R)}),M=Object.fromEntries(await Promise.all(Array.from(d).map(async R=>{let j=(await Promise.all(this.config.preflights.filter(k=>(k.layer||N)===R).map(async k=>await k.getCSS(o)))).filter(Boolean).join(f);return[R,j]})))})();let $=this.config.sortLayers(Array.from(x).sort((o,d)=>(this.config.layers[o]??0)-(this.config.layers[d]??0)||o.localeCompare(d))),m={},g=(o=G)=>{if(m[o])return m[o];let d=Array.from(v).sort((A,j)=>(this.parentOrders.get(A[0])??0)-(this.parentOrders.get(j[0])??0)||A[0]?.localeCompare(j[0]||"")||0).map(([A,j])=>{let k=j.length,I=j.filter(h=>(h[4]?.layer||G)===o).sort((h,b)=>h[0]-b[0]||(h[4]?.sort||0)-(b[4]?.sort||0)||h[5]?.currentSelector?.localeCompare(b[5]?.currentSelector??"")||h[1]?.localeCompare(b[1]||"")||h[2]?.localeCompare(b[2]||"")||0).map(([,h,b,,U,,L])=>[[[(h&&ze(h,s))??"",U?.sort??0]],b,!!(L??U?.noMerge)]);if(!I.length)return;let y=I.reverse().map(([h,b,U],L)=>{if(!U&&this.config.mergeSelectors)for(let D=L+1;D<k;D++){let O=I[D];if(O&&!O[2]&&(h&&O[0]||h==null&&O[0]==null)&&O[1]===b)return h&&O[0]&&O[0].push(...h),null}let ee=h?_(h.sort((D,O)=>D[1]-O[1]||D[0]?.localeCompare(O[0]||"")||0).map(D=>D[0]).filter(Boolean)):[];return ee.length?`${ee.join(`,${f}`)}{${b}}`:b}).filter(Boolean).reverse().join(f);if(!A)return y;let C=A.split(" $$ ");return`${C.join("{")}{${f}${y}${f}${"}".repeat(C.length)}`}).filter(Boolean).join(f);if(i&&(d=[M[o],d].filter(Boolean).join(f)),p&&d){let A=typeof p=="object"?p.cssLayerName?.(o):void 0;A!==null&&(A||(A=o),d=`@layer ${A}{${f}${d}${f}}`)}let R=c?"":`/* layer: ${o} */${f}`;return m[o]=d?R+d:""},E=(o=$,d)=>o.filter(R=>!d?.includes(R)).map(R=>g(R)||"").filter(Boolean).join(f);return{get css(){return E()},layers:$,matched:S,getLayers:E,getLayer:g,setLayer:async(o,d)=>{let R=await d(g(o));return m[o]=R,R}}}async matchVariants(e,t){let r=new Set,s=[],i=t||e,a=!0,c={rawSelector:e,theme:this.config.theme,generator:this};for(;a;){a=!1;for(let u of this.config.variants){if(!u.multiPass&&r.has(u))continue;let p=await u.match(i,c);if(p){if(w(p)){if(p===i)continue;p={matcher:p}}i=p.matcher??i,s.unshift(p),r.add(u),a=!0;break}}if(!a)break;if(s.length>500)throw new Error(`Too many variants applied to "${e}"`)}return[e,i,s,r]}applyVariants(e,t=e[4],r=e[1]){let i=t.slice().sort((p,l)=>(p.order||0)-(l.order||0)).reduceRight((p,l)=>f=>{let x=l.body?.(f.entries)||f.entries,S=Array.isArray(l.parent)?l.parent:[l.parent,void 0];return(l.handle??Ye)({...f,entries:x,selector:l.selector?.(f.selector,x)||f.selector,parent:S[0]||f.parent,parentOrder:S[1]||f.parentOrder,layer:l.layer||f.layer,sort:l.sort||f.sort},p)},p=>p)({prefix:"",selector:We(r),pseudo:"",entries:e[2]}),{parent:a,parentOrder:c}=i;a!=null&&c!=null&&this.parentOrders.set(a,c);let u={selector:[i.prefix,i.selector,i.pseudo].join(""),entries:i.entries,parent:a,layer:i.layer,sort:i.sort,noMerge:i.noMerge};for(let p of this.config.postprocess)p(u);return u}constructCustomCSS(e,t,r){let s=K(t);if(w(s))return s;let{selector:i,entries:a,parent:c}=this.applyVariants([0,r||e.rawSelector,s,void 0,e.variantHandlers]),u=`${i}{${Q(a)}}`;return c?`${c}{${u}}`:u}async parseUtil(e,t,r=!1,s){let[i,a,c]=w(e)?await this.matchVariants(e):e;this.config.details&&(t.rules=t.rules??[]);let u=this.config.rulesStaticMap[a];if(u&&u[1]&&(r||!u[2]?.internal)){this.config.details&&t.rules.push(u[3]);let l=u[0],f=K(u[1]),x=u[2];return w(f)?[[l,f,x]]:[[l,i,f,x,c]]}t.variantHandlers=c;let{rulesDynamic:p}=this.config;for(let[l,f,x,S]of p){if(S?.internal&&!r)continue;let v=a;if(S?.prefix){let m=V(S.prefix);if(s){let g=V(s);if(!m.some(E=>g.includes(E)))continue}else{let g=m.find(E=>a.startsWith(E));if(g==null)continue;v=a.slice(g.length)}}let M=v.match(f);if(!M)continue;let T=await x(M,t);if(!T)continue;if(this.config.details&&t.rules.push([f,x,S]),typeof T!="string")if(Symbol.asyncIterator in T){let m=[];for await(let g of T)g&&m.push(g);T=m}else Symbol.iterator in T&&!Array.isArray(T)&&(T=Array.from(T).filter(re));let $=pe(T).filter(m=>m.length);if($.length)return $.map(m=>{if(w(m))return[l,m,S];let g=c;for(let E of m)E[0]===F.variants?g=[...V(E[1]),...g]:E[0]===F.parent?g=[{parent:E[1]},...g]:E[0]===F.selector?g=[{selector:E[1]},...g]:E[0]===F.layer&&(g=[{layer:E[1]},...g]);return[l,i,m,S,g]})}}stringifyUtil(e,t){if(!e)return;if(ne(e))return[e[0],void 0,e[1],void 0,e[2],this.config.details?t:void 0,void 0];let{selector:r,entries:s,parent:i,layer:a,sort:c,noMerge:u}=this.applyVariants(e),p=Q(s);if(!p)return;let{layer:l,sort:f,...x}=e[3]??{},S={...x,layer:a??l,sort:c??f};return[e[0],r,p,i,S,this.config.details?t:void 0,u]}async expandShortcut(e,t,r=5){if(r===0)return;let s=this.config.details?c=>{t.shortcuts=t.shortcuts??[],t.shortcuts.push(c)}:fe,i,a;for(let c of this.config.shortcuts){let u=e;if(c[2]?.prefix){let l=V(c[2].prefix).find(f=>e.startsWith(f));if(l==null)continue;u=e.slice(l.length)}if(me(c)){if(c[0]===u){i=i||c[2],a=c[1],s(c);break}}else{let p=u.match(c[0]);if(p&&(a=c[1](p,t)),a){i=i||c[2],s(c);break}}}if(a&&(a=V(a).map(c=>w(c)?ge(c.trim()).split(/\s+/g):c).flat()),!a){let[c,u]=w(e)?await this.matchVariants(e):e;if(c!==u){let p=await this.expandShortcut(u,t,r-1);p&&(a=p[0].map(l=>w(l)?c.replace(u,l):l))}}if(a)return[(await Promise.all(a.map(async c=>(w(c)?(await this.expandShortcut(c,t,r-1))?.[0]:void 0)||[c]))).flat(1).filter(Boolean),i]}async stringifyShortcuts(e,t,r,s={layer:this.config.shortcutsLayer}){let i=new Z,a=(await Promise.all(_(r).map(async l=>{let f=w(l)?await this.parseUtil(l,t,!0,s.prefix):[[Number.POSITIVE_INFINITY,"{inline}",K(l),void 0,[]]];return!f&&this.config.warn&&ye(`unmatched utility "${l}" in shortcut "${e[1]}"`),f||[]}))).flat(1).filter(Boolean).sort((l,f)=>l[0]-f[0]),[c,,u]=e,p=[];for(let l of a){if(ne(l)){p.push([l[0],void 0,l[1],void 0,l[2],t,void 0]);continue}let{selector:f,entries:x,parent:S,sort:v,noMerge:M,layer:T}=this.applyVariants(l,[...l[4],...u],c);i.getFallback(T??s.layer,new q).getFallback(f,S,[[],l[0]])[0].push([x,!!(M??l[3]?.noMerge),v??0])}return p.concat(i.flatMap((l,f)=>l.map(([x,S],v,M)=>{let T=(m,g,E)=>{let P=Math.max(...E.map(d=>d[1])),o=E.map(d=>d[0]);return(m?[o.flat(1)]:o).map(d=>{let R=Q(d);if(R)return[S,v,R,M,{...s,noMerge:g,sort:P,layer:f},t,void 0]})};return[[x.filter(([,m])=>m).map(([m,,g])=>[m,g]),!0],[x.filter(([,m])=>!m).map(([m,,g])=>[m,g]),!1]].map(([m,g])=>[...T(!1,g,m.filter(([E])=>E.some(P=>P[0]===F.shortcutsNoMerge))),...T(!0,g,m.filter(([E])=>E.every(P=>P[0]!==F.shortcutsNoMerge)))])}).flat(2).filter(Boolean)))}isBlocked(e){return!e||this.config.blocklist.map(t=>Array.isArray(t)?t[0]:t).some(t=>typeof t=="function"?t(e):w(t)?t===e:t.test(e))}getBlocked(e){let t=this.config.blocklist.find(r=>{let s=Array.isArray(r)?r[0]:r;return typeof s=="function"?s(e):w(s)?s===e:s.test(e)});return t?Array.isArray(t)?t:[t,void 0]:void 0}};function ve(n,e){return new oe(n,e)}var Me=/\s\$\$\s+/g;function Ne(n){return Me.test(n)}function ze(n,e){return Ne(n)?n.replace(Me,e?` ${e} `:" "):e?`${e} ${n}`:n}var Re=/^\[(.+?)(~?=)"(.*)"\]$/;function We(n){return Re.test(n)?n.replace(Re,(e,t,r,s)=>`[${Y(t)}${r}"${Y(s)}"]`):`.${Y(n)}`}function Ye(n,e){return e(n)}function qe(n){return n.replace(/-(\w)/g,(e,t)=>t?t.toUpperCase():"")}function we(n){return n.charAt(0).toUpperCase()+n.slice(1)}function Ae(n){return n.replace(/(?:^|\B)([A-Z])/g,"-$1").toLowerCase()}var Ue=["Webkit","Moz","ms"];function Ve(n){let e={};function t(r){let s=e[r];if(s)return s;let i=qe(r);if(i!=="filter"&&i in n)return e[r]=Ae(i);i=we(i);for(let a=0;a<Ue.length;a++){let c=`${Ue[a]}${i}`;if(c in n)return e[r]=Ae(we(c))}return r}return({entries:r})=>r.forEach(s=>{s[0].startsWith("--")||(s[0]=t(s[0]))})}function $e(n){return n.replace(/&amp;/g,"&").replace(/&gt;/g,">").replace(/&lt;/g,"<")}function ae(n={}){if(typeof window>"u"){console.warn("@unocss/runtime been used in non-browser environment, skipped.");return}let e=window,t=window.document,r=()=>t.documentElement,s=e.__unocss||{},i=Object.assign({},n,s.runtime),a=i.defaults||{},c=i.cloakAttribute??"un-cloak";i.autoPrefix&&(a.postprocess=V(a.postprocess)).unshift(Ve(t.createElement("div").style)),i.configResolved?.(s,a);let u=ve(s,a),p=y=>i.inject?i.inject(y):r().prepend(y),l=()=>i.rootElement?i.rootElement():t.body,f=new Map,x=!0,S=new Set,v,M,T=[],$=()=>new Promise(y=>{T.push(y),M!=null&&clearTimeout(M),M=setTimeout(()=>E().then(()=>{let C=T;T=[],C.forEach(h=>h())}),0)});function m(y,C=!1){if(y.nodeType!==1)return;let h=y;h.hasAttribute(c)&&h.removeAttribute(c),C&&h.querySelectorAll(`[${c}]`).forEach(b=>{b.removeAttribute(c)})}function g(y,C){let h=f.get(y);if(!h)if(h=t.createElement("style"),h.setAttribute("data-unocss-runtime-layer",y),f.set(y,h),C==null)p(h);else{let b=g(C),U=b.parentNode;U?U.insertBefore(h,b.nextSibling):p(h)}return h}async function E(){let y=[...S],C=await u.generate(y);return C.layers.reduce((b,U)=>(g(U,b).innerHTML=C.getLayer(U)??"",U),void 0),y.filter(b=>!C.matched.has(b)).forEach(b=>S.delete(b)),{...C,getStyleElement:b=>f.get(b),getStyleElements:()=>f}}async function P(y){let C=S.size;await u.applyExtractors(y,void 0,S),C!==S.size&&await $()}async function o(y=l()){let C=y&&y.outerHTML;C&&(await P(`${C} ${$e(C)}`),m(r()),m(y,!0))}let d=new MutationObserver(y=>{x||y.forEach(async C=>{if(C.target.nodeType!==1)return;let h=C.target;for(let b of f)if(h===b[1])return;if(C.type==="childList")C.addedNodes.forEach(async b=>{if(b.nodeType!==1)return;let U=b;v&&!v(U)||(await P(U.outerHTML),m(U))});else{if(v&&!v(h))return;if(C.attributeName!==c){let b=Array.from(h.attributes).map(L=>L.value?`${L.name}="${L.value}"`:L.name).join(" "),U=`<${h.tagName.toLowerCase()} ${b}>`;await P(U)}m(h)}})}),R=!1;function A(){if(R)return;let y=i.observer?.target?i.observer.target():l();y&&(d.observe(y,{childList:!0,subtree:!0,attributes:!0,attributeFilter:i.observer?.attributeFilter}),R=!0)}function j(){i.bypassDefined&&Ze(u.blocked),o(),A()}function k(){t.readyState==="loading"?e.addEventListener("DOMContentLoaded",j):j()}let I=e.__unocss_runtime=e.__unocss_runtime={version:u.version,uno:u,async extract(y){w(y)||(y.forEach(C=>S.add(C)),y=""),await P(y)},extractAll:o,inspect(y){v=y},toggleObserver(y){y===void 0?x=!x:x=!!y,!R&&!x&&k()},update:E,presets:e.__unocss_runtime?.presets??{}};i.ready?.(I)!==!1&&(x=!1,k())}function Ze(n=new Set){for(let e=0;e<document.styleSheets.length;e++){let t=document.styleSheets[e],r;try{if(r=t.cssRules||t.rules,!r)continue;Array.from(r).flatMap(s=>s.selectorText?.split(/,/g)||[]).forEach(s=>{s&&(s=s.trim(),s.startsWith(".")&&(s=s.slice(1)),n.add(s))})}catch{continue}}return n}ae();})();
package/dist/index.d.ts CHANGED
@@ -1,5 +1,10 @@
1
1
  import { UserConfig, GenerateResult, UserConfigDefaults, UnoGenerator } from '@unocss/core';
2
+ import { Theme } from '@unocss/preset-uno';
2
3
 
4
+ /**
5
+ * Define UnoCSS config
6
+ */
7
+ declare function defineConfig<T extends object = Theme>(config: UserConfig<T>): UserConfig<T>;
3
8
  interface RuntimeGenerateResult extends GenerateResult {
4
9
  getStyleElement: (name: string) => HTMLStyleElement | undefined;
5
10
  getStyleElements: () => Map<string, HTMLStyleElement>;
@@ -123,4 +128,4 @@ declare global {
123
128
  }
124
129
  declare function init(inlineConfig?: RuntimeOptions): void;
125
130
 
126
- export { type RuntimeContext, type RuntimeGenerateResult, type RuntimeInspectorCallback, type RuntimeObserverConfig, type RuntimeOptions, init as default };
131
+ export { type RuntimeContext, type RuntimeGenerateResult, type RuntimeInspectorCallback, type RuntimeObserverConfig, type RuntimeOptions, init as default, defineConfig };
package/dist/index.js CHANGED
@@ -39,6 +39,9 @@ function decodeHtml(html) {
39
39
  }
40
40
 
41
41
  // src/index.ts
42
+ function defineConfig(config) {
43
+ return config;
44
+ }
42
45
  function init(inlineConfig = {}) {
43
46
  if (typeof window == "undefined") {
44
47
  console.warn("@unocss/runtime been used in non-browser environment, skipped.");
@@ -248,5 +251,6 @@ function getDefinedCssSelectors(selectors = /* @__PURE__ */ new Set()) {
248
251
  return selectors;
249
252
  }
250
253
  export {
251
- init as default
254
+ init as default,
255
+ defineConfig
252
256
  };