gazill 2.13.0 → 2.15.0
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/commands/autoscale.js +4 -4
- package/dist/commands/db.js +8 -8
- package/dist/commands/encoding.d.ts +24 -0
- package/dist/commands/encoding.d.ts.map +1 -0
- package/dist/commands/encoding.js +369 -0
- package/dist/commands/encoding.js.map +1 -0
- package/dist/commands/login.d.ts +1 -2
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +10 -21
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/new.d.ts.map +1 -1
- package/dist/commands/new.js +31 -3
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/promote.js +3 -3
- package/dist/commands/promote.js.map +1 -1
- package/dist/commands/signup.d.ts +1 -6
- package/dist/commands/signup.d.ts.map +1 -1
- package/dist/commands/signup.js +10 -61
- package/dist/commands/signup.js.map +1 -1
- package/dist/commands/usage.d.ts.map +1 -1
- package/dist/commands/usage.js +4 -7
- package/dist/commands/usage.js.map +1 -1
- package/dist/index.js +45 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts +11 -10
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +8 -8
- package/dist/lib/api.js.map +1 -1
- package/dist/shared/types.d.ts +7 -6
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/validation.d.ts +7 -14
- package/dist/shared/validation.d.ts.map +1 -1
- package/dist/shared/validation.js +3 -10
- package/dist/shared/validation.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,10 +6,10 @@ import { listProjects, setAutoscale } from '../lib/api.js';
|
|
|
6
6
|
import { isAuthenticated } from '../lib/config.js';
|
|
7
7
|
const POD_SIZES = ['small', 'medium', 'large', 'xl'];
|
|
8
8
|
const SIZE_INFO = {
|
|
9
|
-
small: { memory: '512MB', cpu: '0.5', cost: '
|
|
10
|
-
medium: { memory: '1GB', cpu: '1.0', cost: '
|
|
11
|
-
large: { memory: '2GB', cpu: '2.0', cost: '
|
|
12
|
-
xl: { memory: '4GB', cpu: '4.0', cost: '
|
|
9
|
+
small: { memory: '512MB', cpu: '0.5', cost: '10 IO/hr' },
|
|
10
|
+
medium: { memory: '1GB', cpu: '1.0', cost: '20 IO/hr' },
|
|
11
|
+
large: { memory: '2GB', cpu: '2.0', cost: '40 IO/hr' },
|
|
12
|
+
xl: { memory: '4GB', cpu: '4.0', cost: '80 IO/hr' },
|
|
13
13
|
};
|
|
14
14
|
async function getCurrentProjectConfig() {
|
|
15
15
|
try {
|
package/dist/commands/db.js
CHANGED
|
@@ -79,10 +79,10 @@ export async function dbCreateCommand(name, project, options) {
|
|
|
79
79
|
name: 'size',
|
|
80
80
|
message: 'Database size:',
|
|
81
81
|
choices: [
|
|
82
|
-
{ name: 'Small (512MB, 5GB storage, 20 connections) -
|
|
83
|
-
{ name: 'Medium (1GB, 10GB storage, 50 connections) -
|
|
84
|
-
{ name: 'Large (2GB, 25GB storage, 100 connections) -
|
|
85
|
-
{ name: 'XL (4GB, 50GB storage, 200 connections) -
|
|
82
|
+
{ name: 'Small (512MB, 5GB storage, 20 connections) - 10 IO/hr', value: 'small' },
|
|
83
|
+
{ name: 'Medium (1GB, 10GB storage, 50 connections) - 20 IO/hr', value: 'medium' },
|
|
84
|
+
{ name: 'Large (2GB, 25GB storage, 100 connections) - 40 IO/hr', value: 'large' },
|
|
85
|
+
{ name: 'XL (4GB, 50GB storage, 200 connections) - 80 IO/hr', value: 'xl' },
|
|
86
86
|
],
|
|
87
87
|
default: 'small',
|
|
88
88
|
},
|
|
@@ -537,10 +537,10 @@ export async function dbResizeCommand(size, name, options) {
|
|
|
537
537
|
}
|
|
538
538
|
// Confirm resize
|
|
539
539
|
const sizeInfo = {
|
|
540
|
-
small: '512MB RAM, 5GB storage, 20 connections -
|
|
541
|
-
medium: '1GB RAM, 10GB storage, 50 connections -
|
|
542
|
-
large: '2GB RAM, 25GB storage, 100 connections -
|
|
543
|
-
xl: '4GB RAM, 50GB storage, 200 connections -
|
|
540
|
+
small: '512MB RAM, 5GB storage, 20 connections - 10 IO/hr',
|
|
541
|
+
medium: '1GB RAM, 10GB storage, 50 connections - 20 IO/hr',
|
|
542
|
+
large: '2GB RAM, 25GB storage, 100 connections - 40 IO/hr',
|
|
543
|
+
xl: '4GB RAM, 50GB storage, 200 connections - 80 IO/hr',
|
|
544
544
|
};
|
|
545
545
|
console.log();
|
|
546
546
|
console.log(`Current size: ${chalk.cyan(database.size)}`);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare function encodingEnableCommand(project?: string, options?: {
|
|
2
|
+
project?: string;
|
|
3
|
+
}): Promise<void>;
|
|
4
|
+
export declare function encodingInfoCommand(project?: string, options?: {
|
|
5
|
+
project?: string;
|
|
6
|
+
}): Promise<void>;
|
|
7
|
+
export declare function encodingDisableCommand(project?: string, options?: {
|
|
8
|
+
project?: string;
|
|
9
|
+
yes?: boolean;
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
export declare function encodingSubmitCommand(filePath: string, options?: {
|
|
12
|
+
project?: string;
|
|
13
|
+
preset?: string;
|
|
14
|
+
webhook?: string;
|
|
15
|
+
}): Promise<void>;
|
|
16
|
+
export declare function encodingJobsCommand(project?: string, options?: {
|
|
17
|
+
project?: string;
|
|
18
|
+
limit?: string;
|
|
19
|
+
}): Promise<void>;
|
|
20
|
+
export declare function encodingStatusCommand(jobId: string, options?: {
|
|
21
|
+
project?: string;
|
|
22
|
+
watch?: boolean;
|
|
23
|
+
}): Promise<void>;
|
|
24
|
+
//# sourceMappingURL=encoding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../src/commands/encoding.ts"],"names":[],"mappings":"AAgGA,wBAAsB,qBAAqB,CACzC,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,OAAO,CAAC,IAAI,CAAC,CA6Cf;AAGD,wBAAsB,mBAAmB,CACvC,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,OAAO,CAAC,IAAI,CAAC,CAkDf;AAGD,wBAAsB,sBAAsB,CAC1C,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5C,OAAO,CAAC,IAAI,CAAC,CAwCf;AAGD,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAChE,OAAO,CAAC,IAAI,CAAC,CAgEf;AAGD,wBAAsB,mBAAmB,CACvC,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CAiDf;AAGD,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
|
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import inquirer from 'inquirer';
|
|
4
|
+
import { promises as fs } from 'fs';
|
|
5
|
+
import path from 'path';
|
|
6
|
+
import { getAuth, getApiUrl } from '../lib/config.js';
|
|
7
|
+
import { listProjects } from '../lib/api.js';
|
|
8
|
+
async function encodingApiRequest(endpoint, options = { method: 'GET' }) {
|
|
9
|
+
const apiUrl = await getApiUrl();
|
|
10
|
+
const auth = await getAuth();
|
|
11
|
+
if (!auth?.token) {
|
|
12
|
+
throw new Error('Not authenticated');
|
|
13
|
+
}
|
|
14
|
+
const response = await fetch(`${apiUrl}${endpoint}`, {
|
|
15
|
+
method: options.method,
|
|
16
|
+
headers: {
|
|
17
|
+
'Content-Type': 'application/json',
|
|
18
|
+
Authorization: `Bearer ${auth.token}`,
|
|
19
|
+
},
|
|
20
|
+
body: options.body ? JSON.stringify(options.body) : undefined,
|
|
21
|
+
});
|
|
22
|
+
const data = await response.json();
|
|
23
|
+
if (!response.ok) {
|
|
24
|
+
throw new Error(data.message || 'Request failed');
|
|
25
|
+
}
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
async function getProjectId() {
|
|
29
|
+
const { getCurrentProject } = await import('../lib/config.js');
|
|
30
|
+
const project = await getCurrentProject();
|
|
31
|
+
return project?.id || null;
|
|
32
|
+
}
|
|
33
|
+
async function findProjectByName(name) {
|
|
34
|
+
const response = await listProjects();
|
|
35
|
+
return response.projects.find((p) => p.name === name) || null;
|
|
36
|
+
}
|
|
37
|
+
async function resolveProjectId(projectName, options) {
|
|
38
|
+
const name = projectName || options?.project;
|
|
39
|
+
if (name) {
|
|
40
|
+
const proj = await findProjectByName(name);
|
|
41
|
+
if (!proj) {
|
|
42
|
+
console.log(chalk.red(`Project "${name}" not found.`));
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return proj.id;
|
|
46
|
+
}
|
|
47
|
+
return getProjectId();
|
|
48
|
+
}
|
|
49
|
+
// gazill encoding enable [project]
|
|
50
|
+
export async function encodingEnableCommand(project, options) {
|
|
51
|
+
const auth = await getAuth();
|
|
52
|
+
if (!auth?.token) {
|
|
53
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const projectId = await resolveProjectId(project, options);
|
|
57
|
+
if (!projectId) {
|
|
58
|
+
console.log(chalk.red('No project found. Run from a project directory or specify: gazill encoding enable <project>'));
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const spinner = ora('Enabling Encoding...').start();
|
|
62
|
+
try {
|
|
63
|
+
const result = await encodingApiRequest(`/api/projects/${projectId}/encoding`, { method: 'POST' });
|
|
64
|
+
spinner.succeed(chalk.green('Encoding enabled!'));
|
|
65
|
+
console.log('');
|
|
66
|
+
console.log(chalk.blue('Tier:'), result.tier === 'production' ? 'Production (up to 4K)' : 'Development (up to 720p)');
|
|
67
|
+
console.log('');
|
|
68
|
+
console.log(chalk.bold('Available Presets:'));
|
|
69
|
+
for (const preset of result.presets) {
|
|
70
|
+
const resolution = preset.maxHeight > 0 ? `${preset.maxHeight}p` : 'N/A';
|
|
71
|
+
console.log(` ${chalk.cyan(preset.id.padEnd(10))} ${preset.name.padEnd(15)} ${resolution.padEnd(8)} (${preset.podSize} pod)`);
|
|
72
|
+
}
|
|
73
|
+
console.log('');
|
|
74
|
+
console.log(chalk.gray('Environment variables injected on next deploy:'));
|
|
75
|
+
console.log(chalk.gray(' ENCODING_URL - API endpoint'));
|
|
76
|
+
console.log(chalk.gray(' ENCODING_KEY - Your API key'));
|
|
77
|
+
console.log('');
|
|
78
|
+
console.log(chalk.yellow('Quick start:'));
|
|
79
|
+
console.log(chalk.gray(` const res = await fetch(process.env.ENCODING_URL + '/encode', {`));
|
|
80
|
+
console.log(chalk.gray(` method: 'POST',`));
|
|
81
|
+
console.log(chalk.gray(` headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer ' + process.env.ENCODING_KEY },`));
|
|
82
|
+
console.log(chalk.gray(` body: JSON.stringify({ sourceUrl: 'https://...', preset: 'web' })`));
|
|
83
|
+
console.log(chalk.gray(` });`));
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
const message = error instanceof Error ? error.message : 'Failed to enable Encoding';
|
|
87
|
+
spinner.fail(chalk.red(message));
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// gazill encoding info [project]
|
|
91
|
+
export async function encodingInfoCommand(project, options) {
|
|
92
|
+
const auth = await getAuth();
|
|
93
|
+
if (!auth?.token) {
|
|
94
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const projectId = await resolveProjectId(project, options);
|
|
98
|
+
if (!projectId) {
|
|
99
|
+
console.log(chalk.red('No project found. Run from a project directory or specify: gazill encoding info <project>'));
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const spinner = ora('Loading Encoding info...').start();
|
|
103
|
+
try {
|
|
104
|
+
const info = await encodingApiRequest(`/api/projects/${projectId}/encoding`);
|
|
105
|
+
spinner.stop();
|
|
106
|
+
console.log(chalk.bold('Encoding'));
|
|
107
|
+
console.log('');
|
|
108
|
+
if (!info.enabled) {
|
|
109
|
+
console.log(chalk.yellow('Status:'), 'Not enabled');
|
|
110
|
+
console.log('');
|
|
111
|
+
console.log(chalk.gray('Enable with: gazill encoding enable'));
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
console.log(chalk.green('Status:'), 'Active');
|
|
115
|
+
console.log(chalk.blue('Tier:'), info.tier === 'production' ? 'Production (up to 4K)' : 'Development (up to 720p)');
|
|
116
|
+
if (info.createdAt) {
|
|
117
|
+
console.log(chalk.blue('Enabled:'), new Date(info.createdAt).toLocaleDateString());
|
|
118
|
+
}
|
|
119
|
+
console.log('');
|
|
120
|
+
console.log(chalk.bold('Presets:'));
|
|
121
|
+
for (const preset of info.presets) {
|
|
122
|
+
const resolution = preset.maxHeight > 0 ? `${preset.maxHeight}p` : 'N/A';
|
|
123
|
+
const available = info.tier === 'development' && preset.maxHeight > 720 ? chalk.gray(' (requires prod)') : '';
|
|
124
|
+
console.log(` ${chalk.cyan(preset.id.padEnd(10))} ${preset.name.padEnd(15)} ${resolution.padEnd(8)} (${preset.podSize} pod)${available}`);
|
|
125
|
+
}
|
|
126
|
+
console.log('');
|
|
127
|
+
console.log(chalk.gray('Env vars: ENCODING_URL, ENCODING_KEY'));
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
const message = error instanceof Error ? error.message : 'Failed to load info';
|
|
131
|
+
spinner.fail(chalk.red(message));
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// gazill encoding disable [project]
|
|
135
|
+
export async function encodingDisableCommand(project, options) {
|
|
136
|
+
const auth = await getAuth();
|
|
137
|
+
if (!auth?.token) {
|
|
138
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
const projectId = await resolveProjectId(project, options);
|
|
142
|
+
if (!projectId) {
|
|
143
|
+
console.log(chalk.red('No project found. Run from a project directory or specify: gazill encoding disable <project>'));
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
if (!options?.yes) {
|
|
147
|
+
const { confirm } = await inquirer.prompt([{
|
|
148
|
+
type: 'confirm',
|
|
149
|
+
name: 'confirm',
|
|
150
|
+
message: 'Disable Encoding? Environment variables will be removed on next deploy.',
|
|
151
|
+
default: false,
|
|
152
|
+
}]);
|
|
153
|
+
if (!confirm) {
|
|
154
|
+
console.log(chalk.gray('Cancelled.'));
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
const spinner = ora('Disabling Encoding...').start();
|
|
159
|
+
try {
|
|
160
|
+
await encodingApiRequest(`/api/projects/${projectId}/encoding`, { method: 'DELETE' });
|
|
161
|
+
spinner.succeed(chalk.green('Encoding disabled.'));
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
const message = error instanceof Error ? error.message : 'Failed to disable';
|
|
165
|
+
spinner.fail(chalk.red(message));
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// gazill encoding submit <file> [project]
|
|
169
|
+
export async function encodingSubmitCommand(filePath, options) {
|
|
170
|
+
const auth = await getAuth();
|
|
171
|
+
if (!auth?.token) {
|
|
172
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
const projectId = await resolveProjectId(undefined, options);
|
|
176
|
+
if (!projectId) {
|
|
177
|
+
console.log(chalk.red('No project found. Run from a project directory or specify --project <name>'));
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
// Verify file exists
|
|
181
|
+
const absolutePath = path.resolve(filePath);
|
|
182
|
+
try {
|
|
183
|
+
await fs.access(absolutePath);
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
console.log(chalk.red(`File not found: ${filePath}`));
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
const stat = await fs.stat(absolutePath);
|
|
190
|
+
const filename = path.basename(absolutePath);
|
|
191
|
+
const preset = options?.preset || 'web';
|
|
192
|
+
const spinner = ora(`Uploading ${filename} (${formatBytes(stat.size)})...`).start();
|
|
193
|
+
try {
|
|
194
|
+
const apiUrl = await getApiUrl();
|
|
195
|
+
const fileBuffer = await fs.readFile(absolutePath);
|
|
196
|
+
const formData = new FormData();
|
|
197
|
+
formData.append('file', new Blob([fileBuffer]), filename);
|
|
198
|
+
formData.append('preset', preset);
|
|
199
|
+
if (options?.webhook) {
|
|
200
|
+
formData.append('webhookUrl', options.webhook);
|
|
201
|
+
}
|
|
202
|
+
const response = await fetch(`${apiUrl}/api/projects/${projectId}/encoding/jobs`, {
|
|
203
|
+
method: 'POST',
|
|
204
|
+
headers: {
|
|
205
|
+
Authorization: `Bearer ${auth.token}`,
|
|
206
|
+
},
|
|
207
|
+
body: formData,
|
|
208
|
+
});
|
|
209
|
+
const data = await response.json();
|
|
210
|
+
if (!response.ok) {
|
|
211
|
+
throw new Error(data.message || 'Failed to submit encoding job');
|
|
212
|
+
}
|
|
213
|
+
spinner.succeed(chalk.green('Encoding job submitted!'));
|
|
214
|
+
console.log('');
|
|
215
|
+
console.log(chalk.blue('Job ID:'), data.id);
|
|
216
|
+
console.log(chalk.blue('Preset:'), preset);
|
|
217
|
+
console.log(chalk.blue('Status:'), data.status);
|
|
218
|
+
console.log('');
|
|
219
|
+
console.log(chalk.gray(`Track progress: gazill encoding status ${data.id} --watch`));
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
const message = error instanceof Error ? error.message : 'Failed to submit job';
|
|
223
|
+
spinner.fail(chalk.red(message));
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
// gazill encoding jobs [project]
|
|
227
|
+
export async function encodingJobsCommand(project, options) {
|
|
228
|
+
const auth = await getAuth();
|
|
229
|
+
if (!auth?.token) {
|
|
230
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
const projectId = await resolveProjectId(project, options);
|
|
234
|
+
if (!projectId) {
|
|
235
|
+
console.log(chalk.red('No project found. Run from a project directory or specify: gazill encoding jobs <project>'));
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
const spinner = ora('Loading encoding jobs...').start();
|
|
239
|
+
try {
|
|
240
|
+
const limit = options?.limit || '20';
|
|
241
|
+
const result = await encodingApiRequest(`/api/projects/${projectId}/encoding/jobs?limit=${limit}`);
|
|
242
|
+
spinner.stop();
|
|
243
|
+
if (result.jobs.length === 0) {
|
|
244
|
+
console.log(chalk.gray('No encoding jobs found.'));
|
|
245
|
+
console.log(chalk.gray('Submit one with: gazill encoding submit <file>'));
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
248
|
+
console.log(chalk.bold('Encoding Jobs'));
|
|
249
|
+
console.log('');
|
|
250
|
+
for (const job of result.jobs) {
|
|
251
|
+
const statusColor = getStatusColor(job.status);
|
|
252
|
+
const progressBar = job.status === 'processing' ? ` [${getProgressBar(job.progress)}] ${job.progress}%` : '';
|
|
253
|
+
const duration = job.durationMs ? ` (${(job.durationMs / 1000).toFixed(1)}s)` : '';
|
|
254
|
+
console.log(` ${chalk.gray(job.id.substring(0, 8))} ${chalk.cyan(job.preset.padEnd(10))} ${statusColor(job.status.padEnd(12))}${progressBar}${duration} ${chalk.gray(job.sourceFilename)} ${chalk.gray(new Date(job.createdAt).toLocaleString())}`);
|
|
255
|
+
if (job.errorMessage) {
|
|
256
|
+
console.log(` ${chalk.red(job.errorMessage)}`);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
catch (error) {
|
|
261
|
+
const message = error instanceof Error ? error.message : 'Failed to load jobs';
|
|
262
|
+
spinner.fail(chalk.red(message));
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
// gazill encoding status <jobId> [--watch]
|
|
266
|
+
export async function encodingStatusCommand(jobId, options) {
|
|
267
|
+
const auth = await getAuth();
|
|
268
|
+
if (!auth?.token) {
|
|
269
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
const projectId = await resolveProjectId(undefined, options);
|
|
273
|
+
if (!projectId) {
|
|
274
|
+
console.log(chalk.red('No project found. Run from a project directory or specify --project <name>'));
|
|
275
|
+
return;
|
|
276
|
+
}
|
|
277
|
+
const fetchAndDisplay = async () => {
|
|
278
|
+
const job = await encodingApiRequest(`/api/projects/${projectId}/encoding/jobs/${jobId}`);
|
|
279
|
+
// Clear screen for watch mode
|
|
280
|
+
if (options?.watch) {
|
|
281
|
+
process.stdout.write('\x1B[2J\x1B[0f');
|
|
282
|
+
}
|
|
283
|
+
const statusColor = getStatusColor(job.status);
|
|
284
|
+
console.log(chalk.bold('Encoding Job'));
|
|
285
|
+
console.log('');
|
|
286
|
+
console.log(chalk.blue('ID:'), job.id);
|
|
287
|
+
console.log(chalk.blue('Preset:'), job.preset);
|
|
288
|
+
console.log(chalk.blue('Source:'), job.sourceFilename);
|
|
289
|
+
console.log(chalk.blue('Status:'), statusColor(job.status));
|
|
290
|
+
if (job.status === 'processing' || job.status === 'uploading') {
|
|
291
|
+
console.log(chalk.blue('Progress:'), `[${getProgressBar(job.progress)}] ${job.progress}%`);
|
|
292
|
+
}
|
|
293
|
+
if (job.inputSizeBytes) {
|
|
294
|
+
console.log(chalk.blue('Input Size:'), formatBytes(job.inputSizeBytes));
|
|
295
|
+
}
|
|
296
|
+
if (job.outputSizeBytes) {
|
|
297
|
+
console.log(chalk.blue('Output Size:'), formatBytes(job.outputSizeBytes));
|
|
298
|
+
}
|
|
299
|
+
if (job.outputBlobKey) {
|
|
300
|
+
console.log(chalk.blue('Output Key:'), job.outputBlobKey);
|
|
301
|
+
}
|
|
302
|
+
if (job.durationMs) {
|
|
303
|
+
console.log(chalk.blue('Duration:'), `${(job.durationMs / 1000).toFixed(1)}s`);
|
|
304
|
+
}
|
|
305
|
+
if (job.errorMessage) {
|
|
306
|
+
console.log(chalk.red('Error:'), job.errorMessage);
|
|
307
|
+
}
|
|
308
|
+
console.log(chalk.blue('Created:'), new Date(job.createdAt).toLocaleString());
|
|
309
|
+
if (job.completedAt) {
|
|
310
|
+
console.log(chalk.blue('Completed:'), new Date(job.completedAt).toLocaleString());
|
|
311
|
+
}
|
|
312
|
+
return job;
|
|
313
|
+
};
|
|
314
|
+
try {
|
|
315
|
+
if (options?.watch) {
|
|
316
|
+
console.log(chalk.gray('Watching job status (Ctrl+C to stop)...'));
|
|
317
|
+
let running = true;
|
|
318
|
+
const poll = async () => {
|
|
319
|
+
while (running) {
|
|
320
|
+
const job = await fetchAndDisplay();
|
|
321
|
+
if (job.status === 'completed' || job.status === 'failed') {
|
|
322
|
+
console.log('');
|
|
323
|
+
console.log(chalk.gray('Job finished.'));
|
|
324
|
+
running = false;
|
|
325
|
+
break;
|
|
326
|
+
}
|
|
327
|
+
await new Promise(resolve => setTimeout(resolve, 3000));
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
process.on('SIGINT', () => {
|
|
331
|
+
running = false;
|
|
332
|
+
process.exit(0);
|
|
333
|
+
});
|
|
334
|
+
await poll();
|
|
335
|
+
}
|
|
336
|
+
else {
|
|
337
|
+
await fetchAndDisplay();
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
catch (error) {
|
|
341
|
+
const message = error instanceof Error ? error.message : 'Failed to load job';
|
|
342
|
+
console.log(chalk.red(message));
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
function getStatusColor(status) {
|
|
346
|
+
switch (status) {
|
|
347
|
+
case 'completed': return chalk.green;
|
|
348
|
+
case 'failed': return chalk.red;
|
|
349
|
+
case 'processing': return chalk.yellow;
|
|
350
|
+
case 'uploading': return chalk.cyan;
|
|
351
|
+
case 'pending': return chalk.gray;
|
|
352
|
+
default: return chalk.white;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
function getProgressBar(progress) {
|
|
356
|
+
const width = 20;
|
|
357
|
+
const filled = Math.round((progress / 100) * width);
|
|
358
|
+
return chalk.green('█'.repeat(filled)) + chalk.gray('░'.repeat(width - filled));
|
|
359
|
+
}
|
|
360
|
+
function formatBytes(bytes) {
|
|
361
|
+
if (bytes < 1024)
|
|
362
|
+
return `${bytes} B`;
|
|
363
|
+
if (bytes < 1024 * 1024)
|
|
364
|
+
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
365
|
+
if (bytes < 1024 * 1024 * 1024)
|
|
366
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
367
|
+
return `${(bytes / (1024 * 1024 * 1024)).toFixed(2)} GB`;
|
|
368
|
+
}
|
|
369
|
+
//# sourceMappingURL=encoding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../src/commands/encoding.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/login.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AA+CA,UAAU,YAAY;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBvE"}
|
package/dist/commands/login.js
CHANGED
|
@@ -24,38 +24,27 @@ export async function loginCommand(options) {
|
|
|
24
24
|
console.log(chalk.gray('Run "gazill logout" to switch accounts.'));
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
|
-
const {
|
|
28
|
-
// If
|
|
29
|
-
if (
|
|
30
|
-
await
|
|
27
|
+
const { oceanKey } = options;
|
|
28
|
+
// If ocean key provided, use direct Ocean login (for AI agents)
|
|
29
|
+
if (oceanKey) {
|
|
30
|
+
await oceanKeyLogin(oceanKey);
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
|
-
// If only one is provided, show error
|
|
34
|
-
if (email || password) {
|
|
35
|
-
console.log(chalk.red('Both --email and --password are required for direct login.'));
|
|
36
|
-
console.log('');
|
|
37
|
-
console.log(chalk.gray('Usage:'));
|
|
38
|
-
console.log(chalk.cyan(' gazill login --email user@example.com --password yourpassword'));
|
|
39
|
-
console.log('');
|
|
40
|
-
console.log(chalk.gray('Or use browser-based login:'));
|
|
41
|
-
console.log(chalk.cyan(' gazill login'));
|
|
42
|
-
process.exit(1);
|
|
43
|
-
}
|
|
44
33
|
// Default: browser-based device auth flow
|
|
45
34
|
await deviceAuthLogin();
|
|
46
35
|
}
|
|
47
|
-
async function
|
|
36
|
+
async function oceanKeyLogin(oceanKey) {
|
|
48
37
|
const apiUrl = await getApiUrl();
|
|
49
|
-
const spinner = ora('
|
|
38
|
+
const spinner = ora('Authenticating with Ocean key...').start();
|
|
50
39
|
try {
|
|
51
|
-
const response = await fetch(`${apiUrl}/api/auth/
|
|
40
|
+
const response = await fetch(`${apiUrl}/api/auth/ocean-login`, {
|
|
52
41
|
method: 'POST',
|
|
53
42
|
headers: { 'Content-Type': 'application/json' },
|
|
54
|
-
body: JSON.stringify({
|
|
43
|
+
body: JSON.stringify({ oceanKey }),
|
|
55
44
|
});
|
|
56
45
|
if (!response.ok) {
|
|
57
46
|
const errorData = await response.json();
|
|
58
|
-
throw new Error(errorData.error || '
|
|
47
|
+
throw new Error(errorData.error || 'Authentication failed');
|
|
59
48
|
}
|
|
60
49
|
const data = await response.json();
|
|
61
50
|
// Save auth token
|
|
@@ -69,7 +58,7 @@ async function directLogin(email, password) {
|
|
|
69
58
|
console.log(chalk.gray('Run "gazill new <project-name>" to create a project.'));
|
|
70
59
|
}
|
|
71
60
|
catch (error) {
|
|
72
|
-
const message = error instanceof Error ? error.message : '
|
|
61
|
+
const message = error instanceof Error ? error.message : 'Authentication failed';
|
|
73
62
|
spinner.fail(chalk.red(message));
|
|
74
63
|
process.exit(1);
|
|
75
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEjF,8BAA8B;AAC9B,KAAK,UAAU,WAAW,CAAC,GAAW;IACpC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;IAExC,MAAM,OAAO,GAAG,QAAQ,EAAE,KAAK,QAAQ;QACrC,CAAC,CAAC,SAAS,GAAG,GAAG;QACjB,CAAC,CAAC,QAAQ,EAAE,KAAK,OAAO;YACtB,CAAC,CAAC,aAAa,GAAG,GAAG;YACrB,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC;IAE1B,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QACtB,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../src/commands/new.ts"],"names":[],"mappings":"AAgRA,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiI5D;AAGD,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAiDlD;AAGD,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA0CnD"}
|