@ethlete/cli 2.1.0-next.9 → 3.0.0-next.17

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.
Files changed (117) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/README.md +30 -7
  3. package/design/define-call.ts +8 -8
  4. package/design/web/frame.ts +11 -5
  5. package/design/web/host.css +4 -4
  6. package/design/web/host.ts +68 -68
  7. package/package.json +3 -3
  8. package/src/index.d.ts +1 -0
  9. package/src/index.js +18 -4
  10. package/src/index.js.map +1 -1
  11. package/src/lib/api/clear.js +13 -3
  12. package/src/lib/api/clear.js.map +1 -1
  13. package/src/lib/api/compose.js +5 -1
  14. package/src/lib/api/compose.js.map +1 -1
  15. package/src/lib/api/definition.js +6 -2
  16. package/src/lib/api/definition.js.map +1 -1
  17. package/src/lib/api/git.d.ts +11 -4
  18. package/src/lib/api/git.js +35 -8
  19. package/src/lib/api/git.js.map +1 -1
  20. package/src/lib/api/help.js +18 -4
  21. package/src/lib/api/help.js.map +1 -1
  22. package/src/lib/api/index.d.ts +1 -0
  23. package/src/lib/api/index.js +1 -0
  24. package/src/lib/api/index.js.map +1 -1
  25. package/src/lib/api/load-definitions.js +10 -1
  26. package/src/lib/api/load-definitions.js.map +1 -1
  27. package/src/lib/api/ports.js +12 -3
  28. package/src/lib/api/ports.js.map +1 -1
  29. package/src/lib/api/run.js +81 -7
  30. package/src/lib/api/run.js.map +1 -1
  31. package/src/lib/api/seeds.d.ts +55 -0
  32. package/src/lib/api/seeds.js +215 -0
  33. package/src/lib/api/seeds.js.map +1 -0
  34. package/src/lib/api/setup.js +1 -1
  35. package/src/lib/api/setup.js.map +1 -1
  36. package/src/lib/api/state.js +7 -5
  37. package/src/lib/api/state.js.map +1 -1
  38. package/src/lib/auth/composer-auth.js +3 -2
  39. package/src/lib/auth/composer-auth.js.map +1 -1
  40. package/src/lib/auth/gitlab-token.js +1 -1
  41. package/src/lib/auth/gitlab-token.js.map +1 -1
  42. package/src/lib/config/diagnose.js +15 -9
  43. package/src/lib/config/diagnose.js.map +1 -1
  44. package/src/lib/config/local-config.d.ts +1 -1
  45. package/src/lib/design/check.js +27 -16
  46. package/src/lib/design/check.js.map +1 -1
  47. package/src/lib/design/serve.js +5 -5
  48. package/src/lib/design/serve.js.map +1 -1
  49. package/src/lib/design/vite-paths.d.ts +7 -0
  50. package/src/lib/design/vite-paths.js +15 -0
  51. package/src/lib/design/vite-paths.js.map +1 -0
  52. package/src/lib/doctor/doctor-command.js +18 -4
  53. package/src/lib/doctor/doctor-command.js.map +1 -1
  54. package/src/lib/release.d.ts +38 -1
  55. package/src/lib/release.js +150 -43
  56. package/src/lib/release.js.map +1 -1
  57. package/src/lib/update/agent-rules-sync.d.ts +37 -0
  58. package/src/lib/update/agent-rules-sync.js +40 -0
  59. package/src/lib/update/agent-rules-sync.js.map +1 -0
  60. package/src/lib/update/agent-setup.d.ts +33 -0
  61. package/src/lib/update/agent-setup.js +124 -0
  62. package/src/lib/update/agent-setup.js.map +1 -0
  63. package/src/lib/update/ai.d.ts +37 -8
  64. package/src/lib/update/ai.js +193 -24
  65. package/src/lib/update/ai.js.map +1 -1
  66. package/src/lib/update/args.d.ts +2 -0
  67. package/src/lib/update/args.js +22 -2
  68. package/src/lib/update/args.js.map +1 -1
  69. package/src/lib/update/available-migrations.d.ts +10 -0
  70. package/src/lib/update/available-migrations.js +23 -0
  71. package/src/lib/update/available-migrations.js.map +1 -0
  72. package/src/lib/update/commits.d.ts +63 -0
  73. package/src/lib/update/commits.js +146 -0
  74. package/src/lib/update/commits.js.map +1 -0
  75. package/src/lib/update/gitignore.d.ts +8 -0
  76. package/src/lib/update/gitignore.js +22 -0
  77. package/src/lib/update/gitignore.js.map +1 -0
  78. package/src/lib/update/index.d.ts +6 -0
  79. package/src/lib/update/index.js +6 -0
  80. package/src/lib/update/index.js.map +1 -1
  81. package/src/lib/update/migration-manifest.d.ts +10 -0
  82. package/src/lib/update/migration-manifest.js +15 -3
  83. package/src/lib/update/migration-manifest.js.map +1 -1
  84. package/src/lib/update/migration-record.d.ts +24 -0
  85. package/src/lib/update/migration-record.js +48 -0
  86. package/src/lib/update/migration-record.js.map +1 -0
  87. package/src/lib/update/migrations-command.d.ts +14 -0
  88. package/src/lib/update/migrations-command.js +212 -0
  89. package/src/lib/update/migrations-command.js.map +1 -0
  90. package/src/lib/update/package-manager.d.ts +20 -1
  91. package/src/lib/update/package-manager.js +34 -15
  92. package/src/lib/update/package-manager.js.map +1 -1
  93. package/src/lib/update/packages.js +31 -9
  94. package/src/lib/update/packages.js.map +1 -1
  95. package/src/lib/update/pending.d.ts +16 -0
  96. package/src/lib/update/pending.js +21 -5
  97. package/src/lib/update/pending.js.map +1 -1
  98. package/src/lib/update/plan.d.ts +28 -2
  99. package/src/lib/update/plan.js +54 -3
  100. package/src/lib/update/plan.js.map +1 -1
  101. package/src/lib/update/registry.d.ts +32 -4
  102. package/src/lib/update/registry.js +145 -8
  103. package/src/lib/update/registry.js.map +1 -1
  104. package/src/lib/update/run-migrations.d.ts +2 -0
  105. package/src/lib/update/run-migrations.js +20 -15
  106. package/src/lib/update/run-migrations.js.map +1 -1
  107. package/src/lib/update/scan.d.ts +14 -0
  108. package/src/lib/update/scan.js +57 -0
  109. package/src/lib/update/scan.js.map +1 -0
  110. package/src/lib/update/semver.js +2 -1
  111. package/src/lib/update/semver.js.map +1 -1
  112. package/src/lib/update/tasks.d.ts +18 -1
  113. package/src/lib/update/tasks.js +114 -43
  114. package/src/lib/update/tasks.js.map +1 -1
  115. package/src/lib/update/update-command.d.ts +7 -0
  116. package/src/lib/update/update-command.js +286 -64
  117. package/src/lib/update/update-command.js.map +1 -1
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateCommand = void 0;
3
+ exports.updateCommand = exports.ignoreTaskList = exports.commitMigration = exports.NOT_A_CHECKOUT = exports.printOutcomes = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const git_1 = require("../api/git");
6
6
  const local_config_1 = require("../config/local-config");
