@polintpro/proposit-core 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +102 -53
- package/dist/cli/commands/arguments.js +1 -1
- package/dist/cli/commands/arguments.js.map +1 -1
- package/dist/cli/commands/expressions.d.ts.map +1 -1
- package/dist/cli/commands/expressions.js +36 -6
- package/dist/cli/commands/expressions.js.map +1 -1
- package/dist/cli/commands/premises.d.ts.map +1 -1
- package/dist/cli/commands/premises.js +4 -4
- package/dist/cli/commands/premises.js.map +1 -1
- package/dist/cli/commands/roles.d.ts.map +1 -1
- package/dist/cli/commands/roles.js +9 -39
- package/dist/cli/commands/roles.js.map +1 -1
- package/dist/cli/engine.d.ts.map +1 -1
- package/dist/cli/engine.js +3 -4
- package/dist/cli/engine.js.map +1 -1
- package/dist/cli/import.d.ts.map +1 -1
- package/dist/cli/import.js +5 -6
- package/dist/cli/import.js.map +1 -1
- package/dist/cli/output/diffRenderer.d.ts.map +1 -1
- package/dist/cli/output/diffRenderer.js +3 -16
- package/dist/cli/output/diffRenderer.js.map +1 -1
- package/dist/cli/schemata.d.ts +7 -3
- package/dist/cli/schemata.d.ts.map +1 -1
- package/dist/cli/storage/arguments.js +2 -2
- package/dist/cli/storage/arguments.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/core/ArgumentEngine.d.ts +26 -19
- package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
- package/dist/lib/core/ArgumentEngine.js +93 -76
- package/dist/lib/core/ArgumentEngine.js.map +1 -1
- package/dist/lib/core/ChangeCollector.d.ts +26 -0
- package/dist/lib/core/ChangeCollector.d.ts.map +1 -0
- package/dist/lib/core/ChangeCollector.js +62 -0
- package/dist/lib/core/ChangeCollector.js.map +1 -0
- package/dist/lib/core/ExpressionManager.d.ts +19 -1
- package/dist/lib/core/ExpressionManager.d.ts.map +1 -1
- package/dist/lib/core/ExpressionManager.js +81 -46
- package/dist/lib/core/ExpressionManager.js.map +1 -1
- package/dist/lib/core/PremiseManager.d.ts +43 -7
- package/dist/lib/core/PremiseManager.d.ts.map +1 -1
- package/dist/lib/core/PremiseManager.js +291 -32
- package/dist/lib/core/PremiseManager.js.map +1 -1
- package/dist/lib/core/VariableManager.d.ts +2 -1
- package/dist/lib/core/VariableManager.d.ts.map +1 -1
- package/dist/lib/core/VariableManager.js +2 -2
- package/dist/lib/core/VariableManager.js.map +1 -1
- package/dist/lib/core/checksum.d.ts +15 -0
- package/dist/lib/core/checksum.d.ts.map +1 -0
- package/dist/lib/core/checksum.js +43 -0
- package/dist/lib/core/checksum.js.map +1 -0
- package/dist/lib/core/diff.d.ts.map +1 -1
- package/dist/lib/core/diff.js +2 -6
- package/dist/lib/core/diff.js.map +1 -1
- package/dist/lib/index.d.ts +5 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +4 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/schemata/argument.d.ts +1 -1
- package/dist/lib/schemata/argument.d.ts.map +1 -1
- package/dist/lib/schemata/argument.js +4 -2
- package/dist/lib/schemata/argument.js.map +1 -1
- package/dist/lib/schemata/propositional.d.ts +20 -9
- package/dist/lib/schemata/propositional.d.ts.map +1 -1
- package/dist/lib/schemata/propositional.js +10 -1
- package/dist/lib/schemata/propositional.js.map +1 -1
- package/dist/lib/types/checksum.d.ts +14 -0
- package/dist/lib/types/checksum.d.ts.map +1 -0
- package/dist/lib/types/checksum.js +2 -0
- package/dist/lib/types/checksum.js.map +1 -0
- package/dist/lib/types/diff.d.ts +0 -2
- package/dist/lib/types/diff.d.ts.map +1 -1
- package/dist/lib/types/evaluation.d.ts +1 -3
- package/dist/lib/types/evaluation.d.ts.map +1 -1
- package/dist/lib/types/mutation.d.ts +31 -0
- package/dist/lib/types/mutation.d.ts.map +1 -0
- package/dist/lib/types/mutation.js +2 -0
- package/dist/lib/types/mutation.js.map +1 -0
- package/dist/lib/utils/position.d.ts +5 -0
- package/dist/lib/utils/position.d.ts.map +1 -0
- package/dist/lib/utils/position.js +7 -0
- package/dist/lib/utils/position.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { getOrCreate, sortedUnique } from "../utils/collections.js";
|
|
3
|
+
import { ChangeCollector } from "./ChangeCollector.js";
|
|
4
|
+
import { computeHash, entityChecksum } from "./checksum.js";
|
|
3
5
|
import { kleeneAnd, kleeneNot, makeErrorIssue, makeValidationResult, } from "./evaluation/shared.js";
|
|
4
6
|
import { PremiseManager } from "./PremiseManager.js";
|
|
5
7
|
/**
|
|
@@ -12,13 +14,15 @@ import { PremiseManager } from "./PremiseManager.js";
|
|
|
12
14
|
export class ArgumentEngine {
|
|
13
15
|
argument;
|
|
14
16
|
premises;
|
|
15
|
-
supportingPremiseIds;
|
|
16
17
|
conclusionPremiseId;
|
|
17
|
-
|
|
18
|
+
checksumConfig;
|
|
19
|
+
checksumDirty = true;
|
|
20
|
+
cachedChecksum;
|
|
21
|
+
constructor(argument, options) {
|
|
18
22
|
this.argument = { ...argument };
|
|
19
23
|
this.premises = new Map();
|
|
20
|
-
this.supportingPremiseIds = new Set();
|
|
21
24
|
this.conclusionPremiseId = undefined;
|
|
25
|
+
this.checksumConfig = options?.checksumConfig;
|
|
22
26
|
}
|
|
23
27
|
/** Returns a shallow copy of the argument metadata. */
|
|
24
28
|
getArgument() {
|
|
@@ -29,10 +33,7 @@ export class ArgumentEngine {
|
|
|
29
33
|
* with this engine.
|
|
30
34
|
*/
|
|
31
35
|
createPremise(extras) {
|
|
32
|
-
|
|
33
|
-
const pm = new PremiseManager(id, this.argument, extras);
|
|
34
|
-
this.premises.set(id, pm);
|
|
35
|
-
return pm;
|
|
36
|
+
return this.createPremiseWithId(randomUUID(), extras);
|
|
36
37
|
}
|
|
37
38
|
/**
|
|
38
39
|
* Creates a premise with a caller-supplied ID and registers it with
|
|
@@ -44,20 +45,31 @@ export class ArgumentEngine {
|
|
|
44
45
|
if (this.premises.has(id)) {
|
|
45
46
|
throw new Error(`Premise "${id}" already exists.`);
|
|
46
47
|
}
|
|
47
|
-
const pm = new PremiseManager(id, this.argument, extras);
|
|
48
|
+
const pm = new PremiseManager(id, this.argument, extras, this.checksumConfig);
|
|
48
49
|
this.premises.set(id, pm);
|
|
49
|
-
|
|
50
|
+
const collector = new ChangeCollector();
|
|
51
|
+
collector.addedPremise(pm.toData());
|
|
52
|
+
this.markDirty();
|
|
53
|
+
return { result: pm, changes: collector.toChangeset() };
|
|
50
54
|
}
|
|
51
55
|
/**
|
|
52
56
|
* Removes a premise and clears any role assignments that reference it.
|
|
53
|
-
*
|
|
57
|
+
* Returns the removed premise data, or `undefined` if not found.
|
|
54
58
|
*/
|
|
55
59
|
removePremise(premiseId) {
|
|
60
|
+
const pm = this.premises.get(premiseId);
|
|
61
|
+
if (!pm)
|
|
62
|
+
return { result: undefined, changes: {} };
|
|
63
|
+
const data = pm.toData();
|
|
56
64
|
this.premises.delete(premiseId);
|
|
57
|
-
|
|
65
|
+
const collector = new ChangeCollector();
|
|
66
|
+
collector.removedPremise(data);
|
|
58
67
|
if (this.conclusionPremiseId === premiseId) {
|
|
59
68
|
this.conclusionPremiseId = undefined;
|
|
69
|
+
collector.setRoles(this.getRoleState());
|
|
60
70
|
}
|
|
71
|
+
this.markDirty();
|
|
72
|
+
return { result: data, changes: collector.toChangeset() };
|
|
61
73
|
}
|
|
62
74
|
/** Returns the premise with the given ID, or `undefined` if not found. */
|
|
63
75
|
getPremise(premiseId) {
|
|
@@ -77,31 +89,39 @@ export class ArgumentEngine {
|
|
|
77
89
|
.map((id) => this.premises.get(id))
|
|
78
90
|
.filter((pm) => pm !== undefined);
|
|
79
91
|
}
|
|
80
|
-
/** Returns the current role assignments (conclusion
|
|
92
|
+
/** Returns the current role assignments (conclusion premise ID only; supporting is derived). */
|
|
81
93
|
getRoleState() {
|
|
82
94
|
return {
|
|
83
|
-
|
|
84
|
-
|
|
95
|
+
...(this.conclusionPremiseId !== undefined
|
|
96
|
+
? { conclusionPremiseId: this.conclusionPremiseId }
|
|
97
|
+
: {}),
|
|
85
98
|
};
|
|
86
99
|
}
|
|
87
100
|
/**
|
|
88
101
|
* Designates a premise as the argument's conclusion.
|
|
89
102
|
*
|
|
90
103
|
* @throws If the premise does not exist.
|
|
91
|
-
* @throws If the premise is already a supporting premise.
|
|
92
104
|
*/
|
|
93
105
|
setConclusionPremise(premiseId) {
|
|
94
|
-
|
|
106
|
+
const premise = this.premises.get(premiseId);
|
|
107
|
+
if (!premise) {
|
|
95
108
|
throw new Error(`Premise "${premiseId}" does not exist.`);
|
|
96
109
|
}
|
|
97
|
-
if (this.supportingPremiseIds.has(premiseId)) {
|
|
98
|
-
throw new Error(`Premise "${premiseId}" is already a supporting premise and cannot also be the conclusion.`);
|
|
99
|
-
}
|
|
100
110
|
this.conclusionPremiseId = premiseId;
|
|
111
|
+
const roles = this.getRoleState();
|
|
112
|
+
const collector = new ChangeCollector();
|
|
113
|
+
collector.setRoles(roles);
|
|
114
|
+
this.markDirty();
|
|
115
|
+
return { result: roles, changes: collector.toChangeset() };
|
|
101
116
|
}
|
|
102
117
|
/** Clears the conclusion designation. */
|
|
103
118
|
clearConclusionPremise() {
|
|
104
119
|
this.conclusionPremiseId = undefined;
|
|
120
|
+
const roles = this.getRoleState();
|
|
121
|
+
const collector = new ChangeCollector();
|
|
122
|
+
collector.setRoles(roles);
|
|
123
|
+
this.markDirty();
|
|
124
|
+
return { result: roles, changes: collector.toChangeset() };
|
|
105
125
|
}
|
|
106
126
|
/** Returns the conclusion premise, or `undefined` if none is set. */
|
|
107
127
|
getConclusionPremise() {
|
|
@@ -111,34 +131,16 @@ export class ArgumentEngine {
|
|
|
111
131
|
return this.premises.get(this.conclusionPremiseId);
|
|
112
132
|
}
|
|
113
133
|
/**
|
|
114
|
-
*
|
|
115
|
-
*
|
|
116
|
-
* @throws If the premise does not exist.
|
|
117
|
-
* @throws If the premise is the conclusion.
|
|
134
|
+
* Returns all supporting premises (derived: inference premises that are
|
|
135
|
+
* not the conclusion) in lexicographic ID order.
|
|
118
136
|
*/
|
|
119
|
-
addSupportingPremise(premiseId) {
|
|
120
|
-
if (!this.hasPremise(premiseId)) {
|
|
121
|
-
throw new Error(`Premise "${premiseId}" does not exist.`);
|
|
122
|
-
}
|
|
123
|
-
if (this.conclusionPremiseId === premiseId) {
|
|
124
|
-
throw new Error(`Premise "${premiseId}" is the conclusion and cannot also be supporting.`);
|
|
125
|
-
}
|
|
126
|
-
this.supportingPremiseIds.add(premiseId);
|
|
127
|
-
}
|
|
128
|
-
/** Removes a premise from the supporting role. No-op if not supporting. */
|
|
129
|
-
removeSupportingPremise(premiseId) {
|
|
130
|
-
this.supportingPremiseIds.delete(premiseId);
|
|
131
|
-
}
|
|
132
|
-
/** Returns all supporting premises in lexicographic ID order. */
|
|
133
137
|
listSupportingPremises() {
|
|
134
|
-
return
|
|
135
|
-
.map((id) => this.premises.get(id))
|
|
136
|
-
.filter((pm) => pm !== undefined);
|
|
138
|
+
return this.listPremises().filter((pm) => pm.isInference() && pm.getId() !== this.conclusionPremiseId);
|
|
137
139
|
}
|
|
138
140
|
/** Returns a serializable snapshot of the full engine state. */
|
|
139
141
|
toData() {
|
|
140
142
|
return {
|
|
141
|
-
argument: { ...this.argument },
|
|
143
|
+
argument: { ...this.argument, checksum: this.checksum() },
|
|
142
144
|
premises: this.listPremises().map((pm) => pm.toData()),
|
|
143
145
|
roles: this.getRoleState(),
|
|
144
146
|
};
|
|
@@ -147,6 +149,34 @@ export class ArgumentEngine {
|
|
|
147
149
|
exportState() {
|
|
148
150
|
return this.toData();
|
|
149
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* Returns an argument-level checksum combining argument metadata, role
|
|
154
|
+
* state, and all premise checksums. Computed lazily -- only recalculated
|
|
155
|
+
* when the engine's own state has changed.
|
|
156
|
+
*/
|
|
157
|
+
checksum() {
|
|
158
|
+
if (this.checksumDirty || this.cachedChecksum === undefined) {
|
|
159
|
+
this.cachedChecksum = this.computeChecksum();
|
|
160
|
+
this.checksumDirty = false;
|
|
161
|
+
}
|
|
162
|
+
return this.cachedChecksum;
|
|
163
|
+
}
|
|
164
|
+
computeChecksum() {
|
|
165
|
+
const config = this.checksumConfig;
|
|
166
|
+
const parts = [];
|
|
167
|
+
// Argument metadata
|
|
168
|
+
parts.push(entityChecksum(this.argument, config?.argumentFields ?? ["id", "version"]));
|
|
169
|
+
// Role state
|
|
170
|
+
parts.push(entityChecksum(this.getRoleState(), config?.roleFields ?? ["conclusionPremiseId"]));
|
|
171
|
+
// Premise checksums (sorted by ID for determinism)
|
|
172
|
+
for (const pm of this.listPremises()) {
|
|
173
|
+
parts.push(pm.checksum());
|
|
174
|
+
}
|
|
175
|
+
return computeHash(parts.join(":"));
|
|
176
|
+
}
|
|
177
|
+
markDirty() {
|
|
178
|
+
this.checksumDirty = true;
|
|
179
|
+
}
|
|
150
180
|
/**
|
|
151
181
|
* Collects all variables referenced by expressions across all premises,
|
|
152
182
|
* indexed both by variable ID and by symbol.
|
|
@@ -218,23 +248,6 @@ export class ArgumentEngine {
|
|
|
218
248
|
premiseId: this.conclusionPremiseId,
|
|
219
249
|
}));
|
|
220
250
|
}
|
|
221
|
-
for (const premiseId of sortedUnique(this.supportingPremiseIds)) {
|
|
222
|
-
if (!this.premises.has(premiseId)) {
|
|
223
|
-
issues.push(makeErrorIssue({
|
|
224
|
-
code: "ARGUMENT_SUPPORTING_PREMISE_NOT_FOUND",
|
|
225
|
-
message: `Supporting premise "${premiseId}" does not exist.`,
|
|
226
|
-
premiseId,
|
|
227
|
-
}));
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
if (this.conclusionPremiseId !== undefined &&
|
|
231
|
-
this.supportingPremiseIds.has(this.conclusionPremiseId)) {
|
|
232
|
-
issues.push(makeErrorIssue({
|
|
233
|
-
code: "ARGUMENT_ROLE_OVERLAP",
|
|
234
|
-
message: `Premise "${this.conclusionPremiseId}" cannot be both supporting and conclusion.`,
|
|
235
|
-
premiseId: this.conclusionPremiseId,
|
|
236
|
-
}));
|
|
237
|
-
}
|
|
238
251
|
const idToSymbols = new Map();
|
|
239
252
|
const symbolToIds = new Map();
|
|
240
253
|
for (const premise of this.listPremises()) {
|
|
@@ -309,20 +322,20 @@ export class ArgumentEngine {
|
|
|
309
322
|
};
|
|
310
323
|
}
|
|
311
324
|
const supportingPremises = this.listSupportingPremises();
|
|
312
|
-
const
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
]);
|
|
316
|
-
const constraintPremises = this.listPremises().filter((pm) => !roleIds.has(pm.getId()) && pm.isConstraint());
|
|
325
|
+
const supportingIds = new Set(supportingPremises.map((pm) => pm.getId()));
|
|
326
|
+
const constraintPremises = this.listPremises().filter((pm) => pm.getId() !== this.conclusionPremiseId &&
|
|
327
|
+
!supportingIds.has(pm.getId()));
|
|
317
328
|
const allRelevantPremises = [
|
|
318
329
|
conclusion,
|
|
319
330
|
...supportingPremises,
|
|
320
331
|
...constraintPremises,
|
|
321
332
|
];
|
|
322
|
-
const referencedVariableIds =
|
|
323
|
-
.
|
|
324
|
-
|
|
325
|
-
|
|
333
|
+
const referencedVariableIds = [
|
|
334
|
+
...new Set(allRelevantPremises.flatMap((pm) => pm
|
|
335
|
+
.getExpressions()
|
|
336
|
+
.filter((expr) => expr.type === "variable")
|
|
337
|
+
.map((expr) => expr.variableId))),
|
|
338
|
+
].sort();
|
|
326
339
|
try {
|
|
327
340
|
const evalOpts = {
|
|
328
341
|
strictUnknownKeys: options?.strictUnknownAssignmentKeys ?? false,
|
|
@@ -412,15 +425,19 @@ export class ArgumentEngine {
|
|
|
412
425
|
};
|
|
413
426
|
}
|
|
414
427
|
const supportingPremises = this.listSupportingPremises();
|
|
415
|
-
const
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
.
|
|
428
|
+
const supportingIds = new Set(supportingPremises.map((pm) => pm.getId()));
|
|
429
|
+
const constraintPremises = this.listPremises().filter((pm) => pm.getId() !== this.conclusionPremiseId &&
|
|
430
|
+
!supportingIds.has(pm.getId()));
|
|
431
|
+
const checkedVariableIds = [
|
|
432
|
+
...new Set([
|
|
433
|
+
conclusion,
|
|
434
|
+
...supportingPremises,
|
|
435
|
+
...constraintPremises,
|
|
436
|
+
].flatMap((pm) => pm
|
|
437
|
+
.getExpressions()
|
|
438
|
+
.filter((expr) => expr.type === "variable")
|
|
439
|
+
.map((expr) => expr.variableId))),
|
|
440
|
+
].sort();
|
|
424
441
|
if (options?.maxVariables !== undefined &&
|
|
425
442
|
checkedVariableIds.length > options.maxVariables) {
|
|
426
443
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArgumentEngine.js","sourceRoot":"","sources":["../../../src/lib/core/ArgumentEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAmBxC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,oBAAoB,GACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD;;;;;;GAMG;AACH,MAAM,OAAO,cAAc;IACf,QAAQ,CAAe;IACvB,QAAQ,CAA6B;IACrC,oBAAoB,CAAa;IACjC,mBAAmB,CAAoB;IAE/C,YAAY,QAAuB;QAC/B,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAA;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAA;QACrC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;IACxC,CAAC;IAED,uDAAuD;IAChD,WAAW;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC/B,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,MAAgC;QACjD,MAAM,EAAE,GAAG,UAAU,EAAE,CAAA;QACvB,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACzB,OAAO,EAAE,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACI,mBAAmB,CACtB,EAAU,EACV,MAAgC;QAEhC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAA;QACtD,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACzB,OAAO,EAAE,CAAA;IACb,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,SAAiB;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/B,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC3C,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACxC,CAAC;IACL,CAAC;IAED,0EAA0E;IACnE,UAAU,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC;IAED,4DAA4D;IACrD,UAAU,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC;IAED,sDAAsD;IAC/C,cAAc;QACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAClD,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACrB,CAAA;IACL,CAAC;IAED,sDAAsD;IAC/C,YAAY;QACf,OAAO,IAAI,CAAC,cAAc,EAAE;aACvB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,EAAE,EAAwB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;IAC/D,CAAC;IAED,oFAAoF;IAC7E,YAAY;QACf,OAAO;YACH,oBAAoB,EAAE,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC;YAC7D,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;SAChD,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACI,oBAAoB,CAAC,SAAiB;QACzC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,mBAAmB,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CACX,YAAY,SAAS,sEAAsE,CAC9F,CAAA;QACL,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;IACxC,CAAC;IAED,yCAAyC;IAClC,sBAAsB;QACzB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;IACxC,CAAC;IAED,qEAAqE;IAC9D,oBAAoB;QACvB,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,SAAS,CAAA;QACpB,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACtD,CAAC;IAED;;;;;OAKG;IACI,oBAAoB,CAAC,SAAiB;QACzC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,mBAAmB,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACX,YAAY,SAAS,oDAAoD,CAC5E,CAAA;QACL,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC;IAED,2EAA2E;IACpE,uBAAuB,CAAC,SAAiB;QAC5C,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED,iEAAiE;IAC1D,sBAAsB;QACzB,OAAO,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC;aACzC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,EAAE,EAAwB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;IAC/D,CAAC;IAED,gEAAgE;IACzD,MAAM;QACT,OAAO;YACH,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE;YAC9B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;YACtD,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;SAC7B,CAAA;IACL,CAAC;IAED,gCAAgC;IACzB,WAAW;QACd,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACxB,CAAC;IAED;;;OAGG;IACI,0BAA0B;QAQ7B,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAA;QACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAGxB,CAAA;QAEH,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;YACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,CACpB,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAC/C,CAAA;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;oBAAE,SAAQ;gBACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC9C,IAAI,CAAC,QAAQ;oBAAE,SAAQ;gBAEvB,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBACvD,OAAO,EAAE,IAAI,GAAG,EAAU;oBAC1B,UAAU,EAAE,IAAI,GAAG,EAAU;iBAChC,CAAC,CAAC,CAAA;gBACH,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACtC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAEnC,MAAM,aAAa,GAAG,WAAW,CAC7B,WAAW,EACX,QAAQ,CAAC,MAAM,EACf,GAAG,EAAE,CAAC,CAAC;oBACH,WAAW,EAAE,IAAI,GAAG,EAAU;oBAC9B,UAAU,EAAE,IAAI,GAAG,EAAU;iBAChC,CAAC,CACL,CAAA;gBACD,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAC1C,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC3C,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GACN,EAAE,CAAA;QACN,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrC,EAAE,CAAC;YACA,IAAI,CAAC,UAAU,CAAC,GAAG;gBACf,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC5C,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;aAC7C,CAAA;QACL,CAAC;QAED,MAAM,QAAQ,GAGV,EAAE,CAAA;QACN,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrC,EAAE,CAAC;YACA,QAAQ,CAAC,MAAM,CAAC,GAAG;gBACf,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC5C,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;aAC7C,CAAA;QACL,CAAC;QAED,OAAO;YACH,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI;YACJ,QAAQ;SACX,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACI,oBAAoB;QACvB,MAAM,MAAM,GAA2B,EAAE,CAAA;QAEzC,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;gBACX,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,gDAAgD;aAC5D,CAAC,CACL,CAAA;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;gBACX,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,uBAAuB,IAAI,CAAC,mBAAmB,mBAAmB;gBAC3E,SAAS,EAAE,IAAI,CAAC,mBAAmB;aACtC,CAAC,CACL,CAAA;QACL,CAAC;QAED,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;oBACX,IAAI,EAAE,uCAAuC;oBAC7C,OAAO,EAAE,uBAAuB,SAAS,mBAAmB;oBAC5D,SAAS;iBACZ,CAAC,CACL,CAAA;YACL,CAAC;QACL,CAAC;QAED,IACI,IAAI,CAAC,mBAAmB,KAAK,SAAS;YACtC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,EACzD,CAAC;YACC,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;gBACX,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,YAAY,IAAI,CAAC,mBAAmB,6CAA6C;gBAC1F,SAAS,EAAE,IAAI,CAAC,mBAAmB;aACtC,CAAC,CACL,CAAA;QACL,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAA;QAClD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAA;QAClD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,GAAG,CACnB,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAC/C,CAAA;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;oBAAE,SAAQ;gBACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC7C,IAAI,CAAC,QAAQ;oBAAE,SAAQ;gBACvB,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,CACtD,QAAQ,CAAC,MAAM,CAClB,CAAA;gBACD,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,CAC1D,QAAQ,CAAC,EAAE,CACd,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;oBACX,IAAI,EAAE,sCAAsC;oBAC5C,OAAO,EAAE,gBAAgB,UAAU,oCAAoC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC1G,UAAU;iBACb,CAAC,CACL,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;oBACX,IAAI,EAAE,oCAAoC;oBAC1C,OAAO,EAAE,oBAAoB,MAAM,gCAAgC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;iBACrG,CAAC,CACL,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAA;YACxD,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC5C,CAAC;QAED,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,QAAQ,CACX,UAAqC,EACrC,OAAwC;QAExC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,IAAI,CAAA;QACpD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU;iBACb,CAAA;YACL,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EACH,gDAAgD;qBACvD,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACxD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS;YAC5B,UAAU,CAAC,KAAK,EAAE;YAClB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;SAChD,CAAC,CAAA;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CACjD,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,CACxD,CAAA;QAED,MAAM,mBAAmB,GAAG;YACxB,UAAU;YACV,GAAG,kBAAkB;YACrB,GAAG,kBAAkB;SACxB,CAAA;QACD,MAAM,qBAAqB,GAAG,YAAY,CACtC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAC/B,EAAE;aACG,cAAc,EAAE;aAChB,MAAM,CACH,CACI,IAAI,EAC4C,EAAE,CAClD,IAAI,CAAC,IAAI,KAAK,UAAU,CAC/B;aACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CACtC,CACJ,CAAA;QAED,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG;gBACb,iBAAiB,EACb,OAAO,EAAE,2BAA2B,IAAI,KAAK;aACpD,CAAA;YACD,MAAM,oBAAoB,GAAG,UAAU,CAAC,QAAQ,CAC5C,UAAU,EACV,QAAQ,CACX,CAAA;YACD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACxD,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CACpC,CAAA;YACD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACxD,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CACpC,CAAA;YAED,MAAM,sBAAsB,GACxB,qBAAqB,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,EACzD,IAAI,CACP,CAAA;YACL,MAAM,yBAAyB,GAC3B,qBAAqB,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,EACzD,IAAI,CACP,CAAA;YACL,MAAM,cAAc,GAChB,oBAAoB,CAAC,SAAS,IAAI,IAAI,CAAA;YAC1C,MAAM,gBAAgB,GAAG,SAAS,CAC9B,sBAAsB,EACtB,SAAS,CAAC,yBAAyB,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,CAClE,CAAA;YAED,MAAM,uBAAuB,GACzB,OAAO,EAAE,uBAAuB,IAAI,IAAI,CAAA;YAC5C,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAI,CAAA;YAC9D,MAAM,KAAK,GAAG,CACV,MAAoC,EACR,EAAE,CAAC,CAAC;gBAChC,GAAG,MAAM;gBACT,gBAAgB,EAAE,uBAAuB;oBACrC,CAAC,CAAC,MAAM,CAAC,gBAAgB;oBACzB,CAAC,CAAC,EAAE;gBACR,mBAAmB,EAAE,kBAAkB;oBACnC,CAAC,CAAC,MAAM,CAAC,mBAAmB;oBAC5B,CAAC,CAAC,SAAS;aAClB,CAAC,CAAA;YAEF,OAAO;gBACH,EAAE,EAAE,IAAI;gBACR,UAAU,EAAE;oBACR,SAAS,EAAE,EAAE,GAAG,UAAU,CAAC,SAAS,EAAE;oBACtC,qBAAqB,EAAE;wBACnB,GAAG,UAAU,CAAC,qBAAqB;qBACtC;iBACJ;gBACD,qBAAqB;gBACrB,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC;gBACvC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpD,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpD,sBAAsB;gBACtB,yBAAyB;gBACzB,cAAc;gBACd,gBAAgB;gBAChB,6BAA6B,EAAE,SAAS,CAAC,gBAAgB,CAAC;aAC7D,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EACH,KAAK,YAAY,KAAK;4BAClB,CAAC,CAAC,KAAK,CAAC,OAAO;4BACf,CAAC,CAAC,6BAA6B;qBAC1C,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACI,aAAa,CAChB,OAAmC;QAEnC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,IAAI,CAAA;QACpD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU;iBACb,CAAA;YACL,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EACH,gDAAgD;qBACvD,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACxD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS;YAC5B,UAAU,CAAC,KAAK,EAAE;YAClB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;SAChD,CAAC,CAAA;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CACjD,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,CACxD,CAAA;QAED,MAAM,kBAAkB,GAAG,YAAY,CACnC,CAAC,UAAU,EAAE,GAAG,kBAAkB,EAAE,GAAG,kBAAkB,CAAC,CAAC,OAAO,CAC9D,CAAC,EAAE,EAAE,EAAE,CACH,EAAE;aACG,cAAc,EAAE;aAChB,MAAM,CACH,CACI,IAAI,EAC4C,EAAE,CAClD,IAAI,CAAC,IAAI,KAAK,UAAU,CAC/B;aACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAC1C,CACJ,CAAA;QAED,IACI,OAAO,EAAE,YAAY,KAAK,SAAS;YACnC,kBAAkB,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,EAClD,CAAC;YACC,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EAAE,2BAA2B,kBAAkB,CAAC,MAAM,+BAA+B,OAAO,CAAC,YAAY,GAAG;qBACtH,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,qBAAqB,CAAA;QACnD,MAAM,qBAAqB,GAAG,OAAO,EAAE,qBAAqB,CAAA;QAC5D,MAAM,eAAe,GAA0B,EAAE,CAAA;QACjD,IAAI,qBAAqB,GAAG,CAAC,CAAA;QAC7B,IAAI,wBAAwB,GAAG,CAAC,CAAA;QAChC,IAAI,SAAS,GAAG,KAAK,CAAA;QAErB,MAAM,gBAAgB,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAA;QACvD,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC;YACjD,IACI,qBAAqB,KAAK,SAAS;gBACnC,qBAAqB,IAAI,qBAAqB,EAChD,CAAC;gBACC,SAAS,GAAG,IAAI,CAAA;gBAChB,MAAK;YACT,CAAC;YAED,MAAM,UAAU,GAA8B;gBAC1C,SAAS,EAAE,EAAE;gBACb,qBAAqB,EAAE,EAAE;aAC5B,CAAA;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,UAAU,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CACjD,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAClB,CAAA;YACL,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;gBACrC,aAAa,EAAE,KAAK;gBACpB,uBAAuB,EACnB,OAAO,EAAE,gCAAgC,IAAI,KAAK;gBACtD,kBAAkB,EACd,OAAO,EAAE,gCAAgC,IAAI,KAAK;aACzD,CAAC,CAAA;YAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACb,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,MAAM,CAAC,UAAU;iBAChC,CAAA;YACL,CAAC;YAED,qBAAqB,IAAI,CAAC,CAAA;YAE1B,IAAI,MAAM,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;gBACzC,wBAAwB,IAAI,CAAC,CAAA;YACjC,CAAC;YAED,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBACnC,eAAe,CAAC,IAAI,CAAC;oBACjB,UAAU,EAAE,MAAM,CAAC,UAAW;oBAC9B,MAAM;iBACT,CAAC,CAAA;gBACF,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;oBACjC,MAAK;gBACT,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAA;QACtD,MAAM,YAAY,GACd,CAAC,SAAS;YACV,CAAC,IAAI,KAAK,YAAY;gBAClB,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAEjE,OAAO;YACH,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,mBAAmB;gBACxB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,YAAY;oBACZ,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,SAAS;YACjB,kBAAkB;YAClB,qBAAqB;YACrB,wBAAwB;YACxB,eAAe;YACf,SAAS;SACZ,CAAA;IACL,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"ArgumentEngine.js","sourceRoot":"","sources":["../../../src/lib/core/ArgumentEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAsBxC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,oBAAoB,GACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD;;;;;;GAMG;AACH,MAAM,OAAO,cAAc;IACf,QAAQ,CAAe;IACvB,QAAQ,CAA6B;IACrC,mBAAmB,CAAoB;IACvC,cAAc,CAAsB;IACpC,aAAa,GAAG,IAAI,CAAA;IACpB,cAAc,CAAoB;IAE1C,YACI,QAAuB,EACvB,OAAkD;QAElD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAA;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACpC,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,cAAc,CAAA;IACjD,CAAC;IAED,uDAAuD;IAChD,WAAW;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC/B,CAAC;IAED;;;OAGG;IACI,aAAa,CAChB,MAAgC;QAEhC,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAA;IACzD,CAAC;IAED;;;;;OAKG;IACI,mBAAmB,CACtB,EAAU,EACV,MAAgC;QAEhC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAA;QACtD,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,cAAc,CACzB,EAAE,EACF,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,IAAI,CAAC,cAAc,CACtB,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACzB,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,EAAE,CAAA;QAChB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,CAAA;IAC3D,CAAC;IAED;;;OAGG;IACI,aAAa,CAChB,SAAiB;QAEjB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACvC,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;QAClD,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;YACpC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAA;QAChB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,CAAA;IAC7D,CAAC;IAED,0EAA0E;IACnE,UAAU,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC;IAED,4DAA4D;IACrD,UAAU,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC;IAED,sDAAsD;IAC/C,cAAc;QACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAClD,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACrB,CAAA;IACL,CAAC;IAED,sDAAsD;IAC/C,YAAY;QACf,OAAO,IAAI,CAAC,cAAc,EAAE;aACvB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,EAAE,EAAwB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;IAC/D,CAAC;IAED,gGAAgG;IACzF,YAAY;QACf,OAAO;YACH,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,SAAS;gBACtC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBACnD,CAAC,CAAC,EAAE,CAAC;SACZ,CAAA;IACL,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CACvB,SAAiB;QAEjB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,mBAAmB,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACzB,IAAI,CAAC,SAAS,EAAE,CAAA;QAChB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,CAAA;IAC9D,CAAC;IAED,yCAAyC;IAClC,sBAAsB;QACzB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACzB,IAAI,CAAC,SAAS,EAAE,CAAA;QAChB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,CAAA;IAC9D,CAAC;IAED,qEAAqE;IAC9D,oBAAoB;QACvB,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,SAAS,CAAA;QACpB,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACtD,CAAC;IAED;;;OAGG;IACI,sBAAsB;QACzB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAC7B,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,mBAAmB,CACtE,CAAA;IACL,CAAC;IAED,gEAAgE;IACzD,MAAM;QACT,OAAO;YACH,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE;YACzD,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;YACtD,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE;SAC7B,CAAA;IACL,CAAC;IAED,gCAAgC;IACzB,WAAW;QACd,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACxB,CAAC;IAED;;;;OAIG;IACI,QAAQ;QACX,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;YAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAA;IAC9B,CAAC;IAEO,eAAe;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAA;QAClC,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,oBAAoB;QACpB,KAAK,CAAC,IAAI,CACN,cAAc,CACV,IAAI,CAAC,QAA8C,EACnD,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAC9C,CACJ,CAAA;QAED,aAAa;QACb,KAAK,CAAC,IAAI,CACN,cAAc,CACV,IAAI,CAAC,YAAY,EAAwC,EACzD,MAAM,EAAE,UAAU,IAAI,CAAC,qBAAqB,CAAC,CAChD,CACJ,CAAA;QAED,mDAAmD;QACnD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC7B,CAAC;QAED,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACvC,CAAC;IAEO,SAAS;QACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;IAC7B,CAAC;IAED;;;OAGG;IACI,0BAA0B;QAQ7B,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAA;QACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAGxB,CAAA;QAEH,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;YACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,CACpB,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAC/C,CAAA;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;oBAAE,SAAQ;gBACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC9C,IAAI,CAAC,QAAQ;oBAAE,SAAQ;gBAEvB,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBACvD,OAAO,EAAE,IAAI,GAAG,EAAU;oBAC1B,UAAU,EAAE,IAAI,GAAG,EAAU;iBAChC,CAAC,CAAC,CAAA;gBACH,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACtC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAEnC,MAAM,aAAa,GAAG,WAAW,CAC7B,WAAW,EACX,QAAQ,CAAC,MAAM,EACf,GAAG,EAAE,CAAC,CAAC;oBACH,WAAW,EAAE,IAAI,GAAG,EAAU;oBAC9B,UAAU,EAAE,IAAI,GAAG,EAAU;iBAChC,CAAC,CACL,CAAA;gBACD,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAC1C,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC3C,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GACN,EAAE,CAAA;QACN,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrC,EAAE,CAAC;YACA,IAAI,CAAC,UAAU,CAAC,GAAG;gBACf,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC5C,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;aAC7C,CAAA;QACL,CAAC;QAED,MAAM,QAAQ,GAGV,EAAE,CAAA;QACN,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrC,EAAE,CAAC;YACA,QAAQ,CAAC,MAAM,CAAC,GAAG;gBACf,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC5C,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;aAC7C,CAAA;QACL,CAAC;QAED,OAAO;YACH,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI;YACJ,QAAQ;SACX,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACI,oBAAoB;QACvB,MAAM,MAAM,GAA2B,EAAE,CAAA;QAEzC,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;gBACX,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,gDAAgD;aAC5D,CAAC,CACL,CAAA;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;gBACX,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,uBAAuB,IAAI,CAAC,mBAAmB,mBAAmB;gBAC3E,SAAS,EAAE,IAAI,CAAC,mBAAmB;aACtC,CAAC,CACL,CAAA;QACL,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAA;QAClD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAA;QAClD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,GAAG,CACnB,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAC/C,CAAA;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;oBAAE,SAAQ;gBACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC7C,IAAI,CAAC,QAAQ;oBAAE,SAAQ;gBACvB,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,CACtD,QAAQ,CAAC,MAAM,CAClB,CAAA;gBACD,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,CAC1D,QAAQ,CAAC,EAAE,CACd,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;oBACX,IAAI,EAAE,sCAAsC;oBAC5C,OAAO,EAAE,gBAAgB,UAAU,oCAAoC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC1G,UAAU;iBACb,CAAC,CACL,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CACP,cAAc,CAAC;oBACX,IAAI,EAAE,oCAAoC;oBAC1C,OAAO,EAAE,oBAAoB,MAAM,gCAAgC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;iBACrG,CAAC,CACL,CAAA;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,MAAM,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAA;YACxD,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC5C,CAAC;QAED,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,QAAQ,CACX,UAAqC,EACrC,OAAwC;QAExC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,IAAI,CAAA;QACpD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU;iBACb,CAAA;YACL,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EACH,gDAAgD;qBACvD,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CACzB,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAC7C,CAAA;QACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CACjD,CAAC,EAAE,EAAE,EAAE,CACH,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,mBAAmB;YACvC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CACrC,CAAA;QAED,MAAM,mBAAmB,GAAG;YACxB,UAAU;YACV,GAAG,kBAAkB;YACrB,GAAG,kBAAkB;SACxB,CAAA;QACD,MAAM,qBAAqB,GAAG;YAC1B,GAAG,IAAI,GAAG,CACN,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAC/B,EAAE;iBACG,cAAc,EAAE;iBAChB,MAAM,CACH,CACI,IAAI,EAC4C,EAAE,CAClD,IAAI,CAAC,IAAI,KAAK,UAAU,CAC/B;iBACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CACtC,CACJ;SACJ,CAAC,IAAI,EAAE,CAAA;QAER,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG;gBACb,iBAAiB,EACb,OAAO,EAAE,2BAA2B,IAAI,KAAK;aACpD,CAAA;YACD,MAAM,oBAAoB,GAAG,UAAU,CAAC,QAAQ,CAC5C,UAAU,EACV,QAAQ,CACX,CAAA;YACD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACxD,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CACpC,CAAA;YACD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACxD,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CACpC,CAAA;YAED,MAAM,sBAAsB,GACxB,qBAAqB,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,EACzD,IAAI,CACP,CAAA;YACL,MAAM,yBAAyB,GAC3B,qBAAqB,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,EACzD,IAAI,CACP,CAAA;YACL,MAAM,cAAc,GAChB,oBAAoB,CAAC,SAAS,IAAI,IAAI,CAAA;YAC1C,MAAM,gBAAgB,GAAG,SAAS,CAC9B,sBAAsB,EACtB,SAAS,CAAC,yBAAyB,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,CAClE,CAAA;YAED,MAAM,uBAAuB,GACzB,OAAO,EAAE,uBAAuB,IAAI,IAAI,CAAA;YAC5C,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAI,CAAA;YAC9D,MAAM,KAAK,GAAG,CACV,MAAoC,EACR,EAAE,CAAC,CAAC;gBAChC,GAAG,MAAM;gBACT,gBAAgB,EAAE,uBAAuB;oBACrC,CAAC,CAAC,MAAM,CAAC,gBAAgB;oBACzB,CAAC,CAAC,EAAE;gBACR,mBAAmB,EAAE,kBAAkB;oBACnC,CAAC,CAAC,MAAM,CAAC,mBAAmB;oBAC5B,CAAC,CAAC,SAAS;aAClB,CAAC,CAAA;YAEF,OAAO;gBACH,EAAE,EAAE,IAAI;gBACR,UAAU,EAAE;oBACR,SAAS,EAAE,EAAE,GAAG,UAAU,CAAC,SAAS,EAAE;oBACtC,qBAAqB,EAAE;wBACnB,GAAG,UAAU,CAAC,qBAAqB;qBACtC;iBACJ;gBACD,qBAAqB;gBACrB,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC;gBACvC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpD,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpD,sBAAsB;gBACtB,yBAAyB;gBACzB,cAAc;gBACd,gBAAgB;gBAChB,6BAA6B,EAAE,SAAS,CAAC,gBAAgB,CAAC;aAC7D,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EACH,KAAK,YAAY,KAAK;4BAClB,CAAC,CAAC,KAAK,CAAC,OAAO;4BACf,CAAC,CAAC,6BAA6B;qBAC1C,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACI,aAAa,CAChB,OAAmC;QAEnC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,IAAI,CAAA;QACpD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU;iBACb,CAAA;YACL,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EACH,gDAAgD;qBACvD,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CACzB,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAC7C,CAAA;QACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CACjD,CAAC,EAAE,EAAE,EAAE,CACH,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,mBAAmB;YACvC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CACrC,CAAA;QAED,MAAM,kBAAkB,GAAG;YACvB,GAAG,IAAI,GAAG,CACN;gBACI,UAAU;gBACV,GAAG,kBAAkB;gBACrB,GAAG,kBAAkB;aACxB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CACb,EAAE;iBACG,cAAc,EAAE;iBAChB,MAAM,CACH,CACI,IAAI,EAC4C,EAAE,CAClD,IAAI,CAAC,IAAI,KAAK,UAAU,CAC/B;iBACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CACtC,CACJ;SACJ,CAAC,IAAI,EAAE,CAAA;QAER,IACI,OAAO,EAAE,YAAY,KAAK,SAAS;YACnC,kBAAkB,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,EAClD,CAAC;YACC,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,oBAAoB,CAAC;oBAC7B,cAAc,CAAC;wBACX,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EAAE,2BAA2B,kBAAkB,CAAC,MAAM,+BAA+B,OAAO,CAAC,YAAY,GAAG;qBACtH,CAAC;iBACL,CAAC;aACL,CAAA;QACL,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,qBAAqB,CAAA;QACnD,MAAM,qBAAqB,GAAG,OAAO,EAAE,qBAAqB,CAAA;QAC5D,MAAM,eAAe,GAA0B,EAAE,CAAA;QACjD,IAAI,qBAAqB,GAAG,CAAC,CAAA;QAC7B,IAAI,wBAAwB,GAAG,CAAC,CAAA;QAChC,IAAI,SAAS,GAAG,KAAK,CAAA;QAErB,MAAM,gBAAgB,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAA;QACvD,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC;YACjD,IACI,qBAAqB,KAAK,SAAS;gBACnC,qBAAqB,IAAI,qBAAqB,EAChD,CAAC;gBACC,SAAS,GAAG,IAAI,CAAA;gBAChB,MAAK;YACT,CAAC;YAED,MAAM,UAAU,GAA8B;gBAC1C,SAAS,EAAE,EAAE;gBACb,qBAAqB,EAAE,EAAE;aAC5B,CAAA;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,UAAU,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CACjD,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAClB,CAAA;YACL,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;gBACrC,aAAa,EAAE,KAAK;gBACpB,uBAAuB,EACnB,OAAO,EAAE,gCAAgC,IAAI,KAAK;gBACtD,kBAAkB,EACd,OAAO,EAAE,gCAAgC,IAAI,KAAK;aACzD,CAAC,CAAA;YAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACb,OAAO;oBACH,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,MAAM,CAAC,UAAU;iBAChC,CAAA;YACL,CAAC;YAED,qBAAqB,IAAI,CAAC,CAAA;YAE1B,IAAI,MAAM,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;gBACzC,wBAAwB,IAAI,CAAC,CAAA;YACjC,CAAC;YAED,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBACnC,eAAe,CAAC,IAAI,CAAC;oBACjB,UAAU,EAAE,MAAM,CAAC,UAAW;oBAC9B,MAAM;iBACT,CAAC,CAAA;gBACF,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;oBACjC,MAAK;gBACT,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAA;QACtD,MAAM,YAAY,GACd,CAAC,SAAS;YACV,CAAC,IAAI,KAAK,YAAY;gBAClB,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAEjE,OAAO;YACH,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,mBAAmB;gBACxB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,YAAY;oBACZ,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,SAAS;YACjB,kBAAkB;YAClB,qBAAqB;YACrB,wBAAwB;YACxB,eAAe;YACf,SAAS;SACZ,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { TCorePropositionalExpression, TCorePropositionalVariable, TCorePremise } from "../schemata/index.js";
|
|
2
|
+
import type { TCoreArgument, TCoreArgumentRoleState } from "../schemata/argument.js";
|
|
3
|
+
import type { TCoreChangeset } from "../types/mutation.js";
|
|
4
|
+
/**
|
|
5
|
+
* Internal collector used during a single mutation to accumulate all
|
|
6
|
+
* side-effect changes. Created at the start of a public mutating method,
|
|
7
|
+
* populated by internal helpers, and consumed via toChangeset().
|
|
8
|
+
*/
|
|
9
|
+
export declare class ChangeCollector {
|
|
10
|
+
private expressions;
|
|
11
|
+
private variables;
|
|
12
|
+
private premises;
|
|
13
|
+
private roles;
|
|
14
|
+
private argument;
|
|
15
|
+
addedExpression(expr: TCorePropositionalExpression): void;
|
|
16
|
+
modifiedExpression(expr: TCorePropositionalExpression): void;
|
|
17
|
+
removedExpression(expr: TCorePropositionalExpression): void;
|
|
18
|
+
addedVariable(variable: TCorePropositionalVariable): void;
|
|
19
|
+
removedVariable(variable: TCorePropositionalVariable): void;
|
|
20
|
+
addedPremise(premise: TCorePremise): void;
|
|
21
|
+
removedPremise(premise: TCorePremise): void;
|
|
22
|
+
setRoles(roles: TCoreArgumentRoleState): void;
|
|
23
|
+
setArgument(argument: TCoreArgument): void;
|
|
24
|
+
toChangeset(): TCoreChangeset;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ChangeCollector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangeCollector.d.ts","sourceRoot":"","sources":["../../../src/lib/core/ChangeCollector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,4BAA4B,EAC5B,0BAA0B,EAC1B,YAAY,EACf,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,aAAa,EACb,sBAAsB,EACzB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAsB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAc9E;;;;GAIG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,WAAW,CACK;IACxB,OAAO,CAAC,SAAS,CACO;IACxB,OAAO,CAAC,QAAQ,CAAyD;IACzE,OAAO,CAAC,KAAK,CAAgD;IAC7D,OAAO,CAAC,QAAQ,CAAuC;IAEvD,eAAe,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI;IAGzD,kBAAkB,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI;IAG5D,iBAAiB,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI;IAI3D,aAAa,CAAC,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAGzD,eAAe,CAAC,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAI3D,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAGzC,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI3C,QAAQ,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;IAI7C,WAAW,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAI1C,WAAW,IAAI,cAAc;CAUhC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
function emptyEntityChanges() {
|
|
2
|
+
return { added: [], modified: [], removed: [] };
|
|
3
|
+
}
|
|
4
|
+
function isEntityChangesEmpty(ec) {
|
|
5
|
+
return (ec.added.length === 0 &&
|
|
6
|
+
ec.modified.length === 0 &&
|
|
7
|
+
ec.removed.length === 0);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Internal collector used during a single mutation to accumulate all
|
|
11
|
+
* side-effect changes. Created at the start of a public mutating method,
|
|
12
|
+
* populated by internal helpers, and consumed via toChangeset().
|
|
13
|
+
*/
|
|
14
|
+
export class ChangeCollector {
|
|
15
|
+
expressions = emptyEntityChanges();
|
|
16
|
+
variables = emptyEntityChanges();
|
|
17
|
+
premises = emptyEntityChanges();
|
|
18
|
+
roles = undefined;
|
|
19
|
+
argument = undefined;
|
|
20
|
+
addedExpression(expr) {
|
|
21
|
+
this.expressions.added.push(expr);
|
|
22
|
+
}
|
|
23
|
+
modifiedExpression(expr) {
|
|
24
|
+
this.expressions.modified.push(expr);
|
|
25
|
+
}
|
|
26
|
+
removedExpression(expr) {
|
|
27
|
+
this.expressions.removed.push(expr);
|
|
28
|
+
}
|
|
29
|
+
addedVariable(variable) {
|
|
30
|
+
this.variables.added.push(variable);
|
|
31
|
+
}
|
|
32
|
+
removedVariable(variable) {
|
|
33
|
+
this.variables.removed.push(variable);
|
|
34
|
+
}
|
|
35
|
+
addedPremise(premise) {
|
|
36
|
+
this.premises.added.push(premise);
|
|
37
|
+
}
|
|
38
|
+
removedPremise(premise) {
|
|
39
|
+
this.premises.removed.push(premise);
|
|
40
|
+
}
|
|
41
|
+
setRoles(roles) {
|
|
42
|
+
this.roles = roles;
|
|
43
|
+
}
|
|
44
|
+
setArgument(argument) {
|
|
45
|
+
this.argument = argument;
|
|
46
|
+
}
|
|
47
|
+
toChangeset() {
|
|
48
|
+
const cs = {};
|
|
49
|
+
if (!isEntityChangesEmpty(this.expressions))
|
|
50
|
+
cs.expressions = this.expressions;
|
|
51
|
+
if (!isEntityChangesEmpty(this.variables))
|
|
52
|
+
cs.variables = this.variables;
|
|
53
|
+
if (!isEntityChangesEmpty(this.premises))
|
|
54
|
+
cs.premises = this.premises;
|
|
55
|
+
if (this.roles !== undefined)
|
|
56
|
+
cs.roles = this.roles;
|
|
57
|
+
if (this.argument !== undefined)
|
|
58
|
+
cs.argument = this.argument;
|
|
59
|
+
return cs;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=ChangeCollector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangeCollector.js","sourceRoot":"","sources":["../../../src/lib/core/ChangeCollector.ts"],"names":[],"mappings":"AAWA,SAAS,kBAAkB;IACvB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;AACnD,CAAC;AAED,SAAS,oBAAoB,CAAI,EAAyB;IACtD,OAAO,CACH,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QACrB,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QACxB,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAC1B,CAAA;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,eAAe;IAChB,WAAW,GACf,kBAAkB,EAAE,CAAA;IAChB,SAAS,GACb,kBAAkB,EAAE,CAAA;IAChB,QAAQ,GAAqC,kBAAkB,EAAE,CAAA;IACjE,KAAK,GAAuC,SAAS,CAAA;IACrD,QAAQ,GAA8B,SAAS,CAAA;IAEvD,eAAe,CAAC,IAAkC;QAC9C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IACD,kBAAkB,CAAC,IAAkC;QACjD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IACD,iBAAiB,CAAC,IAAkC;QAChD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,aAAa,CAAC,QAAoC;QAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvC,CAAC;IACD,eAAe,CAAC,QAAoC;QAChD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,YAAY,CAAC,OAAqB;QAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IACD,cAAc,CAAC,OAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvC,CAAC;IAED,QAAQ,CAAC,KAA6B;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,WAAW,CAAC,QAAuB;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,WAAW;QACP,MAAM,EAAE,GAAmB,EAAE,CAAA;QAC7B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;YACvC,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QACxE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QACrE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACnD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC5D,OAAO,EAAE,CAAA;IACb,CAAC;CACJ"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { TCorePropositionalExpression } from "../schemata/index.js";
|
|
2
|
+
import type { ChangeCollector } from "./ChangeCollector.js";
|
|
3
|
+
export type TExpressionWithoutPosition = TCorePropositionalExpression extends infer U ? U extends TCorePropositionalExpression ? Omit<U, "position"> : never : never;
|
|
2
4
|
/**
|
|
3
5
|
* Low-level manager for a flat-stored expression tree.
|
|
4
6
|
*
|
|
@@ -14,8 +16,10 @@ export declare class ExpressionManager {
|
|
|
14
16
|
private expressions;
|
|
15
17
|
private childExpressionIdsByParentId;
|
|
16
18
|
private childPositionsByParentId;
|
|
19
|
+
private collector;
|
|
20
|
+
setCollector(collector: ChangeCollector | null): void;
|
|
17
21
|
constructor(initialExpressions?: TCorePropositionalExpression[]);
|
|
18
|
-
/** Returns all expressions
|
|
22
|
+
/** Returns all expressions sorted by ID for deterministic output. */
|
|
19
23
|
toArray(): TCorePropositionalExpression[];
|
|
20
24
|
/**
|
|
21
25
|
* Adds an expression to the tree.
|
|
@@ -28,6 +32,20 @@ export declare class ExpressionManager {
|
|
|
28
32
|
* @throws If the position is already occupied under the parent.
|
|
29
33
|
*/
|
|
30
34
|
addExpression(expression: TCorePropositionalExpression): void;
|
|
35
|
+
/**
|
|
36
|
+
* Adds an expression as the last child of the given parent.
|
|
37
|
+
*
|
|
38
|
+
* If the parent has no children, the expression gets `POSITION_INITIAL`.
|
|
39
|
+
* Otherwise it gets a midpoint between the last child's position and
|
|
40
|
+
* `POSITION_MAX`.
|
|
41
|
+
*/
|
|
42
|
+
appendExpression(parentId: string | null, expression: TExpressionWithoutPosition): void;
|
|
43
|
+
/**
|
|
44
|
+
* Adds an expression immediately before or after an existing sibling.
|
|
45
|
+
*
|
|
46
|
+
* @throws If the sibling does not exist.
|
|
47
|
+
*/
|
|
48
|
+
addExpressionRelative(siblingId: string, relativePosition: "before" | "after", expression: TExpressionWithoutPosition): void;
|
|
31
49
|
/**
|
|
32
50
|
* Removes an expression and its entire descendant subtree.
|
|
33
51
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,4BAA4B,EAC/B,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"ExpressionManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,4BAA4B,EAC/B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAU3D,MAAM,MAAM,0BAA0B,GAClC,4BAA4B,SAAS,MAAM,CAAC,GACtC,CAAC,SAAS,4BAA4B,GAClC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GACnB,KAAK,GACT,KAAK,CAAA;AAEf;;;;;;;;;;GAUG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,WAAW,CAA2C;IAC9D,OAAO,CAAC,4BAA4B,CAAiC;IACrE,OAAO,CAAC,wBAAwB,CAAiC;IACjE,OAAO,CAAC,SAAS,CAA+B;IAEhD,YAAY,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;gBAIzC,kBAAkB,GAAE,4BAA4B,EAAO;IAQnE,qEAAqE;IAC9D,OAAO,IAAI,4BAA4B,EAAE;IAMhD;;;;;;;;;OASG;IACI,aAAa,CAAC,UAAU,EAAE,4BAA4B;IAuE7D;;;;;;OAMG;IACI,gBAAgB,CACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,UAAU,EAAE,0BAA0B,GACvC,IAAI;IAaP;;;;OAIG;IACI,qBAAqB,CACxB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,QAAQ,GAAG,OAAO,EACpC,UAAU,EAAE,0BAA0B,GACvC,IAAI;IAmCP;;;;;;;;OAQG;IACI,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAmD5C,OAAO,CAAC,gBAAgB;IAmFxB,qFAAqF;IAC9E,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAYxD,6EAA6E;IACtE,aAAa,CAChB,YAAY,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAI3C,oEAAoE;IAC7D,mBAAmB,CACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACxB,4BAA4B,EAAE;IAiBjC,OAAO,CAAC,sBAAsB;IAqC9B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,QAAQ;IAqChB;;;;;;;;;;;;;;;;;OAiBG;IACI,gBAAgB,CACnB,UAAU,EAAE,4BAA4B,EACxC,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,GACrB,IAAI;CAyIV"}
|