@metricinsights/pp-dev 0.18.0 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CHANGELOG.md +77 -64
  2. package/README.md +91 -66
  3. package/dist/CHANGELOG.md +77 -64
  4. package/dist/README.md +91 -66
  5. package/dist/cjs/cli.js +1 -1
  6. package/dist/cjs/cli.js.map +1 -1
  7. package/dist/cjs/helpers.js.map +1 -1
  8. package/dist/cjs/index-B1GblhLQ.js +2 -0
  9. package/dist/cjs/index-B1GblhLQ.js.map +1 -0
  10. package/dist/cjs/index.js +1 -1
  11. package/dist/cjs/package.json +1 -1
  12. package/dist/cjs/plugin-DY9gjLm8.js +2 -0
  13. package/dist/cjs/plugin-DY9gjLm8.js.map +1 -0
  14. package/dist/cjs/plugin.js +1 -1
  15. package/dist/cjs/version-plugin-DSLhm6Q1.js +2 -0
  16. package/dist/cjs/version-plugin-DSLhm6Q1.js.map +1 -0
  17. package/dist/client/client.css +1 -1
  18. package/dist/client/client.css.map +1 -1
  19. package/dist/client/client.js +91 -2
  20. package/dist/client/client.js.map +1 -1
  21. package/dist/client/index.html +12 -9
  22. package/dist/esm/cli.js +1 -1
  23. package/dist/esm/cli.js.map +1 -1
  24. package/dist/esm/helpers.js.map +1 -1
  25. package/dist/esm/index-basLGB1P.js +2 -0
  26. package/dist/esm/index-basLGB1P.js.map +1 -0
  27. package/dist/esm/index.js +1 -1
  28. package/dist/esm/package.json +1 -1
  29. package/dist/esm/plugin-B6DaUVqp.js +2 -0
  30. package/dist/esm/plugin-B6DaUVqp.js.map +1 -0
  31. package/dist/esm/plugin.js +1 -1
  32. package/dist/esm/version-plugin-DekxT1OJ.js +2 -0
  33. package/dist/esm/version-plugin-DekxT1OJ.js.map +1 -0
  34. package/dist/types/index.d.ts +1 -205
  35. package/package.json +1 -1
  36. package/pp-dev.d.ts +1 -0
  37. package/scripts/patch-npm-bundled-vulnerabilities.mjs +8 -11
  38. package/dist/cjs/index-DR5Vl6zz.js +0 -2
  39. package/dist/cjs/index-DR5Vl6zz.js.map +0 -1
  40. package/dist/cjs/plugin-DMyHXqs8.js +0 -2
  41. package/dist/cjs/plugin-DMyHXqs8.js.map +0 -1
  42. package/dist/cjs/version-plugin-Cj4Pv-pw.js +0 -2
  43. package/dist/cjs/version-plugin-Cj4Pv-pw.js.map +0 -1
  44. package/dist/esm/index-Co3ktLxA.js +0 -2
  45. package/dist/esm/index-Co3ktLxA.js.map +0 -1
  46. package/dist/esm/plugin-CcoYWcTD.js +0 -2
  47. package/dist/esm/plugin-CcoYWcTD.js.map +0 -1
  48. package/dist/esm/version-plugin-B1n39tE6.js +0 -2
  49. package/dist/esm/version-plugin-B1n39tE6.js.map +0 -1
