@crawlee-cloud/cli 0.2.1 → 0.8.5

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.
@@ -2,6 +2,14 @@
2
2
  * `crawlee-cloud push` command
3
3
  *
4
4
  * Builds and pushes Actor to the platform.
5
+ *
6
+ * Supports multiple build strategies:
7
+ * --local (default): build Docker image on the local machine
8
+ * --remote <host>: build on a remote runner via SSH
9
+ * --ghcr <repo>: build locally, push to GHCR, runners pull
10
+ *
11
+ * On push, the actor is created or updated (upsert) so modifiedAt
12
+ * always reflects the latest deployment.
5
13
  */
6
14
  import { Command } from 'commander';
7
15
  export declare const pushCommand: Command;
@@ -1 +1 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsCpC,eAAO,MAAM,WAAW,SA8IpB,CAAC"}
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuCpC,eAAO,MAAM,WAAW,SA8NpB,CAAC"}
@@ -2,6 +2,14 @@
2
2
  * `crawlee-cloud push` command
3
3
  *
4
4
  * Builds and pushes Actor to the platform.
5
+ *
6
+ * Supports multiple build strategies:
7
+ * --local (default): build Docker image on the local machine
8
+ * --remote <host>: build on a remote runner via SSH
9
+ * --ghcr <repo>: build locally, push to GHCR, runners pull
10
+ *
11
+ * On push, the actor is created or updated (upsert) so modifiedAt
12
+ * always reflects the latest deployment.
5
13
  */
6
14
  import { Command } from 'commander';
7
15
  import chalk from 'chalk';
@@ -27,17 +35,23 @@ export const pushCommand = new Command('push')
27
35
  .description('Push Actor to Crawlee Cloud')
28
36
  .option('-t, --tag <tag>', 'Docker image tag', 'latest')
29
37
  .option('--no-build', 'Skip Docker build')