7
7
  const ai_1 = require("./ai");
8
+ const agent_setup_1 = require("./agent-setup");
9
+ const agent_rules_sync_1 = require("./agent-rules-sync");
8
10
  const args_1 = require("./args");
11
+ const commits_1 = require("./commits");
12
+ const gitignore_1 = require("./gitignore");
13
+ const available_migrations_1 = require("./available-migrations");
9
14
  const migration_manifest_1 = require("./migration-manifest");
10
15
  const package_manager_1 = require("./package-manager");
11
16
  const packages_1 = require("./packages");
@@ -34,7 +39,8 @@ const usage = (invocation) => [
34
39
  ' --from <p@ver> The version a package migrates from, when the installed one is already newer',
35
40
  ' --no-install Write package.json, then stop. Install yourself and re-run with --continue',
36
41
  ' --continue Run the migrations of an update that was written but never finished',
37
- ' --ai Hand every agent-assisted task to the command in updateAgentCommand',
42
+ ' --ai Hand every open agent-assisted task to the command in updateAgentCommand',
43
+ ' --no-commit Leave every change uncommitted. By default each step is committed by itself',
38
44
  ' --force Update even when the working tree has uncommitted changes',
39
45
  ].join('\n');
40
46
  const padded = (value, width) => value.padEnd(width);
@@ -46,16 +52,23 @@ const printUpdates = (updates) => {
46
52
  console.log(` ${padded(update.name, width)} ${(_a = update.from) !== null && _a !== void 0 ? _a : 'not installed'} → ${update.to}${tag}`);
47
53
  }
48
54
  };
55
+ const printNewerMajors = (newerMajors) => {
56
+ for (const newer of newerMajors)
57
+ console.log(`\n ${(0, plan_1.newerMajorLine)(newer)}`);
58
+ };
49
59
  const problemsOf = (updates) => updates.flatMap((update) => update.unwritable.map((site) => `${site.manifestPath} declares ${update.name} as "${site.range}", which no single version can be ` +
50
60
  `written into. Change it to ${update.to} by hand.`));
51
61
  const resolveUpdates = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
52
- const { declared, version, tag } = options;
53
- const registry = (0, registry_1.registryUrl)();
54
- const result = { updates: [], problems: [], upToDate: [] };
62
+ var _a;
63
+ const { root, manager, declared, version, tag } = options;
64
+ const registry = (0, registry_1.registryUrl)({ root, manager: manager.name });
65
+ const authorization = (0, registry_1.registryAuthorization)({ root, registry });
66
+ const authorizationSource = (0, registry_1.registryAuthorizationSource)({ root, registry });
67
+ const result = { updates: [], problems: [], upToDate: [], newerMajors: [] };
55
68
  const lookups = yield Promise.all(declared.map((entry) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
56
69
  return ({
57
70
  entry,
58
- lookup: yield (0, registry_1.fetchRegistryPackage)({ packageName: entry.name, registry }),
71
+ lookup: yield (0, registry_1.fetchRegistryPackage)({ packageName: entry.name, registry, authorization, authorizationSource }),
59
72
  });
60
73
  })));
