@trendify/cli 0.1.8 → 0.1.9
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/cli.entry.js +24 -0
- package/dist/shared/constants/app-version.constant.d.ts +1 -1
- package/dist/shared/constants/app-version.constant.js +1 -1
- package/dist/shared/services/cli-update.service.d.ts.map +1 -1
- package/dist/shared/services/cli-update.service.js +61 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
package/dist/cli.entry.js
CHANGED
|
@@ -25,6 +25,30 @@ if (args.includes('--version') || args.includes('-v')) {
|
|
|
25
25
|
process.stdout.write(`${APP_VERSION}\n`);
|
|
26
26
|
process.exit(0);
|
|
27
27
|
}
|
|
28
|
+
function supportsInteractiveInkInput() {
|
|
29
|
+
if (!process.stdin.isTTY || typeof process.stdin.setRawMode !== 'function') {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
const previousRawMode = process.stdin.isRaw === true;
|
|
33
|
+
try {
|
|
34
|
+
process.stdin.setRawMode(true);
|
|
35
|
+
process.stdin.setRawMode(previousRawMode);
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function printNonInteractiveFallback() {
|
|
43
|
+
process.stdout.write(`Trendify CLI v${APP_VERSION}\n`);
|
|
44
|
+
process.stdout.write('A interface interativa nao conseguiu acessar o terminal em modo raw.\n');
|
|
45
|
+
process.stdout.write('Se voce acabou de atualizar a CLI, feche esta execucao e rode o comando novamente.\n');
|
|
46
|
+
process.stdout.write('Se o problema continuar, execute em um terminal interativo comum, sem pipe/redirecionamento.\n');
|
|
47
|
+
}
|
|
48
|
+
if (!supportsInteractiveInkInput()) {
|
|
49
|
+
printNonInteractiveFallback();
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
28
52
|
console.clear();
|
|
29
53
|
let appInstance;
|
|
30
54
|
function mountApp(feedback = null) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const APP_VERSION = "0.1.
|
|
1
|
+
export declare const APP_VERSION = "0.1.8";
|
|
2
2
|
//# sourceMappingURL=app-version.constant.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const APP_VERSION = '0.1.
|
|
1
|
+
export const APP_VERSION = '0.1.8';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-update.service.d.ts","sourceRoot":"","sources":["../../../src/shared/services/cli-update.service.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,oBAAoB,GAC5B;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAC5B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAC3B;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CACnB,GACD;IACE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;CACpB,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-update.service.d.ts","sourceRoot":"","sources":["../../../src/shared/services/cli-update.service.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,oBAAoB,GAC5B;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAC5B,GACD;IACE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAC3B;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CACnB,GACD;IACE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;CACpB,CAAC;AA0QN,wBAAsB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA6B7F;AAED,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAwB/G"}
|
|
@@ -140,8 +140,67 @@ async function restartCli() {
|
|
|
140
140
|
if (!entrypoint) {
|
|
141
141
|
throw new Error('Nao foi possivel identificar o entrypoint atual da CLI para reiniciar o processo.');
|
|
142
142
|
}
|
|
143
|
+
const helperScript = `
|
|
144
|
+
const { spawn } = require('node:child_process');
|
|
145
|
+
|
|
146
|
+
const parentPid = Number(process.argv[1]);
|
|
147
|
+
const nodePath = process.argv[2];
|
|
148
|
+
const execArgv = JSON.parse(process.argv[3]);
|
|
149
|
+
const cliArgv = JSON.parse(process.argv[4]);
|
|
150
|
+
|
|
151
|
+
const canSignalParent = Number.isInteger(parentPid) && parentPid > 0;
|
|
152
|
+
|
|
153
|
+
const isParentAlive = () => {
|
|
154
|
+
if (!canSignalParent) {
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
try {
|
|
159
|
+
process.kill(parentPid, 0);
|
|
160
|
+
return true;
|
|
161
|
+
} catch (error) {
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
|
|
166
|
+
const launchCli = () => {
|
|
167
|
+
const child = spawn(nodePath, [...execArgv, ...cliArgv], {
|
|
168
|
+
env: process.env,
|
|
169
|
+
stdio: 'inherit',
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
child.on('error', (error) => {
|
|
173
|
+
process.stderr.write(\`Falha ao reiniciar a CLI atualizada: \${error.message}\\n\`);
|
|
174
|
+
process.exit(1);
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
child.on('spawn', () => {
|
|
178
|
+
process.exit(0);
|
|
179
|
+
});
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
const waitForParentToExit = () => {
|
|
183
|
+
if (!isParentAlive()) {
|
|
184
|
+
setTimeout(launchCli, 150);
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
setTimeout(waitForParentToExit, 100);
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
waitForParentToExit();
|
|
192
|
+
`.trim();
|
|
193
|
+
const helperArgs = [
|
|
194
|
+
'-e',
|
|
195
|
+
helperScript,
|
|
196
|
+
String(process.pid),
|
|
197
|
+
process.execPath,
|
|
198
|
+
JSON.stringify(process.execArgv),
|
|
199
|
+
JSON.stringify([entrypoint, ...process.argv.slice(2)]),
|
|
200
|
+
];
|
|
143
201
|
await new Promise((resolve, reject) => {
|
|
144
|
-
const child = spawn(process.execPath,
|
|
202
|
+
const child = spawn(process.execPath, helperArgs, {
|
|
203
|
+
detached: true,
|
|
145
204
|
env: process.env,
|
|
146
205
|
stdio: 'inherit',
|
|
147
206
|
});
|
|
@@ -149,6 +208,7 @@ async function restartCli() {
|
|
|
149
208
|
reject(error);
|
|
150
209
|
});
|
|
151
210
|
child.on('spawn', () => {
|
|
211
|
+
child.unref();
|
|
152
212
|
resolve();
|
|
153
213
|
});
|
|
154
214
|
});
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const APP_VERSION = "0.1.
|
|
1
|
+
export declare const APP_VERSION = "0.1.9";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const APP_VERSION = '0.1.
|
|
1
|
+
export const APP_VERSION = '0.1.9';
|