package/dist/esm/cli.js CHANGED
@@ -1,2 +1,2 @@
1
- import*as e from"path";import*as t from"fs";import{performance as o}from"node:perf_hooks";import{watch as n}from"chokidar";import{cac as i}from"cac";import{loadConfigFromFile as s,mergeConfig as r,build as a,resolveConfig as l,optimizeDeps as c,preview as d,loadEnv as p}from"vite";import{g as f,V as h,s as u,P as g,a as m}from"./index-Co3ktLxA.js";import{c as b,a as w,M as v,i as y,b as x,d as P,e as T,f as $,g as k,u as S}from"./plugin-CcoYWcTD.js";import{parse as L}from"url";import*as E from"dir-compare";import F from"diff-match-patch";import{isBinaryFile as j}from"isbinaryfile";import*as A from"os";import*as C from"crypto";import D from"extract-zip";import _ from"svgtofont";import"ejs";import"http-proxy-middleware";import"picocolors";import"axios";import"jsdom";import"https";import"memory-cache";import"process";import"child_process";import"console";import"zlib";import"express";function I(e){return null!=e&&!1!==e}const N=[{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 M=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class R{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: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, 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: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, 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:r,diffLineTemplateHandler:a,changelogFilename:l,contextLines:c}=t;if(this.logger=b(),!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(A.tmpdir(),C.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(A.tmpdir(),C.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=l||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(w.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 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){return t.rmSync(o,{force:!0,recursive:!0}),D(e,{dir: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(w.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await E.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(M.test(e)&&(e=e.replace(M,"$1$3")),M.test(t)&&(t=t.replace(M,"$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 F,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 j(n)||await j(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(w.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(w.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(w.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class z{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await _({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}const H=i("pp-dev");function G(t,o,i){const s=[...g,...m,"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=n(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 a=null;return r.on("change",n=>{i(w.blue(`šŸ”§ Config file changed: ${e.relative(t,n)}`)),a&&clearTimeout(a),a=setTimeout(async()=>{try{i(w.yellow("šŸ”„ Restarting dev server due to config change...")),await o()}catch(e){i(w.red(`āŒ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{i(w.red(`āŒ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:i}}function W(e){e.watcher&&e.watcher.close()}function O(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)}let U=global.__pp_dev_profile_session,V=0;const B=o=>{if(U)return new Promise((n,i)=>{U.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${V++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(w.yellow(`CPU profile written to ${w.white(w.dim(i))}`)),U=void 0,n()}})})},q=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function K(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}H.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"),H.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,n)=>{q(n);let i=null,a=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=b(n.logLevel),u=async()=>{if(!l){l=!0;try{i&&(d.info(w.yellow("šŸ›‘ Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:e}=await import("./index-Co3ktLxA.js").then(e=>e.d);e();const{createServer:g}=await import("vite"),m=await s({mode:n.mode||"development",command:"serve"},n.config,t,n.logLevel);let v=await f();const y=p(n.mode||"development",t??process.cwd(),"");if(y&&Object.keys(y).forEach(e=>{e.startsWith("MI_")&&(process.env[e]=y[e])}),m){const{plugins:e,...t}=m.config;v=r(v,t)}if(i=await g(r(v,{root:t,base:n.base,mode:n.mode,configFile:n.config,logLevel:n.logLevel,clearScreen:n.clearScreen,optimizeDeps:{force:n.force},server:K(n),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const x=global.__pp_dev_start_time??!1,P=x?w.dim(`ready in ${w.reset(w.bold(Math.ceil(o.now()-x)))} ms`):"";d.info(`\n ${w.green(`${w.bold("PP-DEV")} v${h}`)} ${P}\n`),i.printUrls(),function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=b();t.print&&o.info(w.dim(w.green(" āžœ"))+w.dim(" press ")+w.bold("h")+w.dim(" to show help"));const n=(t.customShortcuts??[]).filter(I).concat(N);let i=!1;const s=async t=>{if(""===t||""===t)return void await e.close().finally(()=>process.exit(1));if(i)return;"h"===t&&o.info(["",w.bold(" Shortcuts"),...n.map(e=>w.dim(" press ")+w.bold(e.key)+w.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",s).setEncoding("utf8").resume(),e.httpServer.on("close",()=>{process.stdin.off("data",s).pause()})}(i,{print:!0,customShortcuts:[...U?[{key:"p",description:"start/stop the profiler",async action(e){if(U)await B(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{U=new e.Session,U.connect(),U.post("Profiler.enable",()=>{U?.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("/")}`}})}}]}),a||(a=G(c,u,d.info),d.info(w.blue("šŸ”§ Config file watcher started"))),l=!1}catch(e){l=!1,d.error(w.red(`error when starting dev server:\n${e.stack}`),{error:e}),B(d.info),process.exit(1)}}},g=async e=>{d.info(w.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{a&&(W(a),a=null),i&&(await i.close(),i=null),B(d.info),d.info(w.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){d.error(w.red(`āŒ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>g("SIGINT")),process.on("SIGTERM",()=>g("SIGTERM")),process.on("uncaughtException",e=>{d.error(w.red(`āŒ Uncaught Exception: ${e}`)),g("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(w.red(`āŒ Unhandled Rejection at: ${t}, reason: ${e}`)),g("unhandledRejection")}),await u()}),H.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)=>{q(t);let o=null,n=null,i=null,s=!1;const r=b(),a=async()=>{if(!s){s=!0;try{const{next:c,constants:d}=await u(),{PHASE_DEVELOPMENT_SERVER:f}=d;n&&(r.info(w.yellow("šŸ›‘ Stopping existing Next.js server...")),await new Promise(e=>{n.close(()=>{n=null,e()})})),o&&"function"==typeof o.close&&(await o.close(),o=null);const{clearConfigCache:h}=await import("./index-Co3ktLxA.js").then(e=>e.d);h();const{join:g,basename:m}=await import("path"),{createServer:b}=await import("http"),E=await import("next/dist/server/config.js"),F=E.default.default||E["module.exports"].default||E.default,j=K(t),A=p(t.mode||"development",e??process.cwd(),"");A&&Object.keys(A).forEach(e=>{e.startsWith("MI_")&&(process.env[e]=A[e])});const C=e?g(process.cwd(),e):process.cwd();r.info(C);const D=await F(f,C);let _=D?.ppDev||{};if(0===Object.keys(_).length)try{const{getConfig:e}=await import("./index-Co3ktLxA.js").then(e=>e.d),t=await e();Object.keys(t).length>0?(_=t,r.info(w.blue("šŸ”§ Loaded pp-dev config from standalone config file"))):r.info(w.yellow("āš ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){r.info(w.yellow("āš ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else r.info(w.blue("šŸ”§ Loaded pp-dev config from Next.js config"));const{backendBaseURL:I=process.env.MI_BACKEND_URL||"http://localhost:8080",appId:N,portalPageId:M,templateLess:R=!0,v7Features:z=!0,disableSSLValidation:H=!1,enableProxyCache:U=!0,proxyCacheTTL:V=6e5,personalAccessToken:B=process.env.MI_ACCESS_TOKEN,miHudLess:q=!1}=_,Z=N??M??(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;let X=null;if(!X)try{const{getPkg:e}=await import("./index-Co3ktLxA.js").then(e=>e.d),t=e();X=t.name}catch(e){X=m(C)}const Y="/p",J="/pl",Q=D?.basePath;let ee="";Q?ee=Q:(ee=R?Y:z?J:"/pt",ee+=`/${X}`);const te=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),oe=async e=>{delete process.env.TURBOPACK,o&&"function"==typeof o.close&&(await o.close(),o=null);const t={dev:!0,customServer:!0,hostname:j.host||"localhost",port:j.port,dir:C,conf:{...D,basePath:ee,assetPrefix:`${R?Y:"/pt"}/${X}`}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),o=c(t),await o.prepare()};if(te.webpack)await oe({webpack:!0});else if(te.turbopack)try{await oe({turbopack:!0})}catch(e){if(!O(e))throw e;r.warn(w.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await oe({webpack:!0})}else try{await oe({})}catch(e){if(!O(e))throw e;r.warn(w.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await oe({webpack:!0})}if(!o)throw new Error("Next.js app failed to initialize");if(ee.endsWith("/")||(ee+="/"),"/"===ee)throw new Error('basePath cannot be equal to "/" or equal to empty string');r.info(w.green("āœ… Next.js app prepared successfully")),r.info(w.blue(`šŸ”§ pp-dev plugin configured for template: ${X}`)),r.info(w.blue(`šŸ”§ Base path configured: ${ee}`)),I&&(r.info(w.blue(`🌐 Backend URL: ${I}`)),r.info(w.blue(`šŸ†” Custom App ID: ${Z}`)));const ne=o.getRequestHandler(),ie="number"==typeof j.port?j.port:3e3,se="string"==typeof j.host?j.host||"0.0.0.0":"localhost",re=new Set;n=b(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=L(o,!0);if(le.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(ce.length>0){let l=0;const c=()=>{if(l>=ce.length)return void s();const o=ce[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=le.length)return void s();const o=le[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(ee))i=L(o,!0);else{if(n===ee.replace(/\/$/,"")){const e=o.replace(n,ee);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:ee}),void t.end()}await ne(e,t,i)}s()}catch(d){console.error("[DEBUG] Error:",d),t.statusCode=500,t.end("Internal Server Error")}});let ae=null,le=[],ce=[];if(I){const e=new URL(I).host,t={headers:{host:e,referer:I,origin:I.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},portalPageId:Z,appId:Z,templateLess:R,disableSSLValidation:H,v7Features:z,personalAccessToken:B??process.env.MI_ACCESS_TOKEN};ae=new v(I,t);const o=y(ee,X??void 0),n=(e,t,n)=>{o(e,t,n)};if(ce.push(n),le.push(n),U){let e=+V;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=x({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};le.push(n),r.info(w.blue(`šŸ”§ Proxy cache middleware added with TTL: ${e}ms`))}const i=new RegExp(`^((${l=ee,l.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),s=P(i,ae,Object.assign({base:ee},t)),a=(e,t,o)=>{s(e,t,o)};le.push(a);const c=ee.endsWith("/")?ee.substring(0,ee.length-1):ee,d={middlewares:{use:e=>e},config:{logger:console}},p=T({devServer:d,baseURL:I,proxyIgnore:["/@vite","/@metricinsights","/@",c,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:H,miAPI:ae,templateName:X??void 0}),f=(e,t,o)=>{p(e,t,o)};le.push(f);const h=$,u=(e,t,o)=>{if(e.url?.startsWith("/@api/")){return void h(e,t,()=>{})}o()};ce.push(u),le.push(u);const g=k(e=>{const t=e.split("?")[0];return t.startsWith(ee)&&!t.includes("/_next/")},(t,o)=>Buffer.from(S(e,o.headers.host??"",ae.buildPage(t,q)))),m=(e,t,o)=>{g(e,t,o)};le.push(m),r.info(w.blue(`šŸ”§ ${le.length} pp-dev middlewares initialized`)),r.info(w.blue(`šŸ”§ ${ce.length} essential middlewares for internal routes`)),r.info(w.blue(`šŸ”§ MiAPI initialized for backend: ${I}`)),r.info(w.blue(`šŸ”§ Custom App ID: ${Z}`))}n.listen(ie,se,()=>{r.info(w.green(`āœ… pp-dev Next.js server running at http://${se}:${ie}`)),r.info(w.blue(`šŸ“± Next.js app accessible at http://${se}:${ie}${ee}`)),r.info(w.blue("šŸ”§ Base path handling active")),i||(i=G(C,a,r.info),r.info(w.blue("šŸ”§ Config file watcher started"))),n.on("connection",e=>{re.add(e),e.on("close",()=>re.delete(e))});const e=async e=>{r.info(w.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{r.info(w.yellow("ā° Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{i&&(W(i),i=null);for(const e of Array.from(re))e.destroy();re.clear(),await new Promise(e=>{n.close(()=>{r.info(w.yellow("šŸ›‘ HTTP server closed")),e()})}),o&&"function"==typeof o.close&&(await o.close(),r.info(w.yellow("šŸ›‘ Next.js app closed"))),clearTimeout(t),r.info(w.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),r.error(w.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,r.info(w.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=>{r.error(w.red(`āŒ Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{r.error(w.red(`āŒ Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),r.info(w.green("āœ… Process event handlers registered successfully"))}catch(e){r.warn(w.yellow(`āš ļø Failed to register process event handlers: ${e}`))}else r.warn(w.yellow("āš ļø process.on is not available, graceful shutdown handlers will not be registered")),r.info(w.blue("šŸ’” This might be due to bundling or environment constraints"))}),s=!1}catch(e){s=!1,r.error(w.red(`āŒ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(r.error(w.red("āŒ Next.js Peer Dependency Error:")),r.error(w.red(e.message)),r.error(w.yellow("\nšŸ’” To fix this issue:")),r.error(w.blue(" 1. Install Next.js in your project:")),r.error(w.white(" npm install next@^16")),r.error(w.blue(" 2. Or use yarn:")),r.error(w.white(" yarn add next@^16")),r.error(w.blue(" 3. Or use pnpm:")),r.error(w.white(" pnpm add next@^16")),r.error(w.yellow("\nšŸ“– For more information, see:")),r.error(w.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var l}},l=async e=>{r.info(w.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{i&&(W(i),i=null),n&&await new Promise(e=>{n.close(()=>{n=null,e()})}),o&&"function"==typeof o.close&&(await o.close(),o=null),r.info(w.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){r.error(w.red(`āŒ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>l("SIGINT")),process.on("SIGTERM",()=>l("SIGTERM")),process.on("uncaughtException",e=>{r.error(w.red(`āŒ Uncaught Exception: ${e}`)),l("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{r.error(w.red(`āŒ Unhandled Rejection at: ${t}, reason: ${e}`)),l("unhandledRejection")}),await a()}),H.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)").action(async(o,n)=>{q(n);const i=K(n);try{const l=await s({mode:n.mode||"production",command:"build"},n.config,o,n.logLevel);let c=await f();if(l){const{plugins:e,...t}=l.config;c=r(c,t)}const d=r(c,{root:o,base:n.base,mode:n.mode,configFile:n.config,logLevel:n.logLevel,clearScreen:n.clearScreen,optimizeDeps:{force:n.force},build:i},!0);if(await a(d),i.changelog){const s=o||process.cwd(),r=d.build?.outDir||"dist";let a="";if("string"==typeof i.changelog)a=e.resolve(s,i.changelog);else{const o=e.resolve(s,d.ppDevConfig?.syncBackupsDir||"backups");if(!t.existsSync(o))return void b(n.logLevel).warn(w.yellow("backups directory not found, skipping changelog generation"));const i=t.readdirSync(o,{withFileTypes:!0});if(!i.length)return void b(n.logLevel).warn(w.yellow("no backups found, skipping changelog generation"));const r=i.filter(e=>e.isFile()&&e.name.endsWith(".zip")).reduce((n,i)=>t.statSync(e.resolve(o,n.name)).mtimeMs>t.statSync(e.resolve(o,i.name)).mtimeMs?n:i,i[0]).name;a=e.resolve(o,r)}const l=e.resolve(s,r);let c="dist-zip";d.ppDevConfig&&(!1===d.ppDevConfig.distZip?c=d.build?.outDir||"dist":"object"==typeof d.ppDevConfig.distZip&&"string"==typeof d.ppDevConfig.distZip.outDir&&(c=d.ppDevConfig.distZip.outDir));const p=new R({oldAssetsPath:a,newAssetsPath:l,destinationPath:e.resolve(s,c)});await p.generateChangelog()}}catch(e){b(n.logLevel).error(w.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{B(e=>b(n.logLevel).info(e))}}),H.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)=>{q(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:r=".",filename:a="CHANGELOG.html",logLevel:l}=n,c=process.cwd();i&&s||(b(l).error(w.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const d=e.resolve(c,i),p=e.resolve(c,s),f=e.resolve(c,r),h=new R({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await h.generateChangelog()}),H.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)=>{q(n);const{source:i=t,destination:s=o,fontName:r="icon-font"}=n,a=process.cwd(),l=e.resolve(a,i),c=e.resolve(a,s),d=new z({sourceDir:l,outputDir:c,fontName:r}),p=b(n.logLevel);p.info(`Generating icon font from SVG files in ${w.dim(l)}`),await d.generate(),p.info(`Icon font generated and saved to ${w.dim(c)}`)}),H.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(e,t)=>{q(t);try{const o=await s({mode:t.mode||"production",command:"build"},t.config,e,t.logLevel);let n=await f();if(o){const{plugins:e,...t}=o.config;n=r(n,t)}const i=await l(r(n,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode}),"serve");await c(i,t.force,!0)}catch(e){b(t.logLevel).error(w.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),H.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)=>{q(t);try{const o=await s({mode:t.mode||"production",command:"build"},t.config,e,t.logLevel);let n=await f();if(o){const{plugins:e,...t}=o.config;n=r(n,t)}(await d(r(n,{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){b(t.logLevel).error(w.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{B(e=>b(t.logLevel).info(e))}}),H.help(),H.version(h),H.parse();export{B 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{loadConfigFromFile as r,mergeConfig as a,build as l,resolveConfig as c,optimizeDeps as d,preview as p,loadEnv as f}from"vite";import{g as h,V as u,s as g,P as m,a as b}from"./index-basLGB1P.js";import{c as w,a as v,M as y,i as x,b as P,d as T,e as $,f as k,g as S,u as L}from"./plugin-B6DaUVqp.js";import{parse as E}from"url";import*as F from"dir-compare";import j from"diff-match-patch";import{isBinaryFile as A}from"isbinaryfile";import*as I from"os";import*as C from"crypto";import D from"extract-zip";import _ from"svgtofont";import"child_process";import"ejs";import"http-proxy-middleware";import"picocolors";import"axios";import"node:http";import"node:https";import"jsdom";import"process";import"console";import"memory-cache";import"zlib";import"express";function N(e){return null!=e&&!1!==e}let M=null;const R=[{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 z=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class H{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:r,diffLineTemplateHandler:a,changelogFilename:l,contextLines:c}=t;if(this.logger=w(),!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(I.tmpdir(),C.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(I.tmpdir(),C.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=l||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(v.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 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){return t.rmSync(o,{force:!0,recursive:!0}),D(e,{dir: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(v.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await F.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(z.test(e)&&(e=e.replace(z,"$1$3")),z.test(t)&&(t=t.replace(z,"$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 j,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 A(n)||await A(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(v.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(v.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(v.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class G{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await _({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}const W=s("pp-dev");function O(t,o,n){const s=[...m,...b,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let a=null;return r.on("change",i=>{n(v.blue(`šŸ”§ Config file changed: ${e.relative(t,i)}`)),a&&clearTimeout(a),a=setTimeout(async()=>{try{n(v.yellow("šŸ”„ Restarting dev server due to config change...")),await o()}catch(e){n(v.red(`āŒ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(v.red(`āŒ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function U(e){e.watcher&&e.watcher.close()}function B(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)}let V=global.__pp_dev_profile_session,q=0;const Z=o=>{if(V)return new Promise((n,i)=>{V.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${q++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(v.yellow(`CPU profile written to ${v.white(v.dim(i))}`)),V=void 0,n()}})})},K=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function X(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}W.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"),W.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)=>{K(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=w(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(v.yellow("šŸ›‘ Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:e}=await import("./index-basLGB1P.js").then(e=>e.d);e();const{createServer:g}=await import("vite"),m=await r({mode:o.mode||"development",command:"serve"},o.config,t,o.logLevel);let b=await h();const y=f(o.mode||"development",t??process.cwd(),"");if(y&&Object.keys(y).forEach(e=>{e.startsWith("MI_")&&(process.env[e]=y[e])}),m){const{plugins:e,...t}=m.config;b=a(b,t)}if(i=await g(a(b,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:X(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const x=global.__pp_dev_start_time??!1,P=x?v.dim(`ready in ${v.reset(v.bold(Math.ceil(n.now()-x)))} ms`):"";d.info(`\n ${v.green(`${v.bold("PP-DEV")} v${u}`)} ${P}\n`),i.printUrls(),function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=w();t.print&&o.info(v.dim(v.green(" āžœ"))+v.dim(" press ")+v.bold("h")+v.dim(" to show help"));const n=(t.customShortcuts??[]).filter(N).concat(R);M?.(),M=null;let i=!1;const s=process.stdin.isPaused(),r=process.stdin,a=Boolean(r.isRaw),l=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(["",v.bold(" Shortcuts"),...n.map(e=>v.dim(" press ")+v.bold(e.key)+v.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",l).setEncoding("utf8").resume();const c=e.httpServer,d=()=>{M===d&&(c.removeListener("close",d),process.stdin.off("data",l),a||process.stdin.setRawMode(!1),s&&process.stdin.pause(),M=null)};M=d,c.on("close",d)}(i,{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("/")}`}})}}]}),s||(s=O(c,p,d.info),d.info(v.blue("šŸ”§ Config file watcher started"))),l=!1}catch(e){l=!1,d.error(v.red(`error when starting dev server:\n${e.stack}`),{error:e}),Z(d.info),process.exit(1)}}},g=async e=>{d.info(v.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{s&&(U(s),s=null),i&&(await i.close(),i=null),Z(d.info),d.info(v.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){d.error(v.red(`āŒ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>g("SIGINT")),process.on("SIGTERM",()=>g("SIGTERM")),process.on("uncaughtException",e=>{d.error(v.red(`āŒ Uncaught Exception: ${e}`)),g("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(v.red(`āŒ Unhandled Rejection at: ${t}, reason: ${e}`)),g("unhandledRejection")}),await p()}),W.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)=>{K(t);let n=null,i=null,s=null,r=!1;const a=w(),l=async()=>{if(!r){r=!0;try{const{next:d,constants:p}=await g(),{PHASE_DEVELOPMENT_SERVER:h}=p;i&&(a.info(v.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:u}=await import("./index-basLGB1P.js").then(e=>e.d);u();const{join:m,basename:b}=await import("path"),{createServer:w}=await import("http"),F=await import("next/dist/server/config.js"),j=F.default.default||F["module.exports"].default||F.default,A=X(t),I=f(t.mode||"development",e??process.cwd(),"");I&&Object.keys(I).forEach(e=>{e.startsWith("MI_")&&(process.env[e]=I[e])});const C=e?m(process.cwd(),e):process.cwd();a.info(C);const D=await j(h,C);let _=D?.ppDev||{};if(0===Object.keys(_).length)try{const{getConfig:e}=await import("./index-basLGB1P.js").then(e=>e.d),t=await e();Object.keys(t).length>0?(_=t,a.info(v.blue("šŸ”§ Loaded pp-dev config from standalone config file"))):a.info(v.yellow("āš ļø No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){a.info(v.yellow("āš ļø Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else a.info(v.blue("šŸ”§ Loaded pp-dev config from Next.js config"));const{backendBaseURL:N=process.env.MI_BACKEND_URL||"http://localhost:8080",appId:M,portalPageId:R,templateLess:z=!0,v7Features:H=!0,disableSSLValidation:G=!1,enableProxyCache:W=!0,proxyCacheTTL:V=6e5,personalAccessToken:q=process.env.MI_ACCESS_TOKEN,miHudLess:Z=!1}=_,K=M??R??(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;let Y=null;if(!Y)try{const{getPkg:e}=await import("./index-basLGB1P.js").then(e=>e.d),t=e();Y=t.name}catch(e){Y=b(C)}const J="/p",Q="/pl",ee=D?.basePath;let te="";ee?te=ee:(te=z?J:H?Q:"/pt",te+=`/${Y}`);const oe=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),ne=async e=>{delete process.env.TURBOPACK,n&&"function"==typeof n.close&&(await n.close(),n=null);const t={dev:!0,customServer:!0,hostname:A.host||"localhost",port:A.port,dir:C,conf:{...D,basePath:te,assetPrefix:`${z?J:"/pt"}/${Y}`}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),n=d(t),await n.prepare()};if(oe.webpack)await ne({webpack:!0});else if(oe.turbopack)try{await ne({turbopack:!0})}catch(e){if(!B(e))throw e;a.warn(v.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await ne({webpack:!0})}else try{await ne({})}catch(e){if(!B(e))throw e;a.warn(v.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await ne({webpack:!0})}if(!n)throw new Error("Next.js app failed to initialize");if(te.endsWith("/")||(te+="/"),"/"===te)throw new Error('basePath cannot be equal to "/" or equal to empty string');a.info(v.green("āœ… Next.js app prepared successfully")),a.info(v.blue(`šŸ”§ pp-dev plugin configured for template: ${Y}`)),a.info(v.blue(`šŸ”§ Base path configured: ${te}`)),N&&(a.info(v.blue(`🌐 Backend URL: ${N}`)),a.info(v.blue(`šŸ†” Custom App ID: ${K}`)));const ie=n.getRequestHandler(),se="number"==typeof A.port?A.port:3e3,re="string"==typeof A.host?A.host||"0.0.0.0":"localhost",ae=new Set;i=w(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=E(o,!0);if(ce.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(de.length>0){let l=0;const c=()=>{if(l>=de.length)return void s();const o=de[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=ce.length)return void s();const o=ce[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(te))i=E(o,!0);else{if(n===te.replace(/\/$/,"")){const e=o.replace(n,te);return t.writeHead(302,{Location:e}),void t.end()}if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:te}),void t.end()}await ie(e,t,i)}s()}catch(d){console.error("[DEBUG] Error:",d),t.statusCode=500,t.end("Internal Server Error")}});let le=null,ce=[],de=[];if(N){const e=new URL(N).host;N.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const t={headers:{host:e,referer:N,origin:N.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},portalPageId:K,appId:K,templateLess:z,disableSSLValidation:G,v7Features:H,personalAccessToken:q??process.env.MI_ACCESS_TOKEN};le=new y(N,t);const n=x(te,Y??void 0),i=(e,t,o)=>{n(e,t,o)};if(de.push(i),ce.push(i),W){let e=+V;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=P({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};ce.push(n),a.info(v.blue(`šŸ”§ Proxy cache middleware added with TTL: ${e}ms`))}const s=new RegExp(`^((${c=te,c.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),r=T(s,le,Object.assign({base:te},t)),l=(e,t,o)=>{r(e,t,o)};ce.push(l);const d=te.endsWith("/")?te.substring(0,te.length-1):te,p={middlewares:{use:e=>e},config:{logger:console}},f=$({devServer:p,baseURL:N,proxyIgnore:["/@vite","/@metricinsights","/@",d,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:G,miAPI:le,templateName:Y??void 0}),h=(e,t,o)=>{f(e,t,o)};ce.push(h);const u=k,g=(e,t,o)=>{if(e.url?.startsWith("/@api/")){return void u(e,t,()=>{})}o()};de.push(g),ce.push(g);const m=S(e=>{const t=e.split("?")[0];return t.startsWith(te)&&!t.includes("/_next/")},(t,o)=>Buffer.from(L(e,o.headers.host??"",le.buildPage(t,Z)))),b=(e,t,o)=>{m(e,t,o)};ce.push(b),a.info(v.blue(`šŸ”§ ${ce.length} pp-dev middlewares initialized`)),a.info(v.blue(`šŸ”§ ${de.length} essential middlewares for internal routes`)),a.info(v.blue(`šŸ”§ MiAPI initialized for backend: ${N}`)),a.info(v.blue(`šŸ”§ Custom App ID: ${K}`))}i.listen(se,re,()=>{a.info(v.green(`āœ… pp-dev Next.js server running at http://${re}:${se}`)),a.info(v.blue(`šŸ“± Next.js app accessible at http://${re}:${se}${te}`)),a.info(v.blue("šŸ”§ Base path handling active")),s||(s=O(C,l,a.info),a.info(v.blue("šŸ”§ Config file watcher started"))),i.on("connection",e=>{ae.add(e),e.on("close",()=>ae.delete(e))});const e=async e=>{a.info(v.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{a.info(v.yellow("ā° Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{s&&(U(s),s=null);for(const e of Array.from(ae))e.destroy();ae.clear(),await new Promise(e=>{i.close(()=>{a.info(v.yellow("šŸ›‘ HTTP server closed")),e()})}),n&&"function"==typeof n.close&&(await n.close(),a.info(v.yellow("šŸ›‘ Next.js app closed"))),clearTimeout(t),a.info(v.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),a.error(v.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,a.info(v.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=>{a.error(v.red(`āŒ Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{a.error(v.red(`āŒ Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),a.info(v.green("āœ… Process event handlers registered successfully"))}catch(e){a.warn(v.yellow(`āš ļø Failed to register process event handlers: ${e}`))}else a.warn(v.yellow("āš ļø process.on is not available, graceful shutdown handlers will not be registered")),a.info(v.blue("šŸ’” This might be due to bundling or environment constraints"))}),r=!1}catch(e){r=!1,a.error(v.red(`āŒ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(a.error(v.red("āŒ Next.js Peer Dependency Error:")),a.error(v.red(e.message)),a.error(v.yellow("\nšŸ’” To fix this issue:")),a.error(v.blue(" 1. Install Next.js in your project:")),a.error(v.white(" npm install next@^16")),a.error(v.blue(" 2. Or use yarn:")),a.error(v.white(" yarn add next@^16")),a.error(v.blue(" 3. Or use pnpm:")),a.error(v.white(" pnpm add next@^16")),a.error(v.yellow("\nšŸ“– For more information, see:")),a.error(v.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var c}},c=async e=>{a.info(v.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{s&&(U(s),s=null),i&&await new Promise(e=>{i.close(()=>{i=null,e()})}),n&&"function"==typeof n.close&&(await n.close(),n=null),a.info(v.green("āœ… Graceful shutdown completed")),process.exit(0)}catch(e){a.error(v.red(`āŒ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>c("SIGINT")),process.on("SIGTERM",()=>c("SIGTERM")),process.on("uncaughtException",e=>{a.error(v.red(`āŒ Uncaught Exception: ${e}`)),c("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{a.error(v.red(`āŒ Unhandled Rejection at: ${t}, reason: ${e}`)),c("unhandledRejection")}),await l()}),W.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)").action(async(o,n)=>{K(n);const i=X(n);try{const s=await r({mode:n.mode||"production",command:"build"},n.config,o,n.logLevel);let c=await h();if(s){const{plugins:e,...t}=s.config;c=a(c,t)}const d=a(c,{root:o,base:n.base,mode:n.mode,configFile:n.config,logLevel:n.logLevel,clearScreen:n.clearScreen,optimizeDeps:{force:n.force},build:i},!0);if(await l(d),i.changelog){const s=o||process.cwd(),r=d.build?.outDir||"dist";let a="";if("string"==typeof i.changelog)a=e.resolve(s,i.changelog);else{const o=e.resolve(s,d.ppDevConfig?.syncBackupsDir||"backups");if(!t.existsSync(o))return void w(n.logLevel).warn(v.yellow("backups directory not found, skipping changelog generation"));const i=t.readdirSync(o,{withFileTypes:!0});if(!i.length)return void w(n.logLevel).warn(v.yellow("no backups found, skipping changelog generation"));const r=i.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!r.length)return void w(n.logLevel).warn(v.yellow("no ZIP backups found, skipping changelog generation"));const l=r.reduce((n,i)=>t.statSync(e.resolve(o,n.name)).mtimeMs>t.statSync(e.resolve(o,i.name)).mtimeMs?n:i).name;a=e.resolve(o,l)}const l=e.resolve(s,r);let c="dist-zip";d.ppDevConfig&&(!1===d.ppDevConfig.distZip?c=d.build?.outDir||"dist":"object"==typeof d.ppDevConfig.distZip&&"string"==typeof d.ppDevConfig.distZip.outDir&&(c=d.ppDevConfig.distZip.outDir));const p=new H({oldAssetsPath:a,newAssetsPath:l,destinationPath:e.resolve(s,c)});await p.generateChangelog()}}catch(e){w(n.logLevel).error(v.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Z(e=>w(n.logLevel).info(e))}}),W.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)=>{K(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:r=".",filename:a="CHANGELOG.html",logLevel:l}=n,c=process.cwd();i&&s||(w(l).error(v.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const d=e.resolve(c,i),p=e.resolve(c,s),f=e.resolve(c,r),h=new H({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await h.generateChangelog()}),W.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)=>{K(n);const{source:i=t,destination:s=o,fontName:r="icon-font"}=n,a=process.cwd(),l=e.resolve(a,i),c=e.resolve(a,s),d=new G({sourceDir:l,outputDir:c,fontName:r}),p=w(n.logLevel);p.info(`Generating icon font from SVG files in ${v.dim(l)}`),await d.generate(),p.info(`Icon font generated and saved to ${v.dim(c)}`)}),W.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(e,t)=>{K(t);try{const o=await r({mode:t.mode||"production",command:"build"},t.config,e,t.logLevel);let n=await h();if(o){const{plugins:e,...t}=o.config;n=a(n,t)}const i=await c(a(n,{root:e,base:t.base,configFile:t.config,logLevel:t.logLevel,mode:t.mode}),"serve");await d(i,t.force,!0)}catch(e){w(t.logLevel).error(v.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),W.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)=>{K(t);try{const o=await r({mode:t.mode||"production",command:"build"},t.config,e,t.logLevel);let n=await h();if(o){const{plugins:e,...t}=o.config;n=a(n,t)}(await p(a(n,{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){w(t.logLevel).error(v.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{Z(e=>w(t.logLevel).info(e))}}),W.help(),W.version(u),W.parse();export{Z as stopProfiler};
2
2
  //# sourceMappingURL=cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sources":["../../../../src/shortcuts.ts","../../../../src/lib/changelog-generator.ts","../../../../src/lib/icon-font-generator.ts","../../../../src/cli.ts"],"sourcesContent":[null,null,null,null],"names":["isDefined","value","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","extractZip","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","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","PP_WATCH_CONFIG_NAMES","file","watcher","watch","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","on","relative","clearTimeout","setTimeout","async","error","red","stack","cleanupConfigWatcher","isNextTurbopackNativeBindingsError","msg","String","profileSession","global","__pp_dev_profile_session","profileCount","stopProfiler","log","res","rej","post","err","profile","outPath","JSON","stringify","white","dim","undefined","filterDuplicateOptions","Object","entries","Array","isArray","cleanOptions","ret","c","l","logLevel","debug","f","m","mode","option","command","alias","root","configWatcher","isRestarting","cwd","startServer","clearConfigCache","import","n","createServer","configFromFile","loadConfigFromFile","getViteConfig","envVars","loadEnv","keys","forEach","env","plugins","fileConfig","mergeConfig","configFile","optimizeDeps","customLogger","httpServer","listen","ppDevStartTime","__pp_dev_start_time","startupDurationString","reset","bold","Math","ceil","performance","now","VERSION","stdin","isTTY","CI","_shortcutsOptions","print","shortcuts","customShortcuts","concat","actionRunning","onInput","input","shortcut","find","setRawMode","setEncoding","resume","off","pause","bindShortcuts","inspector","r","default","Session","connect","ws","send","type","event","data","url","encodeURIComponent","e","gracefulShutdown","signal","reason","promise","nextApp","startNextServer","next","constants","safeNextImport","PHASE_DEVELOPMENT_SERVER","importConfig","loadConfig","ppDevConfig","ppDev","getConfig","standaloneConfig","console","backendBaseURL","MI_BACKEND_URL","appId","originalAppId","portalPageId","templateLess","v7Features","disableSSLValidation","enableProxyCache","proxyCacheTTL","personalAccessToken","MI_ACCESS_TOKEN","miHudLess","MI_APP_ID","parseInt","MI_PORTAL_PAGE_ID","templateName","getPkg","pkg","name","pathPagePrefix","pathTemplateLocalPrefix","configBasePath","basePath","bundlerChoice","envWebpack","PP_DEV_NEXT_WEBPACK","webpack","turbopack","parseNextBundlerCli","createAndPrepareNext","bundler","TURBOPACK","nextOptions","dev","customServer","hostname","host","port","conf","assetPrefix","prepare","handle","getRequestHandler","openSockets","Set","req","originalUrl","originalPathname","parsedUrl","parse","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","end","statusCode","mi","baseUrlHost","URL","miConfig","headers","referer","origin","MiAPI","ppRedirectMiddleware","initPPRedirect","ppRedirectWrapper","push","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","internalServer","internalServerWrapper","rewriteResponseMiddleware","initRewriteResponse","pathname","response","Buffer","from","urlReplacer","buildPage","rewriteResponseWrapper","socket","add","delete","shutdownTimeout","destroy","processObj","globalProcess","globalThis","buildOptions","buildConfig","build","changelog","executionRoot","outDir","backupsDirPath","syncBackupsDir","backups","latestBackup","isFile","reduce","latest","current","statSync","mtimeMs","currentAssetFilePath","changelogDestination","distZip","changelogGenerator","oldAssetPath","newAssetPath","oldPath","newPath","destination","fullOldPath","fullNewPath","fullDestination","source","destDir","fullSourceDir","fullDestDir","iconFontGenerator","optimizeConfig","resolveConfig","preview","strictPort","https","open","help","version"],"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/cli.ts"],"sourcesContent":[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","extractZip","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","cli","cac","createConfigWatcher","projectRoot","restartCallback","watchPatterns","PP_DEV_CONFIG_NAMES","PP_WATCH_CONFIG_NAMES","file","watcher","watch","ignored","filePath","base","basename","startsWith","persistent","ignoreInitial","followSymlinks","restartTimeout","on","relative","clearTimeout","setTimeout","async","error","red","stack","cleanupConfigWatcher","isNextTurbopackNativeBindingsError","msg","String","profileSession","global","__pp_dev_profile_session","profileCount","stopProfiler","log","res","rej","post","err","profile","outPath","JSON","stringify","white","dim","undefined","filterDuplicateOptions","Object","entries","Array","isArray","cleanOptions","ret","c","l","logLevel","debug","f","m","mode","option","command","alias","root","configWatcher","isRestarting","cwd","startServer","clearConfigCache","import","n","createServer","configFromFile","loadConfigFromFile","getViteConfig","envVars","loadEnv","keys","forEach","env","plugins","fileConfig","mergeConfig","configFile","optimizeDeps","customLogger","httpServer","listen","ppDevStartTime","__pp_dev_start_time","startupDurationString","reset","bold","Math","ceil","performance","now","VERSION","stdin","isTTY","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","off","pause","bindShortcuts","inspector","r","default","Session","connect","ws","send","type","event","data","url","encodeURIComponent","e","gracefulShutdown","signal","reason","promise","nextApp","startNextServer","next","constants","safeNextImport","PHASE_DEVELOPMENT_SERVER","importConfig","loadConfig","ppDevConfig","ppDev","getConfig","standaloneConfig","console","backendBaseURL","MI_BACKEND_URL","appId","originalAppId","portalPageId","templateLess","v7Features","disableSSLValidation","enableProxyCache","proxyCacheTTL","personalAccessToken","MI_ACCESS_TOKEN","miHudLess","MI_APP_ID","parseInt","MI_PORTAL_PAGE_ID","templateName","getPkg","pkg","name","pathPagePrefix","pathTemplateLocalPrefix","configBasePath","basePath","bundlerChoice","envWebpack","PP_DEV_NEXT_WEBPACK","webpack","turbopack","parseNextBundlerCli","createAndPrepareNext","bundler","TURBOPACK","nextOptions","dev","customServer","hostname","host","port","conf","assetPrefix","prepare","handle","getRequestHandler","openSockets","Set","req","originalUrl","originalPathname","parsedUrl","parse","fullMiddlewareChain","essentialMiddlewareChain","middlewareIndex","runEssentialMiddleware","processNextJSRequest","middleware","runMiddleware","redirectUrl","writeHead","Location","end","statusCode","mi","baseUrlHost","URL","EventEmitter","defaultMaxListeners","max","miConfig","headers","referer","origin","MiAPI","ppRedirectMiddleware","initPPRedirect","ppRedirectWrapper","push","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","internalServer","internalServerWrapper","rewriteResponseMiddleware","initRewriteResponse","pathname","response","Buffer","from","urlReplacer","buildPage","rewriteResponseWrapper","socket","add","delete","shutdownTimeout","destroy","processObj","globalProcess","globalThis","buildOptions","buildConfig","build","changelog","executionRoot","outDir","backupsDirPath","syncBackupsDir","backups","zipBackups","isFile","latestBackup","reduce","latest","current","statSync","mtimeMs","currentAssetFilePath","changelogDestination","distZip","changelogGenerator","oldAssetPath","newAssetPath","oldPath","newPath","destination","fullOldPath","fullNewPath","fullDestination","source","destDir","fullSourceDir","fullDestDir","iconFontGenerator","optimizeConfig","resolveConfig","preview","strictPort","https","open","help","version"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../src/helpers/formatting.ts"],"sourcesContent":[null],"names":["templateFunction","strings","values","String","raw","html","css"],"mappings":"AASO,MAAMA,EAAmB,CAACC,KAAkCC,IACjEC,OAAOC,IAAI,CAAEA,IAAKH,MAAcC,GAOrBG,EAAOL,EAOPM,EAAMN"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../src/helpers/formatting.ts"],"sourcesContent":[null],"names":["templateFunction","strings","values","String","raw","html","css"],"mappings":"AASO,MAAMA,EAAmB,CAACC,KAAkCC,IACjEC,OAAOC,IAAI,CAAEA,IAAKH,MAAcC,GAOrBG,EAAOL,EAOPM,EAAMN"}
@@ -0,0 +1,2 @@
1
+ import{execSync as e}from"child_process";import{n as t}from"./plugin-B6DaUVqp.js";import*as n from"fs";import{readFileSync as i,existsSync as s,readdirSync as a,writeFileSync as r,unlink as o}from"fs";import*as c from"path";import p,{resolve as l}from"path";import{fileURLToPath as u,pathToFileURL as f}from"url";import{normalizePath as m}from"vite";import d from"ejs";const g=l("undefined"!=typeof __filename&&__filename||u(import.meta.url),"../../.."),h=l("undefined"!=typeof __filename&&__filename||u(import.meta.url),"../.."),j=s(l(g,"package.json"))?g:h,v=l(j,"dist/client/client.js"),{version:y,name:w}=JSON.parse(i(l(j,"package.json")).toString()),_=y,$=w,b=[".pp-watch.config.js",".pp-watch.config.ts",".pp-watch.config.json"],R=[".pp-dev.config.js",".pp-dev.config.cjs",".pp-dev.config.mjs",".pp-dev.config.ts",".pp-dev.config.cts",".pp-dev.config.mts",".pp-dev.config.json","pp-dev.config.js","pp-dev.config.cjs","pp-dev.config.mjs","pp-dev.config.ts","pp-dev.config.cts","pp-dev.config.mts","pp-dev.config.json"];const E=new class{cache;_maxSize;constructor(e=10){this._maxSize=e,this.cache=new Map}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=e}get(e){if(this.cache.has(e)){const t=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,t),t}}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this._maxSize){const e=this.cache.keys().next().value;void 0!==e&&this.cache.delete(e)}this.cache.set(e,t)}clear(){this.cache.clear()}has(e){return this.cache.has(e)}}(5),S=new Map;let I;try{I="undefined"!=typeof __filename&&__filename?c.resolve(c.dirname(__filename),".."):void 0!==import.meta&&import.meta&&import.meta.url?c.resolve(u(new URL(".",import.meta.url)),".."):process.cwd()}catch{I=process.cwd()}const T=`/${$}/client`,P=`/${T}`,x=new RegExp(`^\\/?${$}\\/client\\/(.*)$`);const O={templateCompilations:0,cacheHits:0,totalRequests:0};function D(e){let t="",i=!1,s=null;return{name:"pp-dev:client",apply:"serve",config:e=>(e.optimizeDeps?.exclude?.push(`${$}/client`),e),resolveId(e){if(x.test(e))return{id:m(c.join(j,"dist/client",e.replace(x,"$1")))}},transformIndexHtml:async(e,a)=>{O.totalRequests++;const r=a.server?.config.base||"";r!==t&&(t=r,i=!0,s=null),s&&!i||(E.has(t)?(s=E.get(t),O.cacheHits++):(s=function(e,t=!0){const i=e;if(t&&E.has(i))return E.get(i);const s=c.resolve(I,"client","index.html");let a;S.has(s)?a=S.get(s):(a=n.readFileSync(s,{encoding:"utf8"}),S.set(s,a));const r=P.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),o=d.compile(a.replace(new RegExp(r,"g"),c.posix.join(e,T)),{openDelimiter:"{",closeDelimiter:"}",async:!0,cache:!0,filename:s,rmWhitespace:!0,compileDebug:!1});return t&&E.set(i,o),o}(t,true),O.templateCompilations++),i=!1);const o=function(e){return{css:c.posix.join(e,$,"client/client.css"),js:c.posix.join(e,$,"client/client.js")}}(t),p={html:e,tags:[{tag:"link",injectTo:"head",attrs:{rel:"stylesheet",href:o.css}}]},{backendBaseURL:l,templateLess:u,portalPageId:f,canSync:m=!0}=a.server?.config.clientInjectionPlugin||{},g={PACKAGE_NAME:$,VERSION:_,backendBaseURL:l,templateLess:u,portalPageId:f,canSync:m};return p.tags.push({tag:"div",injectTo:"body-prepend",children:await s(g)}),p.tags.push({tag:"script",injectTo:"body-prepend",attrs:{src:o.js,type:"module"}}),p},configureServer(e){const t=m(c.resolve(e.config.root,c.dirname(v)));e.config.server?.fs?.allow&&e.config.server.fs.allow.push(t),e.middlewares.use("/@api/__pp-dev-metrics",(e,t)=>{t.setHeader("Content-Type","application/json"),t.end(JSON.stringify(O,null,2))})},closeBundle(){E.clear(),S.clear()}}}const C=(e,t)=>` * ${t}`;function L(e){return`/*!\n${"***** DO NOT EDIT THIS CODE! *****\n***** ------- *****".replace(/^(.*)$/gm,C)}\n */`}async function k(){try{const[e,t]=await Promise.all([import("next"),import("next/constants.js")]);return{next:e.default,constants:t}}catch(e){throw new Error(`Next.js is required but not available. Please install Next.js as a dependency:\nnpm install next@^15\n\nThis package requires Next.js >=15 <17 as a peer dependency.\n\nError: ${e}`)}}async function U(){try{return await import("next"),!0}catch(e){return!1}}async function z(){try{return(await import("next/package.json")).version}catch{return null}}const N=new Map,B=3e4;let H=null;function F(){const e=Date.now();if(H&&e-H.timestamp<6e4)return H.data;const t=process.cwd();try{const n=JSON.parse(i(p.resolve(t,"package.json"),{encoding:"utf-8",flag:"r"}));return H={data:n,timestamp:e},n}catch{const t={};return H={data:t,timestamp:e},t}}let V=null;async function M(e){const t=process.cwd(),n=`ts:${e}`,i=N.get(n);if(i&&Date.now()-i.timestamp<B)return i.data;let a=!1;if(/\.m[jt]s$/.test(e))a=!0;else if(/\.c[jt]s$/.test(e))a=!1;else{const e=F();a=!!e&&"module"===e.type}const c=await async function(){return V||(V=await import("esbuild")),V}(),l=await c.build({absWorkingDir:t,entryPoints:[e],outfile:"out.js",write:!1,target:["node14.18","node16"],platform:"node",bundle:!0,format:a?"esm":"cjs",mainFields:["main"],sourcemap:"inline",metafile:!0}),{text:u}=l.outputFiles[0],m=`${`pp-config.timestamp-${Date.now()}-${Math.random().toString(16).slice(2)}`}.js`,d=f(p.resolve(t,m)).toString();r(m,u);let g={};try{const t=(await import(d)).default;g=t?.default||t,N.set(n,{data:g,timestamp:Date.now(),filePath:e})}finally{s(m)&&o(m,()=>{})}return g}async function A(e){const t=`js:${e}`,n=N.get(t);if(n&&Date.now()-n.timestamp<B)return n.data;const i=(await import(f(e).toString())).default;return N.set(t,{data:i,timestamp:Date.now(),filePath:e}),i}async function G(e){const t=`json:${e}`,n=N.get(t);if(n&&Date.now()-n.timestamp<B)return n.data;const s=JSON.parse(i(e,{encoding:"utf-8"}));return N.set(t,{data:s,timestamp:Date.now(),filePath:e}),s}let J=null;async function q(e,t){for(const n of t)if(e.includes(n)){if(/\.[cm]?ts$/i.test(n))return await M(n);if(/\.[cm]?js$/i.test(n))return await A(p.resolve(".",n));if(n.endsWith(".json"))return await G(p.resolve(".",n))}return null}function K(){return F()}async function W(){const e=function(){const e=Date.now();if(J&&e-J.timestamp<1e4)return J.files;const t=/\.config\.(([cm]?ts)|([cm]?js)|(json))$/,n=process.cwd(),i=a(n,{withFileTypes:!0}).filter(e=>e.isFile()&&t.test(e.name)).map(e=>e.name);return J={files:i,timestamp:e},i}();let t={},n=!1;const i=await q(e,R);if(i&&(t=i,n=!0),e.length&&!n){const i=await q(e,b);i&&(t={backendBaseURL:i.baseURL,portalPageId:i.portalPageId},n=!0)}const s=F();return n||"object"!=typeof s["pp-dev"]||(t=s["pp-dev"]),t}const Y=Object.freeze({__proto__:null,clearConfigCache:function(){N.clear(),H=null,J=null},getConfig:W,getConfigCacheStats:function(){return{configEntries:N.size,packageJsonCached:!!H,dirContentCached:!!J}},getPkg:K}),Z="/p",Q="/pt";function X(t){if("string"==typeof t)return t;if(t&&"object"==typeof t&&"url"in t&&"string"==typeof t.url)return t.url;const n=["CI_REPOSITORY_URL","GIT_URL","BUILD_REPOSITORY_URI","CI_PROJECT_URL","BITBUCKET_GIT_HTTP_ORIGIN","BUILDKITE_REPO"];for(const e of n){const t=process.env[e];if("string"==typeof t&&t.trim())return t}const i=process.env.GITHUB_REPOSITORY;if("string"==typeof i&&i.trim()){return`${(process.env.GITHUB_SERVER_URL||"https://github.com").replace(/\/+$/,"")}/${i.replace(/^\/+/,"")}`}const s=process.env.CI_PROJECT_PATH;if("string"==typeof s&&s.trim()){return`${(process.env.CI_SERVER_URL||"https://gitlab.com").replace(/\/+$/,"")}/${s.replace(/^\/+/,"")}`}const a=process.env.BITBUCKET_REPO_FULL_NAME;if("string"==typeof a&&a.trim())return`https://bitbucket.org/${a.replace(/^\/+/,"")}`;const r=process.env.TRAVIS_REPO_SLUG;if("string"==typeof r&&r.trim())return`https://github.com/${r.replace(/^\/+/,"")}`;try{const t=e("git config --get remote.origin.url",{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trim();if(t)return t}catch{}}async function ee(){const e=K(),n=e.name,i=await W(),s=t(Object.assign(i,{templateName:n})),{default:a}=await import("./plugin.js"),r=[a(s),D()],{outDir:o,distZip:c,versionPlugin:p,imageOptimizer:l,templateLess:u,integrateMiTopBar:f}=s;if(f&&r.push(function(e){return{name:"mi-topbar-plugin",transformIndexHtml(){const t=[];return(!0===e||"object"==typeof e&&!0===e.addRootElement)&&t.push({tag:"div",injectTo:"body-prepend",attrs:{id:"mi-react-root"}}),(!0===e||"object"==typeof e&&!0===e.addSharedComponentsScripts)&&t.push({tag:"script",injectTo:"head-prepend",attrs:{src:"/auth/info.js"}},{tag:"script",injectTo:"head-prepend",attrs:{src:"/js/main.js",defer:"defer"}},{tag:"link",injectTo:"head-prepend",attrs:{href:"/css/main.css",rel:"stylesheet"}}),t}}}(f)),l){const{ViteImageOptimizer:e}=await import("vite-plugin-image-optimizer");r.push(e("object"==typeof l?l:void 0))}if(p){const{versionPlugin:t}=await import("./version-plugin-DekxT1OJ.js");r.push(t({outDir:o,packageVersion:e.version??"0.0.0",packageRepositoryUrl:X(e.repository),..."object"==typeof p?p:{}}))}if(c){const{default:e}=await import("vite-plugin-zip-pack");r.push({...e("object"==typeof c?c:{outFileName:`${n}.zip`}),enforce:"post"})}return{base:u?`${Z}/${n}`:`${Q}/${n}`,server:{port:3e3},build:{minify:!1,assetsInlineLimit:4096,rollupOptions:{output:{banner:L}},outDir:o},css:{modules:{localsConvention:"dashes"}},ppDevConfig:s,plugins:r}}function te(e){return e?.ppDev||{}}function ne(e,t,n){return Object.assign({},e,t,n)}function ie(e,t){return async(n,i={})=>{try{const{constants:s}=await k(),{PHASE_DEVELOPMENT_SERVER:a}=s,r=await W(),o=K().name,c="function"==typeof e?await e(n,i):e,p=te(c),l=Object.assign({},r,p,t??{}),u=n===a,f=function(e,t,n,i){return n?i?t?`${Z}/${e}`:`/pl/${e}`:t?`${Z}/${e}`:`${Q}/${e}`:`/p/${e}`}(o,l.templateLess??!1,u,l.v7Features??!1),m={basePath:f,trailingSlash:!!u||void 0};return l.templateLess||(m.assetPrefix=`${Q}/${o}`),ne(m,c)}catch(t){console.error("Error in withPPDev:",t),console.warn("Falling back to original Next.js configuration");try{return"function"==typeof e?await e(n,i):e}catch(e){return console.error("Error in fallback configuration:",e),{}}}}}export{R as P,_ as V,b as a,z as b,te as c,Y as d,ee as g,U as i,k as s,ie as w};
2
+ //# sourceMappingURL=index-basLGB1P.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-basLGB1P.js","sources":["../../../src/constants.ts","../../../src/plugins/client-injection-plugin.ts","../../../src/banner/header.ts","../../../src/lib/next-import.ts","../../../src/config.ts","../../../src/index.ts","../../../src/plugins/mi-topbar-plugin.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["afterBundlePath","resolve","__filename","fileURLToPath","url","beforeBundlePath","PP_DEV_PACKAGE_DIR","existsSync","PP_DEV_CLIENT_ENTRY","version","name","JSON","parse","readFileSync","toString","VERSION","PACKAGE_NAME","PP_WATCH_CONFIG_NAMES","PP_DEV_CONFIG_NAMES","templateCache","cache","_maxSize","constructor","maxSize","this","Map","value","get","key","has","delete","set","size","firstKey","keys","next","undefined","clear","fileCache","DIRNAME","path","dirname","URL","process","cwd","PACKAGE_IMPORT","CLIENT_PATH","PACKAGE_REGEXP","RegExp","performanceMetrics","templateCompilations","cacheHits","totalRequests","clientInjectionPlugin","opts","base","baseChanged","currentTemplate","apply","config","optimizeDeps","exclude","push","resolveId","source","test","id","normalizePath","join","replace","transformIndexHtml","async","html","ctx","serverBase","server","enableCache","cacheKey","templatePath","templateContent","fs","encoding","escapedClientPath","compiledTemplate","ejs","compile","posix","openDelimiter","closeDelimiter","filename","rmWhitespace","compileDebug","getTemplate","assetPaths","css","js","getAssetPaths","result","tags","tag","injectTo","attrs","rel","href","backendBaseURL","templateLess","portalPageId","canSync","templateData","children","src","type","configureServer","clientDir","root","allow","middlewares","use","req","res","setHeader","end","stringify","closeBundle","replacer","substring","$1","header","_chunk","safeNextImport","constants","Promise","all","import","default","error","Error","isNextAvailable","getNextVersion","configCache","CACHE_TTL","packageJsonCache","getPackageJson","now","Date","timestamp","data","flag","empty","esbuildModule","loadTsConfig","filePath","cached","isESM","pkg","esbuild","getEsbuild","build","absWorkingDir","entryPoints","outfile","write","target","platform","bundle","format","mainFields","sourcemap","metafile","text","code","outputFiles","fileNameTmp","Math","random","slice","fileUrl","pathToFileURL","writeFileSync","conf","unlink","loadJsConfig","loadJSONConfig","dirContentCache","loadConfig","dirFiles","configNames","configName","includes","endsWith","getPkg","getConfig","dirContent","files","endsWithRegExp","readdirSync","withFileTypes","filter","isFile","map","getDirectoryContent","configFound","newConfig","length","watchConfig","baseURL","configEntries","packageJsonCached","dirContentCached","pathPagePrefix","pathTemplatePrefix","resolveRepositoryUrl","repository","directCiRepositoryUrlEnvVars","variableName","ciRepositoryUrl","env","trim","githubRepository","GITHUB_REPOSITORY","GITHUB_SERVER_URL","gitlabProjectPath","CI_PROJECT_PATH","CI_SERVER_URL","bitbucketRepositoryFullName","BITBUCKET_REPO_FULL_NAME","travisRepositorySlug","TRAVIS_REPO_SLUG","gitRemoteOriginUrl","execSync","stdio","getViteConfig","templateName","ppDevConfig","normalizedPPDevConfig","normalizeVitePPDevConfig","Object","assign","vitePPDev","plugins","outDir","distZip","versionPlugin","imageOptimizer","integrateMiTopBar","addRootElement","addSharedComponentsScripts","defer","miTopBarPlugin","ViteImageOptimizer","versionPluginFn","packageVersion","packageRepositoryUrl","zipPack","outFileName","enforce","port","minify","assetsInlineLimit","rollupOptions","output","banner","modules","localsConvention","getPPDevConfigFromNextConfig","nextConfig","ppDev","mergeConfigs","baseConfig","nextConfiguration","additionalConfig","withPPDev","nextjsConfig","phase","PHASE_DEVELOPMENT_SERVER","nextConfigPPDev","mergedConfig","isDevelopment","basePath","v7Features","createBasePath","trailingSlash","assetPrefix","console","warn","fallbackError"],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export{A as AuthProvider,h as authProvider}from"./plugin-CcoYWcTD.js";export{b as getNextVersion,c as getPPDevConfigFromNextConfig,g as getViteConfig,i as isNextAvailable,s as safeNextImport,w as withPPDev}from"./index-Co3ktLxA.js";import"http-proxy-middleware";import"url";import"vite";import"picocolors";import"axios";import"jsdom";import"https";import"memory-cache";import"path";import"fs";import"crypto";import"process";import"child_process";import"console";import"zlib";import"express";import"ejs";
1
+ import"child_process";export{A as AuthProvider,h as authProvider}from"./plugin-B6DaUVqp.js";export{b as getNextVersion,c as getPPDevConfigFromNextConfig,g as getViteConfig,i as isNextAvailable,s as safeNextImport,w as withPPDev}from"./index-basLGB1P.js";import"http-proxy-middleware";import"url";import"vite";import"picocolors";import"axios";import"node:http";import"node:https";import"jsdom";import"path";import"fs";import"crypto";import"process";import"console";import"os";import"extract-zip";import"memory-cache";import"zlib";import"express";import"ejs";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@metricinsights/pp-dev",
3
3
  "type": "module",
4
- "version": "0.18.0-beta.1",
4
+ "version": "0.18.1-beta.2",
5
5
  "description": "Portal Page dev build tool",
6
6
  "bin": {
7
7
  "pp-dev": "bin/pp-dev.js"