@metricinsights/pp-dev 1.4.3-beta.2 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/CHANGELOG.md +9 -0
- package/dist/cjs/cli.js +1 -1
- package/dist/cjs/{index-DlhKa_U3.js → index-D4bqY384.js} +2 -2
- package/dist/cjs/{index-DlhKa_U3.js.map → index-D4bqY384.js.map} +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/{migrate-C5rSd6xg.js → migrate-LVnjAIMX.js} +2 -2
- package/dist/cjs/{migrate-C5rSd6xg.js.map → migrate-LVnjAIMX.js.map} +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/plugin-DWvw5qwR.js +2 -0
- package/dist/cjs/plugin-DWvw5qwR.js.map +1 -0
- package/dist/cjs/plugin.js +1 -1
- package/dist/cjs/{version-plugin-D3y3RPPM.js → version-plugin-VrJ9bgzv.js} +2 -2
- package/dist/cjs/{version-plugin-D3y3RPPM.js.map → version-plugin-VrJ9bgzv.js.map} +1 -1
- package/dist/esm/cli.js +1 -1
- package/dist/esm/{index-yWblwalm.js → index-DBWI8b9J.js} +2 -2
- package/dist/esm/{index-yWblwalm.js.map → index-DBWI8b9J.js.map} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{migrate-BKjKczwc.js → migrate-OoKc3OYy.js} +2 -2
- package/dist/esm/{migrate-BKjKczwc.js.map → migrate-OoKc3OYy.js.map} +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/plugin-D8UnKa_2.js +2 -0
- package/dist/esm/plugin-D8UnKa_2.js.map +1 -0
- package/dist/esm/plugin.js +1 -1
- package/dist/esm/{version-plugin-DyUz7QSv.js → version-plugin-CD-t-1w1.js} +2 -2
- package/dist/esm/{version-plugin-DyUz7QSv.js.map → version-plugin-CD-t-1w1.js.map} +1 -1
- package/package.json +1 -1
- package/dist/cjs/plugin-BVQTG0qu.js +0 -2
- package/dist/cjs/plugin-BVQTG0qu.js.map +0 -1
- package/dist/esm/plugin-B9tw3SrX.js +0 -2
- package/dist/esm/plugin-B9tw3SrX.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-DWvw5qwR.js","sources":["../../../src/constants.ts","../../../src/lib/logger.ts","../../../src/lib/helpers/color.helper.ts","../../../src/lib/helpers/url.helper.ts","../../../src/lib/helpers/login.helper.ts","../../../src/lib/helpers/cookie.helper.ts","../../../src/lib/proxy-pass.middleware.ts","../../../src/api/base.ts","../../../src/api/assets.ts","../../../src/api/assets-v7.ts","../../../src/api/unavailable-json-api.ts","../../../src/api/page.ts","../../../src/api/page-template.ts","../../../src/api/page-variable.ts","../../../src/lib/helpers/token.helper.ts","../../../src/lib/pp.middleware.ts","../../../src/lib/output-path.ts","../../../src/lib/helpers/svg-mi-normalize.helper.ts","../../../src/lib/version-manifest.ts","../../../src/lib/helpers/zip.helper.ts","../../../src/lib/next-build-runner.ts","../../../src/lib/dist.service.ts","../../../src/lib/client.service.ts","../../../src/lib/proxy-cache.middleware.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/lib/request-store.ts","../../../src/lib/request-capture.middleware.ts","../../../src/lib/request-inspector.ts","../../../src/lib/page-variables-diff.ts","../../../src/lib/variables-editor.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,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["afterBundlePath","resolve","__filename","fileURLToPath","document","require","pathToFileURL","href","_documentCurrentScript","tagName","toUpperCase","src","URL","baseURI","beforeBundlePath","PP_DEV_PACKAGE_DIR","existsSync","PP_DEV_CLIENT_ENTRY","version","name","JSON","parse","readFileSync","toString","VERSION","PACKAGE_NAME","PP_DEV_NEXT_BUILD_ENV_VAR","storage","Map","DEFAULT_LOGGER_KEY","createLogger","level","has","get","logger","cL","set","colors","createColors","urlReplacer","originalHost","destinationHost","content","urlReplaceRegExp","RegExp","replace","substring","args","startsWith","redirect","res","url","statusCode","setHeader","end","cutUrlParams","split","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","getElementById","activeOption","querySelector","tokenType","dataset","token","response","fetch","method","headers","body","stringify","window","location","origin","pathname","json","error","parseError","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","formSelector","observer","MutationObserver","mutations","mutation","disconnect","observe","childList","subtree","existingForm","isSecureRequest","req","socket","encrypted","forwardedProto","proto","Array","isArray","toLowerCase","rewriteSetCookie","cookie","secureRequest","pair","attributes","rewritten","map","attribute","filter","test","join","MI_SESSION_COOKIE","findCookieValue","pairs","separator","indexOf","slice","rewriteSetCookieHeader","undefined","hostOriginRegExp","PROXY_HEADER","TEXTUAL_MEDIA_TYPE_REGEXPS","isRewritableStream","contentEncoding","contentType","mediaType","some","pattern","isTextualContentType","initProxy","opts","rewritePath","baseURL","disableSSLValidation","miAPI","templateName","Error","fileType","createProxyMiddleware","selfHandleResponse","pathFilter","proxyIgnore","rP","changeOrigin","autoRewrite","cookieDomainRewrite","warn","secure","on","proxyReq","referer","getHeader","personalAccessToken","removeHeader","originalUrl","requestUrl","v7Features","internalPageName","u","m","match","segmentDecoded","decodeURIComponent","search","hash","rewriteDataPagePathForV7Proxy","path","cyan","yellow","blue","green","protocol","setMaxListeners","once","setTimeout","destroyed","destroy","proxyRes","serverRes","includes","streamInterceptor","interceptor","data","encoding","Buffer","from","rewrite","statusMessage","Object","entries","pipe","decoder","StringDecoder","pending","waitingForDrain","flush","text","write","pause","resume","chunk","lastBreak","lastIndexOf","length","rewriteInterceptor","responseInterceptor","responseBuffer","fileTypeFromBuffer","reqUrl","searchParams","redirectToFunction","storageKey","lastRedirectKey","redirectCount","localStorage","getItem","Number","isNaN","func","params","URLSearchParams","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","super","getDownloadUrl","appId","getDownloadTemplateUrl","templateId","getUploadUrl","getUploadTemplateUrl","downloadPageAssets","withCredentials","responseType","uploadPageAssets","file","formData","FormData","assetFile","File","Uint8Array","append","post","Referer","getUri","downloadTemplateAssets","uploadTemplateAssets","AssetsV7API","PAGE_DATA_FETCH_FRAGMENT","PAGE_TEMPLATE_FETCH_FRAGMENT","MAINTENANCE_SUFFIX","unavailablePageTemplateDataError","isUnavailableJsonApiError","PageAPI","getAll","Accept","Pragma","Expires","pages","id","page","getPageContent","create","PageTemplateAPI","internal_name","page_templates","page_template","PageVariableAPI","getById","pageId","page_id","tags","parsed","TypeError","malformedIndex","findIndex","entry","normalizePageVariableTags","updateById","put","getTokenErrorInfo","status","lowerMessage","code","userFriendlyMessage","suggestions","TEMPLATE_PAGE_NAME","axiosInstanceCache","MiAPI","pageTemplate","pageTitle","pageVars","isV710OrHigher","templateLoaded","templateLoadedResolve","templateLess","assetsApi","pageApi","pageTemplateApi","pageVariableApi","Promise","cacheKey","process","env","NODE_TLS_REJECT_UNAUTHORIZED","httpsAgent","https","Agent","keepAlive","rejectUnauthorized","timeout","httpAgent","http","defaults","isTemplateLoaded","clearHeaders","obj","keys","authorization","escapeRegExp","updateHeaders","localTemplateHTML","getPageTemplate","red","template_id","find","p","enabled","visible_in_homepage","getPageVariables","template","reason","getLivePageVariables","start","now","applyPageVariables","listPages","getPageVariablesFor","isTemplateLess","reloadPageVariables","getPageInfo","pageIdToFetch","fetchV7Page","fetchLegacyPage","handlePageFetchError","buildPage","miHudLess","result","v","escapedName","pageVarRegex","dom","JSDOM","placeholderText","container","scripts","insertBefore","item","title","titleEl","serialize","getAssets","pageInfo","templateInfo","updateAssets","assets","validateCredentials","testHeaders","isValid","errorInfo","cleanup","normalizedHeaders","context","contextPrefix","suggestion","index","logTokenError","tokenErrorInfo","normalizeRelativeOutputPath","relativePath","optionName","posix","isAbsolute","win32","root","normalized","normalize","createDefaultZipFileName","appName","resolveOutputFilePath","directory","fileName","safeRelativePath","resolvedDirectory","resolvedFile","relativeToDirectory","relative","sep","normalizeSvgLikeMi","svgText","svg","removeComments","isNamespaceDeclaration","ordered","attr","removeAttribute","reorderNamespaceAttributesFirst","reindent","outerHTML","normalizeSvgFilesInDir","dir","readdirSync","withFileTypes","fullPath","isDirectory","isFile","endsWith","original","writeFileSync","node","childNodes","child","nodeType","comment","removeChild","children","el","depth","elementChildren","innerIndent","repeat","outerIndent","createTextNode","BUILD_MANIFEST_FILE_NAME","walkDir","baseDir","excludeFiles","Set","files","push","sha256OfContent","filePath","createHash","update","digest","stripUrlUserInfo","normalizeRepositoryUrl","normalizedUrl","scpLikeMatch","repositoryPath","sshProtocolMatch","gitProtocolMatch","writeBuildVersionManifest","config","outDir","cwd","versionFileTemplate","packageVersion","outDirResolved","statSync","throwIfNoEntry","manifestDate","resolvedVersionFileTemplate","versionFileName","currentDate","resolveVersionFileName","manifestPath","allPaths","checksum","hashesConcatenated","sort","computeChecksum","buildFingerprint","normalizedEntries","computeBuildFingerprint","helperVersion","modulePath","currentDir","dirname","packageJsonPath","packageStat","packageJson","parentDir","resolveHelperVersion","branchName","configBranchName","ciBranchEnvVars","variableName","currentBranchName","execSync","stdio","resolveBranchName","packageBranchName","manifest","schemaVersion","date","repositoryUrl","packageRepositoryUrl","buildManifestPath","buildManifest","manifestType","generatedAt","versionFile","versionFileSchemaVersion","compat","versionFileRequired","mkdirSync","recursive","zipDirectoryToBuffer","zip","JSZip","addDir","current","fs","readdir","full","readFile","generateAsync","compression","extractZipSafe","zipPath","loadAsync","createFolders","values","rawName","unsafeOriginalName","dest","unixPermissions","mkdir","writeFile","runNextBuildProcess","projectRoot","reject","nextBin","nextPkgPath","createRequire","proc","child_process","spawn","execPath","NODE_ENV","TEMPLATE_PART_PAGE_NAME","TEMPLATE_PART_DATE","DIRNAME","pluginPath","node_modules_path","metaDirPath","metaFilePath","TEMPLATE_VARIABLES_FILE_NAME","DistService","backupFolder","backupNameTemplate","dateFormat","pageName","currentMeta","distZipFolder","distZipFilename","buildInputFolder","nextBuild","syncOptions","syncMeta","checkMeta","stat","readMetaFile","writeMetaFile","meta","getLatestSavedBackup","lastBackupName","backupPath","backupName","getBackupMeta","pathToPosix","normalizeBackupManifestPath","normalizeExtractedRootDir","extractedDir","listFilesRecursive","rootDir","buildManifestChecksum","crypto","buildBackupFingerprint","versionFileTemplateMatcher","placeholderPattern","segments","lastIndex","exec","staticPart","trailingStaticPart","isTemplateVariablesBasename","fileBasename","pickTemplateVariablesFromBackupZip","relativePaths","contentRootDir","basename","absolutePath","fileData","actualHash","manifestHash","resolveBackupAnalysisFromZip","backupFile","tempDir","mkdtemp","os","tmpdir","buildManifestCandidates","buildManifestAbsolutePath","versionManifestPath","requestedVersionFile","exactMatchCandidates","basenameMatchCandidates","resolvedCandidates","versionFileMatcher","versionManifestCandidates","normalizedManifestFiles","templateVariables","manifestChecksum","manifestFileActualHashes","versionManifestHashMismatches","versionManifestAbsolutePath","expectedHash","normalizedPath","prototype","hasOwnProperty","call","expected","actual","mismatchedManifestPaths","fingerprintFiles","unknownFiles","backupFingerprint","buildManifestMismatch","mainHash","allFilesInMeta","Boolean","rm","force","analyzeBackup","getPublicTemplateVariablesHash","templateVariablesPath","readPublicTemplateVariablesFile","saveTemplateVariablesFile","saveBackup","precomputedAnalysis","resolvedAnalysis","resolvedBackupFileHash","lastBackupHash","lastMainHash","backupDate","filename","lastBackupDate","finally","buildNewAssets","buildNextAssets","buildCommand","msg","buildInputPath","String","saveBackupAndBuild","distDir","ClientService","server","eventMap","syncActionResolvers","onInfoDataRequest","bind","onTemplateSync","onTemplateSyncActionResponse","onPageVariablesReload","init","ws","event","handler","clearAllPendingSyncActions","resolveSyncAction","requestId","approved","clearTimeout","timeoutId","delete","_data","client","send","payload","requestSyncAction","randomUUID","timeoutMs","syncActionTimeoutMs","distService","clientInjectionPlugin","canSync","currentAssets","isAxiosError","validation","refresh","validationError","cause","httpStatus","newAssets","backupAnalysis","onlyTemplateVariablesMismatch","mm","templateVarMismatches","otherManifestMismatches","mixedTemplateAndOthers","pathsForVersionModal","promptReplaceTemplateVariables","confirmText","cancelText","cancelled","maxPaths","paths","listed","remainder","fileList","suffix","updateResult","backupMeta","backupFilename","currentHash","syncedAt","syncError","reloaded","ok","count","skipped","FILE_EXTENSION_REGEX","DEFAULT_TTL","DEFAULT_MAX_SIZE","DEFAULT_MAX_ITEMS","cache","items","totalSize","maxSize","maxItems","expiresAt","del","ttl","size","clear","purgeExpired","getTotalSize","getItemCount","next","invalidateListeners","invalidateProxyCache","listener","isSessionChange","newSession","getSetCookieValue","cookieHeader","getRequestCookie","createResponseBuffer","chunks","alloc","totalLength","reduce","sum","byteLength","concat","initProxyCache","devServer","hasHeader","cleanUrl","generateCacheKey","cacheItem","header","setResponseHeaders","originalEnd","originalWrite","callback","safeEncoding","isBuffer","finalBuffer","responseSize","_setCookie","getHeaders","timestamp","toFixed","finalEncoding","initRewriteResponse","predicate","buffers","cb","unzipSync","brotliDecompressSync","inflateSync","decodeContent","bufferEncoding","endCallback","gzipSync","brotliCompressSync","deflateSync","encodeContent","initPPRedirect","base","baseWithoutTrailingSlash","parsedUrl","findPaths","redirectUrl","AuthProvider","state","isAuthenticated","isRedirected","lastChecked","listeners","getState","setAuthenticated","authenticated","notifyListeners","setRedirected","redirected","updateState","updates","reset","subscribe","authProvider","apiResponseCache","getCachedResponse","cached","setCachedResponse","DEFAULT_REDIRECT_URL","initLoadPPData","applyUrlRegExp","mi","appBase","isNeedTemplateLoad","requestPath","isApplyRequest","isAppNavigation","normalizedBase","isUnderBase","isHtmlDocumentRequest","authState","handleTemplateLoad","encodeURIComponent","handlePageInfoOnly","headersSent","writableEnded","options","redirectOnAuthFailure","success","handleLoadError","loadPageData","operationType","isAuthError","fullRedirectUrl","createInternalServer","app","express","use","urlencoded","extended","internalServer","RequestStore","insertOrder","maxMemory","allocateId","storedEntry","bodyBytes","requestBody","responseBody","requestBodyTruncated","responseBodyTruncated","oldest","shift","old","list","duration","source","requestSize","q","limit","isFinite","offset","Math","max","memoryUsage","SKIP_PREFIXES","SKIP_EXACT","createRequestCaptureMiddleware","store","captureLimit","startTime","reqChunks","reqSize","reqTruncated","origReqEmit","emit","buf","resChunks","resSize","resTruncated","origWrite","origEnd","captureChunk","ArrayBuffer","isView","buffer","byteOffset","getWriteEncoding","detectSource","finalized","requestHeaders","responseHeaders","finalize","INSPECTOR_PATH","routeStates","WeakMap","registerInspectorRoutes","existing","activeStore","query","parsedLimit","parseInt","requests","total","_req","memoryUsageFormatted","formatBytes","maxMemoryFormatted","requestContentType","normalizeHeaderValue","responseContentType","requestBodySize","responseBodySize","getInspectorHtml","bytes","BOOLEAN_ALLOWED_VALUES","COLOR_PATTERN","optionMatches","normalizeFieldOption","validateListItemFieldValue","itemLabel","field","isSelectLike","severity","stringValue","o","unmatched","validateListItems","tag","fields","additionalOptions","normalizeListItemFields","additional_options","fieldNames","issues","itemRecord","extraKeys","validateValueAgainstTag","tag_type","typeCompatibilityIssue","VARIABLES_EDITOR_PATH","KNOWN_TAG_TYPES","NAME_FORMAT_REGEX","MISSING_DEPS_ERROR","readSchema","registerVariablesEditorRoutes","deps","exists","schema","raw","invalidIndex","warnings","seenNames","live","combined","schemaMap","liveMap","knownNames","default_value","buildPageVariablesExport","details","uid","allPages","currentPage","sameTemplate","currentPageName","isInteger","sourceValues","importable","sourceValue","issue","tagType","planPageVariablesImport","DEV_PANEL_POSITIONS","proxy","build","sync","inspector","devPanel","miMode","mode","appType","apiVersion","integrateMiTopBar","include","addSharedComponentsScripts","addRootElement","resolvedName","defaultVersionFileTemplate","distZip","zipCfg","versionPlugin","outFileName","inDir","vfCfg","imageOptimizer","fileNameTemplate","imgCfg","imageOptimisations","backendBaseURL","MI_BACKEND_URL","enableProxyCache","proxyCacheTTL","cacheTtl","tls","allowSelfSigned","syncBackupsDir","backupsDir","MI_ACCESS_TOKEN","inspectorEnabled","inspectorMaxMemory","inspectorCaptureLimit","devPanelPosition","position","devPanelHidden","hidden","devPanelAutoHide","autoHide","nextConfig","output","devTypesDir","rmSync","miUrl","isFirstRequest","apply","transformIndexHtml","_html","_ctx","html","injectTo","random","configureServer","middlewares","reqStore","baseUrlHost","miConfig","isIndexRegExp","proxyPassMiddleware","sendErrorResponse","handleTokenValidationError","enhancedErrorInfo","errorCode","Authorization","user","user_id","Token","users"],"mappings":"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"}
|
package/dist/cjs/plugin.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("./plugin-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("./plugin-DWvw5qwR.js");require("http-proxy-middleware"),require("url"),require("vite"),require("picocolors"),require("node:string_decoder"),require("axios"),require("node:http"),require("node:https"),require("jsdom"),require("path"),require("fs"),require("crypto"),require("process"),require("child_process"),require("os"),require("node:path"),require("jszip"),require("module"),require("zlib"),require("express"),require("node:crypto"),exports.default=e.vitePPDev,exports.normalizePPDevConfig=e.normalizePPDevConfig,exports.validatePPDevConfig=e.validatePPDevConfig,exports.vitePPDev=e.vitePPDev;
|
|
2
2
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./plugin-
|
|
2
|
-
//# sourceMappingURL=version-plugin-
|
|
1
|
+
"use strict";const e=require("./plugin-DWvw5qwR.js");require("http-proxy-middleware"),require("url"),require("vite"),require("picocolors"),require("node:string_decoder"),require("axios"),require("node:http"),require("node:https"),require("jsdom"),require("path"),require("fs"),require("crypto"),require("process"),require("child_process"),require("os"),require("node:path"),require("jszip"),require("module"),require("zlib"),require("express"),require("node:crypto"),exports.versionPlugin=function(r){let i=r.outDir,o=process.cwd();return{name:"pp-dev-version",apply:"build",enforce:"post",configResolved(e){i=e.build.outDir,o=e.root??o},closeBundle(){e.writeBuildVersionManifest({outDir:i,root:o,packageVersion:r.packageVersion,versionFileTemplate:r.versionFileTemplate,packageRepositoryUrl:r.packageRepositoryUrl,packageBranchName:r.packageBranchName,enabled:r.enabled})}}};
|
|
2
|
+
//# sourceMappingURL=version-plugin-VrJ9bgzv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version-plugin-
|
|
1
|
+
{"version":3,"file":"version-plugin-VrJ9bgzv.js","sources":["../../../src/plugins/version-plugin.ts"],"sourcesContent":[null],"names":["config","outDir","root","process","cwd","name","apply","enforce","configResolved","resolvedConfig","build","closeBundle","writeBuildVersionManifest","packageVersion","versionFileTemplate","packageRepositoryUrl","packageBranchName","enabled"],"mappings":"yeAWM,SAAwBA,GAC5B,IAAIC,EAASD,EAAOC,OAChBC,EAAOC,QAAQC,MAEnB,MAAO,CACLC,KAAM,iBACNC,MAAO,QACPC,QAAS,OAET,cAAAC,CAAeC,GACbR,EAASQ,EAAeC,MAAMT,OAC9BC,EAAOO,EAAeP,MAAQA,CAChC,EAEA,WAAAS,GACEC,4BAA0B,CACxBX,SACAC,OACAW,eAAgBb,EAAOa,eACvBC,oBAAqBd,EAAOc,oBAC5BC,qBAAsBf,EAAOe,qBAC7BC,kBAAmBhB,EAAOgB,kBAC1BC,QAASjB,EAAOiB,SAEpB,EAEJ"}
|
package/dist/esm/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,e as l,P as c,b as d,n as p,d as f,r as u,f as g,w as h,g as m,z as b,V as w,I as v,v as y,h as P,i as x,j as S,R as T,k,l as E,m as L,M as $,o as D,p as F,q as I,s as j,t as _,u as N,x as A,D as C,C as R,y as M,A as O}from"./plugin-B9tw3SrX.js";import{r as z,l as H,g as U,s as V,a as W,b as Z,c as G,i as B}from"./index-yWblwalm.js";import{loadConfigFromFile as q,mergeConfig as J,build as K,resolveConfig as Y,optimizeDeps as X,preview as Q}from"vite";import{parse as ee}from"url";import*as te from"dir-compare";import oe from"diff-match-patch";import{isBinaryFile as ne}from"isbinaryfile";import*as ie from"os";import*as se from"crypto";import re from"svgtofont";import{WebSocketServer as ae,WebSocket as le}from"ws";import"http-proxy-middleware";import"picocolors";import"node:string_decoder";import"axios";import"node:http";import"node:https";import"jsdom";import"process";import"child_process";import"node:path";import"jszip";import"module";import"zlib";import"express";import"node:crypto";import"./helpers.js";import"ejs";function ce(e){return null!=e&&!1!==e}let de=null;const pe=[{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 fe=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class ue{oldAssetsPath;newAssetsPath;destinationPath;changelogFilename;changelogTemplate='<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8" />\n <title>Changelog Diff</title>\n <style>\n tr,\n td {\n padding: 0;\n }\n .diff-file {\n margin-top: 20px;\n border: 1px solid #e1e4e8;\n border-radius: 6px;\n }\n .diff-file-title {\n padding: 10px 20px;\n background-color: #f6f8fa;\n border-bottom: 1px solid #e1e4e8;\n border-radius: 6px 6px 0 0;\n font-weight: bold;\n }\n .diff-file-title .renamed {\n font-weight: normal;\n }\n .diff-file-title .renamed .from {\n color: #cb2431;\n }\n .diff-file-title .renamed .to {\n color: #22863a;\n }\n .diff-file-title .added {\n color: #22863a;\n }\n .diff-file-title .deleted {\n color: #cb2431;\n }\n .diff-file-content {\n }\n .diff-table {\n tab-size: 8;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n }\n .blob-num {\n position: relative;\n color: #1f2328;\n width: 1%;\n min-width: 50px;\n padding: 0 10px;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n line-height: 20px;\n text-align: right;\n white-space: nowrap;\n vertical-align: top;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n }\n .blob-num.addition {\n background-color: #ccffd8;\n border-color: #1f883e;\n }\n .blob-num.deletion {\n background-color: #ffd7d5;\n border-color: #cf222e;\n }\n .blob-num::before {\n content: attr(data-line-number);\n }\n .blob-code {\n position: relative;\n padding: 0 10px 0 22px;\n vertical-align: top;\n color: #1f2329;\n }\n .blob-code.code-addition {\n background-color: #e6ffec;\n }\n .blob-code.code-deletion {\n background-color: #ffebe9;\n }\n .blob-code.skip,\n .blob-code.message {\n text-align: center;\n }\n .blob-code.skip .blob-code-inner,\n .blob-code.message .blob-code-inner {\n font-weight: bold;\n color: #6a737d;\n padding: 10px 0;\n }\n .blob-code-inner {\n display: table-cell;\n overflow: visible;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n word-wrap: anywhere;\n white-space: pre-wrap;\n }\n .blob-code-inner::before {\n content: attr(data-code-prefix);\n position: absolute;\n top: 1px;\n left: 8px;\n padding-right: 8px;\n }\n </style>\n </head>\n <body>\n <h1>Changelog Diff</h1>\n\n %FILES%\n </body>\n </html>';diffFileTemplateHandler;diffLineTemplateHandler;contextLines=3;logger;constructor(t){const{oldAssetsPath:o,newAssetsPath:n,destinationPath:i,changelogTemplate:s,diffFileTemplateHandler:l,diffLineTemplateHandler:c,changelogFilename:d,contextLines:p}=t;if(this.logger=r(),!o||!n||!i)throw new Error("Previous assets path, current assets path and destination path are required");if(o===n)throw new Error("Previous and current assets paths must be different");if(!this.isExists(o))throw new Error(`Previous assets path ${o} does not exist`);if(!this.isExists(n))throw new Error(`Current assets path ${n} does not exist`);if(this.isZipFile(o)){const t=e.resolve(ie.tmpdir(),se.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(ie.tmpdir(),se.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await l(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await te.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(fe.test(e)&&(e=e.replace(fe,"$1$3")),fe.test(t)&&(t=t.replace(fe,"$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 oe,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 ne(n)||await ne(i)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(t.readFileSync(n,"utf-8"),t.readFileSync(i,"utf-8"))))}return""}async generateChangelog(){this.logger.info(a.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(a.green("Writing changelog file"));const i=this.changelogTemplate.split("%FILES%");i.splice(1,0,n);const s=i.join("");t.writeFileSync(e.join(this.destinationPath,this.changelogFilename),s),this.logger.info(a.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class ge{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await re({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class he{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new ae({noServer:!0}),this.wss.on("connection",e=>this.onConnection(e)),this.wss.on("error",e=>this.fireLifecycle("error",e)),this.ws={on:(e,t)=>{"close"!==e&&"error"!==e?this.getEventSet(e).add(t):this.getLifecycleSet(e).add(t)},off:(e,t)=>{this.eventListeners.get(e)?.delete(t),"close"!==e&&"error"!==e||this.lifecycleListeners.get(e)?.delete(t)},send:(e,t)=>{if("string"==typeof e)for(const o of this.clients.keys())this.sendToSocket(o,e,t);else{const t=JSON.stringify(e);for(const e of this.clients.keys())e.readyState===le.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===c&&(this.wss.handleUpgrade(e,t,o,t=>{this.wss.emit("connection",t,e)}),!0)}async close(){this.fireLifecycle("close");for(const e of this.clients.keys())e.terminate();this.clients.clear(),await new Promise(e=>this.wss.close(()=>e()))}onConnection(e){const t={send:(t,o)=>this.sendToSocket(e,t,o)};this.clients.set(e,t),e.on("message",e=>this.onMessage(t,e)),e.on("close",()=>this.clients.delete(e)),e.on("error",()=>{})}onMessage(e,t){let o;try{o=JSON.parse(t.toString())}catch{return}if(!o||"custom"!==o.type||"string"!=typeof o.event)return;const n=this.eventListeners.get(o.event);if(n)for(const t of n)try{t(o.data,e)}catch(e){r().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===le.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}const me=s("pp-dev");function be(t,o,n){const s=[...O,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function we(e){e.watcher&&e.watcher.close()}function ve(e){if(!e||"object"!=typeof e||!("message"in e))return!1;const t=String(e.message);return/Turbopack is not supported/i.test(t)||/native bindings are not available/i.test(t)||/Only WebAssembly \(WASM\) bindings were loaded/i.test(t)}async function ye(o){const{changelog:n,executionRoot:i,newAssetsPath:s,backupsDirPath:l,changelogDestinationPath:c,logLevel:d}=o;let p;if("string"==typeof n)p=e.resolve(i,n);else{if(!t.existsSync(l))return void r(d).warn(a.yellow("backups directory not found, skipping changelog generation"));const o=t.readdirSync(l,{withFileTypes:!0});if(!o.length)return void r(d).warn(a.yellow("no backups found, skipping changelog generation"));const n=o.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!n.length)return void r(d).warn(a.yellow("no ZIP backups found, skipping changelog generation"));const i=n.reduce((o,n)=>t.statSync(e.resolve(l,o.name)).mtimeMs>t.statSync(e.resolve(l,n.name)).mtimeMs?o:n).name;p=e.resolve(l,i)}const f=new ue({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Pe=global.__pp_dev_profile_session,xe=0;const Se=o=>{if(Pe)return new Promise((n,i)=>{Pe.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${xe++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Pe=void 0,n()}})})},Te=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function ke(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}me.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"),me.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)=>{Te(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:f,getConfig:u}=await import("./index-yWblwalm.js").then(e=>e.h);f();const{createServer:g}=await(import("vite")),h=o.mode||"development",m=e.resolve(process.cwd(),t??".");H(h,m);const b=await q({mode:h,command:"serve"},o.config,t,o.logLevel);let y=await U(void 0,{mode:h,root:m});if(b){const{plugins:e,...t}=b.config;y=J(y,t)}if(i=await g(J(y,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:ke(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const P=global.__pp_dev_start_time??!1,x=P?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-P)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${w}`)} ${x}\n`),i.printUrls();const S=await u(m);if(!1!==S.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+v)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=r();t.print&&o.info(a.dim(a.green(" ➜"))+a.dim(" press ")+a.bold("h")+a.dim(" to show help"));const n=(t.customShortcuts??[]).filter(ce).concat(pe);de?.(),de=null;let i=!1;const s=process.stdin.isPaused(),l=process.stdin,c=Boolean(l.isRaw),d=async t=>{if(""===t)return void process.kill(process.pid,"SIGINT");if(""===t)return void await e.close().finally(()=>process.exit(0));if(i)return;"h"===t&&o.info(["",a.bold(" Shortcuts"),...n.map(e=>a.dim(" press ")+a.bold(e.key)+a.dim(` to ${e.description}`))].join("\n"));const s=n.find(e=>e.key===t);s&&(i=!0,await s.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",d).setEncoding("utf8").resume();const p=e.httpServer,f=()=>{de===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),de=null)};de=f,p.on("close",f)}(i,{print:!0,customShortcuts:[...Pe?[{key:"p",description:"start/stop the profiler",async action(e){if(Pe)await Se(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Pe=new e.Session,Pe.connect(),Pe.post("Profiler.enable",()=>{Pe?.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=be(c,p,d.info),d.info(a.blue("🔧 Config file watcher started"))),l=!1}catch(e){l=!1,d.error(a.red(`error when starting dev server:\n${e.stack}`),{error:e}),Se(d.info),process.exit(1)}}},f=async e=>{d.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));try{s&&(we(s),s=null),i&&(await i.close(),i=null),Se(d.info),d.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){d.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>f("SIGINT")),process.on("SIGTERM",()=>f("SIGTERM")),process.on("uncaughtException",e=>{d.error(a.red(`❌ Uncaught Exception: ${e}`)),f("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(a.red(`❌ Unhandled Rejection at: ${t}, reason: ${e}`)),f("unhandledRejection")}),await p()}),me.command("next [root]","start Next.js development server with pp-dev integration").alias("next-serve").alias("next-dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port",{default:3e3}).option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").option("--webpack","[boolean] use Webpack for Next dev (use when Turbopack/native SWC is unavailable)").option("--turbopack","[boolean] use Turbopack for Next dev when native bindings work").action(async(n,i)=>{Te(i);let s=null,l=null,c=null,f=null,u=!1;const g=r(),h=async()=>{if(!u){u=!0;try{const{next:m,constants:b}=await V(),{PHASE_DEVELOPMENT_SERVER:w}=b;c&&(await c.close(),c=null),l&&(g.info(a.yellow("🛑 Stopping existing Next.js server...")),await new Promise(e=>{l.close(()=>{l=null,e()})})),s&&"function"==typeof s.close&&(await s.close(),s=null);const{clearConfigCache:O}=await import("./index-yWblwalm.js").then(e=>e.h);O();const{join:z,basename:U}=await(import("path")),{createServer:W}=await(import("http")),Z=await(import("next/dist/server/config.js")),q=Z.default.default||Z["module.exports"].default||Z.default,J=ke(i),K=n?z(process.cwd(),n):process.cwd();H(i.mode||"development",K),g.info(K);const Y=await q(w,K);let X=Y?.ppDev||{};if(0===Object.keys(X).length)try{const{getConfig:e}=await import("./index-yWblwalm.js").then(e=>e.h),t=await e(K);Object.keys(t).length>0?(X=t,g.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):g.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){g.info(a.yellow("⚠️ Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else g.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));let Q=null;try{const{getPkg:e}=await import("./index-yWblwalm.js").then(e=>e.h);Q=e(K).name}catch{Q=U(K)}y(X,Q??"");const te=p(X,Q??""),oe=te.backendBaseURL??"http://localhost:8080",ne=te.templateLess,ie=te.v7Features,se=te.disableSSLValidation,re=te.enableProxyCache,ae=te.proxyCacheTTL,le=te.personalAccessToken,ce=te.miHudLess,de=te.inspectorEnabled,pe=te.inspectorMaxMemory,fe=te.inspectorCaptureLimit,ue=te.appId??(process.env.MI_APP_ID&&parseInt(process.env.MI_APP_ID,10)||void 0)??(process.env.MI_PORTAL_PAGE_ID&&parseInt(process.env.MI_PORTAL_PAGE_ID,10)||void 0)??1,ge=Y?.basePath;let me="";ge?me=ge:(me=ne?P:ie?x:S,me+=`/${Q}`);const ye=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Pe=async e=>{delete process.env.TURBOPACK,s&&"function"==typeof s.close&&(await s.close(),s=null);const t={dev:!0,customServer:!0,hostname:J.host||"localhost",port:J.port,dir:K,conf:{...Y,basePath:me,assetPrefix:me}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),s=m(t),await s.prepare()};if(ye.webpack)await Pe({webpack:!0});else if(ye.turbopack)try{await Pe({turbopack:!0})}catch(e){if(!ve(e))throw e;g.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Pe({webpack:!0})}else try{await Pe({})}catch(e){if(!ve(e))throw e;g.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Pe({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(me.endsWith("/")||(me+="/"),"/"===me)throw new Error('basePath cannot be equal to "/" or equal to empty string');g.info(a.green("✅ Next.js app prepared successfully")),g.info(a.blue(`🔧 pp-dev plugin configured for template: ${Q}`)),g.info(a.blue(`🔧 Base path configured: ${me}`)),oe&&(g.info(a.blue(`🌐 Backend URL: ${oe}`)),g.info(a.blue(`🆔 Custom App ID: ${ue}`)));const xe=s.getRequestHandler(),Se="number"==typeof J.port?J.port:3e3,Te="string"==typeof J.host?J.host||"0.0.0.0":"localhost",Ee=new Set;l=W(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=ee(o,!0);if($e.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>=$e.length)return void s();const o=$e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(me))i=ee(o,!0);else{if(n===me.replace(/\/$/,"")){const e=o.replace(n,me);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:me}),void t.end()}await xe(e,t,i)}s()}catch(d){g.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let Le=null,$e=[],De=[];if(!1!==de){const e=new T(pe);k(E,e,fe);const t=L(e,fe);$e.push(t)}if(oe){const n=new URL(oe).host;oe.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const i={headers:{host:n,referer:oe,origin:oe.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:ue,templateLess:ne,disableSSLValidation:se,v7Features:ie,personalAccessToken:le??process.env.MI_ACCESS_TOKEN};Le=new $(oe,i);const p=D(me,Q??void 0),f=(e,t,o)=>{p(e,t,o)};De.push(f),$e.push(f);const u=G(me);if(De.push(u),$e.push(u),re){let e=+ae;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=F({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};$e.push(n),g.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const h=new RegExp(`^((${r=me,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=I(h,Le,Object.assign({base:me},i,{miHudLess:ce})),w=(e,t,o)=>{m(e,t,o)};$e.push(w);const y=me.endsWith("/")?me.substring(0,me.length-1):me,P={middlewares:{use:e=>e},config:{logger:console}},x=j({devServer:P,baseURL:oe,proxyIgnore:["/@vite","/@metricinsights","/@",y,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:se,miAPI:Le,templateName:Q??void 0}),S=(e,t,o)=>{x(e,t,o)};$e.push(S);const T=E,k=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(v)||e.url?.startsWith(_)){return void T(e,t,()=>{})}o()};De.push(k),$e.push(k);const L=N(e=>{const t=e.split("?")[0];return t.startsWith(me)&&!t.includes("/_next/")},(e,t)=>{const o=Le.buildPage(e,ce),i=B(o,me,{backendBaseURL:oe,templateLess:ne,appId:ue,devPanelPosition:te.devPanelPosition,devPanelHidden:te.devPanelHidden,devPanelAutoHide:te.devPanelAutoHide});return Buffer.from(A(n,t.headers.host??"",i))}),O=(e,t,o)=>{L(e,t,o)};$e.push(O),c=new he;let z=Y?.distDir;try{process.env[d]="1";const e=await q(b.PHASE_PRODUCTION_BUILD,K);z=e?.distDir??z}catch{}const H=(z??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),V=H&&".next"!==H?H:"out";let W,Z="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(K,"package.json"),"utf-8"));Z="string"==typeof o.version?o.version:Z,W="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const J=new C(Q??U(K),{root:K,backupFolder:e.resolve(K,te.syncBackupsDir),nextBuild:{projectRoot:K,distDir:V,packageVersion:Z,packageRepositoryUrl:W}}),X={ws:c.ws,config:{clientInjectionPlugin:{v7Features:ie}}};new R(X,{distService:J,miAPI:Le}),M(E,{distService:J,miAPI:Le});const ee="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{c?.handleUpgrade(e,t,o)||(ee?ee(e,t,o):t.destroy())}),g.info(a.blue(`🔧 ${$e.length} pp-dev middlewares initialized`)),g.info(a.blue(`🔧 ${De.length} essential middlewares for internal routes`)),g.info(a.blue(`🔧 MiAPI initialized for backend: ${oe}`)),g.info(a.blue(`🔧 Custom App ID: ${ue}`))}l.listen(Se,Te,()=>{g.info(a.green(`✅ pp-dev Next.js server running at http://${Te}:${Se}`)),g.info(a.blue(`📱 Next.js app accessible at http://${Te}:${Se}${me}`)),!1!==de&&g.info(a.cyan(`🔍 Request Inspector: http://${Te}:${Se}${v}`)),g.info(a.blue("🔧 Base path handling active")),f||(f=be(K,h,g.info),g.info(a.blue("🔧 Config file watcher started"))),l.on("connection",e=>{Ee.add(e),e.on("close",()=>Ee.delete(e))});const e=async e=>{g.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{g.info(a.yellow("⏰ Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{f&&(we(f),f=null);for(const e of Array.from(Ee))e.destroy();Ee.clear(),c&&(await c.close(),c=null),await new Promise(e=>{l.close(()=>{g.info(a.yellow("🛑 HTTP server closed")),e()})}),s&&"function"==typeof s.close&&(await s.close(),g.info(a.yellow("🛑 Next.js app closed"))),clearTimeout(t),g.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),g.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};let t=process;if("function"!=typeof process.on){const e=globalThis.process||global.process;e&&"function"==typeof e.on&&(t=e,g.info(a.green("✅ Using global process object for event handlers")))}if("function"==typeof t.on)try{t.on("SIGINT",()=>e("SIGINT")),t.on("SIGTERM",()=>e("SIGTERM")),t.on("uncaughtException",t=>{g.error(a.red(`❌ Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{g.error(a.red(`❌ Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),g.info(a.green("✅ Process event handlers registered successfully"))}catch(e){g.warn(a.yellow(`⚠️ Failed to register process event handlers: ${e}`))}else g.warn(a.yellow("⚠️ process.on is not available, graceful shutdown handlers will not be registered")),g.info(a.blue("💡 This might be due to bundling or environment constraints"))}),u=!1}catch(e){u=!1,g.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(g.error(a.red("❌ Next.js Peer Dependency Error:")),g.error(a.red(e.message)),g.error(a.yellow("\n💡 To fix this issue:")),g.error(a.blue(" 1. Install Next.js in your project:")),g.error(a.white(" npm install next@^16")),g.error(a.blue(" 2. Or use yarn:")),g.error(a.white(" yarn add next@^16")),g.error(a.blue(" 3. Or use pnpm:")),g.error(a.white(" pnpm add next@^16")),g.error(a.yellow("\n📖 For more information, see:")),g.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}},m=async e=>{g.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));try{f&&(we(f),f=null),c&&(await c.close(),c=null),l&&await new Promise(e=>{l.close(()=>{l=null,e()})}),s&&"function"==typeof s.close&&(await s.close(),s=null),g.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){g.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>m("SIGINT")),process.on("SIGTERM",()=>m("SIGTERM")),process.on("uncaughtException",e=>{g.error(a.red(`❌ Uncaught Exception: ${e}`)),m("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{g.error(a.red(`❌ Unhandled Rejection at: ${t}, reason: ${e}`)),m("unhandledRejection")}),await h()}),me.command("build [root]","build for production").option("--target <target>","[string] transpile target (default: 'modules')").option("--outDir <dir>","[string] output directory (default: dist)").option("--assetsDir <dir>","[string] directory under outDir to place assets in (default: assets)").option("--assetsInlineLimit <number>","[number] static asset base64 inline threshold in bytes (default: 4096)").option("--ssr [entry]","[string] build specified entry for server-side rendering").option("--sourcemap [output]",'[boolean | "inline" | "hidden"] output source maps for build (default: false)').option("--minify [minifier]",'[boolean | "terser" | "esbuild"] enable/disable minification, or specify minifier to use (default: esbuild)').option("--manifest [name]","[boolean | string] emit build manifest json").option("--ssrManifest [name]","[boolean | string] emit ssr manifest json").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle (experimental)").option("--emptyOutDir","[boolean] force empty outDir when it's outside of root").option("-w, --watch","[boolean] rebuilds when modules have changed on disk").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(t,o)=>{Te(o);const n=ke(o),i=z(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");H(s,r);const a=await q({mode:s,command:"build"},o.config,t,o.logLevel);let l=await U(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=J(l,t)}const c=J(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await K(c),n.changelog){const i=t||process.cwd(),s=c.build?.outDir||"dist";let r="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?r=s:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(r=c.ppDevConfig.distZip.outDir)),await ye({changelog:n.changelog,executionRoot:i,newAssetsPath:e.resolve(i,s),backupsDirPath:e.resolve(i,c.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:e.resolve(i,r),logLevel:o.logLevel})}}catch(e){r(o.logLevel).error(a.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(o.logLevel).info(e))}}),me.command("next-build [root]","build a Next.js app for production (`next build`) and emit VERSION/BUILD-MANIFEST/zip in the same format as `pp-dev build`").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(o,n)=>{Te(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=z(n);process.env[d]="1";try{H(n.mode||"production",s);const{constants:o}=await V(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,d=await c(o.PHASE_PRODUCTION_BUILD,s);let w,v=d?.ppDev||{};if(0===Object.keys(v).length){const{getConfig:e}=await import("./index-yWblwalm.js").then(e=>e.h);v=await e(s)}try{const{getPkg:e}=await import("./index-yWblwalm.js").then(e=>e.h);w=e(s).name}catch{w=e.basename(s)}const y=p(v,w),P=W(y.distZip,l,f(w)),x=Z(y.versionPlugin,l),S=u(s,d);S&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,S)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await g(s);const T="string"==typeof d?.distDir&&d.distDir?d.distDir:".next",k=".next"===T?"out":T,E=e.resolve(s,k);if(!t.existsSync(E)||!t.statSync(E).isDirectory())throw new Error(`Next.js build output directory not found: ${E}. "next-build" requires "output: 'export'" in next.config (static export).`);const L=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==x&&!1!==x.enabled&&(h({outDir:E,packageVersion:"string"==typeof L.version?L.version:"0.0.0",versionFileTemplate:x.versionFileTemplate,packageRepositoryUrl:"string"==typeof L.repository?L.repository:L.repository?.url,enabled:x.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,E)}`))),!1!==P){const o=e.resolve(s,P.outDir),n=P.inDir?e.resolve(E,P.inDir):E,r=m(o,P.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await b(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==P?P.outDir:k;await ye({changelog:n.changelog,executionRoot:s,newAssetsPath:E,backupsDirPath:e.resolve(s,y.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(n.logLevel).info(e))}}),me.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)=>{Te(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:l=".",filename:c="CHANGELOG.html",logLevel:d}=n,p=process.cwd();i&&s||(r(d).error(a.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const f=e.resolve(p,i),u=e.resolve(p,s),g=e.resolve(p,l),h=new ue({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),me.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)=>{Te(n);const{source:i=t,destination:s=o,fontName:l="icon-font"}=n,c=process.cwd(),d=e.resolve(c,i),p=e.resolve(c,s),f=new ge({sourceDir:d,outputDir:p,fontName:l}),u=r(n.logLevel);u.info(`Generating icon font from SVG files in ${a.dim(d)}`),await f.generate(),u.info(`Icon font generated and saved to ${a.dim(p)}`)}),me.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Te(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");H(n,i);const s=await q({mode:n,command:"build"},o.config,t,o.logLevel);let r=await U(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=J(r,t)}const a=await Y(J(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await X(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),me.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action(async(t,o)=>{Te(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");H(n,i);const s=await q({mode:n,command:"build"},o.config,t,o.logLevel);let r=await U(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=J(r,t)}(await Q(J(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(o.logLevel).info(e))}}),me.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-BKjKczwc.js")),h=n.format??"ts",m=!1!==n.backup,b=process.cwd(),w=u(b,o);w||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=w;i.info(a.blue(`Found config: ${e.relative(b,v)}`));const{getPkg:x}=await import("./index-yWblwalm.js").then(e=>e.h),S=x();let T,k={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:b,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(b,s)).toString()));k=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(b,v)).toString()));k=o.default?.default??o.default??o}else P?k=g(v):v.endsWith(".json")&&(k=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}k&&"object"==typeof k||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(k)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(k)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),T=p(k)):s(k)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),T=d(k,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const E=f(T,h),L=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(b,L)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(b,o)}`))}t.writeFileSync(L,E,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(b,L)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==L&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),me.help(),me.version(w),me.parse();export{Se as stopProfiler};
|
|
1
|
+
import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,e as l,P as c,b as d,n as p,d as f,r as u,f as g,w as h,g as m,z as b,V as w,I as v,v as y,h as P,i as x,j as S,R as T,k,l as E,m as L,M as $,o as D,p as F,q as I,s as j,t as _,u as N,x as A,D as C,C as R,y as M,A as O}from"./plugin-D8UnKa_2.js";import{r as z,l as H,g as U,s as V,a as W,b as Z,c as G,i as B}from"./index-DBWI8b9J.js";import{loadConfigFromFile as q,mergeConfig as J,build as K,resolveConfig as Y,optimizeDeps as X,preview as Q}from"vite";import{parse as ee}from"url";import*as te from"dir-compare";import oe from"diff-match-patch";import{isBinaryFile as ne}from"isbinaryfile";import*as ie from"os";import*as se from"crypto";import re from"svgtofont";import{WebSocketServer as ae,WebSocket as le}from"ws";import"http-proxy-middleware";import"picocolors";import"node:string_decoder";import"axios";import"node:http";import"node:https";import"jsdom";import"process";import"child_process";import"node:path";import"jszip";import"module";import"zlib";import"express";import"node:crypto";import"./helpers.js";import"ejs";function ce(e){return null!=e&&!1!==e}let de=null;const pe=[{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 fe=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class ue{oldAssetsPath;newAssetsPath;destinationPath;changelogFilename;changelogTemplate='<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8" />\n <title>Changelog Diff</title>\n <style>\n tr,\n td {\n padding: 0;\n }\n .diff-file {\n margin-top: 20px;\n border: 1px solid #e1e4e8;\n border-radius: 6px;\n }\n .diff-file-title {\n padding: 10px 20px;\n background-color: #f6f8fa;\n border-bottom: 1px solid #e1e4e8;\n border-radius: 6px 6px 0 0;\n font-weight: bold;\n }\n .diff-file-title .renamed {\n font-weight: normal;\n }\n .diff-file-title .renamed .from {\n color: #cb2431;\n }\n .diff-file-title .renamed .to {\n color: #22863a;\n }\n .diff-file-title .added {\n color: #22863a;\n }\n .diff-file-title .deleted {\n color: #cb2431;\n }\n .diff-file-content {\n }\n .diff-table {\n tab-size: 8;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n }\n .blob-num {\n position: relative;\n color: #1f2328;\n width: 1%;\n min-width: 50px;\n padding: 0 10px;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n line-height: 20px;\n text-align: right;\n white-space: nowrap;\n vertical-align: top;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n }\n .blob-num.addition {\n background-color: #ccffd8;\n border-color: #1f883e;\n }\n .blob-num.deletion {\n background-color: #ffd7d5;\n border-color: #cf222e;\n }\n .blob-num::before {\n content: attr(data-line-number);\n }\n .blob-code {\n position: relative;\n padding: 0 10px 0 22px;\n vertical-align: top;\n color: #1f2329;\n }\n .blob-code.code-addition {\n background-color: #e6ffec;\n }\n .blob-code.code-deletion {\n background-color: #ffebe9;\n }\n .blob-code.skip,\n .blob-code.message {\n text-align: center;\n }\n .blob-code.skip .blob-code-inner,\n .blob-code.message .blob-code-inner {\n font-weight: bold;\n color: #6a737d;\n padding: 10px 0;\n }\n .blob-code-inner {\n display: table-cell;\n overflow: visible;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n word-wrap: anywhere;\n white-space: pre-wrap;\n }\n .blob-code-inner::before {\n content: attr(data-code-prefix);\n position: absolute;\n top: 1px;\n left: 8px;\n padding-right: 8px;\n }\n </style>\n </head>\n <body>\n <h1>Changelog Diff</h1>\n\n %FILES%\n </body>\n </html>';diffFileTemplateHandler;diffLineTemplateHandler;contextLines=3;logger;constructor(t){const{oldAssetsPath:o,newAssetsPath:n,destinationPath:i,changelogTemplate:s,diffFileTemplateHandler:l,diffLineTemplateHandler:c,changelogFilename:d,contextLines:p}=t;if(this.logger=r(),!o||!n||!i)throw new Error("Previous assets path, current assets path and destination path are required");if(o===n)throw new Error("Previous and current assets paths must be different");if(!this.isExists(o))throw new Error(`Previous assets path ${o} does not exist`);if(!this.isExists(n))throw new Error(`Current assets path ${n} does not exist`);if(this.isZipFile(o)){const t=e.resolve(ie.tmpdir(),se.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(ie.tmpdir(),se.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await l(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await te.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(fe.test(e)&&(e=e.replace(fe,"$1$3")),fe.test(t)&&(t=t.replace(fe,"$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 oe,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 ne(n)||await ne(i)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(t.readFileSync(n,"utf-8"),t.readFileSync(i,"utf-8"))))}return""}async generateChangelog(){this.logger.info(a.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(a.green("Writing changelog file"));const i=this.changelogTemplate.split("%FILES%");i.splice(1,0,n);const s=i.join("");t.writeFileSync(e.join(this.destinationPath,this.changelogFilename),s),this.logger.info(a.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class ge{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){await re({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class he{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new ae({noServer:!0}),this.wss.on("connection",e=>this.onConnection(e)),this.wss.on("error",e=>this.fireLifecycle("error",e)),this.ws={on:(e,t)=>{"close"!==e&&"error"!==e?this.getEventSet(e).add(t):this.getLifecycleSet(e).add(t)},off:(e,t)=>{this.eventListeners.get(e)?.delete(t),"close"!==e&&"error"!==e||this.lifecycleListeners.get(e)?.delete(t)},send:(e,t)=>{if("string"==typeof e)for(const o of this.clients.keys())this.sendToSocket(o,e,t);else{const t=JSON.stringify(e);for(const e of this.clients.keys())e.readyState===le.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===c&&(this.wss.handleUpgrade(e,t,o,t=>{this.wss.emit("connection",t,e)}),!0)}async close(){this.fireLifecycle("close");for(const e of this.clients.keys())e.terminate();this.clients.clear(),await new Promise(e=>this.wss.close(()=>e()))}onConnection(e){const t={send:(t,o)=>this.sendToSocket(e,t,o)};this.clients.set(e,t),e.on("message",e=>this.onMessage(t,e)),e.on("close",()=>this.clients.delete(e)),e.on("error",()=>{})}onMessage(e,t){let o;try{o=JSON.parse(t.toString())}catch{return}if(!o||"custom"!==o.type||"string"!=typeof o.event)return;const n=this.eventListeners.get(o.event);if(n)for(const t of n)try{t(o.data,e)}catch(e){r().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===le.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}const me=s("pp-dev");function be(t,o,n){const s=[...O,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function we(e){e.watcher&&e.watcher.close()}function ve(e){if(!e||"object"!=typeof e||!("message"in e))return!1;const t=String(e.message);return/Turbopack is not supported/i.test(t)||/native bindings are not available/i.test(t)||/Only WebAssembly \(WASM\) bindings were loaded/i.test(t)}async function ye(o){const{changelog:n,executionRoot:i,newAssetsPath:s,backupsDirPath:l,changelogDestinationPath:c,logLevel:d}=o;let p;if("string"==typeof n)p=e.resolve(i,n);else{if(!t.existsSync(l))return void r(d).warn(a.yellow("backups directory not found, skipping changelog generation"));const o=t.readdirSync(l,{withFileTypes:!0});if(!o.length)return void r(d).warn(a.yellow("no backups found, skipping changelog generation"));const n=o.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!n.length)return void r(d).warn(a.yellow("no ZIP backups found, skipping changelog generation"));const i=n.reduce((o,n)=>t.statSync(e.resolve(l,o.name)).mtimeMs>t.statSync(e.resolve(l,n.name)).mtimeMs?o:n).name;p=e.resolve(l,i)}const f=new ue({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Pe=global.__pp_dev_profile_session,xe=0;const Se=o=>{if(Pe)return new Promise((n,i)=>{Pe.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${xe++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Pe=void 0,n()}})})},Te=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function ke(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}me.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"),me.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)=>{Te(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:f,getConfig:u}=await import("./index-DBWI8b9J.js").then(e=>e.h);f();const{createServer:g}=await(import("vite")),h=o.mode||"development",m=e.resolve(process.cwd(),t??".");H(h,m);const b=await q({mode:h,command:"serve"},o.config,t,o.logLevel);let y=await U(void 0,{mode:h,root:m});if(b){const{plugins:e,...t}=b.config;y=J(y,t)}if(i=await g(J(y,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:ke(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const P=global.__pp_dev_start_time??!1,x=P?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-P)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${w}`)} ${x}\n`),i.printUrls();const S=await u(m);if(!1!==S.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+v)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=r();t.print&&o.info(a.dim(a.green(" ➜"))+a.dim(" press ")+a.bold("h")+a.dim(" to show help"));const n=(t.customShortcuts??[]).filter(ce).concat(pe);de?.(),de=null;let i=!1;const s=process.stdin.isPaused(),l=process.stdin,c=Boolean(l.isRaw),d=async t=>{if(""===t)return void process.kill(process.pid,"SIGINT");if(""===t)return void await e.close().finally(()=>process.exit(0));if(i)return;"h"===t&&o.info(["",a.bold(" Shortcuts"),...n.map(e=>a.dim(" press ")+a.bold(e.key)+a.dim(` to ${e.description}`))].join("\n"));const s=n.find(e=>e.key===t);s&&(i=!0,await s.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",d).setEncoding("utf8").resume();const p=e.httpServer,f=()=>{de===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),de=null)};de=f,p.on("close",f)}(i,{print:!0,customShortcuts:[...Pe?[{key:"p",description:"start/stop the profiler",async action(e){if(Pe)await Se(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Pe=new e.Session,Pe.connect(),Pe.post("Profiler.enable",()=>{Pe?.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=be(c,p,d.info),d.info(a.blue("🔧 Config file watcher started"))),l=!1}catch(e){l=!1,d.error(a.red(`error when starting dev server:\n${e.stack}`),{error:e}),Se(d.info),process.exit(1)}}},f=async e=>{d.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));try{s&&(we(s),s=null),i&&(await i.close(),i=null),Se(d.info),d.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){d.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>f("SIGINT")),process.on("SIGTERM",()=>f("SIGTERM")),process.on("uncaughtException",e=>{d.error(a.red(`❌ Uncaught Exception: ${e}`)),f("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{d.error(a.red(`❌ Unhandled Rejection at: ${t}, reason: ${e}`)),f("unhandledRejection")}),await p()}),me.command("next [root]","start Next.js development server with pp-dev integration").alias("next-serve").alias("next-dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port",{default:3e3}).option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").option("--webpack","[boolean] use Webpack for Next dev (use when Turbopack/native SWC is unavailable)").option("--turbopack","[boolean] use Turbopack for Next dev when native bindings work").action(async(n,i)=>{Te(i);let s=null,l=null,c=null,f=null,u=!1;const g=r(),h=async()=>{if(!u){u=!0;try{const{next:m,constants:b}=await V(),{PHASE_DEVELOPMENT_SERVER:w}=b;c&&(await c.close(),c=null),l&&(g.info(a.yellow("🛑 Stopping existing Next.js server...")),await new Promise(e=>{l.close(()=>{l=null,e()})})),s&&"function"==typeof s.close&&(await s.close(),s=null);const{clearConfigCache:O}=await import("./index-DBWI8b9J.js").then(e=>e.h);O();const{join:z,basename:U}=await(import("path")),{createServer:W}=await(import("http")),Z=await(import("next/dist/server/config.js")),q=Z.default.default||Z["module.exports"].default||Z.default,J=ke(i),K=n?z(process.cwd(),n):process.cwd();H(i.mode||"development",K),g.info(K);const Y=await q(w,K);let X=Y?.ppDev||{};if(0===Object.keys(X).length)try{const{getConfig:e}=await import("./index-DBWI8b9J.js").then(e=>e.h),t=await e(K);Object.keys(t).length>0?(X=t,g.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):g.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){g.info(a.yellow("⚠️ Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else g.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));let Q=null;try{const{getPkg:e}=await import("./index-DBWI8b9J.js").then(e=>e.h);Q=e(K).name}catch{Q=U(K)}y(X,Q??"");const te=p(X,Q??""),oe=te.backendBaseURL??"http://localhost:8080",ne=te.templateLess,ie=te.v7Features,se=te.disableSSLValidation,re=te.enableProxyCache,ae=te.proxyCacheTTL,le=te.personalAccessToken,ce=te.miHudLess,de=te.inspectorEnabled,pe=te.inspectorMaxMemory,fe=te.inspectorCaptureLimit,ue=te.appId??(process.env.MI_APP_ID&&parseInt(process.env.MI_APP_ID,10)||void 0)??(process.env.MI_PORTAL_PAGE_ID&&parseInt(process.env.MI_PORTAL_PAGE_ID,10)||void 0)??1,ge=Y?.basePath;let me="";ge?me=ge:(me=ne?P:ie?x:S,me+=`/${Q}`);const ye=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Pe=async e=>{delete process.env.TURBOPACK,s&&"function"==typeof s.close&&(await s.close(),s=null);const t={dev:!0,customServer:!0,hostname:J.host||"localhost",port:J.port,dir:K,conf:{...Y,basePath:me,assetPrefix:me}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),s=m(t),await s.prepare()};if(ye.webpack)await Pe({webpack:!0});else if(ye.turbopack)try{await Pe({turbopack:!0})}catch(e){if(!ve(e))throw e;g.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Pe({webpack:!0})}else try{await Pe({})}catch(e){if(!ve(e))throw e;g.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Pe({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(me.endsWith("/")||(me+="/"),"/"===me)throw new Error('basePath cannot be equal to "/" or equal to empty string');g.info(a.green("✅ Next.js app prepared successfully")),g.info(a.blue(`🔧 pp-dev plugin configured for template: ${Q}`)),g.info(a.blue(`🔧 Base path configured: ${me}`)),oe&&(g.info(a.blue(`🌐 Backend URL: ${oe}`)),g.info(a.blue(`🆔 Custom App ID: ${ue}`)));const xe=s.getRequestHandler(),Se="number"==typeof J.port?J.port:3e3,Te="string"==typeof J.host?J.host||"0.0.0.0":"localhost",Ee=new Set;l=W(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=ee(o,!0);if($e.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>=$e.length)return void s();const o=$e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(me))i=ee(o,!0);else{if(n===me.replace(/\/$/,"")){const e=o.replace(n,me);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:me}),void t.end()}await xe(e,t,i)}s()}catch(d){g.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let Le=null,$e=[],De=[];if(!1!==de){const e=new T(pe);k(E,e,fe);const t=L(e,fe);$e.push(t)}if(oe){const n=new URL(oe).host;oe.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const i={headers:{host:n,referer:oe,origin:oe.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:ue,templateLess:ne,disableSSLValidation:se,v7Features:ie,personalAccessToken:le??process.env.MI_ACCESS_TOKEN};Le=new $(oe,i);const p=D(me,Q??void 0),f=(e,t,o)=>{p(e,t,o)};De.push(f),$e.push(f);const u=G(me);if(De.push(u),$e.push(u),re){let e=+ae;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=F({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};$e.push(n),g.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const h=new RegExp(`^((${r=me,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=I(h,Le,Object.assign({base:me},i,{miHudLess:ce})),w=(e,t,o)=>{m(e,t,o)};$e.push(w);const y=me.endsWith("/")?me.substring(0,me.length-1):me,P={middlewares:{use:e=>e},config:{logger:console}},x=j({devServer:P,baseURL:oe,proxyIgnore:["/@vite","/@metricinsights","/@",y,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:se,miAPI:Le,templateName:Q??void 0}),S=(e,t,o)=>{x(e,t,o)};$e.push(S);const T=E,k=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(v)||e.url?.startsWith(_)){return void T(e,t,()=>{})}o()};De.push(k),$e.push(k);const L=N(e=>{const t=e.split("?")[0];return t.startsWith(me)&&!t.includes("/_next/")},(e,t)=>{const o=Le.buildPage(e,ce),i=B(o,me,{backendBaseURL:oe,templateLess:ne,appId:ue,devPanelPosition:te.devPanelPosition,devPanelHidden:te.devPanelHidden,devPanelAutoHide:te.devPanelAutoHide});return Buffer.from(A(n,t.headers.host??"",i))}),O=(e,t,o)=>{L(e,t,o)};$e.push(O),c=new he;let z=Y?.distDir;try{process.env[d]="1";const e=await q(b.PHASE_PRODUCTION_BUILD,K);z=e?.distDir??z}catch{}const H=(z??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),V=H&&".next"!==H?H:"out";let W,Z="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(K,"package.json"),"utf-8"));Z="string"==typeof o.version?o.version:Z,W="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const J=new C(Q??U(K),{root:K,backupFolder:e.resolve(K,te.syncBackupsDir),nextBuild:{projectRoot:K,distDir:V,packageVersion:Z,packageRepositoryUrl:W}}),X={ws:c.ws,config:{clientInjectionPlugin:{v7Features:ie}}};new R(X,{distService:J,miAPI:Le}),M(E,{distService:J,miAPI:Le});const ee="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{c?.handleUpgrade(e,t,o)||(ee?ee(e,t,o):t.destroy())}),g.info(a.blue(`🔧 ${$e.length} pp-dev middlewares initialized`)),g.info(a.blue(`🔧 ${De.length} essential middlewares for internal routes`)),g.info(a.blue(`🔧 MiAPI initialized for backend: ${oe}`)),g.info(a.blue(`🔧 Custom App ID: ${ue}`))}l.listen(Se,Te,()=>{g.info(a.green(`✅ pp-dev Next.js server running at http://${Te}:${Se}`)),g.info(a.blue(`📱 Next.js app accessible at http://${Te}:${Se}${me}`)),!1!==de&&g.info(a.cyan(`🔍 Request Inspector: http://${Te}:${Se}${v}`)),g.info(a.blue("🔧 Base path handling active")),f||(f=be(K,h,g.info),g.info(a.blue("🔧 Config file watcher started"))),l.on("connection",e=>{Ee.add(e),e.on("close",()=>Ee.delete(e))});const e=async e=>{g.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));const t=setTimeout(()=>{g.info(a.yellow("⏰ Shutdown timeout reached, forcing exit")),process.exit(0)},5e3);try{f&&(we(f),f=null);for(const e of Array.from(Ee))e.destroy();Ee.clear(),c&&(await c.close(),c=null),await new Promise(e=>{l.close(()=>{g.info(a.yellow("🛑 HTTP server closed")),e()})}),s&&"function"==typeof s.close&&(await s.close(),g.info(a.yellow("🛑 Next.js app closed"))),clearTimeout(t),g.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){clearTimeout(t),g.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};let t=process;if("function"!=typeof process.on){const e=globalThis.process||global.process;e&&"function"==typeof e.on&&(t=e,g.info(a.green("✅ Using global process object for event handlers")))}if("function"==typeof t.on)try{t.on("SIGINT",()=>e("SIGINT")),t.on("SIGTERM",()=>e("SIGTERM")),t.on("uncaughtException",t=>{g.error(a.red(`❌ Uncaught Exception: ${t}`)),e("uncaughtException")}),t.on("unhandledRejection",(t,o)=>{g.error(a.red(`❌ Unhandled Rejection at: ${o}, reason: ${t}`)),e("unhandledRejection")}),g.info(a.green("✅ Process event handlers registered successfully"))}catch(e){g.warn(a.yellow(`⚠️ Failed to register process event handlers: ${e}`))}else g.warn(a.yellow("⚠️ process.on is not available, graceful shutdown handlers will not be registered")),g.info(a.blue("💡 This might be due to bundling or environment constraints"))}),u=!1}catch(e){u=!1,g.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(g.error(a.red("❌ Next.js Peer Dependency Error:")),g.error(a.red(e.message)),g.error(a.yellow("\n💡 To fix this issue:")),g.error(a.blue(" 1. Install Next.js in your project:")),g.error(a.white(" npm install next@^16")),g.error(a.blue(" 2. Or use yarn:")),g.error(a.white(" yarn add next@^16")),g.error(a.blue(" 3. Or use pnpm:")),g.error(a.white(" pnpm add next@^16")),g.error(a.yellow("\n📖 For more information, see:")),g.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}},m=async e=>{g.info(a.yellow(`\n🛑 Received ${e}, shutting down gracefully...`));try{f&&(we(f),f=null),c&&(await c.close(),c=null),l&&await new Promise(e=>{l.close(()=>{l=null,e()})}),s&&"function"==typeof s.close&&(await s.close(),s=null),g.info(a.green("✅ Graceful shutdown completed")),process.exit(0)}catch(e){g.error(a.red(`❌ Error during graceful shutdown: ${e}`)),process.exit(1)}};process.on("SIGINT",()=>m("SIGINT")),process.on("SIGTERM",()=>m("SIGTERM")),process.on("uncaughtException",e=>{g.error(a.red(`❌ Uncaught Exception: ${e}`)),m("uncaughtException")}),process.on("unhandledRejection",(e,t)=>{g.error(a.red(`❌ Unhandled Rejection at: ${t}, reason: ${e}`)),m("unhandledRejection")}),await h()}),me.command("build [root]","build for production").option("--target <target>","[string] transpile target (default: 'modules')").option("--outDir <dir>","[string] output directory (default: dist)").option("--assetsDir <dir>","[string] directory under outDir to place assets in (default: assets)").option("--assetsInlineLimit <number>","[number] static asset base64 inline threshold in bytes (default: 4096)").option("--ssr [entry]","[string] build specified entry for server-side rendering").option("--sourcemap [output]",'[boolean | "inline" | "hidden"] output source maps for build (default: false)').option("--minify [minifier]",'[boolean | "terser" | "esbuild"] enable/disable minification, or specify minifier to use (default: esbuild)').option("--manifest [name]","[boolean | string] emit build manifest json").option("--ssrManifest [name]","[boolean | string] emit ssr manifest json").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle (experimental)").option("--emptyOutDir","[boolean] force empty outDir when it's outside of root").option("-w, --watch","[boolean] rebuilds when modules have changed on disk").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(t,o)=>{Te(o);const n=ke(o),i=z(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");H(s,r);const a=await q({mode:s,command:"build"},o.config,t,o.logLevel);let l=await U(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=J(l,t)}const c=J(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await K(c),n.changelog){const i=t||process.cwd(),s=c.build?.outDir||"dist";let r="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?r=s:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(r=c.ppDevConfig.distZip.outDir)),await ye({changelog:n.changelog,executionRoot:i,newAssetsPath:e.resolve(i,s),backupsDirPath:e.resolve(i,c.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:e.resolve(i,r),logLevel:o.logLevel})}}catch(e){r(o.logLevel).error(a.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(o.logLevel).info(e))}}),me.command("next-build [root]","build a Next.js app for production (`next build`) and emit VERSION/BUILD-MANIFEST/zip in the same format as `pp-dev build`").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(o,n)=>{Te(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=z(n);process.env[d]="1";try{H(n.mode||"production",s);const{constants:o}=await V(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,d=await c(o.PHASE_PRODUCTION_BUILD,s);let w,v=d?.ppDev||{};if(0===Object.keys(v).length){const{getConfig:e}=await import("./index-DBWI8b9J.js").then(e=>e.h);v=await e(s)}try{const{getPkg:e}=await import("./index-DBWI8b9J.js").then(e=>e.h);w=e(s).name}catch{w=e.basename(s)}const y=p(v,w),P=W(y.distZip,l,f(w)),x=Z(y.versionPlugin,l),S=u(s,d);S&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,S)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await g(s);const T="string"==typeof d?.distDir&&d.distDir?d.distDir:".next",k=".next"===T?"out":T,E=e.resolve(s,k);if(!t.existsSync(E)||!t.statSync(E).isDirectory())throw new Error(`Next.js build output directory not found: ${E}. "next-build" requires "output: 'export'" in next.config (static export).`);const L=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==x&&!1!==x.enabled&&(h({outDir:E,packageVersion:"string"==typeof L.version?L.version:"0.0.0",versionFileTemplate:x.versionFileTemplate,packageRepositoryUrl:"string"==typeof L.repository?L.repository:L.repository?.url,enabled:x.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,E)}`))),!1!==P){const o=e.resolve(s,P.outDir),n=P.inDir?e.resolve(E,P.inDir):E,r=m(o,P.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await b(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==P?P.outDir:k;await ye({changelog:n.changelog,executionRoot:s,newAssetsPath:E,backupsDirPath:e.resolve(s,y.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(n.logLevel).info(e))}}),me.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)=>{Te(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:l=".",filename:c="CHANGELOG.html",logLevel:d}=n,p=process.cwd();i&&s||(r(d).error(a.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const f=e.resolve(p,i),u=e.resolve(p,s),g=e.resolve(p,l),h=new ue({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),me.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)=>{Te(n);const{source:i=t,destination:s=o,fontName:l="icon-font"}=n,c=process.cwd(),d=e.resolve(c,i),p=e.resolve(c,s),f=new ge({sourceDir:d,outputDir:p,fontName:l}),u=r(n.logLevel);u.info(`Generating icon font from SVG files in ${a.dim(d)}`),await f.generate(),u.info(`Icon font generated and saved to ${a.dim(p)}`)}),me.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Te(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");H(n,i);const s=await q({mode:n,command:"build"},o.config,t,o.logLevel);let r=await U(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=J(r,t)}const a=await Y(J(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await X(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),me.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action(async(t,o)=>{Te(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");H(n,i);const s=await q({mode:n,command:"build"},o.config,t,o.logLevel);let r=await U(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=J(r,t)}(await Q(J(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{Se(e=>r(o.logLevel).info(e))}}),me.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-OoKc3OYy.js")),h=n.format??"ts",m=!1!==n.backup,b=process.cwd(),w=u(b,o);w||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=w;i.info(a.blue(`Found config: ${e.relative(b,v)}`));const{getPkg:x}=await import("./index-DBWI8b9J.js").then(e=>e.h),S=x();let T,k={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:b,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(b,s)).toString()));k=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(b,v)).toString()));k=o.default?.default??o.default??o}else P?k=g(v):v.endsWith(".json")&&(k=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}k&&"object"==typeof k||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(k)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(k)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),T=p(k)):s(k)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),T=d(k,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const E=f(T,h),L=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(b,L)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(b,o)}`))}t.writeFileSync(L,E,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(b,L)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==L&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),me.help(),me.version(w),me.parse();export{Se as stopProfiler};
|
|
2
2
|
//# sourceMappingURL=cli.js.map
|