61
74
  for (const { entry, lookup } of lookups) {
@@ -68,6 +81,12 @@ const resolveUpdates = (options) => tslib_1.__awaiter(void 0, void 0, void 0, fu
68
81
  result.problems.push(choice.problem);
69
82
  continue;
70
83
  }
84
+ const target = 'upToDate' in choice ? ((_a = entry.installedVersion) !== null && _a !== void 0 ? _a : (0, packages_1.newestDeclaredVersion)(entry.sites)) : choice.update.to;
85
+ const newer = version === undefined && target !== undefined
86
+ ? (0, plan_1.newerMajorOnTag)({ name: entry.name, version: target, distTags: lookup.package.distTags })
87
+ : undefined;
88
+ if (newer)
89
+ result.newerMajors.push(newer);
71
90
  if ('upToDate' in choice) {
72
91
  result.upToDate.push(entry.name);
73
92
  continue;
@@ -94,77 +113,243 @@ const collectMigrations = (options) => {
94
113
  return collected;
95
114
  };
96
115
  const printMigrations = (pending) => {
116
+ if (pending.length === 0)
117
+ console.log(' none');
97
118
  for (const entry of pending) {
98
119
  console.log(` ${entry.migration.version} ${entry.packageName} ${entry.migration.name} (${entry.migration.kind})`);
99
120
  }
100
121
  };
101
- const printOutcomes = (outcomes) => {
122
+ const printOutcomes = (outcomes, syncFailure) => {
102
123
  const applied = outcomes.filter((outcome) => outcome.state === 'applied').length;
103
124
  const failed = outcomes.filter((outcome) => outcome.state === 'failed');
104
125
  const tasks = outcomes.filter((outcome) => outcome.state === 'task' || outcome.state === 'unsupported').length;
105
- console.log(`\n ${applied} codemod(s) applied, ${tasks} task(s) left, ${failed.length} failed`);
126
+ const failedCount = failed.length + (syncFailure ? 1 : 0);
127
+ console.log(`\n ${applied} codemod(s) applied, ${tasks} task(s) left, ${failedCount} failed`);
106
128
  for (const outcome of failed) {
107
129
  console.error(` - ${outcome.pending.packageName} ${outcome.pending.migration.name}: ${outcome.reason}`);
108
130
  }
131
+ if (syncFailure)
132
+ console.error(` - ${syncFailure.command}: ${syncFailure.reason}`);
133
+ };
134
+ exports.printOutcomes = printOutcomes;
135
+ const SYNC_MESSAGE = 'chore(deps): Sync the ethlete agent rules';
136
+ const migrationMessage = (options) => `chore(deps): Apply the ${options.packageName} ${options.name} migration`;
137
+ exports.NOT_A_CHECKOUT = '\n This is not a git checkout, so nothing is committed.';
138
+ const committerFor = (root, state) => state &&
139
+ (0, commits_1.createStepCommitter)({
140
+ root,
141
+ state,
142
+ save: (commits) => {
143
+ const saved = (0, pending_1.readPendingUpdate)(root);
144
+ if (saved)
145
+ (0, pending_1.writePendingUpdate)({ root, pending: Object.assign(Object.assign({}, saved), { commits }) });
146
+ },
147
+ });
148
+ const commitBump = (options) => {
149
+ const { committer, updates } = options;
150
+ if (!committer || committer.state.bumped)
151
+ return;
152
+ committer.commit({
153
+ message: 'chore(deps): Update the ethlete SDK',
154
+ body: updates.map((update) => { var _a; return `${update.name} ${(_a = update.from) !== null && _a !== void 0 ? _a : 'not installed'} → ${update.to}`; }).join('\n'),
155
+ });
156
+ committer.markBumped();
157
+ };
158
+ const commitMigration = (committer, outcome) => {
159
+ if (outcome.state === 'applied')
160
+ committer === null || committer === void 0 ? void 0 : committer.commit({
161
+ message: migrationMessage({ packageName: outcome.pending.packageName, name: outcome.pending.migration.name }),
162
+ });
163
+ else if (outcome.state === 'failed')
164
+ committer === null || committer === void 0 ? void 0 : committer.skip();
165
+ };
166
+ exports.commitMigration = commitMigration;
167
+ const syncAgentRules = (options) => {
168
+ const { root, manager, updates, dryRun } = options;
169
+ const plan = (0, agent_rules_sync_1.planAgentRulesSync)({ root, manager, updates });
170
+ if (plan.state === 'not-updated')
171
+ return { synced: false };
172
+ const command = plan.command.join(' ');
173
+ if (plan.state === 'no-config') {
174
+ console.log(`\n ${agent_rules_sync_1.AGENT_RULES_PACKAGE} moved, but this repo has no config for it. Run \`${command}\` where it has one.`);
175
+ return { synced: false };
176
+ }
177
+ if (dryRun) {
178
+ console.log(`\n ${agent_rules_sync_1.AGENT_RULES_PACKAGE} moved: a real run regenerates the agent rules with \`${command}\`.`);
179
+ return { synced: false };
180
+ }
181
+ console.log(`\n ${agent_rules_sync_1.AGENT_RULES_PACKAGE} moved, so the agent rules and skills are regenerated.\n\n ${command}\n`);
182
+ const outcome = (0, agent_rules_sync_1.runAgentRulesSync)(plan, root);
183
+ if (outcome.state !== 'failed')
184
+ return { synced: true };
185
+ console.error(` The agent rules sync failed: ${outcome.reason}`);
186
+ return { synced: false, failure: { command, reason: outcome.reason } };
187
+ };
188
+ /** Hands the open assisted tasks to the agent and reports the runs. False when one of them failed. */
189
+ const handToAgent = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
190
+ const { root, template, tasks, committer } = options;
191
+ if ((0, ai_1.assistedTasks)(tasks).length === 0) {
192
+ console.log('\n --ai had nothing to do: no open task is agent-assisted.');
193
+ return true;
194
+ }
195
+ const runs = yield (0, ai_1.runAgentTasks)(Object.assign({ root,
196
+ template,
197
+ tasks }, (committer && {
198
+ afterRun: (run) => {
199
+ if (run.state === 'done')
200
+ committer.commit({ message: migrationMessage(run.task) });
201
+ else
202
+ committer.skip();
203
+ },
204
+ })));
205
+ const count = (state) => runs.filter((run) => run.state === state).length;
206
+ console.log(`\n ${count('done')} agent task(s) done, ${count('open')} still open, ${count('failed')} failed`);
207
+ return count('failed') === 0;
208
+ });
209
+ const agentFailedHint = (invocation) => `\nAn agent run failed. Run \`${invocation} --ai\` again to hand it the tasks that are still open.`;
210
+ const CLI_PACKAGE = '@ethlete/cli';
211
+ /**
212
+ * Runs the migration phase in the `et` the install just put in place. The running process is the old one, and
213
+ * it lacks every step a newer CLI added to the phase.
214
+ */
215
+ const continueWithInstalledCli = (options) => {
216
+ var _a;
217
+ const { root, manager, ai, commit } = options;
218
+ const [binary, ...args] = [
219
+ ...manager.run,
220
+ 'et',
221
+ 'update',
222
+ '--continue',
223
+ ...(ai ? ['--ai'] : []),
224
+ ...(commit ? [] : ['--no-commit']),
225
+ ];
226
+ if (binary === undefined)
227
+ return 1;
228
+ console.log(`\n ${CLI_PACKAGE} moved, so the new version runs the migrations.\n\n ${[binary, ...args].join(' ')}\n`);
229
+ const result = (0, package_manager_1.spawnPackageManager)({ binary, args, spawn: { cwd: root, stdio: 'inherit' } });
230
+ return result.error ? 1 : ((_a = result.status) !== null && _a !== void 0 ? _a : 1);
109
231
  };
110
- const runMigrationPhase = (options) => {
111
- const { root, manager, updates, from, dryRun, ai } = options;
232
+ const runMigrationPhase = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
233
+ var _a;
234
+ const { root, manager, pendingUpdate, updates, from, dryRun, agent, committer } = options;
235
+ const finished = (_a = pendingUpdate.finished) !== null && _a !== void 0 ? _a : [];
112
236
  const collected = collectMigrations({ root, updates, from });
237
+ const skipped = collected.pending.filter((entry) => (0, pending_1.isFinished)({ finished, packageName: entry.packageName, name: entry.migration.name }));
238
+ collected.pending = collected.pending.filter((entry) => !skipped.includes(entry));
239
+ if (skipped.length > 0)
240
+ console.log(`\n ${skipped.length} codemod(s) already applied in the earlier run.`);
113
241
  for (const note of collected.notes)
114
242
  console.log(` ${note}`);
115
243
  for (const problem of collected.problems)
116
244
  console.error(` ${problem}`);
117
- if (collected.pending.length === 0) {
245
+ // Before the tasks and any --ai run: the tasks assume the skills of the version that was installed.
246
+ const sync = syncAgentRules({ root, manager, updates, dryRun });
247
+ const syncFailure = sync.failure;
248
+ if (sync.synced)
249
+ committer === null || committer === void 0 ? void 0 : committer.commit({ message: SYNC_MESSAGE });
250
+ else if (syncFailure)
251
+ committer === null || committer === void 0 ? void 0 : committer.skip();
252
+ const nothingPending = collected.pending.length === 0;
253
+ if (nothingPending)
118
254
  console.log('\nNo migration is pending for those versions.');
119
- return { failed: collected.problems.length > 0 };
255
+ else {
256
+ console.log(`\n${collected.pending.length} migration(s) to run:\n`);
257
+ printMigrations(collected.pending);
258
+ if (!(0, run_migrations_1.hasNx)(root)) {
259
+ console.log('\n This repo has no Nx, so every codemod is reported as a command to run by hand.');
260
+ }
120
261
  }
121
- console.log(`\n${collected.pending.length} migration(s) to run:\n`);
122
- printMigrations(collected.pending);
123
- if (!(0, run_migrations_1.hasNx)(root)) {
124
- console.log('\n This repo has no Nx, so every codemod is reported as a command to run by hand.');
262
+ const outcomes = (0, run_migrations_1.runPendingMigrations)({
263
+ root,
264
+ manager,
265
+ pending: collected.pending,
266
+ dryRun,
267
+ afterEach: (outcome) => (0, exports.commitMigration)(committer, outcome),
268
+ });
269
+ if (!nothingPending)
270
+ (0, exports.printOutcomes)(outcomes, syncFailure);
271
+ const availableLine = (0, plan_1.availableMigrationsLine)((0, available_migrations_1.collectAvailableMigrations)(root).available);
272
+ if (availableLine)
273
+ console.log(`\n ${availableLine}`);
274
+ if (!dryRun) {
275
+ const applied = outcomes
276
+ .filter((outcome) => outcome.state === 'applied')
277
+ .map((outcome) => ({ packageName: outcome.pending.packageName, name: outcome.pending.migration.name }));
278
+ (0, pending_1.writePendingUpdate)({
279
+ root,
280
+ pending: Object.assign(Object.assign(Object.assign({}, pendingUpdate), (committer && { commits: committer.state })), { finished: [...finished, ...applied] }),
281
+ });
125
282
  }
126
- const outcomes = (0, run_migrations_1.runPendingMigrations)({ root, manager, pending: collected.pending, dryRun });
127
- printOutcomes(outcomes);
128
283
  if (dryRun) {
129
- console.log('\nDry run: no report was written.');
130
- return { failed: false };
284
+ if (!nothingPending)
285
+ console.log('\nDry run: no report was written.');
286
+ return {
287
+ failed: nothingPending && (collected.problems.length > 0 || syncFailure !== undefined),
288
+ agentFailed: false,
289
+ };
131
290
  }
132
291
  const written = (0, tasks_1.writeUpdateTasks)({
133
292
  root,
134
293
  updates,
135
- outcomes,
294
+ outcomes: [...skipped.map((entry) => ({ pending: entry, state: 'applied' })), ...outcomes],
136
295
  manager,
137
296
  generatedAt: new Date().toISOString(),
297
+ syncFailure,
138
298
  });
139
299
  if (written.tasks.length > 0) {
140
300
  console.log(`\n ${written.tasks.length} task(s) written to ${written.reportPath}`);
141
301
  console.log(` The same list for an agent: ${written.dataPath}`);
142
302
  }
143
- if (ai) {
144
- const template = (0, local_config_1.readLocalConfig)(root).config.updateAgentCommand;
145
- const assisted = (0, ai_1.assistedTasks)(written.tasks);
146
- if (assisted.length === 0)
147
- console.log('\n --ai had nothing to do: no task is agent-assisted.');
148
- else if (!template) {
149
- console.error(`\n --ai needs "${ai_1.AGENT_COMMAND_KEY}" in ethlete.config.local.json, for example "claude -p".`);
150
- }
151
- else {
152
- const runs = (0, ai_1.runAgentTasks)({ root, template, tasks: written.tasks });
153
- const failed = runs.filter((run) => !run.ok);
154
- for (const run of failed)
155
- console.error(` ${run.task.name}: ${run.reason}`);
156
- }
303
+ const agentOk = agent === undefined || (yield handToAgent({ root, template: agent, tasks: written.tasks, committer }));
304
+ return {
305
+ agentFailed: !agentOk,
306
+ failed: outcomes.some((outcome) => outcome.state === 'failed') ||
307
+ collected.problems.length > 0 ||
308
+ syncFailure !== undefined,
309
+ };
310
+ });
311
+ const ignoreTaskList = (root) => {
312
+ if (!(0, gitignore_1.ignoreUpdateDir)(root))
313
+ return;
314
+ console.log(`\n ${gitignore_1.UPDATE_IGNORE_ENTRY} added to .gitignore: the task list is yours, not the repo's.`);
315
+ };
316
+ exports.ignoreTaskList = ignoreTaskList;
317
+ const continueHint = (invocation) => `\nRun \`${invocation} --continue\` again once the failures above are fixed.`;
318
+ /** Hands the tasks an earlier run left to the agent, for an `--ai` run that has no update to make. */
319
+ const workOpenTasks = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
320
+ const { root, agent, invocation, commit } = options;
321
+ const tasks = (0, tasks_1.refreshUpdateTasks)(root);
322
+ if (tasks === undefined) {
323
+ console.log(`\n --ai had nothing to do: ${tasks_1.UPDATE_DIR} holds no task list.`);
324
+ return 0;
157
325
  }
158
- return { failed: outcomes.some((outcome) => outcome.state === 'failed') || collected.problems.length > 0 };
326
+ const commits = commit ? (0, commits_1.startCommits)(root) : undefined;
327
+ if (commit && !commits)
328
+ console.log(exports.NOT_A_CHECKOUT);
329
+ if (yield handToAgent({ root, template: agent, tasks, committer: committerFor(root, commits) }))
330
+ return 0;
331
+ console.error(agentFailedHint(invocation));
332
+ return 1;
333
+ });
334
+ const exitAfterAgent = (options) => {
335
+ if (!options.agentFailed)
336
+ return 0;
337
+ console.error(agentFailedHint(options.invocation));
338
+ return 1;
159
339
  };
160
- const resume = (options) => {
161
- var _a;
162
- const { root, manager, argv } = options;
340
+ const resume = (options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
341
+ const { root, manager, argv, invocation, agent } = options;
163
342
  const pending = (0, pending_1.readPendingUpdate)(root);
343
+ if (!pending && agent !== undefined && !argv.dryRun) {
344
+ console.log(`No update to continue: handing the open tasks in ${tasks_1.UPDATE_DIR} to the agent.`);
345
+ return workOpenTasks({ root, agent, invocation, commit: argv.commit });
346
+ }
164
347
  if (!pending) {
165
348
  console.error(`Nothing to continue: ${pending_1.PENDING_FILE} is not there.`);
166
349
  return 1;
167
350
  }
351
+ if (!argv.dryRun)
352
+ (0, exports.ignoreTaskList)(root);
168
353
  console.log(`\nContinuing the update started at ${pending.startedAt}:\n`);
169
354
  const updates = pending.packages.map((entry) => {
170
355
  var _a;
@@ -174,27 +359,34 @@ const resume = (options) => {
174
359
  to: entry.to,
175
360
  });
176
361
  });
177
- for (const update of updates) {
178
- console.log(` ${update.name} ${(_a = update.from) !== null && _a !== void 0 ? _a : 'not installed'} → ${update.to}`);
179
- }
180
- const result = runMigrationPhase({
362
+ printUpdates(updates);
363
+ const committer = argv.commit && !argv.dryRun ? committerFor(root, pending.commits) : undefined;
364
+ commitBump({ committer, updates });
365
+ const result = yield runMigrationPhase({
181
366
  root,
182
367
  manager,
368
+ pendingUpdate: pending,
183
369
  updates,
184
- from: argv.from,
370
+ from: Object.assign(Object.assign({}, pending.from), argv.from),
185
371
  dryRun: argv.dryRun,
186
- ai: argv.ai,
372
+ agent,
373
+ committer,
187
374
  });
188
- if (!result.failed && !argv.dryRun)
189
- (0, pending_1.clearPendingUpdate)(root);
190
- return result.failed ? 1 : 0;
191
- };
375
+ if (argv.dryRun)
376
+ return result.failed ? 1 : 0;
377
+ if (result.failed) {
378
+ console.error(continueHint(invocation));
379
+ return 1;
380
+ }
381
+ (0, pending_1.clearPendingUpdate)(root);
382
+ return exitAfterAgent({ agentFailed: result.agentFailed, invocation });
383
+ });
192
384
  /**
193
385
  * Moves this repo's `@ethlete/*` dependencies to a newer version and runs the migrations those versions
194
386
  * ship. Everything the codemods cannot decide is written to a task list under `.ethlete/update`.
195
387
  */
196
388
  const updateCommand = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ argv, root = process.cwd(), invocation = 'et update', }) {
197
- var _b;
389
+ var _b, _c;
198
390
  const args = (0, args_1.parseUpdateArgs)(argv);
199
391
  if (args.help) {
200
392
  console.log(usage(invocation));
@@ -204,14 +396,25 @@ const updateCommand = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function*
204
396
  console.error(`${args.problems.join('\n')}\n\n${usage(invocation)}`);
205
397
  return 1;
206
398
  }
399
+ const agent = args.ai
400
+ ? ((_b = (0, local_config_1.readLocalConfig)(root).config.updateAgentCommand) !== null && _b !== void 0 ? _b : (yield (0, agent_setup_1.setUpAgentCommand)({ root })))
401
+ : undefined;
402
+ if (args.ai && !agent)
403
+ return 1;
207
404
  const manifest = (0, packages_1.readManifest)(root);
208
405
  if (!manifest) {
209
406
  console.error(`${(0, packages_1.manifestPath)(root)} cannot be read, so there is nothing to update.`);
210
407
  return 1;
211
408
  }
212
409
  const manager = (0, package_manager_1.detectPackageManager)({ root, manifest });
410
+ const unfinished = args.resume ? undefined : (0, pending_1.readPendingUpdate)(root);
411
+ if (unfinished) {
412
+ console.error(`\nThe update started at ${unfinished.startedAt} is not finished (${pending_1.PENDING_FILE}).\n` +
413
+ `Run \`${invocation} --continue\` to finish it.`);
414
+ return 1;
415
+ }
213
416
  if (args.resume)
214
- return resume({ root, manager, argv: args });
417
+ return resume({ root, manager, argv: args, invocation, agent });
215
418
  const manifests = (0, packages_1.findManifests)(root);
216
419
  const all = (0, packages_1.declaredEthletePackages)({ root, manifests });
217
420
  const named = args.packages.filter((name) => !all.some((entry) => entry.name === name));
@@ -224,17 +427,28 @@ const updateCommand = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function*
224
427
  console.log('This repo declares no @ethlete/* dependency.');
225
428
  return 0;
226
429
  }