38
+ .option('--platform <platform>', 'Docker build platform (e.g. linux/amd64)', '')
39
+ .option('--remote <user@host>', 'Build on a remote runner via SSH')
40
+ .option('--ssh-key <path>', 'SSH key for remote build')
41
+ .option('--ghcr <repo>', 'Push to GitHub Container Registry (e.g. org/repo)')
42
+ .option('--ghcr-user <user>', 'GHCR username (default: github)')
43
+ .option('--ghcr-token <token>', 'GHCR token (or set GHCR_TOKEN env var)')
44
+ .option('-e, --env <KEY=VALUE>', 'Set actor default env var (repeatable). Empty values are dropped.', collectEnv, {})
45
+ .option('--env-file <path>', 'Load actor default env vars from a file (KEY=VALUE per line, # comments allowed)')
30
46
  .action(async (options) => {
31
47
  console.log(chalk.bold('\nšŸ“¤ Pushing Actor to Crawlee Cloud\n'));
32
48
  const cwd = process.cwd();
33
49
  const config = await getConfig();
34
50
  // Check if .actor directory exists
35
51
  const actorDir = path.join(cwd, '.actor');
36
- if (!await fs.pathExists(actorDir)) {
52
+ if (!(await fs.pathExists(actorDir))) {
37
53
  console.log(chalk.red('āŒ No .actor directory found.'));
38
- console.log(chalk.dim('\nTo create an Actor, run:'));
39
- console.log(chalk.cyan(' npx apify-cli create my-actor'));
40
- console.log(chalk.dim('\nOr create .actor/actor.json manually with:'));
54
+ console.log(chalk.dim('\nCreate .actor/actor.json with:'));
41
55
  console.log(chalk.dim(` {
42
56
  "actorSpecification": 1,
43
57
  "name": "my-actor",
@@ -47,14 +61,8 @@ export const pushCommand = new Command('push')
47
61
  }
48
62
  // Check if actor.json exists
49
63
  const actorJsonPath = path.join(actorDir, 'actor.json');
50
- if (!await fs.pathExists(actorJsonPath)) {
64
+ if (!(await fs.pathExists(actorJsonPath))) {
51
65
  console.log(chalk.red('āŒ No .actor/actor.json found.'));
52
- console.log(chalk.dim('\nCreate .actor/actor.json with at minimum:'));
53
- console.log(chalk.dim(` {
54
- "actorSpecification": 1,
55
- "name": "my-actor",
56
- "title": "My Actor"
57
- }`));
58
66
  process.exit(1);
59
67
  }
60
68
  // Parse and validate actor.json
@@ -67,11 +75,10 @@ export const pushCommand = new Command('push')
67
75
  console.error(err);
68
76
  process.exit(1);
69
77
  }
70
- // Validate required fields
71
78
  const validationErrors = validateActorJson(actorJson);
72
79
  if (validationErrors.length > 0) {
73
80
  console.log(chalk.red('āŒ Invalid .actor/actor.json:'));
74
- validationErrors.forEach(err => console.log(chalk.red(` • ${err}`)));
81
+ validationErrors.forEach((err) => console.log(chalk.red(` • ${err}`)));
75
82
  process.exit(1);
76
83
  }
77
84
  const actorName = actorJson.name;
@@ -82,30 +89,32 @@ export const pushCommand = new Command('push')
82
89
  if (actorJson.version)
83
90
  console.log(chalk.dim(`Version: ${actorJson.version}`));
84
91
  console.log(chalk.dim(`Image: ${imageName}`));
92
+ // Determine build mode
93
+ const buildMode = options.ghcr ? 'ghcr' : options.remote ? 'remote' : 'local';
94
+ console.log(chalk.dim(`Build: ${buildMode}`));
85
95
  console.log();
86
96
  // Check Dockerfile exists
87
97
  const dockerfilePath = actorJson.dockerfile
88
98
  ? path.resolve(cwd, '.actor', actorJson.dockerfile)
89
99
  : path.join(cwd, 'Dockerfile');
90
- if (!await fs.pathExists(dockerfilePath)) {
100
+ if (!(await fs.pathExists(dockerfilePath))) {
91
101
  console.log(chalk.red(`āŒ Dockerfile not found at: ${dockerfilePath}`));
92
102
  process.exit(1);
93
103
  }
94
- // Build Docker image
104
+ // ---- Build image ----
95
105
  if (options.build !== false) {
96
- const buildSpinner = ora('Building Docker image...').start();
97
- try {
98
- await runCommand('docker', ['build', '-t', imageName, '.'], cwd);
99
- buildSpinner.succeed('Docker image built');
106
+ if (buildMode === 'remote') {
107
+ await buildRemote(cwd, imageName, options);
100
108
  }
101
- catch (err) {
102
- buildSpinner.fail('Docker build failed');
103
- console.error(err);
104
- process.exit(1);
109
+ else if (buildMode === 'ghcr') {
110
+ await buildAndPushGhcr(cwd, imageName, actorName, options);
111
+ }
112
+ else {
113
+ await buildLocal(cwd, imageName, options);
105
114
  }
106
115
  }
107
- // Push to registry (if configured)
108
- if (config.registryUrl) {
116
+ // ---- Push to registry (if configured in config, separate from GHCR) ----
117
+ if (config.registryUrl && buildMode === 'local') {
109
118
  const pushSpinner = ora('Pushing to registry...').start();
110
119
  try {
111
120
  const remoteImage = `${config.registryUrl}/actor-${actorName}:${options.tag}`;
@@ -119,32 +128,96 @@ export const pushCommand = new Command('push')
119
128
  process.exit(1);
120
129
  }
121
130
  }
122
- // Register with API
131
+ // ---- Register/update actor (upsert) ----
123
132
  const registerSpinner = ora('Registering with platform...').start();
124
133
  try {
125
- const response = await fetch(`${config.apiBaseUrl}/v2/acts`, {
126
- method: 'POST',
127
- headers: {
128
- 'Content-Type': 'application/json',
129
- 'Authorization': `Bearer ${config.token}`,
134
+ // Check if actor exists
135
+ const listRes = await fetch(`${config.apiBaseUrl}/v2/acts?limit=200`, {
136
+ headers: { Authorization: `Bearer ${config.token}` },
137
+ });
138
+ let existingId = null;
139
+ if (listRes.ok) {
140
+ const listData = (await listRes.json());
141
+ const existing = listData.data.items.find((a) => a.name === actorName);
142
+ if (existing)
143
+ existingId = existing.id;
144
+ }
145
+ // Resolve actor default env vars. Precedence (later wins):
146
+ // actor.json `environmentVariables`
147
+ // < --env-file (CI-friendly: gitignored .env-style file)
148
+ // < --env KEY=VALUE flag (per-run override)
149
+ // Empties are dropped from each *override* layer before merging — an
150
+ // empty override means "don't override," so an unset CI secret can't
151
+ // clobber a non-empty actor.json default. (Whatever ships in
152
+ // actor.json is the author's intent, so we don't strip it.)
153
+ const fromActorJson = actorJson.environmentVariables ?? {};
154
+ const fromFile = options.envFile ? await loadEnvFile(options.envFile) : {};
155
+ const fromFlag = options.env ?? {};
156
+ const mergedEnvVars = {
157
+ ...fromActorJson,
158
+ ...dropEmpty(fromFile),
159
+ ...dropEmpty(fromFlag),
160
+ };
161
+ // Resolve the image reference runners will pull. Mirrors the build/push
162
+ // branches above so the stored value matches whatever was actually pushed:
163
+ // --ghcr: ghcr.io/<repo>/actor-<name>:<tag>
164
+ // config.registryUrl + local: <registryUrl>/actor-<name>:<tag>
165
+ // local only / remote: imageName (local Docker daemon convention)
166
+ // Without this, ghcr / registryUrl deploys would store the local
167
+ // `crawlee-cloud/actor-...` tag and runners would fail to pull it.
168
+ const runtimeImage = buildMode === 'ghcr'
169
+ ? `ghcr.io/${options.ghcr.toLowerCase()}/actor-${actorName}:${options.tag}`
170
+ : config.registryUrl && buildMode === 'local'
171
+ ? `${config.registryUrl}/actor-${actorName}:${options.tag}`
172
+ : imageName;
173
+ const actorPayload = {
174
+ name: actorName,
175
+ title: actorJson.title,
176
+ description: actorJson.description,
177
+ // Source version from .actor/actor.json. Sent so the API can upsert
178
+ // an actor_versions row and link the build to it. Apify uses this
179
+ // for the version selector on the dashboard's build history.
180
+ version: actorJson.version,
181
+ defaultRunOptions: {
182
+ image: runtimeImage,
183
+ envVars: Object.keys(mergedEnvVars).length > 0 ? mergedEnvVars : undefined,
130
184
  },
131
- body: JSON.stringify({
132
- name: actorName,
133
- title: actorJson.title,
134
- description: actorJson.description,
135
- defaultRunOptions: {
136
- image: imageName,
185
+ };
186
+ if (existingId) {
187
+ // Update existing actor (refreshes modifiedAt)
188
+ const response = await fetch(`${config.apiBaseUrl}/v2/acts/${existingId}`, {
189
+ method: 'PUT',
190
+ headers: {
191
+ 'Content-Type': 'application/json',
192
+ Authorization: `Bearer ${config.token}`,
137
193
  },
138
- }),
139
- });
140
- if (!response.ok) {
141
- const errorText = await response.text();
142
- throw new Error(`API error: ${response.status} - ${errorText}`);
194
+ body: JSON.stringify(actorPayload),
195
+ });
196
+ if (!response.ok) {
197
+ const errorText = await response.text();
198
+ throw new Error(`API error: ${String(response.status)} - ${errorText}`);
199
+ }
200
+ registerSpinner.succeed('Actor updated');
201
+ }
202
+ else {
203
+ // Create new actor
204
+ const response = await fetch(`${config.apiBaseUrl}/v2/acts`, {
205
+ method: 'POST',
206
+ headers: {
207
+ 'Content-Type': 'application/json',
208
+ Authorization: `Bearer ${config.token}`,
209
+ },
210
+ body: JSON.stringify(actorPayload),
211
+ });
212
+ if (!response.ok) {
213
+ const errorText = await response.text();
214
+ throw new Error(`API error: ${String(response.status)} - ${errorText}`);
215
+ }
216
+ registerSpinner.succeed('Actor registered');
143
217
  }
144
- registerSpinner.succeed('Registered with platform');
145
218
  console.log(chalk.green(`\nāœ… Actor "${actorName}" pushed successfully!\n`));
146
- console.log(chalk.dim(`Run with: npx crawlee-cloud call ${actorName}`));
147
- console.log(chalk.dim(`Dashboard: http://localhost:3001/actors/${actorName}`));
219
+ console.log(chalk.dim(`Run with: crawlee-cloud call ${actorName}`));
220
+ console.log(chalk.dim(`List: crawlee-cloud ls`));
148
221
  console.log();
149
222
  }
150
223
  catch (err) {
@@ -153,6 +226,140 @@ export const pushCommand = new Command('push')
153
226
  process.exit(1);
154
227
  }
155
228
  });
229
+ // ---- Build strategies ----
230
+ async function buildLocal(cwd, imageName, options) {
231
+ const buildSpinner = ora('Building Docker image...').start();
232
+ try {
233
+ const args = ['build', '-t', imageName];
234
+ if (options.platform) {
235
+ args.push('--platform', options.platform);
236
+ }
237
+ args.push('.');
238
+ await runCommand('docker', args, cwd);
239
+ buildSpinner.succeed('Docker image built');
240
+ }
241
+ catch (err) {
242
+ buildSpinner.fail('Docker build failed');
243
+ console.error(err);
244
+ process.exit(1);
245
+ }
246
+ }
247
+ async function buildRemote(cwd, imageName, options) {
248
+ const buildSpinner = ora(`Building on ${options.remote}...`).start();
249
+ try {
250
+ const sshArgs = options.sshKey ? ['-i', options.sshKey] : [];
251
+ const remoteDir = `/tmp/crawlee-push-${Date.now()}`;
252
+ // Copy build context to remote
253
+ buildSpinner.text = 'Copying build context...';
254
+ await runCommand('scp', [...sshArgs, '-r', '-q', cwd, `${options.remote}:${remoteDir}`], cwd);
255
+ // Build on remote
256
+ buildSpinner.text = 'Building on remote...';
257
+ await runCommand('ssh', [...sshArgs, options.remote, `cd ${remoteDir} && docker build -t ${imageName} .`], cwd);
258
+ // Cleanup remote
259
+ await runCommand('ssh', [...sshArgs, options.remote, `rm -rf ${remoteDir}`], cwd);
260
+ buildSpinner.succeed(`Built on ${options.remote}`);
261
+ }
262
+ catch (err) {
263
+ buildSpinner.fail('Remote build failed');
264
+ console.error(err);
265
+ process.exit(1);
266
+ }
267
+ }
268
+ async function buildAndPushGhcr(cwd, _imageName, actorName, options) {
269
+ const ghcrToken = options.ghcrToken || process.env.GHCR_TOKEN || '';
270
+ const ghcrUser = options.ghcrUser || process.env.GHCR_USER || 'github';
271
+ const ghcrImage = `ghcr.io/${options.ghcr.toLowerCase()}/actor-${actorName}:${options.tag}`;
272
+ if (!ghcrToken) {
273
+ console.log(chalk.red('āŒ GHCR token required. Set --ghcr-token or GHCR_TOKEN env var.'));
274
+ process.exit(1);
275
+ }
276
+ // Login to GHCR
277
+ const loginSpinner = ora('Logging in to GHCR...').start();
278
+ try {
279
+ await runCommandWithInput('docker', ['login', 'ghcr.io', '-u', ghcrUser, '--password-stdin'], ghcrToken, cwd);
280
+ loginSpinner.succeed('GHCR login OK');
281
+ }
282
+ catch (err) {
283
+ loginSpinner.fail('GHCR login failed');
284
+ console.error(err);
285
+ process.exit(1);
286
+ }
287
+ // Build
288
+ const buildSpinner = ora('Building Docker image...').start();
289
+ try {
290
+ const args = ['build', '-t', ghcrImage];
291
+ if (options.platform) {
292
+ args.push('--platform', options.platform);
293
+ }
294
+ args.push('.');
295
+ await runCommand('docker', args, cwd);
296
+ buildSpinner.succeed('Docker image built');
297
+ }
298
+ catch (err) {
299
+ buildSpinner.fail('Docker build failed');
300
+ console.error(err);
301
+ process.exit(1);
302
+ }
303
+ // Push
304
+ const pushSpinner = ora(`Pushing to ${ghcrImage}...`).start();
305
+ try {
306
+ await runCommand('docker', ['push', ghcrImage], cwd);
307
+ pushSpinner.succeed('Pushed to GHCR');
308
+ }
309
+ catch (err) {
310
+ pushSpinner.fail('GHCR push failed');
311
+ console.error(err);
312
+ process.exit(1);
313
+ }
314
+ }
315
+ // ---- Helpers ----
316
+ /**
317
+ * commander value-collector for repeatable `-e KEY=VALUE` flags.
318
+ * Throws on malformed input rather than silently dropping it — bad args
319
+ * during CI deploys would otherwise look like "no env vars set" later.
320
+ */
321
+ function collectEnv(arg, prev) {
322
+ const eq = arg.indexOf('=');
323
+ if (eq <= 0) {
324
+ throw new Error(`Invalid --env value "${arg}". Expected KEY=VALUE.`);
325
+ }
326
+ const key = arg.slice(0, eq);
327
+ const value = arg.slice(eq + 1);
328
+ return { ...prev, [key]: value };
329
+ }
330
+ /**
331
+ * Parse a .env-style file into a flat map. Supports `# comments`, blank
332
+ * lines, and quoted values. Does NOT do shell interpolation (no `$VAR`
333
+ * expansion) — that's the caller's job if they want it.
334
+ */
335
+ async function loadEnvFile(filePath) {
336
+ const content = await fs.readFile(filePath, 'utf8');
337
+ const out = {};
338
+ for (const rawLine of content.split('\n')) {
339
+ const line = rawLine.trim();
340
+ if (!line || line.startsWith('#'))
341
+ continue;
342
+ const eq = line.indexOf('=');
343
+ if (eq <= 0)
344
+ continue;
345
+ const key = line.slice(0, eq).trim();
346
+ let value = line.slice(eq + 1).trim();
347
+ if ((value.startsWith('"') && value.endsWith('"')) ||
348
+ (value.startsWith("'") && value.endsWith("'"))) {
349
+ value = value.slice(1, -1);
350
+ }
351
+ out[key] = value;
352
+ }
353
+ return out;
354
+ }
355
+ function dropEmpty(map) {
356
+ const out = {};
357
+ for (const [k, v] of Object.entries(map)) {
358
+ if (v !== undefined && v !== '')
359
+ out[k] = v;
360
+ }
361
+ return out;
362
+ }
156
363
  function runCommand(cmd, args, cwd) {
157
364
  return new Promise((resolve, reject) => {
158
365
  const child = spawn(cmd, args, { cwd, stdio: 'pipe' });
@@ -165,7 +372,26 @@ function runCommand(cmd, args, cwd) {
165
372
  resolve();
166
373
  }
167
374
  else {
168
- reject(new Error(stderr || `Command failed with code ${code}`));
375
+ reject(new Error(stderr || `Command failed with code ${String(code)}`));
376
+ }
377
+ });
378
+ });
379
+ }
380
+ function runCommandWithInput(cmd, args, input, cwd) {
381
+ return new Promise((resolve, reject) => {
382
+ const child = spawn(cmd, args, { cwd, stdio: ['pipe', 'pipe', 'pipe'] });
383
+ let stderr = '';
384
+ child.stderr?.on('data', (data) => {
385
+ stderr += data.toString();
386
+ });
387
+ child.stdin?.write(input);
388
+ child.stdin?.end();
389
+ child.on('exit', (code) => {
390
+ if (code === 0) {
391
+ resolve();
392
+ }
393
+ else {
394
+ reject(new Error(stderr || `Command failed with code ${String(code)}`));
169
395
  }
170
396
  });
171
397
  });
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAgB/C,SAAS,iBAAiB,CAAC,SAAoB;IAC7C,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,QAAQ,CAAC;KACvD,MAAM,CAAC,YAAY,EAAE,mBAAmB,CAAC;KACzC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;IAEjE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IAEjC,mCAAmC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;;;;IAIxB,CAAC,CAAC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,6BAA6B;IAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;;;;IAIxB,CAAC,CAAC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,gCAAgC;IAChC,IAAI,SAAoB,CAAC;IACzB,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2BAA2B;IAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACtD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACvD,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,IAAK,CAAC;IAClC,MAAM,SAAS,GAAG,uBAAuB,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEpE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9C,IAAI,SAAS,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACzE,IAAI,SAAS,CAAC,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,0BAA0B;IAC1B,MAAM,cAAc,GAAG,SAAS,CAAC,UAAU;QACzC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC;QACnD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAEjC,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,qBAAqB;IACrB,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,GAAG,CAAC,0BAA0B,CAAC,CAAC,KAAK,EAAE,CAAC;QAE7D,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACjE,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,GAAG,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;QAE1D,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,GAAG,MAAM,CAAC,WAAW,UAAU,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAC9E,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;YACvD,WAAW,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,MAAM,eAAe,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;IAEpE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,UAAU,EAAE;YAC3D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,MAAM,CAAC,KAAK,EAAE;aAC1C;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,iBAAiB,EAAE;oBACjB,KAAK,EAAE,SAAS;iBACjB;aACF,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,eAAe,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAEpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,SAAS,0BAA0B,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2CAA2C,SAAS,EAAE,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,GAAG,EAAE,CAAC;IAEhB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,SAAS,UAAU,CAAC,GAAW,EAAE,IAAc,EAAE,GAAW;IAC1D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAEvD,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,eAAO,MAAM,OAAO,SAAgB,CAAC;AAiBrC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,eAAO,MAAM,OAAO,SAAgB,CAAC;AAoBrC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -20,6 +20,9 @@ import { callCommand } from './commands/call.js';
20
20
  import { logsCommand } from './commands/logs.js';
21
21
  import { statusCommand } from './commands/status.js';
22
22
  import { loginCommand } from './commands/login.js';
23
+ import { listCommand } from './commands/list.js';
24
+ import { profileCommand } from './commands/profile.js';
25
+ import { infoCommand } from './commands/info.js';
23
26
  export const program = new Command();
24
27
  program
25
28
  .name('crawlee-cloud')
@@ -34,6 +37,9 @@ program.addCommand(callCommand);
34
37
  program.addCommand(logsCommand);
35
38
  program.addCommand(statusCommand);
36
39
  program.addCommand(loginCommand);
40
+ program.addCommand(listCommand);
41
+ program.addCommand(profileCommand);
42
+ program.addCommand(infoCommand);
37
43
  export { program as cli };
38
44
  // v0.2.1 trigger
39
45
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAErC,OAAO;KACJ,IAAI,CAAC,eAAe,CAAC;KACrB,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,oBAAoB;AACpB,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC;AAE1B,iBAAiB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAErC,OAAO;KACJ,IAAI,CAAC,eAAe,CAAC;KACrB,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,oBAAoB;AACpB,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAEhC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC;AAE1B,iBAAiB"}
@@ -1,5 +1,32 @@
1
1
  /**
2
2
  * Configuration utilities for CLI.
3
+ *
4
+ * The config file supports multiple named "profiles" — separate API URL +
5
+ * token sets for different environments (local / staging / prod / per-team).
6
+ * One profile is active at a time; `getConfig()` returns its values so the
7
+ * rest of the CLI doesn't need to know about profiles at all.
8
+ *
9
+ * Persisted shape (~/.crawlee-cloud/config.json):
10
+ * {
11
+ * "activeProfile": "default",
12
+ * "profiles": {
13
+ * "default": { "apiBaseUrl": "...", "token": "...", "registryUrl": "..." },
14
+ * "prod": { ... },
15
+ * "staging": { ... }
16
+ * }
17
+ * }
18
+ *
19
+ * Backwards-compat: if the file is in the OLD flat shape
20
+ * { "apiBaseUrl": "...", "token": "..." }
21
+ * we migrate it on first read into a `default` profile, transparently.
22
+ *
23
+ * Profile selection precedence (highest wins):
24
+ * 1. CRAWLEE_CLOUD_PROFILE env var (per-invocation override)
25
+ * 2. activeProfile in config.json
26
+ * 3. "default"
27
+ *
28
+ * Env-var overrides for the active profile's fields still apply
29
+ * (CRAWLEE_CLOUD_API_URL, CRAWLEE_CLOUD_TOKEN, etc.) — useful for CI.
3
30
  */
4
31
  export interface CLIConfig {
5
32
  apiBaseUrl: string;
@@ -7,15 +34,41 @@ export interface CLIConfig {
7
34
  registryUrl?: string;
8
35
  }
9
36
  /**
10
- * Get CLI configuration.
37
+ * Get the effective CLI configuration for the active profile.
38
+ *
39
+ * Resolution order per field (highest wins):
40
+ * 1. Direct env var (CRAWLEE_CLOUD_API_URL, CRAWLEE_CLOUD_TOKEN, ...)
41
+ * 2. Active profile in config.json
42
+ * 3. Hard-coded defaults
11
43
  */
12
44
  export declare function getConfig(): Promise<CLIConfig>;
13
45
  /**
14
- * Save CLI configuration.
15
- */
16
- export declare function saveConfig(config: Partial<CLIConfig>): Promise<void>;
17
- /**
18
- * Clear CLI configuration.
46
+ * Save (merge) into the active profile. Used by `crc login` to persist
47
+ * after a successful auth handshake.
48
+ *
49
+ * If `profile` is passed, that named profile is updated/created instead
50
+ * of the active one — this is how `crc login --profile prod` adds a new
51
+ * profile without disturbing the active selection.
19
52
  */
53
+ export declare function saveConfig(config: Partial<CLIConfig>, options?: {
54
+ profile?: string;
55
+ setActive?: boolean;
56
+ }): Promise<void>;
57
+ /** Delete every persisted profile + reset active. Used in test cleanup. */
20
58
  export declare function clearConfig(): Promise<void>;
59
+ export interface ProfileSummary {
60
+ name: string;
61
+ apiBaseUrl: string;
62
+ /** First 12 chars of the token, suffix masked. */
63
+ tokenPreview: string;
64
+ active: boolean;
65
+ }
66
+ /** List every persisted profile with its API URL and a masked token preview. */
67
+ export declare function listProfiles(): Promise<ProfileSummary[]>;
68
+ /** Set the active profile. Throws if the named profile doesn't exist. */
69
+ export declare function useProfile(name: string): Promise<void>;
70
+ /** Remove a named profile. If it was active, fall back to "default" or first. */
71
+ export declare function removeProfile(name: string): Promise<void>;
72
+ /** Get the currently-active profile's name (after env-var override). */
73
+ export declare function getActiveProfileName(): Promise<string>;
21
74
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAkBpD;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAO1E;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAIjD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAMH,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA4CD;;;;;;;GAOG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAmBpD;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,EAC1B,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GACtD,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,2EAA2E;AAC3E,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAIjD;AAID,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,gFAAgF;AAChF,wBAAsB,YAAY,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAU9D;AAED,yEAAyE;AACzE,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ5D;AAED,iFAAiF;AACjF,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/D;AAED,wEAAwE;AACxE,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAG5D"}