@superblocksteam/gateway 2.0.178-next.3 → 2.0.179-next.1
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/README.md +4 -1
- package/dist/auth/cli-session.d.ts +24 -0
- package/dist/auth/cli-session.d.ts.map +1 -0
- package/dist/auth/cli-session.js +46 -0
- package/dist/auth/cli-session.js.map +1 -0
- package/dist/auth/index.d.ts +4 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +4 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/login.d.ts +18 -0
- package/dist/auth/login.d.ts.map +1 -0
- package/dist/auth/login.js +124 -0
- package/dist/auth/login.js.map +1 -0
- package/dist/auth/mcp-oauth-session.d.ts +46 -0
- package/dist/auth/mcp-oauth-session.d.ts.map +1 -0
- package/dist/auth/mcp-oauth-session.js +247 -0
- package/dist/auth/mcp-oauth-session.js.map +1 -0
- package/dist/auth/mcp-server-selection.d.ts +42 -0
- package/dist/auth/mcp-server-selection.d.ts.map +1 -0
- package/dist/auth/mcp-server-selection.js +179 -0
- package/dist/auth/mcp-server-selection.js.map +1 -0
- package/dist/auth/native-oauth.d.ts +33 -0
- package/dist/auth/native-oauth.d.ts.map +1 -0
- package/dist/auth/native-oauth.js +181 -0
- package/dist/auth/native-oauth.js.map +1 -0
- package/dist/capabilities/branching.d.ts +139 -0
- package/dist/capabilities/branching.d.ts.map +1 -0
- package/dist/capabilities/branching.js +540 -0
- package/dist/capabilities/branching.js.map +1 -0
- package/dist/capabilities/lifecycle.d.ts +19 -0
- package/dist/capabilities/lifecycle.d.ts.map +1 -1
- package/dist/capabilities/lifecycle.js +60 -2
- package/dist/capabilities/lifecycle.js.map +1 -1
- package/dist/capabilities/types.d.ts +2 -0
- package/dist/capabilities/types.d.ts.map +1 -1
- package/dist/capabilities/types.js.map +1 -1
- package/dist/main.js +21 -3
- package/dist/main.js.map +1 -1
- package/dist/sabs/editor-client-methods.d.ts.map +1 -1
- package/dist/sabs/editor-client-methods.js +11 -1
- package/dist/sabs/editor-client-methods.js.map +1 -1
- package/dist/server/client.d.ts +125 -4
- package/dist/server/client.d.ts.map +1 -1
- package/dist/server/client.js +55 -4
- package/dist/server/client.js.map +1 -1
- package/dist/stdio/index.d.ts +2 -0
- package/dist/stdio/index.d.ts.map +1 -0
- package/dist/stdio/index.js +2 -0
- package/dist/stdio/index.js.map +1 -0
- package/dist/stdio/serve.d.ts +56 -0
- package/dist/stdio/serve.d.ts.map +1 -0
- package/dist/stdio/serve.js +208 -0
- package/dist/stdio/serve.js.map +1 -0
- package/dist/transports/mcp/mount.d.ts.map +1 -1
- package/dist/transports/mcp/mount.js +204 -2
- package/dist/transports/mcp/mount.js.map +1 -1
- package/dist/transports/mcp/tool-names.d.ts +1 -1
- package/dist/transports/mcp/tool-names.d.ts.map +1 -1
- package/dist/transports/mcp/tool-permissions.d.ts +13 -0
- package/dist/transports/mcp/tool-permissions.d.ts.map +1 -1
- package/dist/transports/mcp/tool-permissions.js +14 -0
- package/dist/transports/mcp/tool-permissions.js.map +1 -1
- package/package.json +24 -7
|
@@ -0,0 +1,540 @@
|
|
|
1
|
+
import { DEFAULT_BRANCH, } from "@superblocksteam/shared";
|
|
2
|
+
import { gatewayDebug } from "../debug.js";
|
|
3
|
+
import { ServerHttpError } from "../server/client.js";
|
|
4
|
+
import { attachToBranch, ensurePrincipal, namingApplication, resolveApplicationId, } from "./lifecycle.js";
|
|
5
|
+
/** Resolves the caller and the app, then runs one branch action. A server refusal comes back as an error. */
|
|
6
|
+
async function onApplication({ ctx, applicationId, write, action, }) {
|
|
7
|
+
const principal = await ensurePrincipal(ctx);
|
|
8
|
+
if (principal.kind !== "ok") {
|
|
9
|
+
return principal;
|
|
10
|
+
}
|
|
11
|
+
const resolved = await resolveApplicationId(ctx, principal.value, applicationId, { unambiguous: write });
|
|
12
|
+
if (resolved.kind !== "ok") {
|
|
13
|
+
return resolved;
|
|
14
|
+
}
|
|
15
|
+
const app = { apiKey: principal.value.apiKey, applicationId: resolved.value };
|
|
16
|
+
try {
|
|
17
|
+
return namingApplication(app.applicationId, await action(app, principal.value));
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
const status = error instanceof ServerHttpError ? error.status : undefined;
|
|
21
|
+
gatewayDebug("branch action failed", {
|
|
22
|
+
"application.id": app.applicationId,
|
|
23
|
+
"http.status": status,
|
|
24
|
+
});
|
|
25
|
+
return {
|
|
26
|
+
kind: "error",
|
|
27
|
+
applicationId: app.applicationId,
|
|
28
|
+
code: branchErrorCode(status),
|
|
29
|
+
message: error instanceof Error ? error.message : String(error),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
// The code tells the agent whether to retry, ask the user, or stop.
|
|
34
|
+
const BRANCH_ERROR_CODES = {
|
|
35
|
+
403: "branch_action_forbidden",
|
|
36
|
+
404: "branch_not_found",
|
|
37
|
+
409: "branch_action_conflict",
|
|
38
|
+
};
|
|
39
|
+
function branchErrorCode(status) {
|
|
40
|
+
if (status === undefined)
|
|
41
|
+
return "branch_action_failed";
|
|
42
|
+
if (status >= 500)
|
|
43
|
+
return "downstream_unavailable";
|
|
44
|
+
return BRANCH_ERROR_CODES[status] ?? "branch_action_failed";
|
|
45
|
+
}
|
|
46
|
+
/** Teammates write commit messages, so the agent gets counts and paths, not their text. */
|
|
47
|
+
function pullSummary({ incoming, conflicts, ...update }) {
|
|
48
|
+
return {
|
|
49
|
+
...update,
|
|
50
|
+
incomingCount: incoming.length,
|
|
51
|
+
conflicts: conflicts.map(({ path }) => path),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
const readStatus = (ctx, app) => ctx.server.getBranchStatus({
|
|
55
|
+
...app,
|
|
56
|
+
...(ctx.signal ? { signal: ctx.signal } : {}),
|
|
57
|
+
});
|
|
58
|
+
// The server refuses branch actions off a user branch with a 404, which reads as a missing branch.
|
|
59
|
+
const notOnABranch = (action) => ({
|
|
60
|
+
kind: "error",
|
|
61
|
+
code: "not_on_a_branch",
|
|
62
|
+
message: `The user is not on a branch of their own, so there is nothing to ${action}. Call switch_branch or create_branch first.`,
|
|
63
|
+
});
|
|
64
|
+
/** Checkpoints and named commits, newest first, as the editor's history lists them. Drafts are unaccepted changes. */
|
|
65
|
+
const versionsOf = ({ autosaves, commits, }) => [
|
|
66
|
+
...autosaves.filter(({ autosaveType }) => autosaveType?.startsWith("savepoint")),
|
|
67
|
+
...commits,
|
|
68
|
+
].sort((a, b) => b.commitDate - a.commitDate);
|
|
69
|
+
const toVersion = ({ autosave, commitDate, commitId, commitMessage, committer, }) => ({
|
|
70
|
+
commitId,
|
|
71
|
+
message: commitMessage,
|
|
72
|
+
author: committer.name ?? committer.email,
|
|
73
|
+
at: new Date(commitDate).toISOString(),
|
|
74
|
+
kind: autosave ? "checkpoint" : "commit",
|
|
75
|
+
});
|
|
76
|
+
/** Superblocks gets the conflicted files in its own turn context, so the client hands the conflicts to it. */
|
|
77
|
+
function resolveWithSuperblocks(branch, after) {
|
|
78
|
+
return `The merge stopped on conflicts on branch "${branch}". Call edit_app with branch "${branch}" and ask Superblocks to resolve the merge conflicts. Do not resolve them yourself. ${after}`;
|
|
79
|
+
}
|
|
80
|
+
export function listBranches(ctx, input) {
|
|
81
|
+
return onApplication({
|
|
82
|
+
ctx,
|
|
83
|
+
applicationId: input.applicationId,
|
|
84
|
+
write: false,
|
|
85
|
+
action: async (app, { userId }) => {
|
|
86
|
+
const status = await readStatus(ctx, app);
|
|
87
|
+
return {
|
|
88
|
+
kind: "ok",
|
|
89
|
+
value: {
|
|
90
|
+
applicationId: app.applicationId,
|
|
91
|
+
branch: status.branch,
|
|
92
|
+
branchingEnabled: status.branchingEnabled,
|
|
93
|
+
mainHead: status.mainHead,
|
|
94
|
+
mode: status.mode,
|
|
95
|
+
branches: (status.branches ?? []).map((branch) => ({
|
|
96
|
+
...branch,
|
|
97
|
+
heldByTeammate: branch.holderId !== null && branch.holderId !== userId,
|
|
98
|
+
})),
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
export function getBranchStatus(ctx, input) {
|
|
105
|
+
return onApplication({
|
|
106
|
+
ctx,
|
|
107
|
+
applicationId: input.applicationId,
|
|
108
|
+
write: false,
|
|
109
|
+
action: async (app) => {
|
|
110
|
+
// Commit messages and author names are teammates' text, so the agent gets the ahead and behind counts.
|
|
111
|
+
const { branches: _branches, aheadCommits: _aheadCommits, behindCommits: _behindCommits, ...status } = await readStatus(ctx, app);
|
|
112
|
+
return {
|
|
113
|
+
kind: "ok",
|
|
114
|
+
value: {
|
|
115
|
+
applicationId: app.applicationId,
|
|
116
|
+
...status,
|
|
117
|
+
...(status.pendingMerge
|
|
118
|
+
? {
|
|
119
|
+
agentInstructions: resolveWithSuperblocks(status.branch, "The conflicted files are in conflictPaths."),
|
|
120
|
+
}
|
|
121
|
+
: {}),
|
|
122
|
+
},
|
|
123
|
+
};
|
|
124
|
+
},
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
export function enableBranching(ctx, input) {
|
|
128
|
+
return onApplication({
|
|
129
|
+
ctx,
|
|
130
|
+
applicationId: input.applicationId,
|
|
131
|
+
write: true,
|
|
132
|
+
action: async (app) => {
|
|
133
|
+
await ctx.server.enableBranching({ ...app, name: input.name });
|
|
134
|
+
const { branch } = await readStatus(ctx, app);
|
|
135
|
+
return {
|
|
136
|
+
kind: "ok",
|
|
137
|
+
value: {
|
|
138
|
+
applicationId: app.applicationId,
|
|
139
|
+
created: input.name,
|
|
140
|
+
branch,
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
},
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
export function createBranch(ctx, input) {
|
|
147
|
+
return onApplication({
|
|
148
|
+
ctx,
|
|
149
|
+
applicationId: input.applicationId,
|
|
150
|
+
write: true,
|
|
151
|
+
action: async (app) => {
|
|
152
|
+
await ctx.server.createBranch({
|
|
153
|
+
...app,
|
|
154
|
+
base: input.base,
|
|
155
|
+
name: input.name,
|
|
156
|
+
});
|
|
157
|
+
const { branch } = await readStatus(ctx, app);
|
|
158
|
+
return {
|
|
159
|
+
kind: "ok",
|
|
160
|
+
value: {
|
|
161
|
+
applicationId: app.applicationId,
|
|
162
|
+
created: input.name,
|
|
163
|
+
upstream: input.base,
|
|
164
|
+
branch,
|
|
165
|
+
},
|
|
166
|
+
};
|
|
167
|
+
},
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
export function pullBranch(ctx, input) {
|
|
171
|
+
return onApplication({
|
|
172
|
+
ctx,
|
|
173
|
+
applicationId: input.applicationId,
|
|
174
|
+
write: true,
|
|
175
|
+
action: async (app) => {
|
|
176
|
+
const { branch, mode } = await readStatus(ctx, app);
|
|
177
|
+
if (mode !== "user-branch") {
|
|
178
|
+
return notOnABranch("pull into");
|
|
179
|
+
}
|
|
180
|
+
const result = await ctx.server.updateBranch({
|
|
181
|
+
...app,
|
|
182
|
+
...(input.target ? { target: input.target } : {}),
|
|
183
|
+
});
|
|
184
|
+
return {
|
|
185
|
+
kind: "ok",
|
|
186
|
+
value: {
|
|
187
|
+
applicationId: app.applicationId,
|
|
188
|
+
branch,
|
|
189
|
+
...pullSummary(result),
|
|
190
|
+
...(result.outcome === "conflict"
|
|
191
|
+
? {
|
|
192
|
+
agentInstructions: resolveWithSuperblocks(branch, "Then call get_branch_status to check that pendingMerge is false."),
|
|
193
|
+
}
|
|
194
|
+
: {}),
|
|
195
|
+
},
|
|
196
|
+
};
|
|
197
|
+
},
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
export function mergeBranch(ctx, input) {
|
|
201
|
+
return onApplication({
|
|
202
|
+
ctx,
|
|
203
|
+
applicationId: input.applicationId,
|
|
204
|
+
write: true,
|
|
205
|
+
action: async (app) => {
|
|
206
|
+
const status = await readStatus(ctx, app);
|
|
207
|
+
if (status.mode !== "user-branch") {
|
|
208
|
+
return notOnABranch("merge");
|
|
209
|
+
}
|
|
210
|
+
const source = input.source ?? status.branch;
|
|
211
|
+
const other = source === status.branch
|
|
212
|
+
? undefined
|
|
213
|
+
: status.branches?.find(({ name }) => name === source);
|
|
214
|
+
if (source !== status.branch && !other) {
|
|
215
|
+
return {
|
|
216
|
+
kind: "error",
|
|
217
|
+
code: "branch_not_found",
|
|
218
|
+
message: `There is no branch named "${source}". Call list_branches for the names.`,
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
const target = input.target ?? (other ?? status).upstream;
|
|
222
|
+
const merge = {
|
|
223
|
+
applicationId: app.applicationId,
|
|
224
|
+
branch: source,
|
|
225
|
+
target,
|
|
226
|
+
};
|
|
227
|
+
// Only an explicit target of main means the user confirmed the merge into main.
|
|
228
|
+
if (input.target === undefined &&
|
|
229
|
+
(target === null || target === DEFAULT_BRANCH)) {
|
|
230
|
+
return {
|
|
231
|
+
kind: "ok",
|
|
232
|
+
value: {
|
|
233
|
+
...merge,
|
|
234
|
+
target: DEFAULT_BRANCH,
|
|
235
|
+
outcome: "confirmation-required",
|
|
236
|
+
agentInstructions: `The upstream of "${source}" is main. Ask the user to confirm the merge into main, then call merge_branch again with target "main".`,
|
|
237
|
+
},
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
const result = await ctx.server.landBranch({
|
|
241
|
+
...app,
|
|
242
|
+
retryFailedMigrations: false,
|
|
243
|
+
source,
|
|
244
|
+
...(target ? { target } : {}),
|
|
245
|
+
});
|
|
246
|
+
const { update, ...land } = result;
|
|
247
|
+
const pulled = update && pullSummary(update);
|
|
248
|
+
const value = {
|
|
249
|
+
...merge,
|
|
250
|
+
...land,
|
|
251
|
+
...(pulled ? { update: pulled } : {}),
|
|
252
|
+
conflicts: pulled?.conflicts ?? [],
|
|
253
|
+
};
|
|
254
|
+
// Read before the switch narrows it away: a newer server can send an outcome this build has no case for.
|
|
255
|
+
const outcome = result.outcome;
|
|
256
|
+
switch (result.outcome) {
|
|
257
|
+
case "landed":
|
|
258
|
+
case "up-to-date":
|
|
259
|
+
return { kind: "ok", value };
|
|
260
|
+
case "conflict":
|
|
261
|
+
return {
|
|
262
|
+
kind: "ok",
|
|
263
|
+
value: {
|
|
264
|
+
...value,
|
|
265
|
+
agentInstructions: resolveWithSuperblocks(source, "The merge finishes by itself when the resolution is saved. Then call get_branch_status, and if the branch is still ahead, call merge_branch again."),
|
|
266
|
+
},
|
|
267
|
+
};
|
|
268
|
+
case "migrating":
|
|
269
|
+
case "contended":
|
|
270
|
+
return {
|
|
271
|
+
kind: "ok",
|
|
272
|
+
value: {
|
|
273
|
+
...value,
|
|
274
|
+
agentInstructions: "The merge did not finish yet. Call merge_branch again with the same source and target in a minute.",
|
|
275
|
+
},
|
|
276
|
+
};
|
|
277
|
+
case "migration-failed":
|
|
278
|
+
return {
|
|
279
|
+
kind: "error",
|
|
280
|
+
code: "merge_failed",
|
|
281
|
+
message: `The app database could not apply this branch's migrations: ${result.migrationError ?? "unknown error"}`,
|
|
282
|
+
};
|
|
283
|
+
default:
|
|
284
|
+
return {
|
|
285
|
+
kind: "error",
|
|
286
|
+
code: "merge_failed",
|
|
287
|
+
message: `The merge ended with "${outcome}", which this Platform MCP does not know how to finish. Ask the user to merge from the Superblocks editor.`,
|
|
288
|
+
pendingAction: "open_editor",
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
},
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
export function deleteBranch(ctx, input) {
|
|
295
|
+
return onApplication({
|
|
296
|
+
ctx,
|
|
297
|
+
applicationId: input.applicationId,
|
|
298
|
+
write: true,
|
|
299
|
+
action: async (app) => {
|
|
300
|
+
await ctx.server.deleteBranch({
|
|
301
|
+
...app,
|
|
302
|
+
force: input.force,
|
|
303
|
+
name: input.name,
|
|
304
|
+
});
|
|
305
|
+
// The held live-edit session belongs to the deleted branch.
|
|
306
|
+
if (ctx.sessionPeer.heldContext(app.applicationId)?.branch === input.name) {
|
|
307
|
+
ctx.sessionPeer.release(app.applicationId);
|
|
308
|
+
}
|
|
309
|
+
const { branch } = await readStatus(ctx, app);
|
|
310
|
+
return {
|
|
311
|
+
kind: "ok",
|
|
312
|
+
value: {
|
|
313
|
+
applicationId: app.applicationId,
|
|
314
|
+
deleted: input.name,
|
|
315
|
+
branch,
|
|
316
|
+
},
|
|
317
|
+
};
|
|
318
|
+
},
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
export function switchBranch(ctx, input) {
|
|
322
|
+
return onApplication({
|
|
323
|
+
ctx,
|
|
324
|
+
applicationId: input.applicationId,
|
|
325
|
+
write: true,
|
|
326
|
+
action: async (app, principal) => {
|
|
327
|
+
if (input.branch === DEFAULT_BRANCH) {
|
|
328
|
+
return {
|
|
329
|
+
kind: "error",
|
|
330
|
+
code: "main_is_view_only",
|
|
331
|
+
message: "main is view only and changes reach it through merge_branch. Switch to a branch, or call create_branch to make one.",
|
|
332
|
+
};
|
|
333
|
+
}
|
|
334
|
+
const before = await readStatus(ctx, app);
|
|
335
|
+
if (!before.branches?.some(({ name }) => name === input.branch)) {
|
|
336
|
+
return {
|
|
337
|
+
kind: "error",
|
|
338
|
+
code: "branch_not_found",
|
|
339
|
+
message: `There is no branch named "${input.branch}". Call list_branches for the names.`,
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
const attached = await attachToBranch({
|
|
343
|
+
ctx,
|
|
344
|
+
principal,
|
|
345
|
+
applicationId: app.applicationId,
|
|
346
|
+
branch: input.branch,
|
|
347
|
+
});
|
|
348
|
+
if (attached.kind !== "ok") {
|
|
349
|
+
return attached;
|
|
350
|
+
}
|
|
351
|
+
const { branch } = await readStatus(ctx, app);
|
|
352
|
+
if (branch !== input.branch) {
|
|
353
|
+
return {
|
|
354
|
+
kind: "error",
|
|
355
|
+
code: "switch_failed",
|
|
356
|
+
message: `The server kept "${branch}" as the current branch. Call switch_branch again.`,
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
// The user's open editor follows the switch at its next branch status check.
|
|
360
|
+
return {
|
|
361
|
+
kind: "ok",
|
|
362
|
+
value: { applicationId: app.applicationId, branch },
|
|
363
|
+
};
|
|
364
|
+
},
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
const COMMITS_SHOWN = 10;
|
|
368
|
+
export function compareBranches(ctx, input) {
|
|
369
|
+
return onApplication({
|
|
370
|
+
ctx,
|
|
371
|
+
applicationId: input.applicationId,
|
|
372
|
+
write: false,
|
|
373
|
+
action: async (app) => {
|
|
374
|
+
const status = await readStatus(ctx, app);
|
|
375
|
+
if (status.mode !== "user-branch") {
|
|
376
|
+
return notOnABranch("compare");
|
|
377
|
+
}
|
|
378
|
+
const other = input.other ?? status.upstream ?? DEFAULT_BRANCH;
|
|
379
|
+
const known = other === DEFAULT_BRANCH ||
|
|
380
|
+
status.branches?.some(({ name }) => name === other);
|
|
381
|
+
if (other === status.branch || !known) {
|
|
382
|
+
return {
|
|
383
|
+
kind: "error",
|
|
384
|
+
code: "branch_not_found",
|
|
385
|
+
message: `"${other}" is not another branch of this app. Call list_branches for the names.`,
|
|
386
|
+
};
|
|
387
|
+
}
|
|
388
|
+
const versionsOn = async (branch) => versionsOf(await ctx.server.listCommits({ ...app, branch }));
|
|
389
|
+
const [ours, theirs] = await Promise.all([
|
|
390
|
+
versionsOn(status.branch),
|
|
391
|
+
versionsOn(other),
|
|
392
|
+
]);
|
|
393
|
+
const ourIds = new Set(ours.map(({ commitId }) => commitId));
|
|
394
|
+
const theirIds = new Set(theirs.map(({ commitId }) => commitId));
|
|
395
|
+
// ponytail: each list is the newest 200 versions; a server route that compares two branches lifts this limit.
|
|
396
|
+
const base = ours.find(({ commitId }) => theirIds.has(commitId));
|
|
397
|
+
if (!base) {
|
|
398
|
+
return {
|
|
399
|
+
kind: "error",
|
|
400
|
+
code: "compare_unavailable",
|
|
401
|
+
message: `"${status.branch}" and "${other}" share no version in their recent history. Ask the user to compare them in the Superblocks editor.`,
|
|
402
|
+
pendingAction: "open_editor",
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
// The changes from the shared version to the newest version only one side has.
|
|
406
|
+
const oneWay = async (versions, skip) => {
|
|
407
|
+
const only = versions.filter(({ commitId }) => !skip.has(commitId));
|
|
408
|
+
const summary = {
|
|
409
|
+
count: only.length,
|
|
410
|
+
commits: only.slice(0, COMMITS_SHOWN).map(toVersion),
|
|
411
|
+
};
|
|
412
|
+
const [head] = only;
|
|
413
|
+
if (!head) {
|
|
414
|
+
return { ...summary, files: [] };
|
|
415
|
+
}
|
|
416
|
+
const { changes } = await ctx.server.compareCommits({
|
|
417
|
+
...app,
|
|
418
|
+
branch: status.branch,
|
|
419
|
+
fromCommit: base.commitId,
|
|
420
|
+
toCommit: head.commitId,
|
|
421
|
+
});
|
|
422
|
+
return {
|
|
423
|
+
...summary,
|
|
424
|
+
files: changes.map(({ action, entityName }) => ({
|
|
425
|
+
action,
|
|
426
|
+
path: entityName,
|
|
427
|
+
})),
|
|
428
|
+
};
|
|
429
|
+
};
|
|
430
|
+
const [incoming, outgoing] = await Promise.all([
|
|
431
|
+
oneWay(theirs, ourIds),
|
|
432
|
+
oneWay(ours, theirIds),
|
|
433
|
+
]);
|
|
434
|
+
return {
|
|
435
|
+
kind: "ok",
|
|
436
|
+
value: {
|
|
437
|
+
applicationId: app.applicationId,
|
|
438
|
+
branch: status.branch,
|
|
439
|
+
other,
|
|
440
|
+
hasUncommittedChanges: status.hasUncommittedChanges,
|
|
441
|
+
incoming,
|
|
442
|
+
outgoing,
|
|
443
|
+
},
|
|
444
|
+
};
|
|
445
|
+
},
|
|
446
|
+
});
|
|
447
|
+
}
|
|
448
|
+
export function getCurrentPublish(ctx, input) {
|
|
449
|
+
return onApplication({
|
|
450
|
+
ctx,
|
|
451
|
+
applicationId: input.applicationId,
|
|
452
|
+
write: false,
|
|
453
|
+
action: async (app, { userId }) => {
|
|
454
|
+
const { active, last } = await ctx.server.getCurrentPublish(app);
|
|
455
|
+
const describe = (publish) => ({
|
|
456
|
+
commitId: publish.commitId,
|
|
457
|
+
branch: publish.branch,
|
|
458
|
+
message: publish.commitMessage,
|
|
459
|
+
by: publish.userName,
|
|
460
|
+
byTheUser: publish.userId === userId,
|
|
461
|
+
at: publish.at,
|
|
462
|
+
});
|
|
463
|
+
return {
|
|
464
|
+
kind: "ok",
|
|
465
|
+
value: {
|
|
466
|
+
applicationId: app.applicationId,
|
|
467
|
+
active: active && { ...describe(active), status: active.status },
|
|
468
|
+
last: last && { ...describe(last), isLive: last.isLive },
|
|
469
|
+
},
|
|
470
|
+
};
|
|
471
|
+
},
|
|
472
|
+
});
|
|
473
|
+
}
|
|
474
|
+
export function listVersions(ctx, input) {
|
|
475
|
+
return onApplication({
|
|
476
|
+
ctx,
|
|
477
|
+
applicationId: input.applicationId,
|
|
478
|
+
write: false,
|
|
479
|
+
action: async (app) => {
|
|
480
|
+
const { branch } = await readStatus(ctx, app);
|
|
481
|
+
const versions = versionsOf(await ctx.server.listCommits({ ...app, branch, limit: input.limit }));
|
|
482
|
+
return {
|
|
483
|
+
kind: "ok",
|
|
484
|
+
value: {
|
|
485
|
+
applicationId: app.applicationId,
|
|
486
|
+
branch,
|
|
487
|
+
versions: versions.map(toVersion),
|
|
488
|
+
},
|
|
489
|
+
};
|
|
490
|
+
},
|
|
491
|
+
});
|
|
492
|
+
}
|
|
493
|
+
export function restoreVersion(ctx, input) {
|
|
494
|
+
return onApplication({
|
|
495
|
+
ctx,
|
|
496
|
+
applicationId: input.applicationId,
|
|
497
|
+
write: true,
|
|
498
|
+
action: async (app, principal) => {
|
|
499
|
+
const { branch, mode } = await readStatus(ctx, app);
|
|
500
|
+
// Off a branch, the app's sandbox does not reload the restored files by itself; the editor restarts it.
|
|
501
|
+
if (mode !== "user-branch") {
|
|
502
|
+
return {
|
|
503
|
+
kind: "error",
|
|
504
|
+
code: "restore_needs_branch",
|
|
505
|
+
message: "restore_version restores a version on the user's own branch, and main is updated by merge_branch only. Call switch_branch first. If branching is off, ask the user to restore the version from the Superblocks editor's history.",
|
|
506
|
+
pendingAction: "open_editor",
|
|
507
|
+
};
|
|
508
|
+
}
|
|
509
|
+
const turn = ctx.sessionPeer.turnState({
|
|
510
|
+
applicationId: app.applicationId,
|
|
511
|
+
branch,
|
|
512
|
+
organizationId: principal.organizationId,
|
|
513
|
+
userId: principal.userId,
|
|
514
|
+
});
|
|
515
|
+
if (turn?.phase === "running") {
|
|
516
|
+
return {
|
|
517
|
+
kind: "error",
|
|
518
|
+
code: "turn_running",
|
|
519
|
+
message: `Superblocks is still changing branch "${branch}". Wait for check_app_progress to finish, then call restore_version again.`,
|
|
520
|
+
};
|
|
521
|
+
}
|
|
522
|
+
const { newCommitId } = await ctx.server.resetBranch({
|
|
523
|
+
...app,
|
|
524
|
+
branch,
|
|
525
|
+
commitId: input.commitId,
|
|
526
|
+
});
|
|
527
|
+
return {
|
|
528
|
+
kind: "ok",
|
|
529
|
+
value: {
|
|
530
|
+
applicationId: app.applicationId,
|
|
531
|
+
branch,
|
|
532
|
+
restored: input.commitId,
|
|
533
|
+
...(newCommitId ? { newCommitId } : {}),
|
|
534
|
+
agentInstructions: "The branch now has the restored version, and the app reloads it within about 10 seconds.",
|
|
535
|
+
},
|
|
536
|
+
};
|
|
537
|
+
},
|
|
538
|
+
});
|
|
539
|
+
}
|
|
540
|
+
//# sourceMappingURL=branching.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branching.js","sourceRoot":"","sources":["../../src/capabilities/branching.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,GAGf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,cAAc,EAEd,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAMxB,6GAA6G;AAC7G,KAAK,UAAU,aAAa,CAAI,EAC9B,GAAG,EACH,aAAa,EACb,KAAK,EACL,MAAM,GASP;IACC,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,GAAG,EACH,SAAS,CAAC,KAAK,EACf,aAAa,EACb,EAAE,WAAW,EAAE,KAAK,EAAE,CACvB,CAAC;IACF,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC9E,IAAI,CAAC;QACH,OAAO,iBAAiB,CACtB,GAAG,CAAC,aAAa,EACjB,MAAM,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CACnC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,YAAY,CAAC,sBAAsB,EAAE;YACnC,gBAAgB,EAAE,GAAG,CAAC,aAAa;YACnC,aAAa,EAAE,MAAM;SACtB,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAChE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,oEAAoE;AACpE,MAAM,kBAAkB,GAA2B;IACjD,GAAG,EAAE,yBAAyB;IAC9B,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,wBAAwB;CAC9B,CAAC;AAEF,SAAS,eAAe,CAAC,MAA0B;IACjD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,sBAAsB,CAAC;IACxD,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,wBAAwB,CAAC;IAEnD,OAAO,kBAAkB,CAAC,MAAM,CAAC,IAAI,sBAAsB,CAAC;AAC9D,CAAC;AAED,2FAA2F;AAC3F,SAAS,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,EAAsB;IACzE,OAAO;QACL,GAAG,MAAM;QACT,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAsB,EAAE,GAAQ,EAAE,EAAE,CACtD,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC;IACzB,GAAG,GAAG;IACN,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CAC9C,CAAC,CAAC;AAEL,mGAAmG;AACnG,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,EAAE,OAAgB;IACtB,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,oEAAoE,MAAM,8CAA8C;CAClI,CAAC,CAAC;AAEH,sHAAsH;AACtH,MAAM,UAAU,GAAG,CAAC,EAClB,SAAS,EACT,OAAO,GAC2B,EAAE,EAAE,CACtC;IACE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CACvC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC,CACtC;IACD,GAAG,OAAO;CACX,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;AAEhD,MAAM,SAAS,GAAG,CAAC,EACjB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,GACC,EAAE,EAAE,CAAC,CAAC;IAChB,QAAQ;IACR,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK;IACzC,EAAE,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;IACtC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;CACzC,CAAC,CAAC;AAEH,8GAA8G;AAC9G,SAAS,sBAAsB,CAAC,MAAc,EAAE,KAAa;IAC3D,OAAO,6CAA6C,MAAM,iCAAiC,MAAM,uFAAuF,KAAK,EAAE,CAAC;AAClM,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAAsB,EACtB,KAAiC;IAEjC,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAChC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBACjD,GAAG,MAAM;wBACT,cAAc,EACZ,MAAM,CAAC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM;qBACzD,CAAC,CAAC;iBACJ;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,GAAsB,EACtB,KAAiC;IAEjC,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,uGAAuG;YACvG,MAAM,EACJ,QAAQ,EAAE,SAAS,EACnB,YAAY,EAAE,aAAa,EAC3B,aAAa,EAAE,cAAc,EAC7B,GAAG,MAAM,EACV,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC/B,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,GAAG,MAAM;oBACT,GAAG,CAAC,MAAM,CAAC,YAAY;wBACrB,CAAC,CAAC;4BACE,iBAAiB,EAAE,sBAAsB,CACvC,MAAM,CAAC,MAAM,EACb,4CAA4C,CAC7C;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,GAAsB,EACtB,KAA+C;IAE/C,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAE/D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,OAAO,EAAE,KAAK,CAAC,IAAI;oBACnB,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAAsB,EACtB,KAA6D;IAE7D,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC5B,GAAG,GAAG;gBACN,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;YAEH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,OAAO,EAAE,KAAK,CAAC,IAAI;oBACnB,QAAQ,EAAE,KAAK,CAAC,IAAI;oBACpB,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,GAAsB,EACtB,KAAkD;IAElD,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC3B,OAAO,YAAY,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC3C,GAAG,GAAG;gBACN,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM;oBACN,GAAG,WAAW,CAAC,MAAM,CAAC;oBACtB,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,UAAU;wBAC/B,CAAC,CAAC;4BACE,iBAAiB,EAAE,sBAAsB,CACvC,MAAM,EACN,kEAAkE,CACnE;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,GAAsB,EACtB,KAAmE;IAEnE,OAAO,aAAa,CAA0B;QAC5C,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAClC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;YAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YAC7C,MAAM,KAAK,GACT,MAAM,KAAK,MAAM,CAAC,MAAM;gBACtB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC3D,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACvC,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,6BAA6B,MAAM,sCAAsC;iBACnF,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC;YAC1D,MAAM,KAAK,GAAG;gBACZ,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,MAAM,EAAE,MAAM;gBACd,MAAM;aACP,CAAC;YACF,gFAAgF;YAChF,IACE,KAAK,CAAC,MAAM,KAAK,SAAS;gBAC1B,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,cAAc,CAAC,EAC9C,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAa;oBACnB,KAAK,EAAE;wBACL,GAAG,KAAK;wBACR,MAAM,EAAE,cAAc;wBACtB,OAAO,EAAE,uBAAgC;wBACzC,iBAAiB,EAAE,oBAAoB,MAAM,0GAA0G;qBACxJ;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;gBACzC,GAAG,GAAG;gBACN,qBAAqB,EAAE,KAAK;gBAC5B,MAAM;gBACN,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B,CAAC,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG;gBACZ,GAAG,KAAK;gBACR,GAAG,IAAI;gBACP,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,SAAS,EAAE,MAAM,EAAE,SAAS,IAAI,EAAE;aACnC,CAAC;YAEF,yGAAyG;YACzG,MAAM,OAAO,GAAW,MAAM,CAAC,OAAO,CAAC;YACvC,QAAQ,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvB,KAAK,QAAQ,CAAC;gBACd,KAAK,YAAY;oBACf,OAAO,EAAE,IAAI,EAAE,IAAa,EAAE,KAAK,EAAE,CAAC;gBACxC,KAAK,UAAU;oBACb,OAAO;wBACL,IAAI,EAAE,IAAa;wBACnB,KAAK,EAAE;4BACL,GAAG,KAAK;4BACR,iBAAiB,EAAE,sBAAsB,CACvC,MAAM,EACN,oJAAoJ,CACrJ;yBACF;qBACF,CAAC;gBACJ,KAAK,WAAW,CAAC;gBACjB,KAAK,WAAW;oBACd,OAAO;wBACL,IAAI,EAAE,IAAa;wBACnB,KAAK,EAAE;4BACL,GAAG,KAAK;4BACR,iBAAiB,EACf,oGAAoG;yBACvG;qBACF,CAAC;gBACJ,KAAK,kBAAkB;oBACrB,OAAO;wBACL,IAAI,EAAE,OAAgB;wBACtB,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,8DACP,MAAM,CAAC,cAAc,IAAI,eAC3B,EAAE;qBACH,CAAC;gBACJ;oBACE,OAAO;wBACL,IAAI,EAAE,OAAgB;wBACtB,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,yBAAyB,OAAO,4GAA4G;wBACrJ,aAAa,EAAE,aAAsB;qBACtC,CAAC;YACN,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAAsB,EACtB,KAA+D;IAE/D,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC5B,GAAG,GAAG;gBACN,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;YACH,4DAA4D;YAC5D,IACE,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,IAAI,EACrE,CAAC;gBACD,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,OAAO,EAAE,KAAK,CAAC,IAAI;oBACnB,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAAsB,EACtB,KAAiD;IAEjD,OAAO,aAAa,CAA0B;QAC5C,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;gBACpC,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EACL,qHAAqH;iBACxH,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChE,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,6BAA6B,KAAK,CAAC,MAAM,sCAAsC;iBACzF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;gBACpC,GAAG;gBACH,SAAS;gBACT,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC3B,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC5B,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,oBAAoB,MAAM,oDAAoD;iBACxF,CAAC;YACJ,CAAC;YAED,6EAA6E;YAC7E,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE;aACpD,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,UAAU,eAAe,CAC7B,GAAsB,EACtB,KAAiD;IAEjD,OAAO,aAAa,CAA0B;QAC5C,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAClC,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,IAAI,cAAc,CAAC;YAC/D,MAAM,KAAK,GACT,KAAK,KAAK,cAAc;gBACxB,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YACtD,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACtC,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,IAAI,KAAK,wEAAwE;iBAC3F,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE,CAC1C,UAAU,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gBACzB,UAAU,CAAC,KAAK,CAAC;aAClB,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEjE,8GAA8G;YAC9G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,qBAAqB;oBAC3B,OAAO,EAAE,IAAI,MAAM,CAAC,MAAM,UAAU,KAAK,qGAAqG;oBAC9I,aAAa,EAAE,aAAsB;iBACtC,CAAC;YACJ,CAAC;YAED,+EAA+E;YAC/E,MAAM,MAAM,GAAG,KAAK,EAAE,QAAqB,EAAE,IAAiB,EAAE,EAAE;gBAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpE,MAAM,OAAO,GAAG;oBACd,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;iBACrD,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBACnC,CAAC;gBAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC;oBAClD,GAAG,GAAG;oBACN,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,UAAU,EAAE,IAAI,CAAC,QAAQ;oBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAC;gBACH,OAAO;oBACL,GAAG,OAAO;oBACV,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC9C,MAAM;wBACN,IAAI,EAAE,UAAU;qBACjB,CAAC,CAAC;iBACJ,CAAC;YACJ,CAAC,CAAC;YACF,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC7C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;gBACtB,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;aACvB,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,KAAK;oBACL,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;oBACnD,QAAQ;oBACR,QAAQ;iBACT;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,GAAsB,EACtB,KAAiC;IAEjC,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAChC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,CAAC,OAAuB,EAAE,EAAE,CAAC,CAAC;gBAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,aAAa;gBAC9B,EAAE,EAAE,OAAO,CAAC,QAAQ;gBACpB,SAAS,EAAE,OAAO,CAAC,MAAM,KAAK,MAAM;gBACpC,EAAE,EAAE,OAAO,CAAC,EAAE;aACf,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM,EAAE,MAAM,IAAI,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;oBAChE,IAAI,EAAE,IAAI,IAAI,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;iBACzD;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,GAAsB,EACtB,KAAgD;IAEhD,OAAO,aAAa,CAAC;QACnB,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,UAAU,CACzB,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CACrE,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM;oBACN,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;iBAClC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,GAAsB,EACtB,KAAmD;IAEnD,OAAO,aAAa,CAA0B;QAC5C,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YAC/B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACpD,wGAAwG;YACxG,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EACL,kOAAkO;oBACpO,aAAa,EAAE,aAAsB;iBACtC,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC;gBACrC,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,MAAM;gBACN,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,MAAM,EAAE,SAAS,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO;oBACL,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,yCAAyC,MAAM,4EAA4E;iBACrI,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;gBACnD,GAAG,GAAG;gBACN,MAAM;gBACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;YACH,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,KAAK,EAAE;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,MAAM;oBACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvC,iBAAiB,EACf,0FAA0F;iBAC7F;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -40,6 +40,13 @@ export type CapabilityContext = {
|
|
|
40
40
|
signal?: AbortSignal;
|
|
41
41
|
stepUpTurns: StepUpTurnStore;
|
|
42
42
|
};
|
|
43
|
+
/** Holds a live edit on `branch`, which makes it the caller's current branch on the server. */
|
|
44
|
+
export declare function attachToBranch({ ctx, principal, applicationId, branch, }: {
|
|
45
|
+
ctx: CapabilityContext;
|
|
46
|
+
principal: ResolvedPrincipal;
|
|
47
|
+
applicationId: string;
|
|
48
|
+
branch: string;
|
|
49
|
+
}): Promise<CapabilityResult<void>>;
|
|
43
50
|
/**
|
|
44
51
|
* Resolves the Superblocks user behind the CLI session this Gateway was
|
|
45
52
|
* started with.
|
|
@@ -58,6 +65,18 @@ export declare function resolveApplicationId(ctx: CapabilityContext, principal:
|
|
|
58
65
|
options?: {
|
|
59
66
|
unambiguous?: boolean;
|
|
60
67
|
}): Promise<CapabilityResult<string>>;
|
|
68
|
+
/**
|
|
69
|
+
* Names the application a failed call was working on.
|
|
70
|
+
*
|
|
71
|
+
* Every failure past the point where an application exists has to carry its id,
|
|
72
|
+
* because that id is the caller's only handle on a resource the call already
|
|
73
|
+
* persisted. `start_app` creates the row before it reaches live edit, so a
|
|
74
|
+
* connect that times out leaves an app the caller owns and never saw; and every
|
|
75
|
+
* app-scoped entry point may have resolved the id from the recent-app default
|
|
76
|
+
* rather than from its arguments, so the failure is the one place a caller can
|
|
77
|
+
* learn which app it actually drove.
|
|
78
|
+
*/
|
|
79
|
+
export declare function namingApplication<T>(applicationId: string, result: CapabilityResult<T>): CapabilityResult<T>;
|
|
61
80
|
/**
|
|
62
81
|
* Settles a user's plan approval against what became of the prompt it
|
|
63
82
|
* approved.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/capabilities/lifecycle.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,kCAAkC,CAAC;AAM1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAML,KAAK,WAAW,EAIjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAEV,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAGV,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EAEzB,YAAY,EACZ,aAAa,EAEb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EAEZ,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,EACT,aAAa,EACb,eAAe,EACf,gBAAgB,EAEhB,iBAAiB,EAEjB,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,4EAA4E;IAC5E,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7D,SAAS,EAAE,SAAS,CAAC;IACrB,uDAAuD;IACvD,QAAQ,EAAE,QAAQ,CAAC;IACnB,+EAA+E;IAC/E,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,cAAc,CAAC;IAC3B;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD;;;OAGG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,MAAM,EAAE,uBAAuB,CAAC;IAChC,WAAW,EAAE,WAAW,CAAC;IACzB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,eAAe,CAAC;CAC9B,CAAC;
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/capabilities/lifecycle.ts"],"names":[],"mappings":"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"}
|