{"version":3,"sources":["/tools/static-assets/server/boot.js"],"names":["Fiber","require","fs","path","Future","sourcemap_support","bootUtils","files","npmRequire","Profile","MIN_NODE_VERSION","hasOwn","Object","prototype","hasOwnProperty","lt","process","version","stderr","write","exit","serverJsonPath","resolve","argv","serverDir","dirname","serverJson","configJson","JSON","parse","readFileSync","programsDir","buildDir","starJson","join","__meteor_bootstrap__","startupHooks","__meteor_runtime_config__","meteorRelease","gitCommitHash","env","APP_ID","appId","parsedSourceMaps","meteorDebugFuture","METEOR_INSPECT_BRK","maybeWaitForDebuggerToAttach","pause","pauseThresholdMs","pollIntervalMs","waitStartTimeMs","Date","waitLimitMinutes","waitLimitMs","setTimeout","poll","pauseStartTimeMs","console","error","return","wait","load","forEach","fileInfo","sourceMap","rawSourceMap","parsedSourceMap","replace","sourcesContent","url","sourceMapRoot","sourceRoot","__dirname","retrieveSourceMap","pathForSourceMap","call","map","origWrapper","wrapCallSite","frame","wrapGetter","name","origGetter","arg","source","install","handleUncaughtExceptions","startCheckForLiveParent","parentPid","validPid","setInterval","kill","err","specialArgPaths","file","dynamicImportInfo","clientArchs","keys","clientPaths","arch","dynamicRoot","server","loadServerBundles","infos","code","nonLocalNodeModulesPaths","addNodeModulesPath","push","pathResolve","node_modules","info","local","statOrNull","statSync","e","Npm","getBucketName","stringify","length","fullPath","split","some","nodeModuleBase","packageBase","convertToOSPath","resolved","isAbsolute","Error","getAsset","assetPath","encoding","callback","fut","resolver","_callback","Package","meteor","Meteor","bindEnvironment","result","Uint8Array","log","stack","convertToStandardPath","unicodeNormalizePath","assets","filePath","readFile","Assets","getText","getBinary","undefined","absoluteFilePath","getServerDir","wrapParts","specialArgs","specialKeys","key","wrapped","fileInfoOSPath","scriptPath","func","runInThisContext","filename","displayErrors","args","fn","apply","global","callStartupHooks","hook","shift","time","runMain","mains","globalMain","main","exitCode","slice","METEOR_PARENT_PID","run"],"mappings":";AAAA,MAAIA,KAAK,GAAGC,OAAO,CAAC,QAAD,CAAnB;;AACA,MAAIC,EAAE,GAAGD,OAAO,CAAC,IAAD,CAAhB;;AACA,MAAIE,IAAI,GAAGF,OAAO,CAAC,MAAD,CAAlB;;AACA,MAAIG,MAAM,GAAGH,OAAO,CAAC,eAAD,CAApB;;AACA,MAAII,iBAAiB,GAAGJ,OAAO,CAAC,oBAAD,CAA/B;;AAEA,MAAIK,SAAS,GAAGL,OAAO,CAAC,iBAAD,CAAvB;;AACA,MAAIM,KAAK,GAAGN,OAAO,CAAC,cAAD,CAAnB;;AACA,MAAIO,UAAU,GAAGP,OAAO,CAAC,kBAAD,CAAP,CAA4BA,OAA7C;;AACA,MAAIQ,OAAO,GAAGR,OAAO,CAAC,WAAD,CAAP,CAAqBQ,OAAnC,C,CAEA;;;AACA,MAAIC,gBAAgB,GAAG,SAAvB;AAEA,MAAIC,MAAM,GAAGC,MAAM,CAACC,SAAP,CAAiBC,cAA9B;;AAEA,MAAIb,OAAO,CAAC,QAAD,CAAP,CAAkBc,EAAlB,CAAqBC,OAAO,CAACC,OAA7B,EAAsCP,gBAAtC,CAAJ,EAA6D;AAC3DM,IAAAA,OAAO,CAACE,MAAR,CAAeC,KAAf,CACE,0BAA0BT,gBAA1B,GAA6C,cAD/C;AAEAM,IAAAA,OAAO,CAACI,IAAR,CAAa,CAAb;AACD,G,CAED;;;AACA,MAAIC,cAAc,GAAGlB,IAAI,CAACmB,OAAL,CAAaN,OAAO,CAACO,IAAR,CAAa,CAAb,CAAb,CAArB;AACA,MAAIC,SAAS,GAAGrB,IAAI,CAACsB,OAAL,CAAaJ,cAAb,CAAhB;;AACA,MAAIK,UAAU,GAAGzB,OAAO,CAAC,kBAAD,CAAxB;;AACA,MAAI0B,UAAU,GACZC,IAAI,CAACC,KAAL,CAAW3B,EAAE,CAAC4B,YAAH,CAAgB3B,IAAI,CAACmB,OAAL,CAAaE,SAAb,EAAwB,aAAxB,CAAhB,EAAwD,MAAxD,CAAX,CADF;AAGA,MAAIO,WAAW,GAAG5B,IAAI,CAACsB,OAAL,CAAaD,SAAb,CAAlB;AACA,MAAIQ,QAAQ,GAAG7B,IAAI,CAACsB,OAAL,CAAaM,WAAb,CAAf;AACA,MAAIE,QAAQ,GAAGL,IAAI,CAACC,KAAL,CAAW3B,EAAE,CAAC4B,YAAH,CAAgB3B,IAAI,CAAC+B,IAAL,CAAUF,QAAV,EAAoB,WAApB,CAAhB,CAAX,CAAf,C,CAEA;;AACAG,EAAAA,oBAAoB,GAAG;AACrBC,IAAAA,YAAY,EAAE,EADO;AAErBZ,IAAAA,SAAS,EAAEA,SAFU;AAGrBG,IAAAA,UAAU,EAAEA;AAHS,GAAvB;AAMAU,EAAAA,yBAAyB,GAAG;AAC1BC,IAAAA,aAAa,EAAEX,UAAU,CAACW,aADA;AAE1BC,IAAAA,aAAa,EAAEN,QAAQ,CAACM;AAFE,GAA5B;;AAKA,MAAI,CAACvB,OAAO,CAACwB,GAAR,CAAYC,MAAjB,EAAyB;AACvBzB,IAAAA,OAAO,CAACwB,GAAR,CAAYC,MAAZ,GAAqBd,UAAU,CAACe,KAAhC;AACD,G,CAED;;;AACA,MAAIC,gBAAgB,GAAG,EAAvB;AAEA,QAAMC,iBAAiB,GACrB5B,OAAO,CAACwB,GAAR,CAAYK,kBAAZ,GAAiC,IAAIzC,MAAJ,EAAjC,GAA8C,IADhD;;AAGA,WAAS0C,4BAAT,GAAwC;AACtC,QAAIF,iBAAJ,EAAuB;AACrB,YAAM;AAAEG,QAAAA;AAAF,UAAY9C,OAAO,CAAC,SAAD,CAAzB;;AACA,YAAM+C,gBAAgB,GAAG,EAAzB;AACA,YAAMC,cAAc,GAAG,GAAvB;AACA,YAAMC,eAAe,GAAG,CAAC,IAAIC,IAAJ,EAAzB;AACA,YAAMC,gBAAgB,GAAG,CAAzB;AACA,YAAMC,WAAW,GAAGD,gBAAgB,GAAG,EAAnB,GAAwB,IAA5C,CANqB,CAQrB;AACA;AACA;;AACAE,MAAAA,UAAU,CAAC,SAASC,IAAT,GAAgB;AACzB,cAAMC,gBAAgB,GAAG,CAAC,IAAIL,IAAJ,EAA1B;;AAEA,YAAIK,gBAAgB,GAAGN,eAAnB,GAAqCG,WAAzC,EAAsD;AACpDI,UAAAA,OAAO,CAACC,KAAR,yCACmCN,gBADnC;AAIAR,UAAAA,iBAAiB,CAACe,MAAlB;AAED,SAPD,MAOO;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAZ,UAAAA,KAAK;;AAEL,cAAI,IAAII,IAAJ,KAAWK,gBAAX,GAA8BR,gBAAlC,EAAoD;AAClD;AACA;AACA;AACA;AACAJ,YAAAA,iBAAiB,CAACe,MAAlB;AAED,WAPD,MAOO;AACL;AACA;AACA;AACA;AACAL,YAAAA,UAAU,CAACC,IAAD,EAAON,cAAP,CAAV;AACD;AACF;AACF,OAtCS,EAsCPA,cAtCO,CAAV,CAXqB,CAmDrB;;AACAL,MAAAA,iBAAiB,CAACgB,IAAlB;AACD;AACF,G,CAED;;;AACAlC,EAAAA,UAAU,CAACmC,IAAX,CAAgBC,OAAhB,CAAwB,UAAUC,QAAV,EAAoB;AAC1C,QAAIA,QAAQ,CAACC,SAAb,EAAwB;AACtB,UAAIC,YAAY,GAAG/D,EAAE,CAAC4B,YAAH,CACjB3B,IAAI,CAACmB,OAAL,CAAaE,SAAb,EAAwBuC,QAAQ,CAACC,SAAjC,CADiB,EAC4B,MAD5B,CAAnB,CADsB,CAGtB;AACA;;AACA,UAAIE,eAAe,GAAGtC,IAAI,CAACC,KAAL,CAAWoC,YAAY,CAACE,OAAb,CAAqB,UAArB,EAAiC,EAAjC,CAAX,CAAtB,CALsB,CAMtB;AACA;;AACA,aAAOD,eAAe,CAACE,cAAvB;AACA,UAAIC,GAAJ;;AACA,UAAIN,QAAQ,CAACO,aAAb,EAA4B;AAC1B;AACAJ,QAAAA,eAAe,CAACK,UAAhB,GAA6BpE,IAAI,CAAC+B,IAAL,CAC3B6B,QAAQ,CAACO,aADkB,EACHJ,eAAe,CAACK,UAAhB,IAA8B,EAD3B,CAA7B;AAED;;AACD5B,MAAAA,gBAAgB,CAACxC,IAAI,CAACmB,OAAL,CAAakD,SAAb,EAAwBT,QAAQ,CAAC5D,IAAjC,CAAD,CAAhB,GAA2D+D,eAA3D;AACD;AACF,GAlBD;;AAoBA,WAASO,iBAAT,CAA2BC,gBAA3B,EAA6C;AAC3C,QAAI/D,MAAM,CAACgE,IAAP,CAAYhC,gBAAZ,EAA8B+B,gBAA9B,CAAJ,EAAqD;AACnD,aAAO;AAAEE,QAAAA,GAAG,EAAEjC,gBAAgB,CAAC+B,gBAAD;AAAvB,OAAP;AACD;;AACD,WAAO,IAAP;AACD;;AAED,MAAIG,WAAW,GAAGxE,iBAAiB,CAACyE,YAApC;;AACA,MAAIA,YAAY,GAAG,UAAUC,KAAV,EAAiB;AAClC,QAAIA,KAAK,GAAGF,WAAW,CAACE,KAAD,CAAvB;;AACA,QAAIC,UAAU,GAAG,UAAUC,IAAV,EAAgB;AAC/B,UAAIC,UAAU,GAAGH,KAAK,CAACE,IAAD,CAAtB;;AACAF,MAAAA,KAAK,CAACE,IAAD,CAAL,GAAc,UAAUE,GAAV,EAAe;AAC3B;AACA;AACA,YAAIC,MAAM,GAAGF,UAAU,CAACC,GAAD,CAAvB;AACA,YAAI,CAAEC,MAAN,EACE,OAAOA,MAAP;AACF,eAAOA,MAAM,CAACjB,OAAP,CAAe,0BAAf,EAA2C,IAA3C,CAAP;AACD,OAPD;AAQD,KAVD;;AAWAa,IAAAA,UAAU,CAAC,0BAAD,CAAV;AACAA,IAAAA,UAAU,CAAC,eAAD,CAAV;AAEA,WAAOD,KAAP;AACD,GAjBD;;AAkBA1E,EAAAA,iBAAiB,CAACgF,OAAlB,CAA0B;AACxB;AACA;AACAZ,IAAAA,iBAAiB,EAAEA,iBAHK;AAIxB;AACA;AACA;AACAa,IAAAA,wBAAwB,EAAE,KAPF;AAQxBR,IAAAA,YAAY,EAAEA;AARU,GAA1B,E,CAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAIS,uBAAuB,GAAG,UAAUC,SAAV,EAAqB;AACjD,QAAIA,SAAJ,EAAe;AACb,UAAI,CAAElF,SAAS,CAACmF,QAAV,CAAmBD,SAAnB,CAAN,EAAqC;AACnC/B,QAAAA,OAAO,CAACC,KAAR,CAAc,+CAAd;AACA1C,QAAAA,OAAO,CAACI,IAAR,CAAa,CAAb;AACD;;AAEDsE,MAAAA,WAAW,CAAC,YAAY;AACtB,YAAI;AACF1E,UAAAA,OAAO,CAAC2E,IAAR,CAAaH,SAAb,EAAwB,CAAxB;AACD,SAFD,CAEE,OAAOI,GAAP,EAAY;AACZnC,UAAAA,OAAO,CAACC,KAAR,CAAc,kCAAd;AACA1C,UAAAA,OAAO,CAACI,IAAR,CAAa,CAAb;AACD;AACF,OAPU,EAOR,IAPQ,CAAX;AAQD;AACF,GAhBD;;AAkBA,MAAIyE,eAAe,GAAG;AACpB,mCAA+B,YAAY;AACzC,aAAO;AACLrF,QAAAA,UAAU,EAAEA,UADP;AAELC,QAAAA,OAAO,EAAEA;AAFJ,OAAP;AAID,KANmB;AAQpB,kCAA8B,UAAUqF,IAAV,EAAgB;AAC5C,UAAIC,iBAAiB,GAAG,EAAxB;AACA,UAAIC,WAAW,GAAGrE,UAAU,CAACqE,WAAX,IAChBpF,MAAM,CAACqF,IAAP,CAAYtE,UAAU,CAACuE,WAAvB,CADF;AAGAF,MAAAA,WAAW,CAAClC,OAAZ,CAAoB,UAAUqC,IAAV,EAAgB;AAClCJ,QAAAA,iBAAiB,CAACI,IAAD,CAAjB,GAA0B;AACxBC,UAAAA,WAAW,EAAEjG,IAAI,CAAC+B,IAAL,CAAUH,WAAV,EAAuBoE,IAAvB,EAA6B,SAA7B;AADW,SAA1B;AAGD,OAJD;AAMAJ,MAAAA,iBAAiB,CAACM,MAAlB,GAA2B;AACzBD,QAAAA,WAAW,EAAEjG,IAAI,CAAC+B,IAAL,CAAUV,SAAV,EAAqB,SAArB;AADY,OAA3B;AAIA,aAAO;AAAEuE,QAAAA,iBAAiB,EAAEA;AAArB,OAAP;AACD;AAxBmB,GAAtB;AA2BA,MAAIO,iBAAiB,GAAG7F,OAAO,CAAC,qBAAD,EAAwB,YAAY;AACjE,QAAI8F,KAAK,GAAG,EAAZ;AAEA7E,IAAAA,UAAU,CAACmC,IAAX,CAAgBC,OAAhB,CAAwB,UAAUC,QAAV,EAAoB;AAC1C,UAAIyC,IAAI,GAAGtG,EAAE,CAAC4B,YAAH,CAAgB3B,IAAI,CAACmB,OAAL,CAAaE,SAAb,EAAwBuC,QAAQ,CAAC5D,IAAjC,CAAhB,CAAX;AACA,UAAIsG,wBAAwB,GAAG,EAA/B;;AAEA,eAASC,kBAAT,CAA4BvG,IAA5B,EAAkC;AAChCsG,QAAAA,wBAAwB,CAACE,IAAzB,CACEpG,KAAK,CAACqG,WAAN,CAAkBpF,SAAlB,EAA6BrB,IAA7B,CADF;AAGD;;AAED,UAAI,OAAO4D,QAAQ,CAAC8C,YAAhB,KAAiC,QAArC,EAA+C;AAC7CH,QAAAA,kBAAkB,CAAC3C,QAAQ,CAAC8C,YAAV,CAAlB;AACD,OAFD,MAEO,IAAI9C,QAAQ,CAAC8C,YAAb,EAA2B;AAChCjG,QAAAA,MAAM,CAACqF,IAAP,CAAYlC,QAAQ,CAAC8C,YAArB,EAAmC/C,OAAnC,CAA2C,UAAU3D,IAAV,EAAgB;AACzD,gBAAM2G,IAAI,GAAG/C,QAAQ,CAAC8C,YAAT,CAAsB1G,IAAtB,CAAb;;AACA,cAAI,CAAE2G,IAAI,CAACC,KAAX,EAAkB;AAChBL,YAAAA,kBAAkB,CAACvG,IAAD,CAAlB;AACD;AACF,SALD;AAMD,OAnByC,CAqB1C;;;AACAuG,MAAAA,kBAAkB,CAAC,cAAD,CAAlB;;AAEA,eAASM,UAAT,CAAoB7G,IAApB,EAA0B;AACxB,YAAI;AACF,iBAAOD,EAAE,CAAC+G,QAAH,CAAY9G,IAAZ,CAAP;AACD,SAFD,CAEE,OAAO+G,CAAP,EAAU;AACV,iBAAO,IAAP;AACD;AACF;;AAED,UAAIC,GAAG,GAAG;AACR;AACN;AACA;AACA;AACA;AACA;AACA;AACMlH,QAAAA,OAAO,EAAEQ,OAAO,CAAC,SAAS2G,aAAT,CAAuBnC,IAAvB,EAA6B;AAC5C,iBAAO,iBAAiBrD,IAAI,CAACyF,SAAL,CAAepC,IAAf,CAAjB,GAAwC,GAA/C;AACD,SAFe,EAEb,UAAUA,IAAV,EAAgBvB,KAAhB,EAAuB;AACxB,cAAI+C,wBAAwB,CAACa,MAAzB,GAAkC,CAAtC,EAAyC;AACvC,gBAAIC,QAAJ,CADuC,CAGvC;AACA;;AACAtC,YAAAA,IAAI,GAAGA,IAAI,CAACuC,KAAL,CAAW,IAAX,EAAiBtF,IAAjB,CAAsB,GAAtB,CAAP;AAEAuE,YAAAA,wBAAwB,CAACgB,IAAzB,CAA8B,UAAUC,cAAV,EAA0B;AACtD,kBAAIC,WAAW,GAAGpH,KAAK,CAACqH,eAAN,CAAsBrH,KAAK,CAACqG,WAAN,CACtCc,cADsC,EAEtCzC,IAAI,CAACuC,KAAL,CAAW,GAAX,EAAgB,CAAhB,EAAmB,CAAnB,CAFsC,CAAtB,CAAlB;;AAKA,kBAAIR,UAAU,CAACW,WAAD,CAAd,EAA6B;AAC3B,uBAAOJ,QAAQ,GAAGhH,KAAK,CAACqH,eAAN,CAChBrH,KAAK,CAACqG,WAAN,CAAkBc,cAAlB,EAAkCzC,IAAlC,CADgB,CAAlB;AAGD;AACF,aAXD;;AAaA,gBAAIsC,QAAJ,EAAc;AACZ,qBAAOtH,OAAO,CAACsH,QAAD,CAAd;AACD;AACF;;AAED,cAAIM,QAAQ,GAAG5H,OAAO,CAACqB,OAAR,CAAgB2D,IAAhB,CAAf;;AACA,cAAI4C,QAAQ,KAAK5C,IAAb,IAAqB,CAAE9E,IAAI,CAAC2H,UAAL,CAAgBD,QAAhB,CAA3B,EAAsD;AACpD;AACA;AACA,mBAAO5H,OAAO,CAAC4H,QAAD,CAAd;AACD;;AAED,gBAAMnE,KAAK,IAAI,IAAIqE,KAAJ,CACb,wBAAwBnG,IAAI,CAACyF,SAAL,CAAepC,IAAf,CADX,CAAf;AAGD,SAtCe;AARR,OAAV;;AAiDA,UAAI+C,QAAQ,GAAG,UAAUC,SAAV,EAAqBC,QAArB,EAA+BC,QAA/B,EAAyC;AACtD,YAAIC,GAAJ;;AACA,YAAI,CAAED,QAAN,EAAgB;AACdC,UAAAA,GAAG,GAAG,IAAIhI,MAAJ,EAAN;AACA+H,UAAAA,QAAQ,GAAGC,GAAG,CAACC,QAAJ,EAAX;AACD,SALqD,CAMtD;AACA;AACA;AACA;;;AACA,YAAIC,SAAS,GAAGC,OAAO,CAACC,MAAR,CAAeC,MAAf,CAAsBC,eAAtB,CAAsC,UAAU9C,GAAV,EAAe+C,MAAf,EAAuB;AAC3E,cAAIA,MAAM,IAAI,CAAET,QAAhB,EACE;AACAS,YAAAA,MAAM,GAAG,IAAIC,UAAJ,CAAeD,MAAf,CAAT;AACFR,UAAAA,QAAQ,CAACvC,GAAD,EAAM+C,MAAN,CAAR;AACD,SALe,EAKb,UAAUzB,CAAV,EAAa;AACdzD,UAAAA,OAAO,CAACoF,GAAR,CAAY,mCAAZ,EAAiD3B,CAAC,CAAC4B,KAAnD;AACD,SAPe,CAAhB,CAVsD,CAmBtD;AACA;;;AACAb,QAAAA,SAAS,GAAG1H,KAAK,CAACwI,qBAAN,CAA4Bd,SAA5B,CAAZ,CArBsD,CAuBtD;AACA;;AACAA,QAAAA,SAAS,GAAG1H,KAAK,CAACyI,oBAAN,CAA2Bf,SAA3B,CAAZ;;AAEA,YAAI,CAAElE,QAAQ,CAACkF,MAAX,IAAqB,CAAEtI,MAAM,CAACgE,IAAP,CAAYZ,QAAQ,CAACkF,MAArB,EAA6BhB,SAA7B,CAA3B,EAAoE;AAClEK,UAAAA,SAAS,CAAC,IAAIP,KAAJ,CAAU,oBAAoBE,SAA9B,CAAD,CAAT;AACD,SAFD,MAEO;AACL,cAAIiB,QAAQ,GAAG/I,IAAI,CAAC+B,IAAL,CAAUV,SAAV,EAAqBuC,QAAQ,CAACkF,MAAT,CAAgBhB,SAAhB,CAArB,CAAf;AACA/H,UAAAA,EAAE,CAACiJ,QAAH,CAAY5I,KAAK,CAACqH,eAAN,CAAsBsB,QAAtB,CAAZ,EAA6ChB,QAA7C,EAAuDI,SAAvD;AACD;;AACD,YAAIF,GAAJ,EACE,OAAOA,GAAG,CAACxE,IAAJ,EAAP;AACH,OAnCD;;AAqCA,UAAIwF,MAAM,GAAG;AACXC,QAAAA,OAAO,EAAE,UAAUpB,SAAV,EAAqBE,QAArB,EAA+B;AACtC,iBAAOH,QAAQ,CAACC,SAAD,EAAY,MAAZ,EAAoBE,QAApB,CAAf;AACD,SAHU;AAIXmB,QAAAA,SAAS,EAAE,UAAUrB,SAAV,EAAqBE,QAArB,EAA+B;AACxC,iBAAOH,QAAQ,CAACC,SAAD,EAAYsB,SAAZ,EAAuBpB,QAAvB,CAAf;AACD,SANU;;AAOX;AACN;AACA;AACA;AACA;AACA;AACMqB,QAAAA,gBAAgB,EAAE,UAAUvB,SAAV,EAAqB;AACrC;AACA;AACAA,UAAAA,SAAS,GAAG1H,KAAK,CAACyI,oBAAN,CAA2Bf,SAA3B,CAAZ;AACAA,UAAAA,SAAS,GAAG1H,KAAK,CAACwI,qBAAN,CAA4Bd,SAA5B,CAAZ;;AAEA,cAAI,CAAElE,QAAQ,CAACkF,MAAX,IAAqB,CAAEtI,MAAM,CAACgE,IAAP,CAAYZ,QAAQ,CAACkF,MAArB,EAA6BhB,SAA7B,CAA3B,EAAoE;AAClE,kBAAM,IAAIF,KAAJ,CAAU,oBAAoBE,SAA9B,CAAN;AACD;;AAED,cAAIiB,QAAQ,GAAG/I,IAAI,CAAC+B,IAAL,CAAUV,SAAV,EAAqBuC,QAAQ,CAACkF,MAAT,CAAgBhB,SAAhB,CAArB,CAAf;AACA,iBAAO1H,KAAK,CAACqH,eAAN,CAAsBsB,QAAtB,CAAP;AACD,SAzBU;AA0BXO,QAAAA,YAAY,EAAE,YAAW;AACvB,iBAAOjI,SAAP;AACD;AA5BU,OAAb;AA+BA,UAAIkI,SAAS,GAAG,CAAC,sBAAD,CAAhB;AAEA,UAAIC,WAAW,GACbhJ,MAAM,CAACgE,IAAP,CAAYkB,eAAZ,EAA6B9B,QAAQ,CAAC5D,IAAtC,KACA0F,eAAe,CAAC9B,QAAQ,CAAC5D,IAAV,CAAf,CAA+B4D,QAA/B,CAFF;AAIA,UAAI6F,WAAW,GAAGhJ,MAAM,CAACqF,IAAP,CAAY0D,WAAW,IAAI,EAA3B,CAAlB;AACAC,MAAAA,WAAW,CAAC9F,OAAZ,CAAoB,UAAU+F,GAAV,EAAe;AACjCH,QAAAA,SAAS,CAAC/C,IAAV,CAAe,MAAMkD,GAArB;AACD,OAFD,EA5J0C,CAgK1C;;AACAH,MAAAA,SAAS,CAAC/C,IAAV,CAAe,IAAf,EAAqBH,IAArB,EAA2B,MAA3B;AACA,UAAIsD,OAAO,GAAGJ,SAAS,CAACxH,IAAV,CAAe,EAAf,CAAd,CAlK0C,CAoK1C;AACA;AACA;AAEA;AACA;;AACA,UAAI6H,cAAc,GAAGxJ,KAAK,CAACqH,eAAN,CAAsB7D,QAAQ,CAAC5D,IAA/B,CAArB;AACA,UAAIqJ,gBAAgB,GAAGrJ,IAAI,CAACmB,OAAL,CAAakD,SAAb,EAAwBuF,cAAxB,CAAvB;AAEA,UAAIC,UAAU,GACZrH,gBAAgB,CAAC6G,gBAAD,CAAhB,GAAqCA,gBAArC,GAAwDO,cAD1D;;AAGA,UAAIE,IAAI,GAAGhK,OAAO,CAAC,IAAD,CAAP,CAAciK,gBAAd,CAA+BJ,OAA/B,EAAwC;AACjDK,QAAAA,QAAQ,EAAEH,UADuC;AAEjDI,QAAAA,aAAa,EAAE;AAFkC,OAAxC,CAAX;;AAKA,UAAIC,IAAI,GAAG,CAAClD,GAAD,EAAMiC,MAAN,CAAX;AAEAQ,MAAAA,WAAW,CAAC9F,OAAZ,CAAoB,UAAU+F,GAAV,EAAe;AACjCQ,QAAAA,IAAI,CAAC1D,IAAL,CAAUgD,WAAW,CAACE,GAAD,CAArB;AACD,OAFD;;AAIA,UAAIjH,iBAAJ,EAAuB;AACrB2D,QAAAA,KAAK,CAACI,IAAN,CAAW;AACT2D,UAAAA,EAAE,EAAE7J,OAAO,CAACsD,QAAQ,CAAC5D,IAAV,EAAgB8J,IAAhB,CADF;AAETI,UAAAA;AAFS,SAAX;AAID,OALD,MAKO;AACL;AACA5J,QAAAA,OAAO,CAACsD,QAAQ,CAAC5D,IAAV,EAAgB8J,IAAhB,CAAP,CAA6BM,KAA7B,CAAmCC,MAAnC,EAA2CH,IAA3C;AACD;AACF,KApMD;AAsMAvH,IAAAA,4BAA4B;AAE5ByD,IAAAA,KAAK,CAACzC,OAAN,CAAcgD,IAAI,IAAI;AACpBA,MAAAA,IAAI,CAACwD,EAAL,CAAQC,KAAR,CAAcC,MAAd,EAAsB1D,IAAI,CAACuD,IAA3B;AACD,KAFD;AAGD,GA9M8B,CAA/B;AAgNA,MAAII,gBAAgB,GAAGhK,OAAO,CAAC,2BAAD,EAA8B,YAAY;AACtE;AACA;AACA,WAAO0B,oBAAoB,CAACC,YAArB,CAAkCkF,MAAzC,EAAiD;AAC/C,UAAIoD,IAAI,GAAGvI,oBAAoB,CAACC,YAArB,CAAkCuI,KAAlC,EAAX;;AACAlK,MAAAA,OAAO,CAACmK,IAAR,CAAaF,IAAI,CAAC5B,KAAL,IAAc,WAA3B,EAAwC4B,IAAxC;AACD,KANqE,CAOtE;;;AACAvI,IAAAA,oBAAoB,CAACC,YAArB,GAAoC,IAApC;AACD,GAT6B,CAA9B;AAWA,MAAIyI,OAAO,GAAGpK,OAAO,CAAC,YAAD,EAAe,YAAY;AAC9C;AACA;AACA,QAAIqK,KAAK,GAAG,EAAZ;AACA,QAAIC,UAAJ;;AACA,QAAI,UAAUP,MAAd,EAAsB;AACpBM,MAAAA,KAAK,CAACnE,IAAN,CAAWqE,IAAX;AACAD,MAAAA,UAAU,GAAGC,IAAb;AACD;;AACD,QAAI,OAAOzC,OAAP,KAAmB,WAAvB,EAAoC;AAClC3H,MAAAA,MAAM,CAACqF,IAAP,CAAYsC,OAAZ,EAAqBzE,OAArB,CAA6B,UAAUmB,IAAV,EAAgB;AAC3C,cAAM;AAAE+F,UAAAA;AAAF,YAAWzC,OAAO,CAACtD,IAAD,CAAxB;;AACA,YAAI,OAAO+F,IAAP,KAAgB,UAAhB,IACAA,IAAI,KAAKD,UADb,EACyB;AACvBD,UAAAA,KAAK,CAACnE,IAAN,CAAWqE,IAAX;AACD;AACF,OAND;AAOD;;AACD,QAAI,CAAEF,KAAK,CAACxD,MAAZ,EAAoB;AAClBtG,MAAAA,OAAO,CAACE,MAAR,CAAeC,KAAf,CAAqB,mCAArB;AACAH,MAAAA,OAAO,CAACI,IAAR,CAAa,CAAb;AACD;;AACD,QAAI0J,KAAK,CAACxD,MAAN,GAAe,CAAnB,EAAsB;AACpBtG,MAAAA,OAAO,CAACE,MAAR,CAAeC,KAAf,CAAqB,8CAArB;AACAH,MAAAA,OAAO,CAACI,IAAR,CAAa,CAAb;AACD;;AACD,QAAI6J,QAAQ,GAAGH,KAAK,CAAC,CAAD,CAAL,CAASnG,IAAT,CAAc,EAAd,EAAkB3D,OAAO,CAACO,IAAR,CAAa2J,KAAb,CAAmB,CAAnB,CAAlB,CAAf,CA1B8C,CA2B9C;;AACA,QAAID,QAAQ,KAAK,QAAjB,EACEjK,OAAO,CAACI,IAAR,CAAa6J,QAAb;;AAEF,QAAIjK,OAAO,CAACwB,GAAR,CAAY2I,iBAAhB,EAAmC;AACjC5F,MAAAA,uBAAuB,CAACvE,OAAO,CAACwB,GAAR,CAAY2I,iBAAb,CAAvB;AACD;AACF,GAlCoB,CAArB;AAoCAnL,EAAAA,KAAK,CAAC,YAAY;AAChBS,IAAAA,OAAO,CAAC2K,GAAR,CAAY,gBAAZ,EAA8B,YAAY;AACxC9E,MAAAA,iBAAiB;AACjBmE,MAAAA,gBAAgB;AAChBI,MAAAA,OAAO;AACR,KAJD;AAKD,GANI,CAAL,CAMGO,GANH","sourcesContent":["var Fiber = require(\"fibers\");\nvar fs = require(\"fs\");\nvar path = require(\"path\");\nvar Future = require(\"fibers/future\");\nvar sourcemap_support = require('source-map-support');\n\nvar bootUtils = require('./boot-utils.js');\nvar files = require('./mini-files');\nvar npmRequire = require('./npm-require.js').require;\nvar Profile = require('./profile').Profile;\n\n// This code is duplicated in tools/main.js.\nvar MIN_NODE_VERSION = 'v14.0.0';\n\nvar hasOwn = Object.prototype.hasOwnProperty;\n\nif (require('semver').lt(process.version, MIN_NODE_VERSION)) {\n process.stderr.write(\n 'Meteor requires Node ' + MIN_NODE_VERSION + ' or later.\\n');\n process.exit(1);\n}\n\n// read our control files\nvar serverJsonPath = path.resolve(process.argv[2]);\nvar serverDir = path.dirname(serverJsonPath);\nvar serverJson = require(\"./server-json.js\");\nvar configJson =\n JSON.parse(fs.readFileSync(path.resolve(serverDir, 'config.json'), 'utf8'));\n\nvar programsDir = path.dirname(serverDir);\nvar buildDir = path.dirname(programsDir);\nvar starJson = JSON.parse(fs.readFileSync(path.join(buildDir, \"star.json\")));\n\n// Set up environment\n__meteor_bootstrap__ = {\n startupHooks: [],\n serverDir: serverDir,\n configJson: configJson\n};\n\n__meteor_runtime_config__ = {\n meteorRelease: configJson.meteorRelease,\n gitCommitHash: starJson.gitCommitHash\n};\n\nif (!process.env.APP_ID) {\n process.env.APP_ID = configJson.appId;\n}\n\n// Map from load path to its source map.\nvar parsedSourceMaps = {};\n\nconst meteorDebugFuture =\n process.env.METEOR_INSPECT_BRK ? new Future : null;\n\nfunction maybeWaitForDebuggerToAttach() {\n if (meteorDebugFuture) {\n const { pause } = require(\"./debug\");\n const pauseThresholdMs = 50;\n const pollIntervalMs = 500;\n const waitStartTimeMs = +new Date;\n const waitLimitMinutes = 5;\n const waitLimitMs = waitLimitMinutes * 60 * 1000;\n\n // This setTimeout not only waits for the debugger to attach, but also\n // keeps the process alive by preventing the event loop from running\n // empty while the main Fiber yields.\n setTimeout(function poll() {\n const pauseStartTimeMs = +new Date;\n\n if (pauseStartTimeMs - waitStartTimeMs > waitLimitMs) {\n console.error(\n `Debugger did not attach after ${waitLimitMinutes} minutes; continuing.`\n );\n\n meteorDebugFuture.return();\n\n } else {\n // This pause function contains a debugger keyword that will only\n // act as a breakpoint once a debugging client has attached to the\n // process, so we keep calling pause() until the first time it\n // takes at least pauseThresholdMs, which indicates that a client\n // must be attached. The only other signal of a client attaching\n // is an unreliable \"Debugger attached\" message printed to stderr\n // by native C++ code, which requires the parent process to listen\n // for that message and then process.send a message back to this\n // process. By comparison, this polling strategy tells us exactly\n // what we want to know: \"Is the debugger keyword enabled yet?\"\n pause();\n\n if (new Date - pauseStartTimeMs > pauseThresholdMs) {\n // If the pause() function call took a meaningful amount of\n // time, we can conclude the debugger keyword must be active,\n // which means a debugging client must be connected, which means\n // we should stop polling and let the main Fiber continue.\n meteorDebugFuture.return();\n\n } else {\n // If the pause() function call didn't take a meaningful amount\n // of time to execute, then the debugger keyword must not have\n // caused a pause, which means a debugging client must not be\n // connected, which means we should keep polling.\n setTimeout(poll, pollIntervalMs);\n }\n }\n }, pollIntervalMs);\n\n // The polling will continue while we wait here.\n meteorDebugFuture.wait();\n }\n}\n\n// Read all the source maps into memory once.\nserverJson.load.forEach(function (fileInfo) {\n if (fileInfo.sourceMap) {\n var rawSourceMap = fs.readFileSync(\n path.resolve(serverDir, fileInfo.sourceMap), 'utf8');\n // Parse the source map only once, not each time it's needed. Also remove\n // the anti-XSSI header if it's there.\n var parsedSourceMap = JSON.parse(rawSourceMap.replace(/^\\)\\]\\}'/, ''));\n // source-map-support doesn't ever look at the sourcesContent field, so\n // there's no point in keeping it in memory.\n delete parsedSourceMap.sourcesContent;\n var url;\n if (fileInfo.sourceMapRoot) {\n // Add the specified root to any root that may be in the file.\n parsedSourceMap.sourceRoot = path.join(\n fileInfo.sourceMapRoot, parsedSourceMap.sourceRoot || '');\n }\n parsedSourceMaps[path.resolve(__dirname, fileInfo.path)] = parsedSourceMap;\n }\n});\n\nfunction retrieveSourceMap(pathForSourceMap) {\n if (hasOwn.call(parsedSourceMaps, pathForSourceMap)) {\n return { map: parsedSourceMaps[pathForSourceMap] };\n }\n return null;\n}\n\nvar origWrapper = sourcemap_support.wrapCallSite;\nvar wrapCallSite = function (frame) {\n var frame = origWrapper(frame);\n var wrapGetter = function (name) {\n var origGetter = frame[name];\n frame[name] = function (arg) {\n // replace a custom location domain that we set for better UX in Chrome\n // DevTools (separate domain group) in source maps.\n var source = origGetter(arg);\n if (! source)\n return source;\n return source.replace(/(^|\\()meteor:\\/\\/..app\\//, '$1');\n };\n };\n wrapGetter('getScriptNameOrSourceURL');\n wrapGetter('getEvalOrigin');\n\n return frame;\n};\nsourcemap_support.install({\n // Use the source maps specified in program.json instead of parsing source\n // code for them.\n retrieveSourceMap: retrieveSourceMap,\n // For now, don't fix the source line in uncaught exceptions, because we\n // haven't fixed handleUncaughtExceptions in source-map-support to properly\n // locate the source files.\n handleUncaughtExceptions: false,\n wrapCallSite: wrapCallSite\n});\n\n// As a replacement to the old keepalives mechanism, check for a running\n// parent every few seconds. Exit if the parent is not running.\n//\n// Two caveats to this strategy:\n// * Doesn't catch the case where the parent is CPU-hogging (but maybe we\n// don't want to catch that case anyway, since the bundler not yielding\n// is what caused #2536).\n// * Could be fooled by pid re-use, i.e. if another process comes up and\n// takes the parent process's place before the child process dies.\nvar startCheckForLiveParent = function (parentPid) {\n if (parentPid) {\n if (! bootUtils.validPid(parentPid)) {\n console.error(\"METEOR_PARENT_PID must be a valid process ID.\");\n process.exit(1);\n }\n\n setInterval(function () {\n try {\n process.kill(parentPid, 0);\n } catch (err) {\n console.error(\"Parent process is dead! Exiting.\");\n process.exit(1);\n }\n }, 3000);\n }\n};\n\nvar specialArgPaths = {\n \"packages/modules-runtime.js\": function () {\n return {\n npmRequire: npmRequire,\n Profile: Profile\n };\n },\n\n \"packages/dynamic-import.js\": function (file) {\n var dynamicImportInfo = {};\n var clientArchs = configJson.clientArchs ||\n Object.keys(configJson.clientPaths);\n\n clientArchs.forEach(function (arch) {\n dynamicImportInfo[arch] = {\n dynamicRoot: path.join(programsDir, arch, \"dynamic\")\n };\n });\n\n dynamicImportInfo.server = {\n dynamicRoot: path.join(serverDir, \"dynamic\")\n };\n\n return { dynamicImportInfo: dynamicImportInfo };\n }\n};\n\nvar loadServerBundles = Profile(\"Load server bundles\", function () {\n var infos = [];\n\n serverJson.load.forEach(function (fileInfo) {\n var code = fs.readFileSync(path.resolve(serverDir, fileInfo.path));\n var nonLocalNodeModulesPaths = [];\n\n function addNodeModulesPath(path) {\n nonLocalNodeModulesPaths.push(\n files.pathResolve(serverDir, path)\n );\n }\n\n if (typeof fileInfo.node_modules === \"string\") {\n addNodeModulesPath(fileInfo.node_modules);\n } else if (fileInfo.node_modules) {\n Object.keys(fileInfo.node_modules).forEach(function (path) {\n const info = fileInfo.node_modules[path];\n if (! info.local) {\n addNodeModulesPath(path);\n }\n });\n }\n\n // Add dev_bundle/server-lib/node_modules.\n addNodeModulesPath(\"node_modules\");\n\n function statOrNull(path) {\n try {\n return fs.statSync(path);\n } catch (e) {\n return null;\n }\n }\n\n var Npm = {\n /**\n * @summary Require a package that was specified using\n * `Npm.depends()`.\n * @param {String} name The name of the package to require.\n * @locus Server\n * @memberOf Npm\n */\n require: Profile(function getBucketName(name) {\n return \"Npm.require(\" + JSON.stringify(name) + \")\";\n }, function (name, error) {\n if (nonLocalNodeModulesPaths.length > 0) {\n var fullPath;\n\n // Replace all backslashes with forward slashes, just in case\n // someone passes a Windows-y module identifier.\n name = name.split(\"\\\\\").join(\"/\");\n\n nonLocalNodeModulesPaths.some(function (nodeModuleBase) {\n var packageBase = files.convertToOSPath(files.pathResolve(\n nodeModuleBase,\n name.split(\"/\", 1)[0]\n ));\n\n if (statOrNull(packageBase)) {\n return fullPath = files.convertToOSPath(\n files.pathResolve(nodeModuleBase, name)\n );\n }\n });\n\n if (fullPath) {\n return require(fullPath);\n }\n }\n\n var resolved = require.resolve(name);\n if (resolved === name && ! path.isAbsolute(resolved)) {\n // If require.resolve(id) === id and id is not an absolute\n // identifier, it must be a built-in module like fs or http.\n return require(resolved);\n }\n\n throw error || new Error(\n \"Cannot find module \" + JSON.stringify(name)\n );\n })\n };\n\n var getAsset = function (assetPath, encoding, callback) {\n var fut;\n if (! callback) {\n fut = new Future();\n callback = fut.resolver();\n }\n // This assumes that we've already loaded the meteor package, so meteor\n // itself can't call Assets.get*. (We could change this function so that\n // it doesn't call bindEnvironment if you don't pass a callback if we need\n // to.)\n var _callback = Package.meteor.Meteor.bindEnvironment(function (err, result) {\n if (result && ! encoding)\n // Sadly, this copies in Node 0.10.\n result = new Uint8Array(result);\n callback(err, result);\n }, function (e) {\n console.log(\"Exception in callback of getAsset\", e.stack);\n });\n\n // Convert a DOS-style path to Unix-style in case the application code was\n // written on Windows.\n assetPath = files.convertToStandardPath(assetPath);\n\n // Unicode normalize the asset path to prevent string mismatches when\n // using this string elsewhere.\n assetPath = files.unicodeNormalizePath(assetPath);\n\n if (! fileInfo.assets || ! hasOwn.call(fileInfo.assets, assetPath)) {\n _callback(new Error(\"Unknown asset: \" + assetPath));\n } else {\n var filePath = path.join(serverDir, fileInfo.assets[assetPath]);\n fs.readFile(files.convertToOSPath(filePath), encoding, _callback);\n }\n if (fut)\n return fut.wait();\n };\n\n var Assets = {\n getText: function (assetPath, callback) {\n return getAsset(assetPath, \"utf8\", callback);\n },\n getBinary: function (assetPath, callback) {\n return getAsset(assetPath, undefined, callback);\n },\n /**\n * @summary Get the absolute path to the static server asset. Note that assets are read-only.\n * @locus Server [Not in build plugins]\n * @memberOf Assets\n * @param {String} assetPath The path of the asset, relative to the application's `private` subdirectory.\n */\n absoluteFilePath: function (assetPath) {\n // Unicode normalize the asset path to prevent string mismatches when\n // using this string elsewhere.\n assetPath = files.unicodeNormalizePath(assetPath);\n assetPath = files.convertToStandardPath(assetPath);\n\n if (! fileInfo.assets || ! hasOwn.call(fileInfo.assets, assetPath)) {\n throw new Error(\"Unknown asset: \" + assetPath);\n }\n\n var filePath = path.join(serverDir, fileInfo.assets[assetPath]);\n return files.convertToOSPath(filePath);\n },\n getServerDir: function() {\n return serverDir;\n }\n };\n\n var wrapParts = [\"(function(Npm,Assets\"];\n\n var specialArgs =\n hasOwn.call(specialArgPaths, fileInfo.path) &&\n specialArgPaths[fileInfo.path](fileInfo);\n\n var specialKeys = Object.keys(specialArgs || {});\n specialKeys.forEach(function (key) {\n wrapParts.push(\",\" + key);\n });\n\n // \\n is necessary in case final line is a //-comment\n wrapParts.push(\"){\", code, \"\\n})\");\n var wrapped = wrapParts.join(\"\");\n\n // It is safer to use the absolute path when source map is present as\n // different tooling, such as node-inspector, can get confused on relative\n // urls.\n\n // fileInfo.path is a standard path, convert it to OS path to join with\n // __dirname\n var fileInfoOSPath = files.convertToOSPath(fileInfo.path);\n var absoluteFilePath = path.resolve(__dirname, fileInfoOSPath);\n\n var scriptPath =\n parsedSourceMaps[absoluteFilePath] ? absoluteFilePath : fileInfoOSPath;\n\n var func = require('vm').runInThisContext(wrapped, {\n filename: scriptPath,\n displayErrors: true\n });\n\n var args = [Npm, Assets];\n\n specialKeys.forEach(function (key) {\n args.push(specialArgs[key]);\n });\n\n if (meteorDebugFuture) {\n infos.push({\n fn: Profile(fileInfo.path, func),\n args\n });\n } else {\n // Allows us to use code-coverage if the debugger is not enabled\n Profile(fileInfo.path, func).apply(global, args);\n }\n });\n\n maybeWaitForDebuggerToAttach();\n\n infos.forEach(info => {\n info.fn.apply(global, info.args);\n });\n});\n\nvar callStartupHooks = Profile(\"Call Meteor.startup hooks\", function () {\n // run the user startup hooks. other calls to startup() during this can still\n // add hooks to the end.\n while (__meteor_bootstrap__.startupHooks.length) {\n var hook = __meteor_bootstrap__.startupHooks.shift();\n Profile.time(hook.stack || \"(unknown)\", hook);\n }\n // Setting this to null tells Meteor.startup to call hooks immediately.\n __meteor_bootstrap__.startupHooks = null;\n});\n\nvar runMain = Profile(\"Run main()\", function () {\n // find and run main()\n // XXX hack. we should know the package that contains main.\n var mains = [];\n var globalMain;\n if ('main' in global) {\n mains.push(main);\n globalMain = main;\n }\n if (typeof Package !== \"undefined\") {\n Object.keys(Package).forEach(function (name) {\n const { main } = Package[name];\n if (typeof main === \"function\" &&\n main !== globalMain) {\n mains.push(main);\n }\n });\n }\n if (! mains.length) {\n process.stderr.write(\"Program has no main() function.\\n\");\n process.exit(1);\n }\n if (mains.length > 1) {\n process.stderr.write(\"Program has more than one main() function?\\n\");\n process.exit(1);\n }\n var exitCode = mains[0].call({}, process.argv.slice(3));\n // XXX hack, needs a better way to keep alive\n if (exitCode !== 'DAEMON')\n process.exit(exitCode);\n\n if (process.env.METEOR_PARENT_PID) {\n startCheckForLiveParent(process.env.METEOR_PARENT_PID);\n }\n});\n\nFiber(function () {\n Profile.run(\"Server startup\", function () {\n loadServerBundles();\n callStartupHooks();\n runMain();\n });\n}).run();\n"],"file":"tools/static-assets/server/boot.js.map"}