@polintpro/proposit-core 0.3.0 → 0.5.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.
Files changed (126) hide show
  1. package/README.md +13 -0
  2. package/dist/cli/commands/sources.d.ts +3 -0
  3. package/dist/cli/commands/sources.d.ts.map +1 -0
  4. package/dist/cli/commands/sources.js +118 -0
  5. package/dist/cli/commands/sources.js.map +1 -0
  6. package/dist/cli/commands/variables.d.ts.map +1 -1
  7. package/dist/cli/commands/variables.js +3 -0
  8. package/dist/cli/commands/variables.js.map +1 -1
  9. package/dist/cli/config.d.ts +2 -0
  10. package/dist/cli/config.d.ts.map +1 -1
  11. package/dist/cli/config.js +6 -0
  12. package/dist/cli/config.js.map +1 -1
  13. package/dist/cli/engine.d.ts.map +1 -1
  14. package/dist/cli/engine.js +35 -2
  15. package/dist/cli/engine.js.map +1 -1
  16. package/dist/cli/import.d.ts.map +1 -1
  17. package/dist/cli/import.js +7 -1
  18. package/dist/cli/import.js.map +1 -1
  19. package/dist/cli/schemata.d.ts +8 -0
  20. package/dist/cli/schemata.d.ts.map +1 -1
  21. package/dist/cli/schemata.js +10 -0
  22. package/dist/cli/schemata.js.map +1 -1
  23. package/dist/cli/storage/sources.d.ts +11 -0
  24. package/dist/cli/storage/sources.d.ts.map +1 -0
  25. package/dist/cli/storage/sources.js +105 -0
  26. package/dist/cli/storage/sources.js.map +1 -0
  27. package/dist/cli.js +2 -0
  28. package/dist/cli.js.map +1 -1
  29. package/dist/extensions/ieee/index.d.ts +3 -0
  30. package/dist/extensions/ieee/index.d.ts.map +1 -0
  31. package/dist/extensions/ieee/index.js +3 -0
  32. package/dist/extensions/ieee/index.js.map +1 -0
  33. package/dist/extensions/ieee/references.d.ts +620 -0
  34. package/dist/extensions/ieee/references.d.ts.map +1 -0
  35. package/dist/extensions/ieee/references.js +450 -0
  36. package/dist/extensions/ieee/references.js.map +1 -0
  37. package/dist/extensions/ieee/source.d.ts +286 -0
  38. package/dist/extensions/ieee/source.d.ts.map +1 -0
  39. package/dist/extensions/ieee/source.js +12 -0
  40. package/dist/extensions/ieee/source.js.map +1 -0
  41. package/dist/lib/consts.d.ts.map +1 -1
  42. package/dist/lib/consts.js +31 -1
  43. package/dist/lib/consts.js.map +1 -1
  44. package/dist/lib/core/argument-engine.d.ts +25 -117
  45. package/dist/lib/core/argument-engine.d.ts.map +1 -1
  46. package/dist/lib/core/argument-engine.js +239 -123
  47. package/dist/lib/core/argument-engine.js.map +1 -1
  48. package/dist/lib/core/assertion-library.d.ts +27 -0
  49. package/dist/lib/core/assertion-library.d.ts.map +1 -0
  50. package/dist/lib/core/assertion-library.js +129 -0
  51. package/dist/lib/core/assertion-library.js.map +1 -0
  52. package/dist/lib/core/change-collector.d.ts +7 -5
  53. package/dist/lib/core/change-collector.d.ts.map +1 -1
  54. package/dist/lib/core/change-collector.js +18 -5
  55. package/dist/lib/core/change-collector.js.map +1 -1
  56. package/dist/lib/core/diff.d.ts +6 -2
  57. package/dist/lib/core/diff.d.ts.map +1 -1
  58. package/dist/lib/core/diff.js +80 -1
  59. package/dist/lib/core/diff.js.map +1 -1
  60. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +338 -0
  61. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -0
  62. package/dist/lib/core/interfaces/argument-engine.interfaces.js +2 -0
  63. package/dist/lib/core/interfaces/argument-engine.interfaces.js.map +1 -0
  64. package/dist/lib/core/interfaces/index.d.ts +6 -0
  65. package/dist/lib/core/interfaces/index.d.ts.map +1 -0
  66. package/dist/lib/core/interfaces/index.js +2 -0
  67. package/dist/lib/core/interfaces/index.js.map +1 -0
  68. package/dist/lib/core/interfaces/library.interfaces.d.ts +19 -0
  69. package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -0
  70. package/dist/lib/core/interfaces/library.interfaces.js +2 -0
  71. package/dist/lib/core/interfaces/library.interfaces.js.map +1 -0
  72. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts +318 -0
  73. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts.map +1 -0
  74. package/dist/lib/core/interfaces/premise-engine.interfaces.js +2 -0
  75. package/dist/lib/core/interfaces/premise-engine.interfaces.js.map +1 -0
  76. package/dist/lib/core/interfaces/shared.interfaces.d.ts +24 -0
  77. package/dist/lib/core/interfaces/shared.interfaces.d.ts.map +1 -0
  78. package/dist/lib/core/interfaces/shared.interfaces.js +2 -0
  79. package/dist/lib/core/interfaces/shared.interfaces.js.map +1 -0
  80. package/dist/lib/core/interfaces/source-management.interfaces.d.ts +63 -0
  81. package/dist/lib/core/interfaces/source-management.interfaces.d.ts.map +1 -0
  82. package/dist/lib/core/interfaces/source-management.interfaces.js +2 -0
  83. package/dist/lib/core/interfaces/source-management.interfaces.js.map +1 -0
  84. package/dist/lib/core/premise-engine.d.ts +10 -144
  85. package/dist/lib/core/premise-engine.d.ts.map +1 -1
  86. package/dist/lib/core/premise-engine.js +82 -143
  87. package/dist/lib/core/premise-engine.js.map +1 -1
  88. package/dist/lib/core/source-library.d.ts +27 -0
  89. package/dist/lib/core/source-library.d.ts.map +1 -0
  90. package/dist/lib/core/source-library.js +129 -0
  91. package/dist/lib/core/source-library.js.map +1 -0
  92. package/dist/lib/core/source-manager.d.ts +38 -0
  93. package/dist/lib/core/source-manager.d.ts.map +1 -0
  94. package/dist/lib/core/source-manager.js +266 -0
  95. package/dist/lib/core/source-manager.js.map +1 -0
  96. package/dist/lib/index.d.ts +6 -1
  97. package/dist/lib/index.d.ts.map +1 -1
  98. package/dist/lib/index.js +4 -1
  99. package/dist/lib/index.js.map +1 -1
  100. package/dist/lib/schemata/assertion.d.ts +9 -0
  101. package/dist/lib/schemata/assertion.d.ts.map +1 -0
  102. package/dist/lib/schemata/assertion.js +18 -0
  103. package/dist/lib/schemata/assertion.js.map +1 -0
  104. package/dist/lib/schemata/index.d.ts +2 -0
  105. package/dist/lib/schemata/index.d.ts.map +1 -1
  106. package/dist/lib/schemata/index.js +2 -0
  107. package/dist/lib/schemata/index.js.map +1 -1
  108. package/dist/lib/schemata/propositional.d.ts +2 -0
  109. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  110. package/dist/lib/schemata/propositional.js +5 -1
  111. package/dist/lib/schemata/propositional.js.map +1 -1
  112. package/dist/lib/schemata/source.d.ts +30 -0
  113. package/dist/lib/schemata/source.d.ts.map +1 -0
  114. package/dist/lib/schemata/source.js +45 -0
  115. package/dist/lib/schemata/source.js.map +1 -0
  116. package/dist/lib/types/checksum.d.ts +8 -0
  117. package/dist/lib/types/checksum.d.ts.map +1 -1
  118. package/dist/lib/types/diff.d.ts +5 -1
  119. package/dist/lib/types/diff.d.ts.map +1 -1
  120. package/dist/lib/types/evaluation.d.ts +1 -1
  121. package/dist/lib/types/evaluation.d.ts.map +1 -1
  122. package/dist/lib/types/mutation.d.ts +3 -0
  123. package/dist/lib/types/mutation.d.ts.map +1 -1
  124. package/dist/lib/types/reactive.d.ts +3 -1
  125. package/dist/lib/types/reactive.d.ts.map +1 -1
  126. package/package.json +5 -1
