@metricinsights/pp-dev 1.5.0-beta.8 ā 1.5.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cli.js +1 -1
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/esm/cli.js +1 -1
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/package.json +1 -1
package/dist/cjs/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("path"),t=require("fs"),o=require("node:events"),n=require("node:perf_hooks"),i=require("chokidar"),r=require("cac"),s=require("./plugin-DU-SQ4cy.js"),a=require("./index-Clb1BxEO.js"),l=require("vite"),c=require("url"),d=require("dir-compare"),p=require("diff-match-patch"),f=require("isbinaryfile"),u=require("os"),g=require("crypto"),h=require("svgtofont"),m=require("ws");require("http-proxy-middleware"),require("picocolors"),require("node:string_decoder"),require("axios"),require("node:http"),require("node:https"),require("jsdom"),require("process"),require("child_process"),require("node:path"),require("jszip"),require("module"),require("zlib"),require("express"),require("node:crypto"),require("node:fs"),require("node:os"),require("./helpers.js"),require("ejs");const v=e=>e&&"object"==typeof e&&"default"in e?e.default:e;function b(e){if(e&&"object"==typeof e&&"default"in e)return e;const t=Object.create(null);if(e)for(const o in e)t[o]=e[o];return t.default=e,Object.freeze(t)}const w=b(e),y=b(t),P=b(d),x=v(p),S=b(u),E=b(g),T=v(h);function L(e){return null!=e&&!1!==e}let k=null;const D=[{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 I=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class F{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(e){const{oldAssetsPath:t,newAssetsPath:o,destinationPath:n,changelogTemplate:i,diffFileTemplateHandler:r,diffLineTemplateHandler:a,changelogFilename:l,contextLines:c}=e;if(this.logger=s.createLogger(),!t||!o||!n)throw new Error("Previous assets path, current assets path and destination path are required");if(t===o)throw new Error("Previous and current assets paths must be different");if(!this.isExists(t))throw new Error(`Previous assets path ${t} does not exist`);if(!this.isExists(o))throw new Error(`Current assets path ${o} does not exist`);if(this.isZipFile(t)){const e=w.resolve(S.tmpdir(),E.createHash("md5").update(t).digest("hex"));this.oldAssetsPath=this.unzipFile(t,e).then(()=>this.normalizeAssetFolderPath(e)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);return e})}else{if(!this.isFolder(t))throw new Error(`Invalid previous assets path ${t}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(t);if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);this.oldAssetsPath=Promise.resolve(e)}}if(this.isZipFile(o)){const e=w.resolve(S.tmpdir(),E.createHash("md5").update(o).digest("hex"));this.newAssetsPath=this.unzipFile(o,e).then(()=>this.normalizeAssetFolderPath(e)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(o))throw new Error(`Invalid current assets path ${o}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(o);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${o} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=n,this.mkdirpSync(this.destinationPath),this.changelogFilename=l||"CHANGELOG.html",i&&(this.templateIsValid(i)?this.changelogTemplate=i:this.logger.warn(s.colors.yellow("Invalid changelog template, using default"))),"function"==typeof r&&(this.diffFileTemplateHandler=r),"function"==typeof a&&(this.diffLineTemplateHandler=a),c&&(this.contextLines=c)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return y.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return y.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===y.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){y.existsSync(e)||y.mkdirSync(e,{recursive:!0})}async unzipFile(e,t){y.rmSync(t,{force:!0,recursive:!0}),await s.extractZipSafe(e,t)}normalizeAssetFolderPath(e){const t=y.readdirSync(e);return 1===t.length&&y.lstatSync(w.join(e,t[0])).isDirectory()?this.normalizeAssetFolderPath(w.join(e,t[0])):e}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?"-":" "}">${r=o??"",r.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var r}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(s.colors.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await P.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(I.test(e)&&(e=e.replace(I,"$1$3")),I.test(t)&&(t=t.replace(I,"$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 x,n=o.diff_linesToChars_(e,t),i=o.diff_main(n.chars1,n.chars2,!1);o.diff_charsToLines_(i,n.lineArray);let r=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:r+o+1,lineType:t})).slice(0,n);return-1!==t&&(r+=n),i}).flat()}async generateFilesDiff(e){if("equal"===e.state){const t=this.pathToPosix(w.join(".",e.relativePath,e.name1??"")),o=this.pathToPosix(w.join(".",e.relativePath,e.name2??""));return this.diffFileTemplate(`<span class="renamed"\n >Renamed <span class="from">${t}</span> -> <span class="to">${o}</span></span\n >`,this.diffTableTemplate(this.diffLineMessageTemplate("No changes")))}const t=e.path1&&e.name1?w.join(e.path1,e.name1):null,o=e.path2&&e.name2?w.join(e.path2,e.name2):null,n=this.pathToPosix(w.join(".",e.relativePath,(e.name1||e.name2)??""));if("left"===e.state&&t)return this.diffFileTemplate(`<span class="removed">Removed ${n}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File removed")));if("right"===e.state&&o)return this.diffFileTemplate(`<span class="added">Added ${n}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File added")));if("distinct"===e.state&&t&&o){const i=this.pathToPosix(w.join(".",e.relativePath,e.name1??"")),r=this.pathToPosix(w.join(".",e.relativePath,e.name2??"")),s=e.name1!==e.name2?`<span class="renamed"\n >Renamed <span class="from">${i}</span> -> <span class="to">${r}</span></span\n >`:n;return this.diffFileTemplate(s,await f.isBinaryFile(t)||await f.isBinaryFile(o)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(y.readFileSync(t,"utf-8"),y.readFileSync(o,"utf-8"))))}return""}async generateChangelog(){this.logger.info(s.colors.green("Generating changelog"));const e=await this.generateAssetFoldersDiff(),t=(await Promise.all(e.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(s.colors.green("Writing changelog file"));const o=this.changelogTemplate.split("%FILES%");o.splice(1,0,t);const n=o.join("");y.writeFileSync(w.join(this.destinationPath,this.changelogFilename),n),this.logger.info(s.colors.green(`Changelog file written to ${w.join(this.destinationPath,this.changelogFilename)}`))}}class _{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await T({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class ${wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new m.WebSocketServer({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===m.WebSocket.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===s.PP_DEV_HMR_WS_PATH&&(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){s.createLogger().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===m.WebSocket.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}}const j=r.cac("pp-dev");function A(e,t,o){const n=[...s.PP_DEV_CONFIG_NAMES,"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(t=>w.join(e,t)),r=i.watch(n,{ignored:e=>{const t=w.basename(e);return/(^|[\/\\])\../.test(e)&&!t.startsWith(".env")&&!t.startsWith(".pp-dev")&&!t.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let a=null;return r.on("change",n=>{o(s.colors.blue(`š§ Config file changed: ${w.relative(e,n)}`)),a&&clearTimeout(a),a=setTimeout(async()=>{try{o(s.colors.yellow("š Restarting dev server due to config change...")),await t()}catch(e){o(s.colors.red(`ā Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{o(s.colors.red(`ā Config watcher error: ${e}`))}),{watcher:r,restartCallback:t,logger:o}}function C(e){e.watcher&&e.watcher.close()}function N(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 R(e){const{changelog:t,executionRoot:o,newAssetsPath:n,backupsDirPath:i,changelogDestinationPath:r,logLevel:a}=e;let l;if("string"==typeof t)l=w.resolve(o,t);else{if(!y.existsSync(i))return void s.createLogger(a).warn(s.colors.yellow("backups directory not found, skipping changelog generation"));const e=y.readdirSync(i,{withFileTypes:!0});if(!e.length)return void s.createLogger(a).warn(s.colors.yellow("no backups found, skipping changelog generation"));const t=e.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!t.length)return void s.createLogger(a).warn(s.colors.yellow("no ZIP backups found, skipping changelog generation"));const o=t.reduce((e,t)=>y.statSync(w.resolve(i,e.name)).mtimeMs>y.statSync(w.resolve(i,t.name)).mtimeMs?e:t).name;l=w.resolve(i,o)}const c=new F({oldAssetsPath:l,newAssetsPath:n,destinationPath:r});await c.generateChangelog()}let M=global.__pp_dev_profile_session,q=0;const O=e=>{if(M)return new Promise((t,o)=>{M.post("Profiler.stop",(n,{profile:i})=>{if(n)o(n);else{const o=w.resolve(`./pp-dev-profile-${q++}.cpuprofile`);y.writeFileSync(o,JSON.stringify(i)),e(s.colors.yellow(`CPU profile written to ${s.colors.white(s.colors.dim(o))}`)),M=void 0,t()}})})},V=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function H(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}j.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"),j.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(e,t)=>{V(t);let o=null,i=null,r=!1;const c=e?w.resolve(process.cwd(),e):process.cwd(),d=s.createLogger(t.logLevel),p=async()=>{if(!r){r=!0;try{o&&(d.info(s.colors.yellow("š Stopping existing dev server...")),await o.close(),o=null);const{clearConfigCache:f,getConfig:u}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);f();const{createServer:g}=await(import("vite")),h=t.mode||"development",m=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(h,m);const v=await l.loadConfigFromFile({mode:h,command:"serve"},t.config,e,t.logLevel);let b=await a.getViteConfig(void 0,{mode:h,root:m});if(v){const{plugins:e,...t}=v.config;b=l.mergeConfig(b,t)}if(o=await g(l.mergeConfig(b,{root:e,base:t.base,mode:t.mode,configFile:t.config,logLevel:t.logLevel,clearScreen:t.clearScreen,optimizeDeps:{force:t.force},server:H(t),customLogger:d},!0)),!o.config.base||"/"===o.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!o.httpServer)throw new Error("HTTP server not available");await o.listen();const y=global.__pp_dev_start_time??!1,P=y?s.colors.dim(`ready in ${s.colors.reset(s.colors.bold(Math.ceil(n.performance.now()-y)))} ms`):"";d.info(`\n ${s.colors.green(`${s.colors.bold("PP-DEV")} v${s.VERSION}`)} ${P}\n`),o.printUrls();const x=await u(m);if(!1!==x.inspector?.enabled){const e=o.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${o.config.server.port??5173}`;d.info(`\n ${s.colors.cyan("š Request Inspector")} ${s.colors.dim(t+s.INSPECTOR_PATH)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=s.createLogger();t.print&&o.info(s.colors.dim(s.colors.green(" ā"))+s.colors.dim(" press ")+s.colors.bold("h")+s.colors.dim(" to show help"));const n=(t.customShortcuts??[]).filter(L).concat(D);k?.(),k=null;let i=!1;const r=process.stdin.isPaused(),a=process.stdin,l=Boolean(a.isRaw),c=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(["",s.colors.bold(" Shortcuts"),...n.map(e=>s.colors.dim(" press ")+s.colors.bold(e.key)+s.colors.dim(` to ${e.description}`))].join("\n"));const r=n.find(e=>e.key===t);r&&(i=!0,await r.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",c).setEncoding("utf8").resume();const d=e.httpServer,p=()=>{k===p&&(d.removeListener("close",p),process.stdin.off("data",c),l||process.stdin.setRawMode(!1),r&&process.stdin.pause(),k=null)};k=p,d.on("close",p)}(o,{print:!0,customShortcuts:[...M?[{key:"p",description:"start/stop the profiler",async action(e){if(M)await O(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{M=new e.Session,M.connect(),M.post("Profiler.enable",()=>{M?.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("/")}`}})}}]}),i||(i=A(c,p,d.info),d.info(s.colors.blue("š§ Config file watcher started"))),r=!1}catch(e){r=!1,d.error(s.colors.red(`error when starting dev server:\n${e.stack}`),{error:e}),O(d.info),process.exit(1)}}},f=async e=>{d.info(s.colors.yellow(`\nš Received ${e}, shutting down gracefully...`));try{i&&(C(i),i=null),o&&(await o.close(),o=null),O(d.info),d.info(s.colors.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){d.error(s.colors.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>f("SIGINT")),process.on("SIGTERM",()=>f("SIGTERM")),process.on("uncaughtException",e=>{d.error(s.colors.red(`ā Uncaught Exception: ${e}`)),f("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(s.colors.red(`ā Unhandled Rejection at: ${t}, reason: ${e}`)),f("unhandledRejection")}),await p()}),j.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(e,t)=>{V(t);let n=null,i=null,r=null,l=null,d=!1;const p=s.createLogger(),f=async()=>{if(!d){d=!0;try{const{next:g,constants:h}=await a.safeNextImport(),{PHASE_DEVELOPMENT_SERVER:m}=h;r&&(await r.close(),r=null),i&&(p.info(s.colors.yellow("š Stopping existing Next.js server...")),await new Promise(e=>{i.close(()=>{i=null,e()})})),n&&"function"==typeof n.close&&(await n.close(),n=null);const{clearConfigCache:v}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);v();const{join:b,basename:P}=await(import("path")),{createServer:x}=await(import("http")),S=await(import("next/dist/server/config.js")),E=S.default.default||S["module.exports"].default||S.default,T=H(t),L=e?b(process.cwd(),e):process.cwd();a.loadPPDevEnv(t.mode||"development",L),p.info(L);const k=await E(m,L);let D=k?.ppDev||{};if(0===Object.keys(D).length)try{const{getConfig:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config),t=await e(L);Object.keys(t).length>0?(D=t,p.info(s.colors.blue("š§ Loaded pp-dev config from standalone config file"))):p.info(s.colors.yellow("ā ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){p.info(s.colors.yellow("ā ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else p.info(s.colors.blue("š§ Loaded pp-dev config from Next.js config"));let I=null;try{const{getPkg:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);I=e(L).name}catch{I=P(L)}s.validatePPDevConfig(D,I??"");const F=s.normalizePPDevConfig(D,I??""),_=F.backendBaseURL??"http://localhost:8080",j=F.templateLess,R=F.v7Features,M=F.disableSSLValidation,q=F.enableProxyCache,O=F.proxyCacheTTL,V=F.personalAccessToken,U=F.miHudLess,z=F.inspectorEnabled,W=F.inspectorMaxMemory,B=F.inspectorCaptureLimit,Z=F.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,G=k?.basePath;let J="";G?J=G:(J=j?s.PATH_PAGE_PREFIX:R?s.PATH_TEMPLATE_LOCAL_PREFIX:s.PATH_TEMPLATE_PREFIX,J+=`/${I}`);const X=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}:{}}(t),K=async e=>{delete process.env.TURBOPACK,n&&"function"==typeof n.close&&(await n.close(),n=null);const t={dev:!0,customServer:!0,hostname:T.host||"localhost",port:T.port,dir:L,conf:{...k,basePath:J,assetPrefix:J}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),n=g(t),await n.prepare()};if(X.webpack)await K({webpack:!0});else if(X.turbopack)try{await K({turbopack:!0})}catch(e){if(!N(e))throw e;p.warn(s.colors.yellow("ā Turbopack is unavailable (native bindings). Falling back to Webpack.")),await K({webpack:!0})}else try{await K({})}catch(e){if(!N(e))throw e;p.warn(s.colors.yellow("ā Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await K({webpack:!0})}if(!n)throw new Error("Next.js app failed to initialize");if(J.endsWith("/")||(J+="/"),"/"===J)throw new Error('basePath cannot be equal to "/" or equal to empty string');p.info(s.colors.green("ā
Next.js app prepared successfully")),p.info(s.colors.blue(`š§ pp-dev plugin configured for template: ${I}`)),p.info(s.colors.blue(`š§ Base path configured: ${J}`)),_&&(p.info(s.colors.blue(`š Backend URL: ${_}`)),p.info(s.colors.blue(`š Custom App ID: ${Z}`)));const Y=n.getRequestHandler(),Q="number"==typeof T.port?T.port:3e3,ee="string"==typeof T.host?T.host||"0.0.0.0":"localhost",te=new Set;i=x(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=c.parse(o,!0);if(ne.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(ie.length>0){let l=0;const d=()=>{if(l>=ie.length)return void r();const o=ie[l];l++,o(e,t,d)};return void d()}return void r()}let s=0;const a=()=>{if(s>=ne.length)return void r();const o=ne[s];s++,o(e,t,a)};return void a()}async function r(){if(n.startsWith(J))i=c.parse(o,!0);else{if(n===J.replace(/\/$/,"")){const e=o.replace(n,J);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:J}),void t.end()}await Y(e,t,i)}r()}catch(f){p.error(`Error handling request: ${f instanceof Error?f.message:String(f)}`,{error:f instanceof Error?f:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let oe=null,ne=[],ie=[];if(!1!==z){const e=new s.RequestStore(W);s.registerInspectorRoutes(s.internalServer,e,B);const t=s.createRequestCaptureMiddleware(e,B);ne.push(t)}if(_){const e=new URL(_).host,t=s.createUserHostGuard();ie.unshift(t),ne.unshift(t),_.startsWith("https://")&&(o.EventEmitter.defaultMaxListeners=Math.max(o.EventEmitter.defaultMaxListeners,20));const l={headers:{host:e,referer:_,origin:_.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:Z,templateLess:j,disableSSLValidation:M,v7Features:R,personalAccessToken:V??process.env.MI_ACCESS_TOKEN};oe=new s.MiAPI(_,l);const c=s.initPPRedirect(J,I??void 0),d=(e,t,o)=>{c(e,t,o)};ie.push(d),ne.push(d);const f=a.createDevPanelAssetMiddleware(J);if(ie.push(f),ne.push(f),q){let e=+O;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={devServer:{middlewares:{use:e=>e},config:{logger:console}},ttl:e},o=s.initProxyCache(t),n=(e,t,n)=>{o(e,t,n)};ne.push(n),p.info(s.colors.blue(`š§ Proxy cache middleware added with TTL: ${e}ms`))}const g=new RegExp(`^((${u=J,u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=s.initLoadPPData(g,oe,Object.assign({base:J},l,{miHudLess:U})),v=(e,t,o)=>{m(e,t,o)};ne.push(v);const b=J.endsWith("/")?J.substring(0,J.length-1):J,x={middlewares:{use:e=>e},config:{logger:console}},S=s.initProxy({devServer:x,baseURL:_,proxyIgnore:["/@vite","/@metricinsights","/@",b,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:M,miAPI:oe,templateName:I??void 0}),T=(e,t,o)=>{S(e,t,o)};ne.push(T);const D=s.internalServer,A=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(s.INSPECTOR_PATH)||e.url?.startsWith(s.VARIABLES_EDITOR_PATH)){return void D(e,t,()=>{})}o()};ie.push(A),ne.push(A);const C=s.initRewriteResponse(e=>{const t=e.split("?")[0];return t.startsWith(J)&&!t.includes("/_next/")},(t,o)=>{const n=oe.buildPage(t,U),i=a.injectDevPanel(n,J,{backendBaseURL:_,templateLess:j,appId:Z,devPanelPosition:F.devPanelPosition,devPanelHidden:F.devPanelHidden,devPanelAutoHide:F.devPanelAutoHide});return Buffer.from(s.urlReplacer(e,o.headers.host??"",i))}),N=(e,t,o)=>{C(e,t,o)};ne.push(N),r=new $;let H=k?.distDir;try{process.env[s.PP_DEV_NEXT_BUILD_ENV_VAR]="1";const e=await E(h.PHASE_PRODUCTION_BUILD,L);H=e?.distDir??H}catch{}const z=(H??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),W=z&&".next"!==z?z:"out";let B,G="0.0.0";try{const e=JSON.parse(y.readFileSync(w.join(L,"package.json"),"utf-8"));G="string"==typeof e.version?e.version:G,B="string"==typeof e.repository?e.repository:e.repository?.url}catch{}const X=new s.DistService(I??P(L),{root:L,backupFolder:w.resolve(L,F.syncBackupsDir),nextBuild:{projectRoot:L,distDir:W,packageVersion:G,packageRepositoryUrl:B}}),K={ws:r.ws,config:{clientInjectionPlugin:{v7Features:R}}};new s.ClientService(K,{distService:X,miAPI:oe}),s.registerVariablesEditorRoutes(s.internalServer,{distService:X,miAPI:oe}),s.registerUserRoutes(s.internalServer,{miAPI:oe}),s.startKeepingUsers({persist:F.persistUsers,miAPI:oe,projectRoot:L,miUrl:_});const Y="function"==typeof n?.getUpgradeHandler?n.getUpgradeHandler():null;i.on("upgrade",(e,t,o)=>{r?.handleUpgrade(e,t,o)||(Y?Y(e,t,o):t.destroy())}),p.info(s.colors.blue(`š§ ${ne.length} pp-dev middlewares initialized`)),p.info(s.colors.blue(`š§ ${ie.length} essential middlewares for internal routes`)),p.info(s.colors.blue(`š§ MiAPI initialized for backend: ${_}`)),p.info(s.colors.blue(`š§ Custom App ID: ${Z}`))}i.listen(Q,ee,()=>{p.info(s.colors.green(`ā
pp-dev Next.js server running at http://${ee}:${Q}`)),p.info(s.colors.blue(`š± Next.js app accessible at http://${ee}:${Q}${J}`)),!1!==z&&p.info(s.colors.cyan(`š Request Inspector: http://${ee}:${Q}${s.INSPECTOR_PATH}`)),p.info(s.colors.blue("š§ Base path handling active")),l||(l=A(L,f,p.info),p.info(s.colors.blue("š§ Config file watcher started"))),i.on("connection",e=>{te.add(e),e.on("close",()=>te.delete(e))});const e=async e=>{p.info(s.colors.yellow(`\nš Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{p.info(s.colors.yellow("ā° Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{l&&(C(l),l=null);for(const e of Array.from(te))e.destroy();te.clear(),r&&(await r.close(),r=null),await new Promise(e=>{i.close(()=>{p.info(s.colors.yellow("š HTTP server closed")),e()})}),n&&"function"==typeof n.close&&(await n.close(),p.info(s.colors.yellow("š Next.js app closed"))),clearTimeout(t),p.info(s.colors.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),p.error(s.colors.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};let t=process;if("function"!=typeof process.on){const e=globalThis.process||global.process;e&&"function"==typeof e.on&&(t=e,p.info(s.colors.green("ā
Using global process object for event handlers")))}if("function"==typeof t.on)try{t.on("SIGINT",()=>e("SIGINT")),t.on("SIGTERM",()=>e("SIGTERM")),t.on("uncaughtException",t=>{p.error(s.colors.red(`ā Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{p.error(s.colors.red(`ā Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),p.info(s.colors.green("ā
Process event handlers registered successfully"))}catch(e){p.warn(s.colors.yellow(`ā ļø Failed to register process event handlers: ${e}`))}else p.warn(s.colors.yellow("ā ļø process.on is not available, graceful shutdown handlers will not be registered")),p.info(s.colors.blue("š” This might be due to bundling or environment constraints"))}),d=!1}catch(e){d=!1,p.error(s.colors.red(`ā Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(p.error(s.colors.red("ā Next.js Peer Dependency Error:")),p.error(s.colors.red(e.message)),p.error(s.colors.yellow("\nš” To fix this issue:")),p.error(s.colors.blue(" 1. Install Next.js in your project:")),p.error(s.colors.white(" npm install next@^16")),p.error(s.colors.blue(" 2. Or use yarn:")),p.error(s.colors.white(" yarn add next@^16")),p.error(s.colors.blue(" 3. Or use pnpm:")),p.error(s.colors.white(" pnpm add next@^16")),p.error(s.colors.yellow("\nš For more information, see:")),p.error(s.colors.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var u}},u=async e=>{p.info(s.colors.yellow(`\nš Received ${e}, shutting down gracefully...`));try{l&&(C(l),l=null),r&&(await r.close(),r=null),i&&await new Promise(e=>{i.close(()=>{i=null,e()})}),n&&"function"==typeof n.close&&(await n.close(),n=null),p.info(s.colors.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){p.error(s.colors.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>u("SIGINT")),process.on("SIGTERM",()=>u("SIGTERM")),process.on("uncaughtException",e=>{p.error(s.colors.red(`ā Uncaught Exception: ${e}`)),u("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{p.error(s.colors.red(`ā Unhandled Rejection at: ${t}, reason: ${e}`)),u("unhandledRejection")}),await f()}),j.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(e,t)=>{V(t);const o=H(t),n=a.resolveBuildCliOverrides(t);try{const i=t.mode||"production",r=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(i,r);const s=await l.loadConfigFromFile({mode:i,command:"build"},t.config,e,t.logLevel);let c=await a.getViteConfig(n,{mode:i,root:r});if(s){const{plugins:e,...t}=s.config;c=l.mergeConfig(c,t)}const d=l.mergeConfig(c,{root:e,base:t.base,mode:t.mode,configFile:t.config,logLevel:t.logLevel,clearScreen:t.clearScreen,optimizeDeps:{force:t.force},build:o},!0);if(await l.build(d),o.changelog){const n=e||process.cwd(),i=d.build?.outDir||"dist";let r="dist-zip";d.ppDevConfig&&(!1===d.ppDevConfig.distZip?r=i:"object"==typeof d.ppDevConfig.distZip&&"string"==typeof d.ppDevConfig.distZip.outDir&&(r=d.ppDevConfig.distZip.outDir)),await R({changelog:o.changelog,executionRoot:n,newAssetsPath:w.resolve(n,i),backupsDirPath:w.resolve(n,d.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:w.resolve(n,r),logLevel:t.logLevel})}}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{O(e=>s.createLogger(t.logLevel).info(e))}}),j.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(e,t)=>{V(t);const o=s.createLogger(t.logLevel),n=e?w.resolve(process.cwd(),e):process.cwd(),i=a.resolveBuildCliOverrides(t);process.env[s.PP_DEV_NEXT_BUILD_ENV_VAR]="1";try{a.loadPPDevEnv(t.mode||"production",n);const{constants:e}=await a.safeNextImport(),r=await(import("next/dist/server/config.js")),l=r.default.default||r["module.exports"].default||r.default,c=await l(e.PHASE_PRODUCTION_BUILD,n);let d,p=c?.ppDev||{};if(0===Object.keys(p).length){const{getConfig:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);p=await e(n)}try{const{getPkg:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);d=e(n).name}catch{d=w.basename(n)}const f=s.normalizePPDevConfig(p,d),u=a.applyDistZipOverride(f.distZip,i,s.createDefaultZipFileName(d)),g=a.applyVersionManifestOverride(f.versionPlugin,i),h=s.removeStaleDevTypes(n,c);h&&o.info(s.colors.dim(`[pp-dev] Removed stale dev route types: ${w.relative(n,h)}`)),o.info(s.colors.cyan("[pp-dev] Running `next build`...")),await s.runNextBuildProcess(n);const m="string"==typeof c?.distDir&&c.distDir?c.distDir:".next",v=".next"===m?"out":m,b=w.resolve(n,v);if(!y.existsSync(b)||!y.statSync(b).isDirectory())throw new Error(`Next.js build output directory not found: ${b}. "next-build" requires "output: 'export'" in next.config (static export).`);const P=JSON.parse(y.readFileSync(w.join(n,"package.json"),"utf-8"));if(!1!==g&&!1!==g.enabled&&(s.writeBuildVersionManifest({outDir:b,packageVersion:"string"==typeof P.version?P.version:"0.0.0",versionFileTemplate:g.versionFileTemplate,packageRepositoryUrl:"string"==typeof P.repository?P.repository:P.repository?.url,enabled:g.enabled}),o.info(s.colors.green(`ā
VERSION / BUILD-MANIFEST written to ${w.relative(n,b)}`))),!1!==u){const e=w.resolve(n,u.outDir),t=u.inDir?w.resolve(b,u.inDir):b,i=s.resolveOutputFilePath(e,u.outFileName,"ZIP output file name");y.mkdirSync(w.dirname(i),{recursive:!0});const r=await s.zipDirectoryToBuffer(t);y.writeFileSync(i,r),o.info(s.colors.green(`ā
Zip archive written to ${w.relative(n,i)}`))}if(t.changelog){const e=!1!==u?u.outDir:v;await R({changelog:t.changelog,executionRoot:n,newAssetsPath:b,backupsDirPath:w.resolve(n,f.syncBackupsDir),changelogDestinationPath:w.resolve(n,e),logLevel:t.logLevel})}}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{O(e=>s.createLogger(t.logLevel).info(e))}}),j.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(e,t,o)=>{V(o);const{oldAssetsPath:n=e,newAssetsPath:i=t,destination:r=".",filename:a="CHANGELOG.html",logLevel:l}=o,c=process.cwd();n&&i||(s.createLogger(l).error(s.colors.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const d=w.resolve(c,n),p=w.resolve(c,i),f=w.resolve(c,r),u=new F({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await u.generateChangelog()}),j.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(e,t,o)=>{V(o);const{source:n=e,destination:i=t,fontName:r="icon-font"}=o,a=process.cwd(),l=w.resolve(a,n),c=w.resolve(a,i),d=new _({sourceDir:l,outputDir:c,fontName:r}),p=s.createLogger(o.logLevel);p.info(`Generating icon font from SVG files in ${s.colors.dim(l)}`),await d.generate(),p.info(`Icon font generated and saved to ${s.colors.dim(c)}`)}),j.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(e,t)=>{V(t);try{const o=t.mode||"production",n=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(o,n);const i=await l.loadConfigFromFile({mode:o,command:"build"},t.config,e,t.logLevel);let r=await a.getViteConfig(void 0,{mode:o,root:n});if(i){const{plugins:e,...t}=i.config;r=l.mergeConfig(r,t)}const s=await l.resolveConfig(l.mergeConfig(r,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode}),"serve");await l.optimizeDeps(s,t.force,!0)}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),j.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(e,t)=>{V(t);try{const o=t.mode||"production",n=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(o,n);const i=await l.loadConfigFromFile({mode:o,command:"build"},t.config,e,t.logLevel);let r=await a.getViteConfig(void 0,{mode:o,root:n});if(i){const{plugins:e,...t}=i.config;r=l.mergeConfig(r,t)}(await l.preview(l.mergeConfig(r,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode,build:{outDir:t.outDir},preview:{port:t.port,strictPort:t.strictPort,host:t.host,https:t.https,open:t.open}}))).printUrls()}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{O(e=>s.createLogger(t.logLevel).info(e))}}),j.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(e,t)=>{const o=s.createLogger(t.logLevel),{isLegacyFlatConfig:n,isLegacyPPWatchConfig:i,isAlreadyMigrated:r,migrateLegacyFlatConfig:a,migratePPWatchConfig:l,generateConfigFileContent:c,discoverMigrateSource:d,loadPackageJsonMigrateConfig:p}=await Promise.resolve().then(()=>require("./migrate-Bk72Jr15.js")),f=t.format??"ts",u=!1!==t.backup,g=process.cwd(),h=d(g,e);h||(o.warn(s.colors.yellow("No pp-dev or pp-watch config file found in the current directory.")),o.info(s.colors.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:m,isWatchConfig:v,isPackageJsonConfig:b}=h;o.info(s.colors.blue(`Found config: ${w.relative(g,m)}`));const{getPkg:P}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config),x=P();let S,E={};try{if(/\.[cm]?ts$/i.test(m)){const e=await(import("esbuild")),{pathToFileURL:t}=await(import("url")),o=(await e.build({absWorkingDir:g,entryPoints:[m],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,n=`pp-migrate-tmp-${Date.now()}.mjs`;y.writeFileSync(n,o);try{const e=await(import(t(w.resolve(g,n)).toString()));E=e.default?.default??e.default??e}finally{y.existsSync(n)&&y.unlinkSync(n)}}else if(/\.[cm]?js$/i.test(m)){const{pathToFileURL:e}=await(import("url")),t=await(import(e(w.resolve(g,m)).toString()));E=t.default?.default??t.default??t}else b?E=p(m):m.endsWith(".json")&&(E=JSON.parse(y.readFileSync(m,"utf-8")))}catch(e){o.error(s.colors.red(`Failed to load config file: ${e.message}`)),process.exit(1)}E&&"object"==typeof E||(o.error(s.colors.red("Config file did not export a valid object.")),process.exit(1)),r(E)?(o.info(s.colors.green("Config is already in 1.0 format ā nothing to migrate.")),process.exit(0)):v||i(E)?(o.info(s.colors.blue("Detected pp-watch config format ā migrating to 1.0")),S=l(E)):n(E)?(o.info(s.colors.blue("Detected 0.x flat config format ā migrating to 1.0")),S=a(E,x.name)):(o.warn(s.colors.yellow("Could not detect config format. No known keys found.")),process.exit(1));const T=c(S,f),L=t.output??w.join(g,`pp-dev.config.${f}`);if(t.dryRun&&(o.info(s.colors.green(`\n--- Migrated config (dry-run) ā ${w.relative(g,L)} ---\n`)),process.exit(0)),u&&!b&&y.existsSync(m)){const e=`${m}.bak`;y.copyFileSync(m,e),o.info(s.colors.blue(`Backed up original to: ${w.relative(g,e)}`))}y.writeFileSync(L,T,"utf-8"),o.info(s.colors.green(`ā
Migration complete ā ${w.relative(g,L)}`)),b?o.info(s.colors.yellow('You can now remove the "pp-dev" field from package.json.')):m!==L&&y.existsSync(m)&&o.info(s.colors.yellow(`You can now delete the old config: ${w.relative(g,m)}`))}),j.help(),j.version(s.VERSION),j.parse(),exports.stopProfiler=O;
|
|
1
|
+
"use strict";const e=require("path"),t=require("fs"),o=require("node:events"),n=require("node:perf_hooks"),i=require("chokidar"),r=require("cac"),s=require("./plugin-DU-SQ4cy.js"),a=require("./index-Clb1BxEO.js"),l=require("vite"),c=require("url"),d=require("dir-compare"),p=require("diff-match-patch"),f=require("isbinaryfile"),u=require("os"),g=require("crypto"),h=require("svgtofont"),m=require("ws");require("http-proxy-middleware"),require("picocolors"),require("node:string_decoder"),require("axios"),require("node:http"),require("node:https"),require("jsdom"),require("process"),require("child_process"),require("node:path"),require("jszip"),require("module"),require("zlib"),require("express"),require("node:crypto"),require("node:fs"),require("node:os"),require("./helpers.js"),require("ejs");const v=e=>e&&"object"==typeof e&&"default"in e?e.default:e;function b(e){if(e&&"object"==typeof e&&"default"in e)return e;const t=Object.create(null);if(e)for(const o in e)t[o]=e[o];return t.default=e,Object.freeze(t)}const w=b(e),y=b(t),P=b(d),S=v(p),x=b(u),E=b(g),T=v(h);function L(e){return null!=e&&!1!==e}let k=null;const D=[{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 F=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class I{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(e){const{oldAssetsPath:t,newAssetsPath:o,destinationPath:n,changelogTemplate:i,diffFileTemplateHandler:r,diffLineTemplateHandler:a,changelogFilename:l,contextLines:c}=e;if(this.logger=s.createLogger(),!t||!o||!n)throw new Error("Previous assets path, current assets path and destination path are required");if(t===o)throw new Error("Previous and current assets paths must be different");if(!this.isExists(t))throw new Error(`Previous assets path ${t} does not exist`);if(!this.isExists(o))throw new Error(`Current assets path ${o} does not exist`);if(this.isZipFile(t)){const e=w.resolve(x.tmpdir(),E.createHash("md5").update(t).digest("hex"));this.oldAssetsPath=this.unzipFile(t,e).then(()=>this.normalizeAssetFolderPath(e)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);return e})}else{if(!this.isFolder(t))throw new Error(`Invalid previous assets path ${t}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(t);if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);this.oldAssetsPath=Promise.resolve(e)}}if(this.isZipFile(o)){const e=w.resolve(x.tmpdir(),E.createHash("md5").update(o).digest("hex"));this.newAssetsPath=this.unzipFile(o,e).then(()=>this.normalizeAssetFolderPath(e)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(o))throw new Error(`Invalid current assets path ${o}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(o);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${o} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=n,this.mkdirpSync(this.destinationPath),this.changelogFilename=l||"CHANGELOG.html",i&&(this.templateIsValid(i)?this.changelogTemplate=i:this.logger.warn(s.colors.yellow("Invalid changelog template, using default"))),"function"==typeof r&&(this.diffFileTemplateHandler=r),"function"==typeof a&&(this.diffLineTemplateHandler=a),c&&(this.contextLines=c)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return y.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return y.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===y.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){y.existsSync(e)||y.mkdirSync(e,{recursive:!0})}async unzipFile(e,t){y.rmSync(t,{force:!0,recursive:!0}),await s.extractZipSafe(e,t)}normalizeAssetFolderPath(e){const t=y.readdirSync(e);return 1===t.length&&y.lstatSync(w.join(e,t[0])).isDirectory()?this.normalizeAssetFolderPath(w.join(e,t[0])):e}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?"-":" "}">${r=o??"",r.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var r}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(s.colors.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await P.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(F.test(e)&&(e=e.replace(F,"$1$3")),F.test(t)&&(t=t.replace(F,"$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 S,n=o.diff_linesToChars_(e,t),i=o.diff_main(n.chars1,n.chars2,!1);o.diff_charsToLines_(i,n.lineArray);let r=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:r+o+1,lineType:t})).slice(0,n);return-1!==t&&(r+=n),i}).flat()}async generateFilesDiff(e){if("equal"===e.state){const t=this.pathToPosix(w.join(".",e.relativePath,e.name1??"")),o=this.pathToPosix(w.join(".",e.relativePath,e.name2??""));return this.diffFileTemplate(`<span class="renamed"\n >Renamed <span class="from">${t}</span> -> <span class="to">${o}</span></span\n >`,this.diffTableTemplate(this.diffLineMessageTemplate("No changes")))}const t=e.path1&&e.name1?w.join(e.path1,e.name1):null,o=e.path2&&e.name2?w.join(e.path2,e.name2):null,n=this.pathToPosix(w.join(".",e.relativePath,(e.name1||e.name2)??""));if("left"===e.state&&t)return this.diffFileTemplate(`<span class="removed">Removed ${n}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File removed")));if("right"===e.state&&o)return this.diffFileTemplate(`<span class="added">Added ${n}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File added")));if("distinct"===e.state&&t&&o){const i=this.pathToPosix(w.join(".",e.relativePath,e.name1??"")),r=this.pathToPosix(w.join(".",e.relativePath,e.name2??"")),s=e.name1!==e.name2?`<span class="renamed"\n >Renamed <span class="from">${i}</span> -> <span class="to">${r}</span></span\n >`:n;return this.diffFileTemplate(s,await f.isBinaryFile(t)||await f.isBinaryFile(o)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(y.readFileSync(t,"utf-8"),y.readFileSync(o,"utf-8"))))}return""}async generateChangelog(){this.logger.info(s.colors.green("Generating changelog"));const e=await this.generateAssetFoldersDiff(),t=(await Promise.all(e.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(s.colors.green("Writing changelog file"));const o=this.changelogTemplate.split("%FILES%");o.splice(1,0,t);const n=o.join("");y.writeFileSync(w.join(this.destinationPath,this.changelogFilename),n),this.logger.info(s.colors.green(`Changelog file written to ${w.join(this.destinationPath,this.changelogFilename)}`))}}class _{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await T({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class ${wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new m.WebSocketServer({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===m.WebSocket.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===s.PP_DEV_HMR_WS_PATH&&(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){s.createLogger().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===m.WebSocket.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 C(e){return e instanceof Error?e.stack??e.message:String(e)}function j({logger:e,knownRejections:t=[],shutdown:o,shutdownTimeoutMs:n=5e3,processRef:i=process}){let r=!1,a=0;const l=async(t,l)=>{if((e=>{a=Math.max(a,e)})(l),r)return void("SIGINT"!==t&&"SIGTERM"!==t||(e.warn(s.colors.yellow(`\nā ļø Received ${t} again, exiting without waiting for the shutdown`)),i.exit(a)));r=!0,e.info(s.colors.yellow(`\nš Received ${t}, shutting down gracefully...`));const c=setTimeout(()=>{e.error(s.colors.red(`ā° Shutdown did not finish within ${n} ms, forcing exit`)),i.exit(1)},n);try{await o(),clearTimeout(c),e.info(s.colors.green("ā
Graceful shutdown completed")),i.exit(a)}catch(t){clearTimeout(c),e.error(s.colors.red(`ā Error during graceful shutdown: ${C(t)}`)),i.exit(1)}},c=()=>{l("SIGINT",0)},d=()=>{l("SIGTERM",0)},p=t=>{e.error(s.colors.red(`ā Uncaught exception: ${C(t)}`)),l("uncaughtException",1)},f=o=>{const n=t.find(e=>e.matches(o));n?e.info(s.colors.dim(n.message)):e.error(s.colors.red(`ā Unhandled promise rejection (the server keeps running): ${C(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 A={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 N=r.cac("pp-dev");function R(e,t,o){const n=[...s.PP_DEV_CONFIG_NAMES,"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(t=>w.join(e,t)),r=i.watch(n,{ignored:e=>{const t=w.basename(e);return/(^|[\/\\])\../.test(e)&&!t.startsWith(".env")&&!t.startsWith(".pp-dev")&&!t.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let a=null;return r.on("change",n=>{o(s.colors.blue(`š§ Config file changed: ${w.relative(e,n)}`)),a&&clearTimeout(a),a=setTimeout(async()=>{try{o(s.colors.yellow("š Restarting dev server due to config change...")),await t()}catch(e){o(s.colors.red(`ā Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{o(s.colors.red(`ā Config watcher error: ${e}`))}),{watcher:r,restartCallback:t,logger:o}}function M(e){e.watcher&&e.watcher.close()}function q(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 O(e){const{changelog:t,executionRoot:o,newAssetsPath:n,backupsDirPath:i,changelogDestinationPath:r,logLevel:a}=e;let l;if("string"==typeof t)l=w.resolve(o,t);else{if(!y.existsSync(i))return void s.createLogger(a).warn(s.colors.yellow("backups directory not found, skipping changelog generation"));const e=y.readdirSync(i,{withFileTypes:!0});if(!e.length)return void s.createLogger(a).warn(s.colors.yellow("no backups found, skipping changelog generation"));const t=e.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!t.length)return void s.createLogger(a).warn(s.colors.yellow("no ZIP backups found, skipping changelog generation"));const o=t.reduce((e,t)=>y.statSync(w.resolve(i,e.name)).mtimeMs>y.statSync(w.resolve(i,t.name)).mtimeMs?e:t).name;l=w.resolve(i,o)}const c=new I({oldAssetsPath:l,newAssetsPath:n,destinationPath:r});await c.generateChangelog()}let V=global.__pp_dev_profile_session,H=0;const z=e=>{if(V)return new Promise((t,o)=>{V.post("Profiler.stop",(n,{profile:i})=>{if(n)o(n);else{const o=w.resolve(`./pp-dev-profile-${H++}.cpuprofile`);y.writeFileSync(o,JSON.stringify(i)),e(s.colors.yellow(`CPU profile written to ${s.colors.white(s.colors.dim(o))}`)),V=void 0,t()}})})},U=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function W(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}N.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"),N.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(e,t)=>{U(t);let o=null,i=null,r=!1;const c=e?w.resolve(process.cwd(),e):process.cwd(),d=s.createLogger(t.logLevel),p=async()=>{if(!r){r=!0;try{o&&(d.info(s.colors.yellow("š Stopping existing dev server...")),await o.close(),o=null);const{clearConfigCache:f,getConfig:u}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);f();const{createServer:g}=await(import("vite")),h=t.mode||"development",m=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(h,m);const v=await l.loadConfigFromFile({mode:h,command:"serve"},t.config,e,t.logLevel);let b=await a.getViteConfig(void 0,{mode:h,root:m});if(v){const{plugins:e,...t}=v.config;b=l.mergeConfig(b,t)}if(o=await g(l.mergeConfig(b,{root:e,base:t.base,mode:t.mode,configFile:t.config,logLevel:t.logLevel,clearScreen:t.clearScreen,optimizeDeps:{force:t.force},server:W(t),customLogger:d},!0)),!o.config.base||"/"===o.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!o.httpServer)throw new Error("HTTP server not available");await o.listen();const y=global.__pp_dev_start_time??!1,P=y?s.colors.dim(`ready in ${s.colors.reset(s.colors.bold(Math.ceil(n.performance.now()-y)))} ms`):"";d.info(`\n ${s.colors.green(`${s.colors.bold("PP-DEV")} v${s.VERSION}`)} ${P}\n`),o.printUrls();const S=await u(m);if(!1!==S.inspector?.enabled){const e=o.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${o.config.server.port??5173}`;d.info(`\n ${s.colors.cyan("š Request Inspector")} ${s.colors.dim(t+s.INSPECTOR_PATH)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=s.createLogger();t.print&&o.info(s.colors.dim(s.colors.green(" ā"))+s.colors.dim(" press ")+s.colors.bold("h")+s.colors.dim(" to show help"));const n=(t.customShortcuts??[]).filter(L).concat(D);k?.(),k=null;let i=!1;const r=process.stdin.isPaused(),a=process.stdin,l=Boolean(a.isRaw),c=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(["",s.colors.bold(" Shortcuts"),...n.map(e=>s.colors.dim(" press ")+s.colors.bold(e.key)+s.colors.dim(` to ${e.description}`))].join("\n"));const r=n.find(e=>e.key===t);r&&(i=!0,await r.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",c).setEncoding("utf8").resume();const d=e.httpServer,p=()=>{k===p&&(d.removeListener("close",p),process.stdin.off("data",c),l||process.stdin.setRawMode(!1),r&&process.stdin.pause(),k=null)};k=p,d.on("close",p)}(o,{print:!0,customShortcuts:[...V?[{key:"p",description:"start/stop the profiler",async action(e){if(V)await z(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{V=new e.Session,V.connect(),V.post("Profiler.enable",()=>{V?.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("/")}`}})}}]}),i||(i=R(c,p,d.info),d.info(s.colors.blue("š§ Config file watcher started"))),r=!1}catch(e){r=!1,d.error(s.colors.red(`error when starting dev server:\n${e.stack}`),{error:e}),z(d.info),process.exit(1)}}};j({logger:d,shutdown:async()=>{i&&(M(i),i=null),o&&(await o.close(),o=null),z(d.info)}}),await p()}),N.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(e,t)=>{U(t);let n=null,i=null,r=null,l=null,d=!1;const p=new Set,f=s.createLogger(),u=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 r=n,s=new Map(e.map(e=>[e,o(e).filter(t=>!r.get(e).has(t))]));let a=0;if(i)for(const[e,o]of i){const n=new Set(s.get(e).map(e=>e.toString()));for(const i of o)n.has(i.toString())&&(t.off(e,i),a+=1)}return i=s,n=null,a}}}(),g=async()=>{n&&"function"==typeof n.close&&await n.close(),n=null},h=async()=>{const e=i;if(e){for(const e of p)e.destroy();p.clear(),await new Promise(t=>{e.close(()=>t())}),i===e&&(i=null)}},m=async()=>{if(!d){d=!0;try{const{next:b,constants:P}=await a.safeNextImport(),{PHASE_DEVELOPMENT_SERVER:S}=P;r&&(await r.close(),r=null),i&&(f.info(s.colors.yellow("š Stopping existing Next.js server...")),await h()),await g();const{clearConfigCache:x}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);x();const{join:E,basename:T}=await(import("path")),{createServer:L}=await(import("http")),k=await(import("next/dist/server/config.js")),D=k.default.default||k["module.exports"].default||k.default,F=W(t),I=e?E(process.cwd(),e):process.cwd();a.loadPPDevEnv(t.mode||"development",I),f.info(I);const _=await D(S,I);let C=_?.ppDev||{};if(0===Object.keys(C).length)try{const{getConfig:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config),t=await e(I);Object.keys(t).length>0?(C=t,f.info(s.colors.blue("š§ Loaded pp-dev config from standalone config file"))):f.info(s.colors.yellow("ā ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){f.info(s.colors.yellow("ā ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else f.info(s.colors.blue("š§ Loaded pp-dev config from Next.js config"));let j=null;try{const{getPkg:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);j=e(I).name}catch{j=T(I)}s.validatePPDevConfig(C,j??"");const A=s.normalizePPDevConfig(C,j??""),N=A.backendBaseURL??"http://localhost:8080",M=A.templateLess,O=A.v7Features,V=A.disableSSLValidation,H=A.enableProxyCache,z=A.proxyCacheTTL,U=A.personalAccessToken,B=A.miHudLess,Z=A.inspectorEnabled,G=A.inspectorMaxMemory,J=A.inspectorCaptureLimit,X=A.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,K=_?.basePath;let Y="";K?Y=K:(Y=M?s.PATH_PAGE_PREFIX:O?s.PATH_TEMPLATE_LOCAL_PREFIX:s.PATH_TEMPLATE_PREFIX,Y+=`/${j}`);const Q=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}:{}}(t),ee=async e=>{delete process.env.TURBOPACK,await g();const t={dev:!0,customServer:!0,hostname:F.host||"localhost",port:F.port,dir:I,conf:{..._,basePath:Y,assetPrefix:Y}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),u.beforeCreate(),n=b(t),await n.prepare(),u.afterCreate()};if(Q.webpack)await ee({webpack:!0});else if(Q.turbopack)try{await ee({turbopack:!0})}catch(e){if(!q(e))throw e;f.warn(s.colors.yellow("ā Turbopack is unavailable (native bindings). Falling back to Webpack.")),await ee({webpack:!0})}else try{await ee({})}catch(e){if(!q(e))throw e;f.warn(s.colors.yellow("ā Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await ee({webpack:!0})}if(!n)throw new Error("Next.js app failed to initialize");if(Y.endsWith("/")||(Y+="/"),"/"===Y)throw new Error('basePath cannot be equal to "/" or equal to empty string');f.info(s.colors.green("ā
Next.js app prepared successfully")),f.info(s.colors.blue(`š§ pp-dev plugin configured for template: ${j}`)),f.info(s.colors.blue(`š§ Base path configured: ${Y}`)),N&&(f.info(s.colors.blue(`š Backend URL: ${N}`)),f.info(s.colors.blue(`š Custom App ID: ${X}`)));const te=n.getRequestHandler(),oe="number"==typeof F.port?F.port:3e3,ne="string"==typeof F.host?F.host||"0.0.0.0":"localhost";i=L(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=c.parse(o,!0);if(re.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(se.length>0){let l=0;const d=()=>{if(l>=se.length)return void r();const o=se[l];l++,o(e,t,d)};return void d()}return void r()}let s=0;const a=()=>{if(s>=re.length)return void r();const o=re[s];s++,o(e,t,a)};return void a()}async function r(){if(n.startsWith(Y))i=c.parse(o,!0);else{if(n===Y.replace(/\/$/,"")){const e=o.replace(n,Y);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:Y}),void t.end()}await te(e,t,i)}r()}catch(p){f.error(`Error handling request: ${p instanceof Error?p.message:String(p)}`,{error:p instanceof Error?p:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let ie=null,re=[],se=[];if(!1!==Z){const e=new s.RequestStore(G);s.registerInspectorRoutes(s.internalServer,e,J);const t=s.createRequestCaptureMiddleware(e,J);re.push(t)}if(N){const e=new URL(N).host,t=s.createUserHostGuard();se.unshift(t),re.unshift(t),N.startsWith("https://")&&(o.EventEmitter.defaultMaxListeners=Math.max(o.EventEmitter.defaultMaxListeners,20));const l={headers:{host:e,referer:N,origin:N.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:X,templateLess:M,disableSSLValidation:V,v7Features:O,personalAccessToken:U??process.env.MI_ACCESS_TOKEN};ie=new s.MiAPI(N,l);const c=s.initPPRedirect(Y,j??void 0),d=(e,t,o)=>{c(e,t,o)};se.push(d),re.push(d);const p=a.createDevPanelAssetMiddleware(Y);if(se.push(p),re.push(p),H){let e=+z;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={devServer:{middlewares:{use:e=>e},config:{logger:console}},ttl:e},o=s.initProxyCache(t),n=(e,t,n)=>{o(e,t,n)};re.push(n),f.info(s.colors.blue(`š§ Proxy cache middleware added with TTL: ${e}ms`))}const u=new RegExp(`^((${v=Y,v.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),g=s.initLoadPPData(u,ie,Object.assign({base:Y},l,{miHudLess:B})),h=(e,t,o)=>{g(e,t,o)};re.push(h);const m=Y.endsWith("/")?Y.substring(0,Y.length-1):Y,b={middlewares:{use:e=>e},config:{logger:console}},S=s.initProxy({devServer:b,baseURL:N,proxyIgnore:["/@vite","/@metricinsights","/@",m,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:V,miAPI:ie,templateName:j??void 0}),x=(e,t,o)=>{S(e,t,o)};re.push(x);const E=s.internalServer,L=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(s.INSPECTOR_PATH)||e.url?.startsWith(s.VARIABLES_EDITOR_PATH)){return void E(e,t,()=>{})}o()};se.push(L),re.push(L);const k=s.initRewriteResponse(e=>{const t=e.split("?")[0];return t.startsWith(Y)&&!t.includes("/_next/")},(t,o)=>{const n=ie.buildPage(t,B),i=a.injectDevPanel(n,Y,{backendBaseURL:N,templateLess:M,appId:X,devPanelPosition:A.devPanelPosition,devPanelHidden:A.devPanelHidden,devPanelAutoHide:A.devPanelAutoHide});return Buffer.from(s.urlReplacer(e,o.headers.host??"",i))}),F=(e,t,o)=>{k(e,t,o)};re.push(F),r=new $;let C=_?.distDir;try{process.env[s.PP_DEV_NEXT_BUILD_ENV_VAR]="1";const e=await D(P.PHASE_PRODUCTION_BUILD,I);C=e?.distDir??C}catch{}const R=(C??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),q=R&&".next"!==R?R:"out";let W,Z="0.0.0";try{const e=JSON.parse(y.readFileSync(w.join(I,"package.json"),"utf-8"));Z="string"==typeof e.version?e.version:Z,W="string"==typeof e.repository?e.repository:e.repository?.url}catch{}const G=new s.DistService(j??T(I),{root:I,backupFolder:w.resolve(I,A.syncBackupsDir),nextBuild:{projectRoot:I,distDir:q,packageVersion:Z,packageRepositoryUrl:W}}),J={ws:r.ws,config:{clientInjectionPlugin:{v7Features:O}}};new s.ClientService(J,{distService:G,miAPI:ie}),s.registerVariablesEditorRoutes(s.internalServer,{distService:G,miAPI:ie}),s.registerUserRoutes(s.internalServer,{miAPI:ie}),s.startKeepingUsers({persist:A.persistUsers,miAPI:ie,projectRoot:I,miUrl:N});const K="function"==typeof n?.getUpgradeHandler?n.getUpgradeHandler():null;i.on("upgrade",(e,t,o)=>{r?.handleUpgrade(e,t,o)||(K?K(e,t,o):t.destroy())}),f.info(s.colors.blue(`š§ ${re.length} pp-dev middlewares initialized`)),f.info(s.colors.blue(`š§ ${se.length} essential middlewares for internal routes`)),f.info(s.colors.blue(`š§ MiAPI initialized for backend: ${N}`)),f.info(s.colors.blue(`š§ Custom App ID: ${X}`))}i.listen(oe,ne,()=>{f.info(s.colors.green(`ā
pp-dev Next.js server running at http://${ne}:${oe}`)),f.info(s.colors.blue(`š± Next.js app accessible at http://${ne}:${oe}${Y}`)),!1!==Z&&f.info(s.colors.cyan(`š Request Inspector: http://${ne}:${oe}${s.INSPECTOR_PATH}`)),f.info(s.colors.blue("š§ Base path handling active")),l||(l=R(I,m,f.info),f.info(s.colors.blue("š§ Config file watcher started"))),i.on("connection",e=>{p.add(e),e.on("close",()=>p.delete(e))})}),d=!1}catch(e){d=!1,f.error(s.colors.red(`ā Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(f.error(s.colors.red("ā Next.js Peer Dependency Error:")),f.error(s.colors.red(e.message)),f.error(s.colors.yellow("\nš” To fix this issue:")),f.error(s.colors.blue(" 1. Install Next.js in your project:")),f.error(s.colors.white(" npm install next@^16")),f.error(s.colors.blue(" 2. Or use yarn:")),f.error(s.colors.white(" yarn add next@^16")),f.error(s.colors.blue(" 3. Or use pnpm:")),f.error(s.colors.white(" pnpm add next@^16")),f.error(s.colors.yellow("\nš For more information, see:")),f.error(s.colors.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var v}};j({logger:f,knownRejections:[A],shutdown:async()=>{l&&(M(l),l=null),r&&(await r.close(),r=null),await h(),await g()}}),await m()}),N.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(e,t)=>{U(t);const o=W(t),n=a.resolveBuildCliOverrides(t);try{const i=t.mode||"production",r=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(i,r);const s=await l.loadConfigFromFile({mode:i,command:"build"},t.config,e,t.logLevel);let c=await a.getViteConfig(n,{mode:i,root:r});if(s){const{plugins:e,...t}=s.config;c=l.mergeConfig(c,t)}const d=l.mergeConfig(c,{root:e,base:t.base,mode:t.mode,configFile:t.config,logLevel:t.logLevel,clearScreen:t.clearScreen,optimizeDeps:{force:t.force},build:o},!0);if(await l.build(d),o.changelog){const n=e||process.cwd(),i=d.build?.outDir||"dist";let r="dist-zip";d.ppDevConfig&&(!1===d.ppDevConfig.distZip?r=i:"object"==typeof d.ppDevConfig.distZip&&"string"==typeof d.ppDevConfig.distZip.outDir&&(r=d.ppDevConfig.distZip.outDir)),await O({changelog:o.changelog,executionRoot:n,newAssetsPath:w.resolve(n,i),backupsDirPath:w.resolve(n,d.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:w.resolve(n,r),logLevel:t.logLevel})}}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{z(e=>s.createLogger(t.logLevel).info(e))}}),N.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(e,t)=>{U(t);const o=s.createLogger(t.logLevel),n=e?w.resolve(process.cwd(),e):process.cwd(),i=a.resolveBuildCliOverrides(t);process.env[s.PP_DEV_NEXT_BUILD_ENV_VAR]="1";try{a.loadPPDevEnv(t.mode||"production",n);const{constants:e}=await a.safeNextImport(),r=await(import("next/dist/server/config.js")),l=r.default.default||r["module.exports"].default||r.default,c=await l(e.PHASE_PRODUCTION_BUILD,n);let d,p=c?.ppDev||{};if(0===Object.keys(p).length){const{getConfig:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);p=await e(n)}try{const{getPkg:e}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config);d=e(n).name}catch{d=w.basename(n)}const f=s.normalizePPDevConfig(p,d),u=a.applyDistZipOverride(f.distZip,i,s.createDefaultZipFileName(d)),g=a.applyVersionManifestOverride(f.versionPlugin,i),h=s.removeStaleDevTypes(n,c);h&&o.info(s.colors.dim(`[pp-dev] Removed stale dev route types: ${w.relative(n,h)}`)),o.info(s.colors.cyan("[pp-dev] Running `next build`...")),await s.runNextBuildProcess(n);const m="string"==typeof c?.distDir&&c.distDir?c.distDir:".next",v=".next"===m?"out":m,b=w.resolve(n,v);if(!y.existsSync(b)||!y.statSync(b).isDirectory())throw new Error(`Next.js build output directory not found: ${b}. "next-build" requires "output: 'export'" in next.config (static export).`);const P=JSON.parse(y.readFileSync(w.join(n,"package.json"),"utf-8"));if(!1!==g&&!1!==g.enabled&&(s.writeBuildVersionManifest({outDir:b,packageVersion:"string"==typeof P.version?P.version:"0.0.0",versionFileTemplate:g.versionFileTemplate,packageRepositoryUrl:"string"==typeof P.repository?P.repository:P.repository?.url,enabled:g.enabled}),o.info(s.colors.green(`ā
VERSION / BUILD-MANIFEST written to ${w.relative(n,b)}`))),!1!==u){const e=w.resolve(n,u.outDir),t=u.inDir?w.resolve(b,u.inDir):b,i=s.resolveOutputFilePath(e,u.outFileName,"ZIP output file name");y.mkdirSync(w.dirname(i),{recursive:!0});const r=await s.zipDirectoryToBuffer(t);y.writeFileSync(i,r),o.info(s.colors.green(`ā
Zip archive written to ${w.relative(n,i)}`))}if(t.changelog){const e=!1!==u?u.outDir:v;await O({changelog:t.changelog,executionRoot:n,newAssetsPath:b,backupsDirPath:w.resolve(n,f.syncBackupsDir),changelogDestinationPath:w.resolve(n,e),logLevel:t.logLevel})}}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{z(e=>s.createLogger(t.logLevel).info(e))}}),N.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(e,t,o)=>{U(o);const{oldAssetsPath:n=e,newAssetsPath:i=t,destination:r=".",filename:a="CHANGELOG.html",logLevel:l}=o,c=process.cwd();n&&i||(s.createLogger(l).error(s.colors.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const d=w.resolve(c,n),p=w.resolve(c,i),f=w.resolve(c,r),u=new I({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await u.generateChangelog()}),N.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(e,t,o)=>{U(o);const{source:n=e,destination:i=t,fontName:r="icon-font"}=o,a=process.cwd(),l=w.resolve(a,n),c=w.resolve(a,i),d=new _({sourceDir:l,outputDir:c,fontName:r}),p=s.createLogger(o.logLevel);p.info(`Generating icon font from SVG files in ${s.colors.dim(l)}`),await d.generate(),p.info(`Icon font generated and saved to ${s.colors.dim(c)}`)}),N.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(e,t)=>{U(t);try{const o=t.mode||"production",n=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(o,n);const i=await l.loadConfigFromFile({mode:o,command:"build"},t.config,e,t.logLevel);let r=await a.getViteConfig(void 0,{mode:o,root:n});if(i){const{plugins:e,...t}=i.config;r=l.mergeConfig(r,t)}const s=await l.resolveConfig(l.mergeConfig(r,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode}),"serve");await l.optimizeDeps(s,t.force,!0)}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),N.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(e,t)=>{U(t);try{const o=t.mode||"production",n=w.resolve(process.cwd(),e??".");a.loadPPDevEnv(o,n);const i=await l.loadConfigFromFile({mode:o,command:"build"},t.config,e,t.logLevel);let r=await a.getViteConfig(void 0,{mode:o,root:n});if(i){const{plugins:e,...t}=i.config;r=l.mergeConfig(r,t)}(await l.preview(l.mergeConfig(r,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode,build:{outDir:t.outDir},preview:{port:t.port,strictPort:t.strictPort,host:t.host,https:t.https,open:t.open}}))).printUrls()}catch(e){s.createLogger(t.logLevel).error(s.colors.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{z(e=>s.createLogger(t.logLevel).info(e))}}),N.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(e,t)=>{const o=s.createLogger(t.logLevel),{isLegacyFlatConfig:n,isLegacyPPWatchConfig:i,isAlreadyMigrated:r,migrateLegacyFlatConfig:a,migratePPWatchConfig:l,generateConfigFileContent:c,discoverMigrateSource:d,loadPackageJsonMigrateConfig:p}=await Promise.resolve().then(()=>require("./migrate-Bk72Jr15.js")),f=t.format??"ts",u=!1!==t.backup,g=process.cwd(),h=d(g,e);h||(o.warn(s.colors.yellow("No pp-dev or pp-watch config file found in the current directory.")),o.info(s.colors.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:m,isWatchConfig:v,isPackageJsonConfig:b}=h;o.info(s.colors.blue(`Found config: ${w.relative(g,m)}`));const{getPkg:P}=await Promise.resolve().then(()=>require("./index-Clb1BxEO.js")).then(e=>e.config),S=P();let x,E={};try{if(/\.[cm]?ts$/i.test(m)){const e=await(import("esbuild")),{pathToFileURL:t}=await(import("url")),o=(await e.build({absWorkingDir:g,entryPoints:[m],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,n=`pp-migrate-tmp-${Date.now()}.mjs`;y.writeFileSync(n,o);try{const e=await(import(t(w.resolve(g,n)).toString()));E=e.default?.default??e.default??e}finally{y.existsSync(n)&&y.unlinkSync(n)}}else if(/\.[cm]?js$/i.test(m)){const{pathToFileURL:e}=await(import("url")),t=await(import(e(w.resolve(g,m)).toString()));E=t.default?.default??t.default??t}else b?E=p(m):m.endsWith(".json")&&(E=JSON.parse(y.readFileSync(m,"utf-8")))}catch(e){o.error(s.colors.red(`Failed to load config file: ${e.message}`)),process.exit(1)}E&&"object"==typeof E||(o.error(s.colors.red("Config file did not export a valid object.")),process.exit(1)),r(E)?(o.info(s.colors.green("Config is already in 1.0 format ā nothing to migrate.")),process.exit(0)):v||i(E)?(o.info(s.colors.blue("Detected pp-watch config format ā migrating to 1.0")),x=l(E)):n(E)?(o.info(s.colors.blue("Detected 0.x flat config format ā migrating to 1.0")),x=a(E,S.name)):(o.warn(s.colors.yellow("Could not detect config format. No known keys found.")),process.exit(1));const T=c(x,f),L=t.output??w.join(g,`pp-dev.config.${f}`);if(t.dryRun&&(o.info(s.colors.green(`\n--- Migrated config (dry-run) ā ${w.relative(g,L)} ---\n`)),process.exit(0)),u&&!b&&y.existsSync(m)){const e=`${m}.bak`;y.copyFileSync(m,e),o.info(s.colors.blue(`Backed up original to: ${w.relative(g,e)}`))}y.writeFileSync(L,T,"utf-8"),o.info(s.colors.green(`ā
Migration complete ā ${w.relative(g,L)}`)),b?o.info(s.colors.yellow('You can now remove the "pp-dev" field from package.json.')):m!==L&&y.existsSync(m)&&o.info(s.colors.yellow(`You can now delete the old config: ${w.relative(g,m)}`))}),N.help(),N.version(s.VERSION),N.parse(),exports.stopProfiler=z;
|
|
2
2
|
//# sourceMappingURL=cli.js.map
|
package/dist/cjs/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/cli.ts"],"sourcesContent":[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","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","emit","terminate","client","payload","set","raw","onMessage","parse","toString","type","listeners","error","String","arg","Set","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","file","watcher","watch","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","relative","clearTimeout","setTimeout","async","red","stack","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","dim","undefined","filterDuplicateOptions","Object","entries","Array","isArray","cleanOptions","ret","c","l","debug","f","m","mode","option","command","alias","root","configWatcher","isRestarting","cwd","startServer","clearConfigCache","getConfig","require","n","createServer","envDir","loadPPDevEnv","configFromFile","loadConfigFromFile","getViteConfig","plugins","fileConfig","mergeConfig","configFile","optimizeDeps","customLogger","httpServer","listen","ppDevStartTime","__pp_dev_start_time","startupDurationString","reset","bold","Math","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","find","setRawMode","setEncoding","resume","boundServer","cleanupBinding","removeListener","pause","bindShortcuts","r","default","Session","connect","encodeURIComponent","e","gracefulShutdown","signal","reason","promise","nextApp","hotServer","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","openSockets","originalUrl","originalPathname","parsedUrl","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","end","statusCode","mi","reqStore","RequestStore","registerInspectorRoutes","internalServer","captureMiddleware","createRequestCaptureMiddleware","push","baseUrlHost","userHostGuard","createUserHostGuard","unshift","EventEmitter","defaultMaxListeners","max","miConfig","headers","referer","MI_ACCESS_TOKEN","MiAPI","ppRedirectMiddleware","initPPRedirect","ppRedirectWrapper","devPanelAssetMiddleware","createDevPanelAssetMiddleware","ttl","Number","isNaN","cacheConfig","devServer","middlewares","use","fn","proxyCacheMiddleware","initProxyCache","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","nextBuild","packageVersion","packageRepositoryUrl","clientServiceServer","clientInjectionPlugin","ClientService","registerVariablesEditorRoutes","registerUserRoutes","startKeepingUsers","persist","persistUsers","miUrl","nextUpgradeHandler","getUpgradeHandler","destroy","shutdownTimeout","processObj","globalProcess","globalThis","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","code","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/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","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","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","require","n","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","default","Session","connect","encodeURIComponent","e","nextApp","hotServer","openSockets","nextAppListeners","events","listenersOf","before","previousApp","beforeCreate","afterCreate","snapshot","addedByApp","has","removed","oldListeners","newCode","createNextAppListenerTracker","closeNextApp","closeHttpServer","destroy","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","end","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","cacheConfig","devServer","middlewares","use","fn","proxyCacheMiddleware","initProxyCache","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","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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"}
|
package/dist/cjs/package.json
CHANGED
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,e as l,P as c,b as d,n as p,d as f,r as u,f as g,w as h,g as m,z as b,V as w,I as v,v as y,h as P,i as x,j as S,R as T,k,l as E,m as L,o as $,M as I,p as F,q as D,s as j,t as _,u as A,x as N,y as C,D as R,C as M,A as O,B as z,E as U,F as H}from"./plugin-DQFcmjAh.js";import{r as V,l as W,g as Z,s as G,a as B,b as q,c as J,i as K}from"./index-B9jYtf9g.js";import{loadConfigFromFile as Y,mergeConfig as X,build as Q,resolveConfig as ee,optimizeDeps as te,preview as oe}from"vite";import{parse as ne}from"url";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 ce from"svgtofont";import{WebSocketServer as de,WebSocket as pe}from"ws";import"http-proxy-middleware";import"picocolors";import"node:string_decoder";import"axios";import"node:http";import"node:https";import"jsdom";import"process";import"child_process";import"node:path";import"jszip";import"module";import"zlib";import"express";import"node:crypto";import"node:fs";import"node:os";import"./helpers.js";import"ejs";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 l(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(){await ce({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 de({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===pe.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===c&&(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===pe.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}}const ve=s("pp-dev");function ye(t,o,n){const s=[...H,"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 Pe(e){e.watcher&&e.watcher.close()}function xe(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 Se(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 Te=global.__pp_dev_profile_session,ke=0;const Ee=o=>{if(Te)return new Promise((n,i)=>{Te.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${ke++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Te=void 0,n()}})})},Le=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function $e(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}ve.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"),ve.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)=>{Le(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:u}=await import("./index-B9jYtf9g.js").then(e=>e.h);f();const{createServer:g}=await(import("vite")),h=o.mode||"development",m=e.resolve(process.cwd(),t??".");W(h,m);const b=await Y({mode:h,command:"serve"},o.config,t,o.logLevel);let y=await Z(void 0,{mode:h,root:m});if(b){const{plugins:e,...t}=b.config;y=X(y,t)}if(i=await g(X(y,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:$e(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 P=global.__pp_dev_start_time??!1,x=P?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-P)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${w}`)} ${x}\n`),i.printUrls();const S=await u(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+v)}\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:[...Te?[{key:"p",description:"start/stop the profiler",async action(e){if(Te)await Ee(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Te=new e.Session,Te.connect(),Te.post("Profiler.enable",()=>{Te?.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=ye(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}),Ee(d.info),process.exit(1)}}},f=async e=>{d.info(a.yellow(`\nš Received ${e}, shutting down gracefully...`));try{s&&(Pe(s),s=null),i&&(await i.close(),i=null),Ee(d.info),d.info(a.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){d.error(a.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>f("SIGINT")),process.on("SIGTERM",()=>f("SIGTERM")),process.on("uncaughtException",e=>{d.error(a.red(`ā Uncaught Exception: ${e}`)),f("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(a.red(`ā Unhandled Rejection at: ${t}, reason: ${e}`)),f("unhandledRejection")}),await p()}),ve.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)=>{Le(i);let s=null,l=null,c=null,f=null,u=!1;const g=r(),h=async()=>{if(!u){u=!0;try{const{next:m,constants:b}=await G(),{PHASE_DEVELOPMENT_SERVER:w}=b;c&&(await c.close(),c=null),l&&(g.info(a.yellow("š Stopping existing Next.js server...")),await new Promise(e=>{l.close(()=>{l=null,e()})})),s&&"function"==typeof s.close&&(await s.close(),s=null);const{clearConfigCache:H}=await import("./index-B9jYtf9g.js").then(e=>e.h);H();const{join:V,basename:Z}=await(import("path")),{createServer:B}=await(import("http")),q=await(import("next/dist/server/config.js")),Y=q.default.default||q["module.exports"].default||q.default,X=$e(i),Q=n?V(process.cwd(),n):process.cwd();W(i.mode||"development",Q),g.info(Q);const ee=await Y(w,Q);let te=ee?.ppDev||{};if(0===Object.keys(te).length)try{const{getConfig:e}=await import("./index-B9jYtf9g.js").then(e=>e.h),t=await e(Q);Object.keys(t).length>0?(te=t,g.info(a.blue("š§ Loaded pp-dev config from standalone config file"))):g.info(a.yellow("ā ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){g.info(a.yellow("ā ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else g.info(a.blue("š§ Loaded pp-dev config from Next.js config"));let oe=null;try{const{getPkg:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);oe=e(Q).name}catch{oe=Z(Q)}y(te,oe??"");const ie=p(te,oe??""),se=ie.backendBaseURL??"http://localhost:8080",re=ie.templateLess,ae=ie.v7Features,le=ie.disableSSLValidation,ce=ie.enableProxyCache,de=ie.proxyCacheTTL,pe=ie.personalAccessToken,fe=ie.miHudLess,ue=ie.inspectorEnabled,ge=ie.inspectorMaxMemory,he=ie.inspectorCaptureLimit,me=ie.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,be=ee?.basePath;let ve="";be?ve=be:(ve=re?P:ae?x:S,ve+=`/${oe}`);const Se=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),Te=async e=>{delete process.env.TURBOPACK,s&&"function"==typeof s.close&&(await s.close(),s=null);const t={dev:!0,customServer:!0,hostname:X.host||"localhost",port:X.port,dir:Q,conf:{...ee,basePath:ve,assetPrefix:ve}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),s=m(t),await s.prepare()};if(Se.webpack)await Te({webpack:!0});else if(Se.turbopack)try{await Te({turbopack:!0})}catch(e){if(!xe(e))throw e;g.warn(a.yellow("ā Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Te({webpack:!0})}else try{await Te({})}catch(e){if(!xe(e))throw e;g.warn(a.yellow("ā Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Te({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(ve.endsWith("/")||(ve+="/"),"/"===ve)throw new Error('basePath cannot be equal to "/" or equal to empty string');g.info(a.green("ā
Next.js app prepared successfully")),g.info(a.blue(`š§ pp-dev plugin configured for template: ${oe}`)),g.info(a.blue(`š§ Base path configured: ${ve}`)),se&&(g.info(a.blue(`š Backend URL: ${se}`)),g.info(a.blue(`š Custom App ID: ${me}`)));const ke=s.getRequestHandler(),Ee="number"==typeof X.port?X.port:3e3,Le="string"==typeof X.host?X.host||"0.0.0.0":"localhost",Ie=new Set;l=B(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=ne(o,!0);if(De.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(je.length>0){let l=0;const c=()=>{if(l>=je.length)return void s();const o=je[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=De.length)return void s();const o=De[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(ve))i=ne(o,!0);else{if(n===ve.replace(/\/$/,"")){const e=o.replace(n,ve);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:ve}),void t.end()}await ke(e,t,i)}s()}catch(d){g.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 Fe=null,De=[],je=[];if(!1!==ue){const e=new T(ge);k(E,e,he);const t=L(e,he);De.push(t)}if(se){const n=new URL(se).host,i=$();je.unshift(i),De.unshift(i),se.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const p={headers:{host:n,referer:se,origin:se.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:me,templateLess:re,disableSSLValidation:le,v7Features:ae,personalAccessToken:pe??process.env.MI_ACCESS_TOKEN};Fe=new I(se,p);const f=F(ve,oe??void 0),u=(e,t,o)=>{f(e,t,o)};je.push(u),De.push(u);const h=J(ve);if(je.push(h),De.push(h),ce){let e=+de;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=D({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};De.push(n),g.info(a.blue(`š§ Proxy cache middleware added with TTL: ${e}ms`))}const m=new RegExp(`^((${r=ve,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),w=j(m,Fe,Object.assign({base:ve},p,{miHudLess:fe})),y=(e,t,o)=>{w(e,t,o)};De.push(y);const P=ve.endsWith("/")?ve.substring(0,ve.length-1):ve,x={middlewares:{use:e=>e},config:{logger:console}},S=_({devServer:x,baseURL:se,proxyIgnore:["/@vite","/@metricinsights","/@",P,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:le,miAPI:Fe,templateName:oe??void 0}),T=(e,t,o)=>{S(e,t,o)};De.push(T);const k=E,L=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(v)||e.url?.startsWith(A)){return void k(e,t,()=>{})}o()};je.push(L),De.push(L);const H=N(e=>{const t=e.split("?")[0];return t.startsWith(ve)&&!t.includes("/_next/")},(e,t)=>{const o=Fe.buildPage(e,fe),i=K(o,ve,{backendBaseURL:se,templateLess:re,appId:me,devPanelPosition:ie.devPanelPosition,devPanelHidden:ie.devPanelHidden,devPanelAutoHide:ie.devPanelAutoHide});return Buffer.from(C(n,t.headers.host??"",i))}),V=(e,t,o)=>{H(e,t,o)};De.push(V),c=new we;let W=ee?.distDir;try{process.env[d]="1";const e=await Y(b.PHASE_PRODUCTION_BUILD,Q);W=e?.distDir??W}catch{}const G=(W??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),B=G&&".next"!==G?G:"out";let q,X="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(Q,"package.json"),"utf-8"));X="string"==typeof o.version?o.version:X,q="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const te=new R(oe??Z(Q),{root:Q,backupFolder:e.resolve(Q,ie.syncBackupsDir),nextBuild:{projectRoot:Q,distDir:B,packageVersion:X,packageRepositoryUrl:q}}),ne={ws:c.ws,config:{clientInjectionPlugin:{v7Features:ae}}};new M(ne,{distService:te,miAPI:Fe}),O(E,{distService:te,miAPI:Fe}),z(E,{miAPI:Fe}),U({persist:ie.persistUsers,miAPI:Fe,projectRoot:Q,miUrl:se});const ue="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{c?.handleUpgrade(e,t,o)||(ue?ue(e,t,o):t.destroy())}),g.info(a.blue(`š§ ${De.length} pp-dev middlewares initialized`)),g.info(a.blue(`š§ ${je.length} essential middlewares for internal routes`)),g.info(a.blue(`š§ MiAPI initialized for backend: ${se}`)),g.info(a.blue(`š§ Custom App ID: ${me}`))}l.listen(Ee,Le,()=>{g.info(a.green(`ā
pp-dev Next.js server running at http://${Le}:${Ee}`)),g.info(a.blue(`š± Next.js app accessible at http://${Le}:${Ee}${ve}`)),!1!==ue&&g.info(a.cyan(`š Request Inspector: http://${Le}:${Ee}${v}`)),g.info(a.blue("š§ Base path handling active")),f||(f=ye(Q,h,g.info),g.info(a.blue("š§ Config file watcher started"))),l.on("connection",e=>{Ie.add(e),e.on("close",()=>Ie.delete(e))});const e=async e=>{g.info(a.yellow(`\nš Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{g.info(a.yellow("ā° Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{f&&(Pe(f),f=null);for(const e of Array.from(Ie))e.destroy();Ie.clear(),c&&(await c.close(),c=null),await new Promise(e=>{l.close(()=>{g.info(a.yellow("š HTTP server closed")),e()})}),s&&"function"==typeof s.close&&(await s.close(),g.info(a.yellow("š Next.js app closed"))),clearTimeout(t),g.info(a.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),g.error(a.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};let t=process;if("function"!=typeof process.on){const e=globalThis.process||global.process;e&&"function"==typeof e.on&&(t=e,g.info(a.green("ā
Using global process object for event handlers")))}if("function"==typeof t.on)try{t.on("SIGINT",()=>e("SIGINT")),t.on("SIGTERM",()=>e("SIGTERM")),t.on("uncaughtException",t=>{g.error(a.red(`ā Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{g.error(a.red(`ā Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),g.info(a.green("ā
Process event handlers registered successfully"))}catch(e){g.warn(a.yellow(`ā ļø Failed to register process event handlers: ${e}`))}else g.warn(a.yellow("ā ļø process.on is not available, graceful shutdown handlers will not be registered")),g.info(a.blue("š” This might be due to bundling or environment constraints"))}),u=!1}catch(e){u=!1,g.error(a.red(`ā Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(g.error(a.red("ā Next.js Peer Dependency Error:")),g.error(a.red(e.message)),g.error(a.yellow("\nš” To fix this issue:")),g.error(a.blue(" 1. Install Next.js in your project:")),g.error(a.white(" npm install next@^16")),g.error(a.blue(" 2. Or use yarn:")),g.error(a.white(" yarn add next@^16")),g.error(a.blue(" 3. Or use pnpm:")),g.error(a.white(" pnpm add next@^16")),g.error(a.yellow("\nš For more information, see:")),g.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}},m=async e=>{g.info(a.yellow(`\nš Received ${e}, shutting down gracefully...`));try{f&&(Pe(f),f=null),c&&(await c.close(),c=null),l&&await new Promise(e=>{l.close(()=>{l=null,e()})}),s&&"function"==typeof s.close&&(await s.close(),s=null),g.info(a.green("ā
Graceful shutdown completed")),process.exit(0)}catch(e){g.error(a.red(`ā Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>m("SIGINT")),process.on("SIGTERM",()=>m("SIGTERM")),process.on("uncaughtException",e=>{g.error(a.red(`ā Uncaught Exception: ${e}`)),m("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{g.error(a.red(`ā Unhandled Rejection at: ${t}, reason: ${e}`)),m("unhandledRejection")}),await h()}),ve.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)=>{Le(o);const n=$e(o),i=V(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");W(s,r);const a=await Y({mode:s,command:"build"},o.config,t,o.logLevel);let l=await Z(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=X(l,t)}const c=X(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 Q(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 Se({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{Ee(e=>r(o.logLevel).info(e))}}),ve.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)=>{Le(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=V(n);process.env[d]="1";try{W(n.mode||"production",s);const{constants:o}=await G(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,d=await c(o.PHASE_PRODUCTION_BUILD,s);let w,v=d?.ppDev||{};if(0===Object.keys(v).length){const{getConfig:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);v=await e(s)}try{const{getPkg:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);w=e(s).name}catch{w=e.basename(s)}const y=p(v,w),P=B(y.distZip,l,f(w)),x=q(y.versionPlugin,l),S=u(s,d);S&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,S)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await g(s);const T="string"==typeof d?.distDir&&d.distDir?d.distDir:".next",k=".next"===T?"out":T,E=e.resolve(s,k);if(!t.existsSync(E)||!t.statSync(E).isDirectory())throw new Error(`Next.js build output directory not found: ${E}. "next-build" requires "output: 'export'" in next.config (static export).`);const L=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==x&&!1!==x.enabled&&(h({outDir:E,packageVersion:"string"==typeof L.version?L.version:"0.0.0",versionFileTemplate:x.versionFileTemplate,packageRepositoryUrl:"string"==typeof L.repository?L.repository:L.repository?.url,enabled:x.enabled}),i.info(a.green(`ā
VERSION / BUILD-MANIFEST written to ${e.relative(s,E)}`))),!1!==P){const o=e.resolve(s,P.outDir),n=P.inDir?e.resolve(E,P.inDir):E,r=m(o,P.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await b(n);t.writeFileSync(r,l),i.info(a.green(`ā
Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==P?P.outDir:k;await Se({changelog:n.changelog,executionRoot:s,newAssetsPath:E,backupsDirPath:e.resolve(s,y.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{Ee(e=>r(n.logLevel).info(e))}}),ve.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)=>{Le(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()}),ve.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)=>{Le(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)}`)}),ve.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Le(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");W(n,i);const s=await Y({mode:n,command:"build"},o.config,t,o.logLevel);let r=await Z(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=X(r,t)}const a=await ee(X(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await te(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),ve.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)=>{Le(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");W(n,i);const s=await Y({mode:n,command:"build"},o.config,t,o.logLevel);let r=await Z(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=X(r,t)}(await oe(X(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{Ee(e=>r(o.logLevel).info(e))}}),ve.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-DBvBDR9-.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-B9jYtf9g.js").then(e=>e.h),S=x();let T,k={};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()));k=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()));k=o.default?.default??o.default??o}else P?k=g(v):v.endsWith(".json")&&(k=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}k&&"object"==typeof k||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(k)?(i.info(a.green("Config is already in 1.0 format ā nothing to migrate.")),process.exit(0)):y||l(k)?(i.info(a.blue("Detected pp-watch config format ā migrating to 1.0")),T=p(k)):s(k)?(i.info(a.blue("Detected 0.x flat config format ā migrating to 1.0")),T=d(k,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const E=f(T,h),L=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) ā ${e.relative(b,L)} ---\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(L,E,"utf-8"),i.info(a.green(`ā
Migration complete ā ${e.relative(b,L)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==L&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),ve.help(),ve.version(w),ve.parse();export{Ee 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,e as l,P as c,b as d,n as p,d as f,r as u,f as g,w as h,g as m,z as b,V as w,I as v,v as y,h as P,i as x,j as S,R as k,k as T,l as L,m as E,o as D,M as F,p as $,q as I,s as j,t as _,u as A,x as N,y as C,D as M,C as R,A as O,B as z,E as H,F as V}from"./plugin-DQFcmjAh.js";import{r as U,l as W,g as Z,s as B,a as G,b as q,c as J,i as K}from"./index-B9jYtf9g.js";import{loadConfigFromFile as Y,mergeConfig as X,build as Q,resolveConfig as ee,optimizeDeps as te,preview as oe}from"vite";import{parse as ne}from"url";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 ce from"svgtofont";import{WebSocketServer as de,WebSocket as pe}from"ws";import"http-proxy-middleware";import"picocolors";import"node:string_decoder";import"axios";import"node:http";import"node:https";import"jsdom";import"process";import"child_process";import"node:path";import"jszip";import"module";import"zlib";import"express";import"node:crypto";import"node:fs";import"node:os";import"./helpers.js";import"ejs";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 l(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(){await ce({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 de({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===pe.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===c&&(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===pe.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=[...V,"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:u}=await import("./index-B9jYtf9g.js").then(e=>e.h);f();const{createServer:g}=await(import("vite")),h=o.mode||"development",m=e.resolve(process.cwd(),t??".");W(h,m);const b=await Y({mode:h,command:"serve"},o.config,t,o.logLevel);let y=await Z(void 0,{mode:h,root:m});if(b){const{plugins:e,...t}=b.config;y=X(y,t)}if(i=await g(X(y,{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 P=global.__pp_dev_start_time??!1,x=P?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-P)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${w}`)} ${x}\n`),i.printUrls();const S=await u(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+v)}\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,c=null,f=null,u=!1;const g=new Set,h=r(),m=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}}}(),b=async()=>{s&&"function"==typeof s.close&&await s.close(),s=null},w=async()=>{const e=l;if(e){for(const e of g)e.destroy();g.clear(),await new Promise(t=>{e.close(()=>t())}),l===e&&(l=null)}},V=async()=>{if(!u){u=!0;try{const{next:U,constants:Z}=await B(),{PHASE_DEVELOPMENT_SERVER:G}=Z;c&&(await c.close(),c=null),l&&(h.info(a.yellow("š Stopping existing Next.js server...")),await w()),await b();const{clearConfigCache:q}=await import("./index-B9jYtf9g.js").then(e=>e.h);q();const{join:Y,basename:X}=await(import("path")),{createServer:Q}=await(import("http")),ee=await(import("next/dist/server/config.js")),te=ee.default.default||ee["module.exports"].default||ee.default,oe=Ie(i),ie=n?Y(process.cwd(),n):process.cwd();W(i.mode||"development",ie),h.info(ie);const se=await te(G,ie);let re=se?.ppDev||{};if(0===Object.keys(re).length)try{const{getConfig:e}=await import("./index-B9jYtf9g.js").then(e=>e.h),t=await e(ie);Object.keys(t).length>0?(re=t,h.info(a.blue("š§ Loaded pp-dev config from standalone config file"))):h.info(a.yellow("ā ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){h.info(a.yellow("ā ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else h.info(a.blue("š§ Loaded pp-dev config from Next.js config"));let ae=null;try{const{getPkg:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);ae=e(ie).name}catch{ae=X(ie)}y(re,ae??"");const le=p(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?P:pe?x:S,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 b();const t={dev:!0,customServer:!0,hostname:oe.host||"localhost",port:oe.port,dir:ie,conf:{...se,basePath:ke,assetPrefix:ke}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),m.beforeCreate(),s=U(t),await s.prepare(),m.afterCreate()};if(Le.webpack)await Ee({webpack:!0});else if(Le.turbopack)try{await Ee({turbopack:!0})}catch(e){if(!Te(e))throw e;h.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;h.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');h.info(a.green("ā
Next.js app prepared successfully")),h.info(a.blue(`š§ pp-dev plugin configured for template: ${ae}`)),h.info(a.blue(`š§ Base path configured: ${ke}`)),ce&&(h.info(a.blue(`š Backend URL: ${ce}`)),h.info(a.blue(`š Custom App ID: ${Pe}`)));const De=s.getRequestHandler(),Fe="number"==typeof oe.port?oe.port:3e3,$e="string"==typeof oe.host?oe.host||"0.0.0.0":"localhost";l=Q(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=ne(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=ne(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){h.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 k(ve);T(L,e,ye);const t=E(e,ye);_e.push(t)}if(ce){const n=new URL(ce).host,i=D();Ae.unshift(i),_e.unshift(i),ce.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const p={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 F(ce,p);const f=$(ke,ae??void 0),u=(e,t,o)=>{f(e,t,o)};Ae.push(u),_e.push(u);const g=J(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=I({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};_e.push(n),h.info(a.blue(`š§ Proxy cache middleware added with TTL: ${e}ms`))}const m=new RegExp(`^((${r=ke,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),b=j(m,je,Object.assign({base:ke},p,{miHudLess:me})),w=(e,t,o)=>{b(e,t,o)};_e.push(w);const y=ke.endsWith("/")?ke.substring(0,ke.length-1):ke,P={middlewares:{use:e=>e},config:{logger:console}},x=_({devServer:P,baseURL:ce,proxyIgnore:["/@vite","/@metricinsights","/@",y,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:fe,miAPI:je,templateName:ae??void 0}),S=(e,t,o)=>{x(e,t,o)};_e.push(S);const k=L,T=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(v)||e.url?.startsWith(A)){return void k(e,t,()=>{})}o()};Ae.push(T),_e.push(T);const E=N(e=>{const t=e.split("?")[0];return t.startsWith(ke)&&!t.includes("/_next/")},(e,t)=>{const o=je.buildPage(e,me),i=K(o,ke,{backendBaseURL:ce,templateLess:de,appId:Pe,devPanelPosition:le.devPanelPosition,devPanelHidden:le.devPanelHidden,devPanelAutoHide:le.devPanelAutoHide});return Buffer.from(C(n,t.headers.host??"",i))}),V=(e,t,o)=>{E(e,t,o)};_e.push(V),c=new we;let U=se?.distDir;try{process.env[d]="1";const e=await te(Z.PHASE_PRODUCTION_BUILD,ie);U=e?.distDir??U}catch{}const W=(U??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),B=W&&".next"!==W?W:"out";let G,q="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(ie,"package.json"),"utf-8"));q="string"==typeof o.version?o.version:q,G="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const Y=new M(ae??X(ie),{root:ie,backupFolder:e.resolve(ie,le.syncBackupsDir),nextBuild:{projectRoot:ie,distDir:B,packageVersion:q,packageRepositoryUrl:G}}),Q={ws:c.ws,config:{clientInjectionPlugin:{v7Features:pe}}};new R(Q,{distService:Y,miAPI:je}),O(L,{distService:Y,miAPI:je}),z(L,{miAPI:je}),H({persist:le.persistUsers,miAPI:je,projectRoot:ie,miUrl:ce});const ee="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{c?.handleUpgrade(e,t,o)||(ee?ee(e,t,o):t.destroy())}),h.info(a.blue(`š§ ${_e.length} pp-dev middlewares initialized`)),h.info(a.blue(`š§ ${Ae.length} essential middlewares for internal routes`)),h.info(a.blue(`š§ MiAPI initialized for backend: ${ce}`)),h.info(a.blue(`š§ Custom App ID: ${Pe}`))}l.listen(Fe,$e,()=>{h.info(a.green(`ā
pp-dev Next.js server running at http://${$e}:${Fe}`)),h.info(a.blue(`š± Next.js app accessible at http://${$e}:${Fe}${ke}`)),!1!==be&&h.info(a.cyan(`š Request Inspector: http://${$e}:${Fe}${v}`)),h.info(a.blue("š§ Base path handling active")),f||(f=Se(ie,V,h.info),h.info(a.blue("š§ Config file watcher started"))),l.on("connection",e=>{g.add(e),e.on("close",()=>g.delete(e))})}),u=!1}catch(e){u=!1,h.error(a.red(`ā Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(h.error(a.red("ā Next.js Peer Dependency Error:")),h.error(a.red(e.message)),h.error(a.yellow("\nš” To fix this issue:")),h.error(a.blue(" 1. Install Next.js in your project:")),h.error(a.white(" npm install next@^16")),h.error(a.blue(" 2. Or use yarn:")),h.error(a.white(" yarn add next@^16")),h.error(a.blue(" 3. Or use pnpm:")),h.error(a.white(" pnpm add next@^16")),h.error(a.yellow("\nš For more information, see:")),h.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}};ye({logger:h,knownRejections:[Pe],shutdown:async()=>{f&&(ke(f),f=null),c&&(await c.close(),c=null),await w(),await b()}}),await V()}),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=U(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");W(s,r);const a=await Y({mode:s,command:"build"},o.config,t,o.logLevel);let l=await Z(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=X(l,t)}const c=X(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 Q(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=U(n);process.env[d]="1";try{W(n.mode||"production",s);const{constants:o}=await B(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,d=await c(o.PHASE_PRODUCTION_BUILD,s);let w,v=d?.ppDev||{};if(0===Object.keys(v).length){const{getConfig:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);v=await e(s)}try{const{getPkg:e}=await import("./index-B9jYtf9g.js").then(e=>e.h);w=e(s).name}catch{w=e.basename(s)}const y=p(v,w),P=G(y.distZip,l,f(w)),x=q(y.versionPlugin,l),S=u(s,d);S&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,S)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await g(s);const k="string"==typeof d?.distDir&&d.distDir?d.distDir:".next",T=".next"===k?"out":k,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!==x&&!1!==x.enabled&&(h({outDir:L,packageVersion:"string"==typeof E.version?E.version:"0.0.0",versionFileTemplate:x.versionFileTemplate,packageRepositoryUrl:"string"==typeof E.repository?E.repository:E.repository?.url,enabled:x.enabled}),i.info(a.green(`ā
VERSION / BUILD-MANIFEST written to ${e.relative(s,L)}`))),!1!==P){const o=e.resolve(s,P.outDir),n=P.inDir?e.resolve(L,P.inDir):L,r=m(o,P.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await b(n);t.writeFileSync(r,l),i.info(a.green(`ā
Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==P?P.outDir:T;await Le({changelog:n.changelog,executionRoot:s,newAssetsPath:L,backupsDirPath:e.resolve(s,y.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??".");W(n,i);const s=await Y({mode:n,command:"build"},o.config,t,o.logLevel);let r=await Z(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=X(r,t)}const a=await ee(X(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await te(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??".");W(n,i);const s=await Y({mode:n,command:"build"},o.config,t,o.logLevel);let r=await Z(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=X(r,t)}(await oe(X(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-DBvBDR9-.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-B9jYtf9g.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(w),xe.parse();export{Fe 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/cli.ts"],"sourcesContent":[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","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","emit","terminate","client","payload","set","raw","onMessage","parse","toString","type","listeners","error","String","arg","Set","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","file","watcher","watch","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","relative","clearTimeout","setTimeout","async","red","stack","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","dim","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","Math","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","find","setRawMode","setEncoding","resume","boundServer","cleanupBinding","removeListener","pause","bindShortcuts","r","default","Session","connect","encodeURIComponent","e","gracefulShutdown","signal","reason","promise","nextApp","hotServer","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","openSockets","originalUrl","originalPathname","parsedUrl","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","end","statusCode","mi","reqStore","RequestStore","registerInspectorRoutes","internalServer","captureMiddleware","createRequestCaptureMiddleware","push","baseUrlHost","userHostGuard","createUserHostGuard","unshift","EventEmitter","defaultMaxListeners","max","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","nextBuild","packageVersion","packageRepositoryUrl","clientServiceServer","clientInjectionPlugin","ClientService","registerVariablesEditorRoutes","registerUserRoutes","startKeepingUsers","persist","persistUsers","miUrl","nextUpgradeHandler","getUpgradeHandler","destroy","shutdownTimeout","processObj","globalProcess","globalThis","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","code","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/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","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","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","default","Session","connect","encodeURIComponent","e","nextApp","hotServer","openSockets","nextAppListeners","events","listenersOf","before","previousApp","beforeCreate","afterCreate","snapshot","addedByApp","has","removed","oldListeners","newCode","createNextAppListenerTracker","closeNextApp","closeHttpServer","destroy","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","end","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","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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"}
|
package/dist/esm/package.json
CHANGED