@northflank/cli 0.10.11 → 0.10.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-helpers.js +1 -1
- package/dist/cli.js +1 -1
- package/dist/context/contextCommands.js +1 -1
- package/dist/copy/index.js +1 -1
- package/dist/defaults.js +1 -1
- package/dist/exec/index.js +1 -1
- package/dist/formatting/command-overview.js +1 -1
- package/dist/formatting/console-format-helpers.js +1 -1
- package/dist/formatting/terminal-chart.js +1 -1
- package/dist/inquirer-helper.js +1 -1
- package/dist/login/browser-login.js +1 -1
- package/dist/logs/index.js +1 -1
- package/dist/logs/log-formatter.js +1 -1
- package/dist/metrics/index.js +1 -1
- package/dist/pagination/inquirer-pagination-prompt.js +1 -1
- package/dist/port-forward/index.js +1 -1
- package/dist/utils.js +1 -1
- package/package.json +1 -1
package/dist/exec/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a5Z=a5j;(function(X,j){const t=a5j,V=X();while(!![]){try{const H=parseInt(t(0x182))/0x1*(-parseInt(t(0x15e))/0x2)+-parseInt(t(0x193))/0x3*(parseInt(t(0x16d))/0x4)+parseInt(t(0x1bc))/0x5+parseInt(t(0x1b8))/0x6*(parseInt(t(0x1a1))/0x7)+-parseInt(t(0x1a0))/0x8+parseInt(t(0x17b))/0x9*(-parseInt(t(0x190))/0xa)+parseInt(t(0x1a2))/0xb;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a5X,0x86bc8));import{ApiClient}from'@northflank/js-client';import a5V from'chalk';function a5X(){const Y=['\x20on\x20instance\x20','\x0a\x20\x20Single\x20command,\x20no\x20shell:\x20\x20\x20\x20\x20northflank\x20exec\x20','getCurrentServiceName','slice','exit','--project\x20--projectId\x20[NAME]','stderr','option','Run\x20command\x20with\x20this\x20group','resizeTerminal','Exec\x20','askForAddon','Received\x20Ctrl+D\x20twice,\x20exiting\x20shell\x20forcefully.','action','--user\x20[USER]','getTerminalSize','message','handleShellSession','columns','Id\x20[NAME]','54NquIjp','--container\x20--containerName\x20[NAME]','command-exec','containerName','4259465jDaEVT','Success','execJobSession','stdout','sequence','Command\x20exec\x20for\x20the\x20specified\x20','\x27Ctrl+D\x27','14vaegtQ','service','with\x20command\x20\x27','resize','askForProject','stdErr','execStartLog','--shell-cmd\x20[SHELL-CMD]','\x20to\x20exec\x20into','addon','instanceName','toUpperCase','Command\x20completed\x20successfully,\x20exit\x20code:\x20','shell\x20command\x20','waitForCommandResult','120GipuKs','keypress','exec','error','Command\x20didn\x27t\x20complete\x20successfully,\x20status:\x20','with\x20group:','with\x20shell\x20session','Run\x20command\x20with\x20this\x20user','isTTY','execCmd','emitKeypressEvents','Run\x20command\x20with\x20shell\x20(e.g.\x20\x27bash\x27,\x27sh\x27).\x0aIf\x20not\x20set\x20and\x20no\x20command\x20is\x20provided,\x20several\x20standard\x20shells\x20will\x20be\x20attempted.\x20If\x20not\x20set\x20and\x20a\x20command\x20is\x20provided,\x20the\x20command\x20will\x20run\x20without\x20shell.','\x20--shell-cmd\x20\x27sh\x27','getStandardExecCommand','18exsHkG','stdOut','\x20command\x20exec:\x20','--cmd\x20--command\x20[COMMAND]','execAddonSession','setRawMode','alias','103596OWkRFS','Command\x20execution\x20(exec)\x20for\x20Northflank\x20services\x20and\x20jobs.','Don\x27t\x20use\x20context\x20default\x20values,\x20explicitly\x20use\x20options\x20or\x20ask.','--noDefaults','exitCode','getCurrentProjectName','\x20in\x20project\x20','Instance\x20to\x20exec\x20into\x20',',\x20details:\x20','stdin','name','description','\x20--cmd\x20\x27\x22ls\x20-l\x20/usr\x22\x27\x20--shell-cmd\x20\x27bash\x20-c\x27\x0a\x20\x20Shell\x20session,\x20custom\x20shell:\x20\x20northflank\x20exec\x20','charAt','3221120YcIVpH','none','\x20--cmd\x20\x27date\x27\x0a\x20\x20Single\x20command,\x20custom\x20shell:\x20northflank\x20exec\x20','78603afhqoM','(random\x20instance\x20will\x20be\x20chosen\x20if\x20not\x20specified)',',\x20exit\x20code:\x20','job','addCommand','pipe','rows','askForService','bold','apiClient','join','filter','--instance\x20--instanceName\x20[NAME]','7578880ZToytM','51989bdvxEb','30095230HnJeWc','Error\x20occured\x20during\x20'];a5X=function(){return Y;};return a5X();}import{assertContextExisting,customUserAgent,error,getCommand,success,warning}from'../utils.js';function a5j(X,j){const V=a5X();return a5j=function(H,O){H=H-0x15b;let F=V[H];return F;},a5j(X,j);}import{InquirerHelper}from'../inquirer-helper.js';import a5H from'readline';export class CliExec{[a5Z(0x176)];['apiClient'];[a5Z(0x17a)]=X=>{const w=a5Z,j=getCommand(!![])[w(0x18c)](X)[w(0x18d)](w(0x15c)+X+(X==='addon'?'(only\x20applicable\x20for\x20custom\x20addon\x20types)\x20':'')+'.\x0aExamples:\x0a\x20\x20Shell\x20session:\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20northflank\x20exec\x20'+X+w(0x1a5)+X+w(0x192)+X+w(0x18e)+X+w(0x179))[w(0x1ab)](w(0x1a9),'Project\x20for\x20exec')[w(0x1ab)]('--'+X+'\x20--'+X+w(0x1b7),X[w(0x18f)](0x0)[w(0x169)]()+X[w(0x1a7)](0x1)+w(0x166))[w(0x1ab)](w(0x19f),w(0x189)+(X===w(0x167)?'(required)\x20':w(0x194)))['option'](w(0x165),w(0x178))['option'](w(0x185),w(0x184),![])[w(0x1ab)](w(0x17e),'Command\x20to\x20execute.\x0aIf\x20--shell-cmd\x20option\x20such\x20as\x20\x27bash\x20-c\x27\x20is\x20present,\x20it\x20will\x20run\x20in\x20the\x20specified\x20shell.\x20Otherwise\x20the\x20command\x20will\x20run\x20without\x20a\x20shell.\x20If\x20no\x20command\x20is\x20provided,\x20an\x20interactive\x20session\x20with\x20stdin\x20and\x20tty\x20is\x20opened.');return X!==w(0x167)&&j['option'](w(0x1b2),w(0x174))[w(0x1ab)]('--group\x20[GROUP]',w(0x1ac)),X===w(0x167)&&j[w(0x1ab)](w(0x1b9),'Container\x20within\x20instance\x20to\x20exec\x20into\x20(if\x20not\x20specified,\x20first\x20container\x20of\x20the\x20instance\x20will\x20be\x20selected)'),j;};constructor(X,j){const N=a5Z;this[N(0x19c)]=new ApiClient(X,{'throwErrorOnHttpErrorCode':!![],'customUserAgent':customUserAgent,'agent':j});const V=new InquirerHelper(this[N(0x19c)]);this[N(0x176)]=getCommand()[N(0x18c)](N(0x1ba))[N(0x181)](N(0x16f))[N(0x18d)](N(0x183));const H=this['getStandardExecCommand']('service')[N(0x1b1)](async h=>{const p=N,{noDefaults:P,projectId:o,serviceId:C,instanceName:B}=h,{shellCmd:s,user:S,group:y,command:A,quiet:l}=h;assertContextExisting(this['apiClient']);try{const T=P?undefined:X[p(0x187)](),W=o||T||await V[p(0x162)](),v=P?undefined:X[p(0x1a6)](),G=C||v||await V[p(0x19a)](W)(),d=s??(A!==undefined?p(0x191):undefined),x=process[p(0x1bf)][p(0x1b6)],M=process['stdout']['rows'],g={'projectId':W,'serviceId':G},J={'instanceName':B,'command':A,'shell':d,'user':S,'group':y,'ttyColumns':x,'ttyRows':M},b=await this['apiClient']['exec']['execServiceSession'](g,J,E=>{const m=p;this['execStartLog'](m(0x15f),G,W,s,S,y,A,l,E[m(0x168)],E[m(0x1bb)]);});await this[p(0x1b5)](b,p(0x15f),l);}catch(E){error(''+E[p(0x1b4)]);}finally{process[p(0x1a8)]();}}),O=this[N(0x17a)](N(0x196))[N(0x1b1)](async h=>{const k=N,{projectId:P,jobId:o,instanceName:C}=h,{noDefaults:B,shellCmd:s,user:S,group:y,command:A,quiet:l}=h;assertContextExisting(this[k(0x19c)]);try{const T=B?undefined:X['getCurrentProjectName'](),W=P||T||await V[k(0x162)](),v=o||await V['askForJob'](W)(),{rows:G,columns:d}=this[k(0x1b3)](),x={'projectId':W,'jobId':v},M={'instanceName':C,'command':A,'shell':s,'user':S,'group':y,'ttyColumns':d,'ttyRows':G},g=await this[k(0x19c)]['exec'][k(0x1be)](x,M,J=>{const I=k;this['execStartLog']('job',v,W,s,S,y,A,l,J[I(0x168)],J[I(0x1bb)]);});await this[k(0x1b5)](g,'job',l);}catch(J){error(''+J[k(0x1b4)]);}finally{process['exit']();}}),F=this[N(0x17a)](N(0x167))['action'](async h=>{const K=N,{projectId:P,addonId:o,instanceName:C,containerName:B}=h,{noDefaults:s,shellCmd:S,user:y,group:A,command:l,quiet:T}=h;assertContextExisting(this[K(0x19c)]);try{const W=s?undefined:X[K(0x187)](),v=P||W||await V[K(0x162)](),G=o||await V[K(0x1af)](v)(),{rows:d,columns:x}=this[K(0x1b3)](),M=S??(l!==undefined?K(0x191):undefined),g={'projectId':v,'addonId':G},J={'instanceName':C,'containerName':B,'command':l,'shell':M,'user':y,'group':A,'ttyColumns':x,'ttyRows':d},b=await this['apiClient'][K(0x16f)][K(0x17f)](g,J,E=>{const L=K;this[L(0x164)]('addon',G,v,M,y,A,l,T,E['instanceName'],E[L(0x1bb)]);});await this['handleShellSession'](b,K(0x167),T);}catch(E){error(''+E[K(0x1b4)]);}finally{process[K(0x1a8)]();}});this['execCmd']['addCommand'](H),this[N(0x176)]['addCommand'](O),this[N(0x176)][N(0x197)](F);}[a5Z(0x1b3)]=()=>({'columns':process[a5Z(0x1bf)][a5Z(0x1b6)],'rows':process[a5Z(0x1bf)][a5Z(0x199)]});[a5Z(0x164)]=(X,j,V,H,O,F,h,P,o,C)=>{const a=a5Z;if(P===!![])return;const B=H==='none',s=o!==undefined?a(0x1a4)+a5V[a(0x19b)](o):'',S=C!==undefined?'\x20in\x20container\x20'+a5V['bold'](C):'',y=B?'without\x20shell':H===undefined?a(0x173):a(0x16b)+a5V['greenBright'](H),e=O?'with\x20user:'+O:'',A=F?a(0x172)+F:'',l=h?a(0x160)+a5V['greenBright'](h)+'\x27':'',T=[l,y,e,A][a(0x19e)](v=>v!=='')[a(0x19d)]('\x20'),W='(exit\x20with\x20two\x20quick\x20'+a5V[a(0x19b)](a(0x15d))+')';console['log'](a(0x1ae)+X+'\x20'+a5V[a(0x19b)](j)+a(0x188)+a5V[a(0x19b)](V)+s+S+'\x20'+T+'\x20'+W);};['handleShellSession']=async(X,j,V=![])=>{const r=a5Z;let H=![];try{process[r(0x18b)][r(0x175)]&&(a5H[r(0x177)](process[r(0x18b)]),process[r(0x18b)][r(0x180)](!![]),process[r(0x1bf)]['on'](r(0x161),()=>{const R=r;X[R(0x1ad)](this[R(0x1b3)]());}),process[r(0x18b)]['on'](r(0x16e),(F,h)=>{const n=r;h[n(0x15b)]==='\x04'&&(H?(process[n(0x18b)][n(0x180)](![]),warning(n(0x1b0)),process['exit']()):(H=!![],setTimeout(()=>H=![],0x190)));}));process[r(0x18b)]['pipe'](X['stdIn']),X[r(0x163)][r(0x198)](process[r(0x1aa)]),X[r(0x17c)][r(0x198)](process['stdout']),X['on'](r(0x170),F=>{const D=r;error(D(0x1a3)+j+D(0x17d)+(F[D(0x1b4)]??F)),process['stdin'][D(0x175)]&&process['stdin'][D(0x180)](![]),process['exit'](-0x1);});const O=await X[r(0x16c)]();if(V!==!![]){const F=O?.['status']??'Unknown',h=O?.[r(0x186)]??-0x1,P=O?.[r(0x1b4)]?r(0x18a)+O['message']:'';F===r(0x1bd)?success(r(0x16a)+h):warning(r(0x171)+F+r(0x195)+h+P);}return O;}finally{process[r(0x18b)][r(0x175)]&&process[r(0x18b)][r(0x180)](![]);}};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(X,j){const E=a6j,V=X();while(!![]){try{const H=parseInt(E(0x78))/0x1+-parseInt(E(0x6d))/0x2*(parseInt(E(0x83))/0x3)+parseInt(E(0x77))/0x4+parseInt(E(0x88))/0x5+parseInt(E(0x67))/0x6*(parseInt(E(0x6b))/0x7)+-parseInt(E(0x7f))/0x8*(-parseInt(E(0x81))/0x9)+-parseInt(E(0x89))/0xa;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a6X,0xe62aa));function a6j(X,j){const V=a6X();return a6j=function(H,O){H=H-0x67;let F=V[H];return F;},a6j(X,j);}import a6V from'chalk';import{getCommand,warning}from'../utils.js';function a6X(){const k=['Show\x20only\x20commands\x20including\x20the\x20filter\x20word','flat','length','Print\x20command\x20descriptions','aliases','forEach','green','find','--filter\x20<filter>','6436368nLgSyh','1119854JOAEGt','description','Only\x20display\x20tree\x20of\x20this\x20subcommand.\x20Example:\x20\x27northflank\x20command-overview\x20list\x27','some','name','No\x20subcommand\x20\x27','Prints\x20a\x20tree\x20view\x20of\x20all\x20available\x20commands','8OchyQA','option','15445737SORIor','join','201eAzOdg','bold','slice','commands','--verbose','212675QQFHpg','31565630WAVYEI','map','opts','7542624pmrKtg','\x27\x20found.\x20Available\x20subcommands:\x20','every','command-overview','7dmawrL','keys','49118neAjWg'];a6X=function(){return k;};return a6X();}export function getCommandOverview(X){const t=a6j;return getCommand()['name'](t(0x6a))[t(0x79)](t(0x7e))['argument']('[subcommand]',t(0x7a))[t(0x80)](t(0x87),t(0x71))[t(0x80)](t(0x76),t(0x6e))['action'](async(j,V,H)=>{const m=t,{verbose:O,filter:F}=V,h=(C,B=[])=>{const Z=a6j;if(C[Z(0x86)][Z(0x70)]>0x0)return[C[Z(0x7c)](),...C[Z(0x72)](),...C['commands'][Z(0x8a)](s=>h(s,B))[Z(0x6f)]()];return[...B,C['name'](),...C[Z(0x72)]()];};function P(C,B){const w=a6j;if(Math['abs'](C[w(0x70)]-B[w(0x70)])>0x2)return![];const s=C['length']>=B[w(0x70)]?C:B,S=C[w(0x70)]<B[w(0x70)]?C:B;let y=0x0;for(let e=0x0;e<s[w(0x70)];e++){if(s[e]!==S[e])y++;if(y>0x1)return![];}return!![];}function o(C,B){const N=a6j,s=(g,J=!![])=>J?a6V[N(0x84)][N(0x74)](g[N(0x7c)]()):g['name'](),S=B[N(0x70)]===0x0,y=F===undefined||h(C)[N(0x7b)](g=>P(g,F)),e=F===undefined||[C[N(0x7c)](),...C[N(0x72)]()][N(0x7b)](g=>P(g,F))||y,A=C[N(0x86)];let l='';const T=A[N(0x70)]===0x0,W=T||Object[N(0x6c)](C?.[N(0x8b)]())?.[N(0x70)]>0x0;!S&&(l=A&&!T?'┬\x20':'─\x20');const v=O&&W&&C[N(0x79)]()?':\x20'+C[N(0x79)]():'';e&&console['log'](''+B+l+s(C,W)+v);let G=B;if(!S){const g=B[N(0x85)](-0x2)==='└─';G=B[N(0x85)](0x0,-0x2)+(g?'\x20\x20':'│\x20');}const d=G+'├─',x=G+'└─',M=A[N(0x69)](J=>J['commands'][N(0x70)]===0x0);M&&!T&&!O?e&&console['log'](x+'\x20'+A[N(0x8a)](J=>s(J))[N(0x82)](',\x20')):A[N(0x73)]((J,b)=>{const p=N;o(J,A[p(0x70)]-0x1===b?x:d);});}if(j){const C=X[m(0x86)][m(0x75)](B=>B[m(0x7c)]()===j);C===undefined?warning(m(0x7d)+j+m(0x68)+X[m(0x86)][m(0x8a)](B=>B[m(0x7c)]())[m(0x82)](',\x20')):o(C,'');}else o(X,'');});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(X,j){const e=a7j,V=X();while(!![]){try{const H=-parseInt(e(0x120))/0x1+-parseInt(e(0x101))/0x2*(parseInt(e(0x117))/0x3)+parseInt(e(0x106))/0x4+parseInt(e(0x104))/0x5*(-parseInt(e(0x116))/0x6)+parseInt(e(0x109))/0x7*(-parseInt(e(0x122))/0x8)+parseInt(e(0x111))/0x9*(-parseInt(e(0x10a))/0xa)+parseInt(e(0x118))/0xb;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a7X,0x8b5e0));import a7V from'chalk';import*as a7H from'util';import a7O from'js-yaml';import a7F from'columnify';import{set,isFinite,clone,isEmpty,isArrayLike,isObjectLike}from'lodash-es';function a7j(X,j){const V=a7X();return a7j=function(H,O){H=H-0xff;let F=V[H];return F;},a7j(X,j);}export function printAsTable(X,j,V,H=![],O=0x0){const A=a7j;!H&&console[A(0x110)](''+a7V['bold'](j));function F(P){const l=A;return P===l(0x115)?P:P[l(0x105)](l(0x115),'');}function h(P,o){const W=A;function C(s){const T=a7j,S=new Date(s);return S[T(0x112)]()+'/'+S['getMonth']()+'/'+S[T(0x11e)]()+'\x0a'+S[T(0x102)]()+':'+S[T(0x10d)]()+':'+S[T(0x114)]();}const B=['createdat',W(0x11f)];if(B[W(0x11a)](o[W(0x11c)]())&&isFinite(P)&&P[W(0x10b)]()[W(0x113)]===0xd)return C(Number(P));if(typeof P===W(0x100)){if(o!==W(0x115)&&o['includes'](W(0x115)))return P?'x':'✔';return P?'✔':'x';}if(isObjectLike(P))return a7H['inspect'](P,{'showHidden':![],'depth':null,'colors':!![],'compact':!![]});return P;}if(isArrayLike(X)){X['length']===0x0&&console[A(0x110)](A(0x107)+j[A(0x11c)]()+A(0x10f));const P=X[A(0xff)]((B,s)=>{const v=A,S={'i':s+O};return Object[v(0x10e)](B)['forEach'](y=>{(V===undefined||V['includes'](y['toLowerCase']()))&&set(S,F(y),h(B[y],y));}),S;}),o=clone(Object[A(0x10e)](P?.[0x0]||[]))[A(0x121)]((B,s)=>{const G=A,S=y=>y!=='i'?y!==G(0x10c)?0x0:0x1:0x2;return S(s)-S(B);}),C={'maxWidth':0x1e,'preserveNewLines':!![],'showHeaders':!H,'config':{'_id':{'maxWidth':0x5,'truncate':!![]},'i':{'showHeaders':![]}},'columns':o};console[A(0x110)](a7F(P,C));}else console[A(0x110)](X);}export function consoleFormat(X,j){const d=a7j;if(isEmpty(X)){const V=j?d(0x11b)+j+')':'';return a7V['green'](d(0x123))+V;}if(!isObjectLike(X))return X?.[d(0x10b)]();return a7H['inspect'](X,{'showHidden':![],'depth':null,'colors':!![],'compact':!![]});}function a7X(){const J=['5KqhUkj','replace','652832EJxQrd','No\x20','yml','13874ixEFeJ','20LOWqNH','toString','internalId','getMinutes','keys','\x20found','log','4305456usWKXn','getDate','length','getSeconds','disabled','3934062OjQSCe','3DDLxSQ','29112567ohQYXO','dump','includes','\x20(HTTP\x20status:\x20','toLowerCase','json','getFullYear','updatedat','81796NXabJj','sort','472HZwAux','The\x20request\x20was\x20completed\x20successfully','map','boolean','855556bhsXBT','getHours','yaml'];a7X=function(){return J;};return a7X();}export const handleJsonOutput=(X,j)=>{const x=a7j,V=X===x(0x11d);if(V)console[x(0x110)](JSON['stringify'](j,null,'\x20'));};export const handleYamlOutput=(X,j)=>{const M=a7j,V=X===M(0x103)||X===M(0x108);if(V)console['log'](a7O[M(0x119)](j));};export const handleFormattedOutput=(X,j)=>{const g=a7j,V=X==='format';if(V)console[g(0x110)](consoleFormat(j));};export const printResponse=(X,j)=>{handleJsonOutput(X,j),handleYamlOutput(X,j),handleFormattedOutput(X,j);};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(X,j){const U=a8j,V=X();while(!![]){try{const H=parseInt(U(0x17c))/0x1+-parseInt(U(0x17f))/0x2+parseInt(U(0x17b))/0x3+parseInt(U(0x181))/0x4+-parseInt(U(0x183))/0x5+-parseInt(U(0x177))/0x6*(-parseInt(U(0x187))/0x7)+-parseInt(U(0x179))/0x8;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a8X,0xa30b6));function a8X(){const X1=['round','4446yOFKzG','grey','7968288NVxZGr','\x20\x20\x20','1659849RkCqby','1270443XYRZGl','padding','symbols','854488RDyGXG','abs','1239628qZpXxc','max','2124395IXzRtV','height','red','blue','3612XiKiSI','format','2-digit','min','join','unit','undefined','colors','toLocaleTimeString','h24','length','toLocaleDateString','repeat','slice','floor'];a8X=function(){return X1;};return a8X();}function a8j(X,j){const V=a8X();return a8j=function(H,O){H=H-0x172;let F=V[H];return F;},a8j(X,j);}import a8V from'chalk';const colored=(X,j)=>{return j===undefined?X:a8V[j](X);};export const getAsciiChart=(X,V={})=>{const q=a8j,H=Array['isArray'](X[0x0])?X:[X];let O=typeof V['min']!==q(0x18d)?V[q(0x18a)]:H[0x0][0x0],F=typeof V['max']!==q(0x18d)?V[q(0x182)]:H[0x0][0x0];for(let g=0x0;g<H[q(0x191)];g++){for(let J=0x0;J<H[g][q(0x191)];J++){O=Math['min'](O,H[g][J]),F=Math[q(0x182)](F,H[g][J]);}}let h=['┼','┤','╶','╴','─','╰','╭','╮','╯','│'],P=Math[q(0x180)](F-O),o=typeof V['offset']!==q(0x18d)?V['offset']:0x3,C=typeof V[q(0x17d)]!==q(0x18d)?V[q(0x17d)]:'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20',B=typeof V['height']!==q(0x18d)?V[q(0x184)]:P,s=typeof V['colors']!==q(0x18d)?V[q(0x18e)]:[q(0x186),q(0x185),'green',q(0x178),'black'],S=P!==0x0?B/P:0x1,e=Math['round'](O*S),A=Math[q(0x176)](F*S),l=Math[q(0x180)](A-e),T=0x0;for(let b=0x0;b<H[q(0x191)];b++){T=Math[q(0x182)](T,H[b][q(0x191)]);}T=T+o;let W=typeof V[q(0x17e)]!==q(0x18d)?V['symbols']:h,v=V[q(0x188)]!==undefined?V[q(0x188)]:function(E){const c=q;return(C+E['toFixed'](0x2)+V[c(0x18c)])[c(0x174)](-C['length']);},G=new Array(l+0x1);for(let E=0x0;E<=l;E++){G[E]=new Array(T);for(let t=0x0;t<T;t++){G[E][t]='\x20';}}for(let Z=e;Z<=A;++Z){const w=v(l>0x0?F-(Z-e)*P/l:Z,Z-e);G[Z-e][Math[q(0x182)](o-w[q(0x191)],0x0)]=w,G[Z-e][o-0x1]=Z==0x0?W[0x0]:W[0x1];}for(let N=0x0;N<H['length'];N++){let p=s[N%s[q(0x191)]],m=Math[q(0x176)](H[N][0x0]*S)-e;G[l-m][o-0x1]=colored(W[0x0],p);for(let k=0x0;k<H[N][q(0x191)]-0x1;k++){let I=Math['round'](H[N][k+0x0]*S)-e,K=Math['round'](H[N][k+0x1]*S)-e;if(I==K)G[l-I][k+o]=colored(W[0x4],p);else{G[l-K][k+o]=colored(I>K?W[0x5]:W[0x6],p),G[l-I][k+o]=colored(I>K?W[0x7]:W[0x8],p);let L=Math[q(0x18a)](I,K),a=Math['max'](I,K);for(let r=L+0x1;r<a;r++){G[l-r][k+o]=colored(W[0x9],p);}}}}const {startTs:d,endTs:M}=V;if(d||M){const R=Q=>{const i=q;if(!Q)return i(0x17a);const f=Q[i(0x172)](undefined,{'day':i(0x189),'month':i(0x189),'year':'2-digit'}),z=Q[i(0x18f)](undefined,{'hourCycle':i(0x190)});return f+'\x20'+z;},n=R(M),D=R(d),Y=C[q(0x174)](0x0,Math[q(0x182)](0x2,C[q(0x191)]-D['length']/0x2+0x1)),u='\x20'[q(0x173)](Math[q(0x182)](T-(C[q(0x191)]+n['length']/0x2),0x1));G['push']([''+Y+D+u+n]),G['push']([]);}return G['map'](Q=>Q[q(0x18b)](''))[q(0x18b)]('\x0a');};export const downSampleData=(X,j)=>{const X0=a8j,V=X[X0(0x191)];if(j>=V||j===0x0)return X;const H=[];let O=0x0;const F=(V-0x2)/(j-0x2);let h=0x0,P,o,C,B;H[O++]=X[h];for(var s=0x0;s<j-0x2;s++){let T=0x0,W=0x0,v=Math[X0(0x175)]((s+0x1)*F)+0x1,G=Math['floor']((s+0x2)*F)+0x1;G=G<V?G:V;var S=G-v;for(;v<G;v++){T+=X[v][0x0],W+=X[v][0x1];}T/=S,W/=S;var y=Math[X0(0x175)](s*F)+0x1,e=Math[X0(0x175)]((s+0x1)*F)+0x1,A=X[h][0x0],l=X[h][0x1];o=C=-0x1;for(;y<e;y++){C=Math[X0(0x180)]((A-T)*(X[y][0x1]-l)-(A-X[y][0x0])*(W-l))*0.5,C>o&&(o=C,P=X[y],B=y);}H[O++]=P,h=B;}return H[O++]=X[V-0x1],H;};
|
package/dist/inquirer-helper.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a9e=a9G;(function(N,G){const x=a9G,S=N();while(!![]){try{const U=parseInt(x(0x18b))/0x1+parseInt(x(0x18c))/0x2+parseInt(x(0x141))/0x3*(-parseInt(x(0x1e7))/0x4)+-parseInt(x(0x16e))/0x5+-parseInt(x(0x155))/0x6+-parseInt(x(0x147))/0x7+parseInt(x(0x1c6))/0x8*(parseInt(x(0x16f))/0x9);if(U===G)break;else S['push'](S['shift']());}catch(K){S['push'](S['shift']());}}}(a9N,0x9939f));import a9S from'chalk';import*as a9U from'fs';import{isValidJSON,retry,success,warning}from'./utils.js';function a9N(){const NB=['json','main-context','load','pagination','then','object','WARNING:\x20You\x20are\x20about\x20to\x20delete\x20','editPayload','pathVars','No,\x20abort','job\x20builds','Unexpected\x20file\x20type:\x20','subdomains','cloud','askForJobRun','elements','type','cursor','description','askForSecret','\x20(startedAt:\x20','map','askForProject','unshift','loginPrompt','propToType','runs','78zLnsEQ','EDIT','confirmationPrompt','builds','service\x20containers','enum','2008839UZJmki','writeFileSync','slice','YES','pop','red','getType','logSinks','templateRuns','to\x20use:','maxLength','tag','toUpperCase','REPEAT','584544psDlbo','askForTemplateRun','askForAddonRestore','\x20characters,\x20is\x20','clusters','validate','keys','input','template','service','\x20in\x20','restores','No\x20','for\x20this\x20','prompt','example','values','\x20(completedAt:\x20','split','backupDestinations','Yes,\x20send','SAVE','Enter\x20the\x20','Aborted.','anyOf','3294305UBhNWg','8169813WarAGl','contextProvider','Do\x20you\x20want\x20to\x20add\x20more','found','function','password','askForProjectScopedResourcePaginated','underline','project','What\x20do\x20you\x20want\x20to\x20use\x20as','whiteBright','test','must\x20be\x20a\x20number,\x20is\x20','askForPipeline','nextCursor','join','No,\x20repeat','properties','service\x20build','yml','completedAt','addEntry','secrets','templates','Choose\x20the\x20login\x20token:','secret','job\x20containers','greenBright','582304hgXLsw','2401124mRprrf','all','registerPrompt','Should\x20it\x20be','yellowBright','askForContainer','retrievePayloadViaInteractiveCli','askArrayEntry','jobs','Template\x20id\x20not\x20provided.','askForResourcePaginated','askForLogSink','resultCache','backups','editedResult','tmpCmdPath','default','Do\x20you\x20want\x20to\x20add','subdomain','askForSubdomain','list','confirm','domains','array','projects','credentials',',\x20supported\x20types:\x20[json|yaml|yml]','rawObject','getInnerType','backup','integer','uri','askForBackupDestination','must\x20be\x20bigger\x20than\x20or\x20equal\x20to\x20','fileName','maximum','dump','all-containers','job','editor','\x20type?','startedAt','cluster\x20id','Go\x20to\x20editor','paths','template\x20run','createdAt','blueBright','\x20and\x20it\x20','string','choice','opt','addon','body','containers','getQuestionString','bgGrey','a\x20Northflank\x20resource','8IwlJdR','restore','askForVolume','Please\x20confirm\x20following\x20configuration:\x0a','addons','services','apiClient','askForBuild','pagination-prompt','override','log\x20sink','Configuration\x20file\x20written\x20to\x20','addon:\x20\x27','skipValidation','ask','No\x20builds\x20found','askForResource','length','reset','getPathString','No\x20containers\x20found','\x27\x20already\x20exists.\x20Do\x20you\x20want\x20to\x20override\x20this\x20context\x20(y)\x20or\x20enter\x20a\x20new\x20name\x20(N)?','get','name','token','\x20characters','includes','Provide\x20a\x20file\x20path\x20to\x20write\x20the\x20configuration\x20to\x20(<name>.[json|yaml|yml])','all-builds','Choose\x20the\x20','Writing\x20configuration\x20failed:\x20','tokenPrompt','service:\x20\x27','156884RgaWQU','filter','.\x20This\x20is\x20irreversible.\x20Please\x20confirm!','job\x20runs','boolean','isArray','defaultPaginationPageSize','Default\x20project\x20in\x20context\x20not\x20set\x20and\x20no\x20argument\x20provided.','not\x20completed','concat','What\x27s\x20the\x20','pattern','job:\x20\x27','askForService','blue','oneOf','askForTag','.*\x5c.(json|yaml|yml)$','askForSubdomainPath','max','grey','domain','fullName','isNaN','pipeline','askForAddonBackup','askConfirm','volumes','\x20to\x20use:','data','stringify','askForProjectScopedResource','green','askForDomain','don\x27t\x20change','confirmation','this\x20option\x20is\x20required,\x20please\x20answer','saveFile','find','must\x20be\x20longer\x20than\x20or\x20equal\x20to\x20','project:\x20\x27','items','askForTemplate','message','minLength','bold','getCurrentProjectName','\x20Example:\x20','search-list','push','Context\x20with\x20name\x20\x27','must\x20be\x20smaller\x20than\x20or\x20equal\x20to\x20','deleteWarningPrompt','domain\x20('];a9N=function(){return NB;};return a9N();}import{fetchResourceList}from'./api-helpers.js';import{DynamicReloadPaginationPrompt}from'./pagination/inquirer-pagination-prompt.js';function a9G(N,G){const S=a9N();return a9G=function(U,K){U=U-0x10a;let r=S[U];return r;},a9G(N,G);}import a9K from'inquirer';import a9r from'inquirer-search-list';import a9L from'js-yaml';import{set,has,get,isEmpty,unset}from'lodash-es';var ConfirmChoices;(function(N){const b=a9G;N[b(0x14a)]=b(0x169),N[b(0x154)]=b(0x17f),N[b(0x142)]='No,\x20edit',N[b(0x16a)]='No,\x20but\x20save\x20as\x20file',N['ABORT']=b(0x12f);}(ConfirmChoices||(ConfirmChoices={})));export class InquirerHelper{[a9e(0x1cc)];[a9e(0x198)];['tmpCmdPath'];[a9e(0x1d3)];[a9e(0x12e)];[a9e(0x1ed)]=0x32;constructor(N){const f=a9e;this[f(0x1cc)]=N,a9K[f(0x18e)]('search-list',a9r),a9K[f(0x18e)](f(0x1ce),DynamicReloadPaginationPrompt);}[a9e(0x12d)]=async N=>{const n=a9e,{editedResult:G}=await a9K['prompt']([{'type':'editor','name':n(0x19a),'message':n(0x1b7),'default':a9L[n(0x1b0)](N)}]);return a9L[n(0x128)](G);};[a9e(0x115)]=async N=>{const D=a9e,G=r=>D(0x131)+r+D(0x1a6);async function S(){const g=D;return a9K[g(0x163)]([{'type':g(0x15c),'name':g(0x1ae),'message':g(0x1e1),'validate':r=>new RegExp(g(0x1f8))[g(0x17a)](r)?!![]:G(r)}]);}const {fileName:U}=await S(),K=U['toString']()[D(0x167)]('.')[D(0x14b)]();try{switch(K){case D(0x126):success(D(0x1d1)+U);return a9U[D(0x148)](U,JSON[D(0x10e)](N,null,'\x20\x20'));case'yaml':case D(0x182):success('Configuration\x20file\x20written\x20to\x20'+U);return a9U[D(0x148)](U,a9L['dump'](N));default:warning(G(K));}}catch(r){warning(D(0x1e4)+r[D(0x11b)]);}return undefined;};async[a9e(0x143)](N,G){const z=a9e,S=a9L[z(0x1b0)](N),U=Math[z(0x1fa)](...S[z(0x167)]('\x0a')[z(0x13b)](L=>L[z(0x1d7)])),K=a9S[z(0x1fb)]('-'['repeat'](U)+'\x0a'),{confirm:r}=await a9K[z(0x163)]([{'type':z(0x1a0),'name':z(0x1a1),'message':''+a9S[z(0x11d)][z(0x110)](z(0x1c9))+K+a9S[z(0x1bb)](S)+K,'choices':Object[z(0x165)](ConfirmChoices)}]);switch(r){case ConfirmChoices[z(0x14a)]:return N;case ConfirmChoices['ABORT']:throw new Error(z(0x16c));case ConfirmChoices[z(0x154)]:return this[z(0x192)](G);case ConfirmChoices[z(0x142)]:return this[z(0x143)](await this[z(0x12d)](N),G);case ConfirmChoices['SAVE']:await this[z(0x115)](N);return this[z(0x143)](N,G);default:throw new Error('Something\x20unexpected\x20happened.');}}async[a9e(0x192)](N,G){const v=a9e;if(G?.[v(0x198)]!==undefined)this[v(0x198)]=G?.[v(0x198)];this[v(0x19b)]=G?.['cmdPath'],this[v(0x1d3)]=G?.[v(0x1d3)];const S={};return await this['propToType']([],N[v(0x1bf)][v(0x1c1)],S),this[v(0x198)]=S,await this[v(0x143)](S,N);}async['propToType'](N,G,S,U){const E=a9e;let K;if(G['oneOf']&&!has(G,E(0x180))){if(G[E(0x1f6)][E(0x1d7)]>0x1){const {choice:r}=await a9K['prompt']([{'type':'list','name':'choice','message':E(0x1f1)+(N[N[E(0x1d7)]-0x1]||'')+E(0x1b4),'choices':G[E(0x1f6)][E(0x13b)](L=>L['description']??'??')}]);K=await this['getType'](N,G[E(0x1f6)][E(0x116)](L=>L['description']===r),S,U);}else{const L=G[E(0x1f6)][0x0];set(L,E(0x138),G[E(0x138)]),K=await this[E(0x14d)](N,L,S,U);}K={};}else{if(G[E(0x16d)]&&!has(G,'properties')){if(G[E(0x16d)][E(0x1d7)]>0x1){const {choice:I}=await a9K[E(0x163)]([{'type':'list','name':E(0x1be),'message':E(0x1f1)+(N[N['length']-0x1]||'')+E(0x1b4),'choices':[...G[E(0x16d)][E(0x13b)](d=>d[E(0x138)]??'??'),E(0x112)]}]);I!=='don\x27t\x20change'&&(K=await this['getType'](N,G['anyOf'][E(0x116)](d=>d[E(0x138)]===I),S,U));}else{const d=G[E(0x16d)][0x0];set(d,E(0x138),G[E(0x138)]),K=await this['getType'](N,d,S,U);}K={};}else K=await this[E(0x14d)](N,G,S,U);}return K;}async[a9e(0x1a8)](N,G,S,U){const W=a9e;if(U===![]){const {addEntry:L}=await a9K[W(0x163)]([{'type':W(0x1a1),'name':'addEntry','message':this[W(0x1d9)](G,W(0x19d),N?.[W(0x138)]),'default':![]}]);if(!L)return S;}const K=Object[W(0x15b)](N?.[W(0x180)]??[]),r=N['required']||[];if(K['length']>0x0)for(const I of K){const d=G[W(0x1f0)](I);if(G[W(0x1d7)]>0x0&&!has(S,G['join']('.')))set(S,G[W(0x17e)]('.'),{});await this[W(0x13f)](d,N[W(0x180)][I],S,r[W(0x1e0)](I));}else await this[W(0x14d)](G,{...N,'type':W(0x1a7)},S,U);return S;}async[a9e(0x193)](N,G,S,U){const Z=a9e;if(G&&S)return!![];const K=G?Z(0x19d):Z(0x171),{addEntry:r}=await a9K[Z(0x163)]([{'type':'confirm','name':Z(0x184),'message':this[Z(0x1d9)](N,K,G?U:undefined),'default':![]}]);return r;}async[a9e(0x14d)](N,G,S,U){const B=a9e;let K;const r=N[B(0x17e)]('.');switch(G?.[B(0x136)]){case B(0x1a3):{let L=!![];while(await this[B(0x193)](N,L,U,G?.[B(0x138)])){const I=get(S,r);unset(S,r),await this[B(0x14d)](N,G[B(0x119)],S);const d=get(S,r);!Array[B(0x1ec)](I)?set(S,r,[d]):(I['push'](d),set(S,r,I)),L=![];}return K||[];}case'object':{return K=await this[B(0x1a8)](G,N,S,U),K;}case B(0x1a7):K=isValidJSON(await this[B(0x1d4)](N,G,U))||undefined;break;case B(0x1bd):case B(0x1eb):case B(0x1aa):default:K=await this[B(0x1d4)](N,G,U,S);break;}return K!==undefined&&set(S,r,K),K;}async[a9e(0x1d4)](N,G,S,U){const j=a9e,K=N[N[j(0x1d7)]-0x1],{defaultValue:defaultValue=G?.[j(0x164)]??G?.[j(0x19c)],choices:choices=G?.[j(0x146)],pagination:r}=await fetchResourceList(K,this[j(0x1cc)],this[j(0x19b)],U,this[j(0x12e)],N);let L=j(0x15c);if(choices!==undefined&&choices[j(0x1d7)]>0x0){if(r!==undefined&&r['nextPageCursor']!==undefined)L=j(0x1ce);else choices[j(0x1d7)]>0x4&&typeof choices[0x0]===j(0x1bd)?L=j(0x120):L=j(0x1a0);}else{if(G?.[j(0x136)]===j(0x1eb))L=j(0x1a1);else{if(G?.[j(0x136)]===j(0x1aa))L=j(0x15c);else G?.[j(0x136)]===j(0x1a7)&&(L=j(0x1b3));}}let I=S!==![]?!(defaultValue!==null&&(typeof defaultValue===j(0x12b)||typeof defaultValue===j(0x173)))?defaultValue:JSON['stringify'](defaultValue):typeof defaultValue===j(0x1eb)?defaultValue:'don\x27t\x20change';if(choices)I=I['toString']();has(this['resultCache'],N[j(0x17e)]('.'))&&(I=this[j(0x198)][N[j(0x17e)]('.')]);const d=choices&&S===![]?[j(0x112),...choices]:choices,Y=G?.[j(0x136)]===j(0x1aa),u={'type':L,'name':'id','message':this['getQuestionString'](N,G),'choices':d,'default':I,'filter':this['filter'](L,S),'validate':this[j(0x15a)](G,S,Y),...r},V=(await a9K[j(0x163)]([u]))['id'];if(V===j(0x112)||V==='')return undefined;if(Y)return parseInt(V,0xa);return V;}[a9e(0x1e8)]=(N,G)=>S=>{const i=a9e,U=typeof S===i(0x1bd)?S['trim']():S;return G===![]&&U==='don\x27t\x20change'?'':U;};[a9e(0x1c3)](N,G){const l=a9e,S=G?.[l(0x136)]!=='boolean'?l(0x178):l(0x18f);return this[l(0x1d9)](N,S,G?.['description']);}[a9e(0x15a)]=(N,G,S)=>U=>{const k=a9e;if(this['skipValidation']===!![])return!![];const K=[];if(U===''||U==='don\x27t\x20change'){if(G!==![])K[k(0x121)](k(0x114));else return!![];}N['type']===k(0x1bd)&&N[k(0x1f2)]!==undefined&&K[k(0x121)](new RegExp(N[k(0x1f2)])['test'](U)?!![]:'doesn\x27t\x20match\x20pattern\x20\x27'+N[k(0x1f2)]+'\x27');N[k(0x136)]===k(0x1bd)&&N[k(0x11c)]!==undefined&&K[k(0x121)](U['length']>=N[k(0x11c)]?!![]:k(0x117)+N[k(0x11c)]+'\x20characters,\x20is\x20'+U[k(0x1d7)]+k(0x1df));N['type']===k(0x1bd)&&N['maxLength']!==undefined&&K[k(0x121)](U[k(0x1d7)]<=N[k(0x151)]?!![]:'must\x20be\x20shorter\x20than\x20or\x20equal\x20to\x20'+N[k(0x151)]+k(0x158)+U[k(0x1d7)]+k(0x1df));S&&Number[k(0x1fe)](parseInt(U,0xa))&&K[k(0x121)](k(0x17b)+U);N[k(0x136)]===k(0x1aa)&&N['minimum']!==undefined&&K[k(0x121)](U>=N['minimum']?!![]:k(0x1ad)+N['minimum']);N[k(0x136)]===k(0x1aa)&&N[k(0x1af)]!==undefined&&K[k(0x121)](U<=N['maximum']?!![]:k(0x123)+N[k(0x1af)]);if(N[k(0x136)]===k(0x1a7)){const I=isValidJSON(U);K['push'](I===![]||isEmpty(I)?'must\x20be\x20a\x20valid\x20non-empty\x20json\x20string':!![]);}const r=K[k(0x1e8)](d=>d!==!![]),L=N?.[k(0x164)]?'\x0a'+a9S[k(0x14c)]('>>')+k(0x11f)+a9S[k(0x179)](JSON[k(0x10e)](N[k(0x164)])):'';return r[k(0x1d7)]>0x0?r[k(0x17e)](a9S[k(0x176)](k(0x1bc)))+L:!![];};[a9e(0x1d9)]=(N,G,S)=>{const h=a9e,U=N[N[h(0x1d7)]-0x1];function K(){const O=h;return N[O(0x149)](0x0,-0x1)[O(0x13b)](I=>I['charAt'](0x0)[O(0x153)]()+I[O(0x149)](0x1))[O(0x17e)]('>');}const r=N[h(0x1d7)]>0x1?a9S[h(0x1c4)][h(0x179)](K())+':\x20':'',L=S?'\x20('+a9S[h(0x1f5)](S)+')':'';return a9S[h(0x1d8)](''+r+G+'\x20'+a9S[h(0x11d)][h(0x18a)](U)+L+'?');};async[a9e(0x13c)](){const J=a9e,N=await this[J(0x1cc)]['list'][J(0x1a4)][J(0x18d)]({})[J(0x12a)](G=>G['data'][J(0x1a4)][J(0x13b)](S=>S['id']));return await this[J(0x1d6)](J(0x177),N);}async['askForProjectScopedResource'](N,G,S,U){const t=a9e,K=S||this['apiClient'][t(0x170)]['getCurrentProjectName']();if(K===undefined)throw new Error(t(0x1ee));const r=await G(K);return await this[t(0x1d6)](N,r,(U?U+t(0x15f):'')+t(0x118)+K+'\x27');}async[a9e(0x175)](N,G,S,U){const P=a9e,K=S||this[P(0x1cc)][P(0x170)][P(0x11e)]();if(K===undefined)throw new Error(P(0x1ee));const r=await G(K);return await this[P(0x196)](N,r,(U?U+P(0x15f):'')+'project:\x20\x27'+K+'\x27');}[a9e(0x1d6)]=async(N,G,S)=>{const y=a9e;if(G[y(0x1d7)]<0x1){const r=S?y(0x162)+S:y(0x172);throw new Error(y(0x161)+N+'\x20'+r+'.');}const U=y(0x1e3)+N+y(0x10c),K=G['length']>0x4?y(0x120):y(0x1a0);return(await a9K[y(0x163)]([{'type':K,'name':'name','message':U,'choices':G}]))[y(0x1dd)];};[a9e(0x196)]=async(N,G,S)=>{const M=a9e,{elements:U,nextCursor:K}=await G();if(U[M(0x1d7)]<0x1){const I=S?M(0x162)+S:M(0x172);throw new Error(M(0x161)+N+'\x20'+I+'.');}const r='Choose\x20the\x20'+N+M(0x10c);if(K!==undefined){const d=async({nextPageCursor:Y})=>{const X=M,u=await G(Y);return{'elements':u[X(0x135)],'nextPageCursor':u[X(0x17d)]};};return(await a9K[M(0x163)]([{'type':M(0x1ce),'name':M(0x1dd),'message':r,'choices':U,'nextPageCursor':K,'loadMore':d}]))[M(0x1dd)];}const L=U[M(0x1d7)]>0x4?M(0x120):M(0x1a0);return(await a9K[M(0x163)]([{'type':L,'name':M(0x1dd),'message':r,'choices':U}]))['name'];};['askGeneric']=(N,G)=>async()=>{const o=a9e,S=''+(G?'('+a9S[o(0x1f5)](G)+')\x20':''),U=o(0x16b)+a9S[o(0x110)](N)+'\x20'+S+o(0x150),K=this['validate']({'type':o(0x1bd),'required':!![]});return(await a9K[o(0x163)]([{'type':o(0x15c),'name':'name','message':U,'validate':K}]))[o(0x1dd)];};[a9e(0x10a)]=async N=>{const p=a9e;return(await a9K[p(0x163)]([{'type':'confirm','name':'name','message':N,'default':!![]}]))[p(0x1dd)];};[a9e(0x1f4)]=N=>async()=>{const R=a9e,G=async S=>{const C=a9G,U=await this[C(0x1cc)][C(0x1a0)][C(0x1cb)][C(0x18d)]({'parameters':{'projectId':S}}),K=U[C(0x10d)]['services'][C(0x13b)](r=>r['id']);return K;};return this[R(0x10f)]('service',G,N);};[a9e(0x11a)]=()=>async()=>{const q=a9e,N=async G=>{const w=a9G,S=await this[w(0x1cc)][w(0x1a0)]['templates']({'options':{'per_page':this[w(0x1ed)],'cursor':G}}),U=S['data'][w(0x186)][w(0x13b)](K=>K['id']);return{'elements':U,'nextCursor':S[w(0x129)]?.['cursor']};};return this['askForResourcePaginated'](q(0x15d),N);};[a9e(0x1f7)]=()=>async()=>{const m=a9e,N=async G=>{const F=a9G,S=await this[F(0x1cc)][F(0x1a0)]['tags']({'options':{'per_page':this[F(0x1ed)],'cursor':G}}),U=S[F(0x10d)]['tags']?.[F(0x13b)](K=>K['id'])??[];return{'elements':U,'nextCursor':S['pagination']?.[F(0x137)]};};return this[m(0x196)](m(0x152),N);};[a9e(0x1ac)]=()=>async()=>{const s=a9e,N=await this['apiClient'][s(0x1a0)][s(0x168)][s(0x18d)]({}),G=N[s(0x10d)][s(0x168)][s(0x13b)](S=>S[s(0x1dd)])??[];return this[s(0x1d6)]('backup\x20destination',G);};['askForClusterId']=()=>async()=>{const A=a9e,N=async G=>{const H=a9G,S=await this[H(0x1cc)][H(0x1a0)][H(0x133)][H(0x159)]({'options':{'per_page':this[H(0x1ed)],'cursor':G}}),U=S[H(0x10d)]['clusters']?.[H(0x13b)](K=>K[H(0x1dd)])??[];return{'elements':U,'nextCursor':S[H(0x129)]?.['cursor']};};return this[A(0x196)](A(0x1b6),N);};[a9e(0x156)]=N=>async()=>{const Q=a9e;if(N===undefined)throw new Error(Q(0x195));const G=async S=>{const T=Q;let U=this[T(0x1ed)];const K=await this['apiClient'][T(0x1a0)][T(0x14f)]({'parameters':{'templateId':N},'options':{'per_page':U,'cursor':S}}),r=K[T(0x10d)][T(0x14f)][T(0x13b)](L=>L['id']+T(0x13a)+L[T(0x1ba)]+')');return{'elements':r,'nextCursor':K[T(0x129)]?.[T(0x137)]};};return this['askForResourcePaginated'](Q(0x1b9),G)[Q(0x12a)](S=>S['split']('\x20')[0x0]);};[a9e(0x197)]=()=>async()=>{const N1=a9e,N=async G=>{const N0=a9G;let S=this[N0(0x1ed)];const U=await this[N0(0x1cc)]['list'][N0(0x14e)]({'options':{'per_page':S,'cursor':G}}),K=U[N0(0x10d)][N0(0x14e)]['map'](r=>r['id']);return{'elements':K,'nextCursor':U['pagination']?.[N0(0x137)]};};return this[N1(0x196)](N1(0x1d0),N);};[a9e(0x17c)]=N=>async()=>{const N3=a9e,G=async S=>{const N2=a9G,U=await this[N2(0x1cc)][N2(0x1a0)]['pipelines'][N2(0x18d)]({'parameters':{'projectId':S}});return U[N2(0x10d)]['pipelines']['map'](K=>K['id']);};return this[N3(0x10f)](N3(0x1ff),G,N);};['askForJob']=N=>async()=>{const N5=a9e,G=async S=>{const N4=a9G,U=await this[N4(0x1cc)]['list'][N4(0x194)][N4(0x18d)]({'parameters':{'projectId':S}}),K=U[N4(0x10d)][N4(0x194)][N4(0x13b)](r=>r['id']);return K;};return this['askForProjectScopedResource'](N5(0x1b2),G,N);};[a9e(0x134)]=(N,G,S=![])=>async()=>{const N7=a9e,U='all-job-runs',K=r=>async L=>{const N6=a9G,I=await this[N6(0x1cc)]['get'][N6(0x1b2)][N6(0x140)]({'parameters':{'projectId':r,'jobId':N},'options':{'per_page':this['defaultPaginationPageSize'],'cursor':L}}),d=I['data'][N6(0x140)]['map'](Y=>Y['id']+'\x20(startedAt:\x20'+Y[N6(0x1b5)]+')');return S&&d[N6(0x13d)](U),{'elements':d,'nextCursor':I[N6(0x129)]?.[N6(0x137)]};};return this[N7(0x175)](N7(0x1ea),K,G,N7(0x1f3)+N+'\x27')[N7(0x12a)](r=>{const L=r['split']('\x20')[0x0];if(L===U)return undefined;return L;});};[a9e(0x1cd)]=(N,G,S,U=![])=>async()=>{const N8=a9e,K=N8(0x1e2);if(S!==undefined){const r=L=>async I=>{const N9=N8,d=await this['apiClient'][N9(0x1dc)][N9(0x1b2)][N9(0x144)]({'parameters':{'projectId':L,'jobId':S},'options':{'per_page':this[N9(0x1ed)],'cursor':I}}),Y=d['data'][N9(0x144)][N9(0x13b)](u=>u['id']+N9(0x13a)+u['createdAt']+')');return U&&Y[N9(0x13d)](K),{'elements':Y,'nextCursor':d[N9(0x129)]?.['cursor']};};return this['askForProjectScopedResourcePaginated'](N8(0x130),r,N,N8(0x1f3)+S+'\x27')[N8(0x12a)](L=>{const NN=N8,I=L[NN(0x167)]('\x20')[0x0];if(I===K)return undefined;return I;});}if(G!==undefined){const L=I=>async d=>{const NG=N8,Y=await this[NG(0x1cc)]['get']['service'][NG(0x144)]({'parameters':{'projectId':I,'serviceId':G},'options':{'per_page':this[NG(0x1ed)],'cursor':d}}),u=Y[NG(0x10d)][NG(0x144)]['map'](V=>V['id']+NG(0x13a)+V[NG(0x1ba)]+')');if(U)u['unshift'](K);return{'elements':u,'nextCursor':Y[NG(0x129)]?.[NG(0x137)]};};return this[N8(0x175)](N8(0x181),L,N,N8(0x1e6)+S+'\x27')['then'](I=>{const NS=N8,d=I[NS(0x167)]('\x20')[0x0];if(d===K)return undefined;return d;});}throw new Error(N8(0x1d5));};[a9e(0x191)]=(N,G,S,U=![])=>async()=>{const NU=a9e,K=NU(0x1b1);if(S!==undefined){const r=L=>async I=>{const NK=NU,d=await this[NK(0x1cc)][NK(0x1dc)][NK(0x1b2)]['containers']({'parameters':{'projectId':L,'jobId':S},'options':{'per_page':this[NK(0x1ed)],'cursor':I}}),Y=d[NK(0x10d)][NK(0x1c2)]??[],u=Y?.['map'](V=>V[NK(0x1dd)]+NK(0x13a)+V[NK(0x1ba)]+')');return U&&u[NK(0x13d)](K),{'elements':u,'nextCursor':d[NK(0x129)]?.['cursor']};};return this['askForProjectScopedResourcePaginated'](NU(0x189),r,N,'job:\x20\x27'+S+'\x27')[NU(0x12a)](L=>{const I=L['split']('\x20')[0x0];if(I===K)return undefined;return I;});}if(G!==undefined){const L=I=>async d=>{const Nr=NU,Y=await this[Nr(0x1cc)][Nr(0x1dc)][Nr(0x15e)][Nr(0x1c2)]({'parameters':{'projectId':I,'serviceId':G},'options':{'per_page':this[Nr(0x1ed)],'cursor':d}}),u=Y[Nr(0x10d)][Nr(0x1c2)]??[],V=u[Nr(0x13b)](a=>a[Nr(0x1dd)]+'\x20(startedAt:\x20'+a[Nr(0x1ba)]+')');if(U)V?.[Nr(0x13d)](K);return{'elements':V,'nextCursor':Y[Nr(0x129)]?.[Nr(0x137)]};};return this[NU(0x175)](NU(0x145),L,N,NU(0x1e6)+S+'\x27')[NU(0x12a)](I=>{const NL=NU,d=I[NL(0x167)]('\x20')[0x0];if(d===K)return undefined;return d;});}throw new Error(NU(0x1da));};['askForAddon']=N=>async()=>{const Nd=a9e,G=async S=>{const NI=a9G,U=await this[NI(0x1cc)][NI(0x1a0)]['addons']['all']({'parameters':{'projectId':S}});return U[NI(0x10d)][NI(0x1ca)][NI(0x13b)](K=>K['id']);};return this['askForProjectScopedResource'](Nd(0x1c0),G,N);};[a9e(0x200)]=(N,G)=>async()=>{const Nu=a9e,S=U=>async K=>{const NY=a9G,r=await this[NY(0x1cc)][NY(0x1dc)][NY(0x1c0)][NY(0x199)]({'parameters':{'projectId':U,'addonId':G},'options':{'per_page':this[NY(0x1ed)],'cursor':K}});return{'elements':r[NY(0x10d)]['backups']['map'](L=>L['id']+NY(0x166)+(L[NY(0x183)]||NY(0x1ef))+')'),'nextCursor':r[NY(0x129)]?.[NY(0x137)]};};return this[Nu(0x175)](Nu(0x199),S,N,Nu(0x1d2)+G+'\x27')['then'](U=>U[Nu(0x167)]('\x20')[0x0]);};[a9e(0x157)]=(N,G,S)=>async()=>{const Na=a9e,U=K=>async r=>{const NV=a9G,L=await this[NV(0x1cc)]['get'][NV(0x1c0)][NV(0x1a9)][NV(0x160)]({'parameters':{'projectId':K,'addonId':G,'backupId':S},'options':{'per_page':this['defaultPaginationPageSize'],'cursor':r}});return{'elements':L['data'][NV(0x160)]['map'](I=>I['id']+NV(0x166)+(I[NV(0x183)]||NV(0x1ef))+')'),'nextCursor':L[NV(0x129)]?.[NV(0x137)]};};return this[Na(0x175)](Na(0x1c7),U,N,'addon:\x20\x27'+G+'\x27')['then'](K=>K[Na(0x167)]('\x20')[0x0]);};[a9e(0x1c8)]=N=>async()=>{const Nx=a9e,G=async S=>(await this[Nx(0x1cc)]['list'][Nx(0x10b)]({'parameters':{'projectId':S}}))[Nx(0x10d)][Nx(0x13b)](U=>U['id']);return this[Nx(0x10f)]('volume',G,N);};[a9e(0x139)]=N=>async()=>{const Ne=a9e,G=async S=>{const Nb=a9G,U=await this[Nb(0x1cc)]['list'][Nb(0x185)]['all']({'parameters':{'projectId':S}});return U[Nb(0x10d)][Nb(0x185)][Nb(0x13b)](K=>K['id']);};return this['askForProjectScopedResource'](Ne(0x188),G,N);};async[a9e(0x111)](){const Nf=a9e,N=await this[Nf(0x1cc)][Nf(0x1a0)][Nf(0x1a2)][Nf(0x18d)]({}),G=N['data'][Nf(0x1a2)][Nf(0x13b)](S=>S[Nf(0x1dd)]);return this[Nf(0x1d6)]('domain',G);}async['askForCredentials'](){const Nn=a9e,N=await this[Nn(0x1cc)][Nn(0x1a0)]['registryCredentials'][Nn(0x18d)]({}),G=N[Nn(0x10d)][Nn(0x1a5)][Nn(0x13b)](S=>S['id']);return this[Nn(0x1d6)](Nn(0x1a5),G);}[a9e(0x19f)]=N=>async()=>{const ND=a9e,G=await this[ND(0x1cc)][ND(0x1dc)][ND(0x1fc)]({'parameters':{'domain':N}}),S=G[ND(0x10d)][ND(0x132)][ND(0x13b)](K=>K[ND(0x1dd)]+'\x20(full\x20domain:\x20'+K[ND(0x1fd)]+')'),U=ND(0x125)+N+')';return this[ND(0x1d6)](ND(0x19e),S,U)[ND(0x12a)](K=>K[ND(0x167)]('\x20')[0x0]);};[a9e(0x1f9)]=(N,G)=>async()=>{const Ng=a9e,S=await this[Ng(0x1cc)][Ng(0x1a0)]['subdomain']['path']({'parameters':{'domain':N,'subdomain':G}}),U=S[Ng(0x10d)][Ng(0x1b8)][Ng(0x13b)](r=>''+r[Ng(0x1ab)]),K=Ng(0x125)+N+'),\x20subdomain\x20('+G+')';return this[Ng(0x1d6)]('subdomainPath',U,K);};[a9e(0x124)]=async N=>{const Nz=a9e;return(await a9K[Nz(0x163)]([{'type':Nz(0x1a1),'name':Nz(0x113),'message':a9S[Nz(0x190)](Nz(0x12c)+(N||Nz(0x1c5))+Nz(0x1e9)),'default':![]}]))['confirmation'];};[a9e(0x13e)]=async(N,G)=>{const Nv=a9e;N[Nv(0x1dd)]===undefined&&(G[Nv(0x1d7)]<=0x0?set(N,'name',Nv(0x19c)):await retry(0xa)(async()=>{const NE=Nv,{name:S}=await a9K[NE(0x163)]([{'type':'input','name':NE(0x1dd),'message':'Choose\x20the\x20name\x20of\x20the\x20new\x20local\x20context:','default':NE(0x127)}]);if(!N['override']&&G[NE(0x116)](U=>U['name']===S)){const {c:U}=await a9K[NE(0x163)]([{'type':NE(0x1a1),'name':'c','message':NE(0x122)+S+NE(0x1db),'default':![]}]);if(U===![])throw new Error('Context\x20name\x20already\x20exists.');set(N,NE(0x1cf),!![]);}set(N,'name',S);}));if(N[Nv(0x1de)]===undefined){const S=await this[Nv(0x1e5)]();set(N,Nv(0x1de),S);}return N;};[a9e(0x1e5)]=async()=>{const NW=a9e,{token:N}=await a9K[NW(0x163)]([{'type':NW(0x174),'name':NW(0x1de),'mask':'*','message':NW(0x187)}]);return N;};['setPathVars'](N){const NZ=a9e;this[NZ(0x12e)]=N;}}
|
|
1
|
+
const a9A=a9j;(function(X,j){const y=a9j,V=X();while(!![]){try{const H=-parseInt(y(0x223))/0x1*(parseInt(y(0x1f7))/0x2)+-parseInt(y(0x21b))/0x3+parseInt(y(0x1cb))/0x4*(parseInt(y(0x1c5))/0x5)+-parseInt(y(0x1ab))/0x6+parseInt(y(0x1e2))/0x7*(-parseInt(y(0x237))/0x8)+parseInt(y(0x1a9))/0x9+parseInt(y(0x282))/0xa;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a9X,0xf1c94));import a9V from'chalk';function a9j(X,j){const V=a9X();return a9j=function(H,O){H=H-0x193;let F=V[H];return F;},a9j(X,j);}import*as a9H from'fs';import{isValidJSON,retry,success,warning}from'./utils.js';import{fetchResourceList}from'./api-helpers.js';import{DynamicReloadPaginationPrompt}from'./pagination/inquirer-pagination-prompt.js';import a9O from'inquirer';function a9X(){const XE=['prompt','backups','restores','example','toUpperCase','secrets','askForClusterId','askForSubdomainPath','5939715TUszON','askConfirm','length','clusters','project','No,\x20repeat','service','\x20(completedAt:\x20','2CvVIOf','domain','volumes','apiClient','askForBackupDestination','data','No,\x20edit','getQuestionString','tag','cursor','cloud','anyOf','projects','push','then','description','red','pop','askForJob','items','224888SAQKjl','volume','json','test','maxLength','\x20and\x20it\x20','services','includes','builds','minLength','REPEAT','\x20(startedAt:\x20','askGeneric','subdomain','credentials','No,\x20abort','message','askForVolume','saveFile','addons','ask','tags','list','pagination-prompt','isArray','string','\x20Example:\x20','\x20to\x20use:','blueBright','Default\x20project\x20in\x20context\x20not\x20set\x20and\x20no\x20argument\x20provided.','askForProjectScopedResourcePaginated','addEntry','YES','for\x20this\x20','nextCursor','Choose\x20the\x20login\x20token:','slice','doesn\x27t\x20match\x20pattern\x20\x27','charAt','found','containers','all-builds','What\x27s\x20the\x20','askForContainer','askForSecret','What\x20do\x20you\x20want\x20to\x20use\x20as','job\x20containers','startedAt','addon','.*\x5c.(json|yaml|yml)$','required','integer','WARNING:\x20You\x20are\x20about\x20to\x20delete\x20','createdAt','\x20characters,\x20is\x20','yaml','writeFileSync','fileName',',\x20supported\x20types:\x20[json|yaml|yml]','map','askForProject','Should\x20it\x20be','whiteBright','backup\x20destination','editor','bgGrey','registerPrompt','input','cluster\x20id','validate','override','pagination','toString','yml','dump','33523690asuMkc','resultCache','yellowBright','service\x20containers','all','ABORT','\x20(full\x20domain:\x20','pipeline','skipValidation','pipelines','Configuration\x20file\x20written\x20to\x20','must\x20be\x20a\x20number,\x20is\x20','default','job','array','getCurrentProjectName','choice','defaultPaginationPageSize','must\x20be\x20longer\x20than\x20or\x20equal\x20to\x20','Do\x20you\x20want\x20to\x20add','No\x20','load','secret','boolean','getPathString','service:\x20\x27','askForLogSink','propToType','bold','to\x20use:','askForAddon','13526640LNijoi','function','8199960kCxbYh','rawObject','askForResourcePaginated','No,\x20but\x20save\x20as\x20file','uri','retrievePayloadViaInteractiveCli','getType','completedAt','domain\x20(','Aborted.','loginPrompt','Provide\x20a\x20file\x20path\x20to\x20write\x20the\x20configuration\x20to\x20(<name>.[json|yaml|yml])','grey','subdomains','subdomainPath','don\x27t\x20change','cmdPath','askForService','Yes,\x20send','No\x20containers\x20found','nextPageCursor','Unexpected\x20file\x20type:\x20','template\x20run','underline','domains','templates','945005WagCwM','\x20characters','greenBright','tmpCmdPath','blue','service\x20build','4YTEYEx','tokenPrompt','confirm','backup','editedResult','confirmation','not\x20completed','registryCredentials','filter','SAVE','askForBuild','name','repeat','askForAddonBackup','editPayload','askForTemplate','minimum','pattern','main-context','find','get','logSinks','Please\x20confirm\x20following\x20configuration:\x0a','119BtCmAF','must\x20be\x20shorter\x20than\x20or\x20equal\x20to\x20','stringify','oneOf','token','deleteWarningPrompt','pathVars','values','No\x20builds\x20found','\x27\x20already\x20exists.\x20Do\x20you\x20want\x20to\x20override\x20this\x20context\x20(y)\x20or\x20enter\x20a\x20new\x20name\x20(N)?','log\x20sink','runs','EDIT','Choose\x20the\x20name\x20of\x20the\x20new\x20local\x20context:','type','join','backupDestinations','search-list','template','addon:\x20\x27','enum','229522qxtmZd','restore','job:\x20\x27','getInnerType','Something\x20unexpected\x20happened.','),\x20subdomain\x20(','project:\x20\x27','properties','askForResource','maximum','Enter\x20the\x20','Context\x20with\x20name\x20\x27','.\x20This\x20is\x20irreversible.\x20Please\x20confirm!','Go\x20to\x20editor','isNaN','max','askForTemplateRun','askForSubdomain','confirmationPrompt','trim','unshift','contextProvider','split','Context\x20name\x20already\x20exists.','object','green','templateRuns','askForProjectScopedResource'];a9X=function(){return XE;};return a9X();}import a9F from'inquirer-search-list';import a9h from'js-yaml';import{set,has,get,isEmpty,unset}from'lodash-es';var ConfirmChoices;(function(X){const e=a9j;X['YES']=e(0x1bd),X[e(0x241)]=e(0x220),X[e(0x1ee)]=e(0x229),X['SAVE']=e(0x1ae),X['ABORT']=e(0x246);}(ConfirmChoices||(ConfirmChoices={})));export class InquirerHelper{[a9A(0x226)];[a9A(0x283)];['tmpCmdPath'];[a9A(0x28a)];[a9A(0x1e8)];[a9A(0x19b)]=0x32;constructor(X){const l=a9A;this[l(0x226)]=X,a9O[l(0x279)]('search-list',a9F),a9O[l(0x279)](l(0x24e),DynamicReloadPaginationPrompt);}[a9A(0x1d9)]=async X=>{const T=a9A,{editedResult:j}=await a9O[T(0x213)]([{'type':T(0x277),'name':T(0x1cf),'message':T(0x204),'default':a9h['dump'](X)}]);return a9h[T(0x19f)](j);};[a9A(0x249)]=async X=>{const W=a9A,j=F=>W(0x1c0)+F+W(0x271);async function V(){const v=W;return a9O[v(0x213)]([{'type':v(0x27a),'name':v(0x270),'message':v(0x1b6),'validate':F=>new RegExp(v(0x268))['test'](F)?!![]:j(F)}]);}const {fileName:H}=await V(),O=H[W(0x27f)]()['split']('.')[W(0x234)]();try{switch(O){case W(0x239):success(W(0x194)+H);return a9H[W(0x26f)](H,JSON[W(0x1e4)](X,null,'\x20\x20'));case W(0x26e):case W(0x280):success('Configuration\x20file\x20written\x20to\x20'+H);return a9H['writeFileSync'](H,a9h[W(0x281)](X));default:warning(j(O));}}catch(F){warning('Writing\x20configuration\x20failed:\x20'+F[W(0x247)]);}return undefined;};async[a9A(0x209)](X,j){const G=a9A,V=a9h['dump'](X),H=Math[G(0x206)](...V[G(0x20d)]('\x0a')[G(0x272)](h=>h[G(0x21d)])),O=a9V[G(0x1b7)]('-'[G(0x1d7)](H)+'\x0a'),{confirm:F}=await a9O[G(0x213)]([{'type':G(0x24d),'name':G(0x1cd),'message':''+a9V[G(0x1a6)][G(0x210)](G(0x1e1))+O+a9V[G(0x253)](V)+O,'choices':Object[G(0x1e9)](ConfirmChoices)}]);switch(F){case ConfirmChoices[G(0x257)]:return X;case ConfirmChoices[G(0x287)]:throw new Error(G(0x1b4));case ConfirmChoices[G(0x241)]:return this[G(0x1b0)](j);case ConfirmChoices[G(0x1ee)]:return this['confirmationPrompt'](await this[G(0x1d9)](X),j);case ConfirmChoices[G(0x1d4)]:await this[G(0x249)](X);return this['confirmationPrompt'](X,j);default:throw new Error(G(0x1fb));}}async[a9A(0x1b0)](X,j){const d=a9A;if(j?.[d(0x283)]!==undefined)this[d(0x283)]=j?.[d(0x283)];this[d(0x1c8)]=j?.[d(0x1bb)],this[d(0x28a)]=j?.[d(0x28a)];const V={};return await this[d(0x1a5)]([],X['opt']['body'],V),this[d(0x283)]=V,await this[d(0x209)](V,X);}async[a9A(0x1a5)](X,j,V,H){const x=a9A;let O;if(j[x(0x1e5)]&&!has(j,'properties')){if(j[x(0x1e5)][x(0x21d)]>0x1){const {choice:F}=await a9O[x(0x213)]([{'type':x(0x24d),'name':x(0x19a),'message':x(0x261)+(X[X[x(0x21d)]-0x1]||'')+'\x20type?','choices':j[x(0x1e5)][x(0x272)](h=>h[x(0x232)]??'??')}]);O=await this[x(0x1b1)](X,j[x(0x1e5)][x(0x1de)](h=>h[x(0x232)]===F),V,H);}else{const h=j[x(0x1e5)][0x0];set(h,x(0x232),j[x(0x232)]),O=await this[x(0x1b1)](X,h,V,H);}O={};}else{if(j['anyOf']&&!has(j,'properties')){if(j[x(0x22e)][x(0x21d)]>0x1){const {choice:P}=await a9O[x(0x213)]([{'type':x(0x24d),'name':x(0x19a),'message':x(0x261)+(X[X[x(0x21d)]-0x1]||'')+'\x20type?','choices':[...j[x(0x22e)][x(0x272)](o=>o[x(0x232)]??'??'),x(0x1ba)]}]);P!==x(0x1ba)&&(O=await this[x(0x1b1)](X,j[x(0x22e)][x(0x1de)](o=>o[x(0x232)]===P),V,H));}else{const o=j[x(0x22e)][0x0];set(o,x(0x232),j[x(0x232)]),O=await this[x(0x1b1)](X,o,V,H);}O={};}else O=await this[x(0x1b1)](X,j,V,H);}return O;}async[a9A(0x1fa)](X,j,V,H){const M=a9A;if(H===![]){const {addEntry:h}=await a9O[M(0x213)]([{'type':M(0x1cd),'name':M(0x256),'message':this[M(0x1a2)](j,M(0x19d),X?.[M(0x232)]),'default':![]}]);if(!h)return V;}const O=Object['keys'](X?.[M(0x1fe)]??[]),F=X[M(0x269)]||[];if(O[M(0x21d)]>0x0)for(const P of O){const o=j['concat'](P);if(j[M(0x21d)]>0x0&&!has(V,j[M(0x1f1)]('.')))set(V,j[M(0x1f1)]('.'),{});await this[M(0x1a5)](o,X[M(0x1fe)][P],V,F[M(0x23e)](P));}else await this['getType'](j,{...X,'type':M(0x1ac)},V,H);return V;}async['askArrayEntry'](X,j,V,H){const g=a9A;if(j&&V)return!![];const O=j?g(0x19d):'Do\x20you\x20want\x20to\x20add\x20more',{addEntry:F}=await a9O[g(0x213)]([{'type':g(0x1cd),'name':g(0x256),'message':this['getPathString'](X,O,j?H:undefined),'default':![]}]);return F;}async['getType'](X,j,V,H){const J=a9A;let O;const F=X[J(0x1f1)]('.');switch(j?.[J(0x1f0)]){case J(0x198):{let h=!![];while(await this['askArrayEntry'](X,h,H,j?.[J(0x232)])){const P=get(V,F);unset(V,F),await this['getType'](X,j[J(0x236)],V);const o=get(V,F);!Array[J(0x24f)](P)?set(V,F,[o]):(P[J(0x230)](o),set(V,F,P)),h=![];}return O||[];}case J(0x20f):{return O=await this[J(0x1fa)](j,X,V,H),O;}case J(0x1ac):O=isValidJSON(await this[J(0x24b)](X,j,H))||undefined;break;case J(0x250):case J(0x1a1):case J(0x26a):default:O=await this['ask'](X,j,H,V);break;}return O!==undefined&&set(V,F,O),O;}async['ask'](X,j,V,H){const b=a9A,O=X[X[b(0x21d)]-0x1],{defaultValue:defaultValue=j?.[b(0x216)]??j?.[b(0x196)],choices:choices=j?.[b(0x1f6)],pagination:F}=await fetchResourceList(O,this[b(0x226)],this[b(0x1c8)],H,this[b(0x1e8)],X);let h='input';if(choices!==undefined&&choices['length']>0x0){if(F!==undefined&&F[b(0x1bf)]!==undefined)h=b(0x24e);else choices['length']>0x4&&typeof choices[0x0]===b(0x250)?h=b(0x1f3):h=b(0x24d);}else{if(j?.[b(0x1f0)]===b(0x1a1))h=b(0x1cd);else{if(j?.[b(0x1f0)]===b(0x26a))h=b(0x27a);else j?.['type']===b(0x1ac)&&(h=b(0x277));}}let P=V!==![]?!(defaultValue!==null&&(typeof defaultValue===b(0x20f)||typeof defaultValue===b(0x1aa)))?defaultValue:JSON['stringify'](defaultValue):typeof defaultValue===b(0x1a1)?defaultValue:'don\x27t\x20change';if(choices)P=P[b(0x27f)]();has(this[b(0x283)],X['join']('.'))&&(P=this[b(0x283)][X[b(0x1f1)]('.')]);const o=choices&&V===![]?[b(0x1ba),...choices]:choices,C=j?.['type']==='integer',B={'type':h,'name':'id','message':this['getQuestionString'](X,j),'choices':o,'default':P,'filter':this['filter'](h,V),'validate':this[b(0x27c)](j,V,C),...F},s=(await a9O[b(0x213)]([B]))['id'];if(s===b(0x1ba)||s==='')return undefined;if(C)return parseInt(s,0xa);return s;}['filter']=(X,j)=>V=>{const E=a9A,H=typeof V===E(0x250)?V[E(0x20a)]():V;return j===![]&&H==='don\x27t\x20change'?'':H;};[a9A(0x22a)](X,j){const t=a9A,V=j?.[t(0x1f0)]!==t(0x1a1)?t(0x264):t(0x274);return this['getPathString'](X,V,j?.[t(0x232)]);}['validate']=(X,j,V)=>H=>{const Z=a9A;if(this[Z(0x28a)]===!![])return!![];const O=[];if(H===''||H===Z(0x1ba)){if(j!==![])O['push']('this\x20option\x20is\x20required,\x20please\x20answer');else return!![];}X[Z(0x1f0)]===Z(0x250)&&X[Z(0x1dc)]!==undefined&&O[Z(0x230)](new RegExp(X['pattern'])[Z(0x23a)](H)?!![]:Z(0x25c)+X['pattern']+'\x27');X[Z(0x1f0)]==='string'&&X['minLength']!==undefined&&O[Z(0x230)](H[Z(0x21d)]>=X[Z(0x240)]?!![]:Z(0x19c)+X[Z(0x240)]+Z(0x26d)+H[Z(0x21d)]+Z(0x1c6));X[Z(0x1f0)]===Z(0x250)&&X[Z(0x23b)]!==undefined&&O[Z(0x230)](H[Z(0x21d)]<=X[Z(0x23b)]?!![]:Z(0x1e3)+X[Z(0x23b)]+Z(0x26d)+H[Z(0x21d)]+Z(0x1c6));V&&Number[Z(0x205)](parseInt(H,0xa))&&O['push'](Z(0x195)+H);X[Z(0x1f0)]===Z(0x26a)&&X[Z(0x1db)]!==undefined&&O[Z(0x230)](H>=X[Z(0x1db)]?!![]:'must\x20be\x20bigger\x20than\x20or\x20equal\x20to\x20'+X['minimum']);X[Z(0x1f0)]==='integer'&&X[Z(0x200)]!==undefined&&O[Z(0x230)](H<=X['maximum']?!![]:'must\x20be\x20smaller\x20than\x20or\x20equal\x20to\x20'+X['maximum']);if(X[Z(0x1f0)]===Z(0x1ac)){const P=isValidJSON(H);O[Z(0x230)](P===![]||isEmpty(P)?'must\x20be\x20a\x20valid\x20non-empty\x20json\x20string':!![]);}const F=O[Z(0x1d3)](o=>o!==!![]),h=X?.[Z(0x216)]?'\x0a'+a9V[Z(0x233)]('>>')+Z(0x251)+a9V[Z(0x275)](JSON[Z(0x1e4)](X[Z(0x216)])):'';return F[Z(0x21d)]>0x0?F[Z(0x1f1)](a9V[Z(0x1c2)](Z(0x23c)))+h:!![];};[a9A(0x1a2)]=(X,j,V)=>{const N=a9A,H=X[X['length']-0x1];function O(){const w=a9j;return X['slice'](0x0,-0x1)[w(0x272)](P=>P[w(0x25d)](0x0)[w(0x217)]()+P[w(0x25b)](0x1))[w(0x1f1)]('>');}const F=X[N(0x21d)]>0x1?a9V[N(0x278)][N(0x275)](O())+':\x20':'',h=V?'\x20('+a9V[N(0x1c9)](V)+')':'';return a9V['reset'](''+F+j+'\x20'+a9V[N(0x1a6)][N(0x1c7)](H)+h+'?');};async[a9A(0x273)](){const p=a9A,X=await this[p(0x226)][p(0x24d)][p(0x22f)][p(0x286)]({})[p(0x231)](j=>j['data']['projects'][p(0x272)](V=>V['id']));return await this[p(0x1ff)](p(0x21f),X);}async[a9A(0x212)](X,j,V,H){const m=a9A,O=V||this[m(0x226)][m(0x20c)][m(0x199)]();if(O===undefined)throw new Error(m(0x254));const F=await j(O);return await this[m(0x1ff)](X,F,(H?H+'\x20in\x20':'')+m(0x1fd)+O+'\x27');}async[a9A(0x255)](X,j,V,H){const k=a9A,O=V||this[k(0x226)][k(0x20c)]['getCurrentProjectName']();if(O===undefined)throw new Error('Default\x20project\x20in\x20context\x20not\x20set\x20and\x20no\x20argument\x20provided.');const F=await j(O);return await this['askForResourcePaginated'](X,F,(H?H+'\x20in\x20':'')+k(0x1fd)+O+'\x27');}[a9A(0x1ff)]=async(X,j,V)=>{const I=a9A;if(j[I(0x21d)]<0x1){const F=V?'for\x20this\x20'+V:I(0x25e);throw new Error(I(0x19e)+X+'\x20'+F+'.');}const H='Choose\x20the\x20'+X+I(0x252),O=j[I(0x21d)]>0x4?I(0x1f3):I(0x24d);return(await a9O[I(0x213)]([{'type':O,'name':I(0x1d6),'message':H,'choices':j}]))[I(0x1d6)];};['askForResourcePaginated']=async(X,j,V)=>{const K=a9A,{elements:H,nextCursor:O}=await j();if(H[K(0x21d)]<0x1){const P=V?K(0x258)+V:K(0x25e);throw new Error(K(0x19e)+X+'\x20'+P+'.');}const F='Choose\x20the\x20'+X+K(0x252);if(O!==undefined){const o=async({nextPageCursor:C})=>{const L=K,B=await j(C);return{'elements':B['elements'],'nextPageCursor':B[L(0x259)]};};return(await a9O[K(0x213)]([{'type':K(0x24e),'name':K(0x1d6),'message':F,'choices':H,'nextPageCursor':O,'loadMore':o}]))[K(0x1d6)];}const h=H['length']>0x4?K(0x1f3):'list';return(await a9O['prompt']([{'type':h,'name':K(0x1d6),'message':F,'choices':H}]))['name'];};[a9A(0x243)]=(X,j)=>async()=>{const a=a9A,V=''+(j?'('+a9V[a(0x1c9)](j)+')\x20':''),H=a(0x201)+a9V[a(0x210)](X)+'\x20'+V+a(0x1a7),O=this[a(0x27c)]({'type':a(0x250),'required':!![]});return(await a9O[a(0x213)]([{'type':a(0x27a),'name':a(0x1d6),'message':H,'validate':O}]))[a(0x1d6)];};[a9A(0x21c)]=async X=>{const r=a9A;return(await a9O['prompt']([{'type':r(0x1cd),'name':r(0x1d6),'message':X,'default':!![]}]))[r(0x1d6)];};[a9A(0x1bc)]=X=>async()=>{const n=a9A,j=async V=>{const R=a9j,H=await this[R(0x226)][R(0x24d)][R(0x23d)][R(0x286)]({'parameters':{'projectId':V}}),O=H['data'][R(0x23d)][R(0x272)](F=>F['id']);return O;};return this[n(0x212)](n(0x221),j,X);};[a9A(0x1da)]=()=>async()=>{const Y=a9A,X=async j=>{const D=a9j,V=await this[D(0x226)][D(0x24d)][D(0x1c4)]({'options':{'per_page':this[D(0x19b)],'cursor':j}}),H=V[D(0x228)][D(0x1c4)][D(0x272)](O=>O['id']);return{'elements':H,'nextCursor':V[D(0x27e)]?.['cursor']};};return this['askForResourcePaginated'](Y(0x1f4),X);};['askForTag']=()=>async()=>{const Q=a9A,X=async j=>{const u=a9j,V=await this[u(0x226)][u(0x24d)][u(0x24c)]({'options':{'per_page':this[u(0x19b)],'cursor':j}}),H=V[u(0x228)][u(0x24c)]?.[u(0x272)](O=>O['id'])??[];return{'elements':H,'nextCursor':V[u(0x27e)]?.[u(0x22c)]};};return this[Q(0x1ad)](Q(0x22b),X);};[a9A(0x227)]=()=>async()=>{const f=a9A,X=await this['apiClient'][f(0x24d)][f(0x1f2)][f(0x286)]({}),j=X[f(0x228)][f(0x1f2)][f(0x272)](V=>V[f(0x1d6)])??[];return this[f(0x1ff)](f(0x276),j);};[a9A(0x219)]=()=>async()=>{const U=a9A,X=async j=>{const z=a9j,V=await this['apiClient'][z(0x24d)][z(0x22d)][z(0x21e)]({'options':{'per_page':this['defaultPaginationPageSize'],'cursor':j}}),H=V[z(0x228)][z(0x21e)]?.[z(0x272)](O=>O[z(0x1d6)])??[];return{'elements':H,'nextCursor':V[z(0x27e)]?.[z(0x22c)]};};return this['askForResourcePaginated'](U(0x27b),X);};[a9A(0x207)]=X=>async()=>{const i=a9A;if(X===undefined)throw new Error('Template\x20id\x20not\x20provided.');const j=async V=>{const q=a9j;let H=this['defaultPaginationPageSize'];const O=await this['apiClient']['list'][q(0x211)]({'parameters':{'templateId':X},'options':{'per_page':H,'cursor':V}}),F=O[q(0x228)][q(0x211)]['map'](h=>h['id']+q(0x242)+h[q(0x26c)]+')');return{'elements':F,'nextCursor':O[q(0x27e)]?.[q(0x22c)]};};return this['askForResourcePaginated'](i(0x1c1),j)[i(0x231)](V=>V[i(0x20d)]('\x20')[0x0]);};[a9A(0x1a4)]=()=>async()=>{const X1=a9A,X=async j=>{const X0=a9j;let V=this[X0(0x19b)];const H=await this[X0(0x226)]['list'][X0(0x1e0)]({'options':{'per_page':V,'cursor':j}}),O=H['data']['logSinks']['map'](F=>F['id']);return{'elements':O,'nextCursor':H['pagination']?.['cursor']};};return this[X1(0x1ad)](X1(0x1ec),X);};['askForPipeline']=X=>async()=>{const X3=a9A,j=async V=>{const X2=a9j,H=await this['apiClient'][X2(0x24d)][X2(0x193)]['all']({'parameters':{'projectId':V}});return H[X2(0x228)]['pipelines'][X2(0x272)](O=>O['id']);};return this[X3(0x212)](X3(0x289),j,X);};[a9A(0x235)]=X=>async()=>{const X5=a9A,j=async V=>{const X4=a9j,H=await this[X4(0x226)][X4(0x24d)]['jobs'][X4(0x286)]({'parameters':{'projectId':V}}),O=H[X4(0x228)]['jobs'][X4(0x272)](F=>F['id']);return O;};return this[X5(0x212)](X5(0x197),j,X);};['askForJobRun']=(X,j,V=![])=>async()=>{const X7=a9A,H='all-job-runs',O=F=>async h=>{const X6=a9j,P=await this[X6(0x226)][X6(0x1df)][X6(0x197)][X6(0x1ed)]({'parameters':{'projectId':F,'jobId':X},'options':{'per_page':this[X6(0x19b)],'cursor':h}}),o=P['data'][X6(0x1ed)][X6(0x272)](C=>C['id']+X6(0x242)+C[X6(0x266)]+')');return V&&o[X6(0x20b)](H),{'elements':o,'nextCursor':P[X6(0x27e)]?.[X6(0x22c)]};};return this[X7(0x255)]('job\x20runs',O,j,X7(0x1f9)+X+'\x27')[X7(0x231)](F=>{const X8=X7,h=F[X8(0x20d)]('\x20')[0x0];if(h===H)return undefined;return h;});};[a9A(0x1d5)]=(X,j,V,H=![])=>async()=>{const X9=a9A,O=X9(0x260);if(V!==undefined){const F=h=>async P=>{const XX=X9,o=await this[XX(0x226)][XX(0x1df)]['job']['builds']({'parameters':{'projectId':h,'jobId':V},'options':{'per_page':this[XX(0x19b)],'cursor':P}}),C=o[XX(0x228)][XX(0x23f)]['map'](B=>B['id']+XX(0x242)+B[XX(0x26c)]+')');return H&&C[XX(0x20b)](O),{'elements':C,'nextCursor':o[XX(0x27e)]?.[XX(0x22c)]};};return this[X9(0x255)]('job\x20builds',F,X,X9(0x1f9)+V+'\x27')[X9(0x231)](h=>{const Xj=X9,P=h[Xj(0x20d)]('\x20')[0x0];if(P===O)return undefined;return P;});}if(j!==undefined){const h=P=>async o=>{const XV=X9,C=await this[XV(0x226)][XV(0x1df)]['service'][XV(0x23f)]({'parameters':{'projectId':P,'serviceId':j},'options':{'per_page':this[XV(0x19b)],'cursor':o}}),B=C[XV(0x228)][XV(0x23f)][XV(0x272)](s=>s['id']+'\x20(startedAt:\x20'+s[XV(0x26c)]+')');if(H)B[XV(0x20b)](O);return{'elements':B,'nextCursor':C[XV(0x27e)]?.[XV(0x22c)]};};return this['askForProjectScopedResourcePaginated'](X9(0x1ca),h,X,'service:\x20\x27'+V+'\x27')[X9(0x231)](P=>{const XH=X9,o=P[XH(0x20d)]('\x20')[0x0];if(o===O)return undefined;return o;});}throw new Error(X9(0x1ea));};[a9A(0x262)]=(X,j,V,H=![])=>async()=>{const XF=a9A,O='all-containers';if(V!==undefined){const F=h=>async P=>{const XO=a9j,o=await this['apiClient'][XO(0x1df)][XO(0x197)][XO(0x25f)]({'parameters':{'projectId':h,'jobId':V},'options':{'per_page':this[XO(0x19b)],'cursor':P}}),C=o['data'][XO(0x25f)]??[],B=C?.[XO(0x272)](s=>s[XO(0x1d6)]+XO(0x242)+s[XO(0x26c)]+')');return H&&B[XO(0x20b)](O),{'elements':B,'nextCursor':o[XO(0x27e)]?.[XO(0x22c)]};};return this[XF(0x255)](XF(0x265),F,X,XF(0x1f9)+V+'\x27')['then'](h=>{const Xh=XF,P=h[Xh(0x20d)]('\x20')[0x0];if(P===O)return undefined;return P;});}if(j!==undefined){const h=P=>async o=>{const XP=XF,C=await this[XP(0x226)][XP(0x1df)][XP(0x221)][XP(0x25f)]({'parameters':{'projectId':P,'serviceId':j},'options':{'per_page':this[XP(0x19b)],'cursor':o}}),B=C[XP(0x228)][XP(0x25f)]??[],s=B[XP(0x272)](S=>S[XP(0x1d6)]+XP(0x242)+S[XP(0x26c)]+')');if(H)s?.[XP(0x20b)](O);return{'elements':s,'nextCursor':C[XP(0x27e)]?.[XP(0x22c)]};};return this[XF(0x255)](XF(0x285),h,X,XF(0x1a3)+V+'\x27')['then'](P=>{const Xo=XF,o=P[Xo(0x20d)]('\x20')[0x0];if(o===O)return undefined;return o;});}throw new Error(XF(0x1be));};[a9A(0x1a8)]=X=>async()=>{const XB=a9A,j=async V=>{const XC=a9j,H=await this[XC(0x226)]['list'][XC(0x24a)]['all']({'parameters':{'projectId':V}});return H[XC(0x228)]['addons'][XC(0x272)](O=>O['id']);};return this[XB(0x212)](XB(0x267),j,X);};[a9A(0x1d8)]=(X,j)=>async()=>{const XS=a9A,V=H=>async O=>{const Xs=a9j,F=await this['apiClient'][Xs(0x1df)][Xs(0x267)][Xs(0x214)]({'parameters':{'projectId':H,'addonId':j},'options':{'per_page':this[Xs(0x19b)],'cursor':O}});return{'elements':F[Xs(0x228)][Xs(0x214)]['map'](h=>h['id']+Xs(0x222)+(h[Xs(0x1b2)]||Xs(0x1d1))+')'),'nextCursor':F['pagination']?.[Xs(0x22c)]};};return this['askForProjectScopedResourcePaginated'](XS(0x214),V,X,XS(0x1f5)+j+'\x27')[XS(0x231)](H=>H['split']('\x20')[0x0]);};['askForAddonRestore']=(X,j,V)=>async()=>{const Xe=a9A,H=O=>async F=>{const Xy=a9j,h=await this[Xy(0x226)][Xy(0x1df)][Xy(0x267)][Xy(0x1ce)][Xy(0x215)]({'parameters':{'projectId':O,'addonId':j,'backupId':V},'options':{'per_page':this[Xy(0x19b)],'cursor':F}});return{'elements':h[Xy(0x228)][Xy(0x215)]['map'](P=>P['id']+Xy(0x222)+(P[Xy(0x1b2)]||Xy(0x1d1))+')'),'nextCursor':h[Xy(0x27e)]?.['cursor']};};return this[Xe(0x255)](Xe(0x1f8),H,X,'addon:\x20\x27'+j+'\x27')[Xe(0x231)](O=>O[Xe(0x20d)]('\x20')[0x0]);};[a9A(0x248)]=X=>async()=>{const XA=a9A,j=async V=>(await this[XA(0x226)][XA(0x24d)][XA(0x225)]({'parameters':{'projectId':V}}))[XA(0x228)][XA(0x272)](H=>H['id']);return this[XA(0x212)](XA(0x238),j,X);};[a9A(0x263)]=X=>async()=>{const XT=a9A,j=async V=>{const Xl=a9j,H=await this['apiClient']['list']['secrets'][Xl(0x286)]({'parameters':{'projectId':V}});return H[Xl(0x228)][Xl(0x218)]['map'](O=>O['id']);};return this['askForProjectScopedResource'](XT(0x1a0),j,X);};async['askForDomain'](){const XW=a9A,X=await this['apiClient'][XW(0x24d)][XW(0x1c3)]['all']({}),j=X[XW(0x228)][XW(0x1c3)]['map'](V=>V[XW(0x1d6)]);return this[XW(0x1ff)]('domain',j);}async['askForCredentials'](){const Xv=a9A,X=await this[Xv(0x226)][Xv(0x24d)][Xv(0x1d2)][Xv(0x286)]({}),j=X[Xv(0x228)][Xv(0x245)][Xv(0x272)](V=>V['id']);return this[Xv(0x1ff)]('credentials',j);}[a9A(0x208)]=X=>async()=>{const XG=a9A,j=await this[XG(0x226)]['get'][XG(0x224)]({'parameters':{'domain':X}}),V=j[XG(0x228)][XG(0x1b8)][XG(0x272)](O=>O['name']+XG(0x288)+O['fullName']+')'),H='domain\x20('+X+')';return this[XG(0x1ff)](XG(0x244),V,H)[XG(0x231)](O=>O[XG(0x20d)]('\x20')[0x0]);};[a9A(0x21a)]=(X,j)=>async()=>{const Xd=a9A,V=await this[Xd(0x226)]['list']['subdomain']['path']({'parameters':{'domain':X,'subdomain':j}}),H=V['data']['paths'][Xd(0x272)](F=>''+F[Xd(0x1af)]),O=Xd(0x1b3)+X+Xd(0x1fc)+j+')';return this[Xd(0x1ff)](Xd(0x1b9),H,O);};[a9A(0x1e7)]=async X=>{const Xx=a9A;return(await a9O[Xx(0x213)]([{'type':'confirm','name':Xx(0x1d0),'message':a9V[Xx(0x284)](Xx(0x26b)+(X||'a\x20Northflank\x20resource')+Xx(0x203)),'default':![]}]))[Xx(0x1d0)];};[a9A(0x1b5)]=async(X,j)=>{const XM=a9A;X[XM(0x1d6)]===undefined&&(j[XM(0x21d)]<=0x0?set(X,XM(0x1d6),XM(0x196)):await retry(0xa)(async()=>{const Xg=XM,{name:V}=await a9O[Xg(0x213)]([{'type':Xg(0x27a),'name':Xg(0x1d6),'message':Xg(0x1ef),'default':Xg(0x1dd)}]);if(!X[Xg(0x27d)]&&j[Xg(0x1de)](H=>H[Xg(0x1d6)]===V)){const {c:H}=await a9O[Xg(0x213)]([{'type':Xg(0x1cd),'name':'c','message':Xg(0x202)+V+Xg(0x1eb),'default':![]}]);if(H===![])throw new Error(Xg(0x20e));set(X,Xg(0x27d),!![]);}set(X,Xg(0x1d6),V);}));if(X[XM(0x1e6)]===undefined){const V=await this[XM(0x1cc)]();set(X,'token',V);}return X;};['tokenPrompt']=async()=>{const XJ=a9A,{token:X}=await a9O[XJ(0x213)]([{'type':'password','name':XJ(0x1e6),'mask':'*','message':XJ(0x25a)}]);return X;};['setPathVars'](X){const Xb=a9A;this[Xb(0x1e8)]=X;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a10T=a10j;(function(X,j){const l=a10j,V=X();while(!![]){try{const H=parseInt(l(0x1c8))/0x1*(-parseInt(l(0x1ce))/0x2)+parseInt(l(0x1b2))/0x3*(-parseInt(l(0x1b4))/0x4)+-parseInt(l(0x1ab))/0x5*(-parseInt(l(0x1c6))/0x6)+-parseInt(l(0x1c0))/0x7*(-parseInt(l(0x1a6))/0x8)+-parseInt(l(0x1a3))/0x9+-parseInt(l(0x1a8))/0xa+parseInt(l(0x1cb))/0xb*(parseInt(l(0x1af))/0xc);if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a10X,0xcdf89));import a10V,{createWebSocketStream}from'ws';import a10H from'open';function a10X(){const t=['login-failure','idle','2202711rYdybS','exit','write','aborted','baseUrl','end','15402BcpFxB','status','712715FkyTRJ','type','openBrowser','434643WXnloj','parse','duplex','2hmbAaF','data','success','Unable\x20to\x20open\x20browser:\x20','login-success','https:','9036063vlQyVs','Failure\x20during\x20login:\x20','agent','24zCDvGK','message','16675960bIrrLF','http:','handleError','205CRFDLA','finally','toString','error','1116aVygbw','catch','stringify','1488XkmMxs','wss:','4000wfXpOq','SIGINT','ws:','init-ack','Unexpected\x20response','initPackage','Login\x20process\x20stopped\x20before\x20completed','replace','startLogin','init'];a10X=function(){return t;};return a10X();}import{EventEmitter}from'events';function a10j(X,j){const V=a10X();return a10j=function(H,O){H=H-0x1a3;let F=V[H];return F;},a10j(X,j);}export class NorthflankApiBrowserLogin extends EventEmitter{['baseUrl'];[a10T(0x1ca)];[a10T(0x1a5)];[a10T(0x1cd)];['status']=a10T(0x1bf);constructor(X,j=!![],V){const W=a10T;super(),this['baseUrl']=X,this[W(0x1ca)]=j,this['agent']=V;}[a10T(0x1bc)](){const v=a10T,X=this[v(0x1c4)][v(0x1bb)](v(0x1d3),v(0x1b3))[v(0x1bb)](v(0x1a9),v(0x1b6)),j=X+'/v1/cli-login',V=new a10V(j,{'agent':this[v(0x1a5)]}),H=async()=>{const d=v;await new Promise(F=>{const G=a10j;this[G(0x1cd)]?.[G(0x1c5)](JSON[G(0x1b1)]({'type':G(0x1c3)}),()=>F());}),process[d(0x1c1)]();},O=new Promise((F,h)=>{const x=v;try{this[x(0x1cd)]=createWebSocketStream(V),process['on'](x(0x1b5),H);}catch(P){h(new Error('Failed\x20to\x20establish\x20connection\x20to\x20command\x20execution\x20proxy:\x20'+P['message']));}this[x(0x1cd)]?.['on'](x(0x1cf),o=>{const M=x,C=JSON[M(0x1cc)](o[M(0x1ad)]());switch(C?.[M(0x1c9)]){case M(0x1b7):{const {loginPage:B}=C;if(B===undefined){this[M(0x1aa)](M(0x1b8),h);return;}this[M(0x1ca)]&&a10H(B)[M(0x1b0)](s=>{const g=M,S=g(0x1d1)+s[g(0x1a7)];this[g(0x1aa)](S,h);});this['emit']('browser-opened',{'url':B});break;}case M(0x1d2):{const {apiToken:s,contextName:S}=C;if(s===undefined){this[M(0x1aa)]('Unexpected\x20response,\x20api\x20token\x20missing',h);return;}this[M(0x1cd)]?.[M(0x1c5)](),F({'token':s,'contextName':S}),this[M(0x1c7)]=M(0x1d0);break;}case M(0x1be):{const y=M(0x1a4)+C?.[M(0x1a7)];this['handleError'](y,h);break;}default:{const A='unable\x20to\x20parse\x20message:\x20'+JSON[M(0x1b1)](C);this['handleError'](A,h);}}}),this['duplex']?.['on']('error',o=>{const J=x;this[J(0x1aa)]('error\x20happened\x20during\x20browser\x20login:\x20'+o[J(0x1a7)],h);}),this[x(0x1cd)]?.['on'](x(0x1c5),()=>{const b=x;if(this[b(0x1c7)]===b(0x1d0)){}else this[b(0x1aa)](b(0x1ba),h);});});return this[v(0x1cd)]?.[v(0x1c2)](this[v(0x1b9)]()),this[v(0x1c7)]=v(0x1bd),O[v(0x1ac)](()=>{process['removeListener']('SIGINT',H);});}[a10T(0x1aa)](X,j){const E=a10T;j?this[E(0x1cd)]?.[E(0x1c5)](()=>j(new Error(X))):this[E(0x1cd)]?.[E(0x1c5)](),this[E(0x1c7)]=E(0x1ae);}[a10T(0x1b9)]=()=>JSON[a10T(0x1b1)]({'type':a10T(0x1bd)});}
|
package/dist/logs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a11A=a11G;(function(N,G){const H=a11G,S=N();while(!![]){try{const U=parseInt(H(0x236))/0x1+parseInt(H(0x226))/0x2+parseInt(H(0x224))/0x3*(-parseInt(H(0x204))/0x4)+parseInt(H(0x216))/0x5*(parseInt(H(0x251))/0x6)+parseInt(H(0x250))/0x7+-parseInt(H(0x231))/0x8+-parseInt(H(0x207))/0x9;if(U===G)break;else S['push'](S['shift']());}catch(K){S['push'](S['shift']());}}}(a11N,0x3a3da));import{ApiClient,LogType}from'@northflank/js-client';function a11G(N,G){const S=a11N();return a11G=function(U,K){U=U-0x1f3;let r=S[U];return r;},a11G(N,G);}import a11S from'chalk';import{assertContextExisting,customUserAgent,error,getCommand,parseDateInput,tsHint,warning}from'../utils.js';import{InquirerHelper}from'../inquirer-helper.js';import{Option}from'commander';import{printResponse}from'../formatting/console-format-helpers.js';import{formatLogLine}from'./log-formatter.js';export class CliLogs{[a11A(0x23c)];[a11A(0x259)];[a11A(0x255)];['inquirerHelper'];['defaultDurationSeconds']=0x708;[a11A(0x24b)]=(N,G,S,U)=>{const Q=a11A,K=getCommand(!![])[Q(0x22c)]((G?Q(0x24a):'')+Q(0x20e))['alias']((G?Q(0x24a):'')+Q(0x25b))[Q(0x21b)]('Get\x20log\x20for\x20the\x20specified\x20'+N)['option'](Q(0x1fe),'Project\x20for\x20logs')[Q(0x211)]('--'+N+Q(0x244)+N+Q(0x258)+N+'Id]',N['charAt'](0x0)[Q(0x228)]()+N[Q(0x263)](0x1)+Q(0x223))[Q(0x211)](Q(0x275),Q(0x1fb));if(G)K[Q(0x211)](Q(0x252),Q(0x21f));if(N==='job')K[Q(0x211)](Q(0x25d),'Job\x20run\x20id,\x20example:\x20162b1977-6636-4000-929b-cc265b862ff0');if(N===Q(0x21c))K['option'](Q(0x23e),Q(0x269));if(S)K[Q(0x211)]('--backup\x20--backupId\x20[backupId]',Q(0x241));if(U)K[Q(0x211)](Q(0x24d),Q(0x1f7));return!G&&!S&&!U&&K[Q(0x266)](new Option(Q(0x249),'Which\x20log\x20types\x20to\x20fetch')['choices'](Object['values'](LogType))),K[Q(0x211)]('-f,\x20--tail',Q(0x206))['option'](Q(0x26e),'Number\x20of\x20lines\x20to\x20return.')[Q(0x211)](Q(0x220),Q(0x22b)+tsHint,parseDateInput)[Q(0x266)](new Option(Q(0x26b),Q(0x233)+tsHint)['argParser'](parseDateInput)['conflicts'](['tail']))[Q(0x211)](Q(0x1f6),Q(0x25c))['addOption'](new Option(Q(0x242),Q(0x22a))['choices'](['backward',Q(0x22d)])[Q(0x1f9)]([Q(0x268)]))[Q(0x266)](new Option(Q(0x254),Q(0x271))[Q(0x1f9)]([Q(0x25f),Q(0x21a),Q(0x201)]))[Q(0x266)](new Option(Q(0x267),'Filter\x20log\x20lines\x20to\x20not\x20include\x20this\x20text')[Q(0x1f9)]([Q(0x234),Q(0x21a),Q(0x201)]))[Q(0x266)](new Option('--regexIncludes\x20<regex>',Q(0x221))[Q(0x1f9)]([Q(0x25f),Q(0x234),Q(0x201)]))[Q(0x266)](new Option(Q(0x215),Q(0x245))[Q(0x1f9)]([Q(0x25f),'regexIncludes',Q(0x234)]))[Q(0x211)](Q(0x209),'Don\x27t\x20use\x20context\x20default\x20values,\x20explicitly\x20use\x20options\x20or\x20ask.',![])[Q(0x266)](new Option(Q(0x225),Q(0x1fa))['choices'](Object[Q(0x22f)]([Q(0x208),Q(0x26c),Q(0x227)]))),K;};constructor(N,G){const T=a11A;this[T(0x23c)]=N,this[T(0x259)]=new ApiClient(N,{'throwErrorOnHttpErrorCode':!![],'customUserAgent':customUserAgent,'agent':G}),this[T(0x255)]=this['apiClient'],this[T(0x248)]=new InquirerHelper(this[T(0x259)]);}[a11A(0x26f)](N,G=![],S=![],U=![]){const N7=a11A,K=async(V,a)=>{const N0=a11G,x=a[N0(0x232)],{apiContext:b,inquirerHelper:e}=this;switch(N){case'service':{const f=x?undefined:b['getCurrentServiceName']();return a[N0(0x203)]||f||await e[N0(0x23b)](V)();}case N0(0x1ff):{const n=x?undefined:b[N0(0x1f5)]();return a[N0(0x25e)]||n||await e['askForJob'](V)();}case N0(0x23a):{return a[N0(0x200)]||await e['askForAddon'](V)();}}},r=async(V,a,x)=>{const N1=a11G;if(G)return x[N1(0x23d)]||await this[N1(0x248)][N1(0x21d)](V,N===N1(0x21c)?a:undefined,N==='job'?a:undefined,!![])();return undefined;},L=async(V,a,x)=>{const N2=a11G;if(S||U)return x[N2(0x21e)]||await this[N2(0x248)][N2(0x240)](V,a)();return undefined;},I=async(V,a,x,b)=>{const N3=a11G;if(U)return b['restoreId']||await this[N3(0x248)][N3(0x23f)](V,a,x)();return undefined;},d=async(V,a,x)=>{const N4=a11G;if(!G&&x[N4(0x202)]!==undefined){if(x[N4(0x202)]!==!![])return x[N4(0x202)];return await this['inquirerHelper'][N4(0x235)](V,N===N4(0x21c)?a:undefined,N===N4(0x1ff)?a:undefined,!![])();}return undefined;},Y=async(V,a,x)=>{const N5=a11G;if(N===N5(0x1ff))return x[N5(0x20b)]||await this[N5(0x248)]['askForJobRun'](a,V,!![])();return undefined;},u=async(V,a,x)=>{const N6=a11G;if(N==='service'){if(x['deploymentId']!==!![])return x[N6(0x26a)];return x[N6(0x26a)];}return undefined;};return this[N7(0x24b)](N,G,S,U)[N7(0x261)](async V=>{const N8=N7,{noDefaults:a,projectId:x,quiet:b,tail:e,types:f,textIncludes:n,textNotIncludes:D,regexIncludes:g,regexNotIncludes:z,direction:v,lineLimit:E,startTime:W,endTime:Z,duration:B,output:j}=V;assertContextExisting(this[N8(0x259)]);const {apiContext:i,inquirerHelper:l,logsApiClient:k}=this,h=a?undefined:i[N8(0x24c)](),O=x||h||await l[N8(0x20d)](),J=await K(O,V),t=await r(O,J,V),P=await L(O,J,V),y=await I(O,J,P,V),c=await Y(O,J,V),M=await u(O,J,V),X=await d(O,J,V);if(W&&Z&&B)throw new Error(N8(0x25a));const o={'projectId':O,'entityId':J},p={'containerName':X,'types':f,'textIncludes':n,'textNotIncludes':D,'regexIncludes':g,'regexNotIncludes':z,'lineLimit':E,'startTime':W,'duration':B,'runId':c,'buildId':t,'backupId':P,'restoreId':y,'deploymentId':M,'isBuild':G??![]},C=U?N8(0x230):S?N8(0x20a):N,R={...p,'endTime':Z,'direction':v};if(!b&&j!==N8(0x227)&&j!==N8(0x1fc)&&j!==N8(0x26c))this[N8(0x213)](N,J,O,{...R,...V});const w=this[N8(0x260)](j,n??g);if(e){const q=await k[N8(0x20e)][N8(0x265)](o,p,C);q['on']('logs-received',w),q['on'](N8(0x253),F=>error('Error\x20while\x20tailing\x20log\x20lines:\x20'+F[N8(0x246)])),q['on'](N8(0x22e),()=>console[N8(0x25b)](N8(0x210))),await q[N8(0x272)]();}else{const F=await k[N8(0x20e)][N8(0x1f8)](o,R,C);if(F['error']){const m=F[N8(0x253)]['details'],s=m?N8(0x24f)+JSON[N8(0x274)](m,null,'\x20'):'';error(N8(0x214)+F['error'][N8(0x246)]+s);}else w(F['data'],F[N8(0x273)]);}});}[a11A(0x213)]=(N,G,S,U)=>{const N9=a11A,{containerName:K,restoreId:r,backupId:L,quiet:I,tail:d,startTime:Y,endTime:u,duration:V}=U;if(I===!![])return;const a=d?N9(0x257)+a11S['bold'](N9(0x205))+')':'',x=d?N9(0x24e):'',b=new Date(),e=Y??new Date(new Date((u??b)[N9(0x256)]())[N9(0x218)]((u??b)['getSeconds']()-(V??this['defaultDurationSeconds']))),f=u??Y!==undefined?new Date(new Date(Y[N9(0x256)]())[N9(0x218)](Y[N9(0x20f)]()+(V??this[N9(0x243)]))):b,n=L!==undefined,D=e&&!n?N9(0x270)+a11S[N9(0x262)](e[N9(0x222)]()):'',g=f&&!n?N9(0x247)+a11S[N9(0x262)](f['toISOString']()):'',z=V?N9(0x26d)+V+N9(0x217):'',v=K?N9(0x229)+a11S[N9(0x262)](K):n?'':N9(0x20c),E=L?N9(0x277)+L:'',W=r?N9(0x1fd)+r:'',Z=N+'\x20'+a11S[N9(0x262)](G)+E+W+N9(0x1f3)+a11S[N9(0x262)](S),B=''+D+g+z;console[N9(0x25b)](N9(0x264)+x+v+N9(0x1f4)+Z+B+a+':');};['getFormatter']=(N,G)=>(S,U)=>{const NN=a11A;if(!N){if(S[NN(0x238)]===0x0)console['log'](NN(0x276));S[NN(0x212)](K=>formatLogLine(K,G));}else printResponse(N,S);U?.[NN(0x219)]&&warning(NN(0x239)+U[NN(0x237)]);};}function a11N(){const NG=['--project\x20--projectId\x20[projectId]','job','addonId','regexNotIncludes','containerId','serviceId','719084aTovJU','\x27Ctrl+C\x27','Tail\x20will\x20stream\x20logs\x20in\x20real-time.\x20Session\x20will\x20be\x20kept\x20open.','4863348OSzQIh','format','--noDefaults','addonBackup','runId','\x20for\x20all\x20containers','askForProject','logs','getSeconds','Log\x20session\x20ended','option','forEach','printInitInfo','Error\x20while\x20fetching\x20log\x20lines:\x20','--regexNotIncludes\x20<regex>','73655KpsVgb','\x20seconds','setSeconds','hasNextPage','regexIncludes','description','service','askForBuild','backupId','Build\x20to\x20get\x20logs\x20from','--startTime\x20<timestamp>','Filter\x20log\x20lines\x20to\x20match\x20this\x20regular\x20expression','toISOString','\x20to\x20get\x20logs\x20from','3WsmNxT','-o,\x20--output\x20[output]','321068BOqPRb','yaml','toUpperCase','\x20for\x20container\x20','Direction\x20of\x20logs.\x20Ignored\x20when\x20tailing.','Get\x20logs\x20generated\x20after\x20this\x20time,\x20','name','forward','close','values','addonRestore','3662504DowcDn','noDefaults','Get\x20logs\x20generated\x20before\x20this\x20time,\x20','textIncludes','askForContainer','376157OywFkq','cursor','length','Element\x20count\x20for\x20this\x20request\x20exceeds\x20the\x20line\x20limit,\x20output\x20was\x20truncated.\x20Cut\x20off\x20at\x20timestamp\x20','addon','askForService','apiContext','buildId','--deployment\x20--deploymentId\x20[deploymentId]','askForAddonRestore','askForAddonBackup','Backup\x20to\x20get\x20logs\x20from','-d,\x20--direction\x20<order>','defaultDurationSeconds','\x20--','Filter\x20log\x20lines\x20to\x20not\x20match\x20this\x20regular\x20expression','message',',\x20to:\x20','inquirerHelper','-t,\x20--types\x20<types...>','build-','getStandardLogCommand','getCurrentProjectName','--restore\x20--restoreId\x20[restoreId]','\x20with\x20live-tailing','\x0aDetails:\x20','3168340iltazB','174nSjWld','--build\x20--buildId\x20[buildId]','error','--textIncludes\x20<text>','logsApiClient','valueOf','\x20(exit\x20with\x20','Id\x20[','apiClient','Only\x20two\x20of\x20\x27startTime\x27,\x20\x27endTime\x27\x20and\x20\x27duration\x27\x20can\x20be\x20set.','log','Length\x20of\x20timespan\x20in\x20seconds.\x20Only\x20valid\x20if\x20not\x20both,\x20startTime\x20and\x20endTime\x20are\x20set','--run\x20--runId\x20[runId]','jobId','textNotIncludes','getFormatter','action','bold','slice','>\x20Container\x20logs','logTail','addOption','--textNotIncludes\x20<text>','tail','Deployment\x20id,\x20example:\x20my-service-54785f4','deploymentId','--endTime\x20<timestamp>','json',',\x20duration:\x20','-l,\x20--lineLimit\x20[limit]','getLogsCommand',',\x20from:\x20','Filter\x20log\x20lines\x20to\x20include\x20this\x20text','start','pagination','stringify','--container\x20--containerId\x20[containerId]','No\x20logs\x20found\x20for\x20this\x20query.\x20Make\x20sure\x20to\x20select\x20an\x20appropriate\x20time\x20window.',',\x20backup\x20id\x20','\x20in\x20project\x20','\x20of\x20','getCurrentJobName','--duration\x20[duration]','Restore\x20to\x20get\x20logs\x20from','logRange','conflicts','Output\x20formatting.\x20Will\x20use\x20advanced\x20formatting\x20by\x20default.','Container\x20to\x20exec\x20into\x20(logs\x20from\x20all\x20containers\x20will\x20be\x20shown\x20if\x20not\x20specified)','yml',',\x20restore\x20id\x20'];a11N=function(){return NG;};return a11N();}
|
|
1
|
+
const a11q=a11j;(function(X,j){const U=a11j,V=X();while(!![]){try{const H=-parseInt(U(0xf5))/0x1*(-parseInt(U(0x12e))/0x2)+parseInt(U(0x156))/0x3*(-parseInt(U(0xd4))/0x4)+parseInt(U(0xe9))/0x5*(parseInt(U(0x143))/0x6)+-parseInt(U(0xe0))/0x7+parseInt(U(0xf9))/0x8+-parseInt(U(0x146))/0x9+parseInt(U(0x120))/0xa;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a11X,0x69f30));function a11j(X,j){const V=a11X();return a11j=function(H,O){H=H-0xd4;let F=V[H];return F;},a11j(X,j);}import{ApiClient,LogType}from'@northflank/js-client';import a11V from'chalk';import{assertContextExisting,customUserAgent,error,getCommand,parseDateInput,tsHint,warning}from'../utils.js';import{InquirerHelper}from'../inquirer-helper.js';import{Option}from'commander';import{printResponse}from'../formatting/console-format-helpers.js';import{formatLogLine}from'./log-formatter.js';export class CliLogs{['apiContext'];['apiClient'];[a11q(0x129)];[a11q(0x137)];[a11q(0x147)]=0x708;[a11q(0xf0)]=(X,j,V,H)=>{const c=a11q,O=getCommand(!![])['name']((j?c(0xdb):'')+c(0x102))[c(0x139)]((j?c(0xdb):'')+c(0xe4))[c(0x122)](c(0x13a)+X)[c(0x106)](c(0xfc),c(0x105))[c(0x106)]('--'+X+c(0x132)+X+c(0xf1)+X+c(0x144),X['charAt'](0x0)[c(0x14e)]()+X['slice'](0x1)+c(0x10e))['option']('--container\x20--containerId\x20[containerId]',c(0xde));if(j)O[c(0x106)](c(0xff),c(0x13f));if(X===c(0x10c))O['option'](c(0xf6),c(0x12c));if(X==='service')O[c(0x106)](c(0xdc),c(0x128));if(V)O['option'](c(0x121),c(0x135));if(H)O[c(0x106)]('--restore\x20--restoreId\x20[restoreId]',c(0x12a));return!j&&!V&&!H&&O[c(0x149)](new Option(c(0x114),c(0xf4))[c(0x107)](Object['values'](LogType))),O[c(0x106)](c(0x13b),c(0x11c))['option'](c(0xf3),c(0x14d))['option']('--startTime\x20<timestamp>',c(0x117)+tsHint,parseDateInput)[c(0x149)](new Option(c(0x11a),c(0x10d)+tsHint)[c(0xf7)](parseDateInput)[c(0x127)](['tail']))[c(0x106)]('--duration\x20[duration]','Length\x20of\x20timespan\x20in\x20seconds.\x20Only\x20valid\x20if\x20not\x20both,\x20startTime\x20and\x20endTime\x20are\x20set')[c(0x149)](new Option(c(0x14a),c(0xec))[c(0x107)]([c(0x14f),c(0xf8)])[c(0x127)]([c(0xdd)]))[c(0x149)](new Option('--textIncludes\x20<text>',c(0x109))[c(0x127)]([c(0x14b),'regexIncludes','regexNotIncludes']))[c(0x149)](new Option(c(0x142),c(0xe1))['conflicts']([c(0x104),c(0x12f),c(0x11f)]))['addOption'](new Option(c(0xd8),c(0xfe))[c(0x127)]([c(0x14b),c(0x104),c(0x11f)]))[c(0x149)](new Option(c(0x10b),c(0xd9))[c(0x127)]([c(0x14b),c(0x12f),c(0x104)]))[c(0x106)]('--noDefaults',c(0xe2),![])['addOption'](new Option('-o,\x20--output\x20[output]',c(0xf2))[c(0x107)](Object['values'](['format','json',c(0xeb)]))),O;};constructor(X,j){const i=a11q;this[i(0x10f)]=X,this[i(0xfd)]=new ApiClient(X,{'throwErrorOnHttpErrorCode':!![],'customUserAgent':customUserAgent,'agent':j}),this[i(0x129)]=this[i(0xfd)],this[i(0x137)]=new InquirerHelper(this[i(0xfd)]);}[a11q(0x13e)](X,j=![],V=![],H=![]){const X7=a11q,O=async(s,S)=>{const X0=a11j,y=S[X0(0xfb)],{apiContext:e,inquirerHelper:A}=this;switch(X){case X0(0x131):{const l=y?undefined:e['getCurrentServiceName']();return S['serviceId']||l||await A[X0(0x141)](s)();}case X0(0x10c):{const T=y?undefined:e[X0(0x140)]();return S[X0(0xd5)]||T||await A['askForJob'](s)();}case'addon':{return S[X0(0x118)]||await A[X0(0x108)](s)();}}},F=async(s,S,y)=>{const X1=a11j;if(j)return y[X1(0x148)]||await this[X1(0x137)][X1(0xd6)](s,X===X1(0x131)?S:undefined,X===X1(0x10c)?S:undefined,!![])();return undefined;},h=async(s,S,y)=>{const X2=a11j;if(V||H)return y[X2(0x100)]||await this[X2(0x137)][X2(0x111)](s,S)();return undefined;},P=async(s,S,y,e)=>{const X3=a11j;if(H)return e[X3(0x10a)]||await this[X3(0x137)][X3(0x101)](s,S,y)();return undefined;},o=async(s,S,y)=>{const X4=a11j;if(!j&&y[X4(0x13c)]!==undefined){if(y[X4(0x13c)]!==!![])return y['containerId'];return await this[X4(0x137)]['askForContainer'](s,X===X4(0x131)?S:undefined,X===X4(0x10c)?S:undefined,!![])();}return undefined;},C=async(s,S,y)=>{const X5=a11j;if(X===X5(0x10c))return y[X5(0xed)]||await this[X5(0x137)][X5(0x11d)](S,s,!![])();return undefined;},B=async(s,S,y)=>{const X6=a11j;if(X===X6(0x131)){if(y[X6(0xe5)]!==!![])return y[X6(0xe5)];return y[X6(0xe5)];}return undefined;};return this['getStandardLogCommand'](X,j,V,H)[X7(0xe3)](async s=>{const X8=X7,{noDefaults:S,projectId:y,quiet:e,tail:A,types:l,textIncludes:T,textNotIncludes:W,regexIncludes:v,regexNotIncludes:G,direction:d,lineLimit:x,startTime:M,endTime:g,duration:J,output:b}=s;assertContextExisting(this[X8(0xfd)]);const {apiContext:E,inquirerHelper:t,logsApiClient:Z}=this,w=S?undefined:E[X8(0x11b)](),N=y||w||await t[X8(0x145)](),p=await O(N,s),m=await F(N,p,s),k=await h(N,p,s),I=await P(N,p,k,s),K=await C(N,p,s),L=await B(N,p,s),a=await o(N,p,s);if(M&&g&&J)throw new Error(X8(0x125));const r={'projectId':N,'entityId':p},R={'containerName':a,'types':l,'textIncludes':T,'textNotIncludes':W,'regexIncludes':v,'regexNotIncludes':G,'lineLimit':x,'startTime':M,'duration':J,'runId':K,'buildId':m,'backupId':k,'restoreId':I,'deploymentId':L,'isBuild':j??![]},n=H?X8(0xe8):V?'addonBackup':X,D={...R,'endTime':g,'direction':d};if(!e&&b!==X8(0xeb)&&b!==X8(0x112)&&b!=='json')this[X8(0x133)](X,p,N,{...D,...s});const Y=this['getFormatter'](b,T??v);if(A){const u=await Z['logs'][X8(0x153)](r,R,n);u['on']('logs-received',Y),u['on']('error',Q=>error(X8(0x110)+Q[X8(0xef)])),u['on'](X8(0x13d),()=>console['log'](X8(0x113))),await u[X8(0xdf)]();}else{const Q=await Z[X8(0x102)][X8(0x136)](r,D,n);if(Q[X8(0x130)]){const f=Q['error'][X8(0xe6)],z=f?X8(0x12b)+JSON[X8(0xe7)](f,null,'\x20'):'';error(X8(0x119)+Q[X8(0x130)]['message']+z);}else Y(Q[X8(0x154)],Q[X8(0xea)]);}});}[a11q(0x133)]=(X,j,V,H)=>{const X9=a11q,{containerName:O,restoreId:F,backupId:h,quiet:P,tail:o,startTime:C,endTime:B,duration:s}=H;if(P===!![])return;const S=o?X9(0xda)+a11V[X9(0xfa)](X9(0x116))+')':'',y=o?X9(0xd7):'',e=new Date(),A=(E,t)=>new Date(E['getTime']()+t*0x3e8),l=C??A(B??e,-(s??this[X9(0x147)])),T=B??A(l,s??this[X9(0x147)]),W=h!==undefined,v=l&&!W?X9(0x155)+a11V[X9(0xfa)](l[X9(0x103)]()):'',G=T&&!W?',\x20to:\x20'+a11V['bold'](T[X9(0x103)]()):'',d=s?X9(0x123)+s+X9(0x124):'',x=O?X9(0x150)+a11V[X9(0xfa)](O):W?'':X9(0x151),M=h?X9(0xee)+h:'',g=F?X9(0x11e)+F:'',J=X+'\x20'+a11V['bold'](j)+M+g+X9(0x12d)+a11V[X9(0xfa)](V),b=''+v+G+d;console[X9(0xe4)](X9(0x138)+y+x+X9(0x14c)+J+b+S+':');};[a11q(0x134)]=(X,j)=>(V,H)=>{const XX=a11q;if(!X){if(V['length']===0x0)console['log'](XX(0x115));V['forEach'](O=>formatLogLine(O,j));}else printResponse(X,V);H?.['hasNextPage']&&warning(XX(0x152)+H[XX(0x126)]);};}function a11X(){const Xj=['regexNotIncludes','3374500ErWthE','--backup\x20--backupId\x20[backupId]','description',',\x20duration:\x20','\x20seconds','Only\x20two\x20of\x20\x27startTime\x27,\x20\x27endTime\x27\x20and\x20\x27duration\x27\x20can\x20be\x20set.','cursor','conflicts','Deployment\x20id,\x20example:\x20my-service-54785f4','logsApiClient','Restore\x20to\x20get\x20logs\x20from','\x0aDetails:\x20','Job\x20run\x20id,\x20example:\x20162b1977-6636-4000-929b-cc265b862ff0','\x20in\x20project\x20','14eKaDIC','regexIncludes','error','service','\x20--','printInitInfo','getFormatter','Backup\x20to\x20get\x20logs\x20from','logRange','inquirerHelper','>\x20Container\x20logs','alias','Get\x20log\x20for\x20the\x20specified\x20','-f,\x20--tail','containerId','close','getLogsCommand','Build\x20to\x20get\x20logs\x20from','getCurrentJobName','askForService','--textNotIncludes\x20<text>','2901918lmbklJ','Id]','askForProject','1419849OAOjQA','defaultDurationSeconds','buildId','addOption','-d,\x20--direction\x20<order>','textNotIncludes','\x20of\x20','Number\x20of\x20lines\x20to\x20return.','toUpperCase','backward','\x20for\x20container\x20','\x20for\x20all\x20containers','Element\x20count\x20for\x20this\x20request\x20exceeds\x20the\x20line\x20limit,\x20output\x20was\x20truncated.\x20Cut\x20off\x20at\x20timestamp\x20','logTail','data',',\x20from:\x20','19221wCsauW','320yrIIxv','jobId','askForBuild','\x20with\x20live-tailing','--regexIncludes\x20<regex>','Filter\x20log\x20lines\x20to\x20not\x20match\x20this\x20regular\x20expression','\x20(exit\x20with\x20','build-','--deployment\x20--deploymentId\x20[deploymentId]','tail','Container\x20to\x20exec\x20into\x20(logs\x20from\x20all\x20containers\x20will\x20be\x20shown\x20if\x20not\x20specified)','start','572901BicFWp','Filter\x20log\x20lines\x20to\x20not\x20include\x20this\x20text','Don\x27t\x20use\x20context\x20default\x20values,\x20explicitly\x20use\x20options\x20or\x20ask.','action','log','deploymentId','details','stringify','addonRestore','5kgDuQM','pagination','yaml','Direction\x20of\x20logs.\x20Ignored\x20when\x20tailing.','runId',',\x20backup\x20id\x20','message','getStandardLogCommand','Id\x20[','Output\x20formatting.\x20Will\x20use\x20advanced\x20formatting\x20by\x20default.','-l,\x20--lineLimit\x20[limit]','Which\x20log\x20types\x20to\x20fetch','38133nSyuAB','--run\x20--runId\x20[runId]','argParser','forward','784784gGUpdZ','bold','noDefaults','--project\x20--projectId\x20[projectId]','apiClient','Filter\x20log\x20lines\x20to\x20match\x20this\x20regular\x20expression','--build\x20--buildId\x20[buildId]','backupId','askForAddonRestore','logs','toISOString','textIncludes','Project\x20for\x20logs','option','choices','askForAddon','Filter\x20log\x20lines\x20to\x20include\x20this\x20text','restoreId','--regexNotIncludes\x20<regex>','job','Get\x20logs\x20generated\x20before\x20this\x20time,\x20','\x20to\x20get\x20logs\x20from','apiContext','Error\x20while\x20tailing\x20log\x20lines:\x20','askForAddonBackup','yml','Log\x20session\x20ended','-t,\x20--types\x20<types...>','No\x20logs\x20found\x20for\x20this\x20query.\x20Make\x20sure\x20to\x20select\x20an\x20appropriate\x20time\x20window.','\x27Ctrl+C\x27','Get\x20logs\x20generated\x20after\x20this\x20time,\x20','addonId','Error\x20while\x20fetching\x20log\x20lines:\x20','--endTime\x20<timestamp>','getCurrentProjectName','Tail\x20will\x20stream\x20logs\x20in\x20real-time.\x20Session\x20will\x20be\x20kept\x20open.','askForJobRun',',\x20restore\x20id\x20'];a11X=function(){return Xj;};return a11X();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a12j(X,j){const V=a12X();return a12j=function(H,O){H=H-0x1b0;let F=V[H];return F;},a12j(X,j);}const a12B=a12j;(function(X,j){const C=a12j,V=X();while(!![]){try{const H=parseInt(C(0x1c9))/0x1*(parseInt(C(0x1b7))/0x2)+parseInt(C(0x1c2))/0x3+-parseInt(C(0x1be))/0x4*(-parseInt(C(0x1b4))/0x5)+parseInt(C(0x1c1))/0x6*(parseInt(C(0x1c7))/0x7)+-parseInt(C(0x1b1))/0x8*(parseInt(C(0x1ba))/0x9)+parseInt(C(0x1c6))/0xa+-parseInt(C(0x1c8))/0xb*(parseInt(C(0x1bc))/0xc);if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a12X,0x368c7));function a12X(){const y=['pattern','156720eXObsw','283818TkrGGY','bold','log','containerId','4364660IFUXdW','70QKoSlP','4506667ddPGCv','9928PBONup','\x20--\x20','replace','blue','8LWpZWE','green','color','5xfZmXR','yellow','s\x08(?!mailto:)(?:(?:http|https|ftp)://)(?:\x5cS+(?::\x5cS*)?@)?(?:(?:(?:[1-9]\x5cd?|1\x5cd\x5cd|2[01]\x5cd|22[0-3])(?:\x5c.(?:1?\x5cd{1,2}|2[0-4]\x5cd|25[0-5])){2}(?:\x5c.(?:[0-9]\x5cd?|1\x5cd\x5cd|2[0-4]\x5cd|25[0-4]))|(?:(?:[a-z\x5cu00a1-\x5cuffff0-9]+-?)*[a-z\x5cu00a1-\x5cuffff0-9]+)(?:\x5c.(?:[a-z\x5cu00a1-\x5cuffff0-9]+-?)*[a-z\x5cu00a1-\x5cuffff0-9]+)*(?:\x5c.(?:[a-z\x5cu00a1-\x5cuffff]{2,})))|localhost)(?::\x5cd{2,5})?(?:(/|\x5c?|#)[^\x5cs]*)?\x08s','2FBTanP','dim','reduce','2797857SFzgXH','cyan','12NMThZr','red','567204waPJni','grey'];a12X=function(){return y;};return a12X();}import a12V from'chalk';export const defaultLogSyntax=[{'color':a12B(0x1bf),'pattern':/\[[0-9]{1,2}\/[a-z]{3}\/[0-9]{4}:[0-9]{2}:[0-9]{2}:[0-9]{2} \+[0-9]{4}\]/i},{'color':a12B(0x1bf),'pattern':/[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(.[0-9]+)?Z/i},{'color':'grey','pattern':/[0-9]{4}\/[0-9]{2}\/[0-9]{2}/i},{'color':a12B(0x1bf),'pattern':/\s\b([0-9]{2}:){1,2}[0-9]{2}\b\s/i},{'color':a12B(0x1c3),'pattern':new RegExp(a12B(0x1b6),'i')},{'color':a12B(0x1b2),'pattern':/(?:\d{1,3}\.){3}\d{1,3}/i},{'color':a12B(0x1b2),'pattern':/(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))/},{'color':a12B(0x1b0),'pattern':/\b(GET|HEAD|POST|PUT|DELETE|CONNECT|OPTIONS|TRACE|PATCH)\b/},{'color':'greenBright','pattern':/\b(successful|success|completed|complete|done)\b/i},{'color':a12B(0x1bd),'pattern':/\b(failed|fail|stderr|error|err)\b/i},{'color':'gray','pattern':/\b(information|info|debug)\b/i},{'color':a12B(0x1b5),'pattern':/\b(warning|warn)\b/i},{'color':a12B(0x1b0),'pattern':/[0-9a-f]{64}/i},{'color':'blue','pattern':/[0-9a-fA-F]{8}[-]?([0-9a-fA-F]{4}[-]?){3}[0-9a-fA-F]{12}/i}];export const formatLogLine=(X,j)=>{const s=a12B,V=a12V[s(0x1b8)](X['ts']['toISOString']()),H=a12V[s(0x1bb)](X[s(0x1c5)]),O=defaultLogSyntax[s(0x1b9)]((h,P)=>{const S=s;return h[S(0x1cb)](P[S(0x1c0)],o=>P['color']?a12V[P[S(0x1b3)]](o):a12V['grey'](o));},X[s(0x1c4)]),F=j?O['replace'](new RegExp(j,'g'),h=>a12V[s(0x1c3)](h)):O;console[s(0x1c4)](V+'\x20'+H+s(0x1ca)+F);};
|
package/dist/metrics/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a13P=a13G;function a13G(N,G){const S=a13N();return a13G=function(U,K){U=U-0x164;let r=S[U];return r;},a13G(N,G);}(function(N,G){const t=a13G,S=N();while(!![]){try{const U=-parseInt(t(0x1aa))/0x1*(-parseInt(t(0x167))/0x2)+-parseInt(t(0x191))/0x3*(parseInt(t(0x1e0))/0x4)+parseInt(t(0x172))/0x5*(-parseInt(t(0x17f))/0x6)+-parseInt(t(0x19f))/0x7+-parseInt(t(0x1ca))/0x8+-parseInt(t(0x1ab))/0x9*(-parseInt(t(0x177))/0xa)+parseInt(t(0x1d1))/0xb*(parseInt(t(0x1e2))/0xc);if(U===G)break;else S['push'](S['shift']());}catch(K){S['push'](S['shift']());}}}(a13N,0xb0887));import{ApiClient,MetricType}from'@northflank/js-client';import{assertContextExisting,customUserAgent,error,getCommand,parseDateInput,tsHint,warning}from'../utils.js';import{InquirerHelper}from'../inquirer-helper.js';import{Option}from'commander';import{downSampleData,getAsciiChart}from'../formatting/terminal-chart.js';import{printAsTable,printResponse}from'../formatting/console-format-helpers.js';function a13N(){const N5=['getTime',',\x20to:\x20','163149ZxmWdA',',\x20duration:\x20','askForAddon','unshift','jobId','stdout','clear','Container\x20to\x20exec\x20into\x20(logs\x20from\x20all\x20containers\x20will\x20be\x20shown\x20if\x20not\x20specified)','service','yaml','handleError','-o,\x20--output\x20[output]','Don\x27t\x20use\x20context\x20default\x20values,\x20explicitly\x20use\x20options\x20or\x20ask.','data','6575198LstxRy','getCurrentServiceName','getPaddingDataStart','metricsRange',',\x20from:\x20','apiContext','Get\x20metrics\x20after\x20this\x20timestamp,\x20','option','max','details','getMetricsCommand','2YCSRUM','216009oVBfUB','No\x20metrics\x20found\x20for\x20this\x20query','addonId','getPaddingDataEnd','runId','--startTime\x20<timestamp>',',\x20metric\x20types:\x20','--timestamp\x20[timestamp]','value','Get\x20metrics\x20at\x20this\x20exact\x20timestamp,\x20if\x20no\x20timestamp\x20set\x20most\x20recent\x20time\x20is\x20used.\x20','Error\x20while\x20fetching\x20metrics\x20entries:\x20','getStandardMetricsCommand','askForJobRun','printMetricsGraph','conflicts','\x20for\x20container:\x20','-t,\x20--metricTypes\x20<metricTypes...>','printMetricsSingle','\x20to\x20get\x20logs\x20from','startTime',',\x20volume:\x20','exit','argParser','refreshInterval','\x20of\x20','Project\x20for\x20logs','toUpperCase','Metrics\x20overview','pct','metricsSingle','Id\x20[NAME]','5541680ZxJcBB','apiClient','addOption','metricsApiClient','yml','getCurrentProjectName','askForContainer','11Cydikp','description','format','Length\x20of\x20timespan\x20in\x20seconds.\x20Only\x20valid\x20if\x20not\x20both,\x20startTime\x20and\x20endTime\x20are\x20set','rows','bold','--noDefaults','assign','printMetricsTable','addon','askForBuild','--duration\x20[duration]','min','action','flat','76FkZyVl','askForJob','29323068dHZMkZ','keys','Get\x20metrics\x20before\x20this\x20timestamp,\x20','N/A','isNaN','1210458zGwsGW','log','container\x20','join','error','length','buildId','metric','Get\x20metrics\x20for\x20the\x20specified\x20','slice','Job\x20run\x20id,\x20example:\x20162b1977-6636-4000-929b-cc265b862ff0','35hwUvfw','Which\x20metric\x20type\x20to\x20fetch','job','choices','map','470AOtfZQ','Deployment\x20id,\x20example:\x20my-service-54785f4','valueOf','deploymentId','--run\x20--runId\x20[runId]','all\x20containers','toFixed','--build\x20--buildId\x20[buildId]','1194612ipkfxA','toTimeString','message','metrics','\x20seconds','inquirerHelper','metricId','metricUnit','values','--deployment\x20--deploymentId\x20[deploymentId]','push','containerId','\x20in\x20project\x20','\x20--','build-','forEach'];a13N=function(){return N5;};return a13N();}import a13S from'chalk';export class CliMetrics{[a13P(0x1a4)];[a13P(0x1cb)];[a13P(0x1cd)];['inquirerHelper'];[a13P(0x1c2)]=0x2710;[a13P(0x1b6)]=(N,G)=>{const y=a13P,S=getCommand(!![])['name']((G?y(0x18d):'')+y(0x182))['alias']((G?y(0x18d):'')+y(0x16e))[y(0x1d2)](y(0x16f)+N)[y(0x1a6)]('--project\x20--projectId\x20[NAME]',y(0x1c4))['option']('--'+N+y(0x18c)+N+y(0x1c9),N['charAt'](0x0)[y(0x1c5)]()+N[y(0x170)](0x1)+y(0x1bd))[y(0x1a6)]('--container\x20--containerId\x20[NAME]',y(0x198))[y(0x1a6)](y(0x1b0),y(0x1a5)+tsHint,parseDateInput)[y(0x1a6)]('--endTime\x20<timestamp>',y(0x164)+tsHint,parseDateInput)[y(0x1a6)](y(0x1dc),y(0x1d4))[y(0x1cc)](new Option(y(0x1bb),y(0x173))[y(0x175)](Object[y(0x187)](MetricType)))[y(0x1cc)](new Option(y(0x1b2),y(0x1b4)+tsHint)[y(0x1c1)](parseDateInput)[y(0x1b9)]([y(0x1be),'endTime']))[y(0x1a6)](y(0x1d7),y(0x19d),![])[y(0x1cc)](new Option(y(0x19c),'Output\x20formatting.\x20Will\x20use\x20advanced\x20formatting\x20by\x20default.')[y(0x175)](Object[y(0x187)]([y(0x1d3),'json',y(0x19a)])));if(G)S[y(0x1a6)](y(0x17e),'Build\x20to\x20get\x20logs\x20from');if(N===y(0x174))S[y(0x1a6)](y(0x17b),y(0x171));if(N===y(0x199))S[y(0x1a6)](y(0x188),y(0x178));return S;};constructor(N,G){const c=a13P;this['apiContext']=N,this['apiClient']=new ApiClient(N,{'throwErrorOnHttpErrorCode':!![],'customUserAgent':customUserAgent,'agent':G}),this[c(0x1cd)]=this['apiClient'],this[c(0x184)]=new InquirerHelper(this[c(0x1cb)]);}[a13P(0x1a9)](N,G=![]){const R=a13P,S=async(I,d)=>{const M=a13G,Y=d['noDefaults'],{apiContext:u,inquirerHelper:V}=this;switch(N){case M(0x199):{const a=Y?undefined:u[M(0x1a0)]();return d['serviceId']||a||await V['askForService'](I)();}case M(0x174):{const x=Y?undefined:u[M(0x1a0)]();return d[M(0x195)]||x||await V[M(0x1e1)](I)();}case M(0x1da):{const b=Y?undefined:u[M(0x1a0)]();return d[M(0x1ad)]||b||await V[M(0x193)](I)();}}},U=async(I,d,Y)=>{const X=a13G;if(G)return Y[X(0x16d)]||await this['inquirerHelper'][X(0x1db)](I,N===X(0x199)?d:undefined,N===X(0x174)?d:undefined,!![])();return undefined;},K=async(I,d,Y)=>{const o=a13G;if(!G&&Y[o(0x18a)]!==undefined){if(Y[o(0x18a)]!==!![])return Y[o(0x18a)];return await this['inquirerHelper'][o(0x1d0)](I,N===o(0x199)?d:undefined,N===o(0x174)?d:undefined,!![])();}return undefined;},r=async(I,d,Y)=>{const p=a13G;if(N===p(0x174))return Y[p(0x1af)]||await this[p(0x184)][p(0x1b7)](d,I,!![])();return undefined;},L=async(I,d,Y)=>{const C=a13G;if(N==='service'){if(Y[C(0x17a)]!==!![])return Y['deploymentId'];return Y['deploymentId'];}return undefined;};return this[R(0x1b6)](N,G)[R(0x1de)](async I=>{const w=R,{noDefaults:d,projectId:Y,duration:u,timestamp:V,output:a,startTime:x,endTime:b,metricTypes:e,quiet:f}=I;assertContextExisting(this[w(0x1cb)]);if(x&&b&&u)throw new Error('Only\x20two\x20of\x20\x27startTime\x27,\x20\x27endTime\x27\x20and\x20\x27duration\x27\x20can\x20be\x20set.');const {apiContext:n,inquirerHelper:D,metricsApiClient:g}=this,z=d?undefined:n[w(0x1cf)](),v=Y||z||await D['askForProject'](),E=await S(v,I),W=await U(v,E,I),Z=await r(v,E,I),B=await L(v,E,I),j=await K(v,E,I),i={'projectId':v,'entityId':E},l={'containerName':j,'startTime':x,'endTime':b,'duration':u,'timestamp':V,'metricTypes':e,'runId':Z,'buildId':W,'deploymentId':B,'isBuild':G??![]},k=!(x||b||u);if(!f&&a!=='yaml'&&a!==w(0x1ce)&&a!=='json')this['printInitInfo'](N,E,v,l,f);if(k){if(a!==undefined){const h=await g[w(0x182)][w(0x1c8)](i,l,N);this[w(0x19b)](h),printResponse(a,h[w(0x19e)]);}else[...Array(process[w(0x196)][w(0x1d5)]-0x1)][w(0x18e)]((O,J)=>J===0x0?console['log']('Fetching\x20data..'):console['log']()),await this[w(0x1d9)](i,l,N)(),setInterval(this['printMetricsTable'](i,l,N),this[w(0x1c2)]),await new Promise(O=>setTimeout(O,this[w(0x1c2)]*0x64));}else{const O=await g[w(0x182)][w(0x1a2)](i,l,N);this['handleError'](O),a!==undefined?printResponse(a,O[w(0x19e)]):this[w(0x1b8)](x,b??new Date())(O['data']);}process[w(0x1c0)]();});}[a13P(0x1bc)](N){const m=a13P,G=(K,r)=>{const q=a13G;if(!r?.[q(0x1b3)])q(0x165);const L=K[q(0x186)]===q(0x1c7)?'%':K[q(0x186)];return''+Number(r?.[q(0x1b3)])[q(0x17d)](0x3)+L;},S=K=>{const F=a13G;if(!K?.['ts'])F(0x165);return K['ts'][F(0x180)]()['split']('\x20')[0x0];},U={};Object[m(0x1e3)](N)['forEach'](K=>{const {values:r,metricInfo:L}=N[K];return r['forEach'](I=>{const s=a13G,d=I['metadata'][s(0x18a)];Object[s(0x1d8)](U,{[d]:{...U?.[d],['time']:S(I[s(0x19e)]?.[0x0]),'containerId':d,[L[s(0x185)]]:G(L,I[s(0x19e)]?.[0x0])}});});}),printAsTable(Object[m(0x187)](U),m(0x1c6));}[a13P(0x1b8)]=(N,G)=>{return S=>{const H=a13G,U=Object[H(0x1e3)](S)['flatMap'](K=>{const A=H,{values:r,metricInfo:L}=S[K],{metricUnit:I,metricResolution:d}=L;return r[A(0x176)](Y=>{const Q=A,{metadata:u,data:V}=Y,a=G?G?.[Q(0x18f)]()>new Date()[Q(0x18f)]()?new Date():G:undefined,x=new Date(V?.[0x0]?.['ts']),b=new Date(V?.[V['length']-0x1]?.['ts']),e=this['getPaddingDataStart'](N,x,d),f=this[Q(0x1ae)](a,b,d),n=[...e,...V,...f],D=n[Q(0x176)](j=>[new Date(j['ts'])[Q(0x179)](),Number(j[Q(0x1b3)])])['filter'](j=>!Number[Q(0x166)](j[0x0])),g=Math[Q(0x1dd)](Math[Q(0x1a7)](process[Q(0x196)]['columns']-0xa,0xa),0x64),z=Math[Q(0x1dd)](Math[Q(0x1a7)](process[Q(0x196)]['rows']-0x9,0xa),0xf),v=I===Q(0x1c7)?0x64:undefined,E=I===Q(0x1c7)?'%':I,W=downSampleData(D,g),Z=W[Q(0x176)](j=>j[0x1]),B={'min':0x0,'height':z,'max':v,'unit':E,'startTs':N??x,'endTs':a??b};return{'dataSeries':Z,'metadata':u,'chartOpts':B,'metricInfo':L};});})[H(0x1df)]();if(U[H(0x16c)]===0x0)warning(H(0x1ac));else U[H(0x18e)](K=>{const T=H,{dataSeries:r,metadata:L,chartOpts:I,metricInfo:d}=K,{containerId:Y,volumeId:u}=L,V=u?T(0x1bf)+u:'';console[T(0x168)](d['metricId']+T(0x1ba)+a13S[T(0x1d6)](Y)+V),console[T(0x168)](getAsciiChart(r,I));});};};[a13P(0x1a1)](N,G,S){const N0=a13P,U=L=>new Date(L['getTime']()-K),K=S*0x3e8;if(!N)return[];if(!G)return[];if(U(G)[N0(0x18f)]()<N[N0(0x18f)]())return[];const r=[{'ts':U(G),'value':0x0}];while(U(r[r['length']-0x1]['ts'])[N0(0x18f)]()<=N[N0(0x18f)]()){r[N0(0x194)]({'ts':U(r[r[N0(0x16c)]-0x1]['ts']),'value':0x0});}return r;}['getPaddingDataEnd'](N,G,S){const N1=a13P,U=L=>new Date(L[N1(0x18f)]()+K),K=S*0x3e8;if(!N)return[];if(!G)return[];if(U(G)['getTime']()>N[N1(0x18f)]())return[];const r=[{'ts':U(G),'value':0x0}];while(U(r[r[N1(0x16c)]-0x1]['ts'])['getTime']()<=N[N1(0x18f)]()){r[N1(0x189)]({'ts':U(r[r[N1(0x16c)]-0x1]['ts']),'value':0x0});}return r;}['printMetricsTable']=(N,G,S)=>async()=>{const N2=a13P;try{const U=await this[N2(0x1cd)][N2(0x182)][N2(0x1c8)](N,G,S);console[N2(0x197)]();if(U[N2(0x16b)])error(N2(0x1b5)+U[N2(0x16b)]['message']);else this[N2(0x1bc)](U[N2(0x19e)]);}catch(K){console[N2(0x197)](),error(N2(0x1b5)+K[N2(0x181)]);}};[a13P(0x19b)]=N=>{const N3=a13P;if(N[N3(0x16b)]){const G=JSON['stringify'](N['error'][N3(0x1a8)]);throw new Error(N3(0x1b5)+N[N3(0x16b)][N3(0x181)]+'\x20'+G);}};['printInitInfo']=(N,G,S,U,K)=>{const N4=a13P;if(K===!![])return;const {metricTypes:r,endTime:L,startTime:I,duration:d,containerId:Y}=U,u=I?N4(0x1a3)+I['toISOString']():'',V=L?N4(0x190)+L['toISOString']():'',a=d?N4(0x192)+d+N4(0x183):'',x=Y?N4(0x169)+a13S[N4(0x1d6)](Y):N4(0x17c),b=N+'\x20'+a13S[N4(0x1d6)](G)+N4(0x18b)+a13S['bold'](S),e=''+u+V+a,f=r?N4(0x1b1)+r?.[N4(0x16a)](','):'';console['log']('Metrics\x20for\x20'+x+N4(0x1c3)+b+f+e);};}
|
|
1
|
+
const a13k=a13j;function a13X(){const X6=['N/A','serviceId','valueOf','min','log',',\x20to:\x20','printMetricsGraph','stringify','service','data','all\x20containers','bold','getPaddingDataEnd','387142RxXkkt','addOption','json','length','endTime','No\x20metrics\x20found\x20for\x20this\x20query','askForContainer','661719OxmPPh','metrics','split','unshift','apiClient','keys','metricsSingle','printInitInfo','stdout','max','getPaddingDataStart','10040760hTnNqN','choices','Id\x20[NAME]','value','rows','\x20seconds','containerId','--timestamp\x20[timestamp]','yaml','printMetricsTable','time','--run\x20--runId\x20[runId]','--deployment\x20--deploymentId\x20[deploymentId]','startTime',',\x20from:\x20','addon','askForAddon','1176301cdHYPW','yml','details','metricId','runId','900518tupSOR','toTimeString','addonId','getCurrentProjectName','\x20--','Get\x20metrics\x20for\x20the\x20specified\x20','job','askForJobRun','metadata','Fetching\x20data..','map','Error\x20while\x20fetching\x20metrics\x20entries:\x20','toUpperCase','inquirerHelper','Metrics\x20overview','Only\x20two\x20of\x20\x27startTime\x27,\x20\x27endTime\x27\x20and\x20\x27duration\x27\x20can\x20be\x20set.','getMetricsCommand','1645616SILMPl','\x20to\x20get\x20logs\x20from','conflicts','slice','forEach',',\x20metric\x20types:\x20','join','name','pct','getStandardMetricsCommand','Deployment\x20id,\x20example:\x20my-service-54785f4','--noDefaults','Container\x20to\x20exec\x20into\x20(logs\x20from\x20all\x20containers\x20will\x20be\x20shown\x20if\x20not\x20specified)','getTime','build-','6192MPdsUR','--container\x20--containerId\x20[NAME]','option','clear','askForBuild','message','askForProject','980UlNxxW','printMetricsSingle','Metrics\x20for\x20','\x20for\x20container:\x20','--build\x20--buildId\x20[buildId]','format','Which\x20metric\x20type\x20to\x20fetch','columns','-o,\x20--output\x20[output]','toISOString','getCurrentServiceName','deploymentId','--startTime\x20<timestamp>','metricsApiClient','values','-t,\x20--metricTypes\x20<metricTypes...>','apiContext','askForService','metricsRange','Get\x20metrics\x20before\x20this\x20timestamp,\x20','refreshInterval','description','Length\x20of\x20timespan\x20in\x20seconds.\x20Only\x20valid\x20if\x20not\x20both,\x20startTime\x20and\x20endTime\x20are\x20set','container\x20','error','noDefaults','assign','--project\x20--projectId\x20[NAME]',',\x20duration:\x20','toFixed','handleError','Job\x20run\x20id,\x20example:\x20162b1977-6636-4000-929b-cc265b862ff0','metricUnit','alias'];a13X=function(){return X6;};return a13X();}function a13j(X,j){const V=a13X();return a13j=function(H,O){H=H-0xd5;let F=V[H];return F;},a13j(X,j);}(function(X,j){const m=a13j,V=X();while(!![]){try{const H=parseInt(m(0x144))/0x1+parseInt(m(0xee))/0x2+parseInt(m(0x14b))/0x3+parseInt(m(0xff))/0x4+parseInt(m(0x115))/0x5*(parseInt(m(0x10e))/0x6)+-parseInt(m(0xe9))/0x7+-parseInt(m(0xd8))/0x8;if(H===j)break;else V['push'](V['shift']());}catch(O){V['push'](V['shift']());}}}(a13X,0x3cac0));import{ApiClient,MetricType}from'@northflank/js-client';import{assertContextExisting,customUserAgent,error,getCommand,parseDateInput,tsHint,warning}from'../utils.js';import{InquirerHelper}from'../inquirer-helper.js';import{Option}from'commander';import{downSampleData,getAsciiChart}from'../formatting/terminal-chart.js';import{printAsTable,printResponse}from'../formatting/console-format-helpers.js';import a13V from'chalk';export class CliMetrics{[a13k(0x125)];[a13k(0x14f)];[a13k(0x122)];[a13k(0xfb)];[a13k(0x129)]=0x2710;[a13k(0x108)]=(X,j)=>{const I=a13k,V=getCommand(!![])[I(0x106)]((j?'build-':'')+I(0x14c))[I(0x136)]((j?I(0x10d):'')+'metric')[I(0x12a)](I(0xf3)+X)[I(0x110)](I(0x130),'Project\x20for\x20logs')[I(0x110)]('--'+X+I(0xf2)+X+I(0xda),X['charAt'](0x0)[I(0xfa)]()+X[I(0x102)](0x1)+I(0x100))[I(0x110)](I(0x10f),I(0x10b))['option'](I(0x121),'Get\x20metrics\x20after\x20this\x20timestamp,\x20'+tsHint,parseDateInput)[I(0x110)]('--endTime\x20<timestamp>',I(0x128)+tsHint,parseDateInput)[I(0x110)]('--duration\x20[duration]',I(0x12b))[I(0x145)](new Option(I(0x124),I(0x11b))[I(0xd9)](Object[I(0x123)](MetricType)))[I(0x145)](new Option(I(0xdf),'Get\x20metrics\x20at\x20this\x20exact\x20timestamp,\x20if\x20no\x20timestamp\x20set\x20most\x20recent\x20time\x20is\x20used.\x20'+tsHint)['argParser'](parseDateInput)[I(0x101)]([I(0xe5),I(0x148)]))[I(0x110)](I(0x10a),'Don\x27t\x20use\x20context\x20default\x20values,\x20explicitly\x20use\x20options\x20or\x20ask.',![])['addOption'](new Option(I(0x11d),'Output\x20formatting.\x20Will\x20use\x20advanced\x20formatting\x20by\x20default.')[I(0xd9)](Object[I(0x123)]([I(0x11a),I(0x146),I(0xe0)])));if(j)V[I(0x110)](I(0x119),'Build\x20to\x20get\x20logs\x20from');if(X===I(0xf4))V[I(0x110)](I(0xe3),I(0x134));if(X===I(0x13f))V[I(0x110)](I(0xe4),I(0x109));return V;};constructor(X,j){const K=a13k;this[K(0x125)]=X,this[K(0x14f)]=new ApiClient(X,{'throwErrorOnHttpErrorCode':!![],'customUserAgent':customUserAgent,'agent':j}),this['metricsApiClient']=this[K(0x14f)],this['inquirerHelper']=new InquirerHelper(this[K(0x14f)]);}[a13k(0xfe)](X,j=![]){const D=a13k,V=async(P,o)=>{const L=a13j,C=o[L(0x12e)],{apiContext:B,inquirerHelper:s}=this;switch(X){case L(0x13f):{const S=C?undefined:B[L(0x11f)]();return o[L(0x138)]||S||await s[L(0x126)](P)();}case L(0xf4):{const y=C?undefined:B[L(0x11f)]();return o['jobId']||y||await s['askForJob'](P)();}case L(0xe7):{const e=C?undefined:B['getCurrentServiceName']();return o[L(0xf0)]||e||await s[L(0xe8)](P)();}}},H=async(P,o,C)=>{const a=a13j;if(j)return C['buildId']||await this[a(0xfb)][a(0x112)](P,X===a(0x13f)?o:undefined,X===a(0xf4)?o:undefined,!![])();return undefined;},O=async(P,o,C)=>{const r=a13j;if(!j&&C['containerId']!==undefined){if(C['containerId']!==!![])return C['containerId'];return await this['inquirerHelper'][r(0x14a)](P,X===r(0x13f)?o:undefined,X===r(0xf4)?o:undefined,!![])();}return undefined;},F=async(P,o,C)=>{const R=a13j;if(X==='job')return C[R(0xed)]||await this[R(0xfb)][R(0xf5)](o,P,!![])();return undefined;},h=async(P,o,C)=>{const n=a13j;if(X==='service'){if(C['deploymentId']!==!![])return C[n(0x120)];return C[n(0x120)];}return undefined;};return this[D(0x108)](X,j)['action'](async P=>{const Y=D,{noDefaults:o,projectId:C,duration:B,timestamp:s,output:S,startTime:y,endTime:e,metricTypes:A,quiet:l}=P;assertContextExisting(this['apiClient']);if(y&&e&&B)throw new Error(Y(0xfd));const {apiContext:T,inquirerHelper:W,metricsApiClient:v}=this,G=o?undefined:T[Y(0xf1)](),d=C||G||await W[Y(0x114)](),x=await V(d,P),M=await H(d,x,P),g=await F(d,x,P),J=await h(d,x,P),b=await O(d,x,P),E={'projectId':d,'entityId':x},t={'containerName':b,'startTime':y,'endTime':e,'duration':B,'timestamp':s,'metricTypes':A,'runId':g,'buildId':M,'deploymentId':J,'isBuild':j??![]},Z=!(y||e||B);if(!l&&S!==Y(0xe0)&&S!==Y(0xea)&&S!==Y(0x146))this[Y(0x152)](X,x,d,t,l);if(Z){if(S!==undefined){const w=await v['metrics']['metricsSingle'](E,t,X);this[Y(0x133)](w),printResponse(S,w[Y(0x140)]);}else[...Array(process['stdout'][Y(0xdc)]-0x1)]['forEach']((N,p)=>p===0x0?console[Y(0x13b)](Y(0xf7)):console[Y(0x13b)]()),await this[Y(0xe1)](E,t,X)(),setInterval(this['printMetricsTable'](E,t,X),this[Y(0x129)]),await new Promise(N=>setTimeout(N,this['refreshInterval']*0x64));}else{const N=await v[Y(0x14c)][Y(0x127)](E,t,X);this[Y(0x133)](N),S!==undefined?printResponse(S,N[Y(0x140)]):this[Y(0x13d)](y,e??new Date())(N[Y(0x140)]);}process['exit']();});}[a13k(0x116)](X){const f=a13k,j=(O,F)=>{const u=a13j;if(!F?.[u(0xdb)])u(0x137);const h=O[u(0x135)]===u(0x107)?'%':O['metricUnit'];return''+Number(F?.['value'])[u(0x132)](0x3)+h;},V=O=>{const Q=a13j;if(!O?.['ts'])Q(0x137);return O['ts'][Q(0xef)]()[Q(0x14d)]('\x20')[0x0];},H={};Object[f(0x150)](X)[f(0x103)](O=>{const z=f,{values:F,metricInfo:h}=X[O];return F[z(0x103)](P=>{const U=z,o=P[U(0xf6)][U(0xde)];Object[U(0x12f)](H,{[o]:{...H?.[o],[U(0xe2)]:V(P[U(0x140)]?.[0x0]),'containerId':o,[h[U(0xec)]]:j(h,P['data']?.[0x0])}});});}),printAsTable(Object['values'](H),f(0xfc));}[a13k(0x13d)]=(X,j)=>{return V=>{const q=a13j,H=Object[q(0x150)](V)['flatMap'](O=>{const c=q,{values:F,metricInfo:h}=V[O],{metricUnit:P,metricResolution:o}=h;return F[c(0xf8)](C=>{const i=c,{metadata:B,data:s}=C,S=j?j?.[i(0x10c)]()>new Date()['getTime']()?new Date():j:undefined,y=new Date(s?.[0x0]?.['ts']),e=new Date(s?.[s[i(0x147)]-0x1]?.['ts']),A=this[i(0xd7)](X,y,o),l=this['getPaddingDataEnd'](S,e,o),T=[...A,...s,...l],W=T[i(0xf8)](b=>[new Date(b['ts'])[i(0x139)](),Number(b[i(0xdb)])])['filter'](b=>!Number['isNaN'](b[0x0])),v=Math[i(0x13a)](Math[i(0xd6)](process[i(0xd5)][i(0x11c)]-0xa,0xa),0x64),G=Math[i(0x13a)](Math[i(0xd6)](process['stdout'][i(0xdc)]-0x9,0xa),0xf),d=P===i(0x107)?0x64:undefined,x=P==='pct'?'%':P,M=downSampleData(W,v),g=M[i(0xf8)](b=>b[0x1]),J={'min':0x0,'height':G,'max':d,'unit':x,'startTs':X??y,'endTs':S??e};return{'dataSeries':g,'metadata':B,'chartOpts':J,'metricInfo':h};});})['flat']();if(H[q(0x147)]===0x0)warning(q(0x149));else H[q(0x103)](O=>{const X0=q,{dataSeries:F,metadata:h,chartOpts:P,metricInfo:o}=O,{containerId:C,volumeId:B}=h,s=B?',\x20volume:\x20'+B:'';console[X0(0x13b)](o[X0(0xec)]+X0(0x118)+a13V[X0(0x142)](C)+s),console[X0(0x13b)](getAsciiChart(F,P));});};};[a13k(0xd7)](X,j,V){const X1=a13k,H=h=>new Date(h['getTime']()-O),O=V*0x3e8;if(!X)return[];if(!j)return[];if(H(j)['getTime']()<X[X1(0x10c)]())return[];const F=[{'ts':H(j),'value':0x0}];while(H(F[F[X1(0x147)]-0x1]['ts'])[X1(0x10c)]()<=X[X1(0x10c)]()){F[X1(0x14e)]({'ts':H(F[F[X1(0x147)]-0x1]['ts']),'value':0x0});}return F;}[a13k(0x143)](X,j,V){const X2=a13k,H=h=>new Date(h[X2(0x10c)]()+O),O=V*0x3e8;if(!X)return[];if(!j)return[];if(H(j)[X2(0x10c)]()>X[X2(0x10c)]())return[];const F=[{'ts':H(j),'value':0x0}];while(H(F[F[X2(0x147)]-0x1]['ts'])[X2(0x10c)]()<=X[X2(0x10c)]()){F['push']({'ts':H(F[F[X2(0x147)]-0x1]['ts']),'value':0x0});}return F;}['printMetricsTable']=(X,j,V)=>async()=>{const X3=a13k;try{const H=await this[X3(0x122)][X3(0x14c)][X3(0x151)](X,j,V);console['clear']();if(H[X3(0x12d)])error(X3(0xf9)+H[X3(0x12d)]['message']);else this['printMetricsSingle'](H['data']);}catch(O){console[X3(0x111)](),error(X3(0xf9)+O[X3(0x113)]);}};[a13k(0x133)]=X=>{const X4=a13k;if(X[X4(0x12d)]){const j=JSON[X4(0x13e)](X[X4(0x12d)][X4(0xeb)]);throw new Error('Error\x20while\x20fetching\x20metrics\x20entries:\x20'+X[X4(0x12d)][X4(0x113)]+'\x20'+j);}};[a13k(0x152)]=(X,j,V,H,O)=>{const X5=a13k;if(O===!![])return;const {metricTypes:F,endTime:h,startTime:P,duration:o,containerId:C}=H,B=P?X5(0xe6)+P[X5(0x11e)]():'',s=h?X5(0x13c)+h[X5(0x11e)]():'',S=o?X5(0x131)+o+X5(0xdd):'',y=C?X5(0x12c)+a13V[X5(0x142)](C):X5(0x141),e=X+'\x20'+a13V['bold'](j)+'\x20in\x20project\x20'+a13V[X5(0x142)](V),A=''+B+s+S,l=F?X5(0x104)+F?.[X5(0x105)](','):'';console[X5(0x13b)](X5(0x117)+y+'\x20of\x20'+e+l+A);};}
|