@@ -1 +1 @@
1
- {"version":3,"file":"argument-engine.js","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"argument-engine.js","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { TCoreAssertion } from "../schemata/assertion.js";
2
+ import type { TCoreChecksumConfig } from "../types/checksum.js";
3
+ import type { TAssertionLookup, TAssertionLibrarySnapshot } from "./interfaces/library.interfaces.js";
4
+ export declare class AssertionLibrary<TAssertion extends TCoreAssertion = TCoreAssertion> implements TAssertionLookup<TAssertion> {
5
+ private entities;
6
+ private checksumConfig?;
7
+ constructor(options?: {
8
+ checksumConfig?: TCoreChecksumConfig;
9
+ });
10
+ create(assertion: Omit<TAssertion, "version" | "frozen" | "checksum">): TAssertion;
11
+ update(id: string, updates: Partial<Omit<TAssertion, "id" | "version" | "frozen" | "checksum">>): TAssertion;
12
+ freeze(id: string): {
13
+ frozen: TAssertion;
14
+ current: TAssertion;
15
+ };
16
+ get(id: string, version: number): TAssertion | undefined;
17
+ getCurrent(id: string): TAssertion | undefined;
18
+ getAll(): TAssertion[];
19
+ getVersions(id: string): TAssertion[];
20
+ snapshot(): TAssertionLibrarySnapshot<TAssertion>;
21
+ static fromSnapshot<TAssertion extends TCoreAssertion = TCoreAssertion>(snapshot: TAssertionLibrarySnapshot<TAssertion>, options?: {
22
+ checksumConfig?: TCoreChecksumConfig;
23
+ }): AssertionLibrary<TAssertion>;
24
+ private maxVersion;
25
+ private computeChecksum;
26
+ }
27
+ //# sourceMappingURL=assertion-library.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-library.d.ts","sourceRoot":"","sources":["../../../src/lib/core/assertion-library.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAG/D,OAAO,KAAK,EACR,gBAAgB,EAChB,yBAAyB,EAC5B,MAAM,oCAAoC,CAAA;AAE3C,qBAAa,gBAAgB,CACzB,UAAU,SAAS,cAAc,GAAG,cAAc,CACpD,YAAW,gBAAgB,CAAC,UAAU,CAAC;IACrC,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,cAAc,CAAC,CAAqB;gBAEhC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,mBAAmB,CAAA;KAAE;IAKvD,MAAM,CACT,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC,GAC/D,UAAU;IAoBN,MAAM,CACT,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CACZ,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC,CAC7D,GACF,UAAU;IAyBN,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,UAAU,CAAA;KAAE;IAiC/D,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIxD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAM9C,MAAM,IAAI,UAAU,EAAE;IAUtB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,EAAE;IAQrC,QAAQ,IAAI,yBAAyB,CAAC,UAAU,CAAC;WAI1C,YAAY,CACtB,UAAU,SAAS,cAAc,GAAG,cAAc,EAElD,QAAQ,EAAE,yBAAyB,CAAC,UAAU,CAAC,EAC/C,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,mBAAmB,CAAA;KAAE,GACnD,gBAAgB,CAAC,UAAU,CAAC;IAa/B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,eAAe;CAS1B"}
@@ -0,0 +1,129 @@
1
+ import { DEFAULT_CHECKSUM_CONFIG } from "../consts.js";
2
+ import { entityChecksum } from "./checksum.js";
3
+ export class AssertionLibrary {
4
+ entities;
5
+ checksumConfig;
6
+ constructor(options) {
7
+ this.entities = new Map();
8
+ this.checksumConfig = options?.checksumConfig;
9
+ }
10
+ create(assertion) {
11
+ if (this.entities.has(assertion.id)) {
12
+ throw new Error(`Assertion with ID "${assertion.id}" already exists.`);
13
+ }
14
+ const full = {
15
+ ...assertion,
16
+ version: 0,
17
+ frozen: false,
18
+ checksum: "",
19
+ };
20
+ full.checksum = this.computeChecksum(full);
21
+ const versions = new Map();
22
+ versions.set(0, full);
23
+ this.entities.set(full.id, versions);
24
+ return full;
25
+ }
26
+ update(id, updates) {
27
+ const versions = this.entities.get(id);
28
+ if (!versions) {
29
+ throw new Error(`Assertion "${id}" does not exist.`);
30
+ }
31
+ const maxVersion = this.maxVersion(versions);
32
+ const current = versions.get(maxVersion);
33
+ if (current.frozen) {
34
+ throw new Error(`Assertion "${id}" version ${maxVersion} is frozen and cannot be updated.`);
35
+ }
36
+ const updated = {
37
+ ...current,
38
+ ...updates,
39
+ id: current.id,
40
+ version: current.version,
41
+ frozen: current.frozen,
42
+ checksum: "",
43
+ };
44
+ updated.checksum = this.computeChecksum(updated);
45
+ versions.set(maxVersion, updated);
46
+ return updated;
47
+ }
48
+ freeze(id) {
49
+ const versions = this.entities.get(id);
50
+ if (!versions) {
51
+ throw new Error(`Assertion "${id}" does not exist.`);
52
+ }
53
+ const maxVersion = this.maxVersion(versions);
54
+ const current = versions.get(maxVersion);
55
+ if (current.frozen) {
56
+ throw new Error(`Assertion "${id}" version ${maxVersion} is already frozen.`);
57
+ }
58
+ const frozenEntity = {
59
+ ...current,
60
+ frozen: true,
61
+ checksum: "",
62
+ };
63
+ frozenEntity.checksum = this.computeChecksum(frozenEntity);
64
+ versions.set(maxVersion, frozenEntity);
65
+ const nextVersion = maxVersion + 1;
66
+ const nextEntity = {
67
+ ...current,
68
+ version: nextVersion,
69
+ frozen: false,
70
+ checksum: "",
71
+ };
72
+ nextEntity.checksum = this.computeChecksum(nextEntity);
73
+ versions.set(nextVersion, nextEntity);
74
+ return { frozen: frozenEntity, current: nextEntity };
75
+ }
76
+ get(id, version) {
77
+ return this.entities.get(id)?.get(version);
78
+ }
79
+ getCurrent(id) {
80
+ const versions = this.entities.get(id);
81
+ if (!versions)
82
+ return undefined;
83
+ return versions.get(this.maxVersion(versions));
84
+ }
85
+ getAll() {
86
+ const result = [];
87
+ for (const versions of this.entities.values()) {
88
+ for (const entity of versions.values()) {
89
+ result.push(entity);
90
+ }
91
+ }
92
+ return result;
93
+ }
94
+ getVersions(id) {
95
+ const versions = this.entities.get(id);
96
+ if (!versions)
97
+ return [];
98
+ return Array.from(versions.values()).sort((a, b) => a.version - b.version);
99
+ }
100
+ snapshot() {
101
+ return { assertions: this.getAll() };
102
+ }
103
+ static fromSnapshot(snapshot, options) {
104
+ const lib = new AssertionLibrary(options);
105
+ for (const entity of snapshot.assertions) {
106
+ let versions = lib.entities.get(entity.id);
107
+ if (!versions) {
108
+ versions = new Map();
109
+ lib.entities.set(entity.id, versions);
110
+ }
111
+ versions.set(entity.version, entity);
112
+ }
113
+ return lib;
114
+ }
115
+ maxVersion(versions) {
116
+ let max = -1;
117
+ for (const v of versions.keys()) {
118
+ if (v > max)
119
+ max = v;
120
+ }
121
+ return max;
122
+ }
123
+ computeChecksum(entity) {
124
+ const fields = this.checksumConfig?.assertionFields ??
125
+ DEFAULT_CHECKSUM_CONFIG.assertionFields;
126
+ return entityChecksum(entity, fields);
127
+ }
128
+ }
129
+ //# sourceMappingURL=assertion-library.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-library.js","sourceRoot":"","sources":["../../../src/lib/core/assertion-library.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAM9C,MAAM,OAAO,gBAAgB;IAGjB,QAAQ,CAAsC;IAC9C,cAAc,CAAsB;IAE5C,YAAY,OAAkD;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,cAAc,CAAA;IACjD,CAAC;IAEM,MAAM,CACT,SAA8D;QAE9D,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAY,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACX,sBAAsB,SAAS,CAAC,EAAE,mBAAmB,CACxD,CAAA;QACL,CAAC;QACD,MAAM,IAAI,GAAG;YACT,GAAG,SAAS;YACZ,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;SACD,CAAA;QACf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QAE1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAA;QAC9C,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QACrB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACpC,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,MAAM,CACT,EAAU,EACV,OAEC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAE,CAAA;QACzC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACX,cAAc,EAAE,aAAa,UAAU,mCAAmC,CAC7E,CAAA;QACL,CAAC;QACD,MAAM,OAAO,GAAG;YACZ,GAAG,OAAO;YACV,GAAG,OAAO;YACV,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,EAAE;SACD,CAAA;QACf,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAChD,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACjC,OAAO,OAAO,CAAA;IAClB,CAAC;IAEM,MAAM,CAAC,EAAU;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAE,CAAA;QACzC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACX,cAAc,EAAE,aAAa,UAAU,qBAAqB,CAC/D,CAAA;QACL,CAAC;QACD,MAAM,YAAY,GAAG;YACjB,GAAG,OAAO;YACV,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,EAAE;SACD,CAAA;QACf,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;QAC1D,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QAEtC,MAAM,WAAW,GAAG,UAAU,GAAG,CAAC,CAAA;QAClC,MAAM,UAAU,GAAG;YACf,GAAG,OAAO;YACV,OAAO,EAAE,WAAW;YACpB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;SACD,CAAA;QACf,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;QACtD,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QAErC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;IACxD,CAAC;IAEM,GAAG,CAAC,EAAU,EAAE,OAAe;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAC9C,CAAC;IAEM,UAAU,CAAC,EAAU;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAC/B,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAClD,CAAC;IAEM,MAAM;QACT,MAAM,MAAM,GAAiB,EAAE,CAAA;QAC/B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5C,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACvB,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;IAEM,WAAW,CAAC,EAAU;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAA;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAClC,CAAA;IACL,CAAC;IAEM,QAAQ;QACX,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAA;IACxC,CAAC;IAEM,MAAM,CAAC,YAAY,CAGtB,QAA+C,EAC/C,OAAkD;QAElD,MAAM,GAAG,GAAG,IAAI,gBAAgB,CAAa,OAAO,CAAC,CAAA;QACrD,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;gBACpB,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;YACzC,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,UAAU,CAAC,QAAiC;QAChD,IAAI,GAAG,GAAG,CAAC,CAAC,CAAA;QACZ,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,GAAG;gBAAE,GAAG,GAAG,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,eAAe,CAAC,MAAkB;QACtC,MAAM,MAAM,GACR,IAAI,CAAC,cAAc,EAAE,eAAe;YACpC,uBAAuB,CAAC,eAAgB,CAAA;QAC5C,OAAO,cAAc,CACjB,MAA4C,EAC5C,MAAM,CACT,CAAA;IACL,CAAC;CACJ"}
@@ -1,18 +1,16 @@
1
1
  import type { TCorePremise } from "../schemata/index.js";
2
2
  import type { TCoreArgument, TCoreArgumentRoleState } from "../schemata/argument.js";
3
3
  import type { TCorePropositionalExpression, TCorePropositionalVariable } from "../schemata/propositional.js";
4
+ import type { TCoreVariableSourceAssociation, TCoreExpressionSourceAssociation } from "../schemata/source.js";
4
5
  import type { TCoreChangeset } from "../types/mutation.js";
5
- /**
6
- * Internal collector used during a single mutation to accumulate all
7
- * side-effect changes. Created at the start of a public mutating method,
8
- * populated by internal helpers, and consumed via toChangeset().
9
- */
10
6
  export declare class ChangeCollector<TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TPremise extends TCorePremise = TCorePremise, TArg extends TCoreArgument = TCoreArgument> {
11
7
  private expressions;
12
8
  private variables;
13
9
  private premises;
14
10
  private roles;
15
11
  private argument;
12
+ private variableSourceAssociations;
13
+ private expressionSourceAssociations;
16
14
  addedExpression(expr: TExpr): void;
17
15
  modifiedExpression(expr: TExpr): void;
18
16
  removedExpression(expr: TExpr): void;
@@ -23,6 +21,10 @@ export declare class ChangeCollector<TExpr extends TCorePropositionalExpression
23
21
  removedPremise(premise: TPremise): void;
24
22
  setRoles(roles: TCoreArgumentRoleState): void;
25
23
  setArgument(argument: TArg): void;
24
+ addedVariableSourceAssociation(assoc: TCoreVariableSourceAssociation): void;
25
+ removedVariableSourceAssociation(assoc: TCoreVariableSourceAssociation): void;
26
+ addedExpressionSourceAssociation(assoc: TCoreExpressionSourceAssociation): void;
27
+ removedExpressionSourceAssociation(assoc: TCoreExpressionSourceAssociation): void;
26
28
  toChangeset(): TCoreChangeset<TExpr, TVar, TPremise, TArg>;
27
29
  }
28
30
  //# sourceMappingURL=change-collector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"change-collector.d.ts","sourceRoot":"","sources":["../../../src/lib/core/change-collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EACR,aAAa,EACb,sBAAsB,EACzB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EACR,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EAAsB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAc9E;;;;GAIG;AACH,qBAAa,eAAe,CACxB,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EACpE,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,IAAI,SAAS,aAAa,GAAG,aAAa;IAE1C,OAAO,CAAC,WAAW,CAAkD;IACrE,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,QAAQ,CAAqD;IACrE,OAAO,CAAC,KAAK,CAAgD;IAC7D,OAAO,CAAC,QAAQ,CAA8B;IAE9C,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAGlC,kBAAkB,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAGrC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAIpC,aAAa,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAGnC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAGtC,eAAe,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIrC,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAGrC,cAAc,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAIvC,QAAQ,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;IAI7C,WAAW,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIjC,WAAW,IAAI,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;CAU7D"}
1
+ {"version":3,"file":"change-collector.d.ts","sourceRoot":"","sources":["../../../src/lib/core/change-collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EACR,aAAa,EACb,sBAAsB,EACzB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EACR,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EACR,8BAA8B,EAC9B,gCAAgC,EACnC,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAsB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAc9E,qBAAa,eAAe,CACxB,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EACpE,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,IAAI,SAAS,aAAa,GAAG,aAAa;IAE1C,OAAO,CAAC,WAAW,CAAkD;IACrE,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,QAAQ,CAAqD;IACrE,OAAO,CAAC,KAAK,CAAgD;IAC7D,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,0BAA0B,CACV;IACxB,OAAO,CAAC,4BAA4B,CACZ;IAExB,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAGlC,kBAAkB,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAGrC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAIpC,aAAa,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAGnC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAGtC,eAAe,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIrC,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAGrC,cAAc,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAIvC,QAAQ,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;IAI7C,WAAW,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIjC,8BAA8B,CAC1B,KAAK,EAAE,8BAA8B,GACtC,IAAI;IAGP,gCAAgC,CAC5B,KAAK,EAAE,8BAA8B,GACtC,IAAI;IAIP,gCAAgC,CAC5B,KAAK,EAAE,gCAAgC,GACxC,IAAI;IAGP,kCAAkC,CAC9B,KAAK,EAAE,gCAAgC,GACxC,IAAI;IAIP,WAAW,IAAI,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;CAc7D"}
@@ -6,17 +6,14 @@ function isEntityChangesEmpty(ec) {
6
6
  ec.modified.length === 0 &&
7
7
  ec.removed.length === 0);
8
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
9
  export class ChangeCollector {
15
10
  expressions = emptyEntityChanges();
16
11
  variables = emptyEntityChanges();
17
12
  premises = emptyEntityChanges();
18
13
  roles = undefined;
19
14
  argument = undefined;
15
+ variableSourceAssociations = emptyEntityChanges();
16
+ expressionSourceAssociations = emptyEntityChanges();
20
17
  addedExpression(expr) {
21
18
  this.expressions.added.push(expr);
22
19
  }
@@ -47,6 +44,18 @@ export class ChangeCollector {
47
44
  setArgument(argument) {
48
45
  this.argument = argument;
49
46
  }
47
+ addedVariableSourceAssociation(assoc) {
48
+ this.variableSourceAssociations.added.push(assoc);
49
+ }
50
+ removedVariableSourceAssociation(assoc) {
51
+ this.variableSourceAssociations.removed.push(assoc);
52
+ }
53
+ addedExpressionSourceAssociation(assoc) {
54
+ this.expressionSourceAssociations.added.push(assoc);
55
+ }
56
+ removedExpressionSourceAssociation(assoc) {
57
+ this.expressionSourceAssociations.removed.push(assoc);
58
+ }
50
59
  toChangeset() {
51
60
  const cs = {};
52
61
  if (!isEntityChangesEmpty(this.expressions))
@@ -59,6 +68,10 @@ export class ChangeCollector {
59
68
  cs.roles = this.roles;
60
69
  if (this.argument !== undefined)
61
70
  cs.argument = this.argument;
71
+ if (!isEntityChangesEmpty(this.variableSourceAssociations))
72
+ cs.variableSourceAssociations = this.variableSourceAssociations;
73
+ if (!isEntityChangesEmpty(this.expressionSourceAssociations))
74
+ cs.expressionSourceAssociations = this.expressionSourceAssociations;
62
75
  return cs;
63
76
  }
64
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"change-collector.js","sourceRoot":"","sources":["../../../src/lib/core/change-collector.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;IAMhB,WAAW,GAA8B,kBAAkB,EAAE,CAAA;IAC7D,SAAS,GAA6B,kBAAkB,EAAE,CAAA;IAC1D,QAAQ,GAAiC,kBAAkB,EAAE,CAAA;IAC7D,KAAK,GAAuC,SAAS,CAAA;IACrD,QAAQ,GAAqB,SAAS,CAAA;IAE9C,eAAe,CAAC,IAAW;QACvB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IACD,kBAAkB,CAAC,IAAW;QAC1B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IACD,iBAAiB,CAAC,IAAW;QACzB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,aAAa,CAAC,QAAc;QACxB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvC,CAAC;IACD,gBAAgB,CAAC,QAAc;QAC3B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IACD,eAAe,CAAC,QAAc;QAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,YAAY,CAAC,OAAiB;QAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IACD,cAAc,CAAC,OAAiB;QAC5B,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,QAAc;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,WAAW;QACP,MAAM,EAAE,GAAgD,EAAE,CAAA;QAC1D,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
+ {"version":3,"file":"change-collector.js","sourceRoot":"","sources":["../../../src/lib/core/change-collector.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,16 @@
1
- import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable } from "../schemata/index.js";
1
+ import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable, TCoreVariableSourceAssociation, TCoreExpressionSourceAssociation } from "../schemata/index.js";
2
2
  import type { TCoreArgumentDiff, TCoreDiffOptions, TCoreFieldChange } from "../types/diff.js";
3
3
  import type { ArgumentEngine } from "./argument-engine.js";
4
4
  /** Compares two argument objects. Core argument only has identity fields (id, version), so no diffable fields. */
5
5
  export declare function defaultCompareArgument(_before: TCoreArgument, _after: TCoreArgument): TCoreFieldChange[];
6
- /** Compares two variables and returns field-level changes for `symbol`. */
6
+ /** Compares two variables and returns field-level changes for `symbol`, `assertionId`, and `assertionVersion`. */
7
7
  export declare function defaultCompareVariable(before: TCorePropositionalVariable, after: TCorePropositionalVariable): TCoreFieldChange[];
8
8
  /** Compares two premises and returns field-level changes. Base premise has no diffable fields beyond identity. */
9
9
  export declare function defaultComparePremise(_before: TCorePremise, _after: TCorePremise): TCoreFieldChange[];
10
+ /** Compares two variable-source associations and returns field-level changes for `sourceId`, `sourceVersion`, and `variableId`. */
11
+ export declare function defaultCompareVariableSourceAssociation(before: TCoreVariableSourceAssociation, after: TCoreVariableSourceAssociation): TCoreFieldChange[];
12
+ /** Compares two expression-source associations and returns field-level changes for `sourceId`, `sourceVersion`, `expressionId`, and `premiseId`. */
13
+ export declare function defaultCompareExpressionSourceAssociation(before: TCoreExpressionSourceAssociation, after: TCoreExpressionSourceAssociation): TCoreFieldChange[];
10
14
  /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
11
15
  export declare function defaultCompareExpression(before: TCorePropositionalExpression, after: TCorePropositionalExpression): TCoreFieldChange[];
12
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,iBAAiB,EACjB,gBAAgB,EAGhB,gBAAgB,EAKnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,kHAAkH;AAClH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,GACtB,gBAAgB,EAAE,CAEpB;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,0BAA0B,GAClC,gBAAgB,EAAE,CAUpB;AAED,kHAAkH;AAClH,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,GACrB,gBAAgB,EAAE,CAEpB;AAED,iJAAiJ;AACjJ,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,4BAA4B,GACpC,gBAAgB,EAAE,CA0CpB;AA4HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EAEpE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,GACxD,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAuDhD"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC1B,8BAA8B,EAC9B,gCAAgC,EACnC,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,iBAAiB,EACjB,gBAAgB,EAGhB,gBAAgB,EAKnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,kHAAkH;AAClH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,GACtB,gBAAgB,EAAE,CAEpB;AAED,kHAAkH;AAClH,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,0BAA0B,GAClC,gBAAgB,EAAE,CAwBpB;AAED,kHAAkH;AAClH,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,GACrB,gBAAgB,EAAE,CAEpB;AAED,mIAAmI;AACnI,wBAAgB,uCAAuC,CACnD,MAAM,EAAE,8BAA8B,EACtC,KAAK,EAAE,8BAA8B,GACtC,gBAAgB,EAAE,CAwBpB;AAED,oJAAoJ;AACpJ,wBAAgB,yCAAyC,CACrD,MAAM,EAAE,gCAAgC,EACxC,KAAK,EAAE,gCAAgC,GACxC,gBAAgB,EAAE,CA+BpB;AAED,iJAAiJ;AACjJ,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,4BAA4B,GACpC,gBAAgB,EAAE,CA0CpB;AA4HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EAEpE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,GACxD,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAuEhD"}
@@ -2,7 +2,7 @@
2
2
  export function defaultCompareArgument(_before, _after) {
3
3
  return [];
4
4
  }
5
- /** Compares two variables and returns field-level changes for `symbol`. */
5
+ /** Compares two variables and returns field-level changes for `symbol`, `assertionId`, and `assertionVersion`. */
6
6
  export function defaultCompareVariable(before, after) {
7
7
  const changes = [];
8
8
  if (before.symbol !== after.symbol) {
@@ -12,12 +12,85 @@ export function defaultCompareVariable(before, after) {
12
12
  after: after.symbol,
13
13
  });
14
14
  }
15
+ if (before.assertionId !== after.assertionId) {
16
+ changes.push({
17
+ field: "assertionId",
18
+ before: before.assertionId,
19
+ after: after.assertionId,
20
+ });
21
+ }
22
+ if (before.assertionVersion !== after.assertionVersion) {
23
+ changes.push({
24
+ field: "assertionVersion",
25
+ before: before.assertionVersion,
26
+ after: after.assertionVersion,
27
+ });
28
+ }
15
29
  return changes;
16
30
  }
17
31
  /** Compares two premises and returns field-level changes. Base premise has no diffable fields beyond identity. */
18
32
  export function defaultComparePremise(_before, _after) {
19
33
  return [];
20
34
  }
35
+ /** Compares two variable-source associations and returns field-level changes for `sourceId`, `sourceVersion`, and `variableId`. */
36
+ export function defaultCompareVariableSourceAssociation(before, after) {
37
+ const changes = [];
38
+ if (before.sourceId !== after.sourceId) {
39
+ changes.push({
40
+ field: "sourceId",
41
+ before: before.sourceId,
42
+ after: after.sourceId,
43
+ });
44
+ }
45
+ if (before.sourceVersion !== after.sourceVersion) {
46
+ changes.push({
47
+ field: "sourceVersion",
48
+ before: before.sourceVersion,
49
+ after: after.sourceVersion,
50
+ });
51
+ }
52
+ if (before.variableId !== after.variableId) {
53
+ changes.push({
54
+ field: "variableId",
55
+ before: before.variableId,
56
+ after: after.variableId,
57
+ });
58
+ }
59
+ return changes;
60
+ }
61
+ /** Compares two expression-source associations and returns field-level changes for `sourceId`, `sourceVersion`, `expressionId`, and `premiseId`. */
62
+ export function defaultCompareExpressionSourceAssociation(before, after) {
63
+ const changes = [];
64
+ if (before.sourceId !== after.sourceId) {
65
+ changes.push({
66
+ field: "sourceId",
67
+ before: before.sourceId,
68
+ after: after.sourceId,
69
+ });
70
+ }
71
+ if (before.sourceVersion !== after.sourceVersion) {
72
+ changes.push({
73
+ field: "sourceVersion",
74
+ before: before.sourceVersion,
75
+ after: after.sourceVersion,
76
+ });
77
+ }
78
+ if (before.expressionId !== after.expressionId) {
79
+ changes.push({
80
+ field: "expressionId",
81
+ before: before.expressionId,
82
+ after: after.expressionId,
83
+ });
84
+ }
85
+ if (before.premiseId !== after.premiseId) {
86
+ changes.push({
87
+ field: "premiseId",
88
+ before: before.premiseId,
89
+ after: after.premiseId,
90
+ });
91
+ }
92
+ return changes;
93
+ }
21
94
  /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
22
95
  export function defaultCompareExpression(before, after) {
23
96
  const changes = [];
@@ -169,6 +242,10 @@ export function diffArguments(engineA, engineB, options) {
169
242
  defaultComparePremise;
170
243
  const compareExpr = options?.compareExpression ??
171
244
  defaultCompareExpression;
245
+ const compareVarAssoc = options?.compareVariableSourceAssociation ??
246
+ defaultCompareVariableSourceAssociation;
247
+ const compareExprAssoc = options?.compareExpressionSourceAssociation ??
248
+ defaultCompareExpressionSourceAssociation;
172
249
  const argumentChanges = compareArg(argA, argB);
173
250
  return {
174
251
  argument: {
@@ -179,6 +256,8 @@ export function diffArguments(engineA, engineB, options) {
179
256
  variables: diffEntitySet(collectVariables(engineA), collectVariables(engineB), compareVar),
180
257
  premises: diffPremiseSet(premisesA, premisesB, expressionsA, expressionsB, comparePrem, compareExpr),
181
258
  roles: diffRoles(rolesA.conclusionPremiseId, rolesB.conclusionPremiseId),
259
+ variableSourceAssociations: diffEntitySet(engineA.getAllVariableSourceAssociations(), engineB.getAllVariableSourceAssociations(), compareVarAssoc),
260
+ expressionSourceAssociations: diffEntitySet(engineA.getAllExpressionSourceAssociations(), engineB.getAllExpressionSourceAssociations(), compareExprAssoc),
182
261
  };
183
262
  }
184
263
  //# sourceMappingURL=diff.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAmBA,kHAAkH;AAClH,MAAM,UAAU,sBAAsB,CAClC,OAAsB,EACtB,MAAqB;IAErB,OAAO,EAAE,CAAA;AACb,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,sBAAsB,CAClC,MAAkC,EAClC,KAAiC;IAEjC,MAAM,OAAO,GAAuB,EAAE,CAAA;IACtC,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,KAAK,CAAC,MAAM;SACtB,CAAC,CAAA;IACN,CAAC;IACD,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,qBAAqB,CACjC,OAAqB,EACrB,MAAoB;IAEpB,OAAO,EAAE,CAAA;AACb,CAAC;AAED,iJAAiJ;AACjJ,MAAM,UAAU,wBAAwB,CACpC,MAAoC,EACpC,KAAmC;IAEnC,MAAM,OAAO,GAAuB,EAAE,CAAA;IACtC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,KAAK,EAAE,KAAK,CAAC,IAAI;SACpB,CAAC,CAAA;IACN,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,MAAM,CAAC,QAAQ;YACvB,KAAK,EAAE,KAAK,CAAC,QAAQ;SACxB,CAAC,CAAA;IACN,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,MAAM,CAAC,QAAQ;YACvB,KAAK,EAAE,KAAK,CAAC,QAAQ;SACxB,CAAC,CAAA;IACN,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,YAAY;gBACnB,MAAM,EAAE,MAAM,CAAC,UAAU;gBACzB,KAAK,EAAE,KAAK,CAAC,UAAU;aAC1B,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,MAAM,CAAC,QAAQ;gBACvB,KAAK,EAAE,KAAK,CAAC,QAAQ;aACxB,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,SAAS,aAAa,CAClB,WAAgB,EAChB,UAAe,EACf,OAAgC;IAEhC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IACtE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAEpE,MAAM,KAAK,GAAQ,EAAE,CAAA;IACrB,MAAM,OAAO,GAAQ,EAAE,CAAA;IACvB,MAAM,QAAQ,GAA8B,EAAE,CAAA;IAE9C,KAAK,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,UAAU,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACxB,SAAQ;QACZ,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAA;QACpE,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzB,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;AACvC,CAAC;AAED,SAAS,cAAc,CAInB,cAA0B,EAC1B,aAAyB,EACzB,iBAAuC,EACvC,gBAAsC,EACtC,cAA8C,EAC9C,iBAA8C;IAE9C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAE9D,MAAM,KAAK,GAAe,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAe,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAwC,EAAE,CAAA;IAExD,KAAK,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3C,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC3B,SAAQ;QACZ,CAAC;QACD,MAAM,cAAc,GAAG,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,CAAA;QAClE,MAAM,eAAe,GAAG,aAAa,CACjC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAC/B,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAC9B,iBAAiB,CACpB,CAAA;QACD,MAAM,oBAAoB,GACtB,eAAe,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAChC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAClC,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;QACvC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,oBAAoB,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC;gBACV,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,YAAY;gBACnB,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,eAAe;aAC/B,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC5B,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;AACvC,CAAC;AAED,SAAS,SAAS,CACd,gBAAoC,EACpC,eAAmC;IAEnC,OAAO;QACH,UAAU,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE;KACnE,CAAA;AACL,CAAC;AAED,SAAS,gBAAgB,CAKvB,MAAmD;IACjD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,IAAI,GAAW,EAAE,CAAA;IACvB,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;QACrC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBACd,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAMzB,OAAoD,EACpD,OAAoD,EACpD,OAAuD;IAEvD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;IAClC,MAAM,eAAe,GAAG,OAAO,CAAC,YAAY,EAAE,CAAA;IAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,YAAY,EAAE,CAAA;IAC9C,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAA;IACjE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAA;IACjE,MAAM,YAAY,GAAG,IAAI,GAAG,CACxB,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,CACjE,CAAA;IACD,MAAM,YAAY,GAAG,IAAI,GAAG,CACxB,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,CACjE,CAAA;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAA;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAA;IAErC,MAAM,UAAU,GACZ,OAAO,EAAE,eAAe;QACvB,sBAAqD,CAAA;IAC1D,MAAM,UAAU,GACZ,OAAO,EAAE,eAAe;QACvB,sBAAqD,CAAA;IAC1D,MAAM,WAAW,GACb,OAAO,EAAE,cAAc;QACtB,qBAAwD,CAAA;IAC7D,MAAM,WAAW,GACb,OAAO,EAAE,iBAAiB;QACzB,wBAAwD,CAAA;IAE7D,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAE9C,OAAO;QACH,QAAQ,EAAE;YACN,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,eAAe;SAC3B;QACD,SAAS,EAAE,aAAa,CACpB,gBAAgB,CAAC,OAAO,CAAC,EACzB,gBAAgB,CAAC,OAAO,CAAC,EACzB,UAAU,CACb;QACD,QAAQ,EAAE,cAAc,CACpB,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,CACd;QACD,KAAK,EAAE,SAAS,CACZ,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,mBAAmB,CAC7B;KACJ,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"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"}