@metricinsights/pp-dev 1.5.0-beta.13 → 1.5.0-beta.15
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/README.md +9 -5
- package/dist/README.md +9 -5
- package/dist/cjs/auth.provider-DaLYQg0T.js +2 -0
- package/dist/cjs/auth.provider-DaLYQg0T.js.map +1 -0
- package/dist/cjs/cli.js +1 -1
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/index-BcjhRmxz.js +2 -0
- package/dist/cjs/index-BcjhRmxz.js.map +1 -0
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/{migrate-Dps-nMeB.js → migrate-C2YzTFrM.js} +2 -2
- package/dist/cjs/{migrate-Dps-nMeB.js.map → migrate-C2YzTFrM.js.map} +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/plugin.js +1 -1
- package/dist/cjs/variables-editor-BHiWb4-B.js +106 -0
- package/dist/cjs/variables-editor-BHiWb4-B.js.map +1 -0
- package/dist/cjs/{version-manifest-CqE0wrYl.js → version-manifest-Dq5x7D15.js} +2 -2
- package/dist/cjs/{version-manifest-CqE0wrYl.js.map → version-manifest-Dq5x7D15.js.map} +1 -1
- package/dist/cjs/{version-plugin-DMiBUjWN.js → version-plugin-C-8273qp.js} +2 -2
- package/dist/cjs/{version-plugin-DMiBUjWN.js.map → version-plugin-C-8273qp.js.map} +1 -1
- package/dist/esm/auth.provider-CaBF6-T3.js +2 -0
- package/dist/esm/auth.provider-CaBF6-T3.js.map +1 -0
- package/dist/esm/cli.js +1 -1
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/index-DewOudJ0.js +2 -0
- package/dist/esm/index-DewOudJ0.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/{migrate-BLw2zDKz.js → migrate-SXsPvdfV.js} +2 -2
- package/dist/esm/{migrate-BLw2zDKz.js.map → migrate-SXsPvdfV.js.map} +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/plugin.js +1 -1
- package/dist/esm/variables-editor-CWbcJAdI.js +106 -0
- package/dist/esm/variables-editor-CWbcJAdI.js.map +1 -0
- package/dist/esm/{version-manifest-BV_AaM6K.js → version-manifest-C1RlO_jm.js} +2 -2
- package/dist/esm/{version-manifest-BV_AaM6K.js.map → version-manifest-C1RlO_jm.js.map} +1 -1
- package/dist/esm/{version-plugin-dNL5gh4i.js → version-plugin-aWKAiJZe.js} +2 -2
- package/dist/esm/{version-plugin-dNL5gh4i.js.map → version-plugin-aWKAiJZe.js.map} +1 -1
- package/dist/types/index.d.ts +8 -3
- package/package.json +1 -1
- package/dist/cjs/auth.provider-BnEtiRs7.js +0 -2
- package/dist/cjs/auth.provider-BnEtiRs7.js.map +0 -1
- package/dist/cjs/index-B0BMZcv9.js +0 -2
- package/dist/cjs/index-B0BMZcv9.js.map +0 -1
- package/dist/cjs/variables-editor-C2XqYGV8.js +0 -106
- package/dist/cjs/variables-editor-C2XqYGV8.js.map +0 -1
- package/dist/esm/auth.provider-CwqTry2g.js +0 -2
- package/dist/esm/auth.provider-CwqTry2g.js.map +0 -1
- package/dist/esm/index-lwWNBUTa.js +0 -2
- package/dist/esm/index-lwWNBUTa.js.map +0 -1
- package/dist/esm/variables-editor-jW7PjpIK.js +0 -106
- package/dist/esm/variables-editor-jW7PjpIK.js.map +0 -1
package/dist/esm/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,P as l,b as c,n as d,d as p,r as f,V as u,v as g,e as h,f as m,g as b,h as w}from"./auth.provider-CwqTry2g.js";import{r as v,l as y,g as P,s as x,a as S,b as k,c as T,i as L}from"./index-lwWNBUTa.js";import{loadConfigFromFile as E,mergeConfig as D,build as F,resolveConfig as $,optimizeDeps as I,preview as j}from"vite";import{parse as _}from"url";import{e as A,c as N,r as C,a as M,z as R,I as O,R as z,b as H,i as V,d as U,f as W,M as Z,g as B,h as G,j as q,k as J,V as K,l as Y,u as X,D as Q,C as ee,m as te,n as oe,s as ne}from"./variables-editor-jW7PjpIK.js";import*as ie from"dir-compare";import se from"diff-match-patch";import{isBinaryFile as re}from"isbinaryfile";import*as ae from"os";import*as le from"crypto";import{WebSocketServer as ce,WebSocket as de}from"ws";import{w as pe}from"./version-manifest-BV_AaM6K.js";import"picocolors";import"node:path";import"child_process";import"./helpers.js";import"ejs";import"zlib";import"axios";import"node:http";import"node:https";import"http-proxy-middleware";import"node:string_decoder";import"node:crypto";import"node:fs";import"node:os";import"express";import"process";import"jszip";import"module";import"node:module";function fe(e){return null!=e&&!1!==e}let ue=null;const ge=[{key:"r",description:"restart the server",async action(e){await e.restart()}},{key:"u",description:"show server url",action(e){e.config.logger.info(""),e.printUrls()}},{key:"o",description:"open in browser",action(e){e.openBrowser()}},{key:"c",description:"clear console",action(e){e.config.logger.clearScreen("error")}},{key:"q",description:"quit",async action(e){await e.close().finally(()=>process.exit())}},{key:"C",description:"clear proxy cache",action(e){e.cache&&(e.cache.clear(),e.config.logger.info("Proxy cache cleared"))}}];const he=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class me{oldAssetsPath;newAssetsPath;destinationPath;changelogFilename;changelogTemplate='<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8" />\n <title>Changelog Diff</title>\n <style>\n tr,\n td {\n padding: 0;\n }\n .diff-file {\n margin-top: 20px;\n border: 1px solid #e1e4e8;\n border-radius: 6px;\n }\n .diff-file-title {\n padding: 10px 20px;\n background-color: #f6f8fa;\n border-bottom: 1px solid #e1e4e8;\n border-radius: 6px 6px 0 0;\n font-weight: bold;\n }\n .diff-file-title .renamed {\n font-weight: normal;\n }\n .diff-file-title .renamed .from {\n color: #cb2431;\n }\n .diff-file-title .renamed .to {\n color: #22863a;\n }\n .diff-file-title .added {\n color: #22863a;\n }\n .diff-file-title .deleted {\n color: #cb2431;\n }\n .diff-file-content {\n }\n .diff-table {\n tab-size: 8;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n }\n .blob-num {\n position: relative;\n color: #1f2328;\n width: 1%;\n min-width: 50px;\n padding: 0 10px;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n line-height: 20px;\n text-align: right;\n white-space: nowrap;\n vertical-align: top;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n }\n .blob-num.addition {\n background-color: #ccffd8;\n border-color: #1f883e;\n }\n .blob-num.deletion {\n background-color: #ffd7d5;\n border-color: #cf222e;\n }\n .blob-num::before {\n content: attr(data-line-number);\n }\n .blob-code {\n position: relative;\n padding: 0 10px 0 22px;\n vertical-align: top;\n color: #1f2329;\n }\n .blob-code.code-addition {\n background-color: #e6ffec;\n }\n .blob-code.code-deletion {\n background-color: #ffebe9;\n }\n .blob-code.skip,\n .blob-code.message {\n text-align: center;\n }\n .blob-code.skip .blob-code-inner,\n .blob-code.message .blob-code-inner {\n font-weight: bold;\n color: #6a737d;\n padding: 10px 0;\n }\n .blob-code-inner {\n display: table-cell;\n overflow: visible;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n word-wrap: anywhere;\n white-space: pre-wrap;\n }\n .blob-code-inner::before {\n content: attr(data-code-prefix);\n position: absolute;\n top: 1px;\n left: 8px;\n padding-right: 8px;\n }\n </style>\n </head>\n <body>\n <h1>Changelog Diff</h1>\n\n %FILES%\n </body>\n </html>';diffFileTemplateHandler;diffLineTemplateHandler;contextLines=3;logger;constructor(t){const{oldAssetsPath:o,newAssetsPath:n,destinationPath:i,changelogTemplate:s,diffFileTemplateHandler:l,diffLineTemplateHandler:c,changelogFilename:d,contextLines:p}=t;if(this.logger=r(),!o||!n||!i)throw new Error("Previous assets path, current assets path and destination path are required");if(o===n)throw new Error("Previous and current assets paths must be different");if(!this.isExists(o))throw new Error(`Previous assets path ${o} does not exist`);if(!this.isExists(n))throw new Error(`Current assets path ${n} does not exist`);if(this.isZipFile(o)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(o).digest("hex"));this.oldAssetsPath=this.unzipFile(o,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);return e})}else{if(!this.isFolder(o))throw new Error(`Invalid previous assets path ${o}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(o);if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);this.oldAssetsPath=Promise.resolve(e)}}if(this.isZipFile(n)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await A(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await ie.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(he.test(e)&&(e=e.replace(he,"$1$3")),he.test(t)&&(t=t.replace(he,"$1$3")),0===e.localeCompare(t)?0:e.localeCompare(t)>0?1:-1)});return e.diffSet?.filter(e=>"equal"!==e.state||e.name1!==e.name2)||[]}async generateAssetFilesDiff(e,t){const o=new se,n=o.diff_linesToChars_(e,t),i=o.diff_main(n.chars1,n.chars2,!1);o.diff_charsToLines_(i,n.lineArray);let s=0;return i.map(e=>{const[t,o]=e,n=o.endsWith("\n")?o.split("\n").length-1:o.split("\n").length,i=o.split("\n").map((e,o)=>({lineContent:e,lineNumber:s+o+1,lineType:t})).slice(0,n);return-1!==t&&(s+=n),i}).flat()}async generateFilesDiff(o){if("equal"===o.state){const t=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),n=this.pathToPosix(e.join(".",o.relativePath,o.name2??""));return this.diffFileTemplate(`<span class="renamed"\n >Renamed <span class="from">${t}</span> -> <span class="to">${n}</span></span\n >`,this.diffTableTemplate(this.diffLineMessageTemplate("No changes")))}const n=o.path1&&o.name1?e.join(o.path1,o.name1):null,i=o.path2&&o.name2?e.join(o.path2,o.name2):null,s=this.pathToPosix(e.join(".",o.relativePath,(o.name1||o.name2)??""));if("left"===o.state&&n)return this.diffFileTemplate(`<span class="removed">Removed ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File removed")));if("right"===o.state&&i)return this.diffFileTemplate(`<span class="added">Added ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File added")));if("distinct"===o.state&&n&&i){const r=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),a=this.pathToPosix(e.join(".",o.relativePath,o.name2??"")),l=o.name1!==o.name2?`<span class="renamed"\n >Renamed <span class="from">${r}</span> -> <span class="to">${a}</span></span\n >`:s;return this.diffFileTemplate(l,await re(n)||await re(i)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(t.readFileSync(n,"utf-8"),t.readFileSync(i,"utf-8"))))}return""}async generateChangelog(){this.logger.info(a.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(a.green("Writing changelog file"));const i=this.changelogTemplate.split("%FILES%");i.splice(1,0,n);const s=i.join("");t.writeFileSync(e.join(this.destinationPath,this.changelogFilename),s),this.logger.info(a.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class be{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){const{default:e}=await(import("svgtofont"));await e({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class we{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new ce({noServer:!0}),this.wss.on("connection",e=>this.onConnection(e)),this.wss.on("error",e=>this.fireLifecycle("error",e)),this.ws={on:(e,t)=>{"close"!==e&&"error"!==e?this.getEventSet(e).add(t):this.getLifecycleSet(e).add(t)},off:(e,t)=>{this.eventListeners.get(e)?.delete(t),"close"!==e&&"error"!==e||this.lifecycleListeners.get(e)?.delete(t)},send:(e,t)=>{if("string"==typeof e)for(const o of this.clients.keys())this.sendToSocket(o,e,t);else{const t=JSON.stringify(e);for(const e of this.clients.keys())e.readyState===de.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){if((e.url??"").split("?")[0]!==l)return!1;return N(e)?(t.once("error",()=>t.destroy()),t.end("HTTP/1.1 403 Forbidden\r\nConnection: close\r\nContent-Length: 0\r\n\r\n",()=>t.destroy()),!0):(this.wss.handleUpgrade(e,t,o,t=>{this.wss.emit("connection",t,e)}),!0)}async close(){this.fireLifecycle("close");for(const e of this.clients.keys())e.terminate();this.clients.clear(),await new Promise(e=>this.wss.close(()=>e()))}onConnection(e){const t={send:(t,o)=>this.sendToSocket(e,t,o)};this.clients.set(e,t),e.on("message",e=>this.onMessage(t,e)),e.on("close",()=>this.clients.delete(e)),e.on("error",()=>{})}onMessage(e,t){let o;try{o=JSON.parse(t.toString())}catch{return}if(!o||"custom"!==o.type||"string"!=typeof o.event)return;const n=this.eventListeners.get(o.event);if(n)for(const t of n)try{t(o.data,e)}catch(e){r().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===de.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}function ve(e){return e instanceof Error?e.stack??e.message:String(e)}function ye({logger:e,knownRejections:t=[],shutdown:o,shutdownTimeoutMs:n=5e3,processRef:i=process}){let s=!1,r=0;const l=async(t,l)=>{if((e=>{r=Math.max(r,e)})(l),s)return void("SIGINT"!==t&&"SIGTERM"!==t||(e.warn(a.yellow(`\n⚠️ Received ${t} again, exiting without waiting for the shutdown`)),i.exit(r)));s=!0,e.info(a.yellow(`\n🛑 Received ${t}, shutting down gracefully...`));const c=setTimeout(()=>{e.error(a.red(`⏰ Shutdown did not finish within ${n} ms, forcing exit`)),i.exit(1)},n);try{await o(),clearTimeout(c),e.info(a.green("✅ Graceful shutdown completed")),i.exit(r)}catch(t){clearTimeout(c),e.error(a.red(`❌ Error during graceful shutdown: ${ve(t)}`)),i.exit(1)}},c=()=>{l("SIGINT",0)},d=()=>{l("SIGTERM",0)},p=t=>{e.error(a.red(`❌ Uncaught exception: ${ve(t)}`)),l("uncaughtException",1)},f=o=>{const n=t.find(e=>e.matches(o));n?e.info(a.dim(n.message)):e.error(a.red(`❌ Unhandled promise rejection (the server keeps running): ${ve(o)}`))};return i.on("SIGINT",c),i.on("SIGTERM",d),i.on("uncaughtException",p),i.on("unhandledRejection",f),()=>{i.off("SIGINT",c),i.off("SIGTERM",d),i.off("uncaughtException",p),i.off("unhandledRejection",f)}}const Pe={matches:e=>e instanceof Error&&"Worker creator already registered"===e.message,message:"Next.js kept its Turbopack worker pool from before the restart ('Worker creator already registered')"};const xe=s("pp-dev");function Se(t,o,n){const s=[...w,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function ke(e){e.watcher&&e.watcher.close()}function Te(e){if(!e||"object"!=typeof e||!("message"in e))return!1;const t=String(e.message);return/Turbopack is not supported/i.test(t)||/native bindings are not available/i.test(t)||/Only WebAssembly \(WASM\) bindings were loaded/i.test(t)}async function Le(o){const{changelog:n,executionRoot:i,newAssetsPath:s,backupsDirPath:l,changelogDestinationPath:c,logLevel:d}=o;let p;if("string"==typeof n)p=e.resolve(i,n);else{if(!t.existsSync(l))return void r(d).warn(a.yellow("backups directory not found, skipping changelog generation"));const o=t.readdirSync(l,{withFileTypes:!0});if(!o.length)return void r(d).warn(a.yellow("no backups found, skipping changelog generation"));const n=o.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!n.length)return void r(d).warn(a.yellow("no ZIP backups found, skipping changelog generation"));const i=n.reduce((o,n)=>t.statSync(e.resolve(l,o.name)).mtimeMs>t.statSync(e.resolve(l,n.name)).mtimeMs?o:n).name;p=e.resolve(l,i)}const f=new me({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Ee=global.__pp_dev_profile_session,De=0;const Fe=o=>{if(Ee)return new Promise((n,i)=>{Ee.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${De++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Ee=void 0,n()}})})},$e=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function Ie(e){const t={...e};return delete t["--"],delete t.c,delete t.config,delete t.base,delete t.l,delete t.logLevel,delete t.clearScreen,delete t.d,delete t.debug,delete t.f,delete t.filter,delete t.m,delete t.mode,t}xe.option("-c, --config <file>","[string] use specified config file").option("--base <path>","[string] public base path (default: /)").option("-l, --logLevel <level>","[string] info | warn | error | silent").option("--clearScreen","[boolean] allow/disable clear screen when logging").option("-d, --debug [feat]","[string | boolean] show debug logs").option("-f, --filter <filter>","[string] filter debug logs").option("-m, --mode <mode>","[string] set env mode"),xe.command("[root]","start dev server").alias("serve").alias("dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{$e(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:f,getConfig:g}=await import("./index-lwWNBUTa.js").then(e=>e.h);f();const{createServer:h}=await(import("vite")),m=o.mode||"development",b=e.resolve(process.cwd(),t??".");y(m,b);const w=await E({mode:m,command:"serve"},o.config,t,o.logLevel);let v=await P(void 0,{mode:m,root:b});if(w){const{plugins:e,...t}=w.config;v=D(v,t)}if(i=await h(D(v,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:Ie(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const x=global.__pp_dev_start_time??!1,S=x?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-x)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${u}`)} ${S}\n`),i.printUrls();const k=await g(b);if(!1!==k.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+O)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=r();t.print&&o.info(a.dim(a.green(" ➜"))+a.dim(" press ")+a.bold("h")+a.dim(" to show help"));const n=(t.customShortcuts??[]).filter(fe).concat(ge);ue?.(),ue=null;let i=!1;const s=process.stdin.isPaused(),l=process.stdin,c=Boolean(l.isRaw),d=async t=>{if(""===t)return void process.kill(process.pid,"SIGINT");if(""===t)return void await e.close().finally(()=>process.exit(0));if(i)return;"h"===t&&o.info(["",a.bold(" Shortcuts"),...n.map(e=>a.dim(" press ")+a.bold(e.key)+a.dim(` to ${e.description}`))].join("\n"));const s=n.find(e=>e.key===t);s&&(i=!0,await s.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",d).setEncoding("utf8").resume();const p=e.httpServer,f=()=>{ue===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),ue=null)};ue=f,p.on("close",f)}(i,{print:!0,customShortcuts:[...Ee?[{key:"p",description:"start/stop the profiler",async action(e){if(Ee)await Fe(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Ee=new e.Session,Ee.connect(),Ee.post("Profiler.enable",()=>{Ee?.post("Profiler.start",()=>{d.info("Profiler started"),t()})})})}}}]:[],{key:"l",description:"proxy re-login",action(e){e.ws.send({type:"custom",event:"redirect",data:{url:`/auth/index/logout?proxyRedirect=${encodeURIComponent("/")}`}})}}]}),s||(s=Se(c,p,d.info),d.info(a.blue("🔧 Config file watcher started"))),l=!1}catch(e){l=!1,d.error(a.red(`error when starting dev server:\n${e.stack}`),{error:e}),Fe(d.info),process.exit(1)}}};ye({logger:d,shutdown:async()=>{s&&(ke(s),s=null),i&&(await i.close(),i=null),Fe(d.info)}}),await p()}),xe.command("next [root]","start Next.js development server with pp-dev integration").alias("next-serve").alias("next-dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port",{default:3e3}).option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").option("--webpack","[boolean] use Webpack for Next dev (use when Turbopack/native SWC is unavailable)").option("--turbopack","[boolean] use Turbopack for Next dev when native bindings work").action(async(n,i)=>{$e(i);let s=null,l=null,p=null,f=null,u=!1;const w=new Set,v=r(),P=function(e=["uncaughtException"],t=process){const o=e=>t.listeners(e);let n=null,i=null;return{beforeCreate(){n=new Map(e.map(e=>[e,new Set(o(e))]))},afterCreate(){if(!n)return 0;const s=n,r=new Map(e.map(e=>[e,o(e).filter(t=>!s.get(e).has(t))]));let a=0;if(i)for(const[e,o]of i){const n=new Set(r.get(e).map(e=>e.toString()));for(const i of o)n.has(i.toString())&&(t.off(e,i),a+=1)}return i=r,n=null,a}}}(),S=async()=>{s&&"function"==typeof s.close&&await s.close(),s=null},k=async()=>{const e=l;if(e){for(const e of w)e.destroy();w.clear(),await new Promise(t=>{e.close(()=>t())}),l===e&&(l=null)}},E=async()=>{if(!u){u=!0;try{const{next:D,constants:F}=await x(),{PHASE_DEVELOPMENT_SERVER:$}=F;p&&(await p.close(),p=null),l&&(v.info(a.yellow("🛑 Stopping existing Next.js server...")),await k()),await S();const{clearConfigCache:I}=await import("./index-lwWNBUTa.js").then(e=>e.h);I();const{join:j,basename:A}=await(import("path")),{createServer:N}=await(import("http")),C=await(import("next/dist/server/config.js")),M=C.default.default||C["module.exports"].default||C.default,R=Ie(i),ie=n?j(process.cwd(),n):process.cwd();y(i.mode||"development",ie),v.info(ie);const se=await M($,ie);let re=se?.ppDev||{};if(0===Object.keys(re).length)try{const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h),t=await e(ie);Object.keys(t).length>0?(re=t,v.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):v.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){v.info(a.yellow("⚠️ Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else v.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));let ae=null;try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);ae=e(ie).name}catch{ae=A(ie)}g(re,ae??"");const le=d(re,ae??""),ce=le.backendBaseURL??"http://localhost:8080",de=le.templateLess,pe=le.v7Features,fe=le.disableSSLValidation,ue=le.enableProxyCache,ge=le.proxyCacheTTL,he=le.personalAccessToken,me=le.miHudLess,be=le.inspectorEnabled,ve=le.inspectorMaxMemory,ye=le.inspectorCaptureLimit,Pe=le.appId??(process.env.MI_APP_ID&&parseInt(process.env.MI_APP_ID,10)||void 0)??(process.env.MI_PORTAL_PAGE_ID&&parseInt(process.env.MI_PORTAL_PAGE_ID,10)||void 0)??1,xe=se?.basePath;let ke="";xe?ke=xe:(ke=de?h:pe?m:b,ke+=`/${ae}`);const Le=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Ee=async e=>{delete process.env.TURBOPACK,await S();const t={dev:!0,customServer:!0,hostname:R.host||"localhost",port:R.port,dir:ie,conf:{...se,basePath:ke,assetPrefix:ke}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),P.beforeCreate(),s=D(t),await s.prepare(),P.afterCreate()};if(Le.webpack)await Ee({webpack:!0});else if(Le.turbopack)try{await Ee({turbopack:!0})}catch(e){if(!Te(e))throw e;v.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Ee({webpack:!0})}else try{await Ee({})}catch(e){if(!Te(e))throw e;v.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Ee({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(ke.endsWith("/")||(ke+="/"),"/"===ke)throw new Error('basePath cannot be equal to "/" or equal to empty string');v.info(a.green("✅ Next.js app prepared successfully")),v.info(a.blue(`🔧 pp-dev plugin configured for template: ${ae}`)),v.info(a.blue(`🔧 Base path configured: ${ke}`)),ce&&(v.info(a.blue(`🌐 Backend URL: ${ce}`)),v.info(a.blue(`🆔 Custom App ID: ${Pe}`)));const De=s.getRequestHandler(),Fe="number"==typeof R.port?R.port:3e3,$e="string"==typeof R.host?R.host||"0.0.0.0":"localhost";l=N(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=_(o,!0);if(_e.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(Ae.length>0){let l=0;const c=()=>{if(l>=Ae.length)return void s();const o=Ae[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=_e.length)return void s();const o=_e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(ke))i=_(o,!0);else{if(n===ke.replace(/\/$/,"")){const e=o.replace(n,ke);return t.writeHead(302,{Location:e}),void t.end()}if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:ke}),void t.end()}await De(e,t,i)}s()}catch(d){v.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let je=null,_e=[],Ae=[];if(!1!==be){const e=new z(ve);H(V,e,ye);const t=U(e,ye);_e.push(t)}if(ce){const n=new URL(ce).host,i=W();Ae.unshift(i),_e.unshift(i),ce.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const d={headers:{host:n,referer:ce,origin:ce.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:Pe,templateLess:de,disableSSLValidation:fe,v7Features:pe,personalAccessToken:he??process.env.MI_ACCESS_TOKEN};je=new Z(ce,d);const f=B(ke,ae??void 0),u=(e,t,o)=>{f(e,t,o)};Ae.push(u),_e.push(u);const g=T(ke);if(Ae.push(g),_e.push(g),ue){let e=+ge;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=G({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};_e.push(n),v.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const h=new RegExp(`^((${r=ke,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=q(h,je,Object.assign({base:ke},d,{miHudLess:me})),b=(e,t,o)=>{m(e,t,o)};_e.push(b);const w=ke.endsWith("/")?ke.substring(0,ke.length-1):ke,y={middlewares:{use:e=>e},config:{logger:console}},P=J({devServer:y,baseURL:ce,proxyIgnore:["/@vite","/@metricinsights","/@",w,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:fe,miAPI:je,templateName:ae??void 0}),x=(e,t,o)=>{P(e,t,o)};_e.push(x);const S=V,k=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(O)||e.url?.startsWith(K)){return void S(e,t,()=>{})}o()};Ae.push(k),_e.push(k);const E=Y(e=>{const t=e.split("?")[0];return t.startsWith(ke)&&!t.includes("/_next/")},(e,t)=>{const o=je.buildPage(e,me),i=L(o,ke,{backendBaseURL:ce,templateLess:de,appId:Pe,devPanelPosition:le.devPanelPosition,devPanelHidden:le.devPanelHidden,devPanelAutoHide:le.devPanelAutoHide});return Buffer.from(X(n,t.headers.host??"",i))}),D=(e,t,o)=>{E(e,t,o)};_e.push(D),p=new we;let $=se?.distDir;try{process.env[c]="1";const e=await M(F.PHASE_PRODUCTION_BUILD,ie);$=e?.distDir??$}catch{}const I=($??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),j=I&&".next"!==I?I:"out";let _,N="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(ie,"package.json"),"utf-8"));N="string"==typeof o.version?o.version:N,_="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const C=new Q(ae??A(ie),{root:ie,backupFolder:e.resolve(ie,le.syncBackupsDir),maxBackups:le.syncMaxBackups,nextBuild:{projectRoot:ie,distDir:j,packageVersion:N,packageRepositoryUrl:_}}),R={ws:p.ws,config:{clientInjectionPlugin:{v7Features:pe}}};new ee(R,{distService:C,miAPI:je}),te(V,{distService:C,miAPI:je}),oe(V,{miAPI:je}),ne({persist:le.persistUsers,miAPI:je,projectRoot:ie,miUrl:ce});const z="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{p?.handleUpgrade(e,t,o)||(z?z(e,t,o):t.destroy())}),v.info(a.blue(`🔧 ${_e.length} pp-dev middlewares initialized`)),v.info(a.blue(`🔧 ${Ae.length} essential middlewares for internal routes`)),v.info(a.blue(`🔧 MiAPI initialized for backend: ${ce}`)),v.info(a.blue(`🔧 Custom App ID: ${Pe}`))}l.listen(Fe,$e,()=>{v.info(a.green(`✅ pp-dev Next.js server running at http://${$e}:${Fe}`)),v.info(a.blue(`📱 Next.js app accessible at http://${$e}:${Fe}${ke}`)),!1!==be&&v.info(a.cyan(`🔍 Request Inspector: http://${$e}:${Fe}${O}`)),v.info(a.blue("🔧 Base path handling active")),f||(f=Se(ie,E,v.info),v.info(a.blue("🔧 Config file watcher started"))),l.on("connection",e=>{w.add(e),e.on("close",()=>w.delete(e))})}),u=!1}catch(e){u=!1,v.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(v.error(a.red("❌ Next.js Peer Dependency Error:")),v.error(a.red(e.message)),v.error(a.yellow("\n💡 To fix this issue:")),v.error(a.blue(" 1. Install Next.js in your project:")),v.error(a.white(" npm install next@^16")),v.error(a.blue(" 2. Or use yarn:")),v.error(a.white(" yarn add next@^16")),v.error(a.blue(" 3. Or use pnpm:")),v.error(a.white(" pnpm add next@^16")),v.error(a.yellow("\n📖 For more information, see:")),v.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}};ye({logger:v,knownRejections:[Pe],shutdown:async()=>{f&&(ke(f),f=null),p&&(await p.close(),p=null),await k(),await S()}}),await E()}),xe.command("build [root]","build for production").option("--target <target>","[string] transpile target (default: 'modules')").option("--outDir <dir>","[string] output directory (default: dist)").option("--assetsDir <dir>","[string] directory under outDir to place assets in (default: assets)").option("--assetsInlineLimit <number>","[number] static asset base64 inline threshold in bytes (default: 4096)").option("--ssr [entry]","[string] build specified entry for server-side rendering").option("--sourcemap [output]",'[boolean | "inline" | "hidden"] output source maps for build (default: false)').option("--minify [minifier]",'[boolean | "terser" | "esbuild"] enable/disable minification, or specify minifier to use (default: esbuild)').option("--manifest [name]","[boolean | string] emit build manifest json").option("--ssrManifest [name]","[boolean | string] emit ssr manifest json").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle (experimental)").option("--emptyOutDir","[boolean] force empty outDir when it's outside of root").option("-w, --watch","[boolean] rebuilds when modules have changed on disk").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(t,o)=>{$e(o);const n=Ie(o),i=v(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");y(s,r);const a=await E({mode:s,command:"build"},o.config,t,o.logLevel);let l=await P(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=D(l,t)}const c=D(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await F(c),n.changelog){const i=t||process.cwd(),s=c.build?.outDir||"dist";let r="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?r=s:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(r=c.ppDevConfig.distZip.outDir)),await Le({changelog:n.changelog,executionRoot:i,newAssetsPath:e.resolve(i,s),backupsDirPath:e.resolve(i,c.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:e.resolve(i,r),logLevel:o.logLevel})}}catch(e){r(o.logLevel).error(a.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(o.logLevel).info(e))}}),xe.command("next-build [root]","build a Next.js app for production (`next build`) and emit VERSION/BUILD-MANIFEST/zip in the same format as `pp-dev build`").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(o,n)=>{$e(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=v(n);process.env[c]="1";try{y(n.mode||"production",s);const{constants:o}=await x(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,u=await c(o.PHASE_PRODUCTION_BUILD,s);let g,h=u?.ppDev||{};if(0===Object.keys(h).length){const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);h=await e(s)}try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);g=e(s).name}catch{g=e.basename(s)}const m=d(h,g),b=S(m.distZip,l,p(g)),w=k(m.versionPlugin,l),v=C(s,u);v&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,v)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await M(s);const P="string"==typeof u?.distDir&&u.distDir?u.distDir:".next",T=".next"===P?"out":P,L=e.resolve(s,T);if(!t.existsSync(L)||!t.statSync(L).isDirectory())throw new Error(`Next.js build output directory not found: ${L}. "next-build" requires "output: 'export'" in next.config (static export).`);const E=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==w&&!1!==w.enabled&&(pe({outDir:L,packageVersion:"string"==typeof E.version?E.version:"0.0.0",versionFileTemplate:w.versionFileTemplate,packageRepositoryUrl:"string"==typeof E.repository?E.repository:E.repository?.url,enabled:w.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,L)}`))),!1!==b){const o=e.resolve(s,b.outDir),n=b.inDir?e.resolve(L,b.inDir):L,r=f(o,b.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await R(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==b?b.outDir:T;await Le({changelog:n.changelog,executionRoot:s,newAssetsPath:L,backupsDirPath:e.resolve(s,m.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(n.logLevel).info(e))}}),xe.command("changelog [oldAssetPath] [newAssetPath]","generate changelog between two assets files/folders").option("--oldAssetsPath <oldAssetsPath>","[string] path to the old assets zip file or folder").option("--newAssetsPath <newAssetsPath>","[string] path to the new assets zip file or folder").option("--destination <destination>","[string] destination folder for the changelog (default: .)").option("--filename <filename>","[string] filename for the changelog (default: CHANGELOG.html)").action(async(t,o,n)=>{$e(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:l=".",filename:c="CHANGELOG.html",logLevel:d}=n,p=process.cwd();i&&s||(r(d).error(a.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const f=e.resolve(p,i),u=e.resolve(p,s),g=e.resolve(p,l),h=new me({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),xe.command("generate-icon-font [source] [destination]","generate icon font from SVG files").option("--source <source>","[string] path to the source directory with SVG files").option("--destination <destination>","[string] path to the destination directory to save the generated font files").option("--font-name, -n <fontName>","[string] name of the font to generate (default: 'icon-font')").action(async(t,o,n)=>{$e(n);const{source:i=t,destination:s=o,fontName:l="icon-font"}=n,c=process.cwd(),d=e.resolve(c,i),p=e.resolve(c,s),f=new be({sourceDir:d,outputDir:p,fontName:l}),u=r(n.logLevel);u.info(`Generating icon font from SVG files in ${a.dim(d)}`),await f.generate(),u.info(`Icon font generated and saved to ${a.dim(p)}`)}),xe.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{$e(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}const a=await $(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await I(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),xe.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action(async(t,o)=>{$e(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}(await j(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(o.logLevel).info(e))}}),xe.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-BLw2zDKz.js")),h=n.format??"ts",m=!1!==n.backup,b=process.cwd(),w=u(b,o);w||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=w;i.info(a.blue(`Found config: ${e.relative(b,v)}`));const{getPkg:x}=await import("./index-lwWNBUTa.js").then(e=>e.h),S=x();let k,T={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:b,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(b,s)).toString()));T=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(b,v)).toString()));T=o.default?.default??o.default??o}else P?T=g(v):v.endsWith(".json")&&(T=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}T&&"object"==typeof T||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(T)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(T)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),k=p(T)):s(T)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),k=d(T,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const L=f(k,h),E=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(b,E)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(b,o)}`))}t.writeFileSync(E,L,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(b,E)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==E&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),xe.help(),xe.version(u),xe.parse();export{Fe as stopProfiler};
|
|
1
|
+
import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,P as l,b as c,n as d,d as p,r as f,V as u,v as g,e as h,f as m,g as w,h as b}from"./auth.provider-CaBF6-T3.js";import{r as v,l as y,g as P,s as x,a as S,b as k,c as T,i as L}from"./index-DewOudJ0.js";import{loadConfigFromFile as E,mergeConfig as $,build as F,resolveConfig as D,optimizeDeps as j,preview as I}from"vite";import{parse as N}from"url";import{e as _,c as C,r as A,a as M,z as R,I as O,R as z,b as H,i as V,d as U,V as W,f as Z,M as B,g as G,h as q,j as J,k as K,l as Y,u as X,D as Q,C as ee,m as te,n as oe,s as ne}from"./variables-editor-CWbcJAdI.js";import*as ie from"dir-compare";import se from"diff-match-patch";import{isBinaryFile as re}from"isbinaryfile";import*as ae from"os";import*as le from"crypto";import{WebSocketServer as ce,WebSocket as de}from"ws";import{w as pe}from"./version-manifest-C1RlO_jm.js";import"picocolors";import"node:path";import"child_process";import"node:module";import"./helpers.js";import"ejs";import"zlib";import"axios";import"node:http";import"node:https";import"http-proxy-middleware";import"node:string_decoder";import"node:crypto";import"node:fs";import"node:os";import"express";import"process";import"jszip";import"module";function fe(e){return null!=e&&!1!==e}let ue=null;const ge=new WeakMap;function he(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;ge.set(e,t);const o=r();t.print&&o.info(a.dim(a.green(" ➜"))+a.dim(" press ")+a.bold("h")+a.dim(" to show help"));const n=(t.customShortcuts??[]).filter(fe).concat(me);ue?.(),ue=null;let i=!1;const s=process.stdin.isPaused(),l=process.stdin,c=Boolean(l.isRaw),d=async t=>{if(""===t)return void function(e=process){"win32"===e.platform?e.emit("SIGINT","SIGINT"):e.kill(e.pid,"SIGINT")}();if(""===t)return void await e.close().finally(()=>process.exit(0));if(i)return;"h"===t&&o.info(["",a.bold(" Shortcuts"),...n.map(e=>a.dim(" press ")+a.bold(e.key)+a.dim(` to ${e.description}`))].join("\n"));const s=n.find(e=>e.key===t);s&&(i=!0,await s.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",d).setEncoding("utf8").resume();const p=e.httpServer,f=()=>{ue===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),ue=null)};ue=f,p.on("close",f)}const me=[{key:"r",description:"restart the server",async action(e){const t=ge.get(e);await e.restart(),t&&he(e,{...t,print:!1})}},{key:"u",description:"show server url",action(e){e.config.logger.info(""),e.printUrls()}},{key:"o",description:"open in browser",action(e){e.openBrowser()}},{key:"c",description:"clear console",action(e){e.config.logger.clearScreen("error")}},{key:"q",description:"quit",async action(e){await e.close().finally(()=>process.exit())}},{key:"C",description:"clear proxy cache",action(e){e.cache&&(e.cache.clear(),e.config.logger.info("Proxy cache cleared"))}}];const we=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class be{oldAssetsPath;newAssetsPath;destinationPath;changelogFilename;changelogTemplate='<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8" />\n <title>Changelog Diff</title>\n <style>\n tr,\n td {\n padding: 0;\n }\n .diff-file {\n margin-top: 20px;\n border: 1px solid #e1e4e8;\n border-radius: 6px;\n }\n .diff-file-title {\n padding: 10px 20px;\n background-color: #f6f8fa;\n border-bottom: 1px solid #e1e4e8;\n border-radius: 6px 6px 0 0;\n font-weight: bold;\n }\n .diff-file-title .renamed {\n font-weight: normal;\n }\n .diff-file-title .renamed .from {\n color: #cb2431;\n }\n .diff-file-title .renamed .to {\n color: #22863a;\n }\n .diff-file-title .added {\n color: #22863a;\n }\n .diff-file-title .deleted {\n color: #cb2431;\n }\n .diff-file-content {\n }\n .diff-table {\n tab-size: 8;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n }\n .blob-num {\n position: relative;\n color: #1f2328;\n width: 1%;\n min-width: 50px;\n padding: 0 10px;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n line-height: 20px;\n text-align: right;\n white-space: nowrap;\n vertical-align: top;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n }\n .blob-num.addition {\n background-color: #ccffd8;\n border-color: #1f883e;\n }\n .blob-num.deletion {\n background-color: #ffd7d5;\n border-color: #cf222e;\n }\n .blob-num::before {\n content: attr(data-line-number);\n }\n .blob-code {\n position: relative;\n padding: 0 10px 0 22px;\n vertical-align: top;\n color: #1f2329;\n }\n .blob-code.code-addition {\n background-color: #e6ffec;\n }\n .blob-code.code-deletion {\n background-color: #ffebe9;\n }\n .blob-code.skip,\n .blob-code.message {\n text-align: center;\n }\n .blob-code.skip .blob-code-inner,\n .blob-code.message .blob-code-inner {\n font-weight: bold;\n color: #6a737d;\n padding: 10px 0;\n }\n .blob-code-inner {\n display: table-cell;\n overflow: visible;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n word-wrap: anywhere;\n white-space: pre-wrap;\n }\n .blob-code-inner::before {\n content: attr(data-code-prefix);\n position: absolute;\n top: 1px;\n left: 8px;\n padding-right: 8px;\n }\n </style>\n </head>\n <body>\n <h1>Changelog Diff</h1>\n\n %FILES%\n </body>\n </html>';diffFileTemplateHandler;diffLineTemplateHandler;contextLines=3;logger;constructor(t){const{oldAssetsPath:o,newAssetsPath:n,destinationPath:i,changelogTemplate:s,diffFileTemplateHandler:l,diffLineTemplateHandler:c,changelogFilename:d,contextLines:p}=t;if(this.logger=r(),!o||!n||!i)throw new Error("Previous assets path, current assets path and destination path are required");if(o===n)throw new Error("Previous and current assets paths must be different");if(!this.isExists(o))throw new Error(`Previous assets path ${o} does not exist`);if(!this.isExists(n))throw new Error(`Current assets path ${n} does not exist`);if(this.isZipFile(o)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(o).digest("hex"));this.oldAssetsPath=this.unzipFile(o,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);return e})}else{if(!this.isFolder(o))throw new Error(`Invalid previous assets path ${o}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(o);if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);this.oldAssetsPath=Promise.resolve(e)}}if(this.isZipFile(n)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await _(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await ie.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(we.test(e)&&(e=e.replace(we,"$1$3")),we.test(t)&&(t=t.replace(we,"$1$3")),0===e.localeCompare(t)?0:e.localeCompare(t)>0?1:-1)});return e.diffSet?.filter(e=>"equal"!==e.state||e.name1!==e.name2)||[]}async generateAssetFilesDiff(e,t){const o=new se,n=o.diff_linesToChars_(e,t),i=o.diff_main(n.chars1,n.chars2,!1);o.diff_charsToLines_(i,n.lineArray);let s=0;return i.map(e=>{const[t,o]=e,n=o.endsWith("\n")?o.split("\n").length-1:o.split("\n").length,i=o.split("\n").map((e,o)=>({lineContent:e,lineNumber:s+o+1,lineType:t})).slice(0,n);return-1!==t&&(s+=n),i}).flat()}async generateFilesDiff(o){if("equal"===o.state){const t=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),n=this.pathToPosix(e.join(".",o.relativePath,o.name2??""));return this.diffFileTemplate(`<span class="renamed"\n >Renamed <span class="from">${t}</span> -> <span class="to">${n}</span></span\n >`,this.diffTableTemplate(this.diffLineMessageTemplate("No changes")))}const n=o.path1&&o.name1?e.join(o.path1,o.name1):null,i=o.path2&&o.name2?e.join(o.path2,o.name2):null,s=this.pathToPosix(e.join(".",o.relativePath,(o.name1||o.name2)??""));if("left"===o.state&&n)return this.diffFileTemplate(`<span class="removed">Removed ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File removed")));if("right"===o.state&&i)return this.diffFileTemplate(`<span class="added">Added ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File added")));if("distinct"===o.state&&n&&i){const r=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),a=this.pathToPosix(e.join(".",o.relativePath,o.name2??"")),l=o.name1!==o.name2?`<span class="renamed"\n >Renamed <span class="from">${r}</span> -> <span class="to">${a}</span></span\n >`:s;return this.diffFileTemplate(l,await re(n)||await re(i)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(t.readFileSync(n,"utf-8"),t.readFileSync(i,"utf-8"))))}return""}async generateChangelog(){this.logger.info(a.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(a.green("Writing changelog file"));const i=this.changelogTemplate.split("%FILES%");i.splice(1,0,n);const s=i.join("");t.writeFileSync(e.join(this.destinationPath,this.changelogFilename),s),this.logger.info(a.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class ve{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){const{default:e}=await(import("svgtofont"));await e({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class ye{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new ce({noServer:!0}),this.wss.on("connection",e=>this.onConnection(e)),this.wss.on("error",e=>this.fireLifecycle("error",e)),this.ws={on:(e,t)=>{"close"!==e&&"error"!==e?this.getEventSet(e).add(t):this.getLifecycleSet(e).add(t)},off:(e,t)=>{this.eventListeners.get(e)?.delete(t),"close"!==e&&"error"!==e||this.lifecycleListeners.get(e)?.delete(t)},send:(e,t)=>{if("string"==typeof e)for(const o of this.clients.keys())this.sendToSocket(o,e,t);else{const t=JSON.stringify(e);for(const e of this.clients.keys())e.readyState===de.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){if((e.url??"").split("?")[0]!==l)return!1;return C(e)?(t.once("error",()=>t.destroy()),t.end("HTTP/1.1 403 Forbidden\r\nConnection: close\r\nContent-Length: 0\r\n\r\n",()=>t.destroy()),!0):(this.wss.handleUpgrade(e,t,o,t=>{this.wss.emit("connection",t,e)}),!0)}async close(){this.fireLifecycle("close");for(const e of this.clients.keys())e.terminate();this.clients.clear(),await new Promise(e=>this.wss.close(()=>e()))}onConnection(e){const t={send:(t,o)=>this.sendToSocket(e,t,o)};this.clients.set(e,t),e.on("message",e=>this.onMessage(t,e)),e.on("close",()=>this.clients.delete(e)),e.on("error",()=>{})}onMessage(e,t){let o;try{o=JSON.parse(t.toString())}catch{return}if(!o||"custom"!==o.type||"string"!=typeof o.event)return;const n=this.eventListeners.get(o.event);if(n)for(const t of n)try{t(o.data,e)}catch(e){r().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===de.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}function Pe(e){return e instanceof Error?e.stack??e.message:String(e)}function xe({logger:e,knownRejections:t=[],shutdown:o,shutdownTimeoutMs:n=5e3,processRef:i=process}){let s=!1,r=0;const l=async(t,l)=>{if((e=>{r=Math.max(r,e)})(l),s)return void("SIGINT"!==t&&"SIGTERM"!==t||(e.warn(a.yellow(`\n⚠️ Received ${t} again, exiting without waiting for the shutdown`)),i.exit(r)));s=!0,e.info(a.yellow(`\n🛑 Received ${t}, shutting down gracefully...`));const c=setTimeout(()=>{e.error(a.red(`⏰ Shutdown did not finish within ${n} ms, forcing exit`)),i.exit(1)},n);try{await o(),clearTimeout(c),e.info(a.green("✅ Graceful shutdown completed")),i.exit(r)}catch(t){clearTimeout(c),e.error(a.red(`❌ Error during graceful shutdown: ${Pe(t)}`)),i.exit(1)}},c=()=>{l("SIGINT",0)},d=()=>{l("SIGTERM",0)},p=t=>{e.error(a.red(`❌ Uncaught exception: ${Pe(t)}`)),l("uncaughtException",1)},f=o=>{const n=t.find(e=>e.matches(o));n?e.info(a.dim(n.message)):e.error(a.red(`❌ Unhandled promise rejection (the server keeps running): ${Pe(o)}`))};return i.on("SIGINT",c),i.on("SIGTERM",d),i.on("uncaughtException",p),i.on("unhandledRejection",f),()=>{i.off("SIGINT",c),i.off("SIGTERM",d),i.off("uncaughtException",p),i.off("unhandledRejection",f)}}const Se={matches:e=>e instanceof Error&&"Worker creator already registered"===e.message,message:"Next.js kept its Turbopack worker pool from before the restart ('Worker creator already registered')"};const ke=["--","c","config","base","l","logLevel","clearScreen","configLoader","profile","d","debug","f","filter","m","mode","force","w","changelog","distZip","distZipDir","distZipFilename","versionManifest","versionFileTemplate","webpack","turbopack"];function Te(e){const t={...e};for(const e of ke)delete t[e];return"sourcemap"in t&&(t.sourcemap="true"===t.sourcemap||"false"!==t.sourcemap&&t.sourcemap),"watch"in t&&(t.watch=t.watch?{}:void 0),t}const Le=["https","open","cors","strictPort","force"];const Ee=s("pp-dev");function $e(t,o,n){const s=[...b,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r}}function Fe(e){e.watcher&&e.watcher.close()}function De(e){if(!e||"object"!=typeof e||!("message"in e))return!1;const t=String(e.message);return/Turbopack is not supported/i.test(t)||/native bindings are not available/i.test(t)||/Only WebAssembly \(WASM\) bindings were loaded/i.test(t)}async function je(o){const{changelog:n,executionRoot:i,newAssetsPath:s,backupsDirPath:l,changelogDestinationPath:c,logLevel:d}=o;let p;if("string"==typeof n)p=e.resolve(i,n);else{if(!t.existsSync(l))return void r(d).warn(a.yellow("backups directory not found, skipping changelog generation"));const o=t.readdirSync(l,{withFileTypes:!0});if(!o.length)return void r(d).warn(a.yellow("no backups found, skipping changelog generation"));const n=o.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!n.length)return void r(d).warn(a.yellow("no ZIP backups found, skipping changelog generation"));const i=n.reduce((o,n)=>t.statSync(e.resolve(l,o.name)).mtimeMs>t.statSync(e.resolve(l,n.name)).mtimeMs?o:n).name;p=e.resolve(l,i)}const f=new be({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Ie=global.__pp_dev_profile_session,Ne=0;const _e=o=>{if(Ie)return new Promise((n,i)=>{Ie.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${Ne++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Ie=void 0,n()}})})},Ce=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};Ee.option("-c, --config <file>","[string] use specified config file").option("--base <path>","[string] public base path (default: /)").option("-l, --logLevel <level>","[string] info | warn | error | silent").option("--clearScreen","[boolean] allow/disable clear screen when logging").option("-d, --debug [feat]","[string | boolean] show debug logs").option("-f, --filter <filter>","[string] filter debug logs").option("-m, --mode <mode>","[string] set env mode"),Ee.command("[root]","start dev server").alias("serve").alias("dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Ce(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:r,getConfig:f}=await import("./index-DewOudJ0.js").then(e=>e.h);r();const{createServer:g}=await(import("vite")),h=o.mode||"development",m=e.resolve(process.cwd(),t??".");y(h,m);const w=await E({mode:h,command:"serve"},o.config,t,o.logLevel);let b=await P(void 0,{mode:h,root:m});if(w){const{plugins:e,...t}=w.config;b=$(b,t)}if(i=await g($(b,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:Te(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const v=global.__pp_dev_start_time??!1,x=v?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-v)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${u}`)} ${x}\n`),i.printUrls();const S=await f(m);if(!1!==S.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+O)}\n`)}he(i,{print:!0,customShortcuts:[...Ie?[{key:"p",description:"start/stop the profiler",async action(e){if(Ie)await _e(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Ie=new e.Session,Ie.connect(),Ie.post("Profiler.enable",()=>{Ie?.post("Profiler.start",()=>{d.info("Profiler started"),t()})})})}}}]:[],{key:"l",description:"proxy re-login",action(e){e.ws.send({type:"custom",event:"redirect",data:{url:`/auth/index/logout?proxyRedirect=${encodeURIComponent("/")}`}})}}]}),s||(s=$e(c,p,d.info),d.info(a.blue("🔧 Config file watcher started"))),l=!1}catch(e){l=!1,d.error(a.red(`error when starting dev server:\n${e.stack}`),{error:e}),_e(d.info),process.exit(1)}}};xe({logger:d,shutdown:async()=>{s&&(Fe(s),s=null),i&&(await i.close(),i=null),_e(d.info)}}),await p()}),Ee.command("next [root]","start Next.js development server with pp-dev integration").alias("next-serve").alias("next-dev").option("--host [host]","[string] specify hostname; without a value, listen on all addresses").option("--port <port>","[number] specify port",{default:3e3}).option("--https","[boolean] no effect with pp-dev next (deprecated)").option("--open [path]","[boolean | string] no effect with pp-dev next (deprecated)").option("--cors","[boolean] no effect with pp-dev next (deprecated)").option("--strictPort","[boolean] no effect with pp-dev next (deprecated)").option("--force","[boolean] no effect with pp-dev next (deprecated)").option("--webpack","[boolean] use Webpack for Next dev (use when Turbopack/native SWC is unavailable)").option("--turbopack","[boolean] use Turbopack for Next dev when native bindings work").action(async(n,i)=>{Ce(i);const s=Le.filter(e=>void 0!==i[e]);s.length>0&&r(i.logLevel).warn(a.yellow(`⚠️ ${s.map(e=>`--${e}`).join(", ")} ${1===s.length?"has":"have"} no effect with pp-dev next and will be removed.`));const{host:l,port:p}=function(e,t){let o="localhost";!0===e||""===e?o="0.0.0.0":"string"==typeof e?o=e:"number"==typeof e&&(o=String(e));const n="number"==typeof t?t:"string"==typeof t?Number.parseInt(t,10):NaN;return{host:o,port:Number.isInteger(n)&&n>=0?n:3e3}}(i.host,i.port);let f=null,u=null,b=null,v=null,P=!1;const S=new Set,k=r(i.logLevel),E=function(e=["uncaughtException"],t=process){const o=e=>t.listeners(e);let n=null,i=null;return{beforeCreate(){n=new Map(e.map(e=>[e,new Set(o(e))]))},afterCreate(){if(!n)return 0;const s=n,r=new Map(e.map(e=>[e,o(e).filter(t=>!s.get(e).has(t))]));let a=0;if(i)for(const[e,o]of i){const n=new Set(r.get(e).map(e=>e.toString()));for(const i of o)n.has(i.toString())&&(t.off(e,i),a+=1)}return i=r,n=null,a}}}(),$=async()=>{f&&"function"==typeof f.close&&await f.close(),f=null},F=async()=>{const e=u;if(e){for(const e of S)e.destroy();S.clear(),await new Promise(t=>{e.close(()=>t())}),u===e&&(u=null)}},D=async()=>{if(!P){P=!0;try{const{next:r,constants:j}=await x(),{PHASE_DEVELOPMENT_SERVER:I}=j;b&&(await b.close(),b=null),u&&(k.info(a.yellow("🛑 Stopping existing Next.js server...")),await F()),await $();const{clearConfigCache:_}=await import("./index-DewOudJ0.js").then(e=>e.h);_();const{join:C}=await(import("path")),{createServer:A}=await(import("http")),M=await(import("next/dist/server/config.js")),R=M.default.default||M["module.exports"].default||M.default,ie=n?C(process.cwd(),n):process.cwd();y(i.mode||"development",ie);const se=await R(I,ie);let re=se?.ppDev||{};if(0===Object.keys(re).length)try{const{getConfig:e}=await import("./index-DewOudJ0.js").then(e=>e.h),t=await e(ie);Object.keys(t).length>0?(re=t,k.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):k.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){k.warn(a.yellow(`⚠️ Failed to load standalone pp-dev config, using defaults: ${e instanceof Error?e.message:String(e)}`))}else k.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));const{getPkg:ae}=await import("./index-DewOudJ0.js").then(e=>e.h),le=ae(ie).name;g(re,le);const ce=d(re,le),{templateName:de}=ce,pe=ce.backendBaseURL,fe=ce.templateLess,ue=ce.v7Features,ge=ce.disableSSLValidation,he=ce.enableProxyCache,me=ce.proxyCacheTTL,we=ce.personalAccessToken,be=ce.miHudLess,ve=ce.inspectorEnabled,Pe=ce.inspectorMaxMemory,xe=ce.inspectorCaptureLimit,Se=ce.appId,ke=se?.basePath;let Te="";ke?Te=ke:(Te=fe?h:ue?m:w,Te+=`/${de}`);const Le=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Ee=async e=>{delete process.env.TURBOPACK,await $();const t={dev:!0,customServer:!0,hostname:l,port:p,dir:ie,conf:{...se,basePath:Te,assetPrefix:Te}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),E.beforeCreate(),f=r(t),await f.prepare(),E.afterCreate()};if(Le.webpack)await Ee({webpack:!0});else if(Le.turbopack)try{await Ee({turbopack:!0})}catch(e){if(!De(e))throw e;k.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Ee({webpack:!0})}else try{await Ee({})}catch(e){if(!De(e))throw e;k.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Ee({webpack:!0})}if(!f)throw new Error("Next.js app failed to initialize");if(Te.endsWith("/")||(Te+="/"),"/"===Te)throw new Error('basePath cannot be equal to "/" or equal to empty string');k.info(a.green("✅ Next.js app prepared successfully")),k.info(a.blue(`🔧 pp-dev plugin configured for template: ${de}`)),k.info(a.blue(`🔧 Base path configured: ${Te}`)),pe&&(k.info(a.blue(`🌐 Backend URL: ${pe}`)),k.info(a.blue(`🆔 Custom App ID: ${Se}`)));const Fe=f.getRequestHandler(),je=p,Ie=l;u=A(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=N(o,!0);if(_e.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(Ce.length>0){let l=0;const c=()=>{if(l>=Ce.length)return void s();const o=Ce[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=_e.length)return void s();const o=_e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(Te))i=N(o,!0);else{if(n===Te.replace(/\/$/,"")){const e=o.replace(n,Te);return t.writeHead(302,{Location:e}),void t.end()}if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:Te}),void t.end()}await Fe(e,t,i)}s()}catch(d){k.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let Ne=null,_e=[],Ce=[];if(!1!==ve){const e=new z(Pe);H(V,e,xe);const t=U(e,xe);_e.push(t)}const Ae=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(O)||e.url?.startsWith(W)){return void V(e,t,()=>{})}o()};if(pe||!1===ve||(Ce.push(Ae),_e.push(Ae)),pe){const n=new URL(pe).host,i=Z();Ce.unshift(i),_e.unshift(i),pe.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const r={headers:{host:n,referer:pe,origin:pe.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:Se,templateLess:fe,disableSSLValidation:ge,v7Features:ue,personalAccessToken:we??process.env.MI_ACCESS_TOKEN};Ne=new B(pe,r);const l=G(Te,de),d=(e,t,o)=>{l(e,t,o)};Ce.push(d),_e.push(d);const p=T(Te);if(Ce.push(p),_e.push(p),he){let e=+me;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=q({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};_e.push(n),k.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const g=new RegExp(`^((${s=Te,s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),h=J(g,Ne,Object.assign({base:Te},r,{miHudLess:be})),m=(e,t,o)=>{h(e,t,o)};_e.push(m);const w=Te.endsWith("/")?Te.substring(0,Te.length-1):Te,v={middlewares:{use:e=>e},config:{logger:console}},y=K({devServer:v,baseURL:pe,proxyIgnore:["/@vite","/@metricinsights","/@",w,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:ge,miAPI:Ne,templateName:de}),P=(e,t,o)=>{y(e,t,o)};_e.push(P),Ce.push(Ae),_e.push(Ae);const x=Y(e=>{const t=e.split("?")[0];return t.startsWith(Te)&&!t.includes("/_next/")},(e,t)=>{const o=Ne.buildPage(e,be),i=L(o,Te,{backendBaseURL:pe,templateLess:fe,appId:Se,devPanelPosition:ce.devPanelPosition,devPanelHidden:ce.devPanelHidden,devPanelAutoHide:ce.devPanelAutoHide});return Buffer.from(X(n,t.headers.host??"",i))}),S=(e,t,o)=>{x(e,t,o)};_e.push(S),b=new ye;let E=se?.distDir;const $=process.env[c];process.env[c]="1";try{const e=await R(j.PHASE_PRODUCTION_BUILD,ie);E=e?.distDir??E}catch{}finally{void 0===$?delete process.env[c]:process.env[c]=$}const F=(E??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),D=F&&".next"!==F?F:"out";let I,N="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(ie,"package.json"),"utf-8"));N="string"==typeof o.version?o.version:N,I="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const _=new Q(de,{root:ie,backupFolder:e.resolve(ie,ce.syncBackupsDir),maxBackups:ce.syncMaxBackups,nextBuild:{projectRoot:ie,distDir:D,packageVersion:N,packageRepositoryUrl:I}}),C={ws:b.ws,config:{clientInjectionPlugin:{v7Features:ue}}};new ee(C,{distService:_,miAPI:Ne}),te(V,{distService:_,miAPI:Ne}),oe(V,{miAPI:Ne}),ne({persist:ce.persistUsers,miAPI:Ne,projectRoot:ie,miUrl:pe});const A="function"==typeof f?.getUpgradeHandler?f.getUpgradeHandler():null;u.on("upgrade",(e,t,o)=>{b?.handleUpgrade(e,t,o)||(A?A(e,t,o):t.destroy())}),k.info(a.blue(`🔧 ${_e.length} pp-dev middlewares initialized`)),k.info(a.blue(`🔧 ${Ce.length} essential middlewares for internal routes`)),k.info(a.blue(`🔧 MiAPI initialized for backend: ${pe}`)),k.info(a.blue(`🔧 Custom App ID: ${Se}`))}u.listen(je,Ie,()=>{k.info(a.green(`✅ pp-dev Next.js server running at http://${Ie}:${je}`)),k.info(a.blue(`📱 Next.js app accessible at http://${Ie}:${je}${Te}`)),!1!==ve&&k.info(a.cyan(`🔍 Request Inspector: http://${Ie}:${je}${O}`)),k.info(a.blue("🔧 Base path handling active")),v||(v=$e(ie,D,k.info),k.info(a.blue("🔧 Config file watcher started"))),u.on("connection",e=>{S.add(e),e.on("close",()=>S.delete(e))})}),P=!1}catch(e){P=!1,k.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(k.error(a.red("❌ Next.js Peer Dependency Error:")),k.error(a.red(e.message)),k.error(a.yellow("\n💡 To fix this issue:")),k.error(a.blue(" 1. Install Next.js in your project:")),k.error(a.white(" npm install next@^16")),k.error(a.blue(" 2. Or use yarn:")),k.error(a.white(" yarn add next@^16")),k.error(a.blue(" 3. Or use pnpm:")),k.error(a.white(" pnpm add next@^16")),k.error(a.yellow("\n📖 For more information, see:")),k.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var s}};xe({logger:k,knownRejections:[Se],shutdown:async()=>{v&&(Fe(v),v=null),b&&(await b.close(),b=null),await F(),await $()}}),await D()}),Ee.command("build [root]","build for production").option("--target <target>","[string] transpile target (default: 'modules')").option("--outDir <dir>","[string] output directory (default: dist)").option("--assetsDir <dir>","[string] directory under outDir to place assets in (default: assets)").option("--assetsInlineLimit <number>","[number] static asset base64 inline threshold in bytes (default: 4096)").option("--ssr [entry]","[string] build specified entry for server-side rendering").option("--sourcemap [output]",'[boolean | "inline" | "hidden"] output source maps for build (default: false)').option("--minify [minifier]",'[boolean | "terser" | "esbuild"] enable/disable minification, or specify minifier to use (default: esbuild)').option("--manifest [name]","[boolean | string] emit build manifest json").option("--ssrManifest [name]","[boolean | string] emit ssr manifest json").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle (experimental)").option("--emptyOutDir","[boolean] force empty outDir when it's outside of root").option("-w, --watch","[boolean] rebuilds when modules have changed on disk").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(t,o)=>{Ce(o);const n=Te(o),i=v(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");y(s,r);const a=await E({mode:s,command:"build"},o.config,t,o.logLevel);let l=await P(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=$(l,t)}const c=$(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await F(c),o.changelog){const n=t||process.cwd(),i=c.build?.outDir||"dist";let s="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?s=i:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(s=c.ppDevConfig.distZip.outDir)),await je({changelog:o.changelog,executionRoot:n,newAssetsPath:e.resolve(n,i),backupsDirPath:e.resolve(n,c.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:e.resolve(n,s),logLevel:o.logLevel})}}catch(e){r(o.logLevel).error(a.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{_e(e=>r(o.logLevel).info(e))}}),Ee.command("next-build [root]","build a Next.js app for production (`next build`) and emit VERSION/BUILD-MANIFEST/zip in the same format as `pp-dev build`").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(o,n)=>{Ce(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=v(n);process.env[c]="1";try{y(n.mode||"production",s);const{constants:o}=await x(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,u=await c(o.PHASE_PRODUCTION_BUILD,s);let g=u?.ppDev||{};if(0===Object.keys(g).length){const{getConfig:e}=await import("./index-DewOudJ0.js").then(e=>e.h);g=await e(s)}const{getPkg:h}=await import("./index-DewOudJ0.js").then(e=>e.h),m=d(g,h(s).name),w=S(m.distZip,l,p(m.templateName)),b=k(m.versionPlugin,l),v=A(s,u);v&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,v)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await M(s);const P="string"==typeof u?.distDir&&u.distDir?u.distDir:".next",T=".next"===P?"out":P,L=e.resolve(s,T);if(!t.existsSync(L)||!t.statSync(L).isDirectory())throw new Error(`Next.js build output directory not found: ${L}. "next-build" requires "output: 'export'" in next.config (static export).`);const E=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==b&&!1!==b.enabled&&(pe({outDir:L,packageVersion:"string"==typeof E.version?E.version:"0.0.0",versionFileTemplate:b.versionFileTemplate,packageRepositoryUrl:"string"==typeof E.repository?E.repository:E.repository?.url,enabled:b.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,L)}`))),!1!==w){const o=e.resolve(s,w.outDir),n=w.inDir?e.resolve(L,w.inDir):L,r=f(o,w.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await R(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==w?w.outDir:T;await je({changelog:n.changelog,executionRoot:s,newAssetsPath:L,backupsDirPath:e.resolve(s,m.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{_e(e=>r(n.logLevel).info(e))}}),Ee.command("changelog [oldAssetPath] [newAssetPath]","generate changelog between two assets files/folders").option("--oldAssetsPath <oldAssetsPath>","[string] path to the old assets zip file or folder").option("--newAssetsPath <newAssetsPath>","[string] path to the new assets zip file or folder").option("--destination <destination>","[string] destination folder for the changelog (default: .)").option("--filename <filename>","[string] filename for the changelog (default: CHANGELOG.html)").action(async(t,o,n)=>{Ce(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:l=".",filename:c="CHANGELOG.html",logLevel:d}=n,p=process.cwd();i&&s||(r(d).error(a.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const f=e.resolve(p,i),u=e.resolve(p,s),g=e.resolve(p,l),h=new be({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),Ee.command("generate-icon-font [source] [destination]","generate icon font from SVG files").option("--source <source>","[string] path to the source directory with SVG files").option("--destination <destination>","[string] path to the destination directory to save the generated font files").option("--font-name, -n <fontName>","[string] name of the font to generate (default: 'icon-font')").action(async(t,o,n)=>{Ce(n);const{source:i=t,destination:s=o,fontName:l="icon-font"}=n,c=process.cwd(),d=e.resolve(c,i),p=e.resolve(c,s),f=new ve({sourceDir:d,outputDir:p,fontName:l}),u=r(n.logLevel);u.info(`Generating icon font from SVG files in ${a.dim(d)}`),await f.generate(),u.info(`Icon font generated and saved to ${a.dim(p)}`)}),Ee.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Ce(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=$(r,t)}const a=await D($(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await j(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),Ee.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action(async(t,o)=>{Ce(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=$(r,t)}(await I($(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{_e(e=>r(o.logLevel).info(e))}}),Ee.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-SXsPvdfV.js")),h=n.format??"ts",m=!1!==n.backup,w=process.cwd(),b=u(w,o);b||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=b;i.info(a.blue(`Found config: ${e.relative(w,v)}`));const{getPkg:x}=await import("./index-DewOudJ0.js").then(e=>e.h),S=x();let k,T={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:w,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(w,s)).toString()));T=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(w,v)).toString()));T=o.default?.default??o.default??o}else P?T=g(v):v.endsWith(".json")&&(T=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}T&&"object"==typeof T||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(T)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(T)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),k=p(T)):s(T)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),k=d(T,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const L=f(k,h),E=n.output??e.join(w,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(w,E)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(w,o)}`))}t.writeFileSync(E,L,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(w,E)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==E&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(w,v)}`))}),Ee.help(),Ee.version(u),Ee.parse();export{_e as stopProfiler};
|
|
2
2
|
//# sourceMappingURL=cli.js.map
|
package/dist/esm/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sources":["../../../src/shortcuts.ts","../../../src/lib/changelog-generator.ts","../../../src/lib/icon-font-generator.ts","../../../src/lib/pp-ws-server.ts","../../../src/lib/process-handlers.ts","../../../src/lib/next-process-listeners.ts","../../../src/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["isDefined","value","cleanupActiveShortcutBinding","BASE_SHORTCUTS","key","description","action","server","restart","config","logger","info","printUrls","openBrowser","clearScreen","close","finally","process","exit","cache","clear","fileNameWithHashRegEx","ChangelogGenerator","oldAssetsPath","newAssetsPath","destinationPath","changelogFilename","changelogTemplate","diffFileTemplateHandler","diffLineTemplateHandler","contextLines","constructor","opts","this","createLogger","Error","isExists","isZipFile","unzipDestinationPath","path","resolve","os","tmpdir","crypto","createHash","update","digest","unzipFile","then","normalizeAssetFolderPath","isEmptyFolder","isFolder","Promise","mkdirpSync","templateIsValid","warn","colors","yellow","template","includes","assetPath","fs","existsSync","endsWith","lstatSync","isDirectory","readdirSync","withFileTypes","length","dir","mkdirSync","recursive","rmSync","force","extractZipSafe","folderContent","join","pathToPosix","replace","diffTableTemplate","diffLinesHTML","getDiffTableHTML","diffLines","filter","index","array","lineType","slice","some","line","map","prevLine","lineNumber","lineContent","flat","diffLineHTML","diffLineMessageTemplate","message","diffLineSkipTemplate","diffLineTemplate","diffLine","numClass","str","i","charCodeAt","diffFileTemplate","filename","htmlDiff","generateAssetFoldersDiff","blue","dirDiff","dirCompare","compare","compareContent","skipSymlinks","compareSize","compareDate","compareNameHandler","name1","name2","test","localeCompare","diffSet","d","state","generateAssetFilesDiff","oldFileString","newFileString","dmp","DiffMatchPatch","linesChars","diff_linesToChars_","linesDiff","diff_main","chars1","chars2","diff_charsToLines_","lineArray","linesCount","split","lines","generateFilesDiff","difference","filepath1","relativePath","filepath2","assetFile1Path","path1","assetFile2Path","path2","filepath","filenameTitle","isBinaryFile","readFileSync","generateChangelog","green","all","templateArray","splice","changelogHTML","writeFileSync","IconFontGenerator","sourceDir","outputDir","fontName","options","generate","default","svgToFont","src","dist","css","typescript","startUnicode","svgicons2svgfont","fontHeight","PPDevHotServer","wss","eventListeners","Map","lifecycleListeners","clients","ws","WebSocketServer","noServer","on","socket","onConnection","err","fireLifecycle","event","listener","getEventSet","add","getLifecycleSet","off","get","delete","send","arg1","arg2","keys","sendToSocket","data","JSON","stringify","readyState","WebSocket","OPEN","handleUpgrade","req","head","url","PP_DEV_HMR_WS_PATH","crossOriginReason","once","destroy","end","emit","terminate","client","payload","set","raw","onMessage","parse","toString","type","listeners","error","String","arg","Set","describe","stack","registerProcessHandlers","knownRejections","shutdown","shutdownTimeoutMs","processRef","shuttingDown","exitCode","shutdownAndExit","async","reason","code","Math","max","escalate","timeout","setTimeout","red","clearTimeout","onSigint","onSigterm","onUncaughtException","onUnhandledRejection","known","find","rejection","matches","dim","NEXT_WORKER_SCHEDULER_REJECTION","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","file","watcher","watch","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","relative","cleanupConfigWatcher","isNextTurbopackNativeBindingsError","msg","generatePostBuildChangelog","changelog","executionRoot","backupsDirPath","changelogDestinationPath","logLevel","backups","zipBackups","isFile","name","latestBackup","reduce","latest","current","statSync","mtimeMs","changelogGenerator","profileSession","global","__pp_dev_profile_session","profileCount","stopProfiler","log","res","rej","post","profile","outPath","white","undefined","filterDuplicateOptions","Object","entries","Array","isArray","cleanOptions","ret","c","l","debug","f","m","mode","option","command","alias","root","configWatcher","isRestarting","cwd","startServer","clearConfigCache","getConfig","n","h","createServer","envDir","loadPPDevEnv","configFromFile","loadConfigFromFile","getViteConfig","plugins","fileConfig","mergeConfig","configFile","optimizeDeps","customLogger","httpServer","listen","ppDevStartTime","__pp_dev_start_time","startupDurationString","reset","bold","ceil","performance","now","VERSION","serveConfig","inspector","enabled","localUrl","resolvedUrls","local","origin","URL","port","cyan","INSPECTOR_PATH","stdin","isTTY","env","CI","_shortcutsOptions","print","shortcuts","customShortcuts","concat","actionRunning","wasPaused","isPaused","stdinWithRawMode","hadRawModeEnabled","Boolean","isRaw","onInput","input","kill","pid","shortcut","setRawMode","setEncoding","resume","boundServer","cleanupBinding","removeListener","pause","bindShortcuts","r","Session","connect","encodeURIComponent","e","nextApp","hotServer","openSockets","nextAppListeners","events","listenersOf","before","previousApp","beforeCreate","afterCreate","snapshot","addedByApp","has","removed","oldListeners","newCode","createNextAppListenerTracker","closeNextApp","closeHttpServer","startNextServer","next","constants","safeNextImport","PHASE_DEVELOPMENT_SERVER","importConfig","loadConfig","ppDevConfig","ppDev","standaloneConfig","console","templateName","getPkg","validatePPDevConfig","_normalized","normalizePPDevConfig","backendBaseURL","templateLess","v7Features","disableSSLValidation","enableProxyCache","proxyCacheTTL","personalAccessToken","miHudLess","inspectorEnabled","inspectorMaxMemory","inspectorCaptureLimit","appId","MI_APP_ID","parseInt","MI_PORTAL_PAGE_ID","configBasePath","basePath","PATH_PAGE_PREFIX","PATH_TEMPLATE_LOCAL_PREFIX","PATH_TEMPLATE_PREFIX","bundlerChoice","envWebpack","PP_DEV_NEXT_WEBPACK","webpack","turbopack","parseNextBundlerCli","createAndPrepareNext","bundler","TURBOPACK","nextOptions","dev","customServer","hostname","host","conf","assetPrefix","prepare","handle","getRequestHandler","originalUrl","originalPathname","parsedUrl","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","statusCode","mi","reqStore","RequestStore","registerInspectorRoutes","internalServer","captureMiddleware","createRequestCaptureMiddleware","push","baseUrlHost","userHostGuard","createUserHostGuard","unshift","EventEmitter","defaultMaxListeners","miConfig","headers","referer","MI_ACCESS_TOKEN","MiAPI","ppRedirectMiddleware","initPPRedirect","ppRedirectWrapper","devPanelAssetMiddleware","createDevPanelAssetMiddleware","ttl","Number","isNaN","mockDevServer","middlewares","use","fn","proxyCacheMiddleware","initProxyCache","devServer","proxyCacheWrapper","isIndexRegExp","RegExp","string","loadPPDataMiddleware","initLoadPPData","assign","loadPPDataWrapper","baseWithoutTrailingSlash","substring","mockProxyDevServer","proxyPassMiddlewareInstance","proxyPassMiddleware","baseURL","proxyIgnore","miAPI","proxyPassWrapper","internalServerMiddleware","internalServerWrapper","VARIABLES_EDITOR_PATH","rewriteResponseMiddleware","initRewriteResponse","pathname","response","page","buildPage","withPanel","injectDevPanel","devPanelPosition","devPanelHidden","devPanelAutoHide","Buffer","from","urlReplacer","rewriteResponseWrapper","exportDistDir","distDir","PP_DEV_NEXT_BUILD_ENV_VAR","prodConfig","PHASE_PRODUCTION_BUILD","normalizedDistDir","nextExportDir","nextPackageRepositoryUrl","nextPackageVersion","projectPkg","version","repository","distService","DistService","backupFolder","syncBackupsDir","maxBackups","syncMaxBackups","nextBuild","packageVersion","packageRepositoryUrl","clientServiceServer","clientInjectionPlugin","ClientService","registerVariablesEditorRoutes","registerUserRoutes","startKeepingUsers","persist","persistUsers","miUrl","nextUpgradeHandler","getUpgradeHandler","buildOptions","cliOverrides","resolveBuildCliOverrides","buildConfig","build","outDir","changelogDestination","distZip","nextConfig","normalized","applyDistZipOverride","createDefaultZipFileName","versionPlugin","applyVersionManifestOverride","removedDevTypes","removeStaleDevTypes","runNextBuildProcess","rawDistDir","exportDirName","writeBuildVersionManifest","versionFileTemplate","zipOutDir","zipSourceDir","inDir","zipFile","resolveOutputFilePath","outFileName","dirname","buffer","zipDirectoryToBuffer","oldAssetPath","newAssetPath","oldPath","newPath","destination","fullOldPath","fullNewPath","fullDestination","source","destDir","fullSourceDir","fullDestDir","iconFontGenerator","optimizeConfig","resolveConfig","preview","strictPort","https","open","configArg","isLegacyFlatConfig","isLegacyPPWatchConfig","isAlreadyMigrated","migrateLegacyFlatConfig","migratePPWatchConfig","generateConfigFileContent","discoverMigrateSource","loadPackageJsonMigrateConfig","format","doBackup","backup","migrateSource","sourceFile","isWatchConfig","isPackageJsonConfig","pkg","migratedConfig","rawConfig","esbuild","pathToFileURL","absWorkingDir","entryPoints","outfile","write","target","platform","bundle","packages","mainFields","outputFiles","text","tmpFile","Date","mod","unlinkSync","outputContent","outputFile","output","dryRun","backupPath","copyFileSync","help"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sources":["../../../src/shortcuts.ts","../../../src/lib/changelog-generator.ts","../../../src/lib/icon-font-generator.ts","../../../src/lib/pp-ws-server.ts","../../../src/lib/process-handlers.ts","../../../src/lib/next-process-listeners.ts","../../../src/lib/cli-options.ts","../../../src/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["isDefined","value","cleanupActiveShortcutBinding","boundOptions","WeakMap","bindShortcuts","server","opts","httpServer","process","stdin","isTTY","env","CI","set","logger","createLogger","print","info","colors","dim","green","bold","shortcuts","customShortcuts","filter","concat","BASE_SHORTCUTS","actionRunning","wasPaused","isPaused","stdinWithRawMode","hadRawModeEnabled","Boolean","isRaw","onInput","async","input","proc","platform","emit","kill","pid","interruptProcess","close","finally","exit","map","shortcut","key","description","join","find","action","setRawMode","on","setEncoding","resume","boundServer","cleanupBinding","removeListener","off","pause","get","restart","config","printUrls","openBrowser","clearScreen","cache","clear","fileNameWithHashRegEx","ChangelogGenerator","oldAssetsPath","newAssetsPath","destinationPath","changelogFilename","changelogTemplate","diffFileTemplateHandler","diffLineTemplateHandler","contextLines","constructor","this","Error","isExists","isZipFile","unzipDestinationPath","path","resolve","os","tmpdir","crypto","createHash","update","digest","unzipFile","then","normalizeAssetFolderPath","isEmptyFolder","isFolder","Promise","mkdirpSync","templateIsValid","warn","yellow","template","includes","assetPath","fs","existsSync","endsWith","lstatSync","isDirectory","readdirSync","withFileTypes","length","dir","mkdirSync","recursive","rmSync","force","extractZipSafe","folderContent","pathToPosix","replace","diffTableTemplate","diffLinesHTML","getDiffTableHTML","diffLines","index","array","lineType","slice","some","line","prevLine","lineNumber","lineContent","flat","diffLineHTML","diffLineMessageTemplate","message","diffLineSkipTemplate","diffLineTemplate","diffLine","numClass","str","i","charCodeAt","diffFileTemplate","filename","htmlDiff","generateAssetFoldersDiff","blue","dirDiff","dirCompare","compare","compareContent","skipSymlinks","compareSize","compareDate","compareNameHandler","name1","name2","test","localeCompare","diffSet","d","state","generateAssetFilesDiff","oldFileString","newFileString","dmp","DiffMatchPatch","linesChars","diff_linesToChars_","linesDiff","diff_main","chars1","chars2","diff_charsToLines_","lineArray","linesCount","split","lines","generateFilesDiff","difference","filepath1","relativePath","filepath2","assetFile1Path","path1","assetFile2Path","path2","filepath","filenameTitle","isBinaryFile","readFileSync","generateChangelog","all","templateArray","splice","changelogHTML","writeFileSync","IconFontGenerator","sourceDir","outputDir","fontName","options","generate","default","svgToFont","src","dist","css","typescript","startUnicode","svgicons2svgfont","fontHeight","PPDevHotServer","wss","eventListeners","Map","lifecycleListeners","clients","ws","WebSocketServer","noServer","socket","onConnection","err","fireLifecycle","event","listener","getEventSet","add","getLifecycleSet","delete","send","arg1","arg2","keys","sendToSocket","data","JSON","stringify","readyState","WebSocket","OPEN","handleUpgrade","req","head","url","PP_DEV_HMR_WS_PATH","crossOriginReason","once","destroy","end","terminate","client","payload","raw","onMessage","parse","toString","type","listeners","error","String","arg","Set","describe","stack","registerProcessHandlers","knownRejections","shutdown","shutdownTimeoutMs","processRef","shuttingDown","exitCode","shutdownAndExit","reason","code","Math","max","escalate","timeout","setTimeout","red","clearTimeout","onSigint","onSigterm","onUncaughtException","onUnhandledRejection","known","rejection","matches","NEXT_WORKER_SCHEDULER_REJECTION","NON_VITE_FLAGS","cleanOptions","ret","flag","sourcemap","watch","undefined","NEXT_IGNORED_FLAGS","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","file","watcher","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","relative","cleanupConfigWatcher","isNextTurbopackNativeBindingsError","msg","generatePostBuildChangelog","changelog","executionRoot","backupsDirPath","changelogDestinationPath","logLevel","backups","zipBackups","isFile","name","latestBackup","reduce","latest","current","statSync","mtimeMs","changelogGenerator","profileSession","global","__pp_dev_profile_session","profileCount","stopProfiler","log","res","rej","post","profile","outPath","white","filterDuplicateOptions","Object","entries","Array","isArray","option","command","alias","root","configWatcher","isRestarting","cwd","startServer","clearConfigCache","getConfig","n","h","createServer","mode","envDir","loadPPDevEnv","configFromFile","loadConfigFromFile","getViteConfig","plugins","fileConfig","mergeConfig","configFile","optimizeDeps","customLogger","listen","ppDevStartTime","__pp_dev_start_time","startupDurationString","reset","ceil","performance","now","VERSION","serveConfig","inspector","enabled","localUrl","resolvedUrls","local","origin","URL","port","cyan","INSPECTOR_PATH","r","Session","connect","encodeURIComponent","e","ignoredFlags","host","listenHost","listenPort","resolvedHost","parsedPort","Number","parseInt","NaN","isInteger","resolveNextListenAddress","nextApp","hotServer","openSockets","nextAppListeners","events","listenersOf","before","previousApp","beforeCreate","afterCreate","snapshot","addedByApp","has","removed","oldListeners","newCode","createNextAppListenerTracker","closeNextApp","closeHttpServer","startNextServer","next","constants","safeNextImport","PHASE_DEVELOPMENT_SERVER","importConfig","loadConfig","ppDevConfig","ppDev","standaloneConfig","getPkg","packageName","validatePPDevConfig","_normalized","normalizePPDevConfig","templateName","backendBaseURL","templateLess","v7Features","disableSSLValidation","enableProxyCache","proxyCacheTTL","personalAccessToken","miHudLess","inspectorEnabled","inspectorMaxMemory","inspectorCaptureLimit","appId","configBasePath","basePath","PATH_PAGE_PREFIX","PATH_TEMPLATE_LOCAL_PREFIX","PATH_TEMPLATE_PREFIX","bundlerChoice","envWebpack","PP_DEV_NEXT_WEBPACK","webpack","turbopack","parseNextBundlerCli","createAndPrepareNext","bundler","TURBOPACK","nextOptions","dev","customServer","hostname","conf","assetPrefix","prepare","handle","getRequestHandler","originalUrl","originalPathname","parsedUrl","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","statusCode","mi","reqStore","RequestStore","registerInspectorRoutes","internalServer","captureMiddleware","createRequestCaptureMiddleware","push","internalServerWrapper","VARIABLES_EDITOR_PATH","baseUrlHost","userHostGuard","createUserHostGuard","unshift","EventEmitter","defaultMaxListeners","miConfig","headers","referer","MI_ACCESS_TOKEN","MiAPI","ppRedirectMiddleware","initPPRedirect","ppRedirectWrapper","devPanelAssetMiddleware","createDevPanelAssetMiddleware","ttl","isNaN","mockDevServer","middlewares","use","fn","console","proxyCacheMiddleware","initProxyCache","devServer","proxyCacheWrapper","isIndexRegExp","RegExp","string","loadPPDataMiddleware","initLoadPPData","assign","loadPPDataWrapper","baseWithoutTrailingSlash","substring","mockProxyDevServer","proxyPassMiddlewareInstance","proxyPassMiddleware","baseURL","proxyIgnore","miAPI","proxyPassWrapper","rewriteResponseMiddleware","initRewriteResponse","pathname","response","page","buildPage","withPanel","injectDevPanel","devPanelPosition","devPanelHidden","devPanelAutoHide","Buffer","from","urlReplacer","rewriteResponseWrapper","exportDistDir","distDir","previousNextBuildFlag","PP_DEV_NEXT_BUILD_ENV_VAR","prodConfig","PHASE_PRODUCTION_BUILD","normalizedDistDir","nextExportDir","nextPackageRepositoryUrl","nextPackageVersion","projectPkg","version","repository","distService","DistService","backupFolder","syncBackupsDir","maxBackups","syncMaxBackups","nextBuild","packageVersion","packageRepositoryUrl","clientServiceServer","clientInjectionPlugin","ClientService","registerVariablesEditorRoutes","registerUserRoutes","startKeepingUsers","persist","persistUsers","miUrl","nextUpgradeHandler","getUpgradeHandler","buildOptions","cliOverrides","resolveBuildCliOverrides","buildConfig","build","outDir","changelogDestination","distZip","nextConfig","normalized","applyDistZipOverride","createDefaultZipFileName","versionPlugin","applyVersionManifestOverride","removedDevTypes","removeStaleDevTypes","runNextBuildProcess","rawDistDir","exportDirName","writeBuildVersionManifest","versionFileTemplate","zipOutDir","zipSourceDir","inDir","zipFile","resolveOutputFilePath","outFileName","dirname","buffer","zipDirectoryToBuffer","oldAssetPath","newAssetPath","oldPath","newPath","destination","fullOldPath","fullNewPath","fullDestination","source","destDir","fullSourceDir","fullDestDir","iconFontGenerator","optimizeConfig","resolveConfig","preview","strictPort","https","open","configArg","isLegacyFlatConfig","isLegacyPPWatchConfig","isAlreadyMigrated","migrateLegacyFlatConfig","migratePPWatchConfig","generateConfigFileContent","discoverMigrateSource","loadPackageJsonMigrateConfig","format","doBackup","backup","migrateSource","sourceFile","isWatchConfig","isPackageJsonConfig","pkg","migratedConfig","rawConfig","esbuild","pathToFileURL","absWorkingDir","entryPoints","outfile","write","target","bundle","packages","mainFields","outputFiles","text","tmpFile","Date","mod","unlinkSync","outputContent","outputFile","output","dryRun","backupPath","copyFileSync","help"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{execSync as e}from"child_process";import{i as t,j as n,V as i,k as s,h as r,l as o,v as a,n as c,d as p,e as l,g as u,b as d,c as m,a as f,f as v}from"./auth.provider-CaBF6-T3.js";import{createRequire as g}from"node:module";import{normalizePath as h,loadEnv as _}from"vite";import*as y from"fs";import{readdirSync as j,readFileSync as b,writeFileSync as P,unlinkSync as E}from"fs";import*as $ from"path";import I from"path";import{fileURLToPath as w,pathToFileURL as D}from"url";import"./helpers.js";import T from"ejs";const R=$.dirname(n),S=$.join(R,"index.html");let O=null;function N(e){return{css:$.posix.join(e,t,"client/client.css"),js:$.posix.join(e,t,"client/client.js")}}function x(e){return function(){if(O)return O;const e=y.readFileSync(S,{encoding:"utf8"});return O=T.compile(e,{openDelimiter:"{",closeDelimiter:"}",async:!1,rmWhitespace:!0,compileDebug:!1}),O}()({PACKAGE_NAME:t,VERSION:i,backendBaseURL:e.backendBaseURL,templateLess:e.templateLess,appId:e.appId,canSync:e.canSync??!0,devPanelPosition:e.devPanelPosition??"bottom-right",devPanelHidden:e.devPanelHidden??!1,devPanelAutoHide:e.devPanelAutoHide??!1})}function F(e,t,n){if(!/<\/?(html|body|head)\b/i.test(e))return e;const{css:i,js:s}=N(t),r=`<link rel="stylesheet" href="${i}">`,o=`${x(n)}${`<script type="module" src="${s}"><\/script>`}`;let a=e,c=!1;if(/<\/head>/i.test(a)&&(a=a.replace(/<\/head>/i,`${r}</head>`),c=!0),/<body[^>]*>/i.test(a)){const e=c?"":r;a=a.replace(/(<body[^>]*>)/i,`$1${e}${o}`)}else a=`${c?"":r}${a}${o}`;return a}const L={".js":"text/javascript; charset=utf-8",".css":"text/css; charset=utf-8",".map":"application/json; charset=utf-8"};function C(e){const n=$.posix.join(e,t,"client")+"/",i=new Set(["client.js","client.css","client.js.map","client.css.map"]);return(e,t,s)=>{const r=(e.url??"").split("?")[0];if(!r.startsWith(n))return void s();const o=r.slice(n.length);if(!i.has(o))return void s();const a=$.join(R,o);y.readFile(a,(e,n)=>{e?s():(t.statusCode=200,t.setHeader("Content-Type",L[$.extname(o)]??"application/octet-stream"),t.setHeader("Cache-Control","no-cache"),t.end(n))})}}let A;try{A="undefined"!=typeof __filename&&__filename?$.resolve($.dirname(__filename),".."):void 0!==import.meta&&import.meta&&import.meta.url?$.resolve(w(new URL(".",import.meta.url)),".."):process.cwd()}catch{A=process.cwd()}const U=h($.join(s,"dist/client")),Z=new RegExp(`^\\/?${t}\\/client\\/(.*)$`);let k=null,M=null;function V(e){return{name:"pp-dev:client",apply:"serve",config:e=>(e.optimizeDeps?.exclude?.push(`${t}/client`),e),resolveId(e){const t=e.match(Z);if(t){const e=h($.join(U,t[1]));return e.startsWith(`${U}/`)?{id:e}:null}},transformIndexHtml:async(e,n)=>{const s=n.server?.config.base||"",r=function(){if(M)return M;const e=$.resolve(A,"client","index.html");return k||(k=y.readFileSync(e,{encoding:"utf8"})),M=T.compile(k,{openDelimiter:"{",closeDelimiter:"}",async:!0,cache:!0,filename:e,rmWhitespace:!0,compileDebug:!1}),M}(),o=N(s),a={html:e,tags:[{tag:"link",injectTo:"head",attrs:{rel:"stylesheet",href:o.css}}]},{backendBaseURL:c,templateLess:p=!1,appId:l,canSync:u=!0,devPanelPosition:d="bottom-right",devPanelHidden:m=!1,devPanelAutoHide:f=!1}=n.server?.config.clientInjectionPlugin||{},v={PACKAGE_NAME:t,VERSION:i,backendBaseURL:c,templateLess:p,appId:l,canSync:u,devPanelPosition:d,devPanelHidden:m,devPanelAutoHide:f};return a.tags.push({tag:"div",injectTo:"body-prepend",children:await r(v)}),a.tags.push({tag:"script",injectTo:"body-prepend",attrs:{src:o.js,type:"module"}}),a},configureServer(e){const t=h($.resolve(e.config.root,$.dirname(n)));e.config.server?.fs?.allow&&e.config.server.fs.allow.push(t)}}}const H=(e,t)=>` * ${t}`;function B(e){return`/*!\n${"***** DO NOT EDIT THIS CODE! *****\n***** ------- *****".replace(/^(.*)$/gm,H)}\n */`}async function W(){try{const[e,t]=await Promise.all([import("next"),import("next/constants.js")]);return{next:e.default,constants:t}}catch(e){throw new Error(`Next.js is required but not available. Please install Next.js as a dependency:\nnpm install next@^15\n\nThis package requires Next.js >=15 <17 as a peer dependency.\n\nError: ${e}`)}}const z=()=>g(import.meta.url);async function G(){try{return z().resolve("next"),!0}catch{return!1}}async function J(){try{const e=z()("next/package.json");return"string"==typeof e.version?e.version:null}catch{return null}}let q=new Set;function K(e="development",t=process.cwd()){for(const e of q)delete process.env[e];const n=new Set(Object.keys(process.env).filter(e=>e.startsWith("MI_"))),i=_(e,t,"MI_");for(const[e,t]of Object.entries(i))process.env[e]=t;return q=new Set(Object.keys(i).filter(e=>!n.has(e))),i}const Y=new Map,Q=new Map;function X(e=process.cwd()){const t=Date.now(),n=I.resolve(e),i=Q.get(n);if(i&&t-i.timestamp<6e4)return i.data;try{const e=JSON.parse(b(I.resolve(n,"package.json"),{encoding:"utf-8",flag:"r"}));return Q.set(n,{data:e,timestamp:t}),e}catch{const e={};return Q.set(n,{data:e,timestamp:t}),e}}let ee=null;const te="__pp_dev_injected_dirname",ne="__pp_dev_injected_filename",ie="__pp_dev_injected_import_meta_url",se={__dirname:te,__filename:ne,"import.meta.url":ie,"import.meta.dirname":te,"import.meta.filename":ne},re={name:"pp-dev:config-module-location",setup(e){e.onLoad({filter:/\.([cm]?[jt]s|[jt]sx)$/},e=>{const t=b(e.path,"utf-8").replace(/^#![^\r\n]*/,"");return{contents:`const ${te} = ${JSON.stringify(I.dirname(e.path))};const ${ne} = ${JSON.stringify(e.path)};const ${ie} = ${JSON.stringify(D(e.path).href)};`+t,loader:e.path.endsWith(".tsx")?"tsx":e.path.endsWith(".jsx")?"jsx":/ts$/.test(e.path)?"ts":"js"}})}};async function oe(e,t){const n=`bundled:${e}`,i=Y.get(n);if(i&&Date.now()-i.timestamp<3e4)return i.data;let s=!1;if(/\.m[jt]s$/.test(e))s=!0;else if(/\.c[jt]s$/.test(e))s=!1;else{const e=X(t);s=!!e&&"module"===e.type}const r=await async function(){return ee||(ee=await(import("esbuild"))),ee}(),o=await r.build({absWorkingDir:t,entryPoints:[e],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:s?"esm":"cjs",mainFields:["main"],sourcemap:"inline",metafile:!0,plugins:[re],define:se,...s?{banner:{js:"import { createRequire as __ppDevCreateRequire } from 'node:module';const require = __ppDevCreateRequire(import.meta.url);"}}:{}}),{text:a}=o.outputFiles[0],c=`${`pp-config.timestamp-${Date.now()}-${Math.random().toString(16).slice(2)}`}.${s?"mjs":"cjs"}`,p=I.resolve(t,c),l=D(p).toString();P(p,a);let u={};try{const t=(await(import(l))).default;u=t?.default||t,Y.set(n,{data:u,timestamp:Date.now(),filePath:e})}finally{try{E(p)}catch{}}return u}async function ae(e){const t=`json:${e}`,n=Y.get(t);if(n&&Date.now()-n.timestamp<3e4)return n.data;const i=JSON.parse(b(e,{encoding:"utf-8"}));return Y.set(t,{data:i,timestamp:Date.now(),filePath:e}),i}const ce=new Map;function pe(e=process.cwd()){return X(e)}async function le(e=process.cwd()){const t=I.resolve(e),n=function(e){const t=Date.now(),n=ce.get(e);if(n&&t-n.timestamp<1e4)return n.files;const i=/\.config\.(([cm]?ts)|([cm]?js)|(json))$/,s=j(e,{withFileTypes:!0}).filter(e=>e.isFile()&&i.test(e.name)).map(e=>e.name);return ce.set(e,{files:s,timestamp:t}),s}(t);let i={},s=!1;const o=await async function(e,t,n){for(const i of t)if(e.includes(i)){const e=I.resolve(n,i);if(/\.[cm]?[jt]s$/i.test(i))return await oe(e,n);if(i.endsWith(".json"))return await ae(e)}return null}(n,r,t);o&&(i=o,s=!0);const a=X(t)["pp-dev"];return s||!a||"object"!=typeof a||Array.isArray(a)||(i=a),i}const ue=Object.freeze({__proto__:null,clearConfigCache:function(){Y.clear(),Q.clear(),ce.clear()},getConfig:le,getPkg:pe});function de(e){if(void 0!==e)return"1"===e||"true"===e.toLowerCase()||"0"!==e&&"false"!==e.toLowerCase()&&void 0}function me(e){return{distZipEnabled:e.distZip??de(process.env.PP_DEV_DIST_ZIP),distZipDir:e.distZipDir??process.env.PP_DEV_DIST_ZIP_DIR,distZipFilename:e.distZipFilename??process.env.PP_DEV_DIST_ZIP_FILENAME,versionManifestEnabled:e.versionManifest??de(process.env.PP_DEV_VERSION_MANIFEST),versionFileTemplate:e.versionFileTemplate??process.env.PP_DEV_VERSION_FILE_TEMPLATE}}function fe(e,t,n){if(!1===t.distZipEnabled)return!1;if(!0!==t.distZipEnabled&&void 0===t.distZipDir&&void 0===t.distZipFilename)return!1!==e&&{...e,outFileName:o(e.outFileName,"ZIP output file name")};const i=!1===e?{outFileName:n,outDir:"dist-zip"}:e,s=t.distZipFilename??i.outFileName;return{...i,...void 0!==t.distZipDir?{outDir:t.distZipDir}:{},outFileName:o(s,"ZIP output file name")}}function ve(e,t){if(!1===t.versionManifestEnabled)return!1;if(!0!==t.versionManifestEnabled&&void 0===t.versionFileTemplate)return!1!==e&&void 0!==e.versionFileTemplate?{...e,versionFileTemplate:o(e.versionFileTemplate,"VERSION file name template")}:e;const n=!1===e?{enabled:!0}:e,i=t.versionFileTemplate??n.versionFileTemplate,s=void 0!==i?o(i,"VERSION file name template"):void 0;return{...n,enabled:!0,...void 0!==s?{versionFileTemplate:s}:{}}}const ge=new Set(["mi","app","proxy","build","sync","inspector","devPanel"]);function he(t){if("string"==typeof t)return t;if(t&&"object"==typeof t&&"url"in t&&"string"==typeof t.url)return t.url;const n=["CI_REPOSITORY_URL","GIT_URL","BUILD_REPOSITORY_URI","CI_PROJECT_URL","BITBUCKET_GIT_HTTP_ORIGIN","BUILDKITE_REPO"];for(const e of n){const t=process.env[e];if("string"==typeof t&&t.trim())return t}const i=process.env.GITHUB_REPOSITORY;if("string"==typeof i&&i.trim()){return`${(process.env.GITHUB_SERVER_URL||"https://github.com").replace(/\/+$/,"")}/${i.replace(/^\/+/,"")}`}const s=process.env.CI_PROJECT_PATH;if("string"==typeof s&&s.trim()){return`${(process.env.CI_SERVER_URL||"https://gitlab.com").replace(/\/+$/,"")}/${s.replace(/^\/+/,"")}`}const r=process.env.BITBUCKET_REPO_FULL_NAME;if("string"==typeof r&&r.trim())return`https://bitbucket.org/${r.replace(/^\/+/,"")}`;const o=process.env.TRAVIS_REPO_SLUG;if("string"==typeof o&&o.trim())return`https://github.com/${o.replace(/^\/+/,"")}`;try{const t=e("git config --get remote.origin.url",{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trim();if(t)return t}catch{}}async function _e(e,t={}){const n=t.root??process.cwd();K(t.mode,n);const i=pe(n),s=await le(n);a(s,i.name);const r=c(s,i.name),{templateName:o}=r;e&&(r.distZip=fe(r.distZip,e,p(o)),r.versionPlugin=ve(r.versionPlugin,e));const{default:d}=await(import("./plugin.js")),m=[d(r),V()],{outDir:f,distZip:v,versionPlugin:g,imageOptimizer:h,templateLess:_,integrateMiTopBar:y}=r;if(y&&m.push(function(e){return{name:"mi-topbar-plugin",transformIndexHtml(){const t=[];return(!0===e||"object"==typeof e&&!0===e.addRootElement)&&t.push({tag:"div",injectTo:"body-prepend",attrs:{id:"mi-react-root"}}),(!0===e||"object"==typeof e&&!0===e.addSharedComponentsScripts)&&t.push({tag:"script",injectTo:"head-prepend",attrs:{src:"/auth/info.js"}},{tag:"script",injectTo:"head-prepend",attrs:{src:"/js/main.js",defer:"defer"}},{tag:"link",injectTo:"head-prepend",attrs:{href:"/css/main.css",rel:"stylesheet"}}),t}}}(y)),h){const{ViteImageOptimizer:e}=await(import("vite-plugin-image-optimizer"));m.push(e("object"==typeof h?h:void 0))}if(g){const{versionPlugin:e}=await(import("./version-plugin-aWKAiJZe.js"));m.push(e({outDir:f,packageVersion:i.version??"0.0.0",packageRepositoryUrl:he(i.repository),..."object"==typeof g?g:{}}))}if(v){const{default:e}=await(import("vite-plugin-zip-pack"));m.push({...e("object"==typeof v?v:{outFileName:p(o)}),enforce:"post"})}return{base:_?`${l}/${o}`:`${u}/${o}`,server:{port:3e3},build:{minify:!1,assetsInlineLimit:4096,rollupOptions:{output:{banner:B}},outDir:f},css:{modules:{localsConvention:"dashes"}},ppDevConfig:r,plugins:m}}function ye(e){return e?.ppDev||{}}function je(e,t){return async(n,i={})=>{try{const{constants:s}=await W(),{PHASE_DEVELOPMENT_SERVER:r,PHASE_PRODUCTION_BUILD:o}=s;n!==o||process.env[d]||m().warn(f.yellow('⚠ Building with plain `next build`. Use `pp-dev next-build` instead to get VERSION/BUILD-MANIFEST/zip build output in the same format as `pp-dev build` (see the "Next.js Build" section in the pp-dev README).'));const p=await le(),g=pe().name,h="function"==typeof e?await e(n,i):e,_=function(...e){const t={},n=t;for(const t of e)if(t)for(const[e,i]of Object.entries(t))void 0!==i&&(ge.has(e)&&i&&"object"==typeof i&&!Array.isArray(i)?n[e]={...n[e]??{},...i}:n[e]=i);return t}(p,ye(h),t);a(_,g);const y=c(_,g),{templateLess:j,v7Features:b}=y,P=n===r,E=function(e,t,n,i){return n?i?t?`${l}/${e}`:`${v}/${e}`:t?`${l}/${e}`:`${u}/${e}`:`${l}/${e}`}(y.templateName,j,P,b),$={basePath:E,trailingSlash:!!P||void 0};if(!j){const e=P&&b?v:u;$.assetPrefix=`${e}/${y.templateName}`}const I=Object.assign({},$,h);return Object.defineProperty(I,"ppDev",{value:_,enumerable:!1,configurable:!0}),I}catch(e){throw m().error("Error in withPPDev:",{error:e instanceof Error?e:new Error(String(e))}),e}}}export{fe as a,ve as b,C as c,J as d,ye as e,G as f,_e as g,ue as h,F as i,K as l,me as r,W as s,je as w};
|
|
2
|
+
//# sourceMappingURL=index-DewOudJ0.js.map
|