@bevorai/sdk 0.2.0-rc4 → 0.2.0-rc5

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.
@@ -1,6 +1,7 @@
1
1
  import type { GraphCallNode, GraphResolvedStorageAccess } from "../types/graph-data.js";
2
- import type { EdgeType } from "../types/literals.js";
2
+ import type { EdgeType, LowLevelKind } from "../types/literals.js";
3
3
  import type { Graph } from "./graph.js";
4
+ export type Detail = "full" | "dedup" | "summary";
4
5
  export declare class CallNode {
5
6
  #private;
6
7
  nodeId: string | null;
@@ -10,20 +11,37 @@ export declare class CallNode {
10
11
  edgeId: string | null;
11
12
  edgeType: EdgeType | null;
12
13
  lowLevelName: string | null;
14
+ lowLevelKind: LowLevelKind | null;
13
15
  targetEffectId: string | null;
14
- isConditional: boolean;
15
- isArg: boolean;
16
16
  isCyclic: boolean;
17
17
  srcFieldNames: string[];
18
18
  dstFieldNames: string[];
19
19
  resolvedBindings: GraphResolvedStorageAccess[];
20
20
  children: CallNode[];
21
21
  constructor(init?: Partial<CallNode>);
22
+ get isArg(): boolean;
23
+ get args(): CallNode[];
24
+ get body(): CallNode[];
22
25
  /** A shallow copy, like `dataclasses.replace`. */
23
26
  clone(overrides?: Partial<CallNode>): CallNode;
27
+ /** Every node in this node's body, at any depth, each once: bodies can be shared. */
28
+ bodyNodes(): Generator<CallNode>;
29
+ /** Whether nothing in this node's body writes storage or leaves the contract. */
30
+ isPure(): boolean;
31
+ /** This node's body as its effects: storage touched, and calls leaving the contract. */
32
+ summary(): string[];
24
33
  toSchema(): GraphCallNode[];
25
34
  static fromSchema(nodes: GraphCallNode[]): CallNode;
26
- toText(): string;
35
+ displayName(): string;
36
+ label(): string;
37
+ /** `[edge phrase, label plus field details]`: renderers style the two parts separately. */
38
+ lineParts(parent: CallNode | null): [string, string];
39
+ line(parent: CallNode | null): string;
40
+ /**
41
+ * The chain as indented text. A collapsed call keeps its line and arguments, and shows its
42
+ * body as a summary of effects. Calls to `expand` (node ids) are never collapsed.
43
+ */
44
+ toText(detail?: Detail, expand?: Iterable<string>): string;
27
45
  static build(graph: Graph, nodeId: string): CallNode;
28
46
  }
29
47
  //# sourceMappingURL=call-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"call-node.d.ts","sourceRoot":"","sources":["../../src/graph/call-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEX,aAAa,EAEb,0BAA0B,EAI1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAkKxC,qBAAa,QAAQ;;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IACrC,aAAa,UAAS;IACtB,KAAK,UAAS;IACd,QAAQ,UAAS;IACjB,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,gBAAgB,EAAE,0BAA0B,EAAE,CAAM;IACpD,QAAQ,EAAE,QAAQ,EAAE,CAAM;IAE1B,YAAY,IAAI,GAAE,OAAO,CAAC,QAAQ,CAAM,EAEvC;IAED,kDAAkD;IAClD,KAAK,CAAC,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAM,GAAG,QAAQ,CAEjD;IAED,QAAQ,IAAI,aAAa,EAAE,CAsC1B;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,QAAQ,CAwClD;IAkCD,MAAM,IAAI,MAAM,CAwBf;IAkBD,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAiInD;CACD"}
1
+ {"version":3,"file":"call-node.d.ts","sourceRoot":"","sources":["../../src/graph/call-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEX,aAAa,EAEb,0BAA0B,EAI1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,QAAQ,EAAY,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AA+CxC,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAoMlD,qBAAa,QAAQ;;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAQ;IACzC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IACrC,QAAQ,UAAS;IACjB,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,gBAAgB,EAAE,0BAA0B,EAAE,CAAM;IACpD,QAAQ,EAAE,QAAQ,EAAE,CAAM;IAE1B,YAAY,IAAI,GAAE,OAAO,CAAC,QAAQ,CAAM,EAEvC;IAED,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,IAAI,IAAI,IAAI,QAAQ,EAAE,CAErB;IAED,IAAI,IAAI,IAAI,QAAQ,EAAE,CAErB;IAED,kDAAkD;IAClD,KAAK,CAAC,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAM,GAAG,QAAQ,CAkBjD;IAED,qFAAqF;IACpF,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAC,CAUhC;IAED,iFAAiF;IACjF,MAAM,IAAI,OAAO,CAUhB;IAED,wFAAwF;IACxF,OAAO,IAAI,MAAM,EAAE,CAkBlB;IAED,QAAQ,IAAI,aAAa,EAAE,CAsC1B;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,QAAQ,CAuClD;IAED,WAAW,IAAI,MAAM,CAGpB;IAED,KAAK,IAAI,MAAM,CAGd;IAED,2FAA2F;IAC3F,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBnD;IAED,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAGpC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,GAAE,MAAe,EAAE,MAAM,GAAE,QAAQ,CAAC,MAAM,CAAM,GAAG,MAAM,CA+DrE;IAwBD,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAkLnD;CACD"}
@@ -1,15 +1,53 @@
1
- const SKIP_EDGES = new Set([
2
- "overrides",
3
- "inherits",
4
- "has_ref_comment",
5
- "initializes",
6
- ]);
1
+ const CALLCHAIN_RULES = {
2
+ solidity: {
3
+ stopEdges: new Set([
4
+ "overrides",
5
+ "inherits",
6
+ "has_ref_comment",
7
+ "initializes",
8
+ "typed_as",
9
+ ]),
10
+ boundaryEdges: new Set(["calls_external"]),
11
+ },
12
+ rust: {
13
+ stopEdges: new Set([
14
+ "overrides",
15
+ "implements",
16
+ "extends",
17
+ "initializes",
18
+ ]),
19
+ boundaryEdges: new Set(["calls_external"]),
20
+ },
21
+ python: {
22
+ stopEdges: new Set(["typed_as"]),
23
+ boundaryEdges: new Set(),
24
+ },
25
+ };
7
26
  const CALL_EDGES = new Set(["calls", "calls_external"]);
27
+ const STATE_EDGES = new Set([
28
+ "reads",
29
+ "writes",
30
+ "accesses",
31
+ ]);
32
+ const WRITE_EDGES = new Set(["writes", "accesses"]);
33
+ const EXTERNAL_EDGES = new Set(["calls_external"]);
8
34
  const join = (...parts) => parts.filter((part) => Boolean(part)).join(".") || null;
35
+ const touches = (fields, accessed) => {
36
+ for (const field of fields) {
37
+ for (const access of accessed) {
38
+ if (field === access ||
39
+ access.startsWith(`${field}.`) ||
40
+ field.startsWith(`${access}.`))
41
+ return true;
42
+ }
43
+ }
44
+ return false;
45
+ };
9
46
  const isParameterFact = (fact) => "start_byte" in fact;
47
+ const bindingKey = (nodeId, binding) => JSON.stringify([nodeId, binding]);
10
48
  /**
11
- * One function invocation: its stored storage facts, plus what its storage parameters are bound to
12
- * by the call that invoked it.
49
+ * A unit bound by one call: its stored storage facts, resolved against what the call binds its
50
+ * storage parameters to.
13
51
  */
14
52
  class Frame {
15
53
  graph;
@@ -20,6 +58,7 @@ class Frame {
20
58
  refs = new Map();
21
59
  accesses = [];
22
60
  #byPos = new Map();
61
+ #binding = new Set();
23
62
  constructor(graph, node, paramSlots, path) {
24
63
  this.graph = graph;
25
64
  this.node = node;
@@ -55,11 +94,26 @@ class Frame {
55
94
  }
56
95
  }
57
96
  }
97
+ get binding() {
98
+ return [...this.paramSlots.entries()]
99
+ .sort(([a], [b]) => a - b)
100
+ .map(([index, slots]) => [index, slots]);
101
+ }
58
102
  /** The frame `call`'s callee runs in, bound by this frame's resolution of its arguments. */
59
103
  callee(call) {
60
- if (!call.dst_id || this.path.includes(call.dst_id))
104
+ if (!call.dst_id ||
105
+ this.path.includes(call.dst_id) ||
106
+ this.#binding.has(call.id))
61
107
  return null;
62
- return new Frame(this.graph, this.graph.getNode(call.dst_id), this.bind(call), [...this.path, this.node.id]);
108
+ // resolving this call's arguments can come back to the call itself (`x = f(x)`, or two
109
+ // calls feeding each other): it then binds as if that argument were unknown
110
+ this.#binding.add(call.id);
111
+ try {
112
+ return new Frame(this.graph, this.graph.getNode(call.dst_id), this.bind(call), [...this.path, this.node.id]);
113
+ }
114
+ finally {
115
+ this.#binding.delete(call.id);
116
+ }
63
117
  }
64
118
  /** Concrete slots for a stored root, with `field` appended to the path. */
65
119
  resolve(fact, field) {
@@ -124,9 +178,8 @@ export class CallNode {
124
178
  edgeId = null;
125
179
  edgeType = null;
126
180
  lowLevelName = null;
181
+ lowLevelKind = null;
127
182
  targetEffectId = null;
128
- isConditional = false;
129
- isArg = false;
130
183
  isCyclic = false;
131
184
  srcFieldNames = [];
132
185
  dstFieldNames = [];
@@ -135,9 +188,74 @@ export class CallNode {
135
188
  constructor(init = {}) {
136
189
  Object.assign(this, init);
137
190
  }
191
+ get isArg() {
192
+ return this.targetEffectId !== null;
193
+ }
194
+ get args() {
195
+ return this.children.filter((child) => child.isArg);
196
+ }
197
+ get body() {
198
+ return this.children.filter((child) => !child.isArg);
199
+ }
138
200
  /** A shallow copy, like `dataclasses.replace`. */
139
201
  clone(overrides = {}) {
140
- return new CallNode({ ...this, ...overrides });
202
+ return new CallNode({
203
+ nodeId: this.nodeId,
204
+ shortId: this.shortId,
205
+ name: this.name,
206
+ nodeType: this.nodeType,
207
+ edgeId: this.edgeId,
208
+ edgeType: this.edgeType,
209
+ lowLevelName: this.lowLevelName,
210
+ lowLevelKind: this.lowLevelKind,
211
+ targetEffectId: this.targetEffectId,
212
+ isCyclic: this.isCyclic,
213
+ srcFieldNames: this.srcFieldNames,
214
+ dstFieldNames: this.dstFieldNames,
215
+ resolvedBindings: this.resolvedBindings,
216
+ children: this.children,
217
+ ...overrides,
218
+ });
219
+ }
220
+ /** Every node in this node's body, at any depth, each once: bodies can be shared. */
221
+ *bodyNodes() {
222
+ const seen = new Set();
223
+ const stack = [...this.body];
224
+ while (stack.length) {
225
+ const cn = stack.pop();
226
+ if (seen.has(cn))
227
+ continue;
228
+ seen.add(cn);
229
+ yield cn;
230
+ stack.push(...cn.children);
231
+ }
232
+ }
233
+ /** Whether nothing in this node's body writes storage or leaves the contract. */
234
+ isPure() {
235
+ for (const cn of this.bodyNodes()) {
236
+ if ((cn.edgeType && WRITE_EDGES.has(cn.edgeType)) ||
237
+ (cn.edgeType && EXTERNAL_EDGES.has(cn.edgeType)) ||
238
+ cn.lowLevelName)
239
+ return false;
240
+ }
241
+ return true;
242
+ }
243
+ /** This node's body as its effects: storage touched, and calls leaving the contract. */
244
+ summary() {
245
+ const effects = new Map();
246
+ for (const cn of this.bodyNodes()) {
247
+ if (cn.edgeType === null)
248
+ continue;
249
+ if (STATE_EDGES.has(cn.edgeType) ||
250
+ EXTERNAL_EDGES.has(cn.edgeType) ||
251
+ cn.lowLevelName) {
252
+ const verb = cn.edgeType.replaceAll("_", " ");
253
+ const targets = effects.get(verb) ?? new Map();
254
+ targets.set(cn.lineParts(null)[1], null);
255
+ effects.set(verb, targets);
256
+ }
257
+ }
258
+ return [...effects.entries()].map(([verb, targets]) => `${verb}: ${[...targets.keys()].join(", ")}`);
141
259
  }
142
260
  toSchema() {
143
261
  const positions = new Map([[this, 0]]);
@@ -165,8 +283,8 @@ export class CallNode {
165
283
  edge_id: node.edgeId,
166
284
  edge_type: node.edgeType,
167
285
  low_level_name: node.lowLevelName,
286
+ low_level_kind: node.lowLevelKind,
168
287
  target_effect_id: node.targetEffectId,
169
- is_conditional: node.isConditional,
170
288
  is_arg: node.isArg,
171
289
  is_cyclic: node.isCyclic,
172
290
  src_field_names: [...node.srcFieldNames],
@@ -189,9 +307,8 @@ export class CallNode {
189
307
  edgeId: n.edge_id,
190
308
  edgeType: n.edge_type,
191
309
  lowLevelName: n.low_level_name,
310
+ lowLevelKind: n.low_level_kind,
192
311
  targetEffectId: n.target_effect_id,
193
- isConditional: n.is_conditional,
194
- isArg: n.is_arg,
195
312
  isCyclic: n.is_cyclic,
196
313
  srcFieldNames: [...n.src_field_names],
197
314
  dstFieldNames: [...n.dst_field_names],
@@ -216,56 +333,101 @@ export class CallNode {
216
333
  throw new Error("call chain has no nodes");
217
334
  return root;
218
335
  }
219
- // text
220
- #label() {
336
+ displayName() {
221
337
  if (this.shortId)
222
- return `${this.name || this.lowLevelName || "?"} [${this.shortId}]`;
338
+ return this.name || this.lowLevelName || "?";
223
339
  return `low-level method ${this.lowLevelName || this.name || "?"}`;
224
340
  }
225
- #line(parent) {
226
- const label = this.#label();
227
- let head = label;
341
+ label() {
342
+ const name = this.displayName();
343
+ return this.shortId ? `${name} [${this.shortId}]` : name;
344
+ }
345
+ /** `[edge phrase, label plus field details]`: renderers style the two parts separately. */
346
+ lineParts(parent) {
347
+ let phrase = "";
228
348
  if (this.edgeType) {
229
349
  const verb = this.edgeType.replaceAll("_", " ");
230
- // an input runs exactly when its effect does: only show its own condition if it differs
231
- const inheritsCondition = this.isArg && parent?.isConditional === true;
232
- if (parent?.edgeType === "has_condition" && !this.isConditional) {
233
- head = `in condition ${verb} ${label}`;
234
- }
235
- else if (this.isConditional && !inheritsCondition) {
236
- head = `conditionally ${verb} ${label}`;
237
- }
238
- else {
239
- head = `${verb} ${label}`;
240
- }
350
+ phrase =
351
+ parent?.edgeType === "has_condition" && !this.isArg
352
+ ? `conditionally ${verb}`
353
+ : verb;
241
354
  }
242
- const tail = [];
355
+ const rest = [this.label()];
356
+ if (this.lowLevelName && this.lowLevelKind)
357
+ rest.push(`(${this.lowLevelKind})`);
243
358
  if (this.srcFieldNames.length)
244
- tail.push(`src: [${this.srcFieldNames.join(",")}]`);
359
+ rest.push(`src: [${this.srcFieldNames.join(",")}]`);
245
360
  if (this.dstFieldNames.length)
246
- tail.push(`dst: [${this.dstFieldNames.join(",")}]`);
247
- return tail.length ? `${head} ${tail.join(" ")}` : head;
361
+ rest.push(`dst: [${this.dstFieldNames.join(",")}]`);
362
+ return [phrase, rest.join(" ")];
363
+ }
364
+ line(parent) {
365
+ const [phrase, rest] = this.lineParts(parent);
366
+ return phrase ? `${phrase} ${rest}` : rest;
248
367
  }
249
- toText() {
368
+ /**
369
+ * The chain as indented text. A collapsed call keeps its line and arguments, and shows its
370
+ * body as a summary of effects. Calls to `expand` (node ids) are never collapsed.
371
+ */
372
+ toText(detail = "full", expand = []) {
373
+ const expandSet = new Set(expand);
250
374
  const lines = [];
375
+ const shown = new Set();
376
+ const identities = new WeakMap();
377
+ let nextId = 0;
378
+ const objectId = (cn) => {
379
+ const existing = identities.get(cn);
380
+ if (existing !== undefined)
381
+ return existing;
382
+ const id = nextId++;
383
+ identities.set(cn, id);
384
+ return id;
385
+ };
386
+ const collapsed = (cn, body) => {
387
+ if (detail === "full" ||
388
+ body.length === 0 ||
389
+ !cn.edgeType ||
390
+ !CALL_EDGES.has(cn.edgeType))
391
+ return false;
392
+ const key = body.map(objectId).join(",");
393
+ const repeat = shown.has(key);
394
+ shown.add(key);
395
+ if (cn.nodeId && expandSet.has(cn.nodeId))
396
+ return false;
397
+ return repeat || (detail === "summary" && cn.isPure());
398
+ };
251
399
  const visit = (cn, depth, parent) => {
252
- const line = cn.#line(parent);
253
- lines.push(" ".repeat(depth) + (cn.isCyclic ? `[CYCLIC] ${line}` : line));
400
+ const pad = " ".repeat(depth);
401
+ const body = cn.body;
402
+ const hide = collapsed(cn, body);
403
+ let line = cn.line(parent);
404
+ if (cn.isCyclic)
405
+ line = `[CYCLIC] ${line}`;
406
+ if (hide)
407
+ line = `${line} [COLLAPSED]`;
408
+ lines.push(pad + line);
254
409
  const args = cn.children.filter((child) => child.isArg);
255
410
  if (args.length) {
256
- lines.push(" ".repeat(depth + 1) +
257
- (cn.edgeType && CALL_EDGES.has(cn.edgeType) ? "args" : "using"));
411
+ const header = cn.edgeType && CALL_EDGES.has(cn.edgeType)
412
+ ? "args"
413
+ : cn.edgeType === "has_condition"
414
+ ? "tests"
415
+ : "using";
416
+ lines.push(" ".repeat(depth + 1) + header);
258
417
  for (const child of args)
259
418
  visit(child, depth + 2, cn);
260
419
  }
261
- for (const child of cn.children)
262
- if (!child.isArg)
263
- visit(child, depth + 1, cn);
420
+ if (hide) {
421
+ for (const s of cn.summary())
422
+ lines.push(`${pad} ${s}`);
423
+ return;
424
+ }
425
+ for (const child of body)
426
+ visit(child, depth + 1, cn);
264
427
  };
265
428
  visit(this, 0, null);
266
429
  return lines.join("\n");
267
430
  }
268
- // build
269
431
  /** Points a struct-typed access at the concrete storage it hits. */
270
432
  #resolveTo(access) {
271
433
  this.edgeType = access.edge_type;
@@ -274,11 +436,22 @@ export class CallNode {
274
436
  this.name = access.bound_to_name;
275
437
  this.dstFieldNames = access.field ? [access.field] : [];
276
438
  }
277
- static #prune(cn) {
278
- cn.children = cn.children.filter((child) => CallNode.#prune(child));
279
- return !(cn.edgeType === "has_condition" && cn.children.length === 0);
439
+ /** Drop condition nodes with nothing under them. */
440
+ #prune() {
441
+ const done = new Set();
442
+ const keep = (cn) => {
443
+ if (!done.has(cn)) {
444
+ done.add(cn);
445
+ cn.children = cn.children.filter((child) => keep(child));
446
+ }
447
+ return !(cn.edgeType === "has_condition" && cn.children.length === 0);
448
+ };
449
+ keep(this);
280
450
  }
281
451
  static build(graph, nodeId) {
452
+ const rules = CALLCHAIN_RULES[graph.getNode(nodeId).language];
453
+ // the body of each callee, by its binding: another call with the same binding shares it
454
+ const bodies = new Map();
282
455
  const childFrame = (edge, frame) => {
283
456
  // a condition node belongs to the same function instance
284
457
  if (edge.edge_type === "has_condition")
@@ -295,9 +468,7 @@ export class CallNode {
295
468
  if (accesses.length === 0)
296
469
  return [child];
297
470
  return accesses.map((access) => {
298
- const cn = child.clone({
299
- children: child.children.filter((c) => c.isArg),
300
- });
471
+ const cn = child.clone({ children: child.args });
301
472
  cn.#resolveTo(access);
302
473
  cn.children.push(...walk(access.bound_to_node_id, null, null, path, new Map())
303
474
  .children);
@@ -305,29 +476,64 @@ export class CallNode {
305
476
  });
306
477
  };
307
478
  const attachArgs = (cn, edge, path, callerArgs) => {
308
- // inputs run in the caller's frame, with the caller's stack
479
+ // Inputs run in the caller's frame, with the caller's stack.
309
480
  if (edge === null)
310
481
  return;
311
482
  for (const [argEdge, argFrame] of callerArgs.get(edge.id) ?? []) {
312
- const child = walk(argEdge.dst_id ?? null, argEdge, childFrame(argEdge, argFrame), path, callerArgs, true);
483
+ const child = walk(argEdge.dst_id ?? null, argEdge, childFrame(argEdge, argFrame), path, callerArgs);
313
484
  cn.children.push(...resolved(child, argFrame.at(argEdge.src_start_pos), path));
314
485
  }
315
486
  };
487
+ const walkBody = (node, edge, frame, stack) => {
488
+ const childEdges = graph.getEdgesForNode(node.id, { direction: "out" });
489
+ // Inputs belong to this frame: they're walked under the effect they feed, with this frame.
490
+ const myArgs = new Map();
491
+ for (const childEdge of childEdges) {
492
+ if (!childEdge.target_effect_id)
493
+ continue;
494
+ const entries = myArgs.get(childEdge.target_effect_id);
495
+ if (entries)
496
+ entries.push([childEdge, frame]);
497
+ else
498
+ myArgs.set(childEdge.target_effect_id, [[childEdge, frame]]);
499
+ }
500
+ // reached through specific fields (`accesses Accounts dst: [pool]`): only the edges about
501
+ // those fields apply, not the ones about the node's other fields or the node as a whole
502
+ let accessed = [];
503
+ if (edge !== null &&
504
+ !CALL_EDGES.has(edge.edge_type) &&
505
+ edge.edge_type !== "has_condition")
506
+ accessed = [...edge.dst_field_names];
507
+ const body = [];
508
+ if (edge?.edge_type === "has_condition") {
509
+ for (const [argEdge, argFrame] of myArgs.get(edge.id) ?? []) {
510
+ const child = walk(argEdge.dst_id ?? null, argEdge, childFrame(argEdge, argFrame), stack, myArgs);
511
+ body.push(...resolved(child, argFrame.at(argEdge.src_start_pos), stack));
512
+ }
513
+ }
514
+ for (const childEdge of childEdges) {
515
+ if (childEdge.target_effect_id)
516
+ continue;
517
+ if (accessed.length && !touches(childEdge.src_field_names, accessed))
518
+ continue;
519
+ const child = walk(childEdge.dst_id ?? null, childEdge, childFrame(childEdge, frame), stack, myArgs);
520
+ body.push(...resolved(child, frame.at(childEdge.src_start_pos), stack));
521
+ }
522
+ return body;
523
+ };
316
524
  /** `frame` is the frame this node's body runs in: a fresh one for a callee, the enclosing one for a condition node. */
317
- const walk = (nid, edge, frame, path, callerArgs, isArg = false) => {
525
+ const walk = (nid, edge, frame, path, callerArgs) => {
318
526
  const node = nid ? graph.getNode(nid) : null;
319
- const lowLevelName = edge?.low_level_name ?? null;
320
527
  const cn = new CallNode({
321
528
  nodeId: nid,
322
529
  shortId: node?.short_id ?? null,
323
- name: node !== null ? node.name : lowLevelName,
530
+ name: node !== null ? node.name : (edge?.low_level_name ?? null),
324
531
  nodeType: node?.node_type ?? null,
325
532
  edgeId: edge?.id ?? null,
326
533
  edgeType: edge?.edge_type ?? null,
327
- lowLevelName,
534
+ lowLevelName: edge?.low_level_name ?? null,
535
+ lowLevelKind: edge?.low_level_kind ?? null,
328
536
  targetEffectId: edge?.target_effect_id ?? null,
329
- isConditional: edge ? Boolean(edge.is_conditional) : false,
330
- isArg,
331
537
  isCyclic: nid ? path.includes(nid) : false,
332
538
  srcFieldNames: [...(edge?.src_field_names ?? [])],
333
539
  dstFieldNames: [...(edge?.dst_field_names ?? [])],
@@ -336,28 +542,27 @@ export class CallNode {
336
542
  attachArgs(cn, edge, path, callerArgs);
337
543
  return cn;
338
544
  }
339
- if (cn.edgeType && SKIP_EDGES.has(cn.edgeType))
545
+ if (cn.edgeType && rules.stopEdges.has(cn.edgeType))
546
+ return cn;
547
+ if (cn.edgeType && rules.boundaryEdges.has(cn.edgeType)) {
548
+ attachArgs(cn, edge, path, callerArgs);
340
549
  return cn;
550
+ }
341
551
  // no caller context: an entrypoint, or a node started from directly
342
552
  const bodyFrame = frame ?? new Frame(graph, node, new Map(), path);
343
- const childEdges = graph.getEdgesForNode(node.id, { direction: "out" });
344
- // inputs belong to this frame: they're walked under the effect they feed, with this frame
345
- const myArgs = new Map();
346
- for (const childEdge of childEdges) {
347
- if (!childEdge.target_effect_id)
348
- continue;
349
- const entries = myArgs.get(childEdge.target_effect_id);
350
- if (entries)
351
- entries.push([childEdge, bodyFrame]);
352
- else
353
- myArgs.set(childEdge.target_effect_id, [[childEdge, bodyFrame]]);
553
+ const key = edge !== null && CALL_EDGES.has(edge.edge_type)
554
+ ? bindingKey(node.id, bodyFrame.binding)
555
+ : null;
556
+ let body = key ? bodies.get(key) : undefined;
557
+ if (body === undefined) {
558
+ body = walkBody(node, edge, bodyFrame, [...path, node.id]);
559
+ cn.children = [...body];
560
+ // a body that cut a cycle depends on the stack above it: not shared
561
+ if (key && ![...cn.bodyNodes()].some((child) => child.isCyclic))
562
+ bodies.set(key, body);
354
563
  }
355
- const stack = [...path, node.id];
356
- for (const childEdge of childEdges) {
357
- if (childEdge.target_effect_id)
358
- continue;
359
- const child = walk(childEdge.dst_id ?? null, childEdge, childFrame(childEdge, bodyFrame), stack, myArgs);
360
- cn.children.push(...resolved(child, bodyFrame.at(childEdge.src_start_pos), stack));
564
+ else {
565
+ cn.children = [...body];
361
566
  }
362
567
  if (edge === null || edge.edge_type !== "has_condition")
363
568
  cn.resolvedBindings = bodyFrame.accesses;
@@ -365,7 +570,7 @@ export class CallNode {
365
570
  return cn;
366
571
  };
367
572
  const root = walk(nodeId, null, null, [], new Map());
368
- CallNode.#prune(root);
573
+ root.#prune();
369
574
  return root;
370
575
  }
371
576
  }
@@ -1 +1 @@
1
- {"version":3,"file":"call-node.js","sourceRoot":"","sources":["../../src/graph/call-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"call-node.js","sourceRoot":"","sources":["../../src/graph/call-node.ts"],"names":[],"mappings":"AAmBA,MAAM,eAAe,GAAqC;IACzD,QAAQ,EAAE;QACT,SAAS,EAAE,IAAI,GAAG,CAAW;YAC5B,WAAW;YACX,UAAU;YACV,iBAAiB;YACjB,aAAa;YACb,UAAU;SACV,CAAC;QACF,aAAa,EAAE,IAAI,GAAG,CAAW,CAAC,gBAAgB,CAAC,CAAC;KACpD;IACD,IAAI,EAAE;QACL,SAAS,EAAE,IAAI,GAAG,CAAW;YAC5B,WAAW;YACX,YAAY;YACZ,SAAS;YACT,aAAa;SACb,CAAC;QACF,aAAa,EAAE,IAAI,GAAG,CAAW,CAAC,gBAAgB,CAAC,CAAC;KACpD;IACD,MAAM,EAAE;QACP,SAAS,EAAE,IAAI,GAAG,CAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,aAAa,EAAE,IAAI,GAAG,EAAY;KAClC;CACD,CAAC;AAEF,MAAM,UAAU,GAA0B,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAC/E,MAAM,WAAW,GAA0B,IAAI,GAAG,CAAC;IAClD,OAAO;IACP,QAAQ;IACR,UAAU;CACV,CAAC,CAAC;AACH,MAAM,WAAW,GAA0B,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;AAC3E,MAAM,cAAc,GAA0B,IAAI,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;AA4B1E,MAAM,IAAI,GAAG,CAAC,GAAG,KAAoC,EAAiB,EAAE,CACvE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;AAEzE,MAAM,OAAO,GAAG,CACf,MAAyB,EACzB,QAA2B,EACjB,EAAE;IACZ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC/B,IACC,KAAK,KAAK,MAAM;gBAChB,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,GAAG,CAAC;gBAC9B,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;gBAE9B,OAAO,IAAI,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACvB,IAAiB,EACuB,EAAE,CAAC,YAAY,IAAI,IAAI,CAAC;AAEjE,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,OAAgB,EAAU,EAAE,CAC/D,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEnC;;;GAGG;AACH,MAAM,KAAK;IACD,KAAK,CAAQ;IACb,IAAI,CAAoB;IACxB,UAAU,CAA8B;IACxC,IAAI,CAAO;IACpB,8FAA8F;IACrF,IAAI,GAAG,IAAI,GAAG,EAA6B,CAAC;IAC5C,QAAQ,GAAiC,EAAE,CAAC;IAC5C,MAAM,GAAG,IAAI,GAAG,EAAwC,CAAC;IACzD,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,YACC,KAAY,EACZ,IAAuB,EACvB,UAAuC,EACvC,IAAU;QAEV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,MAAM,KAAK,GAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAY,EAAE;gBAC/D,SAAS,EAAE,KAAK;aAChB,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,SAAS,KAAK,eAAe,IAAI,IAAI,CAAC,MAAM;oBACpD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;QACF,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YAC1C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnD,MAAM,MAAM,GAA+B;oBAC1C,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO;oBAC/C,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,gBAAgB,EAAE,IAAI,CAAC,MAAM;oBAC7B,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ;oBACtD,aAAa,EAAE,IAAI,CAAC,IAAI;oBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;iBACjB,CAAC;gBACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,UAAU,CAAC;gBACrD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,KAAK;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;oBACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YACrC,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,OAAO;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;aACnC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;aACzB,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAU,CAAC,CAAC;IACpD,CAAC;IAED,4FAA4F;IAC5F,MAAM,CAAC,IAAuB;QAC7B,IACC,CAAC,IAAI,CAAC,MAAM;YACZ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAE1B,OAAO,IAAI,CAAC;QACb,uFAAuF;QACvF,4EAA4E;QAC5E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC;YACJ,OAAO,IAAI,KAAK,CACf,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EACf,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAC5B,CAAC;QACH,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC;IACF,CAAC;IAED,2EAA2E;IAC3E,OAAO,CAAC,IAAiB,EAAE,KAAgC;QAC1D,wFAAwF;QACxF,8DAA8D;QAC9D,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC;YACvC,CAAC,CAAC,IAAI,CAAC,WAAW;YAClB,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAC7B,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC7D,GAAG,IAAI;gBACP,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;aAC9B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YACxE,OAAO,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,EAAE,MAAM;YAAE,OAAO,EAAE,CAAC;QAE5B,IACC,IAAI,CAAC,qBAAqB,KAAK,IAAI;YACnC,IAAI,CAAC,qBAAqB,KAAK,SAAS,EACvC,CAAC;YACF,sEAAsE;YACtE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,qFAAqF;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAW,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,qBAAqB;gBAAE,SAAS;YAC3D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC5D,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACvD,CAAC;QACF,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,0FAA0F;IAC1F,IAAI,CAAC,IAAuB;QAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;QACtC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC9C,IAAI,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;;gBACjC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,EAAE,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;CACD;AAKD,MAAM,OAAO,QAAQ;IACpB,MAAM,GAAkB,IAAI,CAAC;IAC7B,OAAO,GAAkB,IAAI,CAAC;IAC9B,IAAI,GAAkB,IAAI,CAAC;IAC3B,QAAQ,GAAkB,IAAI,CAAC;IAC/B,MAAM,GAAkB,IAAI,CAAC;IAC7B,QAAQ,GAAoB,IAAI,CAAC;IACjC,YAAY,GAAkB,IAAI,CAAC;IACnC,YAAY,GAAwB,IAAI,CAAC;IACzC,cAAc,GAAkB,IAAI,CAAC;IACrC,QAAQ,GAAG,KAAK,CAAC;IACjB,aAAa,GAAa,EAAE,CAAC;IAC7B,aAAa,GAAa,EAAE,CAAC;IAC7B,gBAAgB,GAAiC,EAAE,CAAC;IACpD,QAAQ,GAAe,EAAE,CAAC;IAE1B,YAAY,IAAI,GAAsB,EAAE;QACvC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;IACrC,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,SAAS,GAAsB,EAAE;QACtC,OAAO,IAAI,QAAQ,CAAC;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,SAAS;SACZ,CAAC,CAAC;IACJ,CAAC;IAED,qFAAqF;IACrF,CAAC,SAAS;QACT,MAAM,IAAI,GAAG,IAAI,GAAG,EAAY,CAAC;QACjC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,EAAc,CAAC;YACnC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,MAAM,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,iFAAiF;IACjF,MAAM;QACL,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACnC,IACC,CAAC,EAAE,CAAC,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAC7C,CAAC,EAAE,CAAC,QAAQ,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAChD,EAAE,CAAC,YAAY;gBAEf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wFAAwF;IACxF,OAAO;QACN,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;QACrD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACnC,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI;gBAAE,SAAS;YACnC,IACC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAC5B,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAC/B,EAAE,CAAC,YAAY,EACd,CAAC;gBACF,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAgB,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;QACD,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAChC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjE,CAAC;IACH,CAAC;IAED,QAAQ;QACP,MAAM,SAAS,GAAG,IAAI,GAAG,CAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAe,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,KAAK,GAAoB,EAAE,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnC,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC/B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACvB,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;oBACnB,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnB,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,IAAI,CAAC,MAAM;gBACpB,QAAQ,EAAE,IAAI,CAAC,OAAO;gBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,OAAO,EAAE,IAAI,CAAC,MAAM;gBACpB,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,cAAc,EAAE,IAAI,CAAC,YAAY;gBACjC,cAAc,EAAE,IAAI,CAAC,YAAY;gBACjC,gBAAgB,EAAE,IAAI,CAAC,cAAc;gBACrC,MAAM,EAAE,IAAI,CAAC,KAAK;gBAClB,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;gBACxC,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC1D,GAAG,OAAO;iBACV,CAAC,CAAC;gBACH,QAAQ;aACR,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAsB;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CACtB,CAAC,CAAC,EAAE,EAAE,CACL;YACC,IAAI,QAAQ,CAAC;gBACZ,MAAM,EAAE,CAAC,CAAC,OAAO;gBACjB,OAAO,EAAE,CAAC,CAAC,QAAQ;gBACnB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,MAAM,EAAE,CAAC,CAAC,OAAO;gBACjB,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,YAAY,EAAE,CAAC,CAAC,cAAc;gBAC9B,YAAY,EAAE,CAAC,CAAC,cAAc;gBAC9B,cAAc,EAAE,CAAC,CAAC,gBAAgB;gBAClC,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC;gBACrC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC;gBACrC,gBAAgB,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACvD,GAAG,OAAO;iBACV,CAAC,CAAC;gBACH,QAAQ,EAAE,EAAE;aACZ,CAAC;YACF,CAAC;SACQ,CACX,CAAC;QACF,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QAE1C,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,KAAK,KAAK,SAAS;oBACtB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,kBAAkB,CAAC,CAAC;gBACpE,OAAO,KAAK,CAAC;YACd,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,WAAW;QACV,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC;QAC/D,OAAO,oBAAoB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACpE,CAAC;IAED,KAAK;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1D,CAAC;IAED,2FAA2F;IAC3F,SAAS,CAAC,MAAuB;QAChC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChD,MAAM;gBACL,MAAM,EAAE,QAAQ,KAAK,eAAe,IAAI,CAAC,IAAI,CAAC,KAAK;oBAClD,CAAC,CAAC,iBAAiB,IAAI,EAAE;oBACzB,CAAC,CAAC,IAAI,CAAC;QACV,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY;YACzC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,MAAuB;QAC3B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,GAAW,MAAM,EAAE,MAAM,GAAqB,EAAE;QAC5D,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,MAAM,UAAU,GAAG,IAAI,OAAO,EAAoB,CAAC;QACnD,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,QAAQ,GAAG,CAAC,EAAY,EAAU,EAAE;YACzC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAC;YAC5C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;YACpB,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACX,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,CAAC,EAAY,EAAE,IAAgB,EAAW,EAAE;YAC7D,IACC,MAAM,KAAK,MAAM;gBACjB,IAAI,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,EAAE,CAAC,QAAQ;gBACZ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAE5B,OAAO,KAAK,CAAC;YACd,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9B,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACf,IAAI,EAAE,CAAC,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAC;YACxD,OAAO,MAAM,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,CACb,EAAY,EACZ,KAAa,EACb,MAAuB,EAChB,EAAE;YACT,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACrB,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACjC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3B,IAAI,EAAE,CAAC,QAAQ;gBAAE,IAAI,GAAG,YAAY,IAAI,EAAE,CAAC;YAC3C,IAAI,IAAI;gBAAE,IAAI,GAAG,GAAG,IAAI,cAAc,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YAEvB,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,MAAM,GACX,EAAE,CAAC,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;oBACzC,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,EAAE,CAAC,QAAQ,KAAK,eAAe;wBAChC,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,OAAO,CAAC;gBACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;gBAC5C,KAAK,MAAM,KAAK,IAAI,IAAI;oBAAE,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,IAAI,EAAE,CAAC;gBACV,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;gBACzD,OAAO;YACR,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,IAAI;gBAAE,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACrB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,oEAAoE;IACpE,UAAU,CAAC,MAAkC;QAC5C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,oDAAoD;IACpD,MAAM;QACL,MAAM,IAAI,GAAG,IAAI,GAAG,EAAY,CAAC;QACjC,MAAM,IAAI,GAAG,CAAC,EAAY,EAAW,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACb,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,CAAC,CAAC,EAAE,CAAC,QAAQ,KAAK,eAAe,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,CAAC;IACZ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAY,EAAE,MAAc;QACxC,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC9D,wFAAwF;QACxF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAC;QAE7C,MAAM,UAAU,GAAG,CAClB,IAAuB,EACvB,KAAY,EACG,EAAE;YACjB,yDAAyD;YACzD,IAAI,IAAI,CAAC,SAAS,KAAK,eAAe;gBAAE,OAAO,KAAK,CAAC;YACrD,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QAEF;;;WAGG;QACH,MAAM,QAAQ,GAAG,CAChB,KAAe,EACf,QAA+C,EAC/C,IAAU,EACG,EAAE;YACf,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjD,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,EAAE,CAAC,QAAQ,CAAC,IAAI,CACf,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;qBAC3D,QAAQ,CACV,CAAC;gBACF,OAAO,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,CAClB,EAAY,EACZ,IAA8B,EAC9B,IAAU,EACV,UAA2C,EACpC,EAAE;YACT,6DAA6D;YAC7D,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO;YAC1B,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjE,MAAM,KAAK,GAAG,IAAI,CACjB,OAAO,CAAC,MAAM,IAAI,IAAI,EACtB,OAAO,EACP,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,EAC7B,IAAI,EACJ,UAAU,CACV,CAAC;gBACF,EAAE,CAAC,QAAQ,CAAC,IAAI,CACf,GAAG,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAC5D,CAAC;YACH,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,CAChB,IAAuB,EACvB,IAA8B,EAC9B,KAAY,EACZ,KAAW,EACE,EAAE;YACf,MAAM,UAAU,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAExE,2FAA2F;YAC3F,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAC;YAC7C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,IAAI,CAAC,SAAS,CAAC,gBAAgB;oBAAE,SAAS;gBAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBACvD,IAAI,OAAO;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;;oBACzC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnE,CAAC;YAED,0FAA0F;YAC1F,wFAAwF;YACxF,IAAI,QAAQ,GAAa,EAAE,CAAC;YAC5B,IACC,IAAI,KAAK,IAAI;gBACb,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC/B,IAAI,CAAC,SAAS,KAAK,eAAe;gBAElC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;YAEtC,MAAM,IAAI,GAAe,EAAE,CAAC;YAC5B,IAAI,IAAI,EAAE,SAAS,KAAK,eAAe,EAAE,CAAC;gBACzC,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC7D,MAAM,KAAK,GAAG,IAAI,CACjB,OAAO,CAAC,MAAM,IAAI,IAAI,EACtB,OAAO,EACP,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,EAC7B,KAAK,EACL,MAAM,CACN,CAAC;oBACF,IAAI,CAAC,IAAI,CACR,GAAG,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,CAC7D,CAAC;gBACH,CAAC;YACF,CAAC;YAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,IAAI,SAAS,CAAC,gBAAgB;oBAAE,SAAS;gBACzC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,QAAQ,CAAC;oBACnE,SAAS;gBACV,MAAM,KAAK,GAAG,IAAI,CACjB,SAAS,CAAC,MAAM,IAAI,IAAI,EACxB,SAAS,EACT,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,EAC5B,KAAK,EACL,MAAM,CACN,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QAEF,uHAAuH;QACvH,MAAM,IAAI,GAAG,CACZ,GAAkB,EAClB,IAA8B,EAC9B,KAAmB,EACnB,IAAU,EACV,UAA2C,EAChC,EAAE;YACb,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7C,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC;gBACvB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;gBAC/B,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC;gBAChE,QAAQ,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;gBACjC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI;gBACxB,QAAQ,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;gBACjC,YAAY,EAAE,IAAI,EAAE,cAAc,IAAI,IAAI;gBAC1C,YAAY,EAAE,IAAI,EAAE,cAAc,IAAI,IAAI;gBAC1C,cAAc,EAAE,IAAI,EAAE,gBAAgB,IAAI,IAAI;gBAC9C,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK;gBAC1C,aAAa,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC;gBACjD,aAAa,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC;aACjD,CAAC,CAAC;YAEH,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBACvC,OAAO,EAAE,CAAC;YACX,CAAC;YACD,IAAI,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC/D,IAAI,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzD,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBACvC,OAAO,EAAE,CAAC;YACX,CAAC;YACD,oEAAoE;YACpE,MAAM,SAAS,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YAEnE,MAAM,GAAG,GACR,IAAI,KAAK,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC9C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC;gBACxC,CAAC,CAAC,IAAI,CAAC;YACT,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3D,EAAE,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;gBACxB,oEAAoE;gBACpE,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;oBAC9D,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACP,EAAE,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,CAAC;YAED,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,eAAe;gBACtD,EAAE,CAAC,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC;YAE1C,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC;QACX,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
@@ -188,7 +188,7 @@ export class Graph {
188
188
  return new Set([...this.fileMap.values()].map((file) => file.language));
189
189
  }
190
190
  getNodeLanguage(nodeId) {
191
- return this.getFile(this.getNode(nodeId).file_id).language;
191
+ return this.getNode(nodeId).language;
192
192
  }
193
193
  /**
194
194
  * Edges touching a node: outgoing first (by source position), then incoming.
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/graph/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/graph/graph.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { EdgeDirection, EdgeType, Language, NodeVisibility } from "./literals.js";
1
+ import type { EdgeDirection, EdgeType, Language, LowLevelKind, NodeVisibility } from "./literals.js";
2
2
  export interface GraphCallBinding {
3
3
  param_index: number;
4
4
  param_name: string;
@@ -23,8 +23,8 @@ export interface GraphCallNode {
23
23
  edge_id: string | null;
24
24
  edge_type: EdgeType | null;
25
25
  low_level_name: string | null;
26
+ low_level_kind: LowLevelKind | null;
26
27
  target_effect_id: string | null;
27
- is_conditional: boolean;
28
28
  is_arg: boolean;
29
29
  is_cyclic: boolean;
30
30
  src_field_names: string[];
@@ -47,6 +47,13 @@ export interface GraphFieldMetadataItem {
47
47
  discriminant: number | null;
48
48
  constraints: GraphConstraintItem[];
49
49
  }
50
+ export interface GraphLowLevelKind {
51
+ kind: LowLevelKind;
52
+ /**
53
+ * calls between the node and the nearest occurrence; 0 when the node does it itself
54
+ */
55
+ depth: number;
56
+ }
50
57
  export interface GraphParameterStorageMetadata {
51
58
  param_index: number | null;
52
59
  start_byte: number;
@@ -88,9 +95,9 @@ export interface GraphSnapshotEdge {
88
95
  src_field_names: string[];
89
96
  dst_field_names: string[];
90
97
  direction: EdgeDirection | null;
91
- is_conditional: boolean;
92
98
  target_effect_id: string | null;
93
99
  low_level_name: string | null;
100
+ low_level_kind: LowLevelKind | null;
94
101
  src_node_type: string;
95
102
  dst_node_type: string | null;
96
103
  is_synthetic: boolean;
@@ -109,6 +116,7 @@ export interface GraphSnapshotFile {
109
116
  }
110
117
  export interface GraphSnapshotNode {
111
118
  id: string;
119
+ language: Language;
112
120
  file_id: string;
113
121
  file_path: string;
114
122
  short_id: string;
@@ -116,7 +124,6 @@ export interface GraphSnapshotNode {
116
124
  sub_type: string | null;
117
125
  src_start_pos: number;
118
126
  src_end_pos: number;
119
- path: string;
120
127
  docstring: string | null;
121
128
  name: string;
122
129
  merkle_hash: string;
@@ -133,5 +140,6 @@ export interface GraphSnapshotNode {
133
140
  fields: GraphFieldMetadataItem[];
134
141
  parameters: GraphParameterStorageMetadata[];
135
142
  returns: GraphReturnStorageMetadata[];
143
+ low_level_kinds: GraphLowLevelKind[];
136
144
  }
137
145
  //# sourceMappingURL=graph-data.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graph-data.d.ts","sourceRoot":"","sources":["../../src/types/graph-data.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,UAAU,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,0BAA0B,EAAE,CAAC;IAChD;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,mBAAmB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,6BAA6B;IAC7C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,QAAQ,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjC,UAAU,EAAE,6BAA6B,EAAE,CAAC;IAC5C,OAAO,EAAE,0BAA0B,EAAE,CAAC;CACtC"}
1
+ {"version":3,"file":"graph-data.d.ts","sourceRoot":"","sources":["../../src/types/graph-data.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,12 @@ export type ChatType = "analysis" | "code";
5
5
  export type CodeVersionMethod = "tag" | "commit" | "hash" | "address";
6
6
  export type CodeVersionStatus = "queued" | "processing" | "failed" | "success";
7
7
  export type EdgeDirection = "in" | "out";
8
- export type EdgeType = "uses" | "typed_as" | "modified_by" | "calls" | "calls_external" | "reads" | "writes" | "inherits" | "overrides" | "emits" | "throws" | "defines" | "initializes" | "instantiates" | "accesses" | "has_constraint" | "has_access_control" | "references" | "implements" | "extends" | "has_ref_comment" | "has_condition";
8
+ export type EdgeType = "uses" | "typed_as" | "modified_by" | "calls" | "calls_external" | "reads" | "writes" | "inherits" | "overrides" | "emits" | "throws" | "defines" | "initializes" | "instantiates" | "accesses" | "has_constraint" | "has_attribute" | "implements" | "extends" | "has_ref_comment" | "has_condition";
9
9
  export type FindingDraftOperation = "add" | "update" | "delete" | "dismissed";
10
10
  export type FindingLevel = "critical" | "high" | "medium" | "low";
11
11
  export type FindingTransitionReason = "remediated" | "added" | "removed" | "updated" | "dismissed";
12
- export type Language = "solidity" | "rust";
12
+ export type Language = "solidity" | "rust" | "python";
13
+ export type LowLevelKind = "external" | "delegate" | "value_transfer" | "storage" | "caller" | "environment" | "randomness" | "nondeterministic" | "consensus" | "deploy" | "event" | "control";
13
14
  export type NodeVisibility = "external" | "public" | "internal" | "private";
14
15
  export type ProjectKind = "standard" | "integration";
15
16
  //# sourceMappingURL=literals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"literals.d.ts","sourceRoot":"","sources":["../../src/types/literals.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,wBAAwB,GACjC,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,aAAa,GACb,SAAS,GACT,QAAQ,CAAC;AAEZ,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE9D,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/E,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC;AAEzC,MAAM,MAAM,QAAQ,GACjB,MAAM,GACN,UAAU,GACV,aAAa,GACb,OAAO,GACP,gBAAgB,GAChB,OAAO,GACP,QAAQ,GACR,UAAU,GACV,WAAW,GACX,OAAO,GACP,QAAQ,GACR,SAAS,GACT,aAAa,GACb,cAAc,GACd,UAAU,GACV,gBAAgB,GAChB,oBAAoB,GACpB,YAAY,GACZ,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,eAAe,CAAC;AAEnB,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9E,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAElE,MAAM,MAAM,uBAAuB,GAChC,YAAY,GACZ,OAAO,GACP,SAAS,GACT,SAAS,GACT,WAAW,CAAC;AAEf,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5E,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"literals.d.ts","sourceRoot":"","sources":["../../src/types/literals.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,wBAAwB,GACjC,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,aAAa,GACb,SAAS,GACT,QAAQ,CAAC;AAEZ,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE9D,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/E,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC;AAEzC,MAAM,MAAM,QAAQ,GACjB,MAAM,GACN,UAAU,GACV,aAAa,GACb,OAAO,GACP,gBAAgB,GAChB,OAAO,GACP,QAAQ,GACR,UAAU,GACV,WAAW,GACX,OAAO,GACP,QAAQ,GACR,SAAS,GACT,aAAa,GACb,cAAc,GACd,UAAU,GACV,gBAAgB,GAChB,eAAe,GACf,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,eAAe,CAAC;AAEnB,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9E,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAElE,MAAM,MAAM,uBAAuB,GAChC,YAAY,GACZ,OAAO,GACP,SAAS,GACT,SAAS,GACT,WAAW,CAAC;AAEf,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEtD,MAAM,MAAM,YAAY,GACrB,UAAU,GACV,UAAU,GACV,gBAAgB,GAChB,SAAS,GACT,QAAQ,GACR,aAAa,GACb,YAAY,GACZ,kBAAkB,GAClB,WAAW,GACX,QAAQ,GACR,OAAO,GACP,SAAS,CAAC;AAEb,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5E,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,aAAa,CAAC"}
@@ -2,4 +2,6 @@ export declare const SOLIDITY_NODE_TYPES: readonly ["any_pragma_token", "any_sou
2
2
  export type SolidityNodeType = (typeof SOLIDITY_NODE_TYPES)[number];
3
3
  export declare const RUST_NODE_TYPES: readonly ["abstract_type", "arguments", "array_expression", "array_type", "assignment_expression", "associated_type", "async_block", "attribute", "attribute_item", "await_expression", "base_field_initializer", "binary_expression", "block", "block_comment", "boolean_literal", "bounded_type", "bracketed_type", "break_expression", "call_expression", "captured_pattern", "closure_expression", "closure_parameters", "compound_assignment_expr", "const_block", "const_item", "const_parameter", "continue_expression", "declaration_list", "dynamic_type", "else_clause", "empty_statement", "enum_item", "enum_variant", "enum_variant_list", "expression_statement", "extern_crate_declaration", "extern_modifier", "field_declaration", "field_declaration_list", "field_expression", "field_initializer", "field_initializer_list", "field_pattern", "for_expression", "for_lifetimes", "foreign_mod_item", "fragment_specifier", "function_item", "function_modifiers", "function_signature_item", "function_type", "gen_block", "generic_function", "generic_pattern", "generic_type", "generic_type_with_turbofish", "higher_ranked_trait_bound", "if_expression", "impl_item", "index_expression", "inner_attribute_item", "inner_doc_comment_marker", "label", "let_chain", "let_condition", "let_declaration", "lifetime", "lifetime_parameter", "line_comment", "loop_expression", "macro_definition", "macro_invocation", "macro_rule", "match_arm", "match_block", "match_expression", "match_pattern", "mod_item", "mut_pattern", "negative_literal", "never_type", "or_pattern", "ordered_field_declaration_list", "outer_doc_comment_marker", "parameter", "parameters", "parenthesized_expression", "pointer_type", "qualified_type", "range_expression", "range_pattern", "raw_string_literal", "ref_pattern", "reference_expression", "reference_pattern", "reference_type", "remaining_field_pattern", "removed_trait_bound", "return_expression", "scoped_identifier", "scoped_type_identifier", "scoped_use_list", "self_parameter", "shorthand_field_initializer", "slice_pattern", "source_file", "static_item", "string_literal", "struct_expression", "struct_item", "struct_pattern", "token_binding_pattern", "token_repetition", "token_repetition_pattern", "token_tree", "token_tree_pattern", "trait_bounds", "trait_item", "try_block", "try_expression", "tuple_expression", "tuple_pattern", "tuple_struct_pattern", "tuple_type", "type_arguments", "type_binding", "type_cast_expression", "type_item", "type_parameter", "type_parameters", "unary_expression", "union_item", "unit_expression", "unit_type", "unsafe_block", "use_as_clause", "use_bounds", "use_declaration", "use_list", "use_wildcard", "variadic_parameter", "visibility_modifier", "where_clause", "where_predicate", "while_expression", "yield_expression", "char_literal", "crate", "doc_comment", "escape_sequence", "field_identifier", "float_literal", "identifier", "integer_literal", "metavariable", "mutable_specifier", "primitive_type", "self", "shebang", "shorthand_field_identifier", "string_content", "super", "type_identifier"];
4
4
  export type RustNodeType = (typeof RUST_NODE_TYPES)[number];
5
+ export declare const PYTHON_NODE_TYPES: readonly ["expression_statement", "aliased_import", "argument_list", "as_pattern", "assert_statement", "assignment", "attribute", "augmented_assignment", "await", "binary_operator", "block", "boolean_operator", "break_statement", "call", "case_clause", "case_pattern", "chevron", "class_definition", "class_pattern", "comparison_operator", "complex_pattern", "concatenated_string", "conditional_expression", "constrained_type", "continue_statement", "decorated_definition", "decorator", "default_parameter", "delete_statement", "dict_pattern", "dictionary", "dictionary_comprehension", "dictionary_splat", "dictionary_splat_pattern", "dotted_name", "elif_clause", "else_clause", "except_clause", "exec_statement", "expression_list", "finally_clause", "for_in_clause", "for_statement", "format_expression", "format_specifier", "function_definition", "future_import_statement", "generator_expression", "generic_type", "global_statement", "if_clause", "if_statement", "import_from_statement", "import_prefix", "import_statement", "interpolation", "keyword_argument", "keyword_pattern", "keyword_separator", "lambda", "lambda_parameters", "list", "list_comprehension", "list_pattern", "list_splat", "list_splat_pattern", "match_statement", "member_type", "module", "named_expression", "nonlocal_statement", "not_operator", "pair", "parameters", "parenthesized_expression", "parenthesized_list_splat", "pass_statement", "pattern_list", "positional_separator", "print_statement", "raise_statement", "relative_import", "return_statement", "set", "set_comprehension", "slice", "splat_pattern", "splat_type", "string", "string_content", "subscript", "try_statement", "tuple", "tuple_expression", "tuple_pattern", "type", "type_alias_statement", "type_parameter", "typed_default_parameter", "typed_parameter", "unary_operator", "union_pattern", "union_type", "while_statement", "wildcard_import", "with_clause", "with_item", "with_statement", "yield", "comment", "ellipsis", "escape_interpolation", "escape_sequence", "false", "float", "identifier", "integer", "line_continuation", "none", "string_end", "string_start", "true", "type_conversion", "as_pattern_target"];
6
+ export type PythonNodeType = (typeof PYTHON_NODE_TYPES)[number];
5
7
  //# sourceMappingURL=node-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../src/types/node-types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,YAC/B,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,iCAAiC,EACjC,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,+BAA+B,EAC/B,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,sBAAsB,EACtB,6BAA6B,EAC7B,OAAO,EACP,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,0BAA0B,EAC1B,+BAA+B,EAC/B,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,sCAAsC,EACtC,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,4BAA4B,EAC5B,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,oBAAoB,EACpB,MAAM,EACN,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,EACnB,8BAA8B,EAC9B,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,gCAAgC,EAChC,4BAA4B,EAC5B,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,CACF,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,eAAe,YAC3B,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,uBAAuB,EACvB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,OAAO,EACP,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,yBAAyB,EACzB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,6BAA6B,EAC7B,2BAA2B,EAC3B,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,OAAO,EACP,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,gCAAgC,EAChC,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,0BAA0B,EAC1B,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,EAChB,6BAA6B,EAC7B,eAAe,EACf,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,4BAA4B,EAC5B,gBAAgB,EAChB,OAAO,EACP,iBAAiB,CACR,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../src/types/node-types.ts"],"names":[],"mappings":"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"}
@@ -289,4 +289,130 @@ export const RUST_NODE_TYPES = [
289
289
  "super",
290
290
  "type_identifier",
291
291
  ];
292
+ export const PYTHON_NODE_TYPES = [
293
+ "expression_statement",
294
+ "aliased_import",
295
+ "argument_list",
296
+ "as_pattern",
297
+ "assert_statement",
298
+ "assignment",
299
+ "attribute",
300
+ "augmented_assignment",
301
+ "await",
302
+ "binary_operator",
303
+ "block",
304
+ "boolean_operator",
305
+ "break_statement",
306
+ "call",
307
+ "case_clause",
308
+ "case_pattern",
309
+ "chevron",
310
+ "class_definition",
311
+ "class_pattern",
312
+ "comparison_operator",
313
+ "complex_pattern",
314
+ "concatenated_string",
315
+ "conditional_expression",
316
+ "constrained_type",
317
+ "continue_statement",
318
+ "decorated_definition",
319
+ "decorator",
320
+ "default_parameter",
321
+ "delete_statement",
322
+ "dict_pattern",
323
+ "dictionary",
324
+ "dictionary_comprehension",
325
+ "dictionary_splat",
326
+ "dictionary_splat_pattern",
327
+ "dotted_name",
328
+ "elif_clause",
329
+ "else_clause",
330
+ "except_clause",
331
+ "exec_statement",
332
+ "expression_list",
333
+ "finally_clause",
334
+ "for_in_clause",
335
+ "for_statement",
336
+ "format_expression",
337
+ "format_specifier",
338
+ "function_definition",
339
+ "future_import_statement",
340
+ "generator_expression",
341
+ "generic_type",
342
+ "global_statement",
343
+ "if_clause",
344
+ "if_statement",
345
+ "import_from_statement",
346
+ "import_prefix",
347
+ "import_statement",
348
+ "interpolation",
349
+ "keyword_argument",
350
+ "keyword_pattern",
351
+ "keyword_separator",
352
+ "lambda",
353
+ "lambda_parameters",
354
+ "list",
355
+ "list_comprehension",
356
+ "list_pattern",
357
+ "list_splat",
358
+ "list_splat_pattern",
359
+ "match_statement",
360
+ "member_type",
361
+ "module",
362
+ "named_expression",
363
+ "nonlocal_statement",
364
+ "not_operator",
365
+ "pair",
366
+ "parameters",
367
+ "parenthesized_expression",
368
+ "parenthesized_list_splat",
369
+ "pass_statement",
370
+ "pattern_list",
371
+ "positional_separator",
372
+ "print_statement",
373
+ "raise_statement",
374
+ "relative_import",
375
+ "return_statement",
376
+ "set",
377
+ "set_comprehension",
378
+ "slice",
379
+ "splat_pattern",
380
+ "splat_type",
381
+ "string",
382
+ "string_content",
383
+ "subscript",
384
+ "try_statement",
385
+ "tuple",
386
+ "tuple_expression",
387
+ "tuple_pattern",
388
+ "type",
389
+ "type_alias_statement",
390
+ "type_parameter",
391
+ "typed_default_parameter",
392
+ "typed_parameter",
393
+ "unary_operator",
394
+ "union_pattern",
395
+ "union_type",
396
+ "while_statement",
397
+ "wildcard_import",
398
+ "with_clause",
399
+ "with_item",
400
+ "with_statement",
401
+ "yield",
402
+ "comment",
403
+ "ellipsis",
404
+ "escape_interpolation",
405
+ "escape_sequence",
406
+ "false",
407
+ "float",
408
+ "identifier",
409
+ "integer",
410
+ "line_continuation",
411
+ "none",
412
+ "string_end",
413
+ "string_start",
414
+ "true",
415
+ "type_conversion",
416
+ "as_pattern_target",
417
+ ];
292
418
  //# sourceMappingURL=node-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-types.js","sourceRoot":"","sources":["../../src/types/node-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-types.js","sourceRoot":"","sources":["../../src/types/node-types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { GraphSnapshotNode } from "./graph_data.js";
1
+ import type { GraphSnapshotNode } from "./graph-data.js";
2
2
  import type { AnalysisEntrypointStatus, AnalysisTrigger, ChatMessageRole, ChatType, CodeVersionMethod, CodeVersionStatus, FindingDraftOperation, FindingLevel, FindingTransitionReason, ProjectKind } from "./literals.js";
3
3
  export interface ActionDetails {
4
4
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bevorai/sdk",
3
- "version": "0.2.0-rc4",
3
+ "version": "0.2.0-rc5",
4
4
  "description": "Typed client for the Bevor REST API",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1,137 +0,0 @@
1
- import type { EdgeDirection, EdgeType, Language, NodeVisibility } from "./literals.js";
2
- export interface GraphCallBinding {
3
- param_index: number;
4
- param_name: string;
5
- type_name: string | null;
6
- bound_to_field: string | null;
7
- bound_to_param_index: number | null;
8
- bound_to_ref_pos: number | null;
9
- bound_to_return_index: number | null;
10
- }
11
- export interface GraphCallChain {
12
- node_id: string;
13
- short_id: string;
14
- is_resolved: boolean;
15
- response_type: "json" | "text";
16
- call_nodes: GraphCallNode[] | string;
17
- }
18
- export interface GraphCallNode {
19
- node_id: string | null;
20
- short_id: string | null;
21
- name: string | null;
22
- node_type: string | null;
23
- edge_id: string | null;
24
- edge_type: EdgeType | null;
25
- low_level_name: string | null;
26
- target_effect_id: string | null;
27
- is_conditional: boolean;
28
- is_arg: boolean;
29
- is_cyclic: boolean;
30
- src_field_names: string[];
31
- dst_field_names: string[];
32
- resolved_bindings: GraphResolvedStorageAccess[];
33
- /**
34
- * Positions of this node's children in the chain, in call order.
35
- */
36
- children: number[];
37
- }
38
- export interface GraphConstraintItem {
39
- name: string;
40
- value: string[] | null;
41
- }
42
- export interface GraphFieldMetadataItem {
43
- name: string;
44
- type: string | null;
45
- value: string | null;
46
- mutability: string | null;
47
- discriminant: number | null;
48
- constraints: GraphConstraintItem[];
49
- }
50
- export interface GraphParameterStorageMetadata {
51
- param_index: number | null;
52
- start_byte: number;
53
- is_read: boolean;
54
- is_written: boolean;
55
- field: string | null;
56
- field_start_byte: number | null;
57
- param_name: string | null;
58
- type_name: string | null;
59
- bound_to_ref_pos: number | null;
60
- bound_to_return_index: number | null;
61
- }
62
- export interface GraphResolvedStorageAccess {
63
- edge_type: "reads" | "writes" | "uses";
64
- start_byte: number;
65
- bound_to_node_id: string;
66
- bound_to_short_id: string;
67
- bound_to_name: string | null;
68
- field: string | null;
69
- }
70
- export interface GraphReturnStorageMetadata {
71
- param_ind: number;
72
- param_name: string | null;
73
- type_name: string | null;
74
- bound_to_field: string | null;
75
- bound_to_param_index: number | null;
76
- bound_to_ref_pos: number | null;
77
- bound_to_return_index: number | null;
78
- }
79
- export interface GraphSnapshotEdge {
80
- id: string;
81
- src_id: string;
82
- dst_id: string | null;
83
- short_src_id: string;
84
- short_dst_id: string | null;
85
- edge_type: EdgeType;
86
- src_start_pos: number;
87
- call_bindings: GraphCallBinding[];
88
- src_field_names: string[];
89
- dst_field_names: string[];
90
- direction: EdgeDirection | null;
91
- is_conditional: boolean;
92
- target_effect_id: string | null;
93
- low_level_name: string | null;
94
- src_node_type: string;
95
- dst_node_type: string | null;
96
- is_synthetic: boolean;
97
- }
98
- export interface GraphSnapshotFile {
99
- id: string;
100
- language: Language;
101
- path: string;
102
- content_hash: string;
103
- is_dependency: boolean;
104
- is_config: boolean;
105
- is_test: boolean;
106
- is_script: boolean;
107
- labels: string[];
108
- include_in_graph: boolean;
109
- }
110
- export interface GraphSnapshotNode {
111
- id: string;
112
- file_id: string;
113
- file_path: string;
114
- short_id: string;
115
- node_type: string;
116
- sub_type: string | null;
117
- src_start_pos: number;
118
- src_end_pos: number;
119
- path: string;
120
- docstring: string | null;
121
- name: string;
122
- merkle_hash: string;
123
- dm_hash: string | null;
124
- visibility: NodeVisibility | null;
125
- mutability: string | null;
126
- is_virtual: boolean;
127
- is_implemented: boolean;
128
- signature: string | null;
129
- is_callable: boolean;
130
- is_declaration: boolean;
131
- is_container: boolean;
132
- is_entrypoint: boolean;
133
- fields: GraphFieldMetadataItem[];
134
- parameters: GraphParameterStorageMetadata[];
135
- returns: GraphReturnStorageMetadata[];
136
- }
137
- //# sourceMappingURL=graph_data.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graph_data.d.ts","sourceRoot":"","sources":["../../src/types/graph_data.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- // Generated by scripts/codegen/openapi.sh. Do not edit directly.
2
- export {};
3
- //# sourceMappingURL=graph_data.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graph_data.js","sourceRoot":"","sources":["../../src/types/graph_data.ts"],"names":[],"mappings":"AAAA,iEAAiE"}