@metricinsights/pp-dev 1.5.0-beta.12 → 1.5.0-beta.13

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variables-editor-C2XqYGV8.js","sources":["../../../src/lib/rewrite-response.middleware.ts","../../../src/lib/helpers/url.helper.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/cookie.helper.ts","../../../src/lib/helpers/login.helper.ts","../../../src/lib/helpers/token.helper.ts","../../../src/lib/pp.middleware.ts","../../../src/lib/user-registry.ts","../../../src/lib/session-users.ts","../../../src/lib/proxy-pass.middleware.ts","../../../src/lib/proxy-cache.middleware.ts","../../../src/lib/load-pp-data.middleware.ts","../../../src/lib/user-routes.ts","../../../src/lib/user-store.ts","../../../src/lib/helpers/zip.helper.ts","../../../src/lib/helpers/origin-guard.ts","../../../src/lib/internal.middleware.ts","../../../src/lib/next-build-runner.ts","../../../src/lib/dist.service.ts","../../../src/lib/request-capture.middleware.ts","../../../src/lib/request-inspector.ts","../../../src/lib/variables-editor-markdown.ts","../../../src/lib/page-variables-diff.ts","../../../src/lib/variables-editor.ts","../../../src/lib/client.service.ts","../../../src/lib/request-store.ts","../../../src/lib/pp-redirect.middleware.ts","../../../src/lib/helpers/content-encoding.helper.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],"names":["asEncoding","value","undefined","toBuffer","chunk","encoding","Buffer","from","Uint8Array","urlReplacer","originalHost","destinationHost","content","urlReplaceRegExp","RegExp","replace","substring","args","startsWith","redirect","res","url","statusCode","setHeader","end","cutUrlParams","split","BaseAPI","axios","constructor","this","checkAuth","headers","get","Object","assign","accept","maxRedirects","then","catch","AssetsAPI","super","getDownloadUrl","appId","getDownloadTemplateUrl","templateId","getUploadUrl","getUploadTemplateUrl","downloadPageAssets","withCredentials","responseType","data","uploadPageAssets","file","formData","FormData","assetFile","File","type","append","post","Referer","getUri","downloadTemplateAssets","uploadTemplateAssets","AssetsV7API","PAGE_DATA_FETCH_FRAGMENT","PAGE_TEMPLATE_FETCH_FRAGMENT","MAINTENANCE_SUFFIX","unavailablePageTemplateDataError","Error","isUnavailableJsonApiError","err","message","includes","PageAPI","getAll","Accept","Pragma","Expires","pages","id","page","getPageContent","internalPageName","create","PageTemplateAPI","internal_name","params","Array","isArray","page_templates","page_template","PageVariableAPI","getById","pageId","page_id","tags","parsed","JSON","parse","TypeError","malformedIndex","findIndex","entry","name","normalizePageVariableTags","updateById","put","stringify","isSecureRequest","req","socket","encrypted","forwardedProto","proto","trim","toLowerCase","rewriteSetCookie","cookie","secureRequest","pair","attributes","rewritten","map","attribute","filter","test","join","MI_SESSION_COOKIE","findCookieValue","pairs","separator","indexOf","slice","getRequestCookie","cookieHeader","getSetCookieValue","rewriteSetCookieHeader","tokenLoginFunction","TOKEN_TYPE_CONFIG","personal","placeholder","caption","host","endpoint","regular","updateTokenUI","tokenInput","tokenCaption","info","innerHTML","showError","errorElement","textContent","classList","add","hideError","remove","setupEventHandlers","formWrapper","submitButton","addEventListener","async","e","preventDefault","focus","tokenTypeSwitcher","document","getElementById","activeOption","querySelector","tokenType","dataset","token","response","fetch","method","body","URL","window","location","origin","pathname","json","error","parseError","href","networkError","handleFormSubmission","key","click","initializeLoginForm","loginForm","contentWrapper","firstChild","rowTemplate","lastChild","cloneNode","orRow","innerText","setAttribute","helperForm","formContent","createElement","styleElement","head","appendChild","tokenTypeOptions","querySelectorAll","handleTokenTypeChange","target","forEach","opt","option","currentTarget","setupTokenTypeSwitcher","console","formSelector","observer","MutationObserver","mutations","mutation","disconnect","observe","childList","subtree","existingForm","getTokenErrorInfo","status","lowerMessage","code","userFriendlyMessage","suggestions","TEMPLATE_PAGE_NAME","axiosInstanceCache","Map","USER_HOST_SUFFIX","USER_NAME_REGEXP","getUserNameError","length","getUserNameFromHost","hostname","endsWith","getUserOrigin","port","exec","userRegistry","users","removeListeners","Set","changeListeners","sessionChangeListeners","defaultUserName","renamed","resolved","WeakMap","context","useContext","clear","list","values","user","has","kind","saved","state","delete","set","listener","wasDefault","olderNames","to","renamedTo","keys","onRemove","onSessionChange","sessionChanged","onChange","defaultUser","setDefaultUser","session","resolve","requestUser","isMainHost","LOGIN_LOCATION_REGEXP","getOtherCookies","isLoggedOutResponse","String","SessionUserTracker","check","logger","createLogger","checking","guestSessions","unverified","superseded","isLeftBehindRequest","sentSession","isLeftBehind","onOwnHost","requestSession","newSession","candidate","replaced","ownHost","Date","now","retryAt","expire","verify","miUser","warn","colors","yellow","wasActive","supersede","blue","username","Boolean","size","next","reason","hostOriginRegExp","PROXY_HEADER","LOGOUT_PATH_REGEXP","requestBearerTokens","requestIdentities","TEXTUAL_MEDIA_TYPE_REGEXPS","isRewritableStream","contentEncoding","contentType","mediaType","some","pattern","isTextualContentType","FILE_EXTENSION_REGEX","DEFAULT_TTL","DEFAULT_MAX_SIZE","DEFAULT_MAX_ITEMS","cache","items","totalSize","maxSize","maxItems","expiresAt","del","ttl","cleanup","purgeExpired","getTotalSize","getItemCount","invalidateListeners","lastBearerTokens","invalidateProxyCache","watchedRegistries","WeakSet","isCacheKeyOf","cacheKey","userKey","invalidateUserProxyCache","getIdentityChange","getRequestBearerToken","lastBearerToken","changed","getHeader","createResponseBuffer","chunks","alloc","totalLength","reduce","sum","byteLength","concat","apiResponseCache","getCachedResponse","cached","timestamp","setCachedResponse","DEFAULT_REDIRECT_URL","getPageDataHeaders","onUserHost","authorization","_authorization","_token","rest","handlePageInfoOnly","mi","options","redirectOnAuthFailure","redirectUrl","red","green","getPageInfo","success","authProvider","updateState","isAuthenticated","reset","handleLoadError","encodeURIComponent","handleTemplateLoad","templateLess","loadPageData","getPageTemplate","getPageVariables","operationType","isTokenError","isAuthError","fullRedirectUrl","errorMessage","USERS_API_PATH","routeStates","toPublicUser","loginUrl","checkUserToken","miAPI","Authorization","user_id","ok","rejected","sendError","keptRegistries","keepTokenUsers","opts","projectRoot","miUrl","homeDir","os","homedir","hash","createHash","update","path","digest","getUserStorePath","meta","project","stored","fs","readFileSync","readStoredUsers","restoring","addingStored","changedWhileRestoring","removedWhileRestoring","save","tokenUsers","version","tmp","process","pid","mkdirSync","dirname","recursive","mode","writeFileSync","renameSync","chmodSync","writeStoredUsers","checks","Promise","all","checkToken","index","zipDirectoryToBuffer","dir","zip","JSZip","addDir","current","entries","readdir","withFileTypes","full","isDirectory","isFile","relativePath","relative","readFile","generateAsync","compression","extractZipSafe","zipPath","loadAsync","createFolders","root","files","rawName","unsafeOriginalName","dest","sep","unixPermissions","mkdir","writeFile","SAFE_METHODS","crossOriginReason","originUrl","requestHost","scheme","normalizeHost","protocol","fetchSite","toUpperCase","originGuard","INTERNAL_JSON_BODY_LIMIT","bodyParserErrorHandler","_req","headersSent","createInternalServer","app","express","use","limit","urlencoded","extended","internalServer","runNextBuildProcess","reject","nextBin","nextPkgPath","createRequire","proc","child_process","spawn","execPath","cwd","env","NODE_ENV","PP_DEV_NEXT_BUILD_ENV_VAR","stdio","on","TEMPLATE_PART_PAGE_NAME","TEMPLATE_PART_DATE","DIRNAME","__filename","fileURLToPath","require","pathToFileURL","_documentCurrentScript","tagName","src","baseURI","pluginPath","node_modules_path","DEFAULT_MAX_BACKUPS","escapeRegExp","metaDirPath","metaFilePath","BUILD_MANIFEST_FILE_NAME","TEMPLATE_VARIABLES_FILE_NAME","REDACTED","SESSION_COOKIE_IN_COOKIE","SESSION_COOKIE_IN_SET_COOKIE","redactRequestHeaders","redacted","credentials","redactResponseHeaders","setCookie","redactCookie","AUTH_PATH_REGEXP","CREDENTIAL_FIELD_REGEXP","redactJsonValue","found","item","fromEntries","inner","any","redactRequestBody","URLSearchParams","toString","credentialKeys","SKIP_PREFIXES","SKIP_EXACT","INSPECTOR_PATH","normalizeHeaderValue","v","formatBytes","bytes","toFixed","DESCRIPTION_MARKDOWN_SCRIPT","raw","BOOLEAN_ALLOWED_VALUES","COLOR_PATTERN","optionMatches","text","normalizeFieldOption","validateListItemFieldValue","itemLabel","field","isSelectLike","severity","stringValue","o","unmatched","validateListItems","tag","fields","additionalOptions","normalizeListItemFields","additional_options","fieldNames","issues","push","itemRecord","extraKeys","validateValueAgainstTag","tag_type","typeCompatibilityIssue","VARIABLES_EDITOR_PATH","KNOWN_TAG_TYPES","NAME_FORMAT_REGEX","MISSING_DEPS_ERROR","readSchema","distService","buffer","readPublicTemplateVariablesFile","server","eventMap","syncInFlight","syncActionResolvers","onInfoDataRequest","bind","onTemplateSync","onTemplateSyncActionResponse","onPageVariablesReload","init","ws","event","handler","clearAllPendingSyncActions","resolveSyncAction","requestId","approved","clearTimeout","timeoutId","_data","client","send","payload","requestSyncAction","randomUUID","timeoutMs","syncActionTimeoutMs","setTimeout","sync","runTemplateSync","config","clientInjectionPlugin","v7Features","isV710OrHigher","canSync","currentAssets","getAssets","isAxiosError","validation","validateCredentials","isValid","refresh","validationError","cause","httpStatus","newAssets","backupAnalysis","analyzeBackup","saveBackup","onlyTemplateVariablesMismatch","unknownFiles","versionManifestHashMismatches","basename","mm","templateVarMismatches","m","otherManifestMismatches","mixedTemplateAndOthers","pathsForVersionModal","promptReplaceTemplateVariables","templateVariables","getPublicTemplateVariablesHash","actualHash","title","confirmText","cancelText","saveTemplateVariablesFile","cancelled","maxPaths","paths","listed","remainder","fileList","p","suffix","buildManifestMismatch","expected","actual","buildNewAssets","updateResult","updateAssets","backupMeta","getBackupMeta","lastBackupName","backupFilename","lastBackupHash","currentHash","lastBackupDate","backupDate","toISOString","syncedAt","syncError","reloaded","reloadPageVariables","count","skipped","backupFolder","backupNameTemplate","dateFormat","pageName","currentMeta","distZipFolder","distZipFilename","versionFileTemplate","buildInputFolder","nextBuild","maxBackups","metaLoaded","syncOptions","createDefaultZipFileName","date","normalizeRelativeOutputPath","Number","isInteger","Infinity","loadMeta","checkMeta","readMetaFile","writeMetaFile","syncMeta","getLatestSavedBackup","backupPath","stat","backupName","pruneBackups","justSaved","isFinite","template","sampleDate","piece","placeholders","at","sort","a","b","source","position","backupNamePattern","protectedNames","newestFirst","mtimeMs","localeCompare","protectedCount","backup","excess","Math","max","unlink","gray","pathToPosix","filePath","normalizeBackupManifestPath","normalizeExtractedRootDir","extractedDir","currentDir","listFilesRecursive","rootDir","fullPath","buildManifestChecksum","hashesConcatenated","crypto","buildBackupFingerprint","normalizedEntries","versionFileTemplateMatcher","placeholderPattern","segments","lastIndex","match","staticPart","trailingStaticPart","isTemplateVariablesBasename","fileBasename","pickTemplateVariablesFromBackupZip","relativePaths","contentRootDir","find","absolutePath","fileData","manifestHash","resolveBackupAnalysisFromZip","backupFile","tempDir","mkdtemp","tmpdir","buildManifestCandidates","buildManifestPath","buildManifest","buildManifestAbsolutePath","manifestType","versionFile","buildFingerprint","versionManifestPath","requestedVersionFile","exactMatchCandidates","basenameMatchCandidates","resolvedCandidates","compat","versionFileRequired","versionFileMatcher","versionManifestCandidates","normalizedManifestFiles","manifestChecksum","manifestFileActualHashes","versionManifestAbsolutePath","manifest","checksum","expectedHash","normalizedPath","prototype","hasOwnProperty","call","mismatchedManifestPaths","fingerprintFiles","backupFingerprint","mainHash","allFilesInMeta","rm","force","templateVariablesPath","precomputedAnalysis","resolvedAnalysis","resolvedBackupFileHash","lastSavedBackup","lastMainHash","filename","buildNextAssets","buildCommand","cyan","msg","finally","buildInputPath","stack","saveBackupAndBuild","distDir","outDir","writeBuildVersionManifest","packageVersion","packageRepositoryUrl","packageBranchName","pageTemplate","pageTitle","pageVars","pageVarsLoaded","personalAccessToken","templateLoaded","templateLoadedResolve","assetsApi","pageApi","pageTemplateApi","pageVariableApi","baseURL","disableSSLValidation","NODE_TLS_REJECT_UNAUTHORIZED","httpsAgent","https","Agent","keepAlive","rejectUnauthorized","timeout","httpAgent","http","defaults","isTemplateLoaded","clearHeaders","obj","referer","updateHeaders","localTemplateHTML","template_id","enabled","visible_in_homepage","getLivePageVariables","start","applyPageVariables","listPages","getPageVariablesFor","localPageVariables","isTemplateLess","pageIdToFetch","fetchV7Page","fetchLegacyPage","handlePageFetchError","buildPage","miHudLess","result","escapedName","pageVarRegex","dom","getJSDOM","placeholderText","container","scripts","insertBefore","titleEl","serialize","pageInfo","templateInfo","assets","testHeaders","errorInfo","normalizedHeaders","contextPrefix","suggestion","logTokenError","tokenErrorInfo","insertOrder","maxMemory","allocateId","storedEntry","bodyBytes","requestBody","responseBody","requestBodyTruncated","responseBodyTruncated","oldest","shift","old","duration","requestSize","responseSize","search","q","offset","memoryUsage","store","captureLimit","startTime","reqChunks","reqSize","reqTruncated","origReqEmit","emit","buf","isBuffer","resChunks","resSize","resTruncated","origWrite","write","origEnd","captureChunk","ArrayBuffer","isView","byteOffset","getWriteEncoding","detectSource","getHeaders","finalized","requestHeaders","responseHeaders","finalize","registry","isPageNavigation","originalUrl","applyUrlRegExp","base","appBase","isNeedTemplateLoad","requestPath","isApplyRequest","isAppNavigation","normalizedBase","isUnderBase","isHtmlDocumentRequest","authState","getState","isRedirected","loadError","recordLoadError","writableEnded","setRedirected","templateName","baseWithoutTrailingSlash","parsedUrl","findPaths","PATH_TEMPLATE_PREFIX","PATH_TEMPLATE_LOCAL_PREFIX","rewritePath","fileType","sessionUsers","Cookie","createSessionCheck","createProxyMiddleware","selfHandleResponse","pathFilter","proxyIgnore","rP","changeOrigin","autoRewrite","cookieDomainRewrite","secure","proxyReq","removeHeader","sessionUser","others","withoutSessionCookie","requestUrl","u","segmentDecoded","decodeURIComponent","rewriteDataPagePathForV7Proxy","setMaxListeners","once","destroyed","destroy","proxyRes","serverRes","loggedOutUser","getLoggedOutUser","identity","resume","fetchMode","writeHead","savedUser","passSession","leftBehind","otherCookies","withoutSessionSetCookie","streamInterceptor","interceptor","rewrite","statusMessage","pipe","decoder","StringDecoder","pending","waitingForDrain","flush","pause","lastBreak","lastIndexOf","rewriteInterceptor","responseInterceptor","responseBuffer","fileTypeFromBuffer","reqUrl","searchParams","redirectToFunction","storageKey","lastRedirectKey","redirectCount","localStorage","getItem","isNaN","func","debug","removeItem","setItem","reqHost","urlPath","destinationPath","unescapedUrlReplaceRegExp","replacedContent","urlPathReplacer","log","summary","respondToProxyError","devServer","change","hasHeader","sessionAtStart","cleanUrl","generateCacheKey","hasVerifiedSession","cacheItem","header","setResponseHeaders","originalEnd","originalWrite","callback","safeEncoding","finalBuffer","isStillSameIdentity","_setCookie","finalEncoding","predicate","cb","arg","buffers","nextTick","endCallback","unzipSync","brotliDecompressSync","inflateSync","decodeContent","output","gzipSync","brotliCompressSync","deflateSync","encodeContent","existing","activeStore","query","parsedLimit","parseInt","requests","total","memoryUsageFormatted","maxMemoryFormatted","requestContentType","responseContentType","requestBodySize","responseBodySize","getInspectorHtml","deps","getUsers","available","nameError","contextAtStart","patch","newName","edited","_state","exists","schema","invalidIndex","warnings","seenNames","details","live","combined","schemaMap","liveMap","knownNames","default_value","buildPageVariablesExport","local","localError","uid","allPages","currentPage","sameTemplate","currentPageName","sourceValues","importable","sourceValue","issue","tagType","planPageVariablesImport","nextConfig","devTypesDir","existsSync","rmSync","persist"],"mappings":"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"}
package/dist/esm/cli.js CHANGED
@@ -1,2 +1,2 @@
1
- import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,P as l,b as c,n as d,d as p,r as f,V as u,v as g,e as h,f as m,g as b,h as w}from"./auth.provider-CwqTry2g.js";import{r as v,l as y,g as P,s as x,a as S,b as k,c as T,i as L}from"./index-lwWNBUTa.js";import{loadConfigFromFile as E,mergeConfig as D,build as F,resolveConfig as $,optimizeDeps as I,preview as j}from"vite";import{parse as _}from"url";import{e as A,r as N,a as C,z as M,I as R,R as O,b as z,i as H,c as V,d as U,M as W,f as Z,g as B,h as G,j as q,V as J,k as K,u as Y,D as X,C as Q,l as ee,m as te,s as oe}from"./variables-editor-CJjeLu5L.js";import*as ne from"dir-compare";import ie from"diff-match-patch";import{isBinaryFile as se}from"isbinaryfile";import*as re from"os";import*as ae from"crypto";import{WebSocketServer as le,WebSocket as ce}from"ws";import{w as de}from"./version-manifest-BV_AaM6K.js";import"picocolors";import"node:path";import"child_process";import"./helpers.js";import"ejs";import"zlib";import"axios";import"node:http";import"node:https";import"http-proxy-middleware";import"node:string_decoder";import"node:crypto";import"node:fs";import"node:os";import"express";import"process";import"jszip";import"module";import"node:module";function pe(e){return null!=e&&!1!==e}let fe=null;const ue=[{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 ge=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class he{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(re.tmpdir(),ae.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(re.tmpdir(),ae.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await A(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await ne.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(ge.test(e)&&(e=e.replace(ge,"$1$3")),ge.test(t)&&(t=t.replace(ge,"$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 ie,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 se(n)||await se(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 me{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){const{default:e}=await(import("svgtofont"));await e({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class be{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new le({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===ce.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){return(e.url??"").split("?")[0]===l&&(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===ce.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}function we(e){return e instanceof Error?e.stack??e.message:String(e)}function ve({logger:e,knownRejections:t=[],shutdown:o,shutdownTimeoutMs:n=5e3,processRef:i=process}){let s=!1,r=0;const l=async(t,l)=>{if((e=>{r=Math.max(r,e)})(l),s)return void("SIGINT"!==t&&"SIGTERM"!==t||(e.warn(a.yellow(`\n⚠️ Received ${t} again, exiting without waiting for the shutdown`)),i.exit(r)));s=!0,e.info(a.yellow(`\n🛑 Received ${t}, shutting down gracefully...`));const c=setTimeout(()=>{e.error(a.red(`⏰ Shutdown did not finish within ${n} ms, forcing exit`)),i.exit(1)},n);try{await o(),clearTimeout(c),e.info(a.green("✅ Graceful shutdown completed")),i.exit(r)}catch(t){clearTimeout(c),e.error(a.red(`❌ Error during graceful shutdown: ${we(t)}`)),i.exit(1)}},c=()=>{l("SIGINT",0)},d=()=>{l("SIGTERM",0)},p=t=>{e.error(a.red(`❌ Uncaught exception: ${we(t)}`)),l("uncaughtException",1)},f=o=>{const n=t.find(e=>e.matches(o));n?e.info(a.dim(n.message)):e.error(a.red(`❌ Unhandled promise rejection (the server keeps running): ${we(o)}`))};return i.on("SIGINT",c),i.on("SIGTERM",d),i.on("uncaughtException",p),i.on("unhandledRejection",f),()=>{i.off("SIGINT",c),i.off("SIGTERM",d),i.off("uncaughtException",p),i.off("unhandledRejection",f)}}const ye={matches:e=>e instanceof Error&&"Worker creator already registered"===e.message,message:"Next.js kept its Turbopack worker pool from before the restart ('Worker creator already registered')"};const Pe=s("pp-dev");function xe(t,o,n){const s=[...w,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function Se(e){e.watcher&&e.watcher.close()}function ke(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 Te(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 he({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Le=global.__pp_dev_profile_session,Ee=0;const De=o=>{if(Le)return new Promise((n,i)=>{Le.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${Ee++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Le=void 0,n()}})})},Fe=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function $e(e){const t={...e};return delete t["--"],delete t.c,delete t.config,delete t.base,delete t.l,delete t.logLevel,delete t.clearScreen,delete t.d,delete t.debug,delete t.f,delete t.filter,delete t.m,delete t.mode,t}Pe.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"),Pe.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)=>{Fe(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:f,getConfig:g}=await import("./index-lwWNBUTa.js").then(e=>e.h);f();const{createServer:h}=await(import("vite")),m=o.mode||"development",b=e.resolve(process.cwd(),t??".");y(m,b);const w=await E({mode:m,command:"serve"},o.config,t,o.logLevel);let v=await P(void 0,{mode:m,root:b});if(w){const{plugins:e,...t}=w.config;v=D(v,t)}if(i=await h(D(v,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:$e(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const x=global.__pp_dev_start_time??!1,S=x?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-x)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${u}`)} ${S}\n`),i.printUrls();const k=await g(b);if(!1!==k.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+R)}\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(pe).concat(ue);fe?.(),fe=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=()=>{fe===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),fe=null)};fe=f,p.on("close",f)}(i,{print:!0,customShortcuts:[...Le?[{key:"p",description:"start/stop the profiler",async action(e){if(Le)await De(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Le=new e.Session,Le.connect(),Le.post("Profiler.enable",()=>{Le?.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=xe(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}),De(d.info),process.exit(1)}}};ve({logger:d,shutdown:async()=>{s&&(Se(s),s=null),i&&(await i.close(),i=null),De(d.info)}}),await p()}),Pe.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)=>{Fe(i);let s=null,l=null,p=null,f=null,u=!1;const w=new Set,v=r(),P=function(e=["uncaughtException"],t=process){const o=e=>t.listeners(e);let n=null,i=null;return{beforeCreate(){n=new Map(e.map(e=>[e,new Set(o(e))]))},afterCreate(){if(!n)return 0;const s=n,r=new Map(e.map(e=>[e,o(e).filter(t=>!s.get(e).has(t))]));let a=0;if(i)for(const[e,o]of i){const n=new Set(r.get(e).map(e=>e.toString()));for(const i of o)n.has(i.toString())&&(t.off(e,i),a+=1)}return i=r,n=null,a}}}(),S=async()=>{s&&"function"==typeof s.close&&await s.close(),s=null},k=async()=>{const e=l;if(e){for(const e of w)e.destroy();w.clear(),await new Promise(t=>{e.close(()=>t())}),l===e&&(l=null)}},E=async()=>{if(!u){u=!0;try{const{next:D,constants:F}=await x(),{PHASE_DEVELOPMENT_SERVER:$}=F;p&&(await p.close(),p=null),l&&(v.info(a.yellow("🛑 Stopping existing Next.js server...")),await k()),await S();const{clearConfigCache:I}=await import("./index-lwWNBUTa.js").then(e=>e.h);I();const{join:j,basename:A}=await(import("path")),{createServer:N}=await(import("http")),C=await(import("next/dist/server/config.js")),M=C.default.default||C["module.exports"].default||C.default,ne=$e(i),ie=n?j(process.cwd(),n):process.cwd();y(i.mode||"development",ie),v.info(ie);const se=await M($,ie);let re=se?.ppDev||{};if(0===Object.keys(re).length)try{const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h),t=await e(ie);Object.keys(t).length>0?(re=t,v.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):v.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){v.info(a.yellow("⚠️ Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else v.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));let ae=null;try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);ae=e(ie).name}catch{ae=A(ie)}g(re,ae??"");const le=d(re,ae??""),ce=le.backendBaseURL??"http://localhost:8080",de=le.templateLess,pe=le.v7Features,fe=le.disableSSLValidation,ue=le.enableProxyCache,ge=le.proxyCacheTTL,he=le.personalAccessToken,me=le.miHudLess,we=le.inspectorEnabled,ve=le.inspectorMaxMemory,ye=le.inspectorCaptureLimit,Pe=le.appId??(process.env.MI_APP_ID&&parseInt(process.env.MI_APP_ID,10)||void 0)??(process.env.MI_PORTAL_PAGE_ID&&parseInt(process.env.MI_PORTAL_PAGE_ID,10)||void 0)??1,Se=se?.basePath;let Te="";Se?Te=Se:(Te=de?h:pe?m:b,Te+=`/${ae}`);const Le=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Ee=async e=>{delete process.env.TURBOPACK,await S();const t={dev:!0,customServer:!0,hostname:ne.host||"localhost",port:ne.port,dir:ie,conf:{...se,basePath:Te,assetPrefix:Te}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),P.beforeCreate(),s=D(t),await s.prepare(),P.afterCreate()};if(Le.webpack)await Ee({webpack:!0});else if(Le.turbopack)try{await Ee({turbopack:!0})}catch(e){if(!ke(e))throw e;v.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Ee({webpack:!0})}else try{await Ee({})}catch(e){if(!ke(e))throw e;v.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Ee({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(Te.endsWith("/")||(Te+="/"),"/"===Te)throw new Error('basePath cannot be equal to "/" or equal to empty string');v.info(a.green("✅ Next.js app prepared successfully")),v.info(a.blue(`🔧 pp-dev plugin configured for template: ${ae}`)),v.info(a.blue(`🔧 Base path configured: ${Te}`)),ce&&(v.info(a.blue(`🌐 Backend URL: ${ce}`)),v.info(a.blue(`🆔 Custom App ID: ${Pe}`)));const De=s.getRequestHandler(),Fe="number"==typeof ne.port?ne.port:3e3,Ie="string"==typeof ne.host?ne.host||"0.0.0.0":"localhost";l=N(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=_(o,!0);if(_e.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(Ae.length>0){let l=0;const c=()=>{if(l>=Ae.length)return void s();const o=Ae[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=_e.length)return void s();const o=_e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(Te))i=_(o,!0);else{if(n===Te.replace(/\/$/,"")){const e=o.replace(n,Te);return t.writeHead(302,{Location:e}),void t.end()}if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:Te}),void t.end()}await De(e,t,i)}s()}catch(d){v.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let je=null,_e=[],Ae=[];if(!1!==we){const e=new O(ve);z(H,e,ye);const t=V(e,ye);_e.push(t)}if(ce){const n=new URL(ce).host,i=U();Ae.unshift(i),_e.unshift(i),ce.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const d={headers:{host:n,referer:ce,origin:ce.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:Pe,templateLess:de,disableSSLValidation:fe,v7Features:pe,personalAccessToken:he??process.env.MI_ACCESS_TOKEN};je=new W(ce,d);const f=Z(Te,ae??void 0),u=(e,t,o)=>{f(e,t,o)};Ae.push(u),_e.push(u);const g=T(Te);if(Ae.push(g),_e.push(g),ue){let e=+ge;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=B({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};_e.push(n),v.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const h=new RegExp(`^((${r=Te,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=G(h,je,Object.assign({base:Te},d,{miHudLess:me})),b=(e,t,o)=>{m(e,t,o)};_e.push(b);const w=Te.endsWith("/")?Te.substring(0,Te.length-1):Te,y={middlewares:{use:e=>e},config:{logger:console}},P=q({devServer:y,baseURL:ce,proxyIgnore:["/@vite","/@metricinsights","/@",w,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:fe,miAPI:je,templateName:ae??void 0}),x=(e,t,o)=>{P(e,t,o)};_e.push(x);const S=H,k=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(R)||e.url?.startsWith(J)){return void S(e,t,()=>{})}o()};Ae.push(k),_e.push(k);const E=K(e=>{const t=e.split("?")[0];return t.startsWith(Te)&&!t.includes("/_next/")},(e,t)=>{const o=je.buildPage(e,me),i=L(o,Te,{backendBaseURL:ce,templateLess:de,appId:Pe,devPanelPosition:le.devPanelPosition,devPanelHidden:le.devPanelHidden,devPanelAutoHide:le.devPanelAutoHide});return Buffer.from(Y(n,t.headers.host??"",i))}),D=(e,t,o)=>{E(e,t,o)};_e.push(D),p=new be;let $=se?.distDir;try{process.env[c]="1";const e=await M(F.PHASE_PRODUCTION_BUILD,ie);$=e?.distDir??$}catch{}const I=($??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),j=I&&".next"!==I?I:"out";let _,N="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(ie,"package.json"),"utf-8"));N="string"==typeof o.version?o.version:N,_="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const C=new X(ae??A(ie),{root:ie,backupFolder:e.resolve(ie,le.syncBackupsDir),maxBackups:le.syncMaxBackups,nextBuild:{projectRoot:ie,distDir:j,packageVersion:N,packageRepositoryUrl:_}}),O={ws:p.ws,config:{clientInjectionPlugin:{v7Features:pe}}};new Q(O,{distService:C,miAPI:je}),ee(H,{distService:C,miAPI:je}),te(H,{miAPI:je}),oe({persist:le.persistUsers,miAPI:je,projectRoot:ie,miUrl:ce});const z="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{p?.handleUpgrade(e,t,o)||(z?z(e,t,o):t.destroy())}),v.info(a.blue(`🔧 ${_e.length} pp-dev middlewares initialized`)),v.info(a.blue(`🔧 ${Ae.length} essential middlewares for internal routes`)),v.info(a.blue(`🔧 MiAPI initialized for backend: ${ce}`)),v.info(a.blue(`🔧 Custom App ID: ${Pe}`))}l.listen(Fe,Ie,()=>{v.info(a.green(`✅ pp-dev Next.js server running at http://${Ie}:${Fe}`)),v.info(a.blue(`📱 Next.js app accessible at http://${Ie}:${Fe}${Te}`)),!1!==we&&v.info(a.cyan(`🔍 Request Inspector: http://${Ie}:${Fe}${R}`)),v.info(a.blue("🔧 Base path handling active")),f||(f=xe(ie,E,v.info),v.info(a.blue("🔧 Config file watcher started"))),l.on("connection",e=>{w.add(e),e.on("close",()=>w.delete(e))})}),u=!1}catch(e){u=!1,v.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(v.error(a.red("❌ Next.js Peer Dependency Error:")),v.error(a.red(e.message)),v.error(a.yellow("\n💡 To fix this issue:")),v.error(a.blue(" 1. Install Next.js in your project:")),v.error(a.white(" npm install next@^16")),v.error(a.blue(" 2. Or use yarn:")),v.error(a.white(" yarn add next@^16")),v.error(a.blue(" 3. Or use pnpm:")),v.error(a.white(" pnpm add next@^16")),v.error(a.yellow("\n📖 For more information, see:")),v.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}};ve({logger:v,knownRejections:[ye],shutdown:async()=>{f&&(Se(f),f=null),p&&(await p.close(),p=null),await k(),await S()}}),await E()}),Pe.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)=>{Fe(o);const n=$e(o),i=v(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");y(s,r);const a=await E({mode:s,command:"build"},o.config,t,o.logLevel);let l=await P(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=D(l,t)}const c=D(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await F(c),n.changelog){const i=t||process.cwd(),s=c.build?.outDir||"dist";let r="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?r=s:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(r=c.ppDevConfig.distZip.outDir)),await Te({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{De(e=>r(o.logLevel).info(e))}}),Pe.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)=>{Fe(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=v(n);process.env[c]="1";try{y(n.mode||"production",s);const{constants:o}=await x(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,u=await c(o.PHASE_PRODUCTION_BUILD,s);let g,h=u?.ppDev||{};if(0===Object.keys(h).length){const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);h=await e(s)}try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);g=e(s).name}catch{g=e.basename(s)}const m=d(h,g),b=S(m.distZip,l,p(g)),w=k(m.versionPlugin,l),v=N(s,u);v&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,v)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await C(s);const P="string"==typeof u?.distDir&&u.distDir?u.distDir:".next",T=".next"===P?"out":P,L=e.resolve(s,T);if(!t.existsSync(L)||!t.statSync(L).isDirectory())throw new Error(`Next.js build output directory not found: ${L}. "next-build" requires "output: 'export'" in next.config (static export).`);const E=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==w&&!1!==w.enabled&&(de({outDir:L,packageVersion:"string"==typeof E.version?E.version:"0.0.0",versionFileTemplate:w.versionFileTemplate,packageRepositoryUrl:"string"==typeof E.repository?E.repository:E.repository?.url,enabled:w.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,L)}`))),!1!==b){const o=e.resolve(s,b.outDir),n=b.inDir?e.resolve(L,b.inDir):L,r=f(o,b.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await M(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==b?b.outDir:T;await Te({changelog:n.changelog,executionRoot:s,newAssetsPath:L,backupsDirPath:e.resolve(s,m.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{De(e=>r(n.logLevel).info(e))}}),Pe.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)=>{Fe(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 he({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),Pe.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)=>{Fe(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 me({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)}`)}),Pe.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{Fe(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}const a=await $(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await I(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),Pe.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)=>{Fe(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}(await j(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{De(e=>r(o.logLevel).info(e))}}),Pe.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-BLw2zDKz.js")),h=n.format??"ts",m=!1!==n.backup,b=process.cwd(),w=u(b,o);w||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=w;i.info(a.blue(`Found config: ${e.relative(b,v)}`));const{getPkg:x}=await import("./index-lwWNBUTa.js").then(e=>e.h),S=x();let k,T={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:b,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(b,s)).toString()));T=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(b,v)).toString()));T=o.default?.default??o.default??o}else P?T=g(v):v.endsWith(".json")&&(T=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}T&&"object"==typeof T||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(T)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(T)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),k=p(T)):s(T)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),k=d(T,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const L=f(k,h),E=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(b,E)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(b,o)}`))}t.writeFileSync(E,L,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(b,E)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==E&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),Pe.help(),Pe.version(u),Pe.parse();export{De as stopProfiler};
1
+ import*as e from"path";import*as t from"fs";import{EventEmitter as o}from"node:events";import{performance as n}from"node:perf_hooks";import{watch as i}from"chokidar";import{cac as s}from"cac";import{c as r,a,P as l,b as c,n as d,d as p,r as f,V as u,v as g,e as h,f as m,g as b,h as w}from"./auth.provider-CwqTry2g.js";import{r as v,l as y,g as P,s as x,a as S,b as k,c as T,i as L}from"./index-lwWNBUTa.js";import{loadConfigFromFile as E,mergeConfig as D,build as F,resolveConfig as $,optimizeDeps as I,preview as j}from"vite";import{parse as _}from"url";import{e as A,c as N,r as C,a as M,z as R,I as O,R as z,b as H,i as V,d as U,f as W,M as Z,g as B,h as G,j as q,k as J,V as K,l as Y,u as X,D as Q,C as ee,m as te,n as oe,s as ne}from"./variables-editor-jW7PjpIK.js";import*as ie from"dir-compare";import se from"diff-match-patch";import{isBinaryFile as re}from"isbinaryfile";import*as ae from"os";import*as le from"crypto";import{WebSocketServer as ce,WebSocket as de}from"ws";import{w as pe}from"./version-manifest-BV_AaM6K.js";import"picocolors";import"node:path";import"child_process";import"./helpers.js";import"ejs";import"zlib";import"axios";import"node:http";import"node:https";import"http-proxy-middleware";import"node:string_decoder";import"node:crypto";import"node:fs";import"node:os";import"express";import"process";import"jszip";import"module";import"node:module";function fe(e){return null!=e&&!1!==e}let ue=null;const ge=[{key:"r",description:"restart the server",async action(e){await e.restart()}},{key:"u",description:"show server url",action(e){e.config.logger.info(""),e.printUrls()}},{key:"o",description:"open in browser",action(e){e.openBrowser()}},{key:"c",description:"clear console",action(e){e.config.logger.clearScreen("error")}},{key:"q",description:"quit",async action(e){await e.close().finally(()=>process.exit())}},{key:"C",description:"clear proxy cache",action(e){e.cache&&(e.cache.clear(),e.config.logger.info("Proxy cache cleared"))}}];const he=/(.+)(-[a-f0-9]{6,20})(\.[a-z0-9]+)$/i;class me{oldAssetsPath;newAssetsPath;destinationPath;changelogFilename;changelogTemplate='<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8" />\n <title>Changelog Diff</title>\n <style>\n tr,\n td {\n padding: 0;\n }\n .diff-file {\n margin-top: 20px;\n border: 1px solid #e1e4e8;\n border-radius: 6px;\n }\n .diff-file-title {\n padding: 10px 20px;\n background-color: #f6f8fa;\n border-bottom: 1px solid #e1e4e8;\n border-radius: 6px 6px 0 0;\n font-weight: bold;\n }\n .diff-file-title .renamed {\n font-weight: normal;\n }\n .diff-file-title .renamed .from {\n color: #cb2431;\n }\n .diff-file-title .renamed .to {\n color: #22863a;\n }\n .diff-file-title .added {\n color: #22863a;\n }\n .diff-file-title .deleted {\n color: #cb2431;\n }\n .diff-file-content {\n }\n .diff-table {\n tab-size: 8;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n }\n .blob-num {\n position: relative;\n color: #1f2328;\n width: 1%;\n min-width: 50px;\n padding: 0 10px;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n line-height: 20px;\n text-align: right;\n white-space: nowrap;\n vertical-align: top;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n }\n .blob-num.addition {\n background-color: #ccffd8;\n border-color: #1f883e;\n }\n .blob-num.deletion {\n background-color: #ffd7d5;\n border-color: #cf222e;\n }\n .blob-num::before {\n content: attr(data-line-number);\n }\n .blob-code {\n position: relative;\n padding: 0 10px 0 22px;\n vertical-align: top;\n color: #1f2329;\n }\n .blob-code.code-addition {\n background-color: #e6ffec;\n }\n .blob-code.code-deletion {\n background-color: #ffebe9;\n }\n .blob-code.skip,\n .blob-code.message {\n text-align: center;\n }\n .blob-code.skip .blob-code-inner,\n .blob-code.message .blob-code-inner {\n font-weight: bold;\n color: #6a737d;\n padding: 10px 0;\n }\n .blob-code-inner {\n display: table-cell;\n overflow: visible;\n font-family:\n ui-monospace,\n SFMono-Regular,\n SF Mono,\n Menlo,\n Consolas,\n Liberation Mono,\n monospace;\n font-size: 12px;\n word-wrap: anywhere;\n white-space: pre-wrap;\n }\n .blob-code-inner::before {\n content: attr(data-code-prefix);\n position: absolute;\n top: 1px;\n left: 8px;\n padding-right: 8px;\n }\n </style>\n </head>\n <body>\n <h1>Changelog Diff</h1>\n\n %FILES%\n </body>\n </html>';diffFileTemplateHandler;diffLineTemplateHandler;contextLines=3;logger;constructor(t){const{oldAssetsPath:o,newAssetsPath:n,destinationPath:i,changelogTemplate:s,diffFileTemplateHandler:l,diffLineTemplateHandler:c,changelogFilename:d,contextLines:p}=t;if(this.logger=r(),!o||!n||!i)throw new Error("Previous assets path, current assets path and destination path are required");if(o===n)throw new Error("Previous and current assets paths must be different");if(!this.isExists(o))throw new Error(`Previous assets path ${o} does not exist`);if(!this.isExists(n))throw new Error(`Current assets path ${n} does not exist`);if(this.isZipFile(o)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(o).digest("hex"));this.oldAssetsPath=this.unzipFile(o,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);return e})}else{if(!this.isFolder(o))throw new Error(`Invalid previous assets path ${o}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(o);if(this.isEmptyFolder(e))throw new Error(`Previous assets path ${e} is empty`);this.oldAssetsPath=Promise.resolve(e)}}if(this.isZipFile(n)){const t=e.resolve(ae.tmpdir(),le.createHash("md5").update(n).digest("hex"));this.newAssetsPath=this.unzipFile(n,t).then(()=>this.normalizeAssetFolderPath(t)).then(e=>{if(this.isEmptyFolder(e))throw new Error(`Current assets path ${e} is empty`);return e})}else{if(!this.isFolder(n))throw new Error(`Invalid current assets path ${n}. It must be a folder or a zip file`);{const e=this.normalizeAssetFolderPath(n);if(this.isEmptyFolder(e))throw new Error(`Current assets path ${n} is empty`);this.newAssetsPath=Promise.resolve(e)}}this.destinationPath=i,this.mkdirpSync(this.destinationPath),this.changelogFilename=d||"CHANGELOG.html",s&&(this.templateIsValid(s)?this.changelogTemplate=s:this.logger.warn(a.yellow("Invalid changelog template, using default"))),"function"==typeof l&&(this.diffFileTemplateHandler=l),"function"==typeof c&&(this.diffLineTemplateHandler=c),p&&(this.contextLines=p)}templateIsValid(e){return e.includes("%FILES%")}isExists(e){return t.existsSync(e)}isZipFile(e){return e.endsWith(".zip")}isFolder(e){return t.lstatSync(e).isDirectory()}isEmptyFolder(e){return 0===t.readdirSync(e,{withFileTypes:!0}).length}mkdirpSync(e){t.existsSync(e)||t.mkdirSync(e,{recursive:!0})}async unzipFile(e,o){t.rmSync(o,{force:!0,recursive:!0}),await A(e,o)}normalizeAssetFolderPath(o){const n=t.readdirSync(o);return 1===n.length&&t.lstatSync(e.join(o,n[0])).isDirectory()?this.normalizeAssetFolderPath(e.join(o,n[0])):o}pathToPosix(e){return e.replace(/\\/g,"/")}diffTableTemplate(e){return`<table class="diff-table">\n <tbody>\n ${e}\n </tbody>\n </table>`}getDiffTableHTML(e){const t=e.filter((e,t,o)=>0!==e.lineType||(t>=0&&t<this.contextLines||t>o.length-(this.contextLines+1)&&t<=o.length-1||o.slice(t-this.contextLines,t+this.contextLines+1).some(e=>0!==e.lineType))).map((e,t,o)=>{if(t>0){const n=o[t-1];if(e.lineNumber-n.lineNumber>1)return[{lineNumber:-1,lineContent:"",lineType:0},e]}return[e]}).flat().map(e=>this.diffLineHTML(e)).join("");return this.diffTableTemplate(t)}diffLineMessageTemplate(e){return`<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code message">\n <span class="blob-code-inner">${e}</span>\n </td>\n </tr>`}diffLineSkipTemplate(){return'<tr>\n <td class="blob-num"></td>\n <td class="blob-num"></td>\n <td class="blob-code skip">\n <span class="blob-code-inner">Skip</span>\n </td>\n </tr>'}diffLineTemplate(e){const{lineNumber:t,lineContent:o,lineType:n}=e,i=1===n?"addition":-1===n?"deletion":"";return`<tr>\n <td\n class="blob-num ${i}${"addition"===i?" empty":""}"\n ${"addition"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td\n class="blob-num ${i}${"deletion"===i?" empty":""}"\n ${"deletion"!==i?` data-line-number="${t}"`:""}\n ></td>\n <td class="blob-code ${1===n?"code-addition":-1===n?"code-deletion":""}">\n <span class="blob-code-inner" data-code-prefix="${1===n?"+":-1===n?"-":" "}">${s=o??"",s.replace(/[\u00A0-\u9999<>&]/g,e=>"&#"+e.charCodeAt(0)+";")}</span>\n </td>\n </tr>`;var s}diffLineHTML(e){if(this.diffLineTemplateHandler)return this.diffLineTemplateHandler(e);const{lineNumber:t}=e;return-1===t?this.diffLineSkipTemplate():this.diffLineTemplate(e)}diffFileTemplate(e,t){return this.diffFileTemplateHandler?this.diffFileTemplateHandler(e,t):`<div class="diff-file">\n <div class="diff-file-title">${e}</div>\n <div class="diff-file-content">${t}</div>\n </div>`}async generateAssetFoldersDiff(){this.logger.info(a.blue(`Comparing asset folders ${await this.oldAssetsPath} and ${await this.newAssetsPath}`));const e=await ie.compare(await this.oldAssetsPath,await this.newAssetsPath,{compareContent:!0,skipSymlinks:!0,compareSize:!0,compareDate:!1,compareNameHandler:(e,t)=>(he.test(e)&&(e=e.replace(he,"$1$3")),he.test(t)&&(t=t.replace(he,"$1$3")),0===e.localeCompare(t)?0:e.localeCompare(t)>0?1:-1)});return e.diffSet?.filter(e=>"equal"!==e.state||e.name1!==e.name2)||[]}async generateAssetFilesDiff(e,t){const o=new se,n=o.diff_linesToChars_(e,t),i=o.diff_main(n.chars1,n.chars2,!1);o.diff_charsToLines_(i,n.lineArray);let s=0;return i.map(e=>{const[t,o]=e,n=o.endsWith("\n")?o.split("\n").length-1:o.split("\n").length,i=o.split("\n").map((e,o)=>({lineContent:e,lineNumber:s+o+1,lineType:t})).slice(0,n);return-1!==t&&(s+=n),i}).flat()}async generateFilesDiff(o){if("equal"===o.state){const t=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),n=this.pathToPosix(e.join(".",o.relativePath,o.name2??""));return this.diffFileTemplate(`<span class="renamed"\n >Renamed <span class="from">${t}</span> -> <span class="to">${n}</span></span\n >`,this.diffTableTemplate(this.diffLineMessageTemplate("No changes")))}const n=o.path1&&o.name1?e.join(o.path1,o.name1):null,i=o.path2&&o.name2?e.join(o.path2,o.name2):null,s=this.pathToPosix(e.join(".",o.relativePath,(o.name1||o.name2)??""));if("left"===o.state&&n)return this.diffFileTemplate(`<span class="removed">Removed ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File removed")));if("right"===o.state&&i)return this.diffFileTemplate(`<span class="added">Added ${s}</span>`,this.diffTableTemplate(this.diffLineMessageTemplate("File added")));if("distinct"===o.state&&n&&i){const r=this.pathToPosix(e.join(".",o.relativePath,o.name1??"")),a=this.pathToPosix(e.join(".",o.relativePath,o.name2??"")),l=o.name1!==o.name2?`<span class="renamed"\n >Renamed <span class="from">${r}</span> -> <span class="to">${a}</span></span\n >`:s;return this.diffFileTemplate(l,await re(n)||await re(i)?this.diffTableTemplate(this.diffLineMessageTemplate("Binary file")):this.getDiffTableHTML(await this.generateAssetFilesDiff(t.readFileSync(n,"utf-8"),t.readFileSync(i,"utf-8"))))}return""}async generateChangelog(){this.logger.info(a.green("Generating changelog"));const o=await this.generateAssetFoldersDiff(),n=(await Promise.all(o.map(e=>this.generateFilesDiff(e)))).join("");this.logger.info(a.green("Writing changelog file"));const i=this.changelogTemplate.split("%FILES%");i.splice(1,0,n);const s=i.join("");t.writeFileSync(e.join(this.destinationPath,this.changelogFilename),s),this.logger.info(a.green(`Changelog file written to ${e.join(this.destinationPath,this.changelogFilename)}`))}}class be{sourceDir;outputDir;fontName;constructor(e){this.sourceDir=e.sourceDir,this.outputDir=e.outputDir,this.fontName=e.fontName}async generate(){const{default:e}=await(import("svgtofont"));await e({src:this.sourceDir,dist:this.outputDir,fontName:this.fontName,css:!0,typescript:!0,startUnicode:59905,svgicons2svgfont:{fontHeight:1024}})}}class we{wss;eventListeners=new Map;lifecycleListeners=new Map;clients=new Map;ws;constructor(){this.wss=new ce({noServer:!0}),this.wss.on("connection",e=>this.onConnection(e)),this.wss.on("error",e=>this.fireLifecycle("error",e)),this.ws={on:(e,t)=>{"close"!==e&&"error"!==e?this.getEventSet(e).add(t):this.getLifecycleSet(e).add(t)},off:(e,t)=>{this.eventListeners.get(e)?.delete(t),"close"!==e&&"error"!==e||this.lifecycleListeners.get(e)?.delete(t)},send:(e,t)=>{if("string"==typeof e)for(const o of this.clients.keys())this.sendToSocket(o,e,t);else{const t=JSON.stringify(e);for(const e of this.clients.keys())e.readyState===de.OPEN&&e.send(t)}}}}handleUpgrade(e,t,o){if((e.url??"").split("?")[0]!==l)return!1;return N(e)?(t.once("error",()=>t.destroy()),t.end("HTTP/1.1 403 Forbidden\r\nConnection: close\r\nContent-Length: 0\r\n\r\n",()=>t.destroy()),!0):(this.wss.handleUpgrade(e,t,o,t=>{this.wss.emit("connection",t,e)}),!0)}async close(){this.fireLifecycle("close");for(const e of this.clients.keys())e.terminate();this.clients.clear(),await new Promise(e=>this.wss.close(()=>e()))}onConnection(e){const t={send:(t,o)=>this.sendToSocket(e,t,o)};this.clients.set(e,t),e.on("message",e=>this.onMessage(t,e)),e.on("close",()=>this.clients.delete(e)),e.on("error",()=>{})}onMessage(e,t){let o;try{o=JSON.parse(t.toString())}catch{return}if(!o||"custom"!==o.type||"string"!=typeof o.event)return;const n=this.eventListeners.get(o.event);if(n)for(const t of n)try{t(o.data,e)}catch(e){r().error(`ws handler for "${o.event}" failed`,{error:e instanceof Error?e:new Error(String(e))})}}sendToSocket(e,t,o){e.readyState===de.OPEN&&e.send(JSON.stringify({type:"custom",event:t,data:o}))}fireLifecycle(e,t){for(const o of this.lifecycleListeners.get(e)??[])try{o(t)}catch{}}getEventSet(e){let t=this.eventListeners.get(e);return t||(t=new Set,this.eventListeners.set(e,t)),t}getLifecycleSet(e){let t=this.lifecycleListeners.get(e);return t||(t=new Set,this.lifecycleListeners.set(e,t)),t}}function ve(e){return e instanceof Error?e.stack??e.message:String(e)}function ye({logger:e,knownRejections:t=[],shutdown:o,shutdownTimeoutMs:n=5e3,processRef:i=process}){let s=!1,r=0;const l=async(t,l)=>{if((e=>{r=Math.max(r,e)})(l),s)return void("SIGINT"!==t&&"SIGTERM"!==t||(e.warn(a.yellow(`\n⚠️ Received ${t} again, exiting without waiting for the shutdown`)),i.exit(r)));s=!0,e.info(a.yellow(`\n🛑 Received ${t}, shutting down gracefully...`));const c=setTimeout(()=>{e.error(a.red(`⏰ Shutdown did not finish within ${n} ms, forcing exit`)),i.exit(1)},n);try{await o(),clearTimeout(c),e.info(a.green("✅ Graceful shutdown completed")),i.exit(r)}catch(t){clearTimeout(c),e.error(a.red(`❌ Error during graceful shutdown: ${ve(t)}`)),i.exit(1)}},c=()=>{l("SIGINT",0)},d=()=>{l("SIGTERM",0)},p=t=>{e.error(a.red(`❌ Uncaught exception: ${ve(t)}`)),l("uncaughtException",1)},f=o=>{const n=t.find(e=>e.matches(o));n?e.info(a.dim(n.message)):e.error(a.red(`❌ Unhandled promise rejection (the server keeps running): ${ve(o)}`))};return i.on("SIGINT",c),i.on("SIGTERM",d),i.on("uncaughtException",p),i.on("unhandledRejection",f),()=>{i.off("SIGINT",c),i.off("SIGTERM",d),i.off("uncaughtException",p),i.off("unhandledRejection",f)}}const Pe={matches:e=>e instanceof Error&&"Worker creator already registered"===e.message,message:"Next.js kept its Turbopack worker pool from before the restart ('Worker creator already registered')"};const xe=s("pp-dev");function Se(t,o,n){const s=[...w,"package.json","next.config.js","next.config.mjs","next.config.ts","vite.config.js","vite.config.mjs","vite.config.ts",".env",".env.local",".env.development",".env.development.local"].map(o=>e.join(t,o)),r=i(s,{ignored:t=>{const o=e.basename(t);return/(^|[\/\\])\../.test(t)&&!o.startsWith(".env")&&!o.startsWith(".pp-dev")&&!o.startsWith(".pp-watch")},persistent:!0,ignoreInitial:!0,followSymlinks:!1});let l=null;return r.on("change",i=>{n(a.blue(`🔧 Config file changed: ${e.relative(t,i)}`)),l&&clearTimeout(l),l=setTimeout(async()=>{try{n(a.yellow("🔄 Restarting dev server due to config change...")),await o()}catch(e){n(a.red(`❌ Failed to restart dev server: ${e?.message}. Stack: ${e?.stack}`))}},500)}),r.on("error",e=>{n(a.red(`❌ Config watcher error: ${e}`))}),{watcher:r,restartCallback:o,logger:n}}function ke(e){e.watcher&&e.watcher.close()}function Te(e){if(!e||"object"!=typeof e||!("message"in e))return!1;const t=String(e.message);return/Turbopack is not supported/i.test(t)||/native bindings are not available/i.test(t)||/Only WebAssembly \(WASM\) bindings were loaded/i.test(t)}async function Le(o){const{changelog:n,executionRoot:i,newAssetsPath:s,backupsDirPath:l,changelogDestinationPath:c,logLevel:d}=o;let p;if("string"==typeof n)p=e.resolve(i,n);else{if(!t.existsSync(l))return void r(d).warn(a.yellow("backups directory not found, skipping changelog generation"));const o=t.readdirSync(l,{withFileTypes:!0});if(!o.length)return void r(d).warn(a.yellow("no backups found, skipping changelog generation"));const n=o.filter(e=>e.isFile()&&e.name.endsWith(".zip"));if(!n.length)return void r(d).warn(a.yellow("no ZIP backups found, skipping changelog generation"));const i=n.reduce((o,n)=>t.statSync(e.resolve(l,o.name)).mtimeMs>t.statSync(e.resolve(l,n.name)).mtimeMs?o:n).name;p=e.resolve(l,i)}const f=new me({oldAssetsPath:p,newAssetsPath:s,destinationPath:c});await f.generateChangelog()}let Ee=global.__pp_dev_profile_session,De=0;const Fe=o=>{if(Ee)return new Promise((n,i)=>{Ee.post("Profiler.stop",(s,{profile:r})=>{if(s)i(s);else{const i=e.resolve(`./pp-dev-profile-${De++}.cpuprofile`);t.writeFileSync(i,JSON.stringify(r)),o(a.yellow(`CPU profile written to ${a.white(a.dim(i))}`)),Ee=void 0,n()}})})},$e=e=>{for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o[o.length-1])};function Ie(e){const t={...e};return delete t["--"],delete t.c,delete t.config,delete t.base,delete t.l,delete t.logLevel,delete t.clearScreen,delete t.d,delete t.debug,delete t.f,delete t.filter,delete t.m,delete t.mode,t}xe.option("-c, --config <file>","[string] use specified config file").option("--base <path>","[string] public base path (default: /)").option("-l, --logLevel <level>","[string] info | warn | error | silent").option("--clearScreen","[boolean] allow/disable clear screen when logging").option("-d, --debug [feat]","[string | boolean] show debug logs").option("-f, --filter <filter>","[string] filter debug logs").option("-m, --mode <mode>","[string] set env mode"),xe.command("[root]","start dev server").alias("serve").alias("dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{$e(o);let i=null,s=null,l=!1;const c=t?e.resolve(process.cwd(),t):process.cwd(),d=r(o.logLevel),p=async()=>{if(!l){l=!0;try{i&&(d.info(a.yellow("🛑 Stopping existing dev server...")),await i.close(),i=null);const{clearConfigCache:f,getConfig:g}=await import("./index-lwWNBUTa.js").then(e=>e.h);f();const{createServer:h}=await(import("vite")),m=o.mode||"development",b=e.resolve(process.cwd(),t??".");y(m,b);const w=await E({mode:m,command:"serve"},o.config,t,o.logLevel);let v=await P(void 0,{mode:m,root:b});if(w){const{plugins:e,...t}=w.config;v=D(v,t)}if(i=await h(D(v,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},server:Ie(o),customLogger:d},!0)),!i.config.base||"/"===i.config.base)throw new Error('base cannot be equal to "/" or empty string');if(!i.httpServer)throw new Error("HTTP server not available");await i.listen();const x=global.__pp_dev_start_time??!1,S=x?a.dim(`ready in ${a.reset(a.bold(Math.ceil(n.now()-x)))} ms`):"";d.info(`\n ${a.green(`${a.bold("PP-DEV")} v${u}`)} ${S}\n`),i.printUrls();const k=await g(b);if(!1!==k.inspector?.enabled){const e=i.resolvedUrls?.local[0],t=e?new URL(e).origin:`http://localhost:${i.config.server.port??5173}`;d.info(`\n ${a.cyan("🔍 Request Inspector")} ${a.dim(t+O)}\n`)}!function(e,t){if(!e.httpServer||!process.stdin.isTTY||process.env.CI)return;e._shortcutsOptions=t;const o=r();t.print&&o.info(a.dim(a.green(" ➜"))+a.dim(" press ")+a.bold("h")+a.dim(" to show help"));const n=(t.customShortcuts??[]).filter(fe).concat(ge);ue?.(),ue=null;let i=!1;const s=process.stdin.isPaused(),l=process.stdin,c=Boolean(l.isRaw),d=async t=>{if(""===t)return void process.kill(process.pid,"SIGINT");if(""===t)return void await e.close().finally(()=>process.exit(0));if(i)return;"h"===t&&o.info(["",a.bold(" Shortcuts"),...n.map(e=>a.dim(" press ")+a.bold(e.key)+a.dim(` to ${e.description}`))].join("\n"));const s=n.find(e=>e.key===t);s&&(i=!0,await s.action(e),i=!1)};process.stdin.setRawMode(!0),process.stdin.on("data",d).setEncoding("utf8").resume();const p=e.httpServer,f=()=>{ue===f&&(p.removeListener("close",f),process.stdin.off("data",d),c||process.stdin.setRawMode(!1),s&&process.stdin.pause(),ue=null)};ue=f,p.on("close",f)}(i,{print:!0,customShortcuts:[...Ee?[{key:"p",description:"start/stop the profiler",async action(e){if(Ee)await Fe(d.info);else{const e=await import("node:inspector").then(e=>e.default);await new Promise(t=>{Ee=new e.Session,Ee.connect(),Ee.post("Profiler.enable",()=>{Ee?.post("Profiler.start",()=>{d.info("Profiler started"),t()})})})}}}]:[],{key:"l",description:"proxy re-login",action(e){e.ws.send({type:"custom",event:"redirect",data:{url:`/auth/index/logout?proxyRedirect=${encodeURIComponent("/")}`}})}}]}),s||(s=Se(c,p,d.info),d.info(a.blue("🔧 Config file watcher started"))),l=!1}catch(e){l=!1,d.error(a.red(`error when starting dev server:\n${e.stack}`),{error:e}),Fe(d.info),process.exit(1)}}};ye({logger:d,shutdown:async()=>{s&&(ke(s),s=null),i&&(await i.close(),i=null),Fe(d.info)}}),await p()}),xe.command("next [root]","start Next.js development server with pp-dev integration").alias("next-serve").alias("next-dev").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port",{default:3e3}).option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--cors","[boolean] enable CORS").option("--strictPort","[boolean] exit if specified port is already in use").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").option("--webpack","[boolean] use Webpack for Next dev (use when Turbopack/native SWC is unavailable)").option("--turbopack","[boolean] use Turbopack for Next dev when native bindings work").action(async(n,i)=>{$e(i);let s=null,l=null,p=null,f=null,u=!1;const w=new Set,v=r(),P=function(e=["uncaughtException"],t=process){const o=e=>t.listeners(e);let n=null,i=null;return{beforeCreate(){n=new Map(e.map(e=>[e,new Set(o(e))]))},afterCreate(){if(!n)return 0;const s=n,r=new Map(e.map(e=>[e,o(e).filter(t=>!s.get(e).has(t))]));let a=0;if(i)for(const[e,o]of i){const n=new Set(r.get(e).map(e=>e.toString()));for(const i of o)n.has(i.toString())&&(t.off(e,i),a+=1)}return i=r,n=null,a}}}(),S=async()=>{s&&"function"==typeof s.close&&await s.close(),s=null},k=async()=>{const e=l;if(e){for(const e of w)e.destroy();w.clear(),await new Promise(t=>{e.close(()=>t())}),l===e&&(l=null)}},E=async()=>{if(!u){u=!0;try{const{next:D,constants:F}=await x(),{PHASE_DEVELOPMENT_SERVER:$}=F;p&&(await p.close(),p=null),l&&(v.info(a.yellow("🛑 Stopping existing Next.js server...")),await k()),await S();const{clearConfigCache:I}=await import("./index-lwWNBUTa.js").then(e=>e.h);I();const{join:j,basename:A}=await(import("path")),{createServer:N}=await(import("http")),C=await(import("next/dist/server/config.js")),M=C.default.default||C["module.exports"].default||C.default,R=Ie(i),ie=n?j(process.cwd(),n):process.cwd();y(i.mode||"development",ie),v.info(ie);const se=await M($,ie);let re=se?.ppDev||{};if(0===Object.keys(re).length)try{const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h),t=await e(ie);Object.keys(t).length>0?(re=t,v.info(a.blue("🔧 Loaded pp-dev config from standalone config file"))):v.info(a.yellow("⚠️ No pp-dev config found in Next.js config or standalone file, using defaults"))}catch(e){v.info(a.yellow("⚠️ Failed to load standalone pp-dev config, using defaults")),console.debug("Error loading standalone config:",e)}else v.info(a.blue("🔧 Loaded pp-dev config from Next.js config"));let ae=null;try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);ae=e(ie).name}catch{ae=A(ie)}g(re,ae??"");const le=d(re,ae??""),ce=le.backendBaseURL??"http://localhost:8080",de=le.templateLess,pe=le.v7Features,fe=le.disableSSLValidation,ue=le.enableProxyCache,ge=le.proxyCacheTTL,he=le.personalAccessToken,me=le.miHudLess,be=le.inspectorEnabled,ve=le.inspectorMaxMemory,ye=le.inspectorCaptureLimit,Pe=le.appId??(process.env.MI_APP_ID&&parseInt(process.env.MI_APP_ID,10)||void 0)??(process.env.MI_PORTAL_PAGE_ID&&parseInt(process.env.MI_PORTAL_PAGE_ID,10)||void 0)??1,xe=se?.basePath;let ke="";xe?ke=xe:(ke=de?h:pe?m:b,ke+=`/${ae}`);const Le=function(e){const t="1"===process.env.PP_DEV_NEXT_WEBPACK||"true"===process.env.PP_DEV_NEXT_WEBPACK;if(t&&(e.webpack||e.turbopack))throw new Error("Do not combine PP_DEV_NEXT_WEBPACK with --webpack or --turbopack");if(t)return{webpack:!0};if(e.webpack&&e.turbopack)throw new Error("Use only one of --webpack or --turbopack");return e.webpack?{webpack:!0}:e.turbopack?{turbopack:!0}:{}}(i),Ee=async e=>{delete process.env.TURBOPACK,await S();const t={dev:!0,customServer:!0,hostname:R.host||"localhost",port:R.port,dir:ie,conf:{...se,basePath:ke,assetPrefix:ke}};e.webpack?t.webpack=!0:e.turbopack&&(t.turbopack=!0),P.beforeCreate(),s=D(t),await s.prepare(),P.afterCreate()};if(Le.webpack)await Ee({webpack:!0});else if(Le.turbopack)try{await Ee({turbopack:!0})}catch(e){if(!Te(e))throw e;v.warn(a.yellow("⚠ Turbopack is unavailable (native bindings). Falling back to Webpack.")),await Ee({webpack:!0})}else try{await Ee({})}catch(e){if(!Te(e))throw e;v.warn(a.yellow("⚠ Turbopack cannot run (native Next.js bindings unavailable). Falling back to Webpack.")),await Ee({webpack:!0})}if(!s)throw new Error("Next.js app failed to initialize");if(ke.endsWith("/")||(ke+="/"),"/"===ke)throw new Error('basePath cannot be equal to "/" or equal to empty string');v.info(a.green("✅ Next.js app prepared successfully")),v.info(a.blue(`🔧 pp-dev plugin configured for template: ${ae}`)),v.info(a.blue(`🔧 Base path configured: ${ke}`)),ce&&(v.info(a.blue(`🌐 Backend URL: ${ce}`)),v.info(a.blue(`🆔 Custom App ID: ${Pe}`)));const De=s.getRequestHandler(),Fe="number"==typeof R.port?R.port:3e3,$e="string"==typeof R.host?R.host||"0.0.0.0":"localhost";l=N(async(e,t)=>{try{const o=e.url||"/",n=o.split("?")[0];let i=_(o,!0);if(_e.length>0){if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_")){if(Ae.length>0){let l=0;const c=()=>{if(l>=Ae.length)return void s();const o=Ae[l];l++,o(e,t,c)};return void c()}return void s()}let r=0;const a=()=>{if(r>=_e.length)return void s();const o=_e[r];r++,o(e,t,a)};return void a()}async function s(){if(n.startsWith(ke))i=_(o,!0);else{if(n===ke.replace(/\/$/,"")){const e=o.replace(n,ke);return t.writeHead(302,{Location:e}),void t.end()}if(n.startsWith("/_next/")||"/favicon.ico"===n||n.startsWith("/__nextjs_"));else if("/"===n)return t.writeHead(302,{Location:ke}),void t.end()}await De(e,t,i)}s()}catch(d){v.error(`Error handling request: ${d instanceof Error?d.message:String(d)}`,{error:d instanceof Error?d:void 0}),t.statusCode=500,t.end("Internal Server Error")}});let je=null,_e=[],Ae=[];if(!1!==be){const e=new z(ve);H(V,e,ye);const t=U(e,ye);_e.push(t)}if(ce){const n=new URL(ce).host,i=W();Ae.unshift(i),_e.unshift(i),ce.startsWith("https://")&&(o.defaultMaxListeners=Math.max(o.defaultMaxListeners,20));const d={headers:{host:n,referer:ce,origin:ce.replace(/^(https?:\/\/)([^/]+)(\/.*)?$/i,"$1$2")},appId:Pe,templateLess:de,disableSSLValidation:fe,v7Features:pe,personalAccessToken:he??process.env.MI_ACCESS_TOKEN};je=new Z(ce,d);const f=B(ke,ae??void 0),u=(e,t,o)=>{f(e,t,o)};Ae.push(u),_e.push(u);const g=T(ke);if(Ae.push(g),_e.push(g),ue){let e=+ge;(!e||Number.isNaN(e)||e<0)&&(e=6e5);const t={middlewares:{use:e=>e},config:{logger:console}},o=G({devServer:t,ttl:e}),n=(e,t,n)=>{o(e,t,n)};_e.push(n),v.info(a.blue(`🔧 Proxy cache middleware added with TTL: ${e}ms`))}const h=new RegExp(`^((${r=ke,r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})|/)$`),m=q(h,je,Object.assign({base:ke},d,{miHudLess:me})),b=(e,t,o)=>{m(e,t,o)};_e.push(b);const w=ke.endsWith("/")?ke.substring(0,ke.length-1):ke,y={middlewares:{use:e=>e},config:{logger:console}},P=J({devServer:y,baseURL:ce,proxyIgnore:["/@vite","/@metricinsights","/@",w,"/_next","/favicon.ico","/__nextjs_","/installHook.js.map"],disableSSLValidation:fe,miAPI:je,templateName:ae??void 0}),x=(e,t,o)=>{P(e,t,o)};_e.push(x);const S=V,k=(e,t,o)=>{if(e.url?.startsWith("/@api/")||e.url?.startsWith(O)||e.url?.startsWith(K)){return void S(e,t,()=>{})}o()};Ae.push(k),_e.push(k);const E=Y(e=>{const t=e.split("?")[0];return t.startsWith(ke)&&!t.includes("/_next/")},(e,t)=>{const o=je.buildPage(e,me),i=L(o,ke,{backendBaseURL:ce,templateLess:de,appId:Pe,devPanelPosition:le.devPanelPosition,devPanelHidden:le.devPanelHidden,devPanelAutoHide:le.devPanelAutoHide});return Buffer.from(X(n,t.headers.host??"",i))}),D=(e,t,o)=>{E(e,t,o)};_e.push(D),p=new we;let $=se?.distDir;try{process.env[c]="1";const e=await M(F.PHASE_PRODUCTION_BUILD,ie);$=e?.distDir??$}catch{}const I=($??"").replace(/\\/g,"/").replace(/\/+$/,"").replace(/\/dev$/,""),j=I&&".next"!==I?I:"out";let _,N="0.0.0";try{const o=JSON.parse(t.readFileSync(e.join(ie,"package.json"),"utf-8"));N="string"==typeof o.version?o.version:N,_="string"==typeof o.repository?o.repository:o.repository?.url}catch{}const C=new Q(ae??A(ie),{root:ie,backupFolder:e.resolve(ie,le.syncBackupsDir),maxBackups:le.syncMaxBackups,nextBuild:{projectRoot:ie,distDir:j,packageVersion:N,packageRepositoryUrl:_}}),R={ws:p.ws,config:{clientInjectionPlugin:{v7Features:pe}}};new ee(R,{distService:C,miAPI:je}),te(V,{distService:C,miAPI:je}),oe(V,{miAPI:je}),ne({persist:le.persistUsers,miAPI:je,projectRoot:ie,miUrl:ce});const z="function"==typeof s?.getUpgradeHandler?s.getUpgradeHandler():null;l.on("upgrade",(e,t,o)=>{p?.handleUpgrade(e,t,o)||(z?z(e,t,o):t.destroy())}),v.info(a.blue(`🔧 ${_e.length} pp-dev middlewares initialized`)),v.info(a.blue(`🔧 ${Ae.length} essential middlewares for internal routes`)),v.info(a.blue(`🔧 MiAPI initialized for backend: ${ce}`)),v.info(a.blue(`🔧 Custom App ID: ${Pe}`))}l.listen(Fe,$e,()=>{v.info(a.green(`✅ pp-dev Next.js server running at http://${$e}:${Fe}`)),v.info(a.blue(`📱 Next.js app accessible at http://${$e}:${Fe}${ke}`)),!1!==be&&v.info(a.cyan(`🔍 Request Inspector: http://${$e}:${Fe}${O}`)),v.info(a.blue("🔧 Base path handling active")),f||(f=Se(ie,E,v.info),v.info(a.blue("🔧 Config file watcher started"))),l.on("connection",e=>{w.add(e),e.on("close",()=>w.delete(e))})}),u=!1}catch(e){u=!1,v.error(a.red(`❌ Failed to start Next.js server: ${e?.message}. Stack: ${e?.stack}`)),e instanceof Error&&e.message.includes("Next.js is required")&&(v.error(a.red("❌ Next.js Peer Dependency Error:")),v.error(a.red(e.message)),v.error(a.yellow("\n💡 To fix this issue:")),v.error(a.blue(" 1. Install Next.js in your project:")),v.error(a.white(" npm install next@^16")),v.error(a.blue(" 2. Or use yarn:")),v.error(a.white(" yarn add next@^16")),v.error(a.blue(" 3. Or use pnpm:")),v.error(a.white(" pnpm add next@^16")),v.error(a.yellow("\n📖 For more information, see:")),v.error(a.blue(" https://nextjs.org/docs/getting-started"))),process.exit(1)}var r}};ye({logger:v,knownRejections:[Pe],shutdown:async()=>{f&&(ke(f),f=null),p&&(await p.close(),p=null),await k(),await S()}}),await E()}),xe.command("build [root]","build for production").option("--target <target>","[string] transpile target (default: 'modules')").option("--outDir <dir>","[string] output directory (default: dist)").option("--assetsDir <dir>","[string] directory under outDir to place assets in (default: assets)").option("--assetsInlineLimit <number>","[number] static asset base64 inline threshold in bytes (default: 4096)").option("--ssr [entry]","[string] build specified entry for server-side rendering").option("--sourcemap [output]",'[boolean | "inline" | "hidden"] output source maps for build (default: false)').option("--minify [minifier]",'[boolean | "terser" | "esbuild"] enable/disable minification, or specify minifier to use (default: esbuild)').option("--manifest [name]","[boolean | string] emit build manifest json").option("--ssrManifest [name]","[boolean | string] emit ssr manifest json").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle (experimental)").option("--emptyOutDir","[boolean] force empty outDir when it's outside of root").option("-w, --watch","[boolean] rebuilds when modules have changed on disk").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(t,o)=>{$e(o);const n=Ie(o),i=v(o);try{const s=o.mode||"production",r=e.resolve(process.cwd(),t??".");y(s,r);const a=await E({mode:s,command:"build"},o.config,t,o.logLevel);let l=await P(i,{mode:s,root:r});if(a){const{plugins:e,...t}=a.config;l=D(l,t)}const c=D(l,{root:t,base:o.base,mode:o.mode,configFile:o.config,logLevel:o.logLevel,clearScreen:o.clearScreen,optimizeDeps:{force:o.force},build:n},!0);if(await F(c),n.changelog){const i=t||process.cwd(),s=c.build?.outDir||"dist";let r="dist-zip";c.ppDevConfig&&(!1===c.ppDevConfig.distZip?r=s:"object"==typeof c.ppDevConfig.distZip&&"string"==typeof c.ppDevConfig.distZip.outDir&&(r=c.ppDevConfig.distZip.outDir)),await Le({changelog:n.changelog,executionRoot:i,newAssetsPath:e.resolve(i,s),backupsDirPath:e.resolve(i,c.ppDevConfig?.syncBackupsDir||"backups"),changelogDestinationPath:e.resolve(i,r),logLevel:o.logLevel})}}catch(e){r(o.logLevel).error(a.red(`error during build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(o.logLevel).info(e))}}),xe.command("next-build [root]","build a Next.js app for production (`next build`) and emit VERSION/BUILD-MANIFEST/zip in the same format as `pp-dev build`").option("--changelog [assetsFile]","[boolean | string] generate changelog between assetsFile and current build (default: false)").option("--distZip","[boolean] pack build output into a ZIP archive; use --no-distZip to disable (default: pp-dev config build.zip, or true). Env: PP_DEV_DIST_ZIP").option("--distZipDir <dir>","[string] override the ZIP output directory (default: 'dist-zip'). Env: PP_DEV_DIST_ZIP_DIR").option("--distZipFilename <filename>","[string] override the ZIP output file name (default: '<app-name>.zip'). Env: PP_DEV_DIST_ZIP_FILENAME").option("--versionManifest","[boolean] emit VERSION-*.json + BUILD-MANIFEST.json; use --no-versionManifest to disable (default: pp-dev config build.versionFile, or true). Env: PP_DEV_VERSION_MANIFEST").option("--versionFileTemplate <template>","[string] override the VERSION file name template (default: 'VERSION-v{packageversion}-{currentDate}.json'). Env: PP_DEV_VERSION_FILE_TEMPLATE").action(async(o,n)=>{$e(n);const i=r(n.logLevel),s=o?e.resolve(process.cwd(),o):process.cwd(),l=v(n);process.env[c]="1";try{y(n.mode||"production",s);const{constants:o}=await x(),r=await(import("next/dist/server/config.js")),c=r.default.default||r["module.exports"].default||r.default,u=await c(o.PHASE_PRODUCTION_BUILD,s);let g,h=u?.ppDev||{};if(0===Object.keys(h).length){const{getConfig:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);h=await e(s)}try{const{getPkg:e}=await import("./index-lwWNBUTa.js").then(e=>e.h);g=e(s).name}catch{g=e.basename(s)}const m=d(h,g),b=S(m.distZip,l,p(g)),w=k(m.versionPlugin,l),v=C(s,u);v&&i.info(a.dim(`[pp-dev] Removed stale dev route types: ${e.relative(s,v)}`)),i.info(a.cyan("[pp-dev] Running `next build`...")),await M(s);const P="string"==typeof u?.distDir&&u.distDir?u.distDir:".next",T=".next"===P?"out":P,L=e.resolve(s,T);if(!t.existsSync(L)||!t.statSync(L).isDirectory())throw new Error(`Next.js build output directory not found: ${L}. "next-build" requires "output: 'export'" in next.config (static export).`);const E=JSON.parse(t.readFileSync(e.join(s,"package.json"),"utf-8"));if(!1!==w&&!1!==w.enabled&&(pe({outDir:L,packageVersion:"string"==typeof E.version?E.version:"0.0.0",versionFileTemplate:w.versionFileTemplate,packageRepositoryUrl:"string"==typeof E.repository?E.repository:E.repository?.url,enabled:w.enabled}),i.info(a.green(`✅ VERSION / BUILD-MANIFEST written to ${e.relative(s,L)}`))),!1!==b){const o=e.resolve(s,b.outDir),n=b.inDir?e.resolve(L,b.inDir):L,r=f(o,b.outFileName,"ZIP output file name");t.mkdirSync(e.dirname(r),{recursive:!0});const l=await R(n);t.writeFileSync(r,l),i.info(a.green(`✅ Zip archive written to ${e.relative(s,r)}`))}if(n.changelog){const t=!1!==b?b.outDir:T;await Le({changelog:n.changelog,executionRoot:s,newAssetsPath:L,backupsDirPath:e.resolve(s,m.syncBackupsDir),changelogDestinationPath:e.resolve(s,t),logLevel:n.logLevel})}}catch(e){r(n.logLevel).error(a.red(`error during next-build:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(n.logLevel).info(e))}}),xe.command("changelog [oldAssetPath] [newAssetPath]","generate changelog between two assets files/folders").option("--oldAssetsPath <oldAssetsPath>","[string] path to the old assets zip file or folder").option("--newAssetsPath <newAssetsPath>","[string] path to the new assets zip file or folder").option("--destination <destination>","[string] destination folder for the changelog (default: .)").option("--filename <filename>","[string] filename for the changelog (default: CHANGELOG.html)").action(async(t,o,n)=>{$e(n);const{oldAssetsPath:i=t,newAssetsPath:s=o,destination:l=".",filename:c="CHANGELOG.html",logLevel:d}=n,p=process.cwd();i&&s||(r(d).error(a.red("error during changelog generation: oldAssetPath and newAssetPath are required")),process.exit(1));const f=e.resolve(p,i),u=e.resolve(p,s),g=e.resolve(p,l),h=new me({oldAssetsPath:f,newAssetsPath:u,destinationPath:g,changelogFilename:c});await h.generateChangelog()}),xe.command("generate-icon-font [source] [destination]","generate icon font from SVG files").option("--source <source>","[string] path to the source directory with SVG files").option("--destination <destination>","[string] path to the destination directory to save the generated font files").option("--font-name, -n <fontName>","[string] name of the font to generate (default: 'icon-font')").action(async(t,o,n)=>{$e(n);const{source:i=t,destination:s=o,fontName:l="icon-font"}=n,c=process.cwd(),d=e.resolve(c,i),p=e.resolve(c,s),f=new be({sourceDir:d,outputDir:p,fontName:l}),u=r(n.logLevel);u.info(`Generating icon font from SVG files in ${a.dim(d)}`),await f.generate(),u.info(`Icon font generated and saved to ${a.dim(p)}`)}),xe.command("optimize [root]","pre-bundle dependencies").option("--force","[boolean] force the optimizer to ignore the cache and re-bundle").action(async(t,o)=>{$e(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}const a=await $(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode}),"serve");await I(a,o.force,!0)}catch(e){r(o.logLevel).error(a.red(`error when optimizing deps:\n${e.stack}`),{error:e}),process.exit(1)}}),xe.command("preview [root]","locally preview production build").option("--host [host]","[string] specify hostname").option("--port <port>","[number] specify port").option("--strictPort","[boolean] exit if specified port is already in use").option("--https","[boolean] use TLS + HTTP/2").option("--open [path]","[boolean | string] open browser on startup").option("--outDir <dir>","[string] output directory (default: dist)").action(async(t,o)=>{$e(o);try{const n=o.mode||"production",i=e.resolve(process.cwd(),t??".");y(n,i);const s=await E({mode:n,command:"build"},o.config,t,o.logLevel);let r=await P(void 0,{mode:n,root:i});if(s){const{plugins:e,...t}=s.config;r=D(r,t)}(await j(D(r,{root:t,base:o.base,configFile:o.config,logLevel:o.logLevel,mode:o.mode,build:{outDir:o.outDir},preview:{port:o.port,strictPort:o.strictPort,host:o.host,https:o.https,open:o.open}}))).printUrls()}catch(e){r(o.logLevel).error(a.red(`error when starting preview server:\n${e.stack}`),{error:e}),process.exit(1)}finally{Fe(e=>r(o.logLevel).info(e))}}),xe.command("migrate [config]","migrate pp-dev config from 0.x flat format to 1.0 grouped format").option("--dry-run","[boolean] print migrated config without writing any files").option("--format <format>","[string] output format: ts (default), js, json").option("--output <file>","[string] output file path (default: pp-dev.config.ts)").option("--no-backup","[boolean] skip backup of original config file").action(async(o,n)=>{const i=r(n.logLevel),{isLegacyFlatConfig:s,isLegacyPPWatchConfig:l,isAlreadyMigrated:c,migrateLegacyFlatConfig:d,migratePPWatchConfig:p,generateConfigFileContent:f,discoverMigrateSource:u,loadPackageJsonMigrateConfig:g}=await(import("./migrate-BLw2zDKz.js")),h=n.format??"ts",m=!1!==n.backup,b=process.cwd(),w=u(b,o);w||(i.warn(a.yellow("No pp-dev or pp-watch config file found in the current directory.")),i.info(a.blue('Supported files: pp-dev.config.{ts,js,cjs,mjs,json}, .pp-watch.config.{ts,js,json}, or a "pp-dev" field in package.json')),process.exit(1));const{sourceFile:v,isWatchConfig:y,isPackageJsonConfig:P}=w;i.info(a.blue(`Found config: ${e.relative(b,v)}`));const{getPkg:x}=await import("./index-lwWNBUTa.js").then(e=>e.h),S=x();let k,T={};try{if(/\.[cm]?ts$/i.test(v)){const o=await(import("esbuild")),{pathToFileURL:n}=await(import("url")),i=(await o.build({absWorkingDir:b,entryPoints:[v],outfile:"out.js",write:!1,target:"node24",platform:"node",bundle:!0,packages:"external",format:"esm",mainFields:["main"]})).outputFiles[0].text,s=`pp-migrate-tmp-${Date.now()}.mjs`;t.writeFileSync(s,i);try{const t=await(import(n(e.resolve(b,s)).toString()));T=t.default?.default??t.default??t}finally{t.existsSync(s)&&t.unlinkSync(s)}}else if(/\.[cm]?js$/i.test(v)){const{pathToFileURL:t}=await(import("url")),o=await(import(t(e.resolve(b,v)).toString()));T=o.default?.default??o.default??o}else P?T=g(v):v.endsWith(".json")&&(T=JSON.parse(t.readFileSync(v,"utf-8")))}catch(e){i.error(a.red(`Failed to load config file: ${e.message}`)),process.exit(1)}T&&"object"==typeof T||(i.error(a.red("Config file did not export a valid object.")),process.exit(1)),c(T)?(i.info(a.green("Config is already in 1.0 format — nothing to migrate.")),process.exit(0)):y||l(T)?(i.info(a.blue("Detected pp-watch config format → migrating to 1.0")),k=p(T)):s(T)?(i.info(a.blue("Detected 0.x flat config format → migrating to 1.0")),k=d(T,S.name)):(i.warn(a.yellow("Could not detect config format. No known keys found.")),process.exit(1));const L=f(k,h),E=n.output??e.join(b,`pp-dev.config.${h}`);if(n.dryRun&&(i.info(a.green(`\n--- Migrated config (dry-run) → ${e.relative(b,E)} ---\n`)),process.exit(0)),m&&!P&&t.existsSync(v)){const o=`${v}.bak`;t.copyFileSync(v,o),i.info(a.blue(`Backed up original to: ${e.relative(b,o)}`))}t.writeFileSync(E,L,"utf-8"),i.info(a.green(`✅ Migration complete → ${e.relative(b,E)}`)),P?i.info(a.yellow('You can now remove the "pp-dev" field from package.json.')):v!==E&&t.existsSync(v)&&i.info(a.yellow(`You can now delete the old config: ${e.relative(b,v)}`))}),xe.help(),xe.version(u),xe.parse();export{Fe as stopProfiler};
2
2
  //# sourceMappingURL=cli.js.map