@visulima/rollup-plugin-css 1.0.0-alpha.2 → 1.0.0-alpha.3
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/CHANGELOG.md +10 -0
- package/dist/index.mjs +1 -1
- package/dist/loaders/postcss/index.mjs +1 -1
- package/dist/packem_shared/inferModeOption-fAc592HP.mjs +1 -0
- package/dist/packem_shared/{rollupCssPlugin-BTt64HIx.mjs → rollupCssPlugin-CJSS-7Mi.mjs} +1 -1
- package/dist/utils/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/packem_shared/inferModeOption-BWjmFhVF.mjs +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
## @visulima/rollup-plugin-css [1.0.0-alpha.3](https://github.com/visulima/packem/compare/@visulima/rollup-plugin-css@1.0.0-alpha.2...@visulima/rollup-plugin-css@1.0.0-alpha.3) (2025-09-03)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* update .gitignore and enhance tests for CSS processing ([4e706a2](https://github.com/visulima/packem/commit/4e706a267ee2d7b9a89796b7227ae65f80823b71))
|
|
6
|
+
|
|
7
|
+
### Miscellaneous Chores
|
|
8
|
+
|
|
9
|
+
* update dependencies and versions in package.json and pnpm-lock.yaml ([df62809](https://github.com/visulima/packem/commit/df628094fc6fd5e79cbb939a61bab79d6c89b833))
|
|
10
|
+
|
|
1
11
|
## @visulima/rollup-plugin-css [1.0.0-alpha.2](https://github.com/visulima/packem/compare/@visulima/rollup-plugin-css@1.0.0-alpha.1...@visulima/rollup-plugin-css@1.0.0-alpha.2) (2025-09-01)
|
|
2
12
|
|
|
3
13
|
### Features
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{default as e}from"./packem_shared/cssModulesTypesPlugin-B9_bJo_B.mjs";import{default as u}from"./packem_shared/rollupCssPlugin-
|
|
1
|
+
import{default as e}from"./packem_shared/cssModulesTypesPlugin-B9_bJo_B.mjs";import{default as u}from"./packem_shared/rollupCssPlugin-CJSS-7Mi.mjs";export{e as cssModulesTypesPlugin,u as rollupCssPlugin};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var ke=Object.defineProperty;var d=(t,e)=>ke(t,"name",{value:e,configurable:!0});import Se from"@csstools/postcss-slow-plugins";import{dirname as b,normalize as O,parse as J,resolve as Pe,basename as N,isAbsolute as Oe,join as Ee}from"@visulima/path";import Re from"postcss";import{g as Ie}from"../../packem_shared/generate-js-exports-Dqps7nWG.mjs";import{H as U,m as C,D as Ce,F as te}from"../../packem_shared/sourcemap-DGfgaUBb.mjs";import{n as ie}from"../../packem_shared/ensure-auto-modules-BU3xWEjl.mjs";import{extractICSS as Ne,replaceSymbols as Ue,replaceValueSymbols as Le}from"icss-utils";import{readFile as ze,readFileSync as le}from"@visulima/fs";import{resolve as Q}from"../../packem_shared/resolve-nqhcPNJ9.mjs";import{isRelative as De}from"@visulima/path/utils";import{isWhiteSpaceOrCommentNode as G,isSimpleBlockNode as _e,SimpleBlockNode as We,parseListOfComponentValues as Me,isTokenNode as W,isFunctionNode as I,stringify as S}from"@csstools/css-parser-algorithms";import{isTokenOpenParen as qe,TokenType as ae,tokenize as Te,isTokenString as M,isTokenURL as se,isTokenIdent as Fe}from"@csstools/css-tokenizer";import{findMonorepoRoot as Ae,findPackageRoot as Ge}from"@visulima/package";import Xe from"postcss-load-config";import{ensurePCSSPlugins as Be,ensurePCSSOption as q}from"../../packem_shared/inferModeOption-
|
|
1
|
+
var ke=Object.defineProperty;var d=(t,e)=>ke(t,"name",{value:e,configurable:!0});import Se from"@csstools/postcss-slow-plugins";import{dirname as b,normalize as O,parse as J,resolve as Pe,basename as N,isAbsolute as Oe,join as Ee}from"@visulima/path";import Re from"postcss";import{g as Ie}from"../../packem_shared/generate-js-exports-Dqps7nWG.mjs";import{H as U,m as C,D as Ce,F as te}from"../../packem_shared/sourcemap-DGfgaUBb.mjs";import{n as ie}from"../../packem_shared/ensure-auto-modules-BU3xWEjl.mjs";import{extractICSS as Ne,replaceSymbols as Ue,replaceValueSymbols as Le}from"icss-utils";import{readFile as ze,readFileSync as le}from"@visulima/fs";import{resolve as Q}from"../../packem_shared/resolve-nqhcPNJ9.mjs";import{isRelative as De}from"@visulima/path/utils";import{isWhiteSpaceOrCommentNode as G,isSimpleBlockNode as _e,SimpleBlockNode as We,parseListOfComponentValues as Me,isTokenNode as W,isFunctionNode as I,stringify as S}from"@csstools/css-parser-algorithms";import{isTokenOpenParen as qe,TokenType as ae,tokenize as Te,isTokenString as M,isTokenURL as se,isTokenIdent as Fe}from"@csstools/css-tokenizer";import{findMonorepoRoot as Ae,findPackageRoot as Ge}from"@visulima/package";import Xe from"postcss-load-config";import{ensurePCSSPlugins as Be,ensurePCSSOption as q}from"../../packem_shared/inferModeOption-fAc592HP.mjs";import He from"postcss-modules-extract-imports";import Ve from"postcss-modules-local-by-default";import Je from"postcss-modules-scope";import Qe from"postcss-modules-values";import{makeLegalIdentifier as Ye}from"@rollup/pluginutils";import{getHash as ce}from"@visulima/packem-share/utils";import X from"postcss-value-parser";var Ke=Object.defineProperty,Ze=d((t,e)=>Ke(t,"name",{value:e,configurable:!0}),"i$5");const et=Ze(async(t,e,i,a,s)=>{const o=Q([t,`./${t}`],{baseDirs:[b(e)],caller:"ICSS loader",extensions:i}),r=await ze(o),{messages:l}=await a.process(r,{...s,from:o}),c={};for(const n of l)n.type==="icss"&&Object.assign(c,n.export);return c},"load");var tt=Object.defineProperty,it=d((t,e)=>tt(t,"name",{value:e,configurable:!0}),"t$3");const at=it(async(t,e,i,a,s,o)=>{const r={};for await(const[l,c]of Object.entries(t)){const n=await e(l,i,a,s,o);for(const[p,m]of Object.entries(c))r[p]=n[m]}return r},"resolve");var st=Object.defineProperty,ot=d((t,e)=>st(t,"name",{value:e,configurable:!0}),"c$5");const T="styles-icss",nt=[".css",".pcss",".postcss",".sss"],me=ot(t=>{const e=t?.load??et,i=t?.extensions??nt;return{async OnceExit(a,{result:s}){if(!a.source?.input.file)return;const o={...s.opts,map:void 0},{icssExports:r,icssImports:l}=Ne(a),c=await at(l,e,a.source.input.file,i,s.processor,o);Ue(a,c);for(const[n,p]of Object.entries(r))s.messages.push({export:{[n]:Le(p,c)},plugin:T,type:"icss"});for(const n of Object.keys(l))s.messages.push({import:n,plugin:T,type:"icss-dependency"})},postcssPlugin:T}},"plugin");me.postcss=!0;var rt=Object.defineProperty,pt=d((t,e)=>rt(t,"name",{value:e,configurable:!0}),"t$2");const B=pt((t,e,i,a)=>{const s=[];if(t!==void 0){let o="layer";t&&(o=`layer(${t})`),s.push(o)}return i!==void 0&&s.push(`supports(${i})`),a!==void 0&&s.push(`scope(${a})`),e!==void 0&&s.push(e),s.join(" ")},"formatImportPrelude");var lt=Object.defineProperty,ct=d((t,e)=>lt(t,"name",{value:e,configurable:!0}),"p$7");const mt=ct((t,e)=>{e.reverse();const i=e.pop();if(!i)return t;let a=`${t} ${B(i.layer,i.media,i.supports,i.scope)}`;for(const s of e)a=`'data:text/css;base64,${Buffer.from(`@import ${a}`).toString("base64")}' ${B(s.layer,s.media,s.supports,s.scope)}`;return a},"base64EncodedConditionalImport");var ut=Object.defineProperty,z=d((t,e)=>ut(t,"name",{value:e,configurable:!0}),"e$1");const dt=z(t=>t.type==="warning","isWarning"),H=z(t=>t.type==="nodes","isNodesStatement"),L=z(t=>t.type==="import","isImportStatement"),ft=z(t=>t.type==="pre-import","isPreImportStatement");var gt=Object.defineProperty,ht=d((t,e)=>gt(t,"name",{value:e,configurable:!0}),"u$2");const xt=ht((t,e)=>{t.statements.forEach((i,a)=>{if(dt(i)||ft(i)||i.conditions.length===0)return;if(L(i)){i.node.params=mt(i.fullUri,i.conditions);return}const{nodes:s}=i;if(s.length===0)return;const{parent:o}=s[0];if(!o)return;const r=[];for(const n of i.conditions){if(n.media!==void 0){const p=e({name:"media",params:n.media,source:i.importingNode?.source??o.source});r.push(p)}if(n.scope!==void 0){const p=e({name:"scope",params:n.scope,source:i.importingNode?.source??o.source});r.push(p)}if(n.supports!==void 0){const p=e({name:"supports",params:`(${n.supports})`,source:i.importingNode?.source??o.source});r.push(p)}if(n.layer!==void 0){const p=e({name:"layer",params:n.layer,source:i.importingNode?.source??o.source});r.push(p)}}const l=r[0];if(!l)return;for(let n=0;n<r.length-1;n++)r[n].append(r[n+1]);const c=r.at(-1);o.insertBefore(s[0],l),s.forEach(n=>{n.parent=void 0}),c.append(s),t.statements[a]={conditions:i.conditions,from:i.from,importingNode:i.importingNode,nodes:[l],type:"nodes"}})},"applyConditions");var vt=Object.defineProperty,yt=d((t,e)=>vt(t,"name",{value:e,configurable:!0}),"r$4");const bt=yt(t=>{t.statements.forEach((e,i)=>{if(i!==0)if(e.parent!==void 0){const{before:a}=e.parent.node.raws;H(e)?e.nodes[0].raws.before=a:e.node.raws.before=a}else H(e)&&(e.nodes[0].raws.before=e.nodes[0].raws.before??`
|
|
2
2
|
`)})},"applyRaws");var wt=Object.defineProperty,$t=d((t,e)=>wt(t,"name",{value:e,configurable:!0}),"t$1");const jt=$t((t,e)=>{e.nodes=[],t.charset&&(t.charset.parent=void 0,e.append(t.charset)),t.statements.forEach(i=>{L(i)?(i.node.parent=void 0,e.append(i.node)):H(i)&&i.nodes.forEach(a=>{a.parent=void 0,e.append(a)})})},"applyStyles");var kt=Object.defineProperty,St=d((t,e)=>kt(t,"name",{value:e,configurable:!0}),"o$3");const Pt=St((t,e,i)=>{const a={baseDirs:[e],caller:"@import resolver",extensions:i},s=new URL(t,"file://").pathname,o=[s];return(De(s)||s.startsWith("/"))&&o.push(`.${s}`),s.startsWith("/")&&o.push(s.slice(1)),Q(o,a)},"importResolve");var Ot=Object.defineProperty,ue=d((t,e)=>Ot(t,"name",{value:e,configurable:!0}),"e");const Et=/^data:text\/css(?:;(?:base64|plain))?,/i,Rt=/^data:text\/css;base64,/i,It=/^data:text\/css;plain,/i,V=ue(t=>t!==void 0&&Et.test(t),"isValidDataURL"),Ct=ue(t=>Rt.test(t)?Buffer.from(t.slice(21),"base64").toString():It.test(t)?decodeURIComponent(t.slice(20)):decodeURIComponent(t.slice(14)),"dataURLContents");var Nt=Object.defineProperty,oe=d((t,e)=>Nt(t,"name",{value:e,configurable:!0}),"o$1");const Y=oe(()=>({postcssPlugin:"css-noop",prepare:oe(()=>({}),"prepare")}),"postcssNoop");Y.postcss=!0;var Ut=Object.defineProperty,de=d((t,e)=>Ut(t,"name",{value:e,configurable:!0}),"a$3");const fe=de(async(t,e,i,a,s,o)=>(o===void 0&&(o=0),a.length===0&&a.push(Y()),await t(a).process(e,{from:i,parser:s[o]}).catch(async r=>{if(o++,o===s.length)throw r;return await fe(t,e,i,a,s,o)})),"runPostcss"),Lt=de(async(t,e,i,a,s)=>{const{plugins:o}=a,r=[];return t.opts.syntax?.parse&&r.push(t.opts.syntax.parse),t.opts.parser&&r.push(t.opts.parser),r.push(void 0),await fe(s,e,i,o,r)},"processContent"),zt=/^charset$/i,ge=/^import$/i,Dt=/^url$/i,E=/^layer$/i,_t=/^supports$/i,Wt=/^scope$/i;var Mt=Object.defineProperty,K=d((t,e)=>Mt(t,"name",{value:e,configurable:!0}),"a$2");const qt=K(t=>{for(let e=0;e<t.length;e++){const i=t[e];if(!G(i)&&_e(i)&&qe(i.startToken))return t}return[new We([ae.OpenParen,"(",-1,-1,void 0],[ae.CloseParen,")",-1,-1,void 0],t)]},"wrapInParenthesisIfNeeded"),ne=K(t=>{if(t.startsWith("#"))return"";if(!t.includes("#"))return t;try{const e=new URL(t,"http://example.com");return e.hash?t.slice(0,t.length-e.hash.length):t}catch{return t}},"stripHash"),Tt=K(t=>{const e=Te({css:t});if(e.length===2&&(M(e[0])||se(e[0]))){let n=e[0][4].value;return n=ne(n),n?{fullUri:e[0][1],uri:n}:!1}const i=Me(e);let a="",s="",o,r,l,c;for(let n=0;n<i.length;n++){const p=i[n];if(!G(p)){if(W(p)&&(M(p.value)||se(p.value))){if(a)return!1;a=p.value[4].value,s=p.value[1];continue}if(I(p)&&Dt.test(p.getName())){if(a)return!1;for(let m=0;m<p.value.length;m++){const u=p.value[m];if(!G(u)){if(!a&&W(u)&&M(u.value)){a=u.value[4].value,s=S([[p]]);continue}return!1}}continue}if(!a)return!1;if(W(p)&&Fe(p.value)&&E.test(p.value[4].value)){if(o!==void 0||l!==void 0)return!1;o="";continue}if(I(p)&&E.test(p.getName())){if(o!==void 0||l!==void 0)return!1;o=S([p.value]);continue}if(I(p)&&_t.test(p.getName())){if(l!==void 0)return!1;l=S([p.value]);continue}if(I(p)&&Wt.test(p.getName())){if(c!==void 0)return!1;c=S([qt(p.value)]);continue}r=S([i.slice(n)]);break}}return a=ne(a),a?{fullUri:s,layer:o,media:r,scope:c,supports:l,uri:a}:!1},"parseAtImport");var Ft=Object.defineProperty,k=d((t,e)=>Ft(t,"name",{value:e,configurable:!0}),"l$2");const he=k((t,e,i,a)=>{const s=[];let o=e;const r=t.length;for(o;o<r;o++){const l=t[o];if(s.push(l),t[o+1]?.type!=="comment")break}return[o,{conditions:[],from:a,importingNode:i,nodes:s,type:"nodes"}]},"consumeComments"),At=k((t,e,i,a,s)=>{const o=Tt(e.params);if(!o)return t.warn(`Invalid @import statement in '${e.toString()}'`,{node:e});const r={conditions:[...a],from:s,fullUri:o.fullUri,importingNode:i,node:e,type:"import",uri:o.uri};return(o.layer!==void 0||o.media!==void 0||o.supports!==void 0||o.scope!==void 0)&&r.conditions.push({layer:o.layer,media:o.media,scope:o.scope,supports:o.supports}),r},"parseImport"),Gt=k((t,e,i,a,s,o)=>{const r=[];let l=a;const c=e.length;for(l;l<c;l++){const n=e[l];if(n.type==="comment"){const[p,m]=he(e,l,s,o);r.push(m),l=p;continue}if(n.type==="atrule"&&ge.test(n.name)){r.push(At(t,n,s,i,o));continue}break}return[l-1,r]},"consumeImports"),Xt=k((t,e,i,a,s)=>{const o=[];let r=i;const l=t.length;for(r;r<l;r++){const c=t[r];o.push(c);const n=t[r+1];if(!(n&&n.type==="atrule"&&E.test(n.name)&&!n.nodes))break}return[r,{conditions:[...e],from:s,importingNode:a,nodes:o,type:"nodes"}]},"consumeLayers"),Bt=k((t,e,i,a,s)=>{const o=[];let r=i;const l=t.length;for(r;r<l;r++){const c=t[r];if(c.type==="comment"){const[n,p]=he(t,r,a,s);o.push(p),r=n;continue}if(c.type==="atrule"&&E.test(c.name)&&!c.nodes)if(e.length>0){o.push({conditions:[...e],from:s,importingNode:a,node:c,type:"pre-import"});continue}else{const[n,p]=Xt(t,e,r,a,s);o.push(p),r=n;continue}break}return[r-1,o]},"consumeBeforeImports"),xe=k((t,e,i,a,s)=>{const o={statements:[]};if(e.type==="document")return e.each(m=>{const u=xe(t,m,i,a,s);if(o.charset&&u.charset&&o.charset.params.toLowerCase()!==u.charset.params.toLowerCase())throw u.charset.error(`Incompatible @charset statements:
|
|
3
3
|
${u.charset.params} specified in ${u.charset.source?.input.file}
|
|
4
4
|
${o.charset.params} specified in ${o.charset.source?.input.file}`);!o.charset&&u.charset&&(o.charset=u.charset),o.statements.push(...u.statements)}),o;let r,l=[],c=[],n;for(let m=0;m<e.nodes.length;m++){const u=e.nodes[m];if(m===0&&u.type==="atrule"&&zt.test(u.name)){r=u;continue}if(c.length===0&&(u.type==="comment"||u.type==="atrule"&&E.test(u.name)&&!u.nodes)){[m,l]=Bt(e.nodes,a,m,i,s);continue}if(c.length===0&&u.type==="atrule"&&ge.test(u.name)){[m,c]=Gt(t,e.nodes,a,m,i,s);continue}n={conditions:[...a],from:s,importingNode:i,nodes:e.nodes.slice(m),type:"nodes"};break}const p=[];return l.length>0&&p.push(...l),c.length>0&&p.push(...c),n&&p.push(n),{charset:r,statements:p}},"parseStylesheet");var Ht=Object.defineProperty,D=d((t,e)=>Ht(t,"name",{value:e,configurable:!0}),"h");const Vt=/^(?:[a-z]+:)?\/\//i,Jt=D(t=>{if(Vt.test(t))return!1;try{if(new URL(t,"https://example.com").search)return!1}catch{}return!0},"isProcessableURL"),re=D(async(t,e,i,a,s,o)=>{const{conditions:r,from:l,node:c}=e,n=r.map(f=>B(f.layer,f.media,f.supports,f.scope)).join(":");if(a.skipDuplicates){if(s.importedFiles[i]?.[n])return{statements:[]};s.importedFiles[i]||(s.importedFiles[i]={}),s.importedFiles[i][n]=!0}if(l.includes(i))return{statements:[]};const p=await a.load(i,a);if(p.trim()===""&&a.warnOnEmpty)return t.warn(`${i} is empty`,{node:c}),{statements:[]};if(a.skipDuplicates&&s.hashFiles[p]?.[n])return{statements:[]};const m=await Lt(t,p,i,a,o),u=m.root;return a.debug&&u.append({text:i}),t.messages=[...t.messages,...m.messages],a.skipDuplicates&&(u.some(f=>f.type==="atrule"&&f.name==="import")||(s.hashFiles[p]||(s.hashFiles[p]={}),s.hashFiles[p][n]=!0)),await ve(a,t,u,s,c,r,[...l,i],o)},"loadImportContent"),Qt=D(async(t,e,i,a,s)=>{if(V(i.uri)){i.stylesheet=await re(e,i,i.uri,t,a,s);return}if(V(i.from.at(-1))){i.stylesheet={statements:[]},e.warn(`Unable to import '${i.uri}' from a stylesheet that is embedded in a data url`,{node:i.node});return}const o=i.node;let r;o.source?.input.file&&(r=o.source.input.file);const l=r?b(r):t.root;for(const[n,p]of Object.entries(t.alias))i.uri!==n&&!i.uri.startsWith(`${n}/`)||(i.uri=O(p)+i.uri.slice(n.length));let c;try{c=await t.resolve(i.uri,l,t.extensions,o)}catch{i.node.warn(e,`Unable to resolve "${i.uri}" from "${l}"`);return}e.messages.push({file:c,parent:r,plugin:"packem-postcss-import",type:"dependency"}),i.stylesheet=await re(e,i,c,t,a,s)},"resolveImportId"),ve=D(async(t,e,i,a,s,o,r,l)=>{let{charset:c,statements:n}=xe(e,i,s,o,r);{const p=[];for await(const m of n)!L(m)||!Jt(m.uri)||t.filter&&!t.filter(m.uri)||p.push(Qt(t,e,m,a,l));p.length>0&&await Promise.all(p)}for(let p=0;p<n.length;p++){const m=n[p];if(L(m)&&m.stylesheet){if(c&&m.stylesheet.charset&&c.params.toLowerCase()!==m.stylesheet.charset.params.toLowerCase())throw m.stylesheet.charset.error(`Incompatible @charset statements:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var f=Object.defineProperty;var l=(n,r)=>f(n,"name",{value:r,configurable:!0});import p from"./arrayFmt-Dek5cB7m.mjs";import d from"./loadModule-CovDETwT.mjs";var y=Object.defineProperty,o=l((n,r)=>y(n,"name",{value:r,configurable:!0}),"o");const u=["inject","extract","emit","inline"],S=p(u),P=o(n=>{const r=Array.isArray(n)?n:[n];if(r[0]&&!u.includes(r[0]))throw new Error(`Incorrect mode provided, allowed modes are ${S}`);const t=r[0]??"inject";let e=!1,i=!1;return t==="extract"&&(e=r[1]??!0),t==="inject"&&(i=r[1]??!0),{emit:t==="emit",extract:e,inject:i,inline:t==="inline"}},"inferModeOption"),O=o((n,r)=>typeof n=="boolean"?n&&{}:typeof n=="object"?n:r,"inferOption"),j=o(n=>{const r=Array.isArray(n)?n:[n];return r[0]?{content:!0,...r[1],inline:r[0]==="inline"}:!1},"inferSourceMapOption"),b=o((n,r)=>{const t=O(n,{});return r&&typeof t=="object"&&!t.alias&&(t.alias=r),t},"inferHandlerOption"),a=o(async(n,r,t,e)=>{if(typeof n!="string")return n;const i=await d(n,t,e);if(!i)throw new Error(`Unable to load PostCSS ${r} \`${n}\``);return i},"ensurePCSSOption"),h=o(async(n,r,t)=>{if(n===void 0)return[];if(n.length===0)return[];const e=[];for await(const i of n.filter(Boolean)){if(!Array.isArray(i)){e.push(await a(i,"plugin",r,t));continue}const[s,c]=i;c?e.push((await a(s,"plugin",r,t))(c)):e.push(await a(s,"plugin",r,t))}return e},"ensurePCSSPlugins");export{a as ensurePCSSOption,h as ensurePCSSPlugins,b as inferHandlerOption,P as inferModeOption,O as inferOption,j as inferSourceMapOption};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var Y=Object.defineProperty;var N=(e,t)=>Y(e,"name",{value:t,configurable:!0});import{createFilter as ee}from"@rollup/pluginutils";import{createRollupLogger as se}from"@visulima/packem-share/utils";import{dirname as L,normalize as M,isAbsolute as te,relative as U,resolve as oe,parse as T,join as _,basename as V}from"@visulima/path";import{isRelative as ie}from"@visulima/path/utils";import re from"p-queue";import ne from"./concat-BbvpVPBg.mjs";import{inferSourceMapOption as ae,inferModeOption as ce,inferHandlerOption as W,inferOption as G,ensurePCSSOption as R,ensurePCSSPlugins as le}from"./inferModeOption-
|
|
1
|
+
var Y=Object.defineProperty;var N=(e,t)=>Y(e,"name",{value:t,configurable:!0});import{createFilter as ee}from"@rollup/pluginutils";import{createRollupLogger as se}from"@visulima/packem-share/utils";import{dirname as L,normalize as M,isAbsolute as te,relative as U,resolve as oe,parse as T,join as _,basename as V}from"@visulima/path";import{isRelative as ie}from"@visulima/path/utils";import re from"p-queue";import ne from"./concat-BbvpVPBg.mjs";import{inferSourceMapOption as ae,inferModeOption as ce,inferHandlerOption as W,inferOption as G,ensurePCSSOption as R,ensurePCSSPlugins as le}from"./inferModeOption-fAc592HP.mjs";import{m as q}from"./sourcemap-DGfgaUBb.mjs";var ue=Object.defineProperty,de=N((e,t)=>ue(e,"name",{value:t,configurable:!0}),"r");const J=de((e,t)=>{if(!t)return!1;if(typeof t=="function")return t(e);if(typeof t.test=="function")return t.test(e);throw new Error("Invalid condition type")},"matchFile");var pe=Object.defineProperty,fe=N((e,t)=>pe(e,"name",{value:t,configurable:!0}),"a");const me=4,ge=process.env.UV_THREADPOOL_SIZE?Number.parseInt(process.env.UV_THREADPOOL_SIZE,10):me;class he{static{N(this,"c")}static{fe(this,"LoaderManager")}test;loaders=new Map;options;workQueue;logger;constructor({extensions:t,loaders:c,logger:y,options:O}){this.test=S=>t.some(g=>S.toLowerCase().endsWith(g)),c.length>0&&this.add(...c),this.options=O,this.logger=y}add(...t){for(const c of t)this.loaders.has(c.name)||this.loaders.set(c.name,c)}isSupported(t){if(this.test(t))return!0;for(const[,c]of this.loaders)if(J(t,c.test))return!0;return!1}async process(t,c){this.workQueue||(this.workQueue=new re({concurrency:ge-1}));for await(const[y,O]of this.loaders){const S={...c,options:this.options[y]??{}};if(O.alwaysProcess||J(S.id,O.test)){this.logger.debug({message:`Processing ${y} loader for ${S.id}`,plugin:"css"});try{const g=await this.workQueue.add(O.process.bind(S,t));g&&(t=g,this.logger.debug({message:`Completed ${y} loader for ${S.id}`,outputSize:g.code?.length||0,plugin:"css"}))}catch(g){throw this.logger.error({file:S.id,loader:y,message:`Error in ${y} loader for ${S.id}: ${g instanceof Error?g.message:String(g)}`,plugin:"css"}),g}}}return t}}var xe=Object.defineProperty,z=N((e,t)=>xe(e,"name",{value:t,configurable:!0}),"b");const ye=z(async(e,t)=>e.sort((c,y)=>t.indexOf(c.name)-t.indexOf(y.name)),"sortByNameOrder"),Fe=z(async(e,t,c,y,O,S,g,Z,K)=>{const C={...K,...e.alias},B=ee(e.include,e.exclude),b=ae(e.sourceMap),i={...ce(e.mode),autoModules:e.autoModules??!1,dts:e.dts,extensions:e.extensions,namedExports:e.namedExports};let a,I,H=!1;if(e.loaders)for(const r of e.loaders)r.name==="postcss"&&(H=!0);else e.loaders=[];H&&(i.postcss={...e.postcss,config:G(e.postcss?.config,{}),import:W(e.postcss?.import,C),modules:G(e.postcss?.modules,void 0),to:e.postcss?.to,url:W(e.postcss?.url,C)});let E=[];const F=z((r,u)=>{const m=[];for(const o of Object.keys(r)){const d=new Set;let h=[o];do{const $=[];for(const f of h){if(d.has(f))continue;if(I.isSupported(f)){B(f)&&$.push(f);continue}d.add(f);const P=u(f);P&&$.push(...P.importedIds)}h=$}while(h.some($=>!I.isSupported($)));m.push(...h)}return m},"traverseImportedModules");return{augmentChunkHash(r){if(E.length===0)return;const u=F(r.modules,this.getModuleInfo),m=E.filter(o=>u.includes(o.id)).sort((o,d)=>u.lastIndexOf(o.id)-u.lastIndexOf(d.id)).map(o=>`${V(o.id)}:${o.css}`);if(m.length!==0)return m.join(":")},async buildStart(){a=se(this,"css"),H&&i.postcss&&(e.postcss?.parser&&(i.postcss.parser=await R(e.postcss.parser,"parser",c,a)),e.postcss?.syntax&&(i.postcss.syntax=await R(e.postcss.syntax,"syntax",c,a)),e.postcss?.stringifier&&(i.postcss.stringifier=await R(e.postcss.stringifier,"stringifier",c,a)),e.postcss?.plugins&&(i.postcss.plugins=await le(e.postcss.plugins,c,a))),I=new he({extensions:i.extensions,loaders:await ye(e.loaders||[],["sourcemap","stylus","less","sass","postcss"]),logger:a,options:{...e,...i,alias:C}}),a.info({extract:typeof i.extract=="string"?i.extract:"individual",loaders:e.loaders?.map(r=>r.name)||[],message:"CSS plugin initialized",minify:!!(Z&&e.minifier),namedExports:!!i.namedExports,plugin:"css",sourceMap:!!S}),typeof i.inject=="object"&&i.inject.treeshakeable&&(i.namedExports=!1,a.info({message:"Disabling named exports due to `inject.treeshakeable` option",plugin:"css"}))},async generateBundle(r,u){if(E.length===0||!(r.dir||r.file))return;const m=Object.values(u),o=r.dir??L(r.file),d=m.filter(n=>n.type==="chunk"),h=d.filter(n=>!n.facadeModuleId),$=r.preserveModules?d:d.filter(n=>n.isEntry||n.isDynamicEntry),f=[],P=z(async(n,l)=>{const s=typeof i.extract=="string"?M(i.extract).replace(/^\.[/\\]/,""):M(`${n}.css`);te(s)&&this.error(["Extraction path must be relative to the output directory,",`which is ${U(c,o)}`].join(`
|
|
2
2
|
`)),ie(s)&&this.error(["Extraction path must be nested inside output directory,",`which is ${U(c,o)}`].join(`
|
|
3
3
|
`));const w=E.filter(x=>l.includes(x.id)).sort((x,v)=>l.lastIndexOf(x.id)-l.lastIndexOf(v.id)),D=await ne(w);return{css:D.css,map:q(D.map.toString()).relative(L(oe(o,s))).toString(),name:s}},"getExtractedData"),A=z(n=>{if(r.file)return T(r.file).name;if(r.preserveModules){const{dir:l,name:s}=T(n.fileName);return l?_(l,s):s}return n.name},"getName"),k=[];if(typeof i.extract=="string"){a.debug({message:`Extracting to ${i.extract}`,prefix:"css"});const n=[];for(const s of h){const w=F(s.modules,this.getModuleInfo);k.push(...w),n.push(...w)}for(const s of $)n.push(...F(s.modules,this.getModuleInfo).filter(w=>!k.includes(w)));const l=A(d[0]);f.push([l,n])}else{a.debug({message:"Extracting to individual files",prefix:"css"});for(const n of h){const l=F(n.modules,this.getModuleInfo);if(l.length===0)continue;k.push(...l);const s=A(n);f.push([s,l])}for(const n of $){const l=F(n.modules,this.getModuleInfo).filter(w=>!k.includes(w));if(l.length===0)continue;const s=A(n);f.push([s,l])}}for await(const[n,l]of f){const s=await P(n,l);if(typeof e.onExtract=="function"&&!e.onExtract(s))continue;if(Z&&e.minifier){a.info({message:`Minifying ${s.name} with ${e.minifier.name}`,prefix:"css"});const{css:x,map:v}=await e.minifier.handler.bind({browserTargets:t,logger:a})(s,b,e[e.minifier.name]??{});s.css=x,s.map=v}const w={fileName:s.name,name:s.name,names:[s.name],originalFileName:s.name,originalFileNames:[s.name],source:s.css,type:"asset"},D=this.emitFile(w);if(a.info({chunkIds:l.length,hasSourceMap:!!(s.map&&b),message:`Emitted CSS file: ${s.name}`,plugin:"css",size:s.css.length}),s.map&&b){const x=this.getFileName(D);let v="assert";typeof r.assetFileNames=="string"?v=M(L(r.assetFileNames)):typeof r.assetFileNames=="function"&&(v=M(L(r.assetFileNames(w))));const j=q(s.map).modify(p=>(p.file=V(x),p)).modifySources(p=>{if(p==="<no source>"||v.length<=1)return p;p=`../${p}`;for(const Q of v)Q==="/"&&(p=`../${p}`);return p});if(b.inline)j.modify(p=>b.transform?.(p,M(_(o,x)))),u[x].source+=j.toCommentData(),a.debug({message:`Generated inline source map for ${x}`,plugin:"css"});else{const p=`${x}.map`;j.modify(X=>b.transform?.(X,M(_(o,p)))),this.emitFile({fileName:p,source:j.toString(),type:"asset"});const{base:Q}=T(p);u[x].source+=j.toCommentFile(Q),a.debug({message:`Generated external source map: ${p}`,plugin:"css"})}}}f.length>0&&a.info({filesEmitted:f.length,message:"CSS processing complete",plugin:"css",totalExtracted:E.length,totalSize:f.reduce((n,[,l])=>n+l.length,0)})},name:"rollup-plugin-css",async transform(r,u){if(!B(u)||!I.isSupported(u))return;if(r.replaceAll(/\s/g,"")===""){a.debug({message:`Skipping empty file: ${u}`,plugin:"css"});return}a.info({message:`Processing CSS file: ${u}`,plugin:"css",size:r.length}),typeof e.onImport=="function"&&e.onImport(r,u);const m={alias:C,assets:new Map,autoModules:i.autoModules,browserTargets:t,cwd:c,debug:g,deps:new Set,dts:i.dts,emit:i.emit,environment:O,extensions:i.extensions,extract:i.extract,id:u,inject:i.inject,inline:i.inline,logger:a,namedExports:i.namedExports,options:{},plugin:this,sourceDir:y,sourceMap:b,useSourcemap:S},o=await I.process({code:r},m);a.info({assets:m.assets.size,dependencies:m.deps.size,hasExtracted:!!o.extracted,message:`Processed ${u}`,outputSize:o.code.length,plugin:"css"});for(const d of m.deps)this.addWatchFile(d);for(const[d,h]of m.assets)this.emitFile({fileName:d,source:h,type:"asset"}),a.debug({message:`Emitted asset: ${d}`,plugin:"css",size:h.length});if(o.extracted){const{id:d}=o.extracted;E=E.filter(h=>h.id!==d),E.push(o.extracted),a.debug({cssSize:o.extracted.css.length,hasSourceMap:!!o.extracted.map,message:`Extracted CSS from ${d}`,plugin:"css"})}return{code:o.code,map:b&&o.map?o.map:{mappings:""},meta:{styles:o.meta},moduleSideEffects:o.extracted?!0:void 0}}}},"cssPlugin");export{Fe as default};
|
package/dist/utils/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{default as o}from"../packem_shared/arrayFmt-Dek5cB7m.mjs";import{default as t}from"../packem_shared/concat-BbvpVPBg.mjs";import{default as p}from"../packem_shared/loadModule-CovDETwT.mjs";import{ensurePCSSOption as n,ensurePCSSPlugins as s,inferHandlerOption as l,inferModeOption as m,inferOption as d,inferSourceMapOption as u}from"../packem_shared/inferModeOption-
|
|
1
|
+
import{default as o}from"../packem_shared/arrayFmt-Dek5cB7m.mjs";import{default as t}from"../packem_shared/concat-BbvpVPBg.mjs";import{default as p}from"../packem_shared/loadModule-CovDETwT.mjs";import{ensurePCSSOption as n,ensurePCSSPlugins as s,inferHandlerOption as l,inferModeOption as m,inferOption as d,inferSourceMapOption as u}from"../packem_shared/inferModeOption-fAc592HP.mjs";import{resolve as M}from"../packem_shared/resolve-nqhcPNJ9.mjs";import{default as S}from"../packem_shared/safeId-BN5akJYJ.mjs";import{g,m as P,s as C}from"../packem_shared/sourcemap-DGfgaUBb.mjs";import{getUrlOfPartial as h,hasModuleSpecifier as v,normalizeUrl as y}from"../packem_shared/hasModuleSpecifier-DIZeev_W.mjs";export{o as arrayFmt,t as concat,n as ensurePCSSOption,s as ensurePCSSPlugins,g as getMap,h as getUrlOfPartial,v as hasModuleSpecifier,l as inferHandlerOption,m as inferModeOption,d as inferOption,u as inferSourceMapOption,p as loadModule,P as mm,y as normalizeUrl,M as resolve,S as safeId,C as stripMap};
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var l=Object.defineProperty;var u=(n,r)=>l(n,"name",{value:r,configurable:!0});import f from"./arrayFmt-Dek5cB7m.mjs";import d from"./loadModule-CovDETwT.mjs";var y=Object.defineProperty,o=u((n,r)=>y(n,"name",{value:r,configurable:!0}),"o");const p=["inject","extract","emit","inline"],S=f(p),P=o(n=>{const r=Array.isArray(n)?n:[n];if(r[0]&&!p.includes(r[0]))throw new Error(`Incorrect mode provided, allowed modes are ${S}`);const t=r[0]??"inject";return{emit:t==="emit",extract:!!(t==="extract"&&(r[1]??!0)),inject:!!(t==="inject"&&(r[1]??!0)),inline:t==="inline"}},"inferModeOption"),O=o((n,r)=>typeof n=="boolean"?n&&{}:typeof n=="object"?n:r,"inferOption"),j=o(n=>{const r=Array.isArray(n)?n:[n];return r[0]?{content:!0,...r[1],inline:r[0]==="inline"}:!1},"inferSourceMapOption"),b=o((n,r)=>{const t=O(n,{});return r&&typeof t=="object"&&!t.alias&&(t.alias=r),t},"inferHandlerOption"),a=o(async(n,r,t,e)=>{if(typeof n!="string")return n;const i=await d(n,t,e);if(!i)throw new Error(`Unable to load PostCSS ${r} \`${n}\``);return i},"ensurePCSSOption"),h=o(async(n,r,t)=>{if(n===void 0)return[];if(n.length===0)return[];const e=[];for await(const i of n.filter(Boolean)){if(!Array.isArray(i)){e.push(await a(i,"plugin",r,t));continue}const[s,c]=i;c?e.push((await a(s,"plugin",r,t))(c)):e.push(await a(s,"plugin",r,t))}return e},"ensurePCSSPlugins");export{a as ensurePCSSOption,h as ensurePCSSPlugins,b as inferHandlerOption,P as inferModeOption,O as inferOption,j as inferSourceMapOption};
|