@metricinsights/pp-dev 0.13.1 → 0.13.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-DGza708W.js","sources":["../../../src/lib/helpers/url.helper.ts","../../../src/lib/logger.ts","../../../src/lib/helpers/color.helper.ts","../../../src/lib/helpers/login.helper.ts","../../../src/lib/proxy-pass.middleware.ts","../../../src/api/base.ts","../../../src/api/assets.ts","../../../src/api/assets-v7.ts","../../../src/api/page.ts","../../../src/api/page-template.ts","../../../src/lib/helpers/token.helper.ts","../../../src/lib/pp.middleware.ts","../../../src/lib/client.service.ts","../../../src/lib/proxy-cache.middleware.ts","../../../src/lib/dist.service.ts","../../../src/lib/rewrite-response.middleware.ts","../../../src/lib/helpers/content-encoding.helper.ts","../../../src/lib/pp-redirect.middleware.ts","../../../src/lib/auth.provider.ts","../../../src/lib/load-pp-data.middleware.ts","../../../src/lib/internal.middleware.ts","../../../src/plugin.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["urlReplacer","originalHost","destinationHost","content","urlReplaceRegExp","RegExp","replace","substring","args","startsWith","redirect","res","url","statusCode","setHeader","end","storage","Map","DEFAULT_LOGGER_KEY","createLogger","level","name","has","get","logger","cL","set","colors","createColors","tokenLoginFunction","TOKEN_TYPE_CONFIG","personal","placeholder","caption","host","endpoint","regular","updateTokenUI","type","tokenInput","tokenCaption","info","innerHTML","showError","message","errorElement","textContent","classList","add","hideError","remove","setupEventHandlers","formWrapper","submitButton","addEventListener","async","e","preventDefault","value","trim","focus","tokenTypeSwitcher","document","getElementById","activeOption","querySelector","tokenType","dataset","token","response","fetch","method","headers","body","JSON","stringify","URL","window","location","origin","pathname","json","error","parseError","href","networkError","handleFormSubmission","key","click","initializeLoginForm","loginForm","contentWrapper","firstChild","rowTemplate","lastChild","cloneNode","orRow","innerText","setAttribute","helperForm","formContent","createElement","styleElement","head","appendChild","tokenTypeOptions","querySelectorAll","handleTokenTypeChange","target","forEach","opt","option","currentTarget","setupTokenTypeSwitcher","console","observer","MutationObserver","mutations","mutation","disconnect","observe","childList","subtree","existingForm","hostOriginRegExp","PROXY_HEADER","initProxy","opts","rewritePath","baseURL","disableSSLValidation","miAPI","Error","fileType","import","createProxyMiddleware","selfHandleResponse","pathFilter","req","proxyIgnore","some","test","Array","isArray","rP","changeOrigin","autoRewrite","cookieDomainRewrite","log","warn","secure","on","proxyReq","referer","getHeader","blue","green","protocol","path","personalAccessToken","socket","setTimeout","destroyed","destroy","proxyRes","serverRes","includes","streamInterceptor","setHeaders","Object","entries","pipe","rewriteInterceptor","responseInterceptor","responseBuffer","fileTypeFromBuffer","toString","reqUrl","searchParams","redirectToFunction","storageKey","lastRedirectKey","redirectCount","localStorage","getItem","Number","isNaN","func","params","URLSearchParams","search","debug","removeItem","setItem","Date","toISOString","reqHost","urlPath","destinationPath","unescapedUrlReplaceRegExp","replacedContent","urlPathReplacer","err","errorMessage","stack","writable","writeHead","BaseAPI","axios","constructor","this","checkAuth","assign","accept","maxRedirects","then","catch","AssetsAPI","formdataModulePromise","super","getDownloadUrl","portalPageId","getDownloadTemplateUrl","templateId","getUploadUrl","getUploadTemplateUrl","downloadPageAssets","withCredentials","responseType","data","uploadPageAssets","file","formData","FormData","File","assetFile","append","post","Referer","getUri","downloadTemplateAssets","uploadTemplateAssets","AssetsV7API","PageAPI","getAll","Accept","Pragma","Expires","pages","id","page","getPageContent","internalPageName","create","PageTemplateAPI","internal_name","page_templates","page_template","getTokenErrorInfo","status","toLowerCase","code","userFriendlyMessage","suggestions","TEMPLATE_PAGE_NAME","axiosInstanceCache","MiAPI","pageTemplate","pageTitle","pageVars","v7Features","isV710OrHigher","templateLoaded","templateLoadedResolve","templateLess","assetsApi","pageApi","pageTemplateApi","Promise","resolve","cacheKey","process","env","NODE_TLS_REJECT_UNAUTHORIZED","default","defaults","httpsAgent","Agent","rejectUnauthorized","timeout","httpAgent","keepAlive","maxSockets","isTemplateLoaded","clearHeaders","obj","undefined","keys","authorization","updateHeaders","localTemplateHTML","getPageTemplate","red","template_id","find","p","yellow","enabled","visible_in_homepage","getPageVariables","pageId","tags","template","parsed","parse","reason","getPageInfo","pageIdToFetch","fetchV7Page","fetchLegacyPage","handlePageFetchError","buildPage","miHudLess","result","v","dom","JSDOM","placeholderText","container","scripts","length","insertBefore","item","title","text","serialize","getAssets","pageInfo","templateInfo","updateAssets","assets","validateCredentials","testHeaders","isValid","errorInfo","cleanup","normalizedHeaders","context","contextPrefix","suggestion","index","logTokenError","tokenErrorInfo","ClientService","server","eventMap","onInfoDataRequest","bind","onTemplateSync","init","ws","event","handler","send","distService","config","clientInjectionPlugin","canSync","currentAssets","isAxiosError","validation","refresh","validationError","cause","newAssets","saveBackupAndBuild","buildNewAssets","Buffer","updateResult","backupMeta","getBackupMeta","lastBackupName","backupFilename","lastBackupHash","currentHash","lastBackupDate","backupDate","syncedAt","FILE_EXTENSION_REGEX","DEFAULT_TTL","DEFAULT_MAX_SIZE","DEFAULT_MAX_ITEMS","EnhancedCache","memoryCache","Cache","totalSize","maxSize","maxItems","put","ttl","oldItem","size","itemsToRemove","sortedKeys","sort","a","b","itemA","itemB","timestamp","i","del","oldestKey","getTotalSize","getItemCount","cache","createResponseBuffer","chunks","alloc","totalLength","reduce","sum","chunk","byteLength","concat","initProxyCache","devServer","next","originalUrl","cleanUrl","split","generateCacheKey","cacheItem","header","setResponseHeaders","write","originalEnd","originalWrite","encoding","callback","hasHeader","call","safeEncoding","push","from","isBuffer","String","finalBuffer","responseSize","getHeaders","now","toFixed","finalEncoding","TEMPLATE_PART_PAGE_NAME","TEMPLATE_PART_DATE","DIRNAME","dirname","__filename","fileURLToPath","require","pathToFileURL","_documentCurrentScript","tagName","toUpperCase","src","baseURI","pluginPath","node_modules_path","metaDirPath","metaFilePath","DistService","backupFolder","backupNameTemplate","dateFormat","pageName","currentMeta","distZipFolder","distZipFilename","syncOptions","cwd","date","syncMeta","checkMeta","fs","promises","stat","mkdir","readMetaFile","readFile","writeMetaFile","meta","writeFile","getLatestSavedBackup","backupPath","backupName","saveBackup","backupFile","slice","backupFileHash","crypto","createHash","update","digest","filename","finally","buildCommand","reject","cyan","proc","child_process","spawn","NODE_ENV","stdio","msg","initRewriteResponse","predicate","rewrite","buffers","cb","contentEncoding","unzipSync","brotliDecompressSync","deflateSync","decodeContent","bufferEncoding","endCallback","gzipSync","brotliCompressSync","inflateSync","encodeContent","initPPRedirect","base","templateName","baseWithoutTrailingSlash","endsWith","parsedUrl","findPaths","redirectUrl","AuthProvider","state","isAuthenticated","isRedirected","lastChecked","listeners","Set","getState","setAuthenticated","authenticated","notifyListeners","setRedirected","redirected","updateState","updates","reset","subscribe","listener","delete","getDebugInfo","listenerCount","authProvider","apiResponseCache","getCachedResponse","cached","setCachedResponse","DEFAULT_REDIRECT_URL","initLoadPPData","applyUrlRegExp","mi","authState","isNeedTemplateLoad","isApplyRequest","cutUrlParams","handleTemplateLoad","encodeURIComponent","handlePageInfoOnly","options","redirectOnAuthFailure","clear","success","handleLoadError","loadPageData","operationType","isAuthError","fullRedirectUrl","internalServer","express","validateConfigValue","validator","use","urlencoded","extended","validationResult","validations","c","backendBaseURL","appId","proxyCacheTTL","integrateMiTopBar","integrate","addRootElement","addSharedComponentsScripts","validateConfig","enableProxyCache","imageOptimizer","outDir","distZip","syncBackupsDir","MI_ACCESS_TOKEN","distZipConfig","outFileName","imageOptimizerConfig","isFirstRequest","apply","port","validateServerConfig","transformIndexHtml","html","ctx","tag","injectTo","children","Math","random","configureServer","lastIndexOf","middlewares","baseUrlHost","miConfig","cacheConfig","validateProxyCacheConfig","isIndexRegExp","proxyPassMiddleware","sendErrorResponse","details","handleTokenValidationError","enhancedErrorInfo","errorCode","Authorization","user","user_id","Token","users","backupDir"],"mappings":"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"}
1
+ {"version":3,"file":"plugin-DGza708W.js","sources":["../../../src/lib/helpers/url.helper.ts","../../../src/lib/logger.ts","../../../src/lib/helpers/color.helper.ts","../../../src/lib/helpers/login.helper.ts","../../../src/lib/proxy-pass.middleware.ts","../../../src/api/base.ts","../../../src/api/assets.ts","../../../src/api/assets-v7.ts","../../../src/api/page.ts","../../../src/api/page-template.ts","../../../src/lib/helpers/token.helper.ts","../../../src/lib/pp.middleware.ts","../../../src/lib/client.service.ts","../../../src/lib/proxy-cache.middleware.ts","../../../src/lib/dist.service.ts","../../../src/lib/rewrite-response.middleware.ts","../../../src/lib/helpers/content-encoding.helper.ts","../../../src/lib/pp-redirect.middleware.ts","../../../src/lib/auth.provider.ts","../../../src/lib/load-pp-data.middleware.ts","../../../src/lib/internal.middleware.ts","../../../src/plugin.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["urlReplacer","originalHost","destinationHost","content","urlReplaceRegExp","RegExp","replace","substring","args","startsWith","redirect","res","url","statusCode","setHeader","end","storage","Map","DEFAULT_LOGGER_KEY","createLogger","level","name","has","get","logger","cL","set","colors","createColors","tokenLoginFunction","TOKEN_TYPE_CONFIG","personal","placeholder","caption","host","endpoint","regular","updateTokenUI","type","tokenInput","tokenCaption","info","innerHTML","showError","message","errorElement","textContent","classList","add","hideError","remove","setupEventHandlers","formWrapper","submitButton","addEventListener","async","e","preventDefault","value","trim","focus","tokenTypeSwitcher","document","getElementById","activeOption","querySelector","tokenType","dataset","token","response","fetch","method","headers","body","JSON","stringify","URL","window","location","origin","pathname","json","error","parseError","href","networkError","handleFormSubmission","key","click","initializeLoginForm","loginForm","contentWrapper","firstChild","rowTemplate","lastChild","cloneNode","orRow","innerText","setAttribute","helperForm","formContent","createElement","styleElement","head","appendChild","tokenTypeOptions","querySelectorAll","handleTokenTypeChange","target","forEach","opt","option","currentTarget","setupTokenTypeSwitcher","console","observer","MutationObserver","mutations","mutation","disconnect","observe","childList","subtree","existingForm","hostOriginRegExp","PROXY_HEADER","initProxy","opts","rewritePath","baseURL","disableSSLValidation","miAPI","Error","fileType","import","createProxyMiddleware","selfHandleResponse","pathFilter","req","proxyIgnore","some","test","Array","isArray","rP","changeOrigin","autoRewrite","cookieDomainRewrite","log","warn","secure","on","proxyReq","referer","getHeader","blue","green","protocol","path","personalAccessToken","socket","setTimeout","destroyed","destroy","proxyRes","serverRes","includes","streamInterceptor","setHeaders","Object","entries","pipe","rewriteInterceptor","responseInterceptor","responseBuffer","fileTypeFromBuffer","toString","reqUrl","searchParams","redirectToFunction","storageKey","lastRedirectKey","redirectCount","localStorage","getItem","Number","isNaN","func","params","URLSearchParams","search","debug","removeItem","setItem","Date","toISOString","reqHost","urlPath","destinationPath","unescapedUrlReplaceRegExp","replacedContent","urlPathReplacer","err","errorMessage","stack","writable","writeHead","BaseAPI","axios","constructor","this","checkAuth","assign","accept","maxRedirects","then","catch","AssetsAPI","formdataModulePromise","super","getDownloadUrl","portalPageId","getDownloadTemplateUrl","templateId","getUploadUrl","getUploadTemplateUrl","downloadPageAssets","withCredentials","responseType","data","uploadPageAssets","file","formData","FormData","File","assetFile","append","post","Referer","getUri","downloadTemplateAssets","uploadTemplateAssets","AssetsV7API","PageAPI","getAll","Accept","Pragma","Expires","pages","id","page","getPageContent","internalPageName","create","PageTemplateAPI","internal_name","page_templates","page_template","getTokenErrorInfo","status","toLowerCase","code","userFriendlyMessage","suggestions","TEMPLATE_PAGE_NAME","axiosInstanceCache","MiAPI","pageTemplate","pageTitle","pageVars","v7Features","isV710OrHigher","templateLoaded","templateLoadedResolve","templateLess","assetsApi","pageApi","pageTemplateApi","Promise","resolve","cacheKey","process","env","NODE_TLS_REJECT_UNAUTHORIZED","defaults","httpsAgent","Agent","rejectUnauthorized","timeout","httpAgent","keepAlive","maxSockets","isTemplateLoaded","clearHeaders","obj","undefined","keys","authorization","updateHeaders","localTemplateHTML","getPageTemplate","red","template_id","find","p","yellow","enabled","visible_in_homepage","getPageVariables","pageId","tags","template","parsed","parse","reason","getPageInfo","pageIdToFetch","fetchV7Page","fetchLegacyPage","handlePageFetchError","buildPage","miHudLess","result","v","dom","JSDOM","placeholderText","container","scripts","length","insertBefore","item","title","text","serialize","getAssets","pageInfo","templateInfo","updateAssets","assets","validateCredentials","testHeaders","isValid","errorInfo","cleanup","normalizedHeaders","context","contextPrefix","suggestion","index","logTokenError","tokenErrorInfo","ClientService","server","eventMap","onInfoDataRequest","bind","onTemplateSync","init","ws","event","handler","send","distService","config","clientInjectionPlugin","canSync","currentAssets","isAxiosError","validation","refresh","validationError","cause","newAssets","saveBackupAndBuild","buildNewAssets","Buffer","updateResult","backupMeta","getBackupMeta","lastBackupName","backupFilename","lastBackupHash","currentHash","lastBackupDate","backupDate","syncedAt","FILE_EXTENSION_REGEX","DEFAULT_TTL","DEFAULT_MAX_SIZE","DEFAULT_MAX_ITEMS","EnhancedCache","memoryCache","Cache","totalSize","maxSize","maxItems","put","ttl","oldItem","size","itemsToRemove","sortedKeys","sort","a","b","itemA","itemB","timestamp","i","del","oldestKey","getTotalSize","getItemCount","cache","createResponseBuffer","chunks","alloc","totalLength","reduce","sum","chunk","byteLength","concat","initProxyCache","devServer","next","originalUrl","cleanUrl","split","generateCacheKey","cacheItem","header","setResponseHeaders","write","originalEnd","originalWrite","encoding","callback","hasHeader","call","safeEncoding","push","from","isBuffer","String","finalBuffer","responseSize","getHeaders","now","toFixed","finalEncoding","TEMPLATE_PART_PAGE_NAME","TEMPLATE_PART_DATE","DIRNAME","dirname","__filename","fileURLToPath","require","pathToFileURL","_documentCurrentScript","tagName","toUpperCase","src","baseURI","pluginPath","node_modules_path","metaDirPath","metaFilePath","DistService","backupFolder","backupNameTemplate","dateFormat","pageName","currentMeta","distZipFolder","distZipFilename","syncOptions","cwd","date","syncMeta","checkMeta","fs","stat","mkdir","readMetaFile","readFile","writeMetaFile","meta","writeFile","getLatestSavedBackup","backupPath","backupName","saveBackup","backupFile","slice","backupFileHash","crypto","createHash","update","digest","filename","finally","buildCommand","reject","cyan","proc","child_process","spawn","NODE_ENV","stdio","msg","initRewriteResponse","predicate","rewrite","buffers","cb","contentEncoding","unzipSync","brotliDecompressSync","deflateSync","decodeContent","bufferEncoding","endCallback","gzipSync","brotliCompressSync","inflateSync","encodeContent","initPPRedirect","base","templateName","baseWithoutTrailingSlash","endsWith","parsedUrl","findPaths","redirectUrl","AuthProvider","state","isAuthenticated","isRedirected","lastChecked","listeners","Set","getState","setAuthenticated","authenticated","notifyListeners","setRedirected","redirected","updateState","updates","reset","subscribe","listener","delete","getDebugInfo","listenerCount","authProvider","apiResponseCache","getCachedResponse","cached","setCachedResponse","DEFAULT_REDIRECT_URL","initLoadPPData","applyUrlRegExp","mi","authState","isNeedTemplateLoad","isApplyRequest","cutUrlParams","handleTemplateLoad","encodeURIComponent","handlePageInfoOnly","options","redirectOnAuthFailure","clear","success","handleLoadError","loadPageData","operationType","isAuthError","fullRedirectUrl","internalServer","express","validateConfigValue","validator","use","urlencoded","extended","validationResult","validations","c","backendBaseURL","appId","proxyCacheTTL","integrateMiTopBar","integrate","addRootElement","addSharedComponentsScripts","validateConfig","enableProxyCache","imageOptimizer","outDir","distZip","syncBackupsDir","MI_ACCESS_TOKEN","distZipConfig","outFileName","imageOptimizerConfig","isFirstRequest","apply","port","validateServerConfig","transformIndexHtml","html","ctx","tag","injectTo","children","Math","random","configureServer","lastIndexOf","middlewares","baseUrlHost","miConfig","cacheConfig","validateProxyCacheConfig","isIndexRegExp","proxyPassMiddleware","sendErrorResponse","details","handleTokenValidationError","enhancedErrorInfo","errorCode","Authorization","user","user_id","Token","users","backupDir"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sources":["index.ts"],"sourcesContent":[null],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"client.js","sources":["index.ts"],"sourcesContent":[null],"names":[],"mappings":"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","x_google_ignoreList":[0]}
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,i as u,s as g,P as m,a as b}from"./index-aC9rEH6_.js";import{c as w,a as v,M as y,i as x,b as T,d as P,e as $,f as S,g as L,u as F}from"./plugin-DfeYt66p.js";import{parse as j}from"url";import*as E from"dir-compare";import k from"diff-match-patch";import{isBinaryFile as A}from"isbinaryfile";import*as D from"os";import*as C from"crypto";import I from"extract-zip";import N 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 _(e){return null!=e&&!1!==e}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 M=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class z{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=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(D.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(D.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}),I(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 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 k,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 H{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await N({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}const G=i("pp-dev");function O(t,o,i){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=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(v.blue(`šŸ”§ Config file changed: ${e.relative(t,n)}`)),a&&clearTimeout(a),a=setTimeout((async()=>{try{i(v.yellow("šŸ”„ Restarting dev server due to config change...")),await o()}catch(e){i(v.red(`āŒ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}}),500)})),r.on("error",(e=>{i(v.red(`āŒ Config watcher error: ${e}`))})),{watcher:r,restartCallback:o,logger:i}}function U(e){e.watcher&&e.watcher.close()}let W=global.__pp_dev_profile_session,q=0;const B=o=>{if(W)return new Promise(((n,i)=>{W.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))}`)),W=void 0,n()}}))}))},V=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function Z(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}G.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"),G.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)=>{V(n);let i=null,a=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=w(n.logLevel),u=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-aC9rEH6_.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 b=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;b=r(b,t)}if(i=await g(r(b,{root:t,base:n.base,mode:n.mode,configFile:n.config,logLevel:n.logLevel,clearScreen:n.clearScreen,optimizeDeps:{force:n.force},server:Z(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,T=x?v.dim(`ready in ${v.reset(v.bold(Math.ceil(o.now()-x)))} ms`):"";d.info(`\n ${v.green(`${v.bold("PP-DEV")} v${h}`)} ${T}\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(_).concat(R);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(["",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",s).setEncoding("utf8").resume(),e.httpServer.on("close",(()=>{process.stdin.off("data",s).pause()}))}(i,{print:!0,customShortcuts:[...W?[{key:"p",description:"start/stop the profiler",async action(e){if(W)await B(d.info);else{const e=await import("node:inspector").then((e=>e.default));await new Promise((t=>{W=new e.Session,W.connect(),W.post("Profiler.enable",(()=>{W?.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=O(c,u,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}),B(d.info),process.exit(1)}}},g=async e=>{d.info(v.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{a&&(U(a),a=null),i&&(await i.close(),i=null),B(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 u()})),G.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").action((async(t,o)=>{V(o);let n=null,i=null,s=null,r=!1;t?e.resolve(process.cwd(),t):process.cwd();const a=w(),l=async()=>{if(!r){r=!0;try{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:c}=await import("./index-aC9rEH6_.js").then((e=>e.d));if(c(),!await u())throw new Error("Next.js is required but not available. Please install Next.js as a dependency:\nnpm install next@^16\n\nThis package requires Next.js >=13 <17 as a peer dependency.");const{next:d}=await g(),{join:f,basename:h}=await import("path"),{createServer:m}=await import("http"),b=await import("next/dist/server/config.js"),w=b.default.default||b["module.exports"].default||b.default,E=Z(o),k=p(o.mode||"development",t??process.cwd(),"");k&&Object.keys(k).forEach((e=>{e.startsWith("MI_")&&(process.env[e]=k[e])}));const A=t?f(process.cwd(),t):process.cwd();a.info(A);const D=await w("development",A);let C=D?.experimental?.ppDev||D?.ppDev||{};if(0===Object.keys(C).length)try{const{getConfig:e}=await import("./index-aC9rEH6_.js").then((e=>e.d)),t=await e();Object.keys(t).length>0?(C=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:I=process.env.MI_BACKEND_URL||"http://localhost:8080",portalPageId:N=parseInt(process.env.MI_PORTAL_PAGE_ID||"1"),templateLess:_=!0,v7Features:R=!0,disableSSLValidation:M=!1,enableProxyCache:z=!0,proxyCacheTTL:H=6e5,personalAccessToken:G=process.env.MI_ACCESS_TOKEN,distZip:W=!1,syncBackupsDir:q="./backups",miHudLess:B=!1}=C;let V=C.templateName;if(!V)try{const{getPkg:e}=await import("./index-aC9rEH6_.js").then((e=>e.d));V=e().name}catch(e){V=h(A)}let K=_?"/p":"/pl";if(K+=`/${V}`,n=d({dev:!0,hostname:E.host||"localhost",port:E.port,dir:A,conf:{...D,basePath:K,assetPrefix:K}}),await n.prepare(),K.endsWith("/")||(K+="/"),"/"===K)throw new Error('basePath cannot be equal to "/" or equal to empty string');K.substring(0,K.lastIndexOf("/"));a.info(v.green("āœ… Next.js app prepared successfully")),a.info(v.blue(`šŸ”§ pp-dev plugin configured for template: ${V}`)),a.info(v.blue(`šŸ”§ Base path configured: ${K}`)),I&&(a.info(v.blue(`🌐 Backend URL: ${I}`)),a.info(v.blue(`šŸ†” Portal Page ID: ${N}`)));const Y=n.getRequestHandler(),J="number"==typeof E.port?E.port:3e3,Q="string"==typeof E.host?E.host||"0.0.0.0":"localhost",X=new Set;i=m((async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=j(o,!0);if(te.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")||n.startsWith("/api/")){if(oe.length>0){let l=0;const c=()=>{if(l>=oe.length)return void s();const o=oe[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=te.length)return void s();const o=te[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(K)){const t=n.substring(K.length);e.url=t||"/",i=j(t,!0)}else if(n===K.replace(/\/$/,""))e.url="/",i=j("/",!0);else if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:K}),void t.end();await Y(e,t,i)}s()}catch(d){console.error("[DEBUG] Error:",d),t.statusCode=500,t.end("Internal Server Error")}}));let ee=null,te=[],oe=[];if(I){const t=new URL(I).host,o={headers:{host:t,referer:I,origin:I.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},portalPageId:N,appId:N,templateLess:_,disableSSLValidation:M,v7Features:R,personalAccessToken:G??process.env.MI_ACCESS_TOKEN};ee=new y(I,o);const n=x(K,V),i=(e,t,o)=>{n(e,t,o)};if(oe.push(i),te.push(i),z){let e=+H;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=T({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};te.push(n),a.info(v.blue(`šŸ”§ Proxy cache middleware added with TTL: ${e}ms`))}const s=K.endsWith("/")?K.substring(0,K.length-1):K,r={middlewares:{use:e=>e},config:{logger:console}},l=P({devServer:r,baseURL:I,proxyIgnore:["/@vite","/@metricinsights","/@",s,"/_next","/favicon.ico","/__nextjs_","/api"],disableSSLValidation:M,miAPI:ee}),c=(e,t,o)=>{l(e,t,o)};te.push(c);const d=new RegExp(`^((${e=K,e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),p=$(d,ee,{base:K,v7Features:R}),f=(e,t,o)=>{p(e,t,o)};te.push(f);const h=S,u=(e,t,o)=>{if(e.url?.startsWith("/@api/")){h(e,t,(()=>{}))}else o()};oe.push(u),te.push(u);const g=L((e=>e.split("?")[0].endsWith("index.html")),((e,o)=>Buffer.from(F(t,o.headers.host??"",ee.buildPage(e,B))))),m=(e,t,o)=>{g(e,t,o)};te.push(m),a.info(v.blue(`šŸ”§ ${te.length} pp-dev middlewares initialized`)),a.info(v.blue(`šŸ”§ ${oe.length} essential middlewares for internal routes`)),a.info(v.blue(`šŸ”§ MiAPI initialized for backend: ${I}`)),a.info(v.blue(`šŸ”§ Portal Page ID: ${N}`))}i.listen(J,Q,(()=>{a.info(v.green(`āœ… pp-dev Next.js server running at http://${Q}:${J}`)),a.info(v.blue(`šŸ“± Next.js app accessible at http://${Q}:${J}${K}`)),a.info(v.blue("šŸ”§ Base path handling active")),s||(s=O(A,l,a.info),a.info(v.blue("šŸ”§ Config file watcher started"))),i.on("connection",(e=>{X.add(e),e.on("close",(()=>X.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(X))e.destroy();X.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 e}},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()})),G.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)=>{V(n);const i=Z(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 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"))).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 z({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{B((e=>w(n.logLevel).info(e)))}})),G.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)=>{V(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 z({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await h.generateChangelog()})),G.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)=>{V(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 H({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)}`)})),G.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action((async(e,t)=>{V(t);try{const o=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){w(t.logLevel).error(v.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}})),G.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action((async(e,t)=>{V(t);try{const o=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){w(t.logLevel).error(v.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{B((e=>w(t.logLevel).info(e)))}})),G.help(),G.version(h),G.parse();export{B as stopProfiler};
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,i as u,s as g,P as m,a as b}from"./index-ohLpDMmG.js";import{c as w,a as v,M as y,i as x,b as T,d as P,e as $,f as S,g as L,u as F}from"./plugin-DfeYt66p.js";import{parse as j}from"url";import*as E from"dir-compare";import k from"diff-match-patch";import{isBinaryFile as A}from"isbinaryfile";import*as D from"os";import*as C from"crypto";import I from"extract-zip";import N 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 _(e){return null!=e&&!1!==e}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 M=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class z{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=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(D.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(D.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}),I(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 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 k,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 H{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await N({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}const G=i("pp-dev");function O(t,o,i){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=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(v.blue(`šŸ”§ Config file changed: ${e.relative(t,n)}`)),a&&clearTimeout(a),a=setTimeout((async()=>{try{i(v.yellow("šŸ”„ Restarting dev server due to config change...")),await o()}catch(e){i(v.red(`āŒ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}}),500)})),r.on("error",(e=>{i(v.red(`āŒ Config watcher error: ${e}`))})),{watcher:r,restartCallback:o,logger:i}}function U(e){e.watcher&&e.watcher.close()}let W=global.__pp_dev_profile_session,q=0;const B=o=>{if(W)return new Promise(((n,i)=>{W.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))}`)),W=void 0,n()}}))}))},V=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function Z(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}G.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"),G.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)=>{V(n);let i=null,a=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=w(n.logLevel),u=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-ohLpDMmG.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 b=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;b=r(b,t)}if(i=await g(r(b,{root:t,base:n.base,mode:n.mode,configFile:n.config,logLevel:n.logLevel,clearScreen:n.clearScreen,optimizeDeps:{force:n.force},server:Z(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,T=x?v.dim(`ready in ${v.reset(v.bold(Math.ceil(o.now()-x)))} ms`):"";d.info(`\n ${v.green(`${v.bold("PP-DEV")} v${h}`)} ${T}\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(_).concat(R);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(["",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",s).setEncoding("utf8").resume(),e.httpServer.on("close",(()=>{process.stdin.off("data",s).pause()}))}(i,{print:!0,customShortcuts:[...W?[{key:"p",description:"start/stop the profiler",async action(e){if(W)await B(d.info);else{const e=await import("node:inspector").then((e=>e.default));await new Promise((t=>{W=new e.Session,W.connect(),W.post("Profiler.enable",(()=>{W?.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=O(c,u,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}),B(d.info),process.exit(1)}}},g=async e=>{d.info(v.yellow(`\nšŸ›‘ Received ${e}, shutting down gracefully...`));try{a&&(U(a),a=null),i&&(await i.close(),i=null),B(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 u()})),G.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").action((async(t,o)=>{V(o);let n=null,i=null,s=null,r=!1;t?e.resolve(process.cwd(),t):process.cwd();const a=w(),l=async()=>{if(!r){r=!0;try{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:c}=await import("./index-ohLpDMmG.js").then((e=>e.d));if(c(),!await u())throw new Error("Next.js is required but not available. Please install Next.js as a dependency:\nnpm install next@^16\n\nThis package requires Next.js >=13 <17 as a peer dependency.");const{next:d}=await g(),{join:f,basename:h}=await import("path"),{createServer:m}=await import("http"),b=await import("next/dist/server/config.js"),w=b.default.default||b["module.exports"].default||b.default,E=Z(o),k=p(o.mode||"development",t??process.cwd(),"");k&&Object.keys(k).forEach((e=>{e.startsWith("MI_")&&(process.env[e]=k[e])}));const A=t?f(process.cwd(),t):process.cwd();a.info(A);const D=await w("development",A);let C=D?.experimental?.ppDev||D?.ppDev||{};if(0===Object.keys(C).length)try{const{getConfig:e}=await import("./index-ohLpDMmG.js").then((e=>e.d)),t=await e();Object.keys(t).length>0?(C=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:I=process.env.MI_BACKEND_URL||"http://localhost:8080",portalPageId:N=parseInt(process.env.MI_PORTAL_PAGE_ID||"1"),templateLess:_=!0,v7Features:R=!0,disableSSLValidation:M=!1,enableProxyCache:z=!0,proxyCacheTTL:H=6e5,personalAccessToken:G=process.env.MI_ACCESS_TOKEN,distZip:W=!1,syncBackupsDir:q="./backups",miHudLess:B=!1}=C;let V=C.templateName;if(!V)try{const{getPkg:e}=await import("./index-ohLpDMmG.js").then((e=>e.d));V=e().name}catch(e){V=h(A)}let K=_?"/p":"/pl";if(K+=`/${V}`,n=d({dev:!0,hostname:E.host||"localhost",port:E.port,dir:A,conf:{...D,basePath:K,assetPrefix:K}}),await n.prepare(),K.endsWith("/")||(K+="/"),"/"===K)throw new Error('basePath cannot be equal to "/" or equal to empty string');K.substring(0,K.lastIndexOf("/"));a.info(v.green("āœ… Next.js app prepared successfully")),a.info(v.blue(`šŸ”§ pp-dev plugin configured for template: ${V}`)),a.info(v.blue(`šŸ”§ Base path configured: ${K}`)),I&&(a.info(v.blue(`🌐 Backend URL: ${I}`)),a.info(v.blue(`šŸ†” Portal Page ID: ${N}`)));const Y=n.getRequestHandler(),J="number"==typeof E.port?E.port:3e3,Q="string"==typeof E.host?E.host||"0.0.0.0":"localhost",X=new Set;i=m((async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=j(o,!0);if(te.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")||n.startsWith("/api/")){if(oe.length>0){let l=0;const c=()=>{if(l>=oe.length)return void s();const o=oe[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=te.length)return void s();const o=te[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(K)){const t=n.substring(K.length);e.url=t||"/",i=j(t,!0)}else if(n===K.replace(/\/$/,""))e.url="/",i=j("/",!0);else if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:K}),void t.end();await Y(e,t,i)}s()}catch(d){console.error("[DEBUG] Error:",d),t.statusCode=500,t.end("Internal Server Error")}}));let ee=null,te=[],oe=[];if(I){const t=new URL(I).host,o={headers:{host:t,referer:I,origin:I.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},portalPageId:N,appId:N,templateLess:_,disableSSLValidation:M,v7Features:R,personalAccessToken:G??process.env.MI_ACCESS_TOKEN};ee=new y(I,o);const n=x(K,V),i=(e,t,o)=>{n(e,t,o)};if(oe.push(i),te.push(i),z){let e=+H;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=T({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};te.push(n),a.info(v.blue(`šŸ”§ Proxy cache middleware added with TTL: ${e}ms`))}const s=K.endsWith("/")?K.substring(0,K.length-1):K,r={middlewares:{use:e=>e},config:{logger:console}},l=P({devServer:r,baseURL:I,proxyIgnore:["/@vite","/@metricinsights","/@",s,"/_next","/favicon.ico","/__nextjs_","/api"],disableSSLValidation:M,miAPI:ee}),c=(e,t,o)=>{l(e,t,o)};te.push(c);const d=new RegExp(`^((${e=K,e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),p=$(d,ee,{base:K,v7Features:R}),f=(e,t,o)=>{p(e,t,o)};te.push(f);const h=S,u=(e,t,o)=>{if(e.url?.startsWith("/@api/")){h(e,t,(()=>{}))}else o()};oe.push(u),te.push(u);const g=L((e=>e.split("?")[0].endsWith("index.html")),((e,o)=>Buffer.from(F(t,o.headers.host??"",ee.buildPage(e,B))))),m=(e,t,o)=>{g(e,t,o)};te.push(m),a.info(v.blue(`šŸ”§ ${te.length} pp-dev middlewares initialized`)),a.info(v.blue(`šŸ”§ ${oe.length} essential middlewares for internal routes`)),a.info(v.blue(`šŸ”§ MiAPI initialized for backend: ${I}`)),a.info(v.blue(`šŸ”§ Portal Page ID: ${N}`))}i.listen(J,Q,(()=>{a.info(v.green(`āœ… pp-dev Next.js server running at http://${Q}:${J}`)),a.info(v.blue(`šŸ“± Next.js app accessible at http://${Q}:${J}${K}`)),a.info(v.blue("šŸ”§ Base path handling active")),s||(s=O(A,l,a.info),a.info(v.blue("šŸ”§ Config file watcher started"))),i.on("connection",(e=>{X.add(e),e.on("close",(()=>X.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(X))e.destroy();X.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 e}},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()})),G.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)=>{V(n);const i=Z(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 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"))).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 z({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{B((e=>w(n.logLevel).info(e)))}})),G.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)=>{V(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 z({oldAssetsPath:d,newAssetsPath:p,destinationPath:f,changelogFilename:a});await h.generateChangelog()})),G.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)=>{V(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 H({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)}`)})),G.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action((async(e,t)=>{V(t);try{const o=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){w(t.logLevel).error(v.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}})),G.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action((async(e,t)=>{V(t);try{const o=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){w(t.logLevel).error(v.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{B((e=>w(t.logLevel).info(e)))}})),G.help(),G.version(h),G.parse();export{B as stopProfiler};
2
2
  //# sourceMappingURL=cli.js.map