@polintpro/proposit-core 0.1.3 → 0.1.4

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 (107) hide show
  1. package/dist/cli/commands/analysis.d.ts.map +1 -1
  2. package/dist/cli/commands/analysis.js +87 -13
  3. package/dist/cli/commands/analysis.js.map +1 -1
  4. package/dist/cli/commands/arguments.d.ts.map +1 -1
  5. package/dist/cli/commands/arguments.js +27 -4
  6. package/dist/cli/commands/arguments.js.map +1 -1
  7. package/dist/cli/commands/diff.d.ts +3 -0
  8. package/dist/cli/commands/diff.d.ts.map +1 -0
  9. package/dist/cli/commands/diff.js +46 -0
  10. package/dist/cli/commands/diff.js.map +1 -0
  11. package/dist/cli/commands/premises.d.ts.map +1 -1
  12. package/dist/cli/commands/premises.js +22 -13
  13. package/dist/cli/commands/premises.js.map +1 -1
  14. package/dist/cli/commands/variables.d.ts.map +1 -1
  15. package/dist/cli/commands/variables.js +1 -0
  16. package/dist/cli/commands/variables.js.map +1 -1
  17. package/dist/cli/commands/versionShow.js +2 -2
  18. package/dist/cli/commands/versionShow.js.map +1 -1
  19. package/dist/cli/engine.d.ts +6 -0
  20. package/dist/cli/engine.d.ts.map +1 -1
  21. package/dist/cli/engine.js +41 -8
  22. package/dist/cli/engine.js.map +1 -1
  23. package/dist/cli/output/diffRenderer.d.ts +4 -0
  24. package/dist/cli/output/diffRenderer.d.ts.map +1 -0
  25. package/dist/cli/output/diffRenderer.js +102 -0
  26. package/dist/cli/output/diffRenderer.js.map +1 -0
  27. package/dist/cli/router.d.ts.map +1 -1
  28. package/dist/cli/router.js +1 -0
  29. package/dist/cli/router.js.map +1 -1
  30. package/dist/cli.js +2 -0
  31. package/dist/cli.js.map +1 -1
  32. package/dist/index.d.ts +13 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +12 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/lib/core/ArgumentEngine.d.ts +82 -4
  37. package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
  38. package/dist/lib/core/ArgumentEngine.js +102 -18
  39. package/dist/lib/core/ArgumentEngine.js.map +1 -1
  40. package/dist/lib/core/ExpressionManager.d.ts +52 -0
  41. package/dist/lib/core/ExpressionManager.d.ts.map +1 -1
  42. package/dist/lib/core/ExpressionManager.js +52 -3
  43. package/dist/lib/core/ExpressionManager.js.map +1 -1
  44. package/dist/lib/core/PremiseManager.d.ts +17 -4
  45. package/dist/lib/core/PremiseManager.d.ts.map +1 -1
  46. package/dist/lib/core/PremiseManager.js +48 -26
  47. package/dist/lib/core/PremiseManager.js.map +1 -1
  48. package/dist/lib/core/VariableManager.d.ts +34 -1
  49. package/dist/lib/core/VariableManager.d.ts.map +1 -1
  50. package/dist/lib/core/VariableManager.js +26 -0
  51. package/dist/lib/core/VariableManager.js.map +1 -1
  52. package/dist/lib/core/diff.d.ts +20 -0
  53. package/dist/lib/core/diff.d.ts.map +1 -0
  54. package/dist/lib/core/diff.js +213 -0
  55. package/dist/lib/core/diff.js.map +1 -0
  56. package/dist/lib/core/evaluation/shared.d.ts +17 -3
  57. package/dist/lib/core/evaluation/shared.d.ts.map +1 -1
  58. package/dist/lib/core/evaluation/shared.js +34 -2
  59. package/dist/lib/core/evaluation/shared.js.map +1 -1
  60. package/dist/lib/core/import.d.ts +14 -0
  61. package/dist/lib/core/import.d.ts.map +1 -0
  62. package/dist/lib/core/import.js +217 -0
  63. package/dist/lib/core/import.js.map +1 -0
  64. package/dist/lib/core/parser/formula-gen.js +850 -0
  65. package/dist/lib/core/parser/formula.d.ts +23 -0
  66. package/dist/lib/core/parser/formula.d.ts.map +1 -0
  67. package/dist/lib/core/parser/formula.js +7 -0
  68. package/dist/lib/core/parser/formula.js.map +1 -0
  69. package/dist/lib/index.d.ts +9 -0
  70. package/dist/lib/index.d.ts.map +1 -1
  71. package/dist/lib/index.js +8 -0
  72. package/dist/lib/index.js.map +1 -1
  73. package/dist/lib/schemata/analysis.d.ts +2 -1
  74. package/dist/lib/schemata/analysis.d.ts.map +1 -1
  75. package/dist/lib/schemata/analysis.js +5 -2
  76. package/dist/lib/schemata/analysis.js.map +1 -1
  77. package/dist/lib/schemata/argument.d.ts +13 -4
  78. package/dist/lib/schemata/argument.d.ts.map +1 -1
  79. package/dist/lib/schemata/argument.js +10 -2
  80. package/dist/lib/schemata/argument.js.map +1 -1
  81. package/dist/lib/schemata/import.d.ts +33 -0
  82. package/dist/lib/schemata/import.d.ts.map +1 -0
  83. package/dist/lib/schemata/import.js +18 -0
  84. package/dist/lib/schemata/import.js.map +1 -0
  85. package/dist/lib/schemata/index.d.ts +1 -0
  86. package/dist/lib/schemata/index.d.ts.map +1 -1
  87. package/dist/lib/schemata/index.js +1 -0
  88. package/dist/lib/schemata/index.js.map +1 -1
  89. package/dist/lib/schemata/propositional.d.ts +13 -2
  90. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  91. package/dist/lib/schemata/propositional.js +25 -7
  92. package/dist/lib/schemata/propositional.js.map +1 -1
  93. package/dist/lib/types/diff.d.ts +56 -0
  94. package/dist/lib/types/diff.d.ts.map +1 -0
  95. package/dist/lib/types/diff.js +2 -0
  96. package/dist/lib/types/diff.js.map +1 -0
  97. package/dist/lib/types/evaluation.d.ts +96 -29
  98. package/dist/lib/types/evaluation.d.ts.map +1 -1
  99. package/dist/lib/utils/collections.d.ts +6 -0
  100. package/dist/lib/utils/collections.d.ts.map +1 -1
  101. package/dist/lib/utils/collections.js +6 -0
  102. package/dist/lib/utils/collections.js.map +1 -1
  103. package/dist/lib/utils.d.ts +7 -0
  104. package/dist/lib/utils.d.ts.map +1 -1
  105. package/dist/lib/utils.js +7 -5
  106. package/dist/lib/utils.js.map +1 -1
  107. package/package.json +14 -2