227
- const resolved = yield resolveUpdates({ declared, version: args.version, tag: args.tag });
430
+ const resolved = yield resolveUpdates({ root, manager, declared, version: args.version, tag: args.tag });
228
431
  for (const problem of resolved.problems)
229
432
  console.error(` ${problem}`);
230
433
  if (resolved.updates.length === 0) {
434
+ if (resolved.problems.length > 0) {
435
+ console.error(`\n${resolved.problems.length} lookup(s) failed, ${resolved.upToDate.length} package(s) on their newest version.`);
436
+ return 1;
437
+ }
231
438
  console.log(`\nEvery @ethlete package is on its newest version (${resolved.upToDate.length} checked).`);
232
- return resolved.problems.length > 0 ? 1 : 0;
439
+ printNewerMajors(resolved.newerMajors);
440
+ if (args.check || args.dryRun)
441
+ return 0;
442
+ if (agent !== undefined)
443
+ return workOpenTasks({ root, agent, invocation, commit: args.commit });
444
+ (0, tasks_1.refreshUpdateTasks)(root);
445
+ return 0;
233
446
  }
234
447
  console.log('');
235
448
  if (manifests.length > 1)
236
449
  console.log(` ${manifests.length} package.json files scanned.\n`);
237
450
  printUpdates(resolved.updates);
