@unocss/runtime 66.7.0-beta.1 → 66.7.2-beta.1
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/attributify.global.js +15 -11
- package/core.global.js +2 -2
- package/dist/index.d.ts +115 -114
- package/dist/index.js +214 -246
- package/full.global.js +15 -11
- package/mini.global.js +15 -11
- package/package.json +6 -12
- package/preset-attributify.global.js +1 -1
- package/preset-icons.global.js +1 -28
- package/preset-mini.global.js +14 -10
- package/preset-rem-to-px.global.js +1 -1
- package/preset-tagify.global.js +1 -1
- package/preset-typography.global.js +1 -1
- package/preset-uno.global.js +14 -10
- package/preset-web-fonts.global.js +5 -7
- package/preset-wind.global.js +14 -10
- package/preset-wind3.global.js +14 -10
- package/preset-wind4.global.js +18 -14
- package/uno.global.js +15 -11
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
(function(){function e(e=[]){return Array.isArray(e)?e:[e]}function t(e){return e&&typeof e==`object`&&!Array.isArray(e)}function n(e,r,i=!1){let a=e,o=r;if(Array.isArray(o))return i&&Array.isArray(o)?[...a,...o]:[...o];let s={...a};return t(a)&&t(o)&&Object.keys(o).forEach(e=>{t(a[e])&&t(o[e])||Array.isArray(a[e])&&Array.isArray(o[e])?s[e]=n(a[e],o[e],i):Object.assign(s,{[e]:o[e]})}),s}function r(e,t){return{name:e,getImportUrl(e){return`${t}/css?family=${e.map(e=>{let{name:t,weights:n,italic:r}=e,i=t.toLowerCase().replace(/\s/g,`-`);if(!n?.length)return`${i}${r?`:i`:``}`;let a=n.map(e=>e.toString());return!a.some(e=>e.endsWith(`i`))&&r&&(a=a.map(e=>e+=`i`)),`${i}:${a.join(`,`)}`}).join(`|`)}&display=swap`}}}let i=r(`bunny`,`https://fonts.bunny.net`);function a(e){if(!e||e.length===0)return``;let t=[[]];for(let{values:n}of e){let e=[];for(let r of t)for(let t of n)e.push([...r,t]);t=e}return t.map(e=>e.join(`,`)).join(`;`)}function o(e,t){return{name:e,getImportUrl(e){return`${t}/css2?${e.map(e=>{let t=e.name.replace(/\s+/g,`+`),n=[];return e.italic&&n.push({axis:`ital`,values:[`0`,`1`]}),e.widths?.length&&n.push({axis:`wdth`,values:e.widths.map(e=>e.toString())}),e.weights?.length&&n.push({axis:`wght`,values:e.weights.map(e=>e.toString())}),n.length&&(t+=`:`,t+=n.map(e=>e.axis).join(`,`),t+=`@`,t+=a(n)),`family=${t}`}).join(`&`)}&display=swap`}}}let s=o(`google`,`https://fonts.googleapis.com`),c=o(`coollabs`,`https://api.fonts.coollabs.io`),l=u(`fontshare`,`https://api.fontshare.com`);function u(e,t){return{name:e,getImportUrl(e){return`${t}/v2/css?${e.map(e=>{let t=e.name.replace(/\s+/g,`-`).toLocaleLowerCase();return e.weights?.length?t+=`@${e.weights.flatMap(t=>e.italic?Number(t)+1:t).sort().join()}`:t+=`@${e.italic?2:1}`,`f[]=${t}`}).join(`&`)}&display=swap`}}}function d(e,t){let r=new Map,i=new Map;return{name:e,async getPreflight(e,a){return(await Promise.all(e.map(async e=>{let o=[],s=e.name.toLowerCase().replace(/\s+/g,`-`),c=r.get(s);if(!c){let t=`https://api.fontsource.org/v1/fonts/${s}`;try{c=await a(t),r.set(s,c)}catch{throw Error(`Failed to fetch font: ${e.name}`)}}let{weights:l,unicodeRange:u,variants:d,family:f}=c,m=c.subsets.filter(t=>e.subsets?e.subsets.includes(t):!0),h=e.italic?`italic`:`normal`;if(c.variable&&!e.preferStatic){let r=i.get(s),l=`https://api.fontsource.org/v1/variable/${s}`;try{r=await a(l),i.set(s,r)}catch{throw Error(`Failed to fetch font variable: ${e.name}`)}let d=n(r.axes,e.variable??{});for(let e of m)if(u[e]){let n={family:f,display:`swap`,style:h,weight:400,src:[{url:`${t}/fontsource/fonts/${c.id}:vf@latest/${e}-wght-${h}.woff2`,format:`woff2-variations`}],variable:{wght:d.wght??void 0,wdth:d.wdth??void 0,slnt:d.slnt??void 0},unicodeRange:u[e],comment:`${c.id}-${e}-wght-normal`};o.push(p(n))}else Object.entries(u).filter(([e])=>!c.subsets.includes(e)).forEach(([e,n])=>{let r={family:f,display:`swap`,style:h,weight:400,src:[{url:`${t}/fontsource/fonts/${c.id}:vf@latest/${e.slice(1,-1)}-wght-${h}.woff2`,format:`woff2-variations`}],variable:{wght:d.wght??void 0,wdth:d.wdth??void 0,slnt:d.slnt??void 0},unicodeRange:n,comment:`${c.id}-${e}-wght-normal`};o.push(p(r))})}else{let t=e.weights&&e.weights.length>0?e.weights:l;for(let e of m)for(let n of t){let t=d[n][h][e].url,r={family:f,display:`swap`,style:h,weight:Number(n),src:[{url:t.woff2,format:`woff2`}],unicodeRange:u[e],comment:`${c.id}-${e}-${n}-${h}`};o.push(p(r))}}return o}))).flat().join(`
|
|
2
2
|
|
|
3
|
-
`)}}}
|
|
4
|
-
`}=e,{wght:u,wdth:d,slnt:
|
|
5
|
-
${
|
|
6
|
-
|
|
7
|
-
`)}}}var V=q("zeoseven","https://fontsapi.zeoseven.com");var X={google:E,bunny:R,fontshare:L,fontsource:N,coollabs:W,none:k,zeoseven:V};function T(e){return typeof e=="string"?X[e]:e}function J(e,n){if(typeof e!="string")return e.provider=T(e.provider||n),e.weights&&(e.weights=[...new Set(e.weights.sort((t,s)=>t.toString().localeCompare(s.toString(),"en",{numeric:!0})))]),e.widths&&(e.widths=[...new Set(e.widths.sort((t,s)=>t.toString().localeCompare(s.toString(),"en",{numeric:!0})))]),e;let[c,a=""]=e.split(":");return{name:c,weights:[...new Set(a.split(/[,;]\s*/).filter(Boolean).sort((t,s)=>t.localeCompare(s,"en",{numeric:!0})))],provider:T(n)}}function U(e){return(n={})=>{let{provider:c="google",extendTheme:a=!0,inlineImports:t=!0,customFetch:s=e,timeouts:o={}}=n,i="fonts",y=t?i:M,f=C(n.processors||[]),u=Object.fromEntries(Object.entries(n.fonts||{}).map(([r,l])=>[r,C(l).map(p=>J(p,c))])),d=Object.values(u).flatMap(r=>r),b={};async function g(r){if(o===!1)return s(r);let{warning:l=1e3,failure:p=2e3}=o,h=!1,v=setTimeout(()=>{console.warn(`[unocss] Fetching web fonts: ${r}`),h=!0},l);return await Promise.race([s(r),new Promise((m,w)=>{setTimeout(()=>w(new Error("[unocss] Fetch web fonts timeout.")),p)})]).then(m=>(h&&console.info("[unocss] Web fonts fetched."),m)).finally(()=>clearTimeout(v))}async function x(r){return t?(b[r]||(b[r]=g(r).catch(l=>{if(console.error(`[unocss] Failed to fetch web fonts: ${r}`),console.error(l),typeof process<"u"&&process.env.CI)throw l})),await b[r]):`@import url('${r}');`}let P=Array.from(new Set(d.map(r=>r.provider)));async function S(r,l){let p=[];for(let v of l){let m=r.filter(w=>w.provider.name===v.name);if(v.getImportUrl){let w=v.getImportUrl(m);w&&p.push(await x(w))}try{p.push(await v.getPreflight?.(m,g))}catch(w){console.warn("[unocss] Web fonts preflight fetch failed.",w)}}return p.filter(Boolean).join(`
|
|
8
|
-
`)}let $={name:"@unocss/preset-web-fonts",preflights:[{async getCSS(){let r;for(let l of f){let p=await l.getCSS?.(d,P,S);if(p){r=p;break}}r||(r=await S(d,P));for(let l of f)r=await l.transformCSS?.(r)||r;return r},layer:y}],layers:{[i]:-200}};return a&&($.extendTheme=(r,l)=>{let p=l.presets.some(m=>m.name==="@unocss/preset-wind4"),h=n.themeKey??(p?"font":"fontFamily");r[h]||(r[h]={});let v=Object.fromEntries(Object.entries(u).map(([m,w])=>[m,w.map(A=>A.provider.getFontName?.(A)??`"${A.name}"`)]));for(let m of Object.keys(v))typeof r[h][m]=="string"?r[h][m]=v[m].map(w=>`${w},`).join("")+r[h][m]:r[h][m]=v[m].join(",")}),$}}window.__unocss_runtime=window.__unocss_runtime??{};window.__unocss_runtime.presets=Object.assign(window.__unocss_runtime?.presets??{},(()=>{let e=U(n=>fetch(n).then(c=>c.json()));return{presetWebFonts:n=>e(n)}})());})();
|
|
3
|
+
`)}}}let f=d(`fontsource`,`https://cdn.jsdelivr.net`);function p(e){let{family:t,style:n,display:r,weight:i,variable:a,src:o,unicodeRange:s,comment:c,spacer:l=`
|
|
4
|
+
`}=e,{wght:u,wdth:d,slnt:f}=a??{},p=`@font-face {`;return p+=`${l}font-family: '${t}';`,p+=`${l}font-style: ${f?`oblique ${Number(f.max)*-1}deg ${Number(f.min)*-1}deg`:n};`,p+=`${l}font-display: ${r};`,p+=`${l}font-weight: ${u?m(u):i};`,d&&(p+=`${l}font-stretch: ${d.min}% ${d.max}%;`),p+=`${l}src: ${o.map(({url:e,format:t})=>`url(${e}) format('${t}')`).join(`, `)};`,s&&(p+=`${l}unicode-range: ${s};`),c&&(p=`/* ${c} */\n${p}`),`${p}\n}`}function m(e){return e?e.min===e.max?`${e.min}`:`${e.min} ${e.max}`:`400`}let h={name:`none`,getPreflight(){return``},getFontName(e){return e.name}};function g(e){let t=e.lastIndexOf(`@`);if(t===-1)throw Error(`[unocss] ZeoSeven provider requires font ID in format "FontFamily@id", e.g. "LXGW WenKai@292". Got: "${e}"`);return{family:e.slice(0,t).trim(),id:e.slice(t+1).trim()}}function _(e,t){return{name:e,getFontName(e){let{family:t}=g(e.name);return`"${t}"`},async getPreflight(e,n){let r=[];for(let i of e){let{id:e}=g(i.name),a=`${t}/${e}/main/`,o=`${a}result.css`;try{let e=(await n(o)).replace(/url\("\.\/([^"]+)"\)/g,`url("${a}$1")`);r.push(e)}catch{throw Error(`[unocss] Failed to fetch ZeoSeven font CSS for ID "${e}"`)}}return r.join(`
|
|
5
|
+
`)}}}let v={google:s,bunny:i,fontshare:l,fontsource:f,coollabs:c,none:h,zeoseven:_(`zeoseven`,`https://fontsapi.zeoseven.com`)};function y(e){return typeof e==`string`?v[e]:e}function b(e,t){if(typeof e!=`string`)return e.provider=y(e.provider||t),e.weights&&=[...new Set(e.weights.sort((e,t)=>e.toString().localeCompare(t.toString(),`en`,{numeric:!0})))],e.widths&&=[...new Set(e.widths.sort((e,t)=>e.toString().localeCompare(t.toString(),`en`,{numeric:!0})))],e;let[n,r=``]=e.split(`:`);return{name:n,weights:[...new Set(r.split(/[,;]\s*/).filter(Boolean).sort((e,t)=>e.localeCompare(t,`en`,{numeric:!0})))],provider:y(t)}}function x(t){return(n={})=>{let{provider:r=`google`,extendTheme:i=!0,inlineImports:a=!0,customFetch:o=t,timeouts:s={}}=n,c=`fonts`,l=a?c:`imports`,u=e(n.processors||[]),d=Object.fromEntries(Object.entries(n.fonts||{}).map(([t,n])=>[t,e(n).map(e=>b(e,r))])),f=Object.values(d).flatMap(e=>e),p={};async function m(e){if(s===!1)return o(e);let{warning:t=1e3,failure:n=2e3}=s,r=!1,i=setTimeout(()=>{console.warn(`[unocss] Fetching web fonts: ${e}`),r=!0},t);return await Promise.race([o(e),new Promise((e,t)=>{setTimeout(()=>t(Error(`[unocss] Fetch web fonts timeout.`)),n)})]).then(e=>(r&&console.info(`[unocss] Web fonts fetched.`),e)).finally(()=>clearTimeout(i))}async function h(e){return a?(p[e]||(p[e]=m(e).catch(t=>{if(console.error(`[unocss] Failed to fetch web fonts: ${e}`),console.error(t),typeof process<`u`&&process.env.CI)throw t})),await p[e]):`@import url('${e}');`}let g=Array.from(new Set(f.map(e=>e.provider)));async function _(e,t){let n=[];for(let r of t){let t=e.filter(e=>e.provider.name===r.name);if(r.getImportUrl){let e=r.getImportUrl(t);e&&n.push(await h(e))}try{n.push(await r.getPreflight?.(t,m))}catch(e){console.warn(`[unocss] Web fonts preflight fetch failed.`,e)}}return n.filter(Boolean).join(`
|
|
6
|
+
`)}let v={name:`@unocss/preset-web-fonts`,preflights:[{async getCSS(){let e;for(let t of u){let n=await t.getCSS?.(f,g,_);if(n){e=n;break}}e||=await _(f,g);for(let t of u)e=await t.transformCSS?.(e)||e;return e},layer:l}],layers:{[c]:-200}};return i&&(v.extendTheme=(e,t)=>{let r=t.presets.some(e=>e.name===`@unocss/preset-wind4`),i=n.themeKey??(r?`font`:`fontFamily`);e[i]||(e[i]={});let a=Object.fromEntries(Object.entries(d).map(([e,t])=>[e,t.map(e=>e.provider.getFontName?.(e)??`"${e.name}"`)]));for(let t of Object.keys(a))typeof e[i][t]==`string`?e[i][t]=a[t].map(e=>`${e},`).join(``)+e[i][t]:e[i][t]=a[t].join(`,`)}),v}}window.__unocss_runtime=window.__unocss_runtime??{},window.__unocss_runtime.presets=Object.assign(window.__unocss_runtime?.presets??{},(()=>{let e=x(e=>fetch(e).then(e=>e.json()));return{presetWebFonts:t=>e(t)}})())})();
|