@@ -0,0 +1,23 @@
1
+ export type FormulaAST = {
2
+ type: "variable";
3
+ name: string;
4
+ } | {
5
+ type: "not";
6
+ operand: FormulaAST;
7
+ } | {
8
+ type: "and";
9
+ operands: FormulaAST[];
10
+ } | {
11
+ type: "or";
12
+ operands: FormulaAST[];
13
+ } | {
14
+ type: "implies";
15
+ left: FormulaAST;
16
+ right: FormulaAST;
17
+ } | {
18
+ type: "iff";
19
+ left: FormulaAST;
20
+ right: FormulaAST;
21
+ };
22
+ export declare function parseFormula(input: string): FormulaAST;
23
+ //# sourceMappingURL=formula.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formula.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/parser/formula.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAChB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAA;AAE1D,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAGtD"}
@@ -0,0 +1,7 @@
1
+ // @ts-expect-error — generated parser has no type declarations
2
+ import { parse as pegParse } from "./formula-gen.js";
3
+ export function parseFormula(input) {
4
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call -- generated parser has no type declarations
5
+ return pegParse(input);
6
+ }
7
+ //# sourceMappingURL=formula.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formula.js","sourceRoot":"","sources":["../../../../src/lib/core/parser/formula.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAUpD,MAAM,UAAU,YAAY,CAAC,KAAa;IACtC,0GAA0G;IAC1G,OAAO,QAAQ,CAAC,KAAK,CAAe,CAAA;AACxC,CAAC"}
@@ -1,4 +1,13 @@
1
+ /**
2
+ * Library barrel export. Re-exports core classes, evaluation types, diff
3
+ * types, and the diff function.
4
+ */
1
5
  export { ArgumentEngine } from "./core/ArgumentEngine.js";
2
6
  export { PremiseManager } from "./core/PremiseManager.js";
3
7
  export * from "./types/evaluation.js";
8
+ export * from "./types/diff.js";
9
+ export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./core/diff.js";
10
+ export { importArgumentFromYaml } from "./core/import.js";
11
+ export { parseFormula } from "./core/parser/formula.js";
12
+ export type { FormulaAST } from "./core/parser/formula.js";
4
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA"}
package/dist/lib/index.js CHANGED
@@ -1,4 +1,12 @@
1
+ /**
2
+ * Library barrel export. Re-exports core classes, evaluation types, diff
3
+ * types, and the diff function.
4
+ */
1
5
  export { ArgumentEngine } from "./core/ArgumentEngine.js";