451
+ printNewerMajors(resolved.newerMajors);
238
452
  for (const update of resolved.updates.filter(plan_1.isDowngrade)) {
239
453
  console.log(`\n ${update.name} moves back to ${update.to}, which is older than the installed ${update.from}.`);
240
454
  }
@@ -261,16 +475,15 @@ const updateCommand = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function*
261
475
  'Commit or stash them first, or re-run with --force.');
262
476
  return 1;
263
477
  }
478
+ const commits = args.commit ? (0, commits_1.startCommits)(root) : undefined;
479
+ if (args.commit && !commits)
480
+ console.log(exports.NOT_A_CHECKOUT);
481
+ (0, exports.ignoreTaskList)(root);
264
482
  const changedManifests = (0, packages_1.writeRanges)({ root, writes: writable.flatMap((update) => update.writes) });
265
- (0, pending_1.writePendingUpdate)({
266
- root,
267
- pending: {
268
- startedAt: new Date().toISOString(),
269
- packages: writable.map((update) => { var _a; return ({ name: update.name, from: (_a = update.from) !== null && _a !== void 0 ? _a : null, to: update.to }); }),
270
- },
271
- });
483
+ const pendingUpdate = Object.assign(Object.assign({ startedAt: new Date().toISOString(), packages: writable.map((update) => { var _a; return ({ name: update.name, from: (_a = update.from) !== null && _a !== void 0 ? _a : null, to: update.to }); }) }, (Object.keys(args.from).length > 0 ? { from: args.from } : {})), (commits && { commits }));
484
+ (0, pending_1.writePendingUpdate)({ root, pending: pendingUpdate });
272
485
  const manifestNote = changedManifests.length === 1
