@fchc8/vite-plugin-multi-page 1.10.0 → 1.10.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/dist/cli.js CHANGED
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var Me=Object.create;var z=Object.defineProperty;var je=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var Ie=Object.getPrototypeOf,Le=Object.prototype.hasOwnProperty;var _=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>{for(var r in t)z(e,r,{get:t[r],enumerable:!0})},pe=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Re(t))!Le.call(e,n)&&n!==r&&z(e,n,{get:()=>t[n],enumerable:!(s=je(t,n))||s.enumerable});return e};var E=(e,t,r)=>(r=e!=null?Me(Ie(e)):{},pe(t||!e||!e.__esModule?z(r,"default",{value:e,enumerable:!0}):r,e)),Ae=e=>pe(z({},"__esModule",{value:!0}),e);var P=_(()=>{"use strict"});function U(e,t,r,s){let n=[],a=new Map,c=t.replace(/\/\*.*$/,"");(!c||c===t)&&(c=j.dirname(t.split("*")[0]));let i=[];for(let l of e){if(r.includes(l))continue;let g=l.replace(/\\/g,"/"),u=c.replace(/\\/g,"/"),p=j.posix.relative(u,g).split("/");if(p.length===1){let f=p[0],m=j.posix.basename(f,j.posix.extname(f));i.push({name:m,file:l,priority:1})}else if(p.length>=2){let f=j.posix.basename(g,j.posix.extname(g)),m=p[0];f==="main"&&i.push({name:m,file:l,priority:2})}}for(let l of i){let g=a.get(l.name);g?l.priority>g.priority&&a.set(l.name,{file:l.file,priority:l.priority}):a.set(l.name,{file:l.file,priority:l.priority})}for(let[l,{file:g}]of a.entries())n.push({name:l,file:g});return n}var j,ne=_(()=>{"use strict";P();j=E(require("path"))});function R(e,t,r){if(!e)return null;if(typeof e=="function"){let s=e(t);return s}for(let[s,n]of Object.entries(e)){if(s===t.pageName)return r(`\u7CBE\u786E\u5339\u914D\u9875\u9762 ${t.pageName}:`,n),n;if(n.match&&(Array.isArray(n.match)?n.match:[n.match]).some(i=>q(i,t.pageName)||q(i,t.relativePath)||q(i,t.filePath)))return r(`\u6A21\u5F0F\u5339\u914D\u9875\u9762 ${t.pageName} (\u6A21\u5F0F: ${n.match}):`,n),{...n,match:void 0};if(q(s,t.pageName))return r(`Glob\u5339\u914D\u9875\u9762 ${t.pageName} (\u6A21\u5F0F: ${s}):`,n),n}return null}function q(e,t){let r=e.replace(/\*\*/g,"__DOUBLE_STAR__").replace(/\*/g,"[^/]*").replace(/__DOUBLE_STAR__/g,".*");return new RegExp(`^${r}$`).test(t)}var re=_(()=>{"use strict";P()});function ue(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function W(e){return(...t)=>{e&&console.log("[vite-plugin-multi-page]",...t)}}var oe=_(()=>{"use strict";P()});var K={};G(K,{cleanViteOutputDirectory:()=>ie,discoverPages:()=>Ne,generateBuildConfig:()=>k,getAvailableStrategies:()=>ae,getViteOutputDirectory:()=>A});function k(e){var o;let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[],template:s="index.html",placeholder:n="<!--VITE_MULTI_PAGE_ENTRY-->",strategies:a={},pageConfigs:c={},forceBuildStrategy:i,forceBuildPage:l}=e,g=W(!0),u={};try{let p=Q.glob.sync(t,{cwd:process.cwd()}),f=U(p,t,r,g);if(f.length===0)return g("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6"),{};let m=new Map,$=new Map;for(let v of f){let b={pageName:v.name,filePath:v.file,relativePath:F.relative(process.cwd(),v.file)},w=R(c,b,g),C=(w==null?void 0:w.strategy)||"default";m.set(v.name,C),$.has(C)||$.set(C,[]),(o=$.get(C))==null||o.push(v.name)}if(g(`\u{1F4C4} \u53D1\u73B0 ${f.length} \u4E2A\u9875\u9762: ${f.map(v=>v.name).join(", ")}`),l){if(!f.find(L=>L.name===l))return g(`\u8B66\u544A: \u672A\u627E\u5230\u9875\u9762 "${l}"`),{};g(`\u5F3A\u5236\u6784\u5EFA\u9875\u9762: ${l}`);let b=m.get(l)||"default",w=a[b]||{},C=J(`single-${l}`,[l],f,w,c,s,n,g);return u[`single-${l}`]=C,u}if(i){let v=$.get(i)||[];if(v.length===0)return g(`\u8B66\u544A: \u7B56\u7565 "${i}" \u4E0B\u6CA1\u6709\u9875\u9762`),{};g(`\u5F3A\u5236\u6784\u5EFA\u7B56\u7565: ${i}, \u9875\u9762: ${v.join(", ")}`);let b=J(i,v,f,a[i],c,s,n,g);return u[i]=b,u}for(let[v,b]of $){if(b.length===0)continue;let w=a[v]||{},C=J(v,b,f,w,c,s,n,g);u[v]=C}if(Object.keys(u).length===0){g("\u8B66\u544A: \u672A\u751F\u6210\u4EFB\u4F55\u6784\u5EFA\u914D\u7F6E\uFF0C\u521B\u5EFA\u9ED8\u8BA4\u914D\u7F6E");let v=f.map(w=>w.name),b=J("default",v,f,{},c,s,n,g);u.default=b}let h=Object.keys(u);return g(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${h.join(", ")}`),u}catch(p){throw g("\u751F\u6210\u6784\u5EFA\u914D\u7F6E\u5931\u8D25:",p),p}}function J(e,t,r,s,n,a,c,i){let l={},g=[],u={};for(let f of t){let m=r.find(se=>se.name===f);if(!m)continue;let $={pageName:f,filePath:m.file,relativePath:F.relative(process.cwd(),m.file),strategy:e},h=R(n,$,i);h!=null&&h.define&&Object.assign(u,h.define);let v=a,b=`${f}.html`;O.existsSync(F.resolve(process.cwd(),b))?v=b:h!=null&&h.template&&(v=h.template);let w=F.resolve(process.cwd(),v);if(!O.existsSync(w)){i(`\u8B66\u544A: \u6A21\u677F\u6587\u4EF6\u4E0D\u5B58\u5728: ${v}`);continue}let C=O.readFileSync(w,"utf-8");if(C.includes(c)){let se=`./${m.file}`;C=C.replace(new RegExp(c.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),se)}let L=F.resolve(process.cwd(),`.temp.mp.${f}.html`);O.writeFileSync(L,C),g.push(L),l[f]=L}let o={build:{rollupOptions:{input:l,output:{entryFileNames:"assets/[name]-[hash].js",chunkFileNames:"assets/[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}},emptyOutDir:!1},define:{}},p=o;return s&&(p=(0,me.mergeConfig)(o,s)),Object.keys(u).length>0&&(p.define={...p.define,...u}),p.build||(p.build={}),p.build.rollupOptions||(p.build.rollupOptions={}),p.build.rollupOptions.input=l,p.build.emptyOutDir=!1,i(`\u7B56\u7565 "${e}" - ${t.length} \u4E2A\u9875\u9762`),p}function A(e=[]){let t=e.findIndex(s=>s==="--outDir");if(t!==-1&&t+1<e.length){let s=e[t+1];return F.resolve(process.cwd(),s)}let r=e.find(s=>s.startsWith("--outDir="));if(r){let s=r.split("=")[1];return F.resolve(process.cwd(),s)}return F.resolve(process.cwd(),"dist")}function ie(e=[]){let t=A(e),r=W(!0);try{O.existsSync(t)&&(O.rmSync(t,{recursive:!0,force:!0}),r(`\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55: ${F.relative(process.cwd(),t)}`))}catch(s){r(`\u26A0\uFE0F \u6E05\u7406\u8F93\u51FA\u76EE\u5F55\u5931\u8D25: ${t}`,s)}}function Ne(e){let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[]}=e,s=W(!0);try{let n=Q.glob.sync(t,{cwd:process.cwd()});return U(n,t,r,s)}catch(n){throw s("\u53D1\u73B0\u9875\u9762\u5931\u8D25:",n),n}}function ae(e){let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[],pageConfigs:s={}}=e,n=W(!1),a=new Set,c=Q.glob.sync(t,{cwd:process.cwd()}),i=U(c,t,r,n);if(i.length===0)throw new Error(`\u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6: ${t}`);try{for(let l of i){let g={pageName:l.name,filePath:l.file,relativePath:F.relative(process.cwd(),l.file)},u=R(s,g,n),o=(u==null?void 0:u.strategy)||"default";a.add(o)}return Array.from(a).sort()}catch(l){return n("\u83B7\u53D6\u53EF\u7528\u7B56\u7565\u5931\u8D25:",l),["default"]}}var me,Q,F,O,N=_(()=>{"use strict";P();me=require("vite"),Q=require("glob"),F=E(require("path")),O=E(require("fs"));ne();re();oe()});var he={};G(he,{hasCustomConfig:()=>X,loadUserConfig:()=>Z});function X(){for(let e of ye){let t=I.resolve(process.cwd(),e);if(B.existsSync(t))return!0}return!1}async function Z(e){let t=await ke();if(t){let r=t(e);return r||{}}return null}async function Ue(e){if(e.endsWith(".ts"))try{let t=await B.promises.readFile(e,"utf-8"),r;try{r=await import("esbuild")}catch{throw console.error(`
2
+ "use strict";var Ie=Object.create;var z=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var je=Object.getOwnPropertyNames;var Ae=Object.getPrototypeOf,Le=Object.prototype.hasOwnProperty;var _=(e,t)=>()=>(e&&(t=e(e=0)),t);var N=(e,t)=>{for(var r in t)z(e,r,{get:t[r],enumerable:!0})},pe=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of je(t))!Le.call(e,n)&&n!==r&&z(e,n,{get:()=>t[n],enumerable:!(s=Re(t,n))||s.enumerable});return e};var E=(e,t,r)=>(r=e!=null?Ie(Ae(e)):{},pe(t||!e||!e.__esModule?z(r,"default",{value:e,enumerable:!0}):r,e)),Ue=e=>pe(z({},"__esModule",{value:!0}),e);var P=_(()=>{"use strict"});function k(e,t,r,s){let n=[],a=new Map,c=t.replace(/\/\*.*$/,"");(!c||c===t)&&(c=R.dirname(t.split("*")[0]));let l=[];for(let g of e){if(r.includes(g))continue;let f=g.replace(/\\/g,"/"),u=c.replace(/\\/g,"/"),p=R.posix.relative(u,f).split("/");if(p.length===1){let o=p[0],m=R.posix.basename(o,R.posix.extname(o));l.push({name:m,file:g,priority:1})}else if(p.length>=2){let o=R.posix.basename(f,R.posix.extname(f)),m=p[0];o==="main"&&l.push({name:m,file:g,priority:2})}}for(let g of l){let f=a.get(g.name);f?g.priority>f.priority&&a.set(g.name,{file:g.file,priority:g.priority}):a.set(g.name,{file:g.file,priority:g.priority})}for(let[g,{file:f}]of a.entries())n.push({name:g,file:f});return n}var R,re=_(()=>{"use strict";P();R=E(require("path"))});var ue={};N(ue,{getPageConfig:()=>I});function I(e,t,r){if(!e)return null;if(typeof e=="function")return e(t);for(let[s,n]of Object.entries(e)){if(s===t.pageName)return r(`\u7CBE\u786E\u5339\u914D\u9875\u9762 ${t.pageName}:`,n),n;if(n.match&&(Array.isArray(n.match)?n.match:[n.match]).some(l=>q(l,t.pageName)||q(l,t.relativePath)||q(l,t.filePath)))return r(`\u6A21\u5F0F\u5339\u914D\u9875\u9762 ${t.pageName} (\u6A21\u5F0F: ${n.match}):`,n),{...n,match:void 0};if(q(s,t.pageName))return r(`Glob\u5339\u914D\u9875\u9762 ${t.pageName} (\u6A21\u5F0F: ${s}):`,n),n}return null}function q(e,t){let r=e.replace(/\*\*/g,"__DOUBLE_STAR__").replace(/\*/g,"[^/]*").replace(/__DOUBLE_STAR__/g,".*");return new RegExp(`^${r}$`).test(t)}var J=_(()=>{"use strict";P()});function me(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function W(e){return(...t)=>{e&&console.log("[vite-plugin-multi-page]",...t)}}var oe=_(()=>{"use strict";P()});var X={};N(X,{cleanViteOutputDirectory:()=>ie,discoverPages:()=>Ne,generateBuildConfig:()=>B,getAvailableStrategies:()=>ae,getViteOutputDirectory:()=>L});function B(e){var i;let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[],template:s="index.html",placeholder:n="<!--VITE_MULTI_PAGE_ENTRY-->",strategies:a={},pageConfigs:c={},forceBuildStrategy:l,forceBuildPage:g}=e,f=W(!0),u={};try{let p=K.glob.sync(t,{cwd:process.cwd()}),o=k(p,t,r,f);if(o.length===0)return f("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6"),{};let m=new Map,x=new Map;for(let S of o){let $={pageName:S.name,filePath:S.file,relativePath:F.relative(process.cwd(),S.file)},w=I(c,$,f),C=(w==null?void 0:w.strategy)||"default";m.set(S.name,C),x.has(C)||x.set(C,[]),(i=x.get(C))==null||i.push(S.name)}if(f(`\u{1F4C4} \u53D1\u73B0 ${o.length} \u4E2A\u9875\u9762: ${o.map(S=>S.name).join(", ")}`),g){if(!o.find(A=>A.name===g))return f(`\u8B66\u544A: \u672A\u627E\u5230\u9875\u9762 "${g}"`),{};let $=m.get(g)||"default",w=a[$]||{},C=Q(`single-${g}`,[g],o,w,c,s,n,f);return u[`single-${g}`]=C,u}if(l){let S=x.get(l)||[];if(S.length===0)return f(`\u8B66\u544A: \u7B56\u7565 "${l}" \u4E0B\u6CA1\u6709\u9875\u9762`),{};f(`\u5F3A\u5236\u6784\u5EFA\u7B56\u7565: ${l}, \u9875\u9762: ${S.join(", ")}`);let $=Q(l,S,o,a[l],c,s,n,f);return u[l]=$,u}for(let[S,$]of x){if($.length===0)continue;let w=a[S]||{},C=Q(S,$,o,w,c,s,n,f);u[S]=C}if(Object.keys(u).length===0){f("\u8B66\u544A: \u672A\u751F\u6210\u4EFB\u4F55\u6784\u5EFA\u914D\u7F6E\uFF0C\u521B\u5EFA\u9ED8\u8BA4\u914D\u7F6E");let S=o.map(w=>w.name),$=Q("default",S,o,{},c,s,n,f);u.default=$}let h=Object.keys(u);return f(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${h.join(", ")}`),u}catch(p){throw f("\u751F\u6210\u6784\u5EFA\u914D\u7F6E\u5931\u8D25:",p),p}}function Q(e,t,r,s,n,a,c,l){let g={},f=[],u={};for(let o of t){let m=r.find(ne=>ne.name===o);if(!m)continue;let x={pageName:o,filePath:m.file,relativePath:F.relative(process.cwd(),m.file),strategy:e},h=I(n,x,l);h!=null&&h.define&&Object.assign(u,h.define);let S=a,$=`${o}.html`;O.existsSync(F.resolve(process.cwd(),$))?S=$:h!=null&&h.template&&(S=h.template);let w=F.resolve(process.cwd(),S);if(!O.existsSync(w)){l(`\u8B66\u544A: \u6A21\u677F\u6587\u4EF6\u4E0D\u5B58\u5728: ${S}`);continue}let C=O.readFileSync(w,"utf-8");if(C.includes(c)){let ne=`./${m.file}`;C=C.replace(new RegExp(c.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),ne)}let A=F.resolve(process.cwd(),`.temp.mp.${o}.html`);O.writeFileSync(A,C),f.push(A),g[o]=A}let i={build:{rollupOptions:{input:g,output:{entryFileNames:"assets/[name]-[hash].js",chunkFileNames:"assets/[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}},emptyOutDir:!1},define:{}},p=i;return s&&(p=(0,de.mergeConfig)(i,s)),Object.keys(u).length>0&&(p.define={...p.define,...u}),p.build||(p.build={}),p.build.rollupOptions||(p.build.rollupOptions={}),p.build.rollupOptions.input=g,p.build.emptyOutDir=!1,l(`\u7B56\u7565 "${e}" - ${t.length} \u4E2A\u9875\u9762`),p}function L(e=[]){let t=e.findIndex(s=>s==="--outDir");if(t!==-1&&t+1<e.length){let s=e[t+1];return F.resolve(process.cwd(),s)}let r=e.find(s=>s.startsWith("--outDir="));if(r){let s=r.split("=")[1];return F.resolve(process.cwd(),s)}return F.resolve(process.cwd(),"dist")}function ie(e=[]){let t=L(e),r=W(!0);try{O.existsSync(t)&&(O.rmSync(t,{recursive:!0,force:!0}),r(`\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55: ${F.relative(process.cwd(),t)}`))}catch(s){r(`\u26A0\uFE0F \u6E05\u7406\u8F93\u51FA\u76EE\u5F55\u5931\u8D25: ${t}`,s)}}function Ne(e){let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[]}=e,s=W(!0);try{let n=K.glob.sync(t,{cwd:process.cwd()});return k(n,t,r,s)}catch(n){throw s("\u53D1\u73B0\u9875\u9762\u5931\u8D25:",n),n}}function ae(e){let{entry:t="src/pages/*/main.{ts,js}",exclude:r=[],pageConfigs:s={}}=e,n=W(!1),a=new Set,c=K.glob.sync(t,{cwd:process.cwd()}),l=k(c,t,r,n);if(l.length===0)throw new Error(`\u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6: ${t}`);try{for(let g of l){let f={pageName:g.name,filePath:g.file,relativePath:F.relative(process.cwd(),g.file)},u=I(s,f,n),i=(u==null?void 0:u.strategy)||"default";a.add(i)}return Array.from(a).sort()}catch(g){return n("\u83B7\u53D6\u53EF\u7528\u7B56\u7565\u5931\u8D25:",g),["default"]}}var de,K,F,O,U=_(()=>{"use strict";P();de=require("vite"),K=require("glob"),F=E(require("path")),O=E(require("fs"));re();J();oe()});var ve={};N(ve,{hasCustomConfig:()=>Z,loadUserConfig:()=>ee});function Z(){for(let e of he){let t=j.resolve(process.cwd(),e);if(G.existsSync(t))return!0}return!1}async function ee(e){let t=await Be();if(t){let r=t(e);return r||{}}return null}async function ke(e){if(e.endsWith(".ts"))try{let t=await G.promises.readFile(e,"utf-8"),r;try{r=await import("esbuild")}catch{throw console.error(`
3
3
  \u274C \u65E0\u6CD5\u52A0\u8F7D TypeScript \u914D\u7F6E\u6587\u4EF6\uFF0C\u56E0\u4E3A\u627E\u4E0D\u5230 esbuild \u4F9D\u8D56\u3002`),console.error(`
4
4
  \u{1F4A1} \u8BF7\u9009\u62E9\u4EE5\u4E0B\u89E3\u51B3\u65B9\u6848\u4E4B\u4E00\uFF1A`),console.error(' 1. \u5B89\u88C5 esbuild (peerDependency)\uFF1Anpm install esbuild@">=0.19.3" --save-dev'),console.error(" 2. \u6216\u8005\u5982\u679C\u4F7F\u7528 Vite \u9879\u76EE\uFF0Cesbuild \u901A\u5E38\u5DF2\u5B89\u88C5\uFF0C\u8BF7\u68C0\u67E5\u7248\u672C\u662F\u5426 >=0.19.3"),console.error(" 3. \u4F7F\u7528 JavaScript \u914D\u7F6E\u6587\u4EF6\uFF1A\u5C06 multipage.config.ts \u91CD\u547D\u540D\u4E3A multipage.config.js"),console.error(` 4. \u4F7F\u7528 ESM \u914D\u7F6E\u6587\u4EF6\uFF1A\u5C06 multipage.config.ts \u91CD\u547D\u540D\u4E3A multipage.config.mjs
5
- `),new Error(`\u9700\u8981 esbuild \u4F9D\u8D56\u6765\u5904\u7406 TypeScript \u914D\u7F6E\u6587\u4EF6: ${I.basename(e)}`)}let s=await r.transform(t,{loader:"ts",format:"cjs",target:"node16",sourcemap:!1}),n=new H.Module(e);return n.filename=e,n.paths=H.Module._nodeModulePaths(I.dirname(e)),n._compile(s.code,e),n.exports}catch(t){if(t instanceof Error&&t.message.includes("\u9700\u8981 esbuild \u4F9D\u8D56"))throw t;console.warn("esbuild \u8F6C\u8BD1\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7B80\u5355\u8F6C\u6362:",t);let s=(await B.promises.readFile(e,"utf-8")).replace(/export\s+default\s+/,"module.exports = ").replace(/import\s+.*?from\s+['"][^'"]*['"];?\s*/g,"").replace(/:\s*[^=,})\]]+/g,""),n=new H.Module(e);return n.filename=e,n.paths=H.Module._nodeModulePaths(I.dirname(e)),n._compile(s,e),n.exports}if(e.endsWith(".js")||e.endsWith(".mjs"))return import(`${(0,de.pathToFileURL)(e).href}?t=${Date.now()}`);throw new Error(`\u4E0D\u652F\u6301\u7684\u914D\u7F6E\u6587\u4EF6\u7C7B\u578B: ${e}`)}async function ke(){let e=process.cwd();for(let t of ye){let r=I.resolve(e,t);if(B.existsSync(r))try{let s=await Ue(r),n=s.default||s;if(typeof n=="function")return n;console.warn(`\u914D\u7F6E\u6587\u4EF6 ${t} \u5FC5\u987B\u9ED8\u8BA4\u5BFC\u51FA\u4E00\u4E2A\u51FD\u6570`)}catch(s){t.endsWith(".ts")?(console.error(`\u52A0\u8F7DTypeScript\u914D\u7F6E\u6587\u4EF6 ${t} \u5931\u8D25:`,s),console.log("\u63D0\u793A\uFF1A\u786E\u4FDD\u4F60\u7684\u9879\u76EE\u652F\u6301TypeScript\uFF0C\u6216\u8005\u4F7F\u7528 .js/.mjs \u914D\u7F6E\u6587\u4EF6")):console.error(`\u52A0\u8F7D\u914D\u7F6E\u6587\u4EF6 ${t} \u5931\u8D25:`,s)}}return null}var B,I,de,H,ye,ce=_(()=>{"use strict";P();B=E(require("fs")),I=E(require("path")),de=require("url"),H=require("module"),ye=["multipage.config.js","multipage.config.mjs","multipage.config.ts"]});var xe={};G(xe,{DEFAULT_CONFIG:()=>T,isEmptyConfig:()=>Be,mergeWithDefaults:()=>V});function V(e){return e?{entry:e.entry??T.entry,exclude:e.exclude??T.exclude,template:e.template??T.template,placeholder:e.placeholder??T.placeholder,debug:e.debug??T.debug,merge:e.merge??T.merge,strategies:e.strategies??T.strategies,pageConfigs:e.pageConfigs??T.pageConfigs,__forceBuildStrategy:e.__forceBuildStrategy}:{...T}}function Be(e){if(Object.keys(e).length===0)return!0;let t=e.entry&&e.entry!==T.entry,r=e.strategies&&Object.keys(e.strategies).length>0,s=e.pageConfigs&&(typeof e.pageConfigs=="function"||Object.keys(e.pageConfigs).length>0);return!t&&!r&&!s}var T,ee=_(()=>{"use strict";P();T={entry:"src/pages/**/*.{ts,js}",exclude:[],template:"index.html",placeholder:"{{ENTRY_FILE}}",debug:!1,merge:"all",strategies:{default:{}},pageConfigs:{}}});function Ve(e,t,r){try{let s=ve.glob.sync(t.entry,{cwd:process.cwd()}),n=U(s,t.entry,t.exclude,r);if(n.length===0){r("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6");return}let a=t.devStrategy||e.config.__cliStrategy||e.config.strategy;a&&(r(`\u5F00\u53D1\u670D\u52A1\u5668\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${a}`),n=n.filter(c=>{let i={pageName:c.name,filePath:c.file,relativePath:D.relative(process.cwd(),c.file),strategy:void 0,isMatched:!1},l=R(t.pageConfigs,i,r),g=(l==null?void 0:l.strategy)||"default";return a==="default"?g==="default":g===a}),r(`\u7B56\u7565 "${a}" \u4E0B\u53EF\u7528\u7684\u9875\u9762: ${n.map(c=>c.name).join(", ")||"\u65E0"}`)),r("\u5F00\u53D1\u670D\u52A1\u5668\u5E94\u7528\u7684\u5165\u53E3\u6587\u4EF6:",n),e.middlewares.use(async(c,i,l)=>{try{let u=(c.url||"").split("?")[0];if(u==="/"){let f=We(n,t,r);i.statusCode=200,i.setHeader("Content-Type","text/html"),i.end(f);return}if(u.match(/\.(js|css|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|map)$/)&&!u.endsWith(".html")||u.startsWith("/@")||u.includes("__vite")||u.startsWith("/node_modules"))return l();let o="";if(u.endsWith(".html"))o=D.basename(u,".html");else if(u.startsWith("/")){let f=u.substring(1);if(n.find(m=>m.name===f))o=f;else{let m=f.split("/");if(m.length>1){let $=m[0];n.find(h=>h.name===$)&&(o=$,r(`History \u8DEF\u7531\u5339\u914D: ${u} -> ${$}`))}}}if(!o)return l();let p=n.find(f=>f.name===o);return p?Ge(i,p,t,r):l()}catch(g){r(`\u5F00\u53D1\u670D\u52A1\u5668\u5904\u7406\u8BF7\u6C42\u5931\u8D25: ${g}`),l(g)}}),r("\u5F00\u53D1\u670D\u52A1\u5668\u914D\u7F6E\u5B8C\u6210")}catch(s){throw r(`\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668\u5931\u8D25: ${s}`),s}}function Ge(e,t,r,s){var u;let n={pageName:t.name,filePath:t.file,relativePath:D.relative(process.cwd(),t.file),strategy:void 0,isMatched:!1},a=R(r.pageConfigs,n,s);if(a!=null&&a.strategy)n.strategy=a.strategy;else if((u=r.appliedStrategies)!=null&&u.has(t.name)){let o=r.appliedStrategies.get(t.name);o&&(n.strategy=o)}let c="",i=D.resolve(process.cwd(),`${t.name}.html`);if(Y.existsSync(i)?c=i:a!=null&&a.template?c=D.resolve(process.cwd(),a.template):c=D.resolve(process.cwd(),r.template),!Y.existsSync(c)){e.statusCode=404,e.end("Template not found");return}let l=Y.readFileSync(c,"utf-8");if(l.includes(r.placeholder)){let o=l;if(l=l.split(r.placeholder).join(`/${t.file}`),l===o){let p=ue(r.placeholder),f=new RegExp(p,"g");l=o.replace(f,`/${t.file}`),l===o&&(l=o.replace(/\{\{ENTRY_FILE\}\}/g,`/${t.file}`))}}if(a!=null&&a.define){let o=Object.entries(a.define).map(([p,f])=>{let m=typeof f=="string"?`"${f}"`:JSON.stringify(f);return`window.${p} = ${m};`}).join(`
6
- `);o&&(l=l.replace(/<\/head>/i,`<script type="text/javascript">
7
- ${o}
5
+ `),new Error(`\u9700\u8981 esbuild \u4F9D\u8D56\u6765\u5904\u7406 TypeScript \u914D\u7F6E\u6587\u4EF6: ${j.basename(e)}`)}let s=await r.transform(t,{loader:"ts",format:"cjs",target:"node16",sourcemap:!1}),n=new Y.Module(e);return n.filename=e,n.paths=Y.Module._nodeModulePaths(j.dirname(e)),n._compile(s.code,e),n.exports}catch(t){if(t instanceof Error&&t.message.includes("\u9700\u8981 esbuild \u4F9D\u8D56"))throw t;console.warn("esbuild \u8F6C\u8BD1\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7B80\u5355\u8F6C\u6362:",t);let s=(await G.promises.readFile(e,"utf-8")).replace(/export\s+default\s+/,"module.exports = ").replace(/import\s+.*?from\s+['"][^'"]*['"];?\s*/g,"").replace(/:\s*[^=,})\]]+/g,""),n=new Y.Module(e);return n.filename=e,n.paths=Y.Module._nodeModulePaths(j.dirname(e)),n._compile(s,e),n.exports}if(e.endsWith(".js")||e.endsWith(".mjs"))return import(`${(0,ye.pathToFileURL)(e).href}?t=${Date.now()}`);throw new Error(`\u4E0D\u652F\u6301\u7684\u914D\u7F6E\u6587\u4EF6\u7C7B\u578B: ${e}`)}async function Be(){let e=process.cwd();for(let t of he){let r=j.resolve(e,t);if(G.existsSync(r))try{let s=await ke(r),n=s.default||s;if(typeof n=="function")return n;console.warn(`\u914D\u7F6E\u6587\u4EF6 ${t} \u5FC5\u987B\u9ED8\u8BA4\u5BFC\u51FA\u4E00\u4E2A\u51FD\u6570`)}catch(s){t.endsWith(".ts")?(console.error(`\u52A0\u8F7DTypeScript\u914D\u7F6E\u6587\u4EF6 ${t} \u5931\u8D25:`,s),console.log("\u63D0\u793A\uFF1A\u786E\u4FDD\u4F60\u7684\u9879\u76EE\u652F\u6301TypeScript\uFF0C\u6216\u8005\u4F7F\u7528 .js/.mjs \u914D\u7F6E\u6587\u4EF6")):console.error(`\u52A0\u8F7D\u914D\u7F6E\u6587\u4EF6 ${t} \u5931\u8D25:`,s)}}return null}var G,j,ye,Y,he,ce=_(()=>{"use strict";P();G=E(require("fs")),j=E(require("path")),ye=require("url"),Y=require("module"),he=["multipage.config.js","multipage.config.mjs","multipage.config.ts"]});var xe={};N(xe,{DEFAULT_CONFIG:()=>T,isEmptyConfig:()=>Ge,mergeWithDefaults:()=>V});function V(e){return e?{entry:e.entry??T.entry,exclude:e.exclude??T.exclude,template:e.template??T.template,placeholder:e.placeholder??T.placeholder,debug:e.debug??T.debug,merge:e.merge??T.merge,strategies:e.strategies??T.strategies,pageConfigs:e.pageConfigs??T.pageConfigs,__forceBuildStrategy:e.__forceBuildStrategy}:{...T}}function Ge(e){if(Object.keys(e).length===0)return!0;let t=e.entry&&e.entry!==T.entry,r=e.strategies&&Object.keys(e.strategies).length>0,s=e.pageConfigs&&(typeof e.pageConfigs=="function"||Object.keys(e.pageConfigs).length>0);return!t&&!r&&!s}var T,te=_(()=>{"use strict";P();T={entry:"src/pages/**/*.{ts,js}",exclude:[],template:"index.html",placeholder:"{{ENTRY_FILE}}",debug:!1,merge:"all",strategies:{default:{}},pageConfigs:{}}});function Ve(e,t,r){try{let s=Se.glob.sync(t.entry,{cwd:process.cwd()}),n=k(s,t.entry,t.exclude,r);if(n.length===0){r("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6");return}let a=t.devStrategy||e.config.__cliStrategy||e.config.strategy;a&&(r(`\u5F00\u53D1\u670D\u52A1\u5668\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${a}`),n=n.filter(c=>{let l={pageName:c.name,filePath:c.file,relativePath:D.relative(process.cwd(),c.file),strategy:void 0,isMatched:!1},g=I(t.pageConfigs,l,r),f=(g==null?void 0:g.strategy)||"default";return a==="default"?f==="default":f===a}),r(`\u7B56\u7565 "${a}" \u4E0B\u53EF\u7528\u7684\u9875\u9762: ${n.map(c=>c.name).join(", ")||"\u65E0"}`)),r("\u5F00\u53D1\u670D\u52A1\u5668\u5E94\u7528\u7684\u5165\u53E3\u6587\u4EF6:",n),e.middlewares.use(async(c,l,g)=>{try{let u=(c.url||"").split("?")[0];if(u==="/"){let o=Ye(n,t,r);l.statusCode=200,l.setHeader("Content-Type","text/html"),l.end(o);return}if(u.match(/\.(js|css|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|map)$/)&&!u.endsWith(".html")||u.startsWith("/@")||u.includes("__vite")||u.startsWith("/node_modules"))return g();let i="";if(u.endsWith(".html"))i=D.basename(u,".html");else if(u.startsWith("/")){let o=u.substring(1);if(n.find(m=>m.name===o))i=o;else{let m=o.split("/");if(m.length>1){let x=m[0];n.find(h=>h.name===x)&&(i=x,r(`History \u8DEF\u7531\u5339\u914D: ${u} -> ${x}`))}}}if(!i)return g();let p=n.find(o=>o.name===i);return p?We(l,p,t,r):g()}catch(f){r(`\u5F00\u53D1\u670D\u52A1\u5668\u5904\u7406\u8BF7\u6C42\u5931\u8D25: ${f}`),g(f)}}),r("\u5F00\u53D1\u670D\u52A1\u5668\u914D\u7F6E\u5B8C\u6210")}catch(s){throw r(`\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668\u5931\u8D25: ${s}`),s}}function We(e,t,r,s){var u;let n={pageName:t.name,filePath:t.file,relativePath:D.relative(process.cwd(),t.file),strategy:void 0,isMatched:!1},a=I(r.pageConfigs,n,s);if(a!=null&&a.strategy)n.strategy=a.strategy;else if((u=r.appliedStrategies)!=null&&u.has(t.name)){let i=r.appliedStrategies.get(t.name);i&&(n.strategy=i)}let c="",l=D.resolve(process.cwd(),`${t.name}.html`);if(H.existsSync(l)?c=l:a!=null&&a.template?c=D.resolve(process.cwd(),a.template):c=D.resolve(process.cwd(),r.template),!H.existsSync(c)){e.statusCode=404,e.end("Template not found");return}let g=H.readFileSync(c,"utf-8");if(g.includes(r.placeholder)){let i=g;if(g=g.split(r.placeholder).join(`/${t.file}`),g===i){let p=me(r.placeholder),o=new RegExp(p,"g");g=i.replace(o,`/${t.file}`),g===i&&(g=i.replace(/\{\{ENTRY_FILE\}\}/g,`/${t.file}`))}}if(a!=null&&a.define){let i=Object.entries(a.define).map(([p,o])=>{let m=typeof o=="string"?`"${o}"`:JSON.stringify(o);return`window.${p} = ${m};`}).join(`
6
+ `);i&&(g=g.replace(/<\/head>/i,`<script type="text/javascript">
7
+ ${i}
8
8
  </script>
9
- </head>`))}e.statusCode=200,e.setHeader("Content-Type","text/html"),e.end(l)}function We(e,t,r){try{let s=e.map(n=>{var g;let a={pageName:n.name,filePath:n.file,relativePath:D.relative(process.cwd(),n.file),strategy:void 0,isMatched:!1},c=R(t.pageConfigs,a,r),i="default";if(c!=null&&c.strategy)i=c.strategy;else if((g=t.appliedStrategies)!=null&&g.has(n.name)){let u=t.appliedStrategies.get(n.name);u&&(i=u)}let l=i!=="default"?`<span class="badge">${i}</span>`:"";return`
9
+ </head>`))}e.statusCode=200,e.setHeader("Content-Type","text/html"),e.end(g)}function Ye(e,t,r){try{let s=e.map(n=>{var f;let a={pageName:n.name,filePath:n.file,relativePath:D.relative(process.cwd(),n.file),strategy:void 0,isMatched:!1},c=I(t.pageConfigs,a,r),l="default";if(c!=null&&c.strategy)l=c.strategy;else if((f=t.appliedStrategies)!=null&&f.has(n.name)){let u=t.appliedStrategies.get(n.name);u&&(l=u)}let g=l!=="default"?`<span class="badge">${l}</span>`:"";return`
10
10
  <div class="page-item">
11
11
  <a href="${n.name}.html" class="page-link">
12
- ${n.name}${l}
12
+ ${n.name}${g}
13
13
  </a>
14
14
  <div class="page-path">${n.file}</div>
15
15
  </div>`}).join("");return`
@@ -102,7 +102,7 @@ ${o}
102
102
  <p>${s}</p>
103
103
  </body>
104
104
  </html>
105
- `}}var D,Y,ve,$e,Se=_(()=>{"use strict";P();D=E(require("path")),Y=E(require("fs")),ve=require("glob");ne();oe();re();$e=Ve});function be(e){return typeof e=="function"?e:()=>e}function Ce(e){return e}var Pe=_(()=>{"use strict";P()});var Te={};G(Te,{cleanViteOutputDirectory:()=>ie,default:()=>Ye,defineConfig:()=>be,defineConfigTransform:()=>Ce,generateBuildConfig:()=>k,getAvailableStrategies:()=>ae,getViteOutputDirectory:()=>A,mergeWithDefaults:()=>V,reorganizeAssetsInCLI:()=>He,viteMultiPage:()=>Fe});function Ee(e,t,r,s){let n=S.resolve(e,"assets");if(!y.existsSync(n)){s("assets\u76EE\u5F55\u4E0D\u5B58\u5728\uFF0C\u8DF3\u8FC7\u91CD\u7EC4");return}let a=y.readdirSync(e).filter(o=>o.endsWith(".html")).map(o=>S.resolve(e,o));if(a.length===0){if(s("\u672A\u627E\u5230HTML\u6587\u4EF6\uFF0C\u4F46\u4ECD\u9700\u6E05\u7406assets\u76EE\u5F55"),(t==="strategy"||t==="page")&&y.existsSync(n))try{y.rmSync(n,{recursive:!0,force:!0}),s("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(o){s("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",o)}return}let c=new Map,i=new Map;a.forEach(o=>{var w;let p=S.basename(o,".html");p.startsWith(".temp.mp.")&&(p=p.replace(".temp.mp.",""));let f=y.readFileSync(o,"utf-8"),m=[],$=/(?:src|href)="\/assets\/([^"]+)"/g,h;for(;(h=$.exec(f))!==null;){let C=h[1];m.push(C),i.has(C)||i.set(C,[]),(w=i.get(C))==null||w.push(p)}let v="";t==="page"&&(v=p);let b=S.resolve(e,v);c.set(p,{assets:m,targetDir:b}),s(`\u9875\u9762 ${p} \u4F9D\u8D56\u8D44\u6E90:`,m)}),s("\u7B2C\u4E00\u9636\u6BB5\u8865\u5145\uFF1A\u5206\u6790public\u76EE\u5F55\u8D44\u6E90");let l=new Set,g=S.resolve(process.cwd(),"public");if(y.existsSync(g)){let o=we.sync("**/*",{cwd:g,nodir:!0});for(let p of o)l.add(p),s(`\u53D1\u73B0public\u8D44\u6E90: ${p}`)}i.forEach((o,p)=>{o.length>1?s(`\u5171\u4EAB\u8D44\u6E90 ${p} \u88AB\u9875\u9762\u4F7F\u7528:`,o):s(`\u72EC\u5360\u8D44\u6E90 ${p} \u4EC5\u88AB\u9875\u9762 ${o[0]} \u4F7F\u7528`)}),c.forEach(({assets:o,targetDir:p},f)=>{let m=S.resolve(p,"assets");y.existsSync(m)||y.mkdirSync(m,{recursive:!0}),o.forEach($=>{let h=S.resolve(n,$),v=S.resolve(m,$);if(y.existsSync(h)){y.copyFileSync(h,v);let w=(i.get($)||[]).length>1?"\u5171\u4EAB\u8D44\u6E90":"\u72EC\u5360\u8D44\u6E90";s(`\u590D\u5236${w}\u5230 ${f}: assets/${$} -> ${S.relative(e,v)}`)}else s(`\u8B66\u544A: \u8D44\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728: ${h}`)}),y.existsSync(n)&&y.readdirSync(n).forEach(h=>{if(!o.includes(h)){let v=S.resolve(n,h),b=S.resolve(m,h);y.existsSync(v)&&(y.copyFileSync(v,b),s(`\u590D\u5236\u5176\u4ED6\u8D44\u6E90\u6587\u4EF6\u5230 ${f}: assets/${h} -> ${S.relative(e,b)}`))}})}),s("\u7B2C\u4E09\u9636\u6BB5\u8865\u5145\uFF1A\u5904\u7406public\u76EE\u5F55\u8D44\u6E90");let u=new Set;c.forEach(({targetDir:o})=>{u.add(o)});for(let o of u)for(let p of l){let f=S.resolve(e,p),m=S.resolve(o,p);if(y.existsSync(f)){let $=S.dirname(m);y.existsSync($)||y.mkdirSync($,{recursive:!0}),y.copyFileSync(f,m),s(`\u590D\u5236public\u8D44\u6E90: ${p} -> ${S.relative(e,m)}`)}}if(c.forEach(({targetDir:o},p)=>{let f=S.resolve(e,`${p}.html`),m=p;if(y.existsSync(f)||(f=S.resolve(e,`.temp.mp.${p}.html`),y.existsSync(f)&&(m=p)),y.existsSync(f)){let $=y.readFileSync(f,"utf-8");$=$.replace(/(?:src|href)="\/assets\//g,b=>b.replace("/assets/","./assets/"));let h;t==="strategy"?h=S.resolve(o,`${m}.html`):t==="page"?h=S.resolve(o,"index.html"):h=f,y.writeFileSync(h,$),h!==f&&y.unlinkSync(f);let v=S.relative(e,h);s(`\u6309${t}\u5206\u7EC4\u79FB\u52A8HTML\u6587\u4EF6: ${m}.html -> ${v}`)}else s(`\u8B66\u544A: \u672A\u627E\u5230HTML\u6587\u4EF6: ${p}.html \u6216 .temp.mp.${p}.html`)}),y.existsSync(n))if(t==="strategy"||t==="page")try{y.rmSync(n,{recursive:!0,force:!0}),s("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(o){s("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",o)}else{i.forEach((p,f)=>{let m=S.resolve(n,f);y.existsSync(m)&&(y.unlinkSync(m),s(`\u6E05\u7406\u539F\u59CB\u8D44\u6E90\u6587\u4EF6: assets/${f}`))});let o=y.readdirSync(n);o.length===0?(y.rmdirSync(n),s("\u6E05\u7406\u7A7A\u7684assets\u76EE\u5F55")):s("assets\u76EE\u5F55\u4E2D\u8FD8\u6709\u672A\u5904\u7406\u7684\u6587\u4EF6:",o)}(t==="strategy"||t==="page")&&l.size>0&&(s("\u7B2C\u4E94\u9636\u6BB5\u8865\u5145\uFF1A\u6E05\u7406\u6839\u76EE\u5F55\u7684public\u8D44\u6E90"),l.forEach(o=>{let p=S.resolve(e,o);if(y.existsSync(p))try{y.unlinkSync(p),s(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90: ${o}`)}catch(f){s(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90\u5931\u8D25: ${o}`,f)}}),l.forEach(o=>{let p=S.resolve(e,o),f=S.dirname(p);for(;f!==e&&f!==S.dirname(f);)try{if(y.existsSync(f)&&y.readdirSync(f).length===0)y.rmdirSync(f),s(`\u5220\u9664\u7A7A\u76EE\u5F55: ${S.relative(e,f)}`),f=S.dirname(f);else break}catch{break}}))}function Fe(e){let t,r=[],s=()=>{};return{name:"vite-multi-page",async configResolved(n){let a=null;X()&&(a=await Z({mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}));let c=V(a);t=e?e(c,{mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}):c,s=t.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{},s("Vite\u914D\u7F6E\u5DF2\u89E3\u6790, \u4F7F\u7528\u914D\u7F6E:",{strategies:Object.keys(t.strategies||{}),entry:t.entry})},async config(n,{command:a}){var c;if(a==="serve"){let i=process.argv,l=i.find(g=>g.startsWith("--strategy="));if(l){let g=l.split("=")[1];g&&(process.env.VITE_MULTI_PAGE_STRATEGY=g)}else{let g=i.findIndex(u=>u==="--strategy");if(g!==-1&&g+1<i.length){let u=i[g+1];process.env.VITE_MULTI_PAGE_STRATEGY=u}}process.env.VITE_MULTI_PAGE_STRATEGY||(process.env.VITE_MULTI_PAGE_STRATEGY="default")}if(a==="build"){if(!t){let o=null;X()&&(o=await Z({mode:"production",command:"build",isCLI:!1}));let p=V(o);t=e?e(p,{mode:"production",command:"build",isCLI:!1}):p,s=t.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{}}s("\u914D\u7F6E\u6784\u5EFA\u6A21\u5F0F");let i=process.env.VITE_MULTI_PAGE_BUILD_SINGLE_PAGE;if(i){s(`\u5355\u9875\u9762\u6784\u5EFA\u6A21\u5F0F: ${i}`);let o=k({entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",merge:t.merge||"all",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},forceBuildStrategy:void 0,forceBuildPage:i}),p=Object.values(o);if(p.length>0){let f=p[0],m=(0,le.mergeConfig)(n,f);Object.assign(n,m),s(`\u5DF2\u5E94\u7528\u5355\u9875\u9762\u6784\u5EFA\u914D\u7F6E: ${i}`);return}else throw new Error(`\u672A\u627E\u5230\u9875\u9762: ${i}`)}let l=process.env.VITE_MULTI_PAGE_STRATEGY,g=k({entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",merge:t.merge||"all",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},forceBuildStrategy:l}),u=Object.keys(g)[0];if(u&&g[u]){s(`\u5E94\u7528\u6784\u5EFA\u7B56\u7565: ${u}`);let o=g[u],p=(0,le.mergeConfig)(n,o);Object.assign(n,p),s(`\u5DF2\u5E94\u7528\u7B56\u7565 "${u}" \u7684\u914D\u7F6E:`,{build:!!o.build,define:!!o.define,plugins:((c=o.plugins)==null?void 0:c.length)||0})}else throw s("\u672A\u627E\u5230\u53EF\u7528\u7684\u6784\u5EFA\u7B56\u7565\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E"),new Error(`\u274C \u6784\u5EFA\u5931\u8D25: \u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565
105
+ `}}var D,H,Se,be,$e=_(()=>{"use strict";P();D=E(require("path")),H=E(require("fs")),Se=require("glob");re();oe();J();be=Ve});function Ce(e){return typeof e=="function"?e:()=>e}function Pe(e){return e}var we=_(()=>{"use strict";P()});var _e={};N(_e,{cleanViteOutputDirectory:()=>ie,default:()=>ze,defineConfig:()=>Ce,defineConfigTransform:()=>Pe,generateBuildConfig:()=>B,getAvailableStrategies:()=>ae,getViteOutputDirectory:()=>L,mergeWithDefaults:()=>V,reorganizeAssetsInCLI:()=>He,viteMultiPage:()=>Te});function Fe(e,t,r,s){let n=b.resolve(e,"assets");if(!y.existsSync(n)){s("assets\u76EE\u5F55\u4E0D\u5B58\u5728\uFF0C\u8DF3\u8FC7\u91CD\u7EC4");return}let a=y.readdirSync(e).filter(i=>i.endsWith(".html")).map(i=>b.resolve(e,i));if(a.length===0){if(s("\u672A\u627E\u5230HTML\u6587\u4EF6\uFF0C\u4F46\u4ECD\u9700\u6E05\u7406assets\u76EE\u5F55"),(t==="strategy"||t==="page")&&y.existsSync(n))try{y.rmSync(n,{recursive:!0,force:!0}),s("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(i){s("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",i)}return}let c=new Map,l=new Map;a.forEach(i=>{var w;let p=b.basename(i,".html");p.startsWith(".temp.mp.")&&(p=p.replace(".temp.mp.",""));let o=y.readFileSync(i,"utf-8"),m=[],x=/(?:src|href)="\/assets\/([^"]+)"/g,h;for(;(h=x.exec(o))!==null;){let C=h[1];m.push(C),l.has(C)||l.set(C,[]),(w=l.get(C))==null||w.push(p)}let S="";t==="page"&&(S=p);let $=b.resolve(e,S);c.set(p,{assets:m,targetDir:$}),s(`\u9875\u9762 ${p} \u4F9D\u8D56\u8D44\u6E90:`,m)}),s("\u7B2C\u4E00\u9636\u6BB5\u8865\u5145\uFF1A\u5206\u6790public\u76EE\u5F55\u8D44\u6E90");let g=new Set,f=b.resolve(process.cwd(),"public");if(y.existsSync(f)){let i=Ee.sync("**/*",{cwd:f,nodir:!0});for(let p of i)g.add(p),s(`\u53D1\u73B0public\u8D44\u6E90: ${p}`)}l.forEach((i,p)=>{i.length>1?s(`\u5171\u4EAB\u8D44\u6E90 ${p} \u88AB\u9875\u9762\u4F7F\u7528:`,i):s(`\u72EC\u5360\u8D44\u6E90 ${p} \u4EC5\u88AB\u9875\u9762 ${i[0]} \u4F7F\u7528`)}),c.forEach(({assets:i,targetDir:p},o)=>{let m=b.resolve(p,"assets");y.existsSync(m)||y.mkdirSync(m,{recursive:!0}),i.forEach(x=>{let h=b.resolve(n,x),S=b.resolve(m,x);if(y.existsSync(h)){y.copyFileSync(h,S);let w=(l.get(x)||[]).length>1?"\u5171\u4EAB\u8D44\u6E90":"\u72EC\u5360\u8D44\u6E90";s(`\u590D\u5236${w}\u5230 ${o}: assets/${x} -> ${b.relative(e,S)}`)}else s(`\u8B66\u544A: \u8D44\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728: ${h}`)}),y.existsSync(n)&&y.readdirSync(n).forEach(h=>{if(!i.includes(h)){let S=b.resolve(n,h),$=b.resolve(m,h);y.existsSync(S)&&(y.copyFileSync(S,$),s(`\u590D\u5236\u5176\u4ED6\u8D44\u6E90\u6587\u4EF6\u5230 ${o}: assets/${h} -> ${b.relative(e,$)}`))}})}),s("\u7B2C\u4E09\u9636\u6BB5\u8865\u5145\uFF1A\u5904\u7406public\u76EE\u5F55\u8D44\u6E90");let u=new Set;c.forEach(({targetDir:i})=>{u.add(i)});for(let i of u)for(let p of g){let o=b.resolve(e,p),m=b.resolve(i,p);if(y.existsSync(o)){let x=b.dirname(m);y.existsSync(x)||y.mkdirSync(x,{recursive:!0}),y.copyFileSync(o,m),s(`\u590D\u5236public\u8D44\u6E90: ${p} -> ${b.relative(e,m)}`)}}if(c.forEach(({targetDir:i},p)=>{let o=b.resolve(e,`${p}.html`),m=p;if(y.existsSync(o)||(o=b.resolve(e,`.temp.mp.${p}.html`),y.existsSync(o)&&(m=p)),y.existsSync(o)){let x=y.readFileSync(o,"utf-8");x=x.replace(/(?:src|href)="\/assets\//g,$=>$.replace("/assets/","./assets/"));let h;t==="strategy"?h=b.resolve(i,`${m}.html`):t==="page"?h=b.resolve(i,"index.html"):h=o,y.writeFileSync(h,x),h!==o&&y.unlinkSync(o);let S=b.relative(e,h);s(`\u6309${t}\u5206\u7EC4\u79FB\u52A8HTML\u6587\u4EF6: ${m}.html -> ${S}`)}else s(`\u8B66\u544A: \u672A\u627E\u5230HTML\u6587\u4EF6: ${p}.html \u6216 .temp.mp.${p}.html`)}),y.existsSync(n))if(t==="strategy"||t==="page")try{y.rmSync(n,{recursive:!0,force:!0}),s("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(i){s("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",i)}else{l.forEach((p,o)=>{let m=b.resolve(n,o);y.existsSync(m)&&(y.unlinkSync(m),s(`\u6E05\u7406\u539F\u59CB\u8D44\u6E90\u6587\u4EF6: assets/${o}`))});let i=y.readdirSync(n);i.length===0?(y.rmdirSync(n),s("\u6E05\u7406\u7A7A\u7684assets\u76EE\u5F55")):s("assets\u76EE\u5F55\u4E2D\u8FD8\u6709\u672A\u5904\u7406\u7684\u6587\u4EF6:",i)}(t==="strategy"||t==="page")&&g.size>0&&(s("\u7B2C\u4E94\u9636\u6BB5\u8865\u5145\uFF1A\u6E05\u7406\u6839\u76EE\u5F55\u7684public\u8D44\u6E90"),g.forEach(i=>{let p=b.resolve(e,i);if(y.existsSync(p))try{y.unlinkSync(p),s(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90: ${i}`)}catch(o){s(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90\u5931\u8D25: ${i}`,o)}}),g.forEach(i=>{let p=b.resolve(e,i),o=b.dirname(p);for(;o!==e&&o!==b.dirname(o);)try{if(y.existsSync(o)&&y.readdirSync(o).length===0)y.rmdirSync(o),s(`\u5220\u9664\u7A7A\u76EE\u5F55: ${b.relative(e,o)}`),o=b.dirname(o);else break}catch{break}}))}function Te(e){let t,r=[],s=()=>{};return{name:"vite-multi-page",async configResolved(n){let a=null;Z()&&(a=await ee({mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}));let c=V(a);t=e?e(c,{mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}):c,s=t.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{},s("Vite\u914D\u7F6E\u5DF2\u89E3\u6790, \u4F7F\u7528\u914D\u7F6E:",{strategies:Object.keys(t.strategies||{}),entry:t.entry})},async config(n,{command:a}){var c;if(a==="serve"){let l=process.argv,g=l.find(f=>f.startsWith("--strategy="));if(g){let f=g.split("=")[1];f&&(process.env.VITE_MULTI_PAGE_STRATEGY=f)}else{let f=l.findIndex(u=>u==="--strategy");if(f!==-1&&f+1<l.length){let u=l[f+1];process.env.VITE_MULTI_PAGE_STRATEGY=u}}process.env.VITE_MULTI_PAGE_STRATEGY||(process.env.VITE_MULTI_PAGE_STRATEGY="default")}if(a==="build"){if(!t){let i=null;Z()&&(i=await ee({mode:"production",command:"build",isCLI:!1}));let p=V(i);t=e?e(p,{mode:"production",command:"build",isCLI:!1}):p,s=t.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{}}s("\u914D\u7F6E\u6784\u5EFA\u6A21\u5F0F");let l=process.env.VITE_MULTI_PAGE_BUILD_SINGLE_PAGE;if(l){s(`\u5355\u9875\u9762\u6784\u5EFA\u6A21\u5F0F: ${l}`);let i=B({entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",merge:t.merge||"all",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},forceBuildStrategy:void 0,forceBuildPage:l}),p=Object.values(i);if(p.length>0){let o=p[0],m=(0,le.mergeConfig)(n,o);Object.assign(n,m),s(`\u5DF2\u5E94\u7528\u5355\u9875\u9762\u6784\u5EFA\u914D\u7F6E: ${l}`);return}else throw new Error(`\u672A\u627E\u5230\u9875\u9762: ${l}`)}let g=process.env.VITE_MULTI_PAGE_STRATEGY,f=B({entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",merge:t.merge||"all",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},forceBuildStrategy:g}),u=Object.keys(f)[0];if(u&&f[u]){s(`\u5E94\u7528\u6784\u5EFA\u7B56\u7565: ${u}`);let i=f[u],p=(0,le.mergeConfig)(n,i);Object.assign(n,p),s(`\u5DF2\u5E94\u7528\u7B56\u7565 "${u}" \u7684\u914D\u7F6E:`,{build:!!i.build,define:!!i.define,plugins:((c=i.plugins)==null?void 0:c.length)||0})}else throw s("\u672A\u627E\u5230\u53EF\u7528\u7684\u6784\u5EFA\u7B56\u7565\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E"),new Error(`\u274C \u6784\u5EFA\u5931\u8D25: \u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565
106
106
 
107
107
  \u53EF\u80FD\u7684\u539F\u56E0\uFF1A
108
108
  1. \u914D\u7F6E\u6587\u4EF6\u8FD4\u56DE\u7A7A\u5BF9\u8C61 {}
@@ -117,7 +117,7 @@ export default () => ({
117
117
  strategies: {
118
118
  default: {}
119
119
  }
120
- });`)}},configureServer(n){if(n.config.command==="serve"){s("\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668");let a=process.env.VITE_MULTI_PAGE_STRATEGY||"default";s(`\u5F00\u53D1\u6A21\u5F0F\u7B56\u7565: ${a}`),$e(n,{entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},devStrategy:a},s)}},writeBundle(n){if(!(t!=null&&t.merge)||t.merge==="all")return;let a=n.dir||"dist",c=t.merge;s(`\u5E94\u7528\u6784\u5EFA\u4EA7\u7269\u5408\u5E76\u6A21\u5F0F: ${c}`);try{Ee(a,c,t,s)}catch(i){throw s("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",i),i}},buildEnd(){r.length>0&&(s(`\u6E05\u7406 ${r.length} \u4E2A\u4E34\u65F6\u6587\u4EF6`),r.forEach(n=>{try{y.existsSync(n)&&(y.unlinkSync(n),s(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6: ${n}`))}catch(a){s(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${n}`,a)}}),r.length=0)}}}function He(e,t,r,s){return Ee(e,t,r,s)}var y,S,le,we,Ye,_e=_(()=>{"use strict";P();y=E(require("fs")),S=E(require("path")),le=require("vite");Se();N();ce();ee();we=E(require("glob"));Pe();N();ee();Ye=Fe});var nt={};G(nt,{buildAll:()=>De});module.exports=Ae(nt);P();var fe=require("child_process"),d=E(require("fs")),x=E(require("path")),te=E(require("glob"));N();function ze(){let e=process.argv.slice(2),t=[],r=!1,s,n;for(let a=0;a<e.length;a++){let c=e[a];c==="--debug"?r=!0:c==="--cwd"?s=e[++a]:c==="--strategy"?n=e[++a].split(",").map(l=>l.trim()):c==="--help"||c==="-h"?(console.log(`
120
+ });`)}},configureServer(n){if(n.config.command==="serve"){s("\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668");let a=process.env.VITE_MULTI_PAGE_STRATEGY||"default";s(`\u5F00\u53D1\u6A21\u5F0F\u7B56\u7565: ${a}`),be(n,{entry:t.entry||"src/pages/**/*.{ts,js}",exclude:t.exclude||[],template:t.template||"index.html",placeholder:t.placeholder||"{{ENTRY_FILE}}",strategies:t.strategies||{},pageConfigs:t.pageConfigs||{},devStrategy:a},s)}},writeBundle(n){if(!(t!=null&&t.merge)||t.merge==="all")return;let a=n.dir||"dist",c=t.merge;s(`\u5E94\u7528\u6784\u5EFA\u4EA7\u7269\u5408\u5E76\u6A21\u5F0F: ${c}`);try{Fe(a,c,t,s)}catch(l){throw s("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",l),l}},buildEnd(){r.length>0&&(s(`\u6E05\u7406 ${r.length} \u4E2A\u4E34\u65F6\u6587\u4EF6`),r.forEach(n=>{try{y.existsSync(n)&&(y.unlinkSync(n),s(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6: ${n}`))}catch(a){s(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${n}`,a)}}),r.length=0)}}}function He(e,t,r,s){return Fe(e,t,r,s)}var y,b,le,Ee,ze,Oe=_(()=>{"use strict";P();y=E(require("fs")),b=E(require("path")),le=require("vite");$e();U();ce();te();Ee=E(require("glob"));we();U();te();ze=Te});var rt={};N(rt,{buildAll:()=>Me});module.exports=Ue(rt);P();var ge=require("child_process"),d=E(require("fs")),v=E(require("path")),se=E(require("glob"));U();function qe(){let e=process.argv.slice(2),t=[],r=!1,s,n;for(let a=0;a<e.length;a++){let c=e[a];c==="--debug"?r=!0:c==="--cwd"?s=e[++a]:c==="--strategy"?n=e[++a].split(",").map(g=>g.trim()):c==="--help"||c==="-h"?(console.log(`
121
121
  \u4F7F\u7528\u65B9\u6CD5: vite-mp [\u9009\u9879]
122
122
 
123
123
  \u9009\u9879:
@@ -135,11 +135,11 @@ export default () => ({
135
135
  vite-mp --debug # \u542F\u7528\u8C03\u8BD5\u6A21\u5F0F
136
136
  vite-mp --cwd example # \u5728example\u76EE\u5F55\u8FD0\u884C
137
137
  vite-mp --mode production --debug # \u4F20\u9012\u989D\u5916\u53C2\u6570\u7ED9vite
138
- `),process.exit(0)):c!=="build"&&t.push(c)}return{viteBuildArgs:t,debug:r,cwd:s,strategies:n}}async function qe(){let{loadUserConfig:e,hasCustomConfig:t}=await Promise.resolve().then(()=>(ce(),he)),{mergeWithDefaults:r}=await Promise.resolve().then(()=>(ee(),xe)),s=null;return t()?s=await e({mode:"production",command:"build",isCLI:!0}):console.log("\u2139\uFE0F \u672A\u627E\u5230\u914D\u7F6E\u6587\u4EF6\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E"),r(s)}function Je(e,t,r){return new Promise(s=>{var g;let n=r?console.log.bind(console,`[${e}]`):()=>{};n(`\u5F00\u59CB\u6784\u5EFA\u7B56\u7565: ${e}`);let a={...process.env,VITE_MULTI_PAGE_STRATEGY:e},c=["build",...t];n(`\u6267\u884C\u547D\u4EE4: npx vite ${c.join(" ")}`);let i=(0,fe.spawn)("npx",["vite",...c],{stdio:r?"inherit":"pipe",env:a,cwd:process.cwd()}),l="";r||(g=i.stderr)==null||g.on("data",u=>{l+=u.toString()}),i.on("close",u=>{let o=u===0,p=A(t);if(o){n(`\u2705 \u7B56\u7565 ${e} \u6784\u5EFA\u6210\u529F`);try{if(d.existsSync(p)){let f=d.readdirSync(p);for(let m of f)if(m.startsWith(".temp.mp.")&&m.endsWith(".html")){let $=x.resolve(p,m),v=`${m.replace(/^\.temp\.mp\./,"").replace(/\.html$/,"")}.html`,b=x.resolve(p,v);d.renameSync($,b),n(`\u91CD\u547D\u540DHTML: ${m} -> ${v}`)}}}catch(f){n("\u91CD\u547D\u540DHTML\u6587\u4EF6\u5931\u8D25:",f)}}else n(`\u274C \u7B56\u7565 ${e} \u6784\u5EFA\u5931\u8D25 (\u9000\u51FA\u7801: ${u})`),!r&&l&&console.error(`\u7B56\u7565 ${e} \u9519\u8BEF\u8F93\u51FA:`,l);s({strategy:e,success:o,error:o?void 0:l||`\u6784\u5EFA\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${u}`,outputDir:p})}),i.on("error",u=>{n(`\u274C \u7B56\u7565 ${e} \u6784\u5EFA\u51FA\u9519:`,u.message);let o=A(t);s({strategy:e,success:!1,error:u.message,outputDir:o})})})}function Qe(e,t,r){return new Promise(s=>{var u;let n=r?console.log.bind(console,`[${e}]`):()=>{};n(`\u5F00\u59CB\u6784\u5EFA\u9875\u9762: ${e}`);let a=x.resolve(process.cwd(),`dist-temp-${e}`),c={...process.env,VITE_MULTI_PAGE_BUILD_SINGLE_PAGE:e,VITE_MULTI_PAGE_TEMP_OUTPUT_DIR:a},i=["build","--outDir",a,...t];n(`\u6267\u884C\u547D\u4EE4: npx vite ${i.join(" ")}`);let l=(0,fe.spawn)("npx",["vite",...i],{stdio:r?"inherit":"pipe",env:c,cwd:process.cwd()}),g="";r||(u=l.stderr)==null||u.on("data",o=>{g+=o.toString()}),l.on("close",o=>{let p=o===0;p?n(`\u2705 \u9875\u9762 ${e} \u6784\u5EFA\u6210\u529F`):(n(`\u274C \u9875\u9762 ${e} \u6784\u5EFA\u5931\u8D25 (\u9000\u51FA\u7801: ${o})`),!r&&g&&console.error(`\u9875\u9762 ${e} \u9519\u8BEF\u8F93\u51FA:`,g)),s({pageName:e,success:p,error:p?void 0:g||`\u6784\u5EFA\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${o}`,outputDir:a})}),l.on("error",o=>{n(`\u274C \u9875\u9762 ${e} \u6784\u5EFA\u51FA\u9519:`,o.message),s({pageName:e,success:!1,error:o.message,outputDir:a})})})}async function Ke(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{};s("\u5F00\u59CB\u5408\u5E76\u6784\u5EFA\u7ED3\u679C...");let n=t.merge||"all";s(`\u4F7F\u7528\u5408\u5E76\u6A21\u5F0F: ${n}`),n==="all"?await Oe(e,r):n==="page"&&await Ze(e,t,r)}async function Xe(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{};s("\u5F00\u59CB\u5408\u5E76\u9875\u9762\u6784\u5EFA\u7ED3\u679C..."),s("page\u6A21\u5F0F\uFF1A\u6BCF\u4E2A\u9875\u9762\u72EC\u7ACB\u5B58\u653E\u5728\u81EA\u5DF1\u7684\u76EE\u5F55\u4E2D");let n=x.resolve(process.cwd(),"dist"),a=x.resolve(process.cwd(),".temp-merge");d.existsSync(a)&&d.rmSync(a,{recursive:!0,force:!0}),d.mkdirSync(a,{recursive:!0});for(let i of e){if(!i.success)continue;let l=i.outputDir;if(!d.existsSync(l)){s(`\u8B66\u544A: \u9875\u9762\u6784\u5EFA\u76EE\u5F55\u4E0D\u5B58\u5728: ${l}`);continue}s(`\u5904\u7406\u9875\u9762: ${i.pageName}`);let g=x.resolve(a,i.pageName);d.mkdirSync(g,{recursive:!0});let u=d.readdirSync(l,{withFileTypes:!0});for(let o of u){let p=x.resolve(l,o.name);if(o.isFile())if(o.name.endsWith(".html")){let f=x.resolve(g,"index.html");d.copyFileSync(p,f),s(`\u590D\u5236HTML: ${o.name} -> ${i.pageName}/index.html`)}else{let f=x.resolve(g,o.name);d.copyFileSync(p,f),s(`\u590D\u5236\u6587\u4EF6: ${o.name} -> ${i.pageName}/${o.name}`)}else if(o.isDirectory())if(o.name===i.pageName){let f=d.readdirSync(p,{withFileTypes:!0});for(let m of f){let $=x.resolve(p,m.name),h=x.resolve(g,m.name);m.isFile()?d.copyFileSync($,h):m.isDirectory()&&d.cpSync($,h,{recursive:!0})}s(`\u590D\u5236\u76EE\u5F55\u5185\u5BB9: ${o.name}/* -> ${i.pageName}/`)}else{let f=x.resolve(g,o.name);d.cpSync(p,f,{recursive:!0}),s(`\u590D\u5236\u76EE\u5F55: ${o.name} -> ${i.pageName}/${o.name}`)}}}let c=x.resolve(x.dirname(n),".dist-backup");d.existsSync(c)&&d.rmSync(c,{recursive:!0,force:!0}),d.existsSync(n)&&d.renameSync(n,c);try{d.renameSync(a,n),s(`\u6210\u529F\u91CD\u547D\u540D\u4E34\u65F6\u76EE\u5F55\u5230\u6700\u7EC8\u76EE\u5F55: ${a} -> ${n}`)}catch(i){let l=i instanceof Error?i.message:String(i);s(`\u91CD\u547D\u540D\u5931\u8D25\uFF0C\u5C1D\u8BD5\u590D\u5236\u65B9\u5F0F: ${l}`),d.cpSync(a,n,{recursive:!0}),d.rmSync(a,{recursive:!0,force:!0}),s(`\u4F7F\u7528\u590D\u5236\u65B9\u5F0F\u6210\u529F\u521B\u5EFA\u6700\u7EC8\u76EE\u5F55: ${n}`)}d.existsSync(c)&&(d.rmSync(c,{recursive:!0,force:!0}),s(`\u6E05\u7406\u5907\u4EFD\u76EE\u5F55: ${c}`));for(let i of e)i.outputDir&&d.existsSync(i.outputDir)&&(d.rmSync(i.outputDir,{recursive:!0,force:!0}),s(`\u6E05\u7406\u4E34\u65F6\u76EE\u5F55: ${i.outputDir}`));s("\u2705 \u9875\u9762\u6784\u5EFA\u7ED3\u679C\u5408\u5E76\u5B8C\u6210")}async function Oe(e,t){let r=t?console.log.bind(console,"[merge]"):()=>{},s=x.resolve(process.cwd(),"dist"),n=x.resolve(s,"assets");d.existsSync(n)||d.mkdirSync(n,{recursive:!0});let a=[];for(let c of e){if(!c.success)continue;let i=x.resolve(s,c.strategy);if(!d.existsSync(i)){r(`\u8B66\u544A: \u7B56\u7565\u76EE\u5F55\u4E0D\u5B58\u5728: ${i}`);continue}r(`\u5904\u7406\u7B56\u7565: ${c.strategy}`);let l=d.readdirSync(i,{withFileTypes:!0});for(let g of l){let u=x.resolve(i,g.name);if(g.isFile())if(g.name.endsWith(".html")){let o=x.resolve(s,g.name);d.copyFileSync(u,o),a.push(g.name),r(`\u590D\u5236HTML: ${g.name} -> dist/${g.name}`)}else{let o=x.resolve(s,g.name);d.copyFileSync(u,o),r(`\u590D\u5236\u6587\u4EF6: ${g.name} -> dist/${g.name}`)}else if(g.isDirectory()&&g.name==="assets"){let o=u,p=d.readdirSync(o,{withFileTypes:!0});for(let f of p){let m=x.resolve(o,f.name),$=x.resolve(n,f.name);if(f.isFile())if(d.existsSync($)){let h=d.readFileSync(m),v=d.readFileSync($);if(h.equals(v))r(`\u8DF3\u8FC7\u91CD\u590D\u8D44\u6E90: ${f.name}`);else{let b=x.extname(f.name),C=`${x.basename(f.name,b)}-${c.strategy}${b}`,L=x.resolve(n,C);d.copyFileSync(m,L),r(`\u590D\u5236\u8D44\u6E90(\u91CD\u547D\u540D): ${f.name} -> assets/${C}`)}}else d.copyFileSync(m,$),r(`\u590D\u5236\u8D44\u6E90: ${f.name} -> assets/${f.name}`);else if(f.isDirectory()){let h=x.resolve(n,f.name);d.existsSync(h)||d.mkdirSync(h,{recursive:!0}),d.cpSync(m,h,{recursive:!0}),r(`\u590D\u5236\u8D44\u6E90\u76EE\u5F55: ${f.name} -> assets/${f.name}`)}}}else if(g.isDirectory()){let o=x.resolve(s,g.name);d.cpSync(u,o,{recursive:!0}),r(`\u590D\u5236\u76EE\u5F55: ${g.name} -> dist/${g.name}`)}}}r("\u2705 \u6784\u5EFA\u7ED3\u679C\u5408\u5E76\u5B8C\u6210"),r(`\u{1F4C1} \u751F\u6210\u9875\u9762: ${a.join(", ")}`),r("\u{1F4E6} \u8D44\u6E90\u76EE\u5F55: dist/assets/"),r(`\u{1F527} \u5904\u7406\u7B56\u7565: ${e.filter(c=>c.success).map(c=>c.strategy).join(", ")}`)}async function Ze(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{};await Oe(e,r);let n=x.resolve(process.cwd(),"dist"),a=t.merge;s(`\u5E94\u7528${a}\u6A21\u5F0F\u7684\u8D44\u6E90\u91CD\u7EC4...`);try{let{reorganizeAssetsInCLI:c}=await Promise.resolve().then(()=>(_e(),Te));await c(n,a,t,s),s(`\u2705 ${a}\u6A21\u5F0F\u8D44\u6E90\u91CD\u7EC4\u5B8C\u6210`)}catch(c){throw s("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",c),c}}async function ge(e){let t=e?console.log.bind(console,"[cleanup]"):()=>{};t("\u6E05\u7406\u4E34\u65F6HTML\u6587\u4EF6...");let r=te.sync(".temp.mp.*.html",{cwd:process.cwd()});for(let s of r){let n=x.resolve(process.cwd(),s);try{d.unlinkSync(n),t(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6: ${s}`)}catch(a){t(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${s}`,a)}}r.length===0?t("\u6CA1\u6709\u627E\u5230\u4E34\u65F6\u6587\u4EF6"):t(`\u2705 \u6E05\u7406\u4E86 ${r.length} \u4E2A\u4E34\u65F6\u6587\u4EF6`)}async function et(e,t,r){let s=r?console.log.bind(console,"[cleanup]"):()=>{};s("\u6E05\u7406\u4E34\u65F6\u6587\u4EF6...");let n=t.merge||"all",a=te.sync(".temp.mp.*.html",{cwd:process.cwd()});for(let c of a){let i=x.resolve(process.cwd(),c);try{d.unlinkSync(i),s(`\u5220\u9664\u6839\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6: ${c}`)}catch(l){s(`\u5220\u9664\u6839\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${c}`,l)}}for(let c of e){let i=x.resolve(process.cwd(),"dist",c);if(d.existsSync(i)){let l=te.sync("*.mp.temp.html",{cwd:i});for(let g of l){let u=x.resolve(i,g);try{d.unlinkSync(u),s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6: ${c}/${g}`)}catch(o){s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${c}/${g}`,o)}}}}if(n==="all"){let c=x.resolve(process.cwd(),"dist");for(let i of e){let l=x.resolve(c,i);if(d.existsSync(l))try{d.rmSync(l,{recursive:!0,force:!0}),s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55: ${i}`)}catch(g){s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u5931\u8D25: ${i}`,g)}}}else s(`\u4FDD\u7559\u7B56\u7565\u76EE\u5F55 (merge\u6A21\u5F0F: ${n})`);s("\u2705 \u6E05\u7406\u5B8C\u6210")}async function De(){let{viteBuildArgs:e,debug:t,cwd:r,strategies:s}=ze(),n=t?console.log.bind(console,"[main]"):()=>{};if(r){let a=x.resolve(process.cwd(),r);d.existsSync(a)||(console.error(`\u274C \u6307\u5B9A\u7684\u76EE\u5F55\u4E0D\u5B58\u5728: ${a}`),process.exit(1)),process.chdir(a),n(`\u5207\u6362\u5DE5\u4F5C\u76EE\u5F55\u5230: ${a}`)}try{n("\u{1F4CB} \u52A0\u8F7D\u914D\u7F6E...");let a=await qe(),c=a.merge||"all";n("\u52A0\u8F7D\u7684\u914D\u7F6E:",a),n(`mergeMode: ${c}`),n("\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55...");let{cleanViteOutputDirectory:i}=await Promise.resolve().then(()=>(N(),K));i(e),c==="page"?await tt(a,e,t):await st(a,e,t,s)}catch(a){console.error("\u274C \u6784\u5EFA\u5931\u8D25:",a instanceof Error?a.message:a),process.exit(1)}}async function tt(e,t,r){let s=r?console.log.bind(console,"[page-mode]"):()=>{};s("\u{1F680} \u5F00\u59CBPage\u6A21\u5F0F\u6784\u5EFA...");let{discoverPages:n}=await Promise.resolve().then(()=>(N(),K)),a=n({entry:e.entry||"src/pages/*/main.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",pageConfigs:e.pageConfigs||{},strategies:e.strategies||{}});if(a.length===0)throw new Error("\u672A\u627E\u5230\u4EFB\u4F55\u9875\u9762");s(`\u53D1\u73B0\u9875\u9762: ${a.map(o=>o.name).join(", ")}`),s("\u{1F528} \u5F00\u59CB\u5E76\u884C\u6784\u5EFA\u9875\u9762...");let c=a.map(o=>Qe(o.name,t,r)),i=await Promise.all(c),l=i.filter(o=>o.success).length,g=i.length-l;console.log(`
139
- \u{1F4CA} \u9875\u9762\u6784\u5EFA\u7ED3\u679C\u7EDF\u8BA1:`),console.log(`\u2705 \u6210\u529F: ${l}`),console.log(`\u274C \u5931\u8D25: ${g}`),g>0&&(console.log(`
140
- \u274C \u5931\u8D25\u7684\u9875\u9762:`),i.filter(o=>!o.success).forEach(o=>{console.log(` - ${o.pageName}: ${o.error}`)}),await ge(r),process.exit(1)),s("\u{1F4E6} \u5408\u5E76\u9875\u9762\u6784\u5EFA\u7ED3\u679C..."),await Xe(i,e,r),await ge(r);let u=i.filter(o=>o.success);console.log(`
141
- \u{1F389} \u6240\u6709\u9875\u9762\u6784\u5EFA\u6210\u529F\uFF01`),console.log("\u{1F4C1} \u6784\u5EFA\u7ED3\u679C\u4F4D\u4E8E: dist/"),console.log(`\u{1F4E6} \u6784\u5EFA\u9875\u9762: ${u.map(o=>o.pageName).join(", ")}`)}async function st(e,t,r,s){let n=r?console.log.bind(console,"[strategy-mode]"):()=>{};n("\u{1F680} \u5F00\u59CB\u7B56\u7565\u6A21\u5F0F\u6784\u5EFA...");let{getAvailableStrategies:a}=await Promise.resolve().then(()=>(N(),K)),c=a({entry:e.entry||"src/pages/*/main.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",pageConfigs:e.pageConfigs||{},strategies:e.strategies||{}});if(c.length===0)throw new Error("\u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565");let i;if(s&&s.length>0){let m=s.filter($=>!c.includes($));if(m.length>0)throw new Error(`\u6307\u5B9A\u7684\u7B56\u7565\u4E0D\u5B58\u5728: ${m.join(", ")}
142
- \u53EF\u7528\u7B56\u7565: ${c.join(", ")}`);i=s,n(`\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${i.join(", ")}`)}else i=c,n(`\u6784\u5EFA\u6240\u6709\u53EF\u7528\u7B56\u7565: ${i.join(", ")}`);n("\u{1F528} \u5F00\u59CB\u5E76\u884C\u6784\u5EFA...");let l=i.map(m=>Je(m,t,r)),g=await Promise.all(l),u=g.filter(m=>m.success).length,o=g.length-u;console.log(`
143
- \u{1F4CA} \u6784\u5EFA\u7ED3\u679C\u7EDF\u8BA1:`),console.log(`\u2705 \u6210\u529F: ${u}`),console.log(`\u274C \u5931\u8D25: ${o}`),o>0&&(console.log(`
144
- \u274C \u5931\u8D25\u7684\u7B56\u7565:`),g.filter(m=>!m.success).forEach(m=>{console.log(` - ${m.strategy}: ${m.error}`)}),await ge(r),process.exit(1)),n("\u{1F4E6} \u5408\u5E76\u6784\u5EFA\u7ED3\u679C..."),await Ke(g,e,r),await et(i,e,r);let p=g.filter(m=>m.success),f=d.readdirSync(x.resolve(process.cwd(),"dist")).filter(m=>m.endsWith(".html"));console.log(`
145
- \u{1F389} \u6240\u6709\u7B56\u7565\u6784\u5EFA\u6210\u529F\uFF01`),console.log("\u{1F4C1} \u6784\u5EFA\u7ED3\u679C\u4F4D\u4E8E: dist/"),console.log(`\u{1F310} \u751F\u6210\u7684\u9875\u9762: ${f.join(", ")}`),console.log(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${p.map(m=>m.strategy).join(", ")}`)}require.main===module&&De().catch(e=>{console.error("\u274C \u672A\u5904\u7406\u7684\u9519\u8BEF:",e),process.exit(1)});0&&(module.exports={buildAll});
138
+ `),process.exit(0)):c!=="build"&&t.push(c)}return{viteBuildArgs:t,debug:r,cwd:s,strategies:n}}async function Je(){let{loadUserConfig:e,hasCustomConfig:t}=await Promise.resolve().then(()=>(ce(),ve)),{mergeWithDefaults:r}=await Promise.resolve().then(()=>(te(),xe)),s=null;return t()&&(s=await e({mode:"production",command:"build",isCLI:!0}),s||console.log("\u274C \u914D\u7F6E\u6587\u4EF6\u52A0\u8F7D\u5931\u8D25")),r(s)}function Qe(e,t,r){return new Promise(s=>{var f;let n=r?console.log.bind(console,`[${e}]`):()=>{};n(`\u5F00\u59CB\u6784\u5EFA\u7B56\u7565: ${e}`);let a={...process.env,VITE_MULTI_PAGE_STRATEGY:e},c=["build",...t];n(`\u6267\u884C\u547D\u4EE4: npx vite ${c.join(" ")}`);let l=(0,ge.spawn)("npx",["vite",...c],{stdio:r?"inherit":"pipe",env:a,cwd:process.cwd()}),g="";r||(f=l.stderr)==null||f.on("data",u=>{g+=u.toString()}),l.on("close",u=>{let i=u===0,p=L(t);if(i){n(`\u2705 \u7B56\u7565 ${e} \u6784\u5EFA\u6210\u529F`);try{if(d.existsSync(p)){let o=d.readdirSync(p);for(let m of o)if(m.startsWith(".temp.mp.")&&m.endsWith(".html")){let x=v.resolve(p,m),S=`${m.replace(/^\.temp\.mp\./,"").replace(/\.html$/,"")}.html`,$=v.resolve(p,S);d.renameSync(x,$),n(`\u91CD\u547D\u540DHTML: ${m} -> ${S}`)}}}catch(o){n("\u91CD\u547D\u540DHTML\u6587\u4EF6\u5931\u8D25:",o)}}else n(`\u274C \u7B56\u7565 ${e} \u6784\u5EFA\u5931\u8D25 (\u9000\u51FA\u7801: ${u})`),!r&&g&&console.error(`\u7B56\u7565 ${e} \u9519\u8BEF\u8F93\u51FA:`,g);s({strategy:e,success:i,error:i?void 0:g||`\u6784\u5EFA\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${u}`,outputDir:p})}),l.on("error",u=>{n(`\u274C \u7B56\u7565 ${e} \u6784\u5EFA\u51FA\u9519:`,u.message);let i=L(t);s({strategy:e,success:!1,error:u.message,outputDir:i})})})}function Ke(e,t,r,s){return new Promise(n=>{var i;let a=r?console.log.bind(console,`[${e}]`):()=>{};a(`\u5F00\u59CB\u6784\u5EFA\u9875\u9762: ${e}`);let c=v.resolve(process.cwd(),`dist-temp-${e}`),l={...process.env,VITE_MULTI_PAGE_BUILD_SINGLE_PAGE:e,VITE_MULTI_PAGE_TEMP_OUTPUT_DIR:c,VITE_MULTI_PAGE_STRATEGY:s},g=["build","--outDir",c,...t];a(`\u6267\u884C\u547D\u4EE4: npx vite ${g.join(" ")}`);let f=(0,ge.spawn)("npx",["vite",...g],{stdio:r?"inherit":"pipe",env:l,cwd:process.cwd()}),u="";r||(i=f.stderr)==null||i.on("data",p=>{u+=p.toString()}),f.on("close",p=>{let o=p===0;o?a(`\u2705 \u9875\u9762 ${e} \u6784\u5EFA\u6210\u529F`):(a(`\u274C \u9875\u9762 ${e} \u6784\u5EFA\u5931\u8D25 (\u9000\u51FA\u7801: ${p})`),!r&&u&&console.error(`\u9875\u9762 ${e} \u9519\u8BEF\u8F93\u51FA:`,u)),n({pageName:e,success:o,error:o?void 0:u||`\u6784\u5EFA\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${p}`,outputDir:c})}),f.on("error",p=>{a(`\u274C \u9875\u9762 ${e} \u6784\u5EFA\u51FA\u9519:`,p.message),n({pageName:e,success:!1,error:p.message,outputDir:c})})})}async function Xe(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{};s("\u5F00\u59CB\u5408\u5E76\u6784\u5EFA\u7ED3\u679C...");let n=t.merge||"all";s(`\u4F7F\u7528\u5408\u5E76\u6A21\u5F0F: ${n}`),n==="all"?await De(e,r):n==="page"&&await et(e,t,r)}async function Ze(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{},n=v.resolve(process.cwd(),"dist"),a=v.resolve(process.cwd(),".temp-merge");d.existsSync(a)&&d.rmSync(a,{recursive:!0,force:!0}),d.mkdirSync(a,{recursive:!0});for(let l of e){if(!l.success)continue;let g=l.outputDir;if(!d.existsSync(g)){s(`\u8B66\u544A: \u9875\u9762\u6784\u5EFA\u76EE\u5F55\u4E0D\u5B58\u5728: ${g}`);continue}let f=v.resolve(a,l.pageName);d.mkdirSync(f,{recursive:!0});let u=d.readdirSync(g,{withFileTypes:!0});for(let i of u){let p=v.resolve(g,i.name);if(i.isFile())if(i.name.endsWith(".html")){let o=v.resolve(f,"index.html");d.copyFileSync(p,o)}else{let o=v.resolve(f,i.name);d.copyFileSync(p,o)}else if(i.isDirectory())if(i.name===l.pageName){let o=d.readdirSync(p,{withFileTypes:!0});for(let m of o){let x=v.resolve(p,m.name),h=v.resolve(f,m.name);m.isFile()?d.copyFileSync(x,h):m.isDirectory()&&d.cpSync(x,h,{recursive:!0})}}else{let o=v.resolve(f,i.name);d.cpSync(p,o,{recursive:!0})}}}let c=v.resolve(v.dirname(n),".dist-backup");d.existsSync(c)&&d.rmSync(c,{recursive:!0,force:!0}),d.existsSync(n)&&d.renameSync(n,c);try{d.renameSync(a,n)}catch{d.cpSync(a,n,{recursive:!0}),d.rmSync(a,{recursive:!0,force:!0})}d.existsSync(c)&&d.rmSync(c,{recursive:!0,force:!0});for(let l of e)l.outputDir&&d.existsSync(l.outputDir)&&d.rmSync(l.outputDir,{recursive:!0,force:!0})}async function De(e,t){let r=t?console.log.bind(console,"[merge]"):()=>{},s=v.resolve(process.cwd(),"dist"),n=v.resolve(s,"assets");d.existsSync(n)||d.mkdirSync(n,{recursive:!0});let a=[];for(let c of e){if(!c.success)continue;let l=v.resolve(s,c.strategy);if(!d.existsSync(l)){r(`\u8B66\u544A: \u7B56\u7565\u76EE\u5F55\u4E0D\u5B58\u5728: ${l}`);continue}r(`\u5904\u7406\u7B56\u7565: ${c.strategy}`);let g=d.readdirSync(l,{withFileTypes:!0});for(let f of g){let u=v.resolve(l,f.name);if(f.isFile())if(f.name.endsWith(".html")){let i=v.resolve(s,f.name);d.copyFileSync(u,i),a.push(f.name),r(`\u590D\u5236HTML: ${f.name} -> dist/${f.name}`)}else{let i=v.resolve(s,f.name);d.copyFileSync(u,i),r(`\u590D\u5236\u6587\u4EF6: ${f.name} -> dist/${f.name}`)}else if(f.isDirectory()&&f.name==="assets"){let i=u,p=d.readdirSync(i,{withFileTypes:!0});for(let o of p){let m=v.resolve(i,o.name),x=v.resolve(n,o.name);if(o.isFile())if(d.existsSync(x)){let h=d.readFileSync(m),S=d.readFileSync(x);if(h.equals(S))r(`\u8DF3\u8FC7\u91CD\u590D\u8D44\u6E90: ${o.name}`);else{let $=v.extname(o.name),C=`${v.basename(o.name,$)}-${c.strategy}${$}`,A=v.resolve(n,C);d.copyFileSync(m,A),r(`\u590D\u5236\u8D44\u6E90(\u91CD\u547D\u540D): ${o.name} -> assets/${C}`)}}else d.copyFileSync(m,x),r(`\u590D\u5236\u8D44\u6E90: ${o.name} -> assets/${o.name}`);else if(o.isDirectory()){let h=v.resolve(n,o.name);d.existsSync(h)||d.mkdirSync(h,{recursive:!0}),d.cpSync(m,h,{recursive:!0}),r(`\u590D\u5236\u8D44\u6E90\u76EE\u5F55: ${o.name} -> assets/${o.name}`)}}}else if(f.isDirectory()){let i=v.resolve(s,f.name);d.cpSync(u,i,{recursive:!0}),r(`\u590D\u5236\u76EE\u5F55: ${f.name} -> dist/${f.name}`)}}}r("\u2705 \u6784\u5EFA\u7ED3\u679C\u5408\u5E76\u5B8C\u6210"),r(`\u{1F4C1} \u751F\u6210\u9875\u9762: ${a.join(", ")}`),r("\u{1F4E6} \u8D44\u6E90\u76EE\u5F55: dist/assets/"),r(`\u{1F527} \u5904\u7406\u7B56\u7565: ${e.filter(c=>c.success).map(c=>c.strategy).join(", ")}`)}async function et(e,t,r){let s=r?console.log.bind(console,"[merge]"):()=>{};await De(e,r);let n=v.resolve(process.cwd(),"dist"),a=t.merge;s(`\u5E94\u7528${a}\u6A21\u5F0F\u7684\u8D44\u6E90\u91CD\u7EC4...`);try{let{reorganizeAssetsInCLI:c}=await Promise.resolve().then(()=>(Oe(),_e));await c(n,a,t,s),s(`\u2705 ${a}\u6A21\u5F0F\u8D44\u6E90\u91CD\u7EC4\u5B8C\u6210`)}catch(c){throw s("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",c),c}}async function fe(e){let t=se.sync(".temp.mp.*.html",{cwd:process.cwd()});for(let r of t){let s=v.resolve(process.cwd(),r);try{d.unlinkSync(s)}catch{}}}async function tt(e,t,r){let s=r?console.log.bind(console,"[cleanup]"):()=>{};s("\u6E05\u7406\u4E34\u65F6\u6587\u4EF6...");let n=t.merge||"all",a=se.sync(".temp.mp.*.html",{cwd:process.cwd()});for(let c of a){let l=v.resolve(process.cwd(),c);try{d.unlinkSync(l),s(`\u5220\u9664\u6839\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6: ${c}`)}catch(g){s(`\u5220\u9664\u6839\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${c}`,g)}}for(let c of e){let l=v.resolve(process.cwd(),"dist",c);if(d.existsSync(l)){let g=se.sync("*.mp.temp.html",{cwd:l});for(let f of g){let u=v.resolve(l,f);try{d.unlinkSync(u),s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6: ${c}/${f}`)}catch(i){s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${c}/${f}`,i)}}}}if(n==="all"){let c=v.resolve(process.cwd(),"dist");for(let l of e){let g=v.resolve(c,l);if(d.existsSync(g))try{d.rmSync(g,{recursive:!0,force:!0}),s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55: ${l}`)}catch(f){s(`\u5220\u9664\u7B56\u7565\u76EE\u5F55\u5931\u8D25: ${l}`,f)}}}else s(`\u4FDD\u7559\u7B56\u7565\u76EE\u5F55 (merge\u6A21\u5F0F: ${n})`);s("\u2705 \u6E05\u7406\u5B8C\u6210")}async function Me(){let{viteBuildArgs:e,debug:t,cwd:r,strategies:s}=qe(),n=t?console.log.bind(console,"[main]"):()=>{};if(r){let a=v.resolve(process.cwd(),r);d.existsSync(a)||(console.error(`\u274C \u6307\u5B9A\u7684\u76EE\u5F55\u4E0D\u5B58\u5728: ${a}`),process.exit(1)),process.chdir(a),n(`\u5207\u6362\u5DE5\u4F5C\u76EE\u5F55\u5230: ${a}`)}try{n("\u{1F4CB} \u52A0\u8F7D\u914D\u7F6E...");let a=await Je(),c=a.merge||"all";n("\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55...");let{cleanViteOutputDirectory:l}=await Promise.resolve().then(()=>(U(),X));l(e),c==="page"?await st(a,e,t):await nt(a,e,t,s)}catch(a){console.error("\u274C \u6784\u5EFA\u5931\u8D25:",a instanceof Error?a.message:a),process.exit(1)}}async function st(e,t,r){let s=r?console.log.bind(console,"[page-mode]"):()=>{};s("\u{1F680} \u5F00\u59CBPage\u6A21\u5F0F\u6784\u5EFA...");let{discoverPages:n}=await Promise.resolve().then(()=>(U(),X)),a=n({entry:e.entry||"src/pages/*/main.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",pageConfigs:e.pageConfigs||{},strategies:e.strategies||{}});if(a.length===0)throw new Error("\u672A\u627E\u5230\u4EFB\u4F55\u9875\u9762");s(`\u53D1\u73B0\u9875\u9762: ${a.map(o=>o.name).join(", ")}`);let{getPageConfig:c}=await Promise.resolve().then(()=>(J(),ue)),l=new Map;for(let o of a){let m={pageName:o.name,filePath:o.file,relativePath:v.relative(process.cwd(),o.file)},x=c(e.pageConfigs,m,()=>{}),h=(x==null?void 0:x.strategy)||"default";l.set(o.name,h)}s("\u{1F528} \u5F00\u59CB\u5E76\u884C\u6784\u5EFA\u9875\u9762...");let g=a.map(o=>{let m=l.get(o.name)||"default";return Ke(o.name,t,r,m)}),f=await Promise.all(g),u=f.filter(o=>o.success).length,i=f.length-u;console.log(`
139
+ \u{1F4CA} \u9875\u9762\u6784\u5EFA\u7ED3\u679C\u7EDF\u8BA1:`),console.log(`\u2705 \u6210\u529F: ${u}`),console.log(`\u274C \u5931\u8D25: ${i}`),i>0&&(console.log(`
140
+ \u274C \u5931\u8D25\u7684\u9875\u9762:`),f.filter(o=>!o.success).forEach(o=>{console.log(` - ${o.pageName}: ${o.error}`)}),await fe(r),process.exit(1)),await Ze(f,e,r),await fe(r);let p=f.filter(o=>o.success);console.log(`
141
+ \u{1F389} \u6240\u6709\u9875\u9762\u6784\u5EFA\u6210\u529F\uFF01`),console.log("\u{1F4C1} \u6784\u5EFA\u7ED3\u679C\u4F4D\u4E8E: dist/"),console.log(`\u{1F4E6} \u6784\u5EFA\u9875\u9762: ${p.map(o=>o.pageName).join(", ")}`)}async function nt(e,t,r,s){let n=r?console.log.bind(console,"[strategy-mode]"):()=>{};n("\u{1F680} \u5F00\u59CB\u7B56\u7565\u6A21\u5F0F\u6784\u5EFA...");let{getAvailableStrategies:a}=await Promise.resolve().then(()=>(U(),X)),c=a({entry:e.entry||"src/pages/*/main.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",pageConfigs:e.pageConfigs||{},strategies:e.strategies||{}});if(c.length===0)throw new Error("\u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565");let l;if(s&&s.length>0){let m=s.filter(x=>!c.includes(x));if(m.length>0)throw new Error(`\u6307\u5B9A\u7684\u7B56\u7565\u4E0D\u5B58\u5728: ${m.join(", ")}
142
+ \u53EF\u7528\u7B56\u7565: ${c.join(", ")}`);l=s,n(`\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${l.join(", ")}`)}else l=c,n(`\u6784\u5EFA\u6240\u6709\u53EF\u7528\u7B56\u7565: ${l.join(", ")}`);n("\u{1F528} \u5F00\u59CB\u5E76\u884C\u6784\u5EFA...");let g=l.map(m=>Qe(m,t,r)),f=await Promise.all(g),u=f.filter(m=>m.success).length,i=f.length-u;console.log(`
143
+ \u{1F4CA} \u6784\u5EFA\u7ED3\u679C\u7EDF\u8BA1:`),console.log(`\u2705 \u6210\u529F: ${u}`),console.log(`\u274C \u5931\u8D25: ${i}`),i>0&&(console.log(`
144
+ \u274C \u5931\u8D25\u7684\u7B56\u7565:`),f.filter(m=>!m.success).forEach(m=>{console.log(` - ${m.strategy}: ${m.error}`)}),await fe(r),process.exit(1)),n("\u{1F4E6} \u5408\u5E76\u6784\u5EFA\u7ED3\u679C..."),await Xe(f,e,r),await tt(l,e,r);let p=f.filter(m=>m.success),o=d.readdirSync(v.resolve(process.cwd(),"dist")).filter(m=>m.endsWith(".html"));console.log(`
145
+ \u{1F389} \u6240\u6709\u7B56\u7565\u6784\u5EFA\u6210\u529F\uFF01`),console.log("\u{1F4C1} \u6784\u5EFA\u7ED3\u679C\u4F4D\u4E8E: dist/"),console.log(`\u{1F310} \u751F\u6210\u7684\u9875\u9762: ${o.join(", ")}`),console.log(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${p.map(m=>m.strategy).join(", ")}`)}require.main===module&&Me().catch(e=>{console.error("\u274C \u672A\u5904\u7406\u7684\u9519\u8BEF:",e),process.exit(1)});0&&(module.exports={buildAll});
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
- "use strict";var le=Object.create;var U=Object.defineProperty;var ge=Object.getOwnPropertyDescriptor;var fe=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,ue=Object.prototype.hasOwnProperty;var de=(t,e)=>{for(var i in e)U(t,i,{get:e[i],enumerable:!0})},J=(t,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of fe(e))!ue.call(t,r)&&r!==i&&U(t,r,{get:()=>e[r],enumerable:!(n=ge(e,r))||n.enumerable});return t};var $=(t,e,i)=>(i=t!=null?le(pe(t)):{},J(e||!t||!t.__esModule?U(i,"default",{value:t,enumerable:!0}):i,t)),me=t=>J(U({},"__esModule",{value:!0}),t);var Pe={};de(Pe,{cleanViteOutputDirectory:()=>ee,default:()=>Se,defineConfig:()=>se,defineConfigTransform:()=>ie,generateBuildConfig:()=>N,getAvailableStrategies:()=>te,getViteOutputDirectory:()=>Y,mergeWithDefaults:()=>D,reorganizeAssetsInCLI:()=>be,viteMultiPage:()=>ce});module.exports=me(Pe);var d=$(require("fs")),h=$(require("path")),q=require("vite");var w=$(require("path")),L=$(require("fs")),K=require("glob");var O=$(require("path"));function R(t,e,i,n){let r=[],f=new Map,u=e.replace(/\/\*.*$/,"");(!u||u===e)&&(u=O.dirname(e.split("*")[0]));let l=[];for(let o of t){if(i.includes(o))continue;let g=o.replace(/\\/g,"/"),p=u.replace(/\\/g,"/"),c=O.posix.relative(p,g).split("/");if(c.length===1){let a=c[0],m=O.posix.basename(a,O.posix.extname(a));l.push({name:m,file:o,priority:1})}else if(c.length>=2){let a=O.posix.basename(g,O.posix.extname(g)),m=c[0];a==="main"&&l.push({name:m,file:o,priority:2})}}for(let o of l){let g=f.get(o.name);g?o.priority>g.priority&&f.set(o.name,{file:o.file,priority:o.priority}):f.set(o.name,{file:o.file,priority:o.priority})}for(let[o,{file:g}]of f.entries())r.push({name:o,file:g});return r}function Q(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function k(t){return(...e)=>{t&&console.log("[vite-plugin-multi-page]",...e)}}function _(t,e,i){if(!t)return null;if(typeof t=="function"){let n=t(e);return n}for(let[n,r]of Object.entries(t)){if(n===e.pageName)return i(`\u7CBE\u786E\u5339\u914D\u9875\u9762 ${e.pageName}:`,r),r;if(r.match&&(Array.isArray(r.match)?r.match:[r.match]).some(l=>B(l,e.pageName)||B(l,e.relativePath)||B(l,e.filePath)))return i(`\u6A21\u5F0F\u5339\u914D\u9875\u9762 ${e.pageName} (\u6A21\u5F0F: ${r.match}):`,r),{...r,match:void 0};if(B(n,e.pageName))return i(`Glob\u5339\u914D\u9875\u9762 ${e.pageName} (\u6A21\u5F0F: ${n}):`,r),r}return null}function B(t,e){let i=t.replace(/\*\*/g,"__DOUBLE_STAR__").replace(/\*/g,"[^/]*").replace(/__DOUBLE_STAR__/g,".*");return new RegExp(`^${i}$`).test(e)}function ye(t,e,i){try{let n=K.glob.sync(e.entry,{cwd:process.cwd()}),r=R(n,e.entry,e.exclude,i);if(r.length===0){i("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6");return}let f=e.devStrategy||t.config.__cliStrategy||t.config.strategy;f&&(i(`\u5F00\u53D1\u670D\u52A1\u5668\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${f}`),r=r.filter(u=>{let l={pageName:u.name,filePath:u.file,relativePath:w.relative(process.cwd(),u.file),strategy:void 0,isMatched:!1},o=_(e.pageConfigs,l,i),g=(o==null?void 0:o.strategy)||"default";return f==="default"?g==="default":g===f}),i(`\u7B56\u7565 "${f}" \u4E0B\u53EF\u7528\u7684\u9875\u9762: ${r.map(u=>u.name).join(", ")||"\u65E0"}`)),i("\u5F00\u53D1\u670D\u52A1\u5668\u5E94\u7528\u7684\u5165\u53E3\u6587\u4EF6:",r),t.middlewares.use(async(u,l,o)=>{try{let p=(u.url||"").split("?")[0];if(p==="/"){let a=xe(r,e,i);l.statusCode=200,l.setHeader("Content-Type","text/html"),l.end(a);return}if(p.match(/\.(js|css|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|map)$/)&&!p.endsWith(".html")||p.startsWith("/@")||p.includes("__vite")||p.startsWith("/node_modules"))return o();let s="";if(p.endsWith(".html"))s=w.basename(p,".html");else if(p.startsWith("/")){let a=p.substring(1);if(r.find(m=>m.name===a))s=a;else{let m=a.split("/");if(m.length>1){let C=m[0];r.find(x=>x.name===C)&&(s=C,i(`History \u8DEF\u7531\u5339\u914D: ${p} -> ${C}`))}}}if(!s)return o();let c=r.find(a=>a.name===s);return c?he(l,c,e,i):o()}catch(g){i(`\u5F00\u53D1\u670D\u52A1\u5668\u5904\u7406\u8BF7\u6C42\u5931\u8D25: ${g}`),o(g)}}),i("\u5F00\u53D1\u670D\u52A1\u5668\u914D\u7F6E\u5B8C\u6210")}catch(n){throw i(`\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668\u5931\u8D25: ${n}`),n}}function he(t,e,i,n){var p;let r={pageName:e.name,filePath:e.file,relativePath:w.relative(process.cwd(),e.file),strategy:void 0,isMatched:!1},f=_(i.pageConfigs,r,n);if(f!=null&&f.strategy)r.strategy=f.strategy;else if((p=i.appliedStrategies)!=null&&p.has(e.name)){let s=i.appliedStrategies.get(e.name);s&&(r.strategy=s)}let u="",l=w.resolve(process.cwd(),`${e.name}.html`);if(L.existsSync(l)?u=l:f!=null&&f.template?u=w.resolve(process.cwd(),f.template):u=w.resolve(process.cwd(),i.template),!L.existsSync(u)){t.statusCode=404,t.end("Template not found");return}let o=L.readFileSync(u,"utf-8");if(o.includes(i.placeholder)){let s=o;if(o=o.split(i.placeholder).join(`/${e.file}`),o===s){let c=Q(i.placeholder),a=new RegExp(c,"g");o=s.replace(a,`/${e.file}`),o===s&&(o=s.replace(/\{\{ENTRY_FILE\}\}/g,`/${e.file}`))}}if(f!=null&&f.define){let s=Object.entries(f.define).map(([c,a])=>{let m=typeof a=="string"?`"${a}"`:JSON.stringify(a);return`window.${c} = ${m};`}).join(`
2
- `);s&&(o=o.replace(/<\/head>/i,`<script type="text/javascript">
1
+ "use strict";var le=Object.create;var U=Object.defineProperty;var ge=Object.getOwnPropertyDescriptor;var fe=Object.getOwnPropertyNames;var pe=Object.getPrototypeOf,ue=Object.prototype.hasOwnProperty;var de=(t,e)=>{for(var i in e)U(t,i,{get:e[i],enumerable:!0})},J=(t,e,i,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of fe(e))!ue.call(t,n)&&n!==i&&U(t,n,{get:()=>e[n],enumerable:!(r=ge(e,n))||r.enumerable});return t};var $=(t,e,i)=>(i=t!=null?le(pe(t)):{},J(e||!t||!t.__esModule?U(i,"default",{value:t,enumerable:!0}):i,t)),me=t=>J(U({},"__esModule",{value:!0}),t);var Pe={};de(Pe,{cleanViteOutputDirectory:()=>ee,default:()=>Se,defineConfig:()=>se,defineConfigTransform:()=>ie,generateBuildConfig:()=>N,getAvailableStrategies:()=>te,getViteOutputDirectory:()=>Y,mergeWithDefaults:()=>D,reorganizeAssetsInCLI:()=>be,viteMultiPage:()=>ce});module.exports=me(Pe);var d=$(require("fs")),h=$(require("path")),q=require("vite");var w=$(require("path")),L=$(require("fs")),K=require("glob");var O=$(require("path"));function R(t,e,i,r){let n=[],f=new Map,u=e.replace(/\/\*.*$/,"");(!u||u===e)&&(u=O.dirname(e.split("*")[0]));let l=[];for(let a of t){if(i.includes(a))continue;let g=a.replace(/\\/g,"/"),p=u.replace(/\\/g,"/"),c=O.posix.relative(p,g).split("/");if(c.length===1){let o=c[0],m=O.posix.basename(o,O.posix.extname(o));l.push({name:m,file:a,priority:1})}else if(c.length>=2){let o=O.posix.basename(g,O.posix.extname(g)),m=c[0];o==="main"&&l.push({name:m,file:a,priority:2})}}for(let a of l){let g=f.get(a.name);g?a.priority>g.priority&&f.set(a.name,{file:a.file,priority:a.priority}):f.set(a.name,{file:a.file,priority:a.priority})}for(let[a,{file:g}]of f.entries())n.push({name:a,file:g});return n}function Q(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function k(t){return(...e)=>{t&&console.log("[vite-plugin-multi-page]",...e)}}function _(t,e,i){if(!t)return null;if(typeof t=="function")return t(e);for(let[r,n]of Object.entries(t)){if(r===e.pageName)return i(`\u7CBE\u786E\u5339\u914D\u9875\u9762 ${e.pageName}:`,n),n;if(n.match&&(Array.isArray(n.match)?n.match:[n.match]).some(l=>B(l,e.pageName)||B(l,e.relativePath)||B(l,e.filePath)))return i(`\u6A21\u5F0F\u5339\u914D\u9875\u9762 ${e.pageName} (\u6A21\u5F0F: ${n.match}):`,n),{...n,match:void 0};if(B(r,e.pageName))return i(`Glob\u5339\u914D\u9875\u9762 ${e.pageName} (\u6A21\u5F0F: ${r}):`,n),n}return null}function B(t,e){let i=t.replace(/\*\*/g,"__DOUBLE_STAR__").replace(/\*/g,"[^/]*").replace(/__DOUBLE_STAR__/g,".*");return new RegExp(`^${i}$`).test(e)}function ye(t,e,i){try{let r=K.glob.sync(e.entry,{cwd:process.cwd()}),n=R(r,e.entry,e.exclude,i);if(n.length===0){i("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6");return}let f=e.devStrategy||t.config.__cliStrategy||t.config.strategy;f&&(i(`\u5F00\u53D1\u670D\u52A1\u5668\u4F7F\u7528\u6307\u5B9A\u7684\u7B56\u7565: ${f}`),n=n.filter(u=>{let l={pageName:u.name,filePath:u.file,relativePath:w.relative(process.cwd(),u.file),strategy:void 0,isMatched:!1},a=_(e.pageConfigs,l,i),g=(a==null?void 0:a.strategy)||"default";return f==="default"?g==="default":g===f}),i(`\u7B56\u7565 "${f}" \u4E0B\u53EF\u7528\u7684\u9875\u9762: ${n.map(u=>u.name).join(", ")||"\u65E0"}`)),i("\u5F00\u53D1\u670D\u52A1\u5668\u5E94\u7528\u7684\u5165\u53E3\u6587\u4EF6:",n),t.middlewares.use(async(u,l,a)=>{try{let p=(u.url||"").split("?")[0];if(p==="/"){let o=xe(n,e,i);l.statusCode=200,l.setHeader("Content-Type","text/html"),l.end(o);return}if(p.match(/\.(js|css|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|map)$/)&&!p.endsWith(".html")||p.startsWith("/@")||p.includes("__vite")||p.startsWith("/node_modules"))return a();let s="";if(p.endsWith(".html"))s=w.basename(p,".html");else if(p.startsWith("/")){let o=p.substring(1);if(n.find(m=>m.name===o))s=o;else{let m=o.split("/");if(m.length>1){let C=m[0];n.find(x=>x.name===C)&&(s=C,i(`History \u8DEF\u7531\u5339\u914D: ${p} -> ${C}`))}}}if(!s)return a();let c=n.find(o=>o.name===s);return c?he(l,c,e,i):a()}catch(g){i(`\u5F00\u53D1\u670D\u52A1\u5668\u5904\u7406\u8BF7\u6C42\u5931\u8D25: ${g}`),a(g)}}),i("\u5F00\u53D1\u670D\u52A1\u5668\u914D\u7F6E\u5B8C\u6210")}catch(r){throw i(`\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668\u5931\u8D25: ${r}`),r}}function he(t,e,i,r){var p;let n={pageName:e.name,filePath:e.file,relativePath:w.relative(process.cwd(),e.file),strategy:void 0,isMatched:!1},f=_(i.pageConfigs,n,r);if(f!=null&&f.strategy)n.strategy=f.strategy;else if((p=i.appliedStrategies)!=null&&p.has(e.name)){let s=i.appliedStrategies.get(e.name);s&&(n.strategy=s)}let u="",l=w.resolve(process.cwd(),`${e.name}.html`);if(L.existsSync(l)?u=l:f!=null&&f.template?u=w.resolve(process.cwd(),f.template):u=w.resolve(process.cwd(),i.template),!L.existsSync(u)){t.statusCode=404,t.end("Template not found");return}let a=L.readFileSync(u,"utf-8");if(a.includes(i.placeholder)){let s=a;if(a=a.split(i.placeholder).join(`/${e.file}`),a===s){let c=Q(i.placeholder),o=new RegExp(c,"g");a=s.replace(o,`/${e.file}`),a===s&&(a=s.replace(/\{\{ENTRY_FILE\}\}/g,`/${e.file}`))}}if(f!=null&&f.define){let s=Object.entries(f.define).map(([c,o])=>{let m=typeof o=="string"?`"${o}"`:JSON.stringify(o);return`window.${c} = ${m};`}).join(`
2
+ `);s&&(a=a.replace(/<\/head>/i,`<script type="text/javascript">
3
3
  ${s}
4
4
  </script>
5
- </head>`))}t.statusCode=200,t.setHeader("Content-Type","text/html"),t.end(o)}var X=ye;function xe(t,e,i){try{let n=t.map(r=>{var g;let f={pageName:r.name,filePath:r.file,relativePath:w.relative(process.cwd(),r.file),strategy:void 0,isMatched:!1},u=_(e.pageConfigs,f,i),l="default";if(u!=null&&u.strategy)l=u.strategy;else if((g=e.appliedStrategies)!=null&&g.has(r.name)){let p=e.appliedStrategies.get(r.name);p&&(l=p)}let o=l!=="default"?`<span class="badge">${l}</span>`:"";return`
5
+ </head>`))}t.statusCode=200,t.setHeader("Content-Type","text/html"),t.end(a)}var X=ye;function xe(t,e,i){try{let r=t.map(n=>{var g;let f={pageName:n.name,filePath:n.file,relativePath:w.relative(process.cwd(),n.file),strategy:void 0,isMatched:!1},u=_(e.pageConfigs,f,i),l="default";if(u!=null&&u.strategy)l=u.strategy;else if((g=e.appliedStrategies)!=null&&g.has(n.name)){let p=e.appliedStrategies.get(n.name);p&&(l=p)}let a=l!=="default"?`<span class="badge">${l}</span>`:"";return`
6
6
  <div class="page-item">
7
- <a href="${r.name}.html" class="page-link">
8
- ${r.name}${o}
7
+ <a href="${n.name}.html" class="page-link">
8
+ ${n.name}${a}
9
9
  </a>
10
- <div class="page-path">${r.file}</div>
10
+ <div class="page-path">${n.file}</div>
11
11
  </div>`}).join("");return`
12
12
  <!DOCTYPE html>
13
13
  <html lang="en">
@@ -83,11 +83,11 @@ ${s}
83
83
  \u627E\u5230 ${t.length} \u4E2A\u9875\u9762
84
84
  </div>
85
85
  <div class="page-list">
86
- ${n}
86
+ ${r}
87
87
  </div>
88
88
  </body>
89
89
  </html>
90
- `}catch(n){return i(`\u751F\u6210\u7D22\u5F15\u9875\u5931\u8D25: ${n}`),`
90
+ `}catch(r){return i(`\u751F\u6210\u7D22\u5F15\u9875\u5931\u8D25: ${r}`),`
91
91
  <!DOCTYPE html>
92
92
  <html>
93
93
  <head>
@@ -95,13 +95,13 @@ ${s}
95
95
  </head>
96
96
  <body>
97
97
  <h1>\u751F\u6210\u7D22\u5F15\u9875\u65F6\u53D1\u751F\u9519\u8BEF</h1>
98
- <p>${n}</p>
98
+ <p>${r}</p>
99
99
  </body>
100
100
  </html>
101
- `}}var Z=require("vite"),W=require("glob"),P=$(require("path")),E=$(require("fs"));function N(t){var s;let{entry:e="src/pages/*/main.{ts,js}",exclude:i=[],template:n="index.html",placeholder:r="<!--VITE_MULTI_PAGE_ENTRY-->",strategies:f={},pageConfigs:u={},forceBuildStrategy:l,forceBuildPage:o}=t,g=k(!0),p={};try{let c=W.glob.sync(e,{cwd:process.cwd()}),a=R(c,e,i,g);if(a.length===0)return g("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6"),{};let m=new Map,C=new Map;for(let y of a){let v={pageName:y.name,filePath:y.file,relativePath:P.relative(process.cwd(),y.file)},S=_(u,v,g),b=(S==null?void 0:S.strategy)||"default";m.set(y.name,b),C.has(b)||C.set(b,[]),(s=C.get(b))==null||s.push(y.name)}if(g(`\u{1F4C4} \u53D1\u73B0 ${a.length} \u4E2A\u9875\u9762: ${a.map(y=>y.name).join(", ")}`),o){if(!a.find(I=>I.name===o))return g(`\u8B66\u544A: \u672A\u627E\u5230\u9875\u9762 "${o}"`),{};g(`\u5F3A\u5236\u6784\u5EFA\u9875\u9762: ${o}`);let v=m.get(o)||"default",S=f[v]||{},b=V(`single-${o}`,[o],a,S,u,n,r,g);return p[`single-${o}`]=b,p}if(l){let y=C.get(l)||[];if(y.length===0)return g(`\u8B66\u544A: \u7B56\u7565 "${l}" \u4E0B\u6CA1\u6709\u9875\u9762`),{};g(`\u5F3A\u5236\u6784\u5EFA\u7B56\u7565: ${l}, \u9875\u9762: ${y.join(", ")}`);let v=V(l,y,a,f[l],u,n,r,g);return p[l]=v,p}for(let[y,v]of C){if(v.length===0)continue;let S=f[y]||{},b=V(y,v,a,S,u,n,r,g);p[y]=b}if(Object.keys(p).length===0){g("\u8B66\u544A: \u672A\u751F\u6210\u4EFB\u4F55\u6784\u5EFA\u914D\u7F6E\uFF0C\u521B\u5EFA\u9ED8\u8BA4\u914D\u7F6E");let y=a.map(S=>S.name),v=V("default",y,a,{},u,n,r,g);p.default=v}let x=Object.keys(p);return g(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${x.join(", ")}`),p}catch(c){throw g("\u751F\u6210\u6784\u5EFA\u914D\u7F6E\u5931\u8D25:",c),c}}function V(t,e,i,n,r,f,u,l){let o={},g=[],p={};for(let a of e){let m=i.find(G=>G.name===a);if(!m)continue;let C={pageName:a,filePath:m.file,relativePath:P.relative(process.cwd(),m.file),strategy:t},x=_(r,C,l);x!=null&&x.define&&Object.assign(p,x.define);let y=f,v=`${a}.html`;E.existsSync(P.resolve(process.cwd(),v))?y=v:x!=null&&x.template&&(y=x.template);let S=P.resolve(process.cwd(),y);if(!E.existsSync(S)){l(`\u8B66\u544A: \u6A21\u677F\u6587\u4EF6\u4E0D\u5B58\u5728: ${y}`);continue}let b=E.readFileSync(S,"utf-8");if(b.includes(u)){let G=`./${m.file}`;b=b.replace(new RegExp(u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),G)}let I=P.resolve(process.cwd(),`.temp.mp.${a}.html`);E.writeFileSync(I,b),g.push(I),o[a]=I}let s={build:{rollupOptions:{input:o,output:{entryFileNames:"assets/[name]-[hash].js",chunkFileNames:"assets/[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}},emptyOutDir:!1},define:{}},c=s;return n&&(c=(0,Z.mergeConfig)(s,n)),Object.keys(p).length>0&&(c.define={...c.define,...p}),c.build||(c.build={}),c.build.rollupOptions||(c.build.rollupOptions={}),c.build.rollupOptions.input=o,c.build.emptyOutDir=!1,l(`\u7B56\u7565 "${t}" - ${e.length} \u4E2A\u9875\u9762`),c}function Y(t=[]){let e=t.findIndex(n=>n==="--outDir");if(e!==-1&&e+1<t.length){let n=t[e+1];return P.resolve(process.cwd(),n)}let i=t.find(n=>n.startsWith("--outDir="));if(i){let n=i.split("=")[1];return P.resolve(process.cwd(),n)}return P.resolve(process.cwd(),"dist")}function ee(t=[]){let e=Y(t),i=k(!0);try{E.existsSync(e)&&(E.rmSync(e,{recursive:!0,force:!0}),i(`\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55: ${P.relative(process.cwd(),e)}`))}catch(n){i(`\u26A0\uFE0F \u6E05\u7406\u8F93\u51FA\u76EE\u5F55\u5931\u8D25: ${e}`,n)}}function te(t){let{entry:e="src/pages/*/main.{ts,js}",exclude:i=[],pageConfigs:n={}}=t,r=k(!1),f=new Set,u=W.glob.sync(e,{cwd:process.cwd()}),l=R(u,e,i,r);if(l.length===0)throw new Error(`\u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6: ${e}`);try{for(let o of l){let g={pageName:o.name,filePath:o.file,relativePath:P.relative(process.cwd(),o.file)},p=_(n,g,r),s=(p==null?void 0:p.strategy)||"default";f.add(s)}return Array.from(f).sort()}catch(o){return r("\u83B7\u53D6\u53EF\u7528\u7B56\u7565\u5931\u8D25:",o),["default"]}}var M=$(require("fs")),j=$(require("path")),ne=require("url"),A=require("module"),re=["multipage.config.js","multipage.config.mjs","multipage.config.ts"];function H(){for(let t of re){let e=j.resolve(process.cwd(),t);if(M.existsSync(e))return!0}return!1}async function z(t){let e=await ve();if(e){let i=e(t);return i||{}}return null}async function Ce(t){if(t.endsWith(".ts"))try{let e=await M.promises.readFile(t,"utf-8"),i;try{i=await import("esbuild")}catch{throw console.error(`
101
+ `}}var Z=require("vite"),W=require("glob"),P=$(require("path")),E=$(require("fs"));function N(t){var s;let{entry:e="src/pages/*/main.{ts,js}",exclude:i=[],template:r="index.html",placeholder:n="<!--VITE_MULTI_PAGE_ENTRY-->",strategies:f={},pageConfigs:u={},forceBuildStrategy:l,forceBuildPage:a}=t,g=k(!0),p={};try{let c=W.glob.sync(e,{cwd:process.cwd()}),o=R(c,e,i,g);if(o.length===0)return g("\u8B66\u544A: \u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6"),{};let m=new Map,C=new Map;for(let y of o){let v={pageName:y.name,filePath:y.file,relativePath:P.relative(process.cwd(),y.file)},S=_(u,v,g),b=(S==null?void 0:S.strategy)||"default";m.set(y.name,b),C.has(b)||C.set(b,[]),(s=C.get(b))==null||s.push(y.name)}if(g(`\u{1F4C4} \u53D1\u73B0 ${o.length} \u4E2A\u9875\u9762: ${o.map(y=>y.name).join(", ")}`),a){if(!o.find(I=>I.name===a))return g(`\u8B66\u544A: \u672A\u627E\u5230\u9875\u9762 "${a}"`),{};let v=m.get(a)||"default",S=f[v]||{},b=V(`single-${a}`,[a],o,S,u,r,n,g);return p[`single-${a}`]=b,p}if(l){let y=C.get(l)||[];if(y.length===0)return g(`\u8B66\u544A: \u7B56\u7565 "${l}" \u4E0B\u6CA1\u6709\u9875\u9762`),{};g(`\u5F3A\u5236\u6784\u5EFA\u7B56\u7565: ${l}, \u9875\u9762: ${y.join(", ")}`);let v=V(l,y,o,f[l],u,r,n,g);return p[l]=v,p}for(let[y,v]of C){if(v.length===0)continue;let S=f[y]||{},b=V(y,v,o,S,u,r,n,g);p[y]=b}if(Object.keys(p).length===0){g("\u8B66\u544A: \u672A\u751F\u6210\u4EFB\u4F55\u6784\u5EFA\u914D\u7F6E\uFF0C\u521B\u5EFA\u9ED8\u8BA4\u914D\u7F6E");let y=o.map(S=>S.name),v=V("default",y,o,{},u,r,n,g);p.default=v}let x=Object.keys(p);return g(`\u{1F4E6} \u6784\u5EFA\u7B56\u7565: ${x.join(", ")}`),p}catch(c){throw g("\u751F\u6210\u6784\u5EFA\u914D\u7F6E\u5931\u8D25:",c),c}}function V(t,e,i,r,n,f,u,l){let a={},g=[],p={};for(let o of e){let m=i.find(G=>G.name===o);if(!m)continue;let C={pageName:o,filePath:m.file,relativePath:P.relative(process.cwd(),m.file),strategy:t},x=_(n,C,l);x!=null&&x.define&&Object.assign(p,x.define);let y=f,v=`${o}.html`;E.existsSync(P.resolve(process.cwd(),v))?y=v:x!=null&&x.template&&(y=x.template);let S=P.resolve(process.cwd(),y);if(!E.existsSync(S)){l(`\u8B66\u544A: \u6A21\u677F\u6587\u4EF6\u4E0D\u5B58\u5728: ${y}`);continue}let b=E.readFileSync(S,"utf-8");if(b.includes(u)){let G=`./${m.file}`;b=b.replace(new RegExp(u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),G)}let I=P.resolve(process.cwd(),`.temp.mp.${o}.html`);E.writeFileSync(I,b),g.push(I),a[o]=I}let s={build:{rollupOptions:{input:a,output:{entryFileNames:"assets/[name]-[hash].js",chunkFileNames:"assets/[name]-[hash].js",assetFileNames:"assets/[name]-[hash][extname]"}},emptyOutDir:!1},define:{}},c=s;return r&&(c=(0,Z.mergeConfig)(s,r)),Object.keys(p).length>0&&(c.define={...c.define,...p}),c.build||(c.build={}),c.build.rollupOptions||(c.build.rollupOptions={}),c.build.rollupOptions.input=a,c.build.emptyOutDir=!1,l(`\u7B56\u7565 "${t}" - ${e.length} \u4E2A\u9875\u9762`),c}function Y(t=[]){let e=t.findIndex(r=>r==="--outDir");if(e!==-1&&e+1<t.length){let r=t[e+1];return P.resolve(process.cwd(),r)}let i=t.find(r=>r.startsWith("--outDir="));if(i){let r=i.split("=")[1];return P.resolve(process.cwd(),r)}return P.resolve(process.cwd(),"dist")}function ee(t=[]){let e=Y(t),i=k(!0);try{E.existsSync(e)&&(E.rmSync(e,{recursive:!0,force:!0}),i(`\u{1F9F9} \u6E05\u7406\u8F93\u51FA\u76EE\u5F55: ${P.relative(process.cwd(),e)}`))}catch(r){i(`\u26A0\uFE0F \u6E05\u7406\u8F93\u51FA\u76EE\u5F55\u5931\u8D25: ${e}`,r)}}function te(t){let{entry:e="src/pages/*/main.{ts,js}",exclude:i=[],pageConfigs:r={}}=t,n=k(!1),f=new Set,u=W.glob.sync(e,{cwd:process.cwd()}),l=R(u,e,i,n);if(l.length===0)throw new Error(`\u672A\u627E\u5230\u5339\u914D\u7684\u5165\u53E3\u6587\u4EF6: ${e}`);try{for(let a of l){let g={pageName:a.name,filePath:a.file,relativePath:P.relative(process.cwd(),a.file)},p=_(r,g,n),s=(p==null?void 0:p.strategy)||"default";f.add(s)}return Array.from(f).sort()}catch(a){return n("\u83B7\u53D6\u53EF\u7528\u7B56\u7565\u5931\u8D25:",a),["default"]}}var M=$(require("fs")),j=$(require("path")),ne=require("url"),A=require("module"),re=["multipage.config.js","multipage.config.mjs","multipage.config.ts"];function H(){for(let t of re){let e=j.resolve(process.cwd(),t);if(M.existsSync(e))return!0}return!1}async function z(t){let e=await ve();if(e){let i=e(t);return i||{}}return null}async function Ce(t){if(t.endsWith(".ts"))try{let e=await M.promises.readFile(t,"utf-8"),i;try{i=await import("esbuild")}catch{throw console.error(`
102
102
  \u274C \u65E0\u6CD5\u52A0\u8F7D TypeScript \u914D\u7F6E\u6587\u4EF6\uFF0C\u56E0\u4E3A\u627E\u4E0D\u5230 esbuild \u4F9D\u8D56\u3002`),console.error(`
103
103
  \u{1F4A1} \u8BF7\u9009\u62E9\u4EE5\u4E0B\u89E3\u51B3\u65B9\u6848\u4E4B\u4E00\uFF1A`),console.error(' 1. \u5B89\u88C5 esbuild (peerDependency)\uFF1Anpm install esbuild@">=0.19.3" --save-dev'),console.error(" 2. \u6216\u8005\u5982\u679C\u4F7F\u7528 Vite \u9879\u76EE\uFF0Cesbuild \u901A\u5E38\u5DF2\u5B89\u88C5\uFF0C\u8BF7\u68C0\u67E5\u7248\u672C\u662F\u5426 >=0.19.3"),console.error(" 3. \u4F7F\u7528 JavaScript \u914D\u7F6E\u6587\u4EF6\uFF1A\u5C06 multipage.config.ts \u91CD\u547D\u540D\u4E3A multipage.config.js"),console.error(` 4. \u4F7F\u7528 ESM \u914D\u7F6E\u6587\u4EF6\uFF1A\u5C06 multipage.config.ts \u91CD\u547D\u540D\u4E3A multipage.config.mjs
104
- `),new Error(`\u9700\u8981 esbuild \u4F9D\u8D56\u6765\u5904\u7406 TypeScript \u914D\u7F6E\u6587\u4EF6: ${j.basename(t)}`)}let n=await i.transform(e,{loader:"ts",format:"cjs",target:"node16",sourcemap:!1}),r=new A.Module(t);return r.filename=t,r.paths=A.Module._nodeModulePaths(j.dirname(t)),r._compile(n.code,t),r.exports}catch(e){if(e instanceof Error&&e.message.includes("\u9700\u8981 esbuild \u4F9D\u8D56"))throw e;console.warn("esbuild \u8F6C\u8BD1\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7B80\u5355\u8F6C\u6362:",e);let n=(await M.promises.readFile(t,"utf-8")).replace(/export\s+default\s+/,"module.exports = ").replace(/import\s+.*?from\s+['"][^'"]*['"];?\s*/g,"").replace(/:\s*[^=,})\]]+/g,""),r=new A.Module(t);return r.filename=t,r.paths=A.Module._nodeModulePaths(j.dirname(t)),r._compile(n,t),r.exports}if(t.endsWith(".js")||t.endsWith(".mjs"))return import(`${(0,ne.pathToFileURL)(t).href}?t=${Date.now()}`);throw new Error(`\u4E0D\u652F\u6301\u7684\u914D\u7F6E\u6587\u4EF6\u7C7B\u578B: ${t}`)}async function ve(){let t=process.cwd();for(let e of re){let i=j.resolve(t,e);if(M.existsSync(i))try{let n=await Ce(i),r=n.default||n;if(typeof r=="function")return r;console.warn(`\u914D\u7F6E\u6587\u4EF6 ${e} \u5FC5\u987B\u9ED8\u8BA4\u5BFC\u51FA\u4E00\u4E2A\u51FD\u6570`)}catch(n){e.endsWith(".ts")?(console.error(`\u52A0\u8F7DTypeScript\u914D\u7F6E\u6587\u4EF6 ${e} \u5931\u8D25:`,n),console.log("\u63D0\u793A\uFF1A\u786E\u4FDD\u4F60\u7684\u9879\u76EE\u652F\u6301TypeScript\uFF0C\u6216\u8005\u4F7F\u7528 .js/.mjs \u914D\u7F6E\u6587\u4EF6")):console.error(`\u52A0\u8F7D\u914D\u7F6E\u6587\u4EF6 ${e} \u5931\u8D25:`,n)}}return null}var F={entry:"src/pages/**/*.{ts,js}",exclude:[],template:"index.html",placeholder:"{{ENTRY_FILE}}",debug:!1,merge:"all",strategies:{default:{}},pageConfigs:{}};function D(t){return t?{entry:t.entry??F.entry,exclude:t.exclude??F.exclude,template:t.template??F.template,placeholder:t.placeholder??F.placeholder,debug:t.debug??F.debug,merge:t.merge??F.merge,strategies:t.strategies??F.strategies,pageConfigs:t.pageConfigs??F.pageConfigs,__forceBuildStrategy:t.__forceBuildStrategy}:{...F}}var oe=$(require("glob"));function se(t){return typeof t=="function"?t:()=>t}function ie(t){return t}function ae(t,e,i,n){let r=h.resolve(t,"assets");if(!d.existsSync(r)){n("assets\u76EE\u5F55\u4E0D\u5B58\u5728\uFF0C\u8DF3\u8FC7\u91CD\u7EC4");return}let f=d.readdirSync(t).filter(s=>s.endsWith(".html")).map(s=>h.resolve(t,s));if(f.length===0){if(n("\u672A\u627E\u5230HTML\u6587\u4EF6\uFF0C\u4F46\u4ECD\u9700\u6E05\u7406assets\u76EE\u5F55"),(e==="strategy"||e==="page")&&d.existsSync(r))try{d.rmSync(r,{recursive:!0,force:!0}),n("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(s){n("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",s)}return}let u=new Map,l=new Map;f.forEach(s=>{var S;let c=h.basename(s,".html");c.startsWith(".temp.mp.")&&(c=c.replace(".temp.mp.",""));let a=d.readFileSync(s,"utf-8"),m=[],C=/(?:src|href)="\/assets\/([^"]+)"/g,x;for(;(x=C.exec(a))!==null;){let b=x[1];m.push(b),l.has(b)||l.set(b,[]),(S=l.get(b))==null||S.push(c)}let y="";e==="page"&&(y=c);let v=h.resolve(t,y);u.set(c,{assets:m,targetDir:v}),n(`\u9875\u9762 ${c} \u4F9D\u8D56\u8D44\u6E90:`,m)}),n("\u7B2C\u4E00\u9636\u6BB5\u8865\u5145\uFF1A\u5206\u6790public\u76EE\u5F55\u8D44\u6E90");let o=new Set,g=h.resolve(process.cwd(),"public");if(d.existsSync(g)){let s=oe.sync("**/*",{cwd:g,nodir:!0});for(let c of s)o.add(c),n(`\u53D1\u73B0public\u8D44\u6E90: ${c}`)}l.forEach((s,c)=>{s.length>1?n(`\u5171\u4EAB\u8D44\u6E90 ${c} \u88AB\u9875\u9762\u4F7F\u7528:`,s):n(`\u72EC\u5360\u8D44\u6E90 ${c} \u4EC5\u88AB\u9875\u9762 ${s[0]} \u4F7F\u7528`)}),u.forEach(({assets:s,targetDir:c},a)=>{let m=h.resolve(c,"assets");d.existsSync(m)||d.mkdirSync(m,{recursive:!0}),s.forEach(C=>{let x=h.resolve(r,C),y=h.resolve(m,C);if(d.existsSync(x)){d.copyFileSync(x,y);let S=(l.get(C)||[]).length>1?"\u5171\u4EAB\u8D44\u6E90":"\u72EC\u5360\u8D44\u6E90";n(`\u590D\u5236${S}\u5230 ${a}: assets/${C} -> ${h.relative(t,y)}`)}else n(`\u8B66\u544A: \u8D44\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728: ${x}`)}),d.existsSync(r)&&d.readdirSync(r).forEach(x=>{if(!s.includes(x)){let y=h.resolve(r,x),v=h.resolve(m,x);d.existsSync(y)&&(d.copyFileSync(y,v),n(`\u590D\u5236\u5176\u4ED6\u8D44\u6E90\u6587\u4EF6\u5230 ${a}: assets/${x} -> ${h.relative(t,v)}`))}})}),n("\u7B2C\u4E09\u9636\u6BB5\u8865\u5145\uFF1A\u5904\u7406public\u76EE\u5F55\u8D44\u6E90");let p=new Set;u.forEach(({targetDir:s})=>{p.add(s)});for(let s of p)for(let c of o){let a=h.resolve(t,c),m=h.resolve(s,c);if(d.existsSync(a)){let C=h.dirname(m);d.existsSync(C)||d.mkdirSync(C,{recursive:!0}),d.copyFileSync(a,m),n(`\u590D\u5236public\u8D44\u6E90: ${c} -> ${h.relative(t,m)}`)}}if(u.forEach(({targetDir:s},c)=>{let a=h.resolve(t,`${c}.html`),m=c;if(d.existsSync(a)||(a=h.resolve(t,`.temp.mp.${c}.html`),d.existsSync(a)&&(m=c)),d.existsSync(a)){let C=d.readFileSync(a,"utf-8");C=C.replace(/(?:src|href)="\/assets\//g,v=>v.replace("/assets/","./assets/"));let x;e==="strategy"?x=h.resolve(s,`${m}.html`):e==="page"?x=h.resolve(s,"index.html"):x=a,d.writeFileSync(x,C),x!==a&&d.unlinkSync(a);let y=h.relative(t,x);n(`\u6309${e}\u5206\u7EC4\u79FB\u52A8HTML\u6587\u4EF6: ${m}.html -> ${y}`)}else n(`\u8B66\u544A: \u672A\u627E\u5230HTML\u6587\u4EF6: ${c}.html \u6216 .temp.mp.${c}.html`)}),d.existsSync(r))if(e==="strategy"||e==="page")try{d.rmSync(r,{recursive:!0,force:!0}),n("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(s){n("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",s)}else{l.forEach((c,a)=>{let m=h.resolve(r,a);d.existsSync(m)&&(d.unlinkSync(m),n(`\u6E05\u7406\u539F\u59CB\u8D44\u6E90\u6587\u4EF6: assets/${a}`))});let s=d.readdirSync(r);s.length===0?(d.rmdirSync(r),n("\u6E05\u7406\u7A7A\u7684assets\u76EE\u5F55")):n("assets\u76EE\u5F55\u4E2D\u8FD8\u6709\u672A\u5904\u7406\u7684\u6587\u4EF6:",s)}(e==="strategy"||e==="page")&&o.size>0&&(n("\u7B2C\u4E94\u9636\u6BB5\u8865\u5145\uFF1A\u6E05\u7406\u6839\u76EE\u5F55\u7684public\u8D44\u6E90"),o.forEach(s=>{let c=h.resolve(t,s);if(d.existsSync(c))try{d.unlinkSync(c),n(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90: ${s}`)}catch(a){n(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90\u5931\u8D25: ${s}`,a)}}),o.forEach(s=>{let c=h.resolve(t,s),a=h.dirname(c);for(;a!==t&&a!==h.dirname(a);)try{if(d.existsSync(a)&&d.readdirSync(a).length===0)d.rmdirSync(a),n(`\u5220\u9664\u7A7A\u76EE\u5F55: ${h.relative(t,a)}`),a=h.dirname(a);else break}catch{break}}))}function ce(t){let e,i=[],n=()=>{};return{name:"vite-multi-page",async configResolved(r){let f=null;H()&&(f=await z({mode:r.command==="serve"?"development":"production",command:r.command,isCLI:!1}));let u=D(f);e=t?t(u,{mode:r.command==="serve"?"development":"production",command:r.command,isCLI:!1}):u,n=e.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{},n("Vite\u914D\u7F6E\u5DF2\u89E3\u6790, \u4F7F\u7528\u914D\u7F6E:",{strategies:Object.keys(e.strategies||{}),entry:e.entry})},async config(r,{command:f}){var u;if(f==="serve"){let l=process.argv,o=l.find(g=>g.startsWith("--strategy="));if(o){let g=o.split("=")[1];g&&(process.env.VITE_MULTI_PAGE_STRATEGY=g)}else{let g=l.findIndex(p=>p==="--strategy");if(g!==-1&&g+1<l.length){let p=l[g+1];process.env.VITE_MULTI_PAGE_STRATEGY=p}}process.env.VITE_MULTI_PAGE_STRATEGY||(process.env.VITE_MULTI_PAGE_STRATEGY="default")}if(f==="build"){if(!e){let s=null;H()&&(s=await z({mode:"production",command:"build",isCLI:!1}));let c=D(s);e=t?t(c,{mode:"production",command:"build",isCLI:!1}):c,n=e.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{}}n("\u914D\u7F6E\u6784\u5EFA\u6A21\u5F0F");let l=process.env.VITE_MULTI_PAGE_BUILD_SINGLE_PAGE;if(l){n(`\u5355\u9875\u9762\u6784\u5EFA\u6A21\u5F0F: ${l}`);let s=N({entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",merge:e.merge||"all",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},forceBuildStrategy:void 0,forceBuildPage:l}),c=Object.values(s);if(c.length>0){let a=c[0],m=(0,q.mergeConfig)(r,a);Object.assign(r,m),n(`\u5DF2\u5E94\u7528\u5355\u9875\u9762\u6784\u5EFA\u914D\u7F6E: ${l}`);return}else throw new Error(`\u672A\u627E\u5230\u9875\u9762: ${l}`)}let o=process.env.VITE_MULTI_PAGE_STRATEGY,g=N({entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",merge:e.merge||"all",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},forceBuildStrategy:o}),p=Object.keys(g)[0];if(p&&g[p]){n(`\u5E94\u7528\u6784\u5EFA\u7B56\u7565: ${p}`);let s=g[p],c=(0,q.mergeConfig)(r,s);Object.assign(r,c),n(`\u5DF2\u5E94\u7528\u7B56\u7565 "${p}" \u7684\u914D\u7F6E:`,{build:!!s.build,define:!!s.define,plugins:((u=s.plugins)==null?void 0:u.length)||0})}else throw n("\u672A\u627E\u5230\u53EF\u7528\u7684\u6784\u5EFA\u7B56\u7565\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E"),new Error(`\u274C \u6784\u5EFA\u5931\u8D25: \u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565
104
+ `),new Error(`\u9700\u8981 esbuild \u4F9D\u8D56\u6765\u5904\u7406 TypeScript \u914D\u7F6E\u6587\u4EF6: ${j.basename(t)}`)}let r=await i.transform(e,{loader:"ts",format:"cjs",target:"node16",sourcemap:!1}),n=new A.Module(t);return n.filename=t,n.paths=A.Module._nodeModulePaths(j.dirname(t)),n._compile(r.code,t),n.exports}catch(e){if(e instanceof Error&&e.message.includes("\u9700\u8981 esbuild \u4F9D\u8D56"))throw e;console.warn("esbuild \u8F6C\u8BD1\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7B80\u5355\u8F6C\u6362:",e);let r=(await M.promises.readFile(t,"utf-8")).replace(/export\s+default\s+/,"module.exports = ").replace(/import\s+.*?from\s+['"][^'"]*['"];?\s*/g,"").replace(/:\s*[^=,})\]]+/g,""),n=new A.Module(t);return n.filename=t,n.paths=A.Module._nodeModulePaths(j.dirname(t)),n._compile(r,t),n.exports}if(t.endsWith(".js")||t.endsWith(".mjs"))return import(`${(0,ne.pathToFileURL)(t).href}?t=${Date.now()}`);throw new Error(`\u4E0D\u652F\u6301\u7684\u914D\u7F6E\u6587\u4EF6\u7C7B\u578B: ${t}`)}async function ve(){let t=process.cwd();for(let e of re){let i=j.resolve(t,e);if(M.existsSync(i))try{let r=await Ce(i),n=r.default||r;if(typeof n=="function")return n;console.warn(`\u914D\u7F6E\u6587\u4EF6 ${e} \u5FC5\u987B\u9ED8\u8BA4\u5BFC\u51FA\u4E00\u4E2A\u51FD\u6570`)}catch(r){e.endsWith(".ts")?(console.error(`\u52A0\u8F7DTypeScript\u914D\u7F6E\u6587\u4EF6 ${e} \u5931\u8D25:`,r),console.log("\u63D0\u793A\uFF1A\u786E\u4FDD\u4F60\u7684\u9879\u76EE\u652F\u6301TypeScript\uFF0C\u6216\u8005\u4F7F\u7528 .js/.mjs \u914D\u7F6E\u6587\u4EF6")):console.error(`\u52A0\u8F7D\u914D\u7F6E\u6587\u4EF6 ${e} \u5931\u8D25:`,r)}}return null}var F={entry:"src/pages/**/*.{ts,js}",exclude:[],template:"index.html",placeholder:"{{ENTRY_FILE}}",debug:!1,merge:"all",strategies:{default:{}},pageConfigs:{}};function D(t){return t?{entry:t.entry??F.entry,exclude:t.exclude??F.exclude,template:t.template??F.template,placeholder:t.placeholder??F.placeholder,debug:t.debug??F.debug,merge:t.merge??F.merge,strategies:t.strategies??F.strategies,pageConfigs:t.pageConfigs??F.pageConfigs,__forceBuildStrategy:t.__forceBuildStrategy}:{...F}}var oe=$(require("glob"));function se(t){return typeof t=="function"?t:()=>t}function ie(t){return t}function ae(t,e,i,r){let n=h.resolve(t,"assets");if(!d.existsSync(n)){r("assets\u76EE\u5F55\u4E0D\u5B58\u5728\uFF0C\u8DF3\u8FC7\u91CD\u7EC4");return}let f=d.readdirSync(t).filter(s=>s.endsWith(".html")).map(s=>h.resolve(t,s));if(f.length===0){if(r("\u672A\u627E\u5230HTML\u6587\u4EF6\uFF0C\u4F46\u4ECD\u9700\u6E05\u7406assets\u76EE\u5F55"),(e==="strategy"||e==="page")&&d.existsSync(n))try{d.rmSync(n,{recursive:!0,force:!0}),r("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(s){r("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",s)}return}let u=new Map,l=new Map;f.forEach(s=>{var S;let c=h.basename(s,".html");c.startsWith(".temp.mp.")&&(c=c.replace(".temp.mp.",""));let o=d.readFileSync(s,"utf-8"),m=[],C=/(?:src|href)="\/assets\/([^"]+)"/g,x;for(;(x=C.exec(o))!==null;){let b=x[1];m.push(b),l.has(b)||l.set(b,[]),(S=l.get(b))==null||S.push(c)}let y="";e==="page"&&(y=c);let v=h.resolve(t,y);u.set(c,{assets:m,targetDir:v}),r(`\u9875\u9762 ${c} \u4F9D\u8D56\u8D44\u6E90:`,m)}),r("\u7B2C\u4E00\u9636\u6BB5\u8865\u5145\uFF1A\u5206\u6790public\u76EE\u5F55\u8D44\u6E90");let a=new Set,g=h.resolve(process.cwd(),"public");if(d.existsSync(g)){let s=oe.sync("**/*",{cwd:g,nodir:!0});for(let c of s)a.add(c),r(`\u53D1\u73B0public\u8D44\u6E90: ${c}`)}l.forEach((s,c)=>{s.length>1?r(`\u5171\u4EAB\u8D44\u6E90 ${c} \u88AB\u9875\u9762\u4F7F\u7528:`,s):r(`\u72EC\u5360\u8D44\u6E90 ${c} \u4EC5\u88AB\u9875\u9762 ${s[0]} \u4F7F\u7528`)}),u.forEach(({assets:s,targetDir:c},o)=>{let m=h.resolve(c,"assets");d.existsSync(m)||d.mkdirSync(m,{recursive:!0}),s.forEach(C=>{let x=h.resolve(n,C),y=h.resolve(m,C);if(d.existsSync(x)){d.copyFileSync(x,y);let S=(l.get(C)||[]).length>1?"\u5171\u4EAB\u8D44\u6E90":"\u72EC\u5360\u8D44\u6E90";r(`\u590D\u5236${S}\u5230 ${o}: assets/${C} -> ${h.relative(t,y)}`)}else r(`\u8B66\u544A: \u8D44\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728: ${x}`)}),d.existsSync(n)&&d.readdirSync(n).forEach(x=>{if(!s.includes(x)){let y=h.resolve(n,x),v=h.resolve(m,x);d.existsSync(y)&&(d.copyFileSync(y,v),r(`\u590D\u5236\u5176\u4ED6\u8D44\u6E90\u6587\u4EF6\u5230 ${o}: assets/${x} -> ${h.relative(t,v)}`))}})}),r("\u7B2C\u4E09\u9636\u6BB5\u8865\u5145\uFF1A\u5904\u7406public\u76EE\u5F55\u8D44\u6E90");let p=new Set;u.forEach(({targetDir:s})=>{p.add(s)});for(let s of p)for(let c of a){let o=h.resolve(t,c),m=h.resolve(s,c);if(d.existsSync(o)){let C=h.dirname(m);d.existsSync(C)||d.mkdirSync(C,{recursive:!0}),d.copyFileSync(o,m),r(`\u590D\u5236public\u8D44\u6E90: ${c} -> ${h.relative(t,m)}`)}}if(u.forEach(({targetDir:s},c)=>{let o=h.resolve(t,`${c}.html`),m=c;if(d.existsSync(o)||(o=h.resolve(t,`.temp.mp.${c}.html`),d.existsSync(o)&&(m=c)),d.existsSync(o)){let C=d.readFileSync(o,"utf-8");C=C.replace(/(?:src|href)="\/assets\//g,v=>v.replace("/assets/","./assets/"));let x;e==="strategy"?x=h.resolve(s,`${m}.html`):e==="page"?x=h.resolve(s,"index.html"):x=o,d.writeFileSync(x,C),x!==o&&d.unlinkSync(o);let y=h.relative(t,x);r(`\u6309${e}\u5206\u7EC4\u79FB\u52A8HTML\u6587\u4EF6: ${m}.html -> ${y}`)}else r(`\u8B66\u544A: \u672A\u627E\u5230HTML\u6587\u4EF6: ${c}.html \u6216 .temp.mp.${c}.html`)}),d.existsSync(n))if(e==="strategy"||e==="page")try{d.rmSync(n,{recursive:!0,force:!0}),r("\u5F3A\u5236\u6E05\u7406\u6574\u4E2A\u6839\u76EE\u5F55assets\u76EE\u5F55 (strategy/page\u6A21\u5F0F)")}catch(s){r("\u6E05\u7406\u6839\u76EE\u5F55assets\u5931\u8D25:",s)}else{l.forEach((c,o)=>{let m=h.resolve(n,o);d.existsSync(m)&&(d.unlinkSync(m),r(`\u6E05\u7406\u539F\u59CB\u8D44\u6E90\u6587\u4EF6: assets/${o}`))});let s=d.readdirSync(n);s.length===0?(d.rmdirSync(n),r("\u6E05\u7406\u7A7A\u7684assets\u76EE\u5F55")):r("assets\u76EE\u5F55\u4E2D\u8FD8\u6709\u672A\u5904\u7406\u7684\u6587\u4EF6:",s)}(e==="strategy"||e==="page")&&a.size>0&&(r("\u7B2C\u4E94\u9636\u6BB5\u8865\u5145\uFF1A\u6E05\u7406\u6839\u76EE\u5F55\u7684public\u8D44\u6E90"),a.forEach(s=>{let c=h.resolve(t,s);if(d.existsSync(c))try{d.unlinkSync(c),r(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90: ${s}`)}catch(o){r(`\u5220\u9664\u6839\u76EE\u5F55public\u8D44\u6E90\u5931\u8D25: ${s}`,o)}}),a.forEach(s=>{let c=h.resolve(t,s),o=h.dirname(c);for(;o!==t&&o!==h.dirname(o);)try{if(d.existsSync(o)&&d.readdirSync(o).length===0)d.rmdirSync(o),r(`\u5220\u9664\u7A7A\u76EE\u5F55: ${h.relative(t,o)}`),o=h.dirname(o);else break}catch{break}}))}function ce(t){let e,i=[],r=()=>{};return{name:"vite-multi-page",async configResolved(n){let f=null;H()&&(f=await z({mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}));let u=D(f);e=t?t(u,{mode:n.command==="serve"?"development":"production",command:n.command,isCLI:!1}):u,r=e.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{},r("Vite\u914D\u7F6E\u5DF2\u89E3\u6790, \u4F7F\u7528\u914D\u7F6E:",{strategies:Object.keys(e.strategies||{}),entry:e.entry})},async config(n,{command:f}){var u;if(f==="serve"){let l=process.argv,a=l.find(g=>g.startsWith("--strategy="));if(a){let g=a.split("=")[1];g&&(process.env.VITE_MULTI_PAGE_STRATEGY=g)}else{let g=l.findIndex(p=>p==="--strategy");if(g!==-1&&g+1<l.length){let p=l[g+1];process.env.VITE_MULTI_PAGE_STRATEGY=p}}process.env.VITE_MULTI_PAGE_STRATEGY||(process.env.VITE_MULTI_PAGE_STRATEGY="default")}if(f==="build"){if(!e){let s=null;H()&&(s=await z({mode:"production",command:"build",isCLI:!1}));let c=D(s);e=t?t(c,{mode:"production",command:"build",isCLI:!1}):c,r=e.debug??!1?console.log.bind(console,"[vite-multi-page]"):()=>{}}r("\u914D\u7F6E\u6784\u5EFA\u6A21\u5F0F");let l=process.env.VITE_MULTI_PAGE_BUILD_SINGLE_PAGE;if(l){r(`\u5355\u9875\u9762\u6784\u5EFA\u6A21\u5F0F: ${l}`);let s=N({entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",merge:e.merge||"all",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},forceBuildStrategy:void 0,forceBuildPage:l}),c=Object.values(s);if(c.length>0){let o=c[0],m=(0,q.mergeConfig)(n,o);Object.assign(n,m),r(`\u5DF2\u5E94\u7528\u5355\u9875\u9762\u6784\u5EFA\u914D\u7F6E: ${l}`);return}else throw new Error(`\u672A\u627E\u5230\u9875\u9762: ${l}`)}let a=process.env.VITE_MULTI_PAGE_STRATEGY,g=N({entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",merge:e.merge||"all",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},forceBuildStrategy:a}),p=Object.keys(g)[0];if(p&&g[p]){r(`\u5E94\u7528\u6784\u5EFA\u7B56\u7565: ${p}`);let s=g[p],c=(0,q.mergeConfig)(n,s);Object.assign(n,c),r(`\u5DF2\u5E94\u7528\u7B56\u7565 "${p}" \u7684\u914D\u7F6E:`,{build:!!s.build,define:!!s.define,plugins:((u=s.plugins)==null?void 0:u.length)||0})}else throw r("\u672A\u627E\u5230\u53EF\u7528\u7684\u6784\u5EFA\u7B56\u7565\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E"),new Error(`\u274C \u6784\u5EFA\u5931\u8D25: \u672A\u627E\u5230\u4EFB\u4F55\u6784\u5EFA\u7B56\u7565
105
105
 
106
106
  \u53EF\u80FD\u7684\u539F\u56E0\uFF1A
107
107
  1. \u914D\u7F6E\u6587\u4EF6\u8FD4\u56DE\u7A7A\u5BF9\u8C61 {}
@@ -116,5 +116,5 @@ export default () => ({
116
116
  strategies: {
117
117
  default: {}
118
118
  }
119
- });`)}},configureServer(r){if(r.config.command==="serve"){n("\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668");let f=process.env.VITE_MULTI_PAGE_STRATEGY||"default";n(`\u5F00\u53D1\u6A21\u5F0F\u7B56\u7565: ${f}`),X(r,{entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},devStrategy:f},n)}},writeBundle(r){if(!(e!=null&&e.merge)||e.merge==="all")return;let f=r.dir||"dist",u=e.merge;n(`\u5E94\u7528\u6784\u5EFA\u4EA7\u7269\u5408\u5E76\u6A21\u5F0F: ${u}`);try{ae(f,u,e,n)}catch(l){throw n("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",l),l}},buildEnd(){i.length>0&&(n(`\u6E05\u7406 ${i.length} \u4E2A\u4E34\u65F6\u6587\u4EF6`),i.forEach(r=>{try{d.existsSync(r)&&(d.unlinkSync(r),n(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6: ${r}`))}catch(f){n(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${r}`,f)}}),i.length=0)}}}function be(t,e,i,n){return ae(t,e,i,n)}var Se=ce;0&&(module.exports={cleanViteOutputDirectory,defineConfig,defineConfigTransform,generateBuildConfig,getAvailableStrategies,getViteOutputDirectory,mergeWithDefaults,reorganizeAssetsInCLI,viteMultiPage});
119
+ });`)}},configureServer(n){if(n.config.command==="serve"){r("\u914D\u7F6E\u5F00\u53D1\u670D\u52A1\u5668");let f=process.env.VITE_MULTI_PAGE_STRATEGY||"default";r(`\u5F00\u53D1\u6A21\u5F0F\u7B56\u7565: ${f}`),X(n,{entry:e.entry||"src/pages/**/*.{ts,js}",exclude:e.exclude||[],template:e.template||"index.html",placeholder:e.placeholder||"{{ENTRY_FILE}}",strategies:e.strategies||{},pageConfigs:e.pageConfigs||{},devStrategy:f},r)}},writeBundle(n){if(!(e!=null&&e.merge)||e.merge==="all")return;let f=n.dir||"dist",u=e.merge;r(`\u5E94\u7528\u6784\u5EFA\u4EA7\u7269\u5408\u5E76\u6A21\u5F0F: ${u}`);try{ae(f,u,e,r)}catch(l){throw r("\u8D44\u6E90\u91CD\u7EC4\u5931\u8D25:",l),l}},buildEnd(){i.length>0&&(r(`\u6E05\u7406 ${i.length} \u4E2A\u4E34\u65F6\u6587\u4EF6`),i.forEach(n=>{try{d.existsSync(n)&&(d.unlinkSync(n),r(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6: ${n}`))}catch(f){r(`\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25: ${n}`,f)}}),i.length=0)}}}function be(t,e,i,r){return ae(t,e,i,r)}var Se=ce;0&&(module.exports={cleanViteOutputDirectory,defineConfig,defineConfigTransform,generateBuildConfig,getAvailableStrategies,getViteOutputDirectory,mergeWithDefaults,reorganizeAssetsInCLI,viteMultiPage});
120
120
  //# sourceMappingURL=index.js.map