2
6
  export { PremiseManager } from "./core/PremiseManager.js";
3
7
  export * from "./types/evaluation.js";
8
+ export * from "./types/diff.js";
9
+ export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./core/diff.js";
10
+ export { importArgumentFromYaml } from "./core/import.js";
11
+ export { parseFormula } from "./core/parser/formula.js";
4
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA"}
@@ -2,7 +2,8 @@ import Type, { type Static } from "typebox";
2
2
  export declare const CoreAnalysisFileSchema: Type.TObject<{
3
3
  argumentId: Type.TString;
4
4
  argumentVersion: Type.TNumber;
5
- assignments: Type.TRecord<"^.*$", Type.TBoolean>;
5
+ assignments: Type.TRecord<"^.*$", Type.TUnion<[Type.TBoolean, Type.TNull]>>;
6
+ rejectedExpressionIds: Type.TArray<Type.TString>;
6
7
  }>;
7
8
  export type TCoreAnalysisFile = Static<typeof CoreAnalysisFileSchema>;
8
9
  //# sourceMappingURL=analysis.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/analysis.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAG3C,eAAO,MAAM,sBAAsB;;;;EAMjC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
1
+ {"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/analysis.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAG3C,eAAO,MAAM,sBAAsB;;;;;EAajC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -3,8 +3,11 @@ import { UUID } from "./shared.js";
3
3
  export const CoreAnalysisFileSchema = Type.Object({
4
4
  argumentId: UUID,
5
5
  argumentVersion: Type.Number(),
6
- assignments: Type.Record(Type.String(), Type.Boolean(), {
7
- description: "Variable symbol → truth-value mapping.",
6
+ assignments: Type.Record(Type.String(), Type.Union([Type.Boolean(), Type.Null()]), {
7
+ description: "Variable symbol → true/false/null (unset).",
8
+ }),
9
+ rejectedExpressionIds: Type.Array(Type.String(), {
10
+ description: "Expression IDs rejected by the user.",
8
11
  }),
9
12
  });
10
13
  //# sourceMappingURL=analysis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/lib/schemata/analysis.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAElC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE;IAC9B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE;QACpD,WAAW,EAAE,wCAAwC;KACxD,CAAC;CACL,CAAC,CAAA"}
1
+ {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/lib/schemata/analysis.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAElC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE;IAC9B,WAAW,EAAE,IAAI,CAAC,MAAM,CACpB,IAAI,CAAC,MAAM,EAAE,EACb,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EACzC;QACI,WAAW,EAAE,4CAA4C;KAC5D,CACJ;IACD,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;QAC7C,WAAW,EAAE,sCAAsC;KACtD,CAAC;CACL,CAAC,CAAA"}
@@ -1,8 +1,15 @@
1
1
  import Type, { type Static } from "typebox";
2
+ export declare const CoreArgumentMetadataSchema: Type.TObject<{
3
+ title: Type.TString;
4
+ description: Type.TOptional<Type.TString>;
5
+ }>;
6
+ export type TCoreArgumentMetadata = Static<typeof CoreArgumentMetadataSchema>;
2
7
  export declare const CoreArgumentMetaSchema: Type.TObject<{
3
8
  id: Type.TString;
4
- title: Type.TString;
5
- description: Type.TString;
9
+ metadata: Type.TObject<{
10
+ title: Type.TString;
11
+ description: Type.TOptional<Type.TString>;
12
+ }>;
6
13
  }>;
7
14
  export type TCoreArgumentMeta = Static<typeof CoreArgumentMetaSchema>;
8
15
  export declare const CoreArgumentVersionedSchema: Type.TObject<{
@@ -17,8 +24,10 @@ export declare const CoreArgumentMutableDataSchema: Type.TObject<{
17
24
  export type TCoreArgumentMutableData = Static<typeof CoreArgumentMutableDataSchema>;
18
25
  export declare const CoreArgumentSchema: Type.TIntersect<[Type.TObject<{
19
26
  id: Type.TString;
20
- title: Type.TString;
21
- description: Type.TString;
27
+ metadata: Type.TObject<{
28
+ title: Type.TString;
29
+ description: Type.TOptional<Type.TString>;
30
+ }>;
22
31
  }>, Type.TObject<{
23
32
  version: Type.TNumber;
24
33
  createdAt: Type.TNumber;
@@ -1 +1 @@
1
- {"version":3,"file":"argument.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/argument.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAG3C,eAAO,MAAM,sBAAsB;;;;EAUlC,CAAA;AACD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,2BAA2B;;;EAavC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,6BAA6B;;;EAczC,CAAA;AACD,MAAM,MAAM,wBAAwB,GAAG,MAAM,CACzC,OAAO,6BAA6B,CACvC,CAAA;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;IAI7B,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,6BAA6B;;;;;;IAGxC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CACzC,OAAO,6BAA6B,CACvC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;EAGtC,CAAA;AACF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA"}
1
+ {"version":3,"file":"argument.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/argument.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAG3C,eAAO,MAAM,0BAA0B;;;EAStC,CAAA;AACD,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,eAAO,MAAM,sBAAsB;;;;;;EASlC,CAAA;AACD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,2BAA2B;;;EAavC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,6BAA6B;;;EAczC,CAAA;AACD,MAAM,MAAM,wBAAwB,GAAG,MAAM,CACzC,OAAO,6BAA6B,CACvC,CAAA;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;IAI7B,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,6BAA6B;;;;;;IAGxC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CACzC,OAAO,6BAA6B,CACvC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;EASvC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA"}
@@ -1,9 +1,15 @@
1
1
  import Type, {} from "typebox";
2
2
  import { UUID } from "./shared.js";
3
+ export const CoreArgumentMetadataSchema = Type.Object({
4
+ title: Type.String(),
5
+ description: Type.Optional(Type.String()),
6
+ }, {
7
+ additionalProperties: Type.String(),
8
+ description: "User-facing descriptive metadata for an argument.",
9
+ });
3
10
  export const CoreArgumentMetaSchema = Type.Object({
4
11
  id: UUID,
5
- title: Type.String(),
6
- description: Type.String(),
12
+ metadata: CoreArgumentMetadataSchema,
7
13
  }, {
8
14
  description: "Metadata for an argument that does not change for different versions of the same argument.",
9
15
  });
@@ -36,5 +42,7 @@ export const CoreArgumentVersionMetaSchema = Type.Intersect([
36
42
  export const CoreArgumentRoleStateSchema = Type.Object({
37
43
  conclusionPremiseId: Type.Optional(UUID),
38
44
  supportingPremiseIds: Type.Array(UUID),
45
+ }, {
46
+ description: "Tracks which premises serve as the conclusion and which are supporting.",
39
47
  });
40
48
  //# sourceMappingURL=argument.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"argument.js","sourceRoot":"","sources":["../../../src/lib/schemata/argument.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAElC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAC7C;IACI,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;CAC7B,EACD;IACI,WAAW,EACP,4FAA4F;CACnG,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAClD;IACI,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;QACnB,WAAW,EACP,kEAAkE;QACtE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;KAC5B,CAAC;CACL,EACD;IACI,WAAW,EACP,uFAAuF;CAC9F,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAC,MAAM,CACpD;IACI,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CACtB,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,oEAAoE;KAC3E,CAAC,CACL;CACJ,EACD;IACI,WAAW,EACP,mEAAmE;CAC1E,CACJ,CAAA;AAKD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC7C,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;CAChC,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAC,SAAS,CAAC;IACxD,2BAA2B;IAC3B,6BAA6B;CAChC,CAAC,CAAA;AAKF,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAAC;IACnD,mBAAmB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IACxC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;CACzC,CAAC,CAAA"}
1
+ {"version":3,"file":"argument.js","sourceRoot":"","sources":["../../../src/lib/schemata/argument.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAElC,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC,MAAM,CACjD;IACI,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CAC5C,EACD;IACI,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE;IACnC,WAAW,EAAE,mDAAmD;CACnE,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAC7C;IACI,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,0BAA0B;CACvC,EACD;IACI,WAAW,EACP,4FAA4F;CACnG,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAClD;IACI,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;QACnB,WAAW,EACP,kEAAkE;QACtE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;KAC5B,CAAC;CACL,EACD;IACI,WAAW,EACP,uFAAuF;CAC9F,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAC,MAAM,CACpD;IACI,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CACtB,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,oEAAoE;KAC3E,CAAC,CACL;CACJ,EACD;IACI,WAAW,EACP,mEAAmE;CAC1E,CACJ,CAAA;AAKD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC7C,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;CAChC,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAC,SAAS,CAAC;IACxD,2BAA2B;IAC3B,6BAA6B;CAChC,CAAC,CAAA;AAKF,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAClD;IACI,mBAAmB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IACxC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;CACzC,EACD;IACI,WAAW,EACP,yEAAyE;CAChF,CACJ,CAAA"}
@@ -0,0 +1,33 @@
1
+ import Type, { type Static } from "typebox";
2
+ export declare const CoreYamlPremiseMetadataSchema: Type.TObject<{
3
+ title: Type.TOptional<Type.TString>;
4
+ }>;
5
+ export type TCoreYamlPremiseMetadata = Static<typeof CoreYamlPremiseMetadataSchema>;
6
+ export declare const CoreYamlPremiseSchema: Type.TObject<{
7
+ metadata: Type.TOptional<Type.TObject<{
8
+ title: Type.TOptional<Type.TString>;
9
+ }>>;
10
+ role: Type.TOptional<Type.TUnion<[Type.TLiteral<"conclusion">, Type.TLiteral<"supporting">]>>;
11
+ formula: Type.TString;
12
+ }>;
13
+ export type TCoreYamlPremise = Static<typeof CoreYamlPremiseSchema>;
14
+ export declare const CoreYamlArgumentMetadataSchema: Type.TObject<{
15
+ title: Type.TString;
16
+ description: Type.TOptional<Type.TString>;
17
+ }>;
18
+ export type TCoreYamlArgumentMetadata = Static<typeof CoreYamlArgumentMetadataSchema>;
19
+ export declare const CoreYamlArgumentSchema: Type.TObject<{
20
+ metadata: Type.TObject<{
21
+ title: Type.TString;
22
+ description: Type.TOptional<Type.TString>;
23
+ }>;
24
+ premises: Type.TArray<Type.TObject<{
25
+ metadata: Type.TOptional<Type.TObject<{
26
+ title: Type.TOptional<Type.TString>;
27
+ }>>;
28
+ role: Type.TOptional<Type.TUnion<[Type.TLiteral<"conclusion">, Type.TLiteral<"supporting">]>>;
29
+ formula: Type.TString;
30
+ }>>;
31
+ }>;
32
+ export type TCoreYamlArgument = Static<typeof CoreYamlArgumentSchema>;
33
+ //# sourceMappingURL=import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/import.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAE3C,eAAO,MAAM,6BAA6B;;EAKzC,CAAA;AACD,MAAM,MAAM,wBAAwB,GAAG,MAAM,CACzC,OAAO,6BAA6B,CACvC,CAAA;AAED,eAAO,MAAM,qBAAqB;;;;;;EAMhC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,8BAA8B;;;EAM1C,CAAA;AACD,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAC1C,OAAO,8BAA8B,CACxC,CAAA;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAGjC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,18 @@
1
+ import Type, {} from "typebox";
2
+ export const CoreYamlPremiseMetadataSchema = Type.Object({
3
+ title: Type.Optional(Type.String()),
4
+ }, { additionalProperties: Type.String() });
5
+ export const CoreYamlPremiseSchema = Type.Object({
6
+ metadata: Type.Optional(CoreYamlPremiseMetadataSchema),
7
+ role: Type.Optional(Type.Union([Type.Literal("conclusion"), Type.Literal("supporting")])),
8
+ formula: Type.String(),
9
+ });
10
+ export const CoreYamlArgumentMetadataSchema = Type.Object({
11
+ title: Type.String(),
12
+ description: Type.Optional(Type.String({ default: "" })),
13
+ }, { additionalProperties: Type.String() });
14
+ export const CoreYamlArgumentSchema = Type.Object({
15
+ metadata: CoreYamlArgumentMetadataSchema,
16
+ premises: Type.Array(CoreYamlPremiseSchema, { minItems: 1 }),
17
+ });
18
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../../src/lib/schemata/import.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAE3C,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,CAAC,MAAM,CACpD;IACI,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CACtC,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAKD,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IACtD,IAAI,EAAE,IAAI,CAAC,QAAQ,CACf,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CACvE;IACD,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;CACzB,CAAC,CAAA;AAIF,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,CAAC,MAAM,CACrD;IACI,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;CAC3D,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAKD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,8BAA8B;IACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;CAC/D,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export * from "./analysis.js";
2
2
  export * from "./argument.js";
3
+ export * from "./import.js";
3
4
  export * from "./propositional.js";
4
5
  export * from "./shared.js";
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export * from "./analysis.js";
2
2
  export * from "./argument.js";
3
+ export * from "./import.js";
3
4
  export * from "./propositional.js";
4
5
  export * from "./shared.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/schemata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/schemata/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
@@ -60,16 +60,25 @@ export type TCorePropositionalExpressionCombined = Static<typeof CoreProposition
60
60
  export type TCorePropositionalExpression<T extends TCorePropositionalExpressionTypes = TCorePropositionalExpressionTypes> = Extract<TCorePropositionalExpressionCombined, {
61
61
  type: T;
62
62
  }>;
63
+ export declare const CoreVariableMetadataSchema: Type.TRecord<"^.*$", Type.TString>;
64
+ export type TCoreVariableMetadata = Static<typeof CoreVariableMetadataSchema>;
63
65
  export declare const CorePropositionalVariableSchema: Type.TObject<{
64
66
  id: Type.TString;
65
67
  argumentId: Type.TString;
66
68
  argumentVersion: Type.TNumber;
67
69
  symbol: Type.TString;
70
+ metadata: Type.TRecord<"^.*$", Type.TString>;
68
71
  }>;
69
72
  export type TCorePropositionalVariable = Static<typeof CorePropositionalVariableSchema>;
73
+ export declare const CorePremiseMetadataSchema: Type.TObject<{
74
+ title: Type.TOptional<Type.TString>;
75
+ }>;
76
+ export type TCorePremiseMetadata = Static<typeof CorePremiseMetadataSchema>;
70
77
  export declare const CorePremiseMetaSchema: Type.TObject<{
71
78
  id: Type.TString;
72
- title: Type.TOptional<Type.TString>;
79
+ metadata: Type.TObject<{
80
+ title: Type.TOptional<Type.TString>;
81
+ }>;
73
82
  }>;
74
83
  export type TCorePremiseMeta = Static<typeof CorePremiseMetaSchema>;
75
84
  export declare const CorePremiseDataSchema: Type.TObject<{
@@ -103,7 +112,9 @@ export declare const CorePremiseDataSchema: Type.TObject<{
103
112
  export type TCorePremiseData = Static<typeof CorePremiseDataSchema>;
104
113
  export declare const CorePremiseSchema: Type.TIntersect<[Type.TObject<{
105
114
  id: Type.TString;
106
- title: Type.TOptional<Type.TString>;
115
+ metadata: Type.TObject<{
116
+ title: Type.TOptional<Type.TString>;
117
+ }>;
107
118
  }>, Type.TObject<{
108
119
  rootExpressionId: Type.TOptional<Type.TString>;
109
120
  variables: Type.TArray<Type.TString>;
@@ -1 +1 @@
1
- {"version":3,"file":"propositional.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,gCAAgC,+FAI3C,CAAA;AACF,MAAM,MAAM,iCAAiC,GAAG,MAAM,CAClD,OAAO,gCAAgC,CAC1C,CAAA;AAoBD,eAAO,MAAM,yCAAyC;;;;;;;;EAMrD,CAAA;AAED,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,yCAAyC,CACnD,CAAA;AAED,eAAO,MAAM,uBAAuB,gIAMlC,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,4BAA4B;;;;;;;;EAMxC,CAAA;AACD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CACxC,OAAO,4BAA4B,CACtC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;;;EAKvC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;IAI5C,CAAA;AAEF,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,iCAAiC,CAC3C,CAAA;AAED,MAAM,MAAM,4BAA4B,CACpC,CAAC,SAAS,iCAAiC,GACvC,iCAAiC,IACrC,OAAO,CAAC,oCAAoC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA;AAE9D,eAAO,MAAM,+BAA+B;;;;;EAK1C,CAAA;AAEF,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC3C,OAAO,+BAA+B,CACzC,CAAA;AAED,eAAO,MAAM,qBAAqB;;;EAShC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG5B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
1
+ {"version":3,"file":"propositional.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,gCAAgC,+FAI3C,CAAA;AACF,MAAM,MAAM,iCAAiC,GAAG,MAAM,CAClD,OAAO,gCAAgC,CAC1C,CAAA;AAoBD,eAAO,MAAM,yCAAyC;;;;;;;;EAMrD,CAAA;AAED,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,yCAAyC,CACnD,CAAA;AAED,eAAO,MAAM,uBAAuB,gIAMlC,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,4BAA4B;;;;;;;;EAMxC,CAAA;AACD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CACxC,OAAO,4BAA4B,CACtC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;;;EAKvC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;IAI5C,CAAA;AAEF,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,iCAAiC,CAC3C,CAAA;AAED,MAAM,MAAM,4BAA4B,CACpC,CAAC,SAAS,iCAAiC,GACvC,iCAAiC,IACrC,OAAO,CAAC,oCAAoC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA;AAE9D,eAAO,MAAM,0BAA0B,oCAMtC,CAAA;AACD,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,eAAO,MAAM,+BAA+B;;;;;;EAe3C,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC3C,OAAO,+BAA+B,CACzC,CAAA;AAED,eAAO,MAAM,yBAAyB;;EAarC,CAAA;AACD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E,eAAO,MAAM,qBAAqB;;;;;EAQjC,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBjC,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG5B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
@@ -43,28 +43,46 @@ export const CorePropositionalExpressionSchema = Type.Union([
43
43
  CoreOperatorExpressionSchema,
44
44
  CoreFormulaExpressionSchema,
45
45
  ]);
46
+ export const CoreVariableMetadataSchema = Type.Record(Type.String(), Type.String(), {
47
+ description: "User-facing descriptive metadata for a variable.",
48
+ });
46
49
  export const CorePropositionalVariableSchema = Type.Object({
47
50
  id: UUID,
48
51
  argumentId: UUID,
49
52
  argumentVersion: Type.Number(),
50
- symbol: Type.String(),
53
+ symbol: Type.String({
54
+ description: 'Human-readable symbol for this variable (e.g. "P", "Q").',
55
+ }),
56
+ metadata: CoreVariableMetadataSchema,
57
+ }, {
58
+ description: "A named propositional variable belonging to a specific argument version.",
51
59
  });
52
- export const CorePremiseMetaSchema = Type.Object({
53
- // Auto-generated UUID
54
- id: UUID,
60
+ export const CorePremiseMetadataSchema = Type.Object({
55
61
  title: Type.Optional(Type.String({
56
62
  description: "An optional title for this premise, for display purposes.",
57
63
  })),
64
+ }, {
65
+ additionalProperties: Type.String(),
66
+ description: "User-facing descriptive metadata for a premise.",
67
+ });
68
+ export const CorePremiseMetaSchema = Type.Object({
69
+ id: UUID,
70
+ metadata: CorePremiseMetadataSchema,
71
+ }, {
72
+ description: "Identity and display metadata for a premise.",
58
73
  });
59
74
  export const CorePremiseDataSchema = Type.Object({
60
- // If the premise has expressions in it, this is the ID of the root expression.
61
- rootExpressionId: Type.Optional(UUID),
75
+ rootExpressionId: Type.Optional(Type.String({
76
+ description: "ID of the root expression, if the premise has expressions.",
77
+ })),
62
78
  variables: Type.Array(UUID, {
63
79
  description: "IDs of all variables referenced in this premise.",
64
80
  }),
65
81
  expressions: Type.Array(CorePropositionalExpressionSchema, {
66
- description: "All expressions that are part of this premise, including sub-expressions. The root of the premise will have a null parentId.",
82
+ description: "All expressions in this premise. The root has a null parentId.",
67
83
  }),
84
+ }, {
85
+ description: "Expression tree and variable references for a premise.",
68
86
  });
69
87
  export const CorePremiseSchema = Type.Intersect([
70
88
  CorePremiseMetaSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,gCAAgC,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,YAAY;IACZ,YAAY;IACZ,WAAW;CACd,CAAC,CAAA;AAKF,MAAM,iCAAiC,GAAG,IAAI,CAAC,MAAM,CAAC;IAClD,EAAE,EAAE,IAAI;IACR,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE;IAC9B,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;QACrB,WAAW,EACP,sFAAsF;KAC7F,CAAC;IAEF,QAAQ,EAAE,QAAQ,CACd,IAAI,CAAC,OAAO,CAAC;QACT,OAAO,EAAE,CAAC;QACV,WAAW,EACP,0IAA0I;KACjJ,CAAC,CACL;CACJ,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,yCAAyC,GAAG,IAAI,CAAC,SAAS,CACnE,CAAC,iCAAiC,CAAC,EACnC;IACI,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,IAAI;CACnB,CACJ,CAAA;AAMD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC;IAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ;IAC7B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,gBAAgB;IACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,gBAAgB;IACpC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,mBAAmB;IAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,iCAAiC;CACzD,CAAC,CAAA;AAIF,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC,SAAS,CACtD,CAAC,iCAAiC,CAAC,EACnC;IACI,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,uBAAuB;CACpC,CACJ,CAAA;AAKD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC,SAAS,CACrD,CAAC,iCAAiC,CAAC,EACnC;IACI,IAAI,EAAE,WAAW;CACpB,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,iCAAiC,GAAG,IAAI,CAAC,KAAK,CAAC;IACxD,yCAAyC;IACzC,4BAA4B;IAC5B,2BAA2B;CAC9B,CAAC,CAAA;AAWF,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC,MAAM,CACjD,IAAI,CAAC,MAAM,EAAE,EACb,IAAI,CAAC,MAAM,EAAE,EACb;IACI,WAAW,EAAE,kDAAkD;CAClE,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC,MAAM,CACtD;IACI,EAAE,EAAE,IAAI;IACR,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE;IAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;QAChB,WAAW,EACP,0DAA0D;KACjE,CAAC;IACF,QAAQ,EAAE,0BAA0B;CACvC,EACD;IACI,WAAW,EACP,0EAA0E;CACjF,CACJ,CAAA;AAMD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC,MAAM,CAChD;IACI,KAAK,EAAE,IAAI,CAAC,QAAQ,CAChB,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,2DAA2D;KAClE,CAAC,CACL;CACJ,EACD;IACI,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE;IACnC,WAAW,EAAE,iDAAiD;CACjE,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAC5C;IACI,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,yBAAyB;CACtC,EACD;IACI,WAAW,EAAE,8CAA8C;CAC9D,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAC5C;IACI,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAC3B,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,4DAA4D;KACnE,CAAC,CACL;IACD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACxB,WAAW,EAAE,kDAAkD;KAClE,CAAC;IACF,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,iCAAiC,EAAE;QACvD,WAAW,EACP,gEAAgE;KACvE,CAAC;CACL,EACD;IACI,WAAW,EAAE,wDAAwD;CACxE,CACJ,CAAA;AAGD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC5C,qBAAqB;IACrB,qBAAqB;CACxB,CAAC,CAAA"}
@@ -0,0 +1,56 @@
1
+ import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable } from "../schemata/index.js";
2
+ /** A single field-level change on an entity. */
3
+ export interface TCoreFieldChange {
4
+ field: string;
5
+ before: unknown;
6
+ after: unknown;
7
+ }
8
+ /** Field-level diff for a single matched entity. */
9
+ export interface TCoreEntityFieldDiff<T> {
10
+ before: T;
11
+ after: T;
12
+ changes: TCoreFieldChange[];
13
+ }
14
+ /** Set-level diff for a collection of ID-keyed entities. */
15
+ export interface TCoreEntitySetDiff<T extends {
16
+ id: string;
17
+ }> {
18
+ added: T[];
19
+ removed: T[];
20
+ modified: TCoreEntityFieldDiff<T>[];
21
+ }
22
+ /** Premise diff includes nested expression diffs. */
23
+ export interface TCorePremiseDiff extends TCoreEntityFieldDiff<TCorePremise> {
24
+ expressions: TCoreEntitySetDiff<TCorePropositionalExpression>;
25
+ }
26
+ export interface TCorePremiseSetDiff {
27
+ added: TCorePremise[];
28
+ removed: TCorePremise[];
29
+ modified: TCorePremiseDiff[];
30
+ }
31
+ /** Role changes between two argument versions. */
32
+ export interface TCoreRoleDiff {
33
+ conclusion: {
34
+ before: string | undefined;
35
+ after: string | undefined;
36
+ };
37
+ supportingAdded: string[];
38
+ supportingRemoved: string[];
39
+ }
40
+ /** Top-level diff result from `diffArguments`. */
41
+ export interface TCoreArgumentDiff {
42
+ argument: TCoreEntityFieldDiff<TCoreArgument>;
43
+ variables: TCoreEntitySetDiff<TCorePropositionalVariable>;
44
+ premises: TCorePremiseSetDiff;
45
+ roles: TCoreRoleDiff;
46
+ }
47
+ /** A comparator receives two matched objects and returns field-level changes. */
48
+ export type TCoreFieldComparator<T> = (before: T, after: T) => TCoreFieldChange[];
49
+ /** Per-entity comparator overrides for `diffArguments`. */
50
+ export interface TCoreDiffOptions {
51
+ compareArgument?: TCoreFieldComparator<TCoreArgument>;
52
+ compareVariable?: TCoreFieldComparator<TCorePropositionalVariable>;
53
+ comparePremise?: TCoreFieldComparator<TCorePremise>;
54
+ compareExpression?: TCoreFieldComparator<TCorePropositionalExpression>;
55
+ }
56
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/types/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,sBAAsB,CAAA;AAE7B,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;CACjB;AAED,oDAAoD;AACpD,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACnC,MAAM,EAAE,CAAC,CAAA;IACT,KAAK,EAAE,CAAC,CAAA;IACR,OAAO,EAAE,gBAAgB,EAAE,CAAA;CAC9B;AAED,4DAA4D;AAC5D,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;IACxD,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAA;CACtC;AAED,qDAAqD;AACrD,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,CAAC,YAAY,CAAC;IACxE,WAAW,EAAE,kBAAkB,CAAC,4BAA4B,CAAC,CAAA;CAChE;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,QAAQ,EAAE,gBAAgB,EAAE,CAAA;CAC/B;AAED,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC1B,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAA;IACrE,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,iBAAiB,EAAE,MAAM,EAAE,CAAA;CAC9B;AAED,kDAAkD;AAClD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAA;IAC7C,SAAS,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,CAAA;IACzD,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,KAAK,EAAE,aAAa,CAAA;CACvB;AAED,iFAAiF;AACjF,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,CAClC,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,CAAC,KACP,gBAAgB,EAAE,CAAA;AAEvB,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAC7B,eAAe,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAA;IACrD,eAAe,CAAC,EAAE,oBAAoB,CAAC,0BAA0B,CAAC,CAAA;IAClE,cAAc,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAA;IACnD,iBAAiB,CAAC,EAAE,oBAAoB,CAAC,4BAA4B,CAAC,CAAA;CACzE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/types/diff.ts"],"names":[],"mappings":""}