273
- ? ((_b = changedManifests[0]) !== null && _b !== void 0 ? _b : packages_1.ROOT_MANIFEST)
486
+ ? ((_c = changedManifests[0]) !== null && _c !== void 0 ? _c : packages_1.ROOT_MANIFEST)
274
487
  : `${changedManifests.length} package.json files`;
275
488
  console.log(`\n ${manifestNote} updated. The migration plan is in ${pending_1.PENDING_FILE}.`);
276
489
  if (!args.install) {
@@ -284,20 +497,29 @@ const updateCommand = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function*
284
497
  `Fix it, then run \`${invocation} --continue\` to run the migrations.`);
285
498
  return 1;
286
499
  }
287
- const result = runMigrationPhase({
500
+ const committer = committerFor(root, commits);
501
+ commitBump({ committer, updates: writable });
502
+ if (writable.some((update) => update.name === CLI_PACKAGE && update.from !== update.to)) {
503
+ return continueWithInstalledCli({ root, manager, ai: args.ai, commit: args.commit });
504
+ }
505
+ const result = yield runMigrationPhase({
288
506
  root,
289
507
  manager,
508
+ pendingUpdate,
290
509
  updates: writable,
291
510
  from: args.from,
292
511
  dryRun: false,
293
- ai: args.ai,
512
+ agent,
513
+ committer,
294
514
  });
295
515
  if (result.failed) {
296
- console.error(`\nRun \`${invocation} --continue\` again once the failures above are fixed.`);
516
+ console.error(continueHint(invocation));
297
517
  return 1;
298
518
  }
299
519
  (0, pending_1.clearPendingUpdate)(root);
300
520
  console.log(`\nDone. Read ${tasks_1.UPDATE_DIR} for anything left to do.`);
521
+ if (result.agentFailed)
522
+ return exitAfterAgent({ agentFailed: true, invocation });
301
523
  return rangeProblems.length > 0 ? 1 : 0;
302
524
  });
303
525
  exports.updateCommand = updateCommand;
@@ -1 +1 @@
1
- {"version":3,"file":"update-command.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/update-command.ts"],"names":[],"mappings":";;;;AAAA,oCAAmD;AACnD,yDAAyD;AACzD,6BAAuE;AACvE,iCAAyC;AACzC,6DAA6D;AAC7D,uDAAyE;AACzE,yCAQoB;AACpB,iCAQgB;AAChB,uCAAoG;AACpG,yCAA+D;AAC/D,qDAA6F;AAC7F,mCAAuD;AAUvD,MAAM,KAAK,GAAG,CAAC,UAAkB,EAAE,EAAE,CACnC;IACE,UAAU,UAAU,wBAAwB;IAC5C,EAAE;IACF,+FAA+F;IAC/F,iGAAiG;IACjG,EAAE;IACF,gGAAgG;IAChG,gCAAgC;IAChC,EAAE;IACF,yFAAyF;IACzF,mCAAmC;IACnC,EAAE;IACF,OAAO;IACP,gGAAgG;IAChG,wFAAwF;IACxF,6FAA6F;IAC7F,8DAA8D;IAC9D,gGAAgG;IAChG,8FAA8F;IAC9F,uFAAuF;IACvF,uFAAuF;IACvF,6EAA6E;CAC9E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEf,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAErE,MAAM,YAAY,GAAG,CAAC,OAAiC,EAAE,EAAE;;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAEvE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAElD,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,MAAA,MAAM,CAAC,IAAI,mCAAI,eAAe,MAAM,MAAM,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IACzG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,OAAiC,EAAE,EAAE,CACvD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACzB,MAAM,CAAC,UAAU,CAAC,GAAG,CACnB,CAAC,IAAI,EAAE,EAAE,CACP,GAAG,IAAI,CAAC,YAAY,aAAa,MAAM,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,oCAAoC;IAClG,8BAA8B,MAAM,CAAC,EAAE,WAAW,CACrD,CACF,CAAC;AAQJ,MAAM,cAAc,GAAG,CAAO,OAI7B,EAA0B,EAAE;IAC3B,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,QAAQ,GAAG,IAAA,sBAAW,GAAE,CAAC;IAC/B,MAAM,MAAM,GAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAE1E,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,QAAQ,CAAC,GAAG,CAAC,CAAO,KAAK,EAAE,EAAE;QAAC,OAAA,CAAC;YAC7B,KAAK;YACL,MAAM,EAAE,MAAM,IAAA,+BAAoB,EAAC,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;SAC1E,CAAC,CAAA;MAAA,CAAC,CACJ,CAAC;IAEF,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACxD,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,mBAAY,EAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAEtG,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;YACxB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACrC,SAAS;QACX,CAAC;QAED,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,SAAS;QACX,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAA,CAAC;AAQF,MAAM,iBAAiB,GAAG,CAAC,OAI1B,EAAuB,EAAE;;IACxB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,SAAS,GAAwB,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEhF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAI,MAAM,CAAC,IAAI,CAAC;QAE/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,0DAA0D,CAAC,CAAC;YAC/F,SAAS;QACX,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAA,0CAAqB,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAEpF,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACvD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAA,wBAAiB,EAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,SAAS,CAAC,OAAO,GAAG,IAAA,sBAAe,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAEvD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,OAAoC,EAAE,EAAE;IAC/D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,SAAS,CAAC,OAAO,KAAK,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,CACxG,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,QAAqC,EAAE,EAAE;IAC9D,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,MAAM,IAAI,OAAO,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC,MAAM,CAAC;IAE/G,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,wBAAwB,KAAK,kBAAkB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;IAEjG,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3G,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAO1B,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;IAC7D,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7D,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAE7D,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ;QAAE,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;IAExE,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAE7D,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,MAAM,yBAAyB,CAAC,CAAC;IACpE,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAEnC,IAAI,CAAC,IAAA,sBAAK,EAAC,IAAI,CAAC,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,oFAAoF,CAAC,CAAC;IACpG,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,qCAAoB,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7F,aAAa,CAAC,QAAQ,CAAC,CAAC;IAExB,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QAEjD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC;QAC/B,IAAI;QACJ,OAAO;QACP,QAAQ;QACR,OAAO;QACP,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,uBAAuB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,EAAE,EAAE,CAAC;QACP,MAAM,QAAQ,GAAG,IAAA,8BAAe,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACjE,MAAM,QAAQ,GAAG,IAAA,kBAAa,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;aAC5F,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,mBAAmB,sBAAiB,0DAA0D,CAAC,CAAC;QAChH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,IAAA,kBAAa,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE7C,KAAK,MAAM,GAAG,IAAI,MAAM;gBAAE,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;AAC7G,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,OAA4F,EAAE,EAAE;;IAC9G,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,OAAO,GAAG,IAAA,2BAAiB,EAAC,IAAI,CAAC,CAAC;IAExC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,sBAAY,gBAAgB,CAAC,CAAC;QAEpE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sCAAsC,OAAO,CAAC,SAAS,KAAK,CAAC,CAAC;IAE1E,MAAM,OAAO,GAAqB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;;QAAC,OAAA,CAAC;YACjE,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,SAAS;YAC7B,EAAE,EAAE,KAAK,CAAC,EAAE;SACb,CAAC,CAAA;KAAA,CAAC,CAAC;IAEJ,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,KAAK,MAAA,MAAM,CAAC,IAAI,mCAAI,eAAe,MAAM,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC;QAC/B,IAAI;QACJ,OAAO;QACP,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,IAAA,4BAAkB,EAAC,IAAI,CAAC,CAAC;IAE7D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF;;;GAGG;AACI,MAAM,aAAa,GAAG,KAIa,EAAE,oDAJR,EAClC,IAAI,EACJ,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,EACpB,UAAU,GAAG,WAAW,GACH;;IACrB,MAAM,IAAI,GAAG,IAAA,sBAAe,EAAC,IAAI,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAE/B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAErE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,GAAG,IAAA,uBAAY,EAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAEtF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,sCAAoB,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEzD,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9D,MAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,IAAA,kCAAuB,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;IAExF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5D,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9G,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAE5D,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAE1F,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ;QAAE,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;IAEvE,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,sDAAsD,QAAQ,CAAC,QAAQ,CAAC,MAAM,YAAY,CAAC,CAAC;QAExG,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,MAAM,gCAAgC,CAAC,CAAC;IAE7F,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAE/B,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAW,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,IAAI,kBAAkB,MAAM,CAAC,EAAE,uCAAuC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAClH,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,KAAK,MAAM,OAAO,IAAI,aAAa;QAAE,OAAO,CAAC,KAAK,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;IAErE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE/E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,mBAAmB,CAAC,CAAC;QAEtD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;QAC3F,eAAe,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE/C,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAEnE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAA,2BAAqB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,KAAK,CACX,+EAA+E;YAC7E,qDAAqD,CACxD,CAAC;QAEF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAA,sBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEpG,IAAA,4BAAkB,EAAC;QACjB,IAAI;QACJ,OAAO,EAAE;YACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,WAAC,OAAA,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAA,MAAM,CAAC,IAAI,mCAAI,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA,EAAA,CAAC;SACtG;KACF,CAAC,CAAC;IAEH,MAAM,YAAY,GAChB,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAC3B,CAAC,CAAC,CAAC,MAAA,gBAAgB,CAAC,CAAC,CAAC,mCAAI,wBAAa,CAAC;QACxC,CAAC,CAAC,GAAG,gBAAgB,CAAC,MAAM,qBAAqB,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,OAAO,YAAY,sCAAsC,sBAAY,GAAG,CAAC,CAAC;IAEtF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,0CAA0C,UAAU,gBAAgB,CAAC,CAAC;QAElF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,IAAA,2BAAU,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CACX,yBAAyB,SAAS,CAAC,MAAM,IAAI;YAC3C,sBAAsB,UAAU,sCAAsC,CACzE,CAAC;QAEF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC;QAC/B,IAAI;QACJ,OAAO;QACP,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,KAAK;QACb,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,WAAW,UAAU,wDAAwD,CAAC,CAAC;QAE7F,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAA,4BAAkB,EAAC,IAAI,CAAC,CAAC;IAEzB,OAAO,CAAC,GAAG,CAAC,gBAAgB,kBAAU,2BAA2B,CAAC,CAAC;IAEnE,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAA,CAAC;AAhKW,QAAA,aAAa,iBAgKxB"}
1
+ {"version":3,"file":"update-command.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/update-command.ts"],"names":[],"mappings":"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"}