@stevenvo780/st-lang 4.0.0 → 4.1.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/dist/proof-exchange/index.d.ts +4 -6
- package/dist/proof-exchange/index.d.ts.map +1 -1
- package/dist/proof-exchange/index.js +9 -5
- package/dist/proof-exchange/index.js.map +1 -1
- package/dist/tests/coverage-95/api-and-interpreter-e2e.test.d.ts +2 -0
- package/dist/tests/coverage-95/api-and-interpreter-e2e.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/api-and-interpreter-e2e.test.js +255 -0
- package/dist/tests/coverage-95/api-and-interpreter-e2e.test.js.map +1 -0
- package/dist/tests/coverage-95/argumentation.test.d.ts +2 -0
- package/dist/tests/coverage-95/argumentation.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/argumentation.test.js +105 -0
- package/dist/tests/coverage-95/argumentation.test.js.map +1 -0
- package/dist/tests/coverage-95/arithmetic.test.d.ts +2 -0
- package/dist/tests/coverage-95/arithmetic.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/arithmetic.test.js +139 -0
- package/dist/tests/coverage-95/arithmetic.test.js.map +1 -0
- package/dist/tests/coverage-95/belnap.test.d.ts +2 -0
- package/dist/tests/coverage-95/belnap.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/belnap.test.js +145 -0
- package/dist/tests/coverage-95/belnap.test.js.map +1 -0
- package/dist/tests/coverage-95/cdcl-v2-solver.test.d.ts +2 -0
- package/dist/tests/coverage-95/cdcl-v2-solver.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/cdcl-v2-solver.test.js +61 -0
- package/dist/tests/coverage-95/cdcl-v2-solver.test.js.map +1 -0
- package/dist/tests/coverage-95/classical-propositional-direct.test.d.ts +2 -0
- package/dist/tests/coverage-95/classical-propositional-direct.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/classical-propositional-direct.test.js +175 -0
- package/dist/tests/coverage-95/classical-propositional-direct.test.js.map +1 -0
- package/dist/tests/coverage-95/compat.test.d.ts +2 -0
- package/dist/tests/coverage-95/compat.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/compat.test.js +82 -0
- package/dist/tests/coverage-95/compat.test.js.map +1 -0
- package/dist/tests/coverage-95/examples-runner.test.d.ts +2 -0
- package/dist/tests/coverage-95/examples-runner.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/examples-runner.test.js +34 -0
- package/dist/tests/coverage-95/examples-runner.test.js.map +1 -0
- package/dist/tests/coverage-95/first-order.test.d.ts +2 -0
- package/dist/tests/coverage-95/first-order.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/first-order.test.js +138 -0
- package/dist/tests/coverage-95/first-order.test.js.map +1 -0
- package/dist/tests/coverage-95/fol-prover.test.d.ts +2 -0
- package/dist/tests/coverage-95/fol-prover.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/fol-prover.test.js +228 -0
- package/dist/tests/coverage-95/fol-prover.test.js.map +1 -0
- package/dist/tests/coverage-95/interpreter-commands.test.d.ts +2 -0
- package/dist/tests/coverage-95/interpreter-commands.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/interpreter-commands.test.js +332 -0
- package/dist/tests/coverage-95/interpreter-commands.test.js.map +1 -0
- package/dist/tests/coverage-95/lsp-server.test.d.ts +2 -0
- package/dist/tests/coverage-95/lsp-server.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/lsp-server.test.js +181 -0
- package/dist/tests/coverage-95/lsp-server.test.js.map +1 -0
- package/dist/tests/coverage-95/modal-tableau-profiles.test.d.ts +2 -0
- package/dist/tests/coverage-95/modal-tableau-profiles.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/modal-tableau-profiles.test.js +157 -0
- package/dist/tests/coverage-95/modal-tableau-profiles.test.js.map +1 -0
- package/dist/tests/coverage-95/parallel-sat.test.d.ts +2 -0
- package/dist/tests/coverage-95/parallel-sat.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/parallel-sat.test.js +42 -0
- package/dist/tests/coverage-95/parallel-sat.test.js.map +1 -0
- package/dist/tests/coverage-95/parser-extra.test.d.ts +2 -0
- package/dist/tests/coverage-95/parser-extra.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/parser-extra.test.js +210 -0
- package/dist/tests/coverage-95/parser-extra.test.js.map +1 -0
- package/dist/tests/coverage-95/propositional-utilities.test.d.ts +2 -0
- package/dist/tests/coverage-95/propositional-utilities.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/propositional-utilities.test.js +281 -0
- package/dist/tests/coverage-95/propositional-utilities.test.js.map +1 -0
- package/dist/tests/coverage-95/protocol-handler.test.d.ts +2 -0
- package/dist/tests/coverage-95/protocol-handler.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/protocol-handler.test.js +275 -0
- package/dist/tests/coverage-95/protocol-handler.test.js.map +1 -0
- package/dist/tests/coverage-95/smt-mock-backend.test.d.ts +2 -0
- package/dist/tests/coverage-95/smt-mock-backend.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/smt-mock-backend.test.js +201 -0
- package/dist/tests/coverage-95/smt-mock-backend.test.js.map +1 -0
- package/dist/tests/coverage-95/smt-serializer.test.d.ts +2 -0
- package/dist/tests/coverage-95/smt-serializer.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/smt-serializer.test.js +143 -0
- package/dist/tests/coverage-95/smt-serializer.test.js.map +1 -0
- package/dist/tests/coverage-95/smt-subprocess.test.d.ts +2 -0
- package/dist/tests/coverage-95/smt-subprocess.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/smt-subprocess.test.js +96 -0
- package/dist/tests/coverage-95/smt-subprocess.test.js.map +1 -0
- package/dist/tests/coverage-95/tableau-engine.test.d.ts +2 -0
- package/dist/tests/coverage-95/tableau-engine.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/tableau-engine.test.js +125 -0
- package/dist/tests/coverage-95/tableau-engine.test.js.map +1 -0
- package/dist/tests/coverage-95/temporal-ltl.test.d.ts +2 -0
- package/dist/tests/coverage-95/temporal-ltl.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/temporal-ltl.test.js +94 -0
- package/dist/tests/coverage-95/temporal-ltl.test.js.map +1 -0
- package/dist/tests/coverage-95/typecheck-checker.test.d.ts +2 -0
- package/dist/tests/coverage-95/typecheck-checker.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/typecheck-checker.test.js +191 -0
- package/dist/tests/coverage-95/typecheck-checker.test.js.map +1 -0
- package/dist/tests/coverage-95/undecidability-detector.test.d.ts +2 -0
- package/dist/tests/coverage-95/undecidability-detector.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/undecidability-detector.test.js +149 -0
- package/dist/tests/coverage-95/undecidability-detector.test.js.map +1 -0
- package/dist/tests/coverage-95/visitor.test.d.ts +2 -0
- package/dist/tests/coverage-95/visitor.test.d.ts.map +1 -0
- package/dist/tests/coverage-95/visitor.test.js +140 -0
- package/dist/tests/coverage-95/visitor.test.js.map +1 -0
- package/dist/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.d.ts +2 -0
- package/dist/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.d.ts.map +1 -0
- package/dist/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.js +200 -0
- package/dist/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.js.map +1 -0
- package/dist/text-layer/v2/index.d.ts +2 -0
- package/dist/text-layer/v2/index.d.ts.map +1 -1
- package/dist/text-layer/v2/index.js +7 -1
- package/dist/text-layer/v2/index.js.map +1 -1
- package/dist/text-layer/v2/mdx-bridge/diff.d.ts +13 -0
- package/dist/text-layer/v2/mdx-bridge/diff.d.ts.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/diff.js +69 -0
- package/dist/text-layer/v2/mdx-bridge/diff.js.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/index.d.ts +14 -0
- package/dist/text-layer/v2/mdx-bridge/index.d.ts.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/index.js +21 -0
- package/dist/text-layer/v2/mdx-bridge/index.js.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/parser.d.ts +33 -0
- package/dist/text-layer/v2/mdx-bridge/parser.d.ts.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/parser.js +192 -0
- package/dist/text-layer/v2/mdx-bridge/parser.js.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/serializer.d.ts +17 -0
- package/dist/text-layer/v2/mdx-bridge/serializer.d.ts.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/serializer.js +69 -0
- package/dist/text-layer/v2/mdx-bridge/serializer.js.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/types.d.ts +53 -0
- package/dist/text-layer/v2/mdx-bridge/types.d.ts.map +1 -0
- package/dist/text-layer/v2/mdx-bridge/types.js +19 -0
- package/dist/text-layer/v2/mdx-bridge/types.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undecidability-detector.test.js","sourceRoot":"","sources":["../../../src/tests/coverage-95/undecidability-detector.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visitor.test.d.ts","sourceRoot":"","sources":["../../../src/tests/coverage-95/visitor.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const visitor_1 = require("../../ast/visitor");
|
|
5
|
+
const loc = { file: '<test>', line: 1, column: 1 };
|
|
6
|
+
const atom = (name) => ({ kind: 'atom', name });
|
|
7
|
+
const counted = {
|
|
8
|
+
visitLogicDecl: () => 'logic_decl',
|
|
9
|
+
visitAxiomDecl: () => 'axiom_decl',
|
|
10
|
+
visitTheoremDecl: () => 'theorem_decl',
|
|
11
|
+
visitDeriveCmd: () => 'derive_cmd',
|
|
12
|
+
visitCheckValidCmd: () => 'check_valid_cmd',
|
|
13
|
+
visitCheckSatisfiableCmd: () => 'check_satisfiable_cmd',
|
|
14
|
+
visitCheckEquivalentCmd: () => 'check_equivalent_cmd',
|
|
15
|
+
visitProveCmd: () => 'prove_cmd',
|
|
16
|
+
visitCountermodelCmd: () => 'countermodel_cmd',
|
|
17
|
+
visitTruthTableCmd: () => 'truth_table_cmd',
|
|
18
|
+
visitLetDecl: () => 'let_decl',
|
|
19
|
+
visitClaimDecl: () => 'claim_decl',
|
|
20
|
+
visitSupportDecl: () => 'support_decl',
|
|
21
|
+
visitConfidenceDecl: () => 'confidence_decl',
|
|
22
|
+
visitContextDecl: () => 'context_decl',
|
|
23
|
+
visitRenderCmd: () => 'render_cmd',
|
|
24
|
+
visitAnalyzeCmd: () => 'analyze_cmd',
|
|
25
|
+
visitExplainCmd: () => 'explain_cmd',
|
|
26
|
+
visitImportDecl: () => 'import_decl',
|
|
27
|
+
visitProofBlock: () => 'proof_block',
|
|
28
|
+
visitTheoryDecl: () => 'theory_decl',
|
|
29
|
+
visitPrintCmd: () => 'print_cmd',
|
|
30
|
+
visitSetCmd: () => 'set_cmd',
|
|
31
|
+
visitIfStmt: () => 'if_stmt',
|
|
32
|
+
visitForStmt: () => 'for_stmt',
|
|
33
|
+
visitWhileStmt: () => 'while_stmt',
|
|
34
|
+
visitFnDecl: () => 'fn_decl',
|
|
35
|
+
visitReturnStmt: () => 'return_stmt',
|
|
36
|
+
visitFnCall: () => 'fn_call',
|
|
37
|
+
visitExportDecl: () => 'export_decl',
|
|
38
|
+
visitDefineDecl: () => 'define_decl',
|
|
39
|
+
visitUnfoldCmd: () => 'unfold_cmd',
|
|
40
|
+
visitFoldCmd: () => 'fold_cmd',
|
|
41
|
+
visitSourceDecl: () => 'source_decl',
|
|
42
|
+
visitInterpretCmd: () => 'interpret_cmd',
|
|
43
|
+
visitGlossaryCmd: () => 'glossary_cmd',
|
|
44
|
+
};
|
|
45
|
+
const nodes = [
|
|
46
|
+
{ kind: 'logic_decl', source: loc, profile: 'classical.propositional' },
|
|
47
|
+
{ kind: 'axiom_decl', source: loc, name: 'A', formula: atom('P') },
|
|
48
|
+
{ kind: 'theorem_decl', source: loc, name: 'T', formula: atom('Q') },
|
|
49
|
+
{ kind: 'derive_cmd', source: loc, goal: atom('P'), premises: [] },
|
|
50
|
+
{ kind: 'check_valid_cmd', source: loc, formula: atom('P') },
|
|
51
|
+
{ kind: 'check_satisfiable_cmd', source: loc, formula: atom('P') },
|
|
52
|
+
{
|
|
53
|
+
kind: 'check_equivalent_cmd',
|
|
54
|
+
source: loc,
|
|
55
|
+
left: atom('P'),
|
|
56
|
+
right: atom('Q'),
|
|
57
|
+
},
|
|
58
|
+
{ kind: 'prove_cmd', source: loc, goal: atom('P'), premises: [] },
|
|
59
|
+
{ kind: 'countermodel_cmd', source: loc, formula: atom('P') },
|
|
60
|
+
{
|
|
61
|
+
kind: 'truth_table_cmd',
|
|
62
|
+
source: loc,
|
|
63
|
+
formula: atom('P'),
|
|
64
|
+
},
|
|
65
|
+
{ kind: 'let_decl', source: loc, name: 'x', value: atom('P') },
|
|
66
|
+
{ kind: 'claim_decl', source: loc, name: 'c1' },
|
|
67
|
+
{ kind: 'support_decl', source: loc },
|
|
68
|
+
{ kind: 'confidence_decl', source: loc },
|
|
69
|
+
{ kind: 'context_decl', source: loc },
|
|
70
|
+
{ kind: 'render_cmd', source: loc },
|
|
71
|
+
{ kind: 'analyze_cmd', source: loc },
|
|
72
|
+
{ kind: 'explain_cmd', source: loc },
|
|
73
|
+
{ kind: 'import_decl', source: loc },
|
|
74
|
+
{ kind: 'proof_block', source: loc },
|
|
75
|
+
{ kind: 'theory_decl', source: loc },
|
|
76
|
+
{ kind: 'print_cmd', source: loc },
|
|
77
|
+
{ kind: 'set_cmd', source: loc },
|
|
78
|
+
{ kind: 'if_stmt', source: loc },
|
|
79
|
+
{ kind: 'for_stmt', source: loc },
|
|
80
|
+
{ kind: 'while_stmt', source: loc },
|
|
81
|
+
{ kind: 'fn_decl', source: loc },
|
|
82
|
+
{ kind: 'return_stmt', source: loc },
|
|
83
|
+
{ kind: 'fn_call', source: loc },
|
|
84
|
+
{ kind: 'export_decl', source: loc },
|
|
85
|
+
{ kind: 'define_decl', source: loc },
|
|
86
|
+
{ kind: 'unfold_cmd', source: loc },
|
|
87
|
+
{ kind: 'fold_cmd', source: loc },
|
|
88
|
+
{ kind: 'source_decl', source: loc },
|
|
89
|
+
{ kind: 'interpret_cmd', source: loc },
|
|
90
|
+
{ kind: 'glossary_cmd', source: loc },
|
|
91
|
+
];
|
|
92
|
+
(0, vitest_1.describe)('ast/visitor — visit() dispatches to each visitor method', () => {
|
|
93
|
+
(0, vitest_1.it)('dispatches all 36 statement kinds to the correct visitor method', () => {
|
|
94
|
+
const results = nodes.map((n) => (0, visitor_1.visit)(n, counted));
|
|
95
|
+
(0, vitest_1.expect)(results).toEqual(nodes.map((n) => n.kind));
|
|
96
|
+
});
|
|
97
|
+
(0, vitest_1.it)('visitProgram() returns one result per statement', () => {
|
|
98
|
+
const program = {
|
|
99
|
+
kind: 'program',
|
|
100
|
+
statements: nodes.slice(0, 5),
|
|
101
|
+
};
|
|
102
|
+
const out = (0, visitor_1.visitProgram)(program, counted);
|
|
103
|
+
(0, vitest_1.expect)(out.length).toBe(5);
|
|
104
|
+
(0, vitest_1.expect)(out[0]).toBe('logic_decl');
|
|
105
|
+
});
|
|
106
|
+
(0, vitest_1.it)('throws on an unknown kind through exhaustiveness guard', () => {
|
|
107
|
+
const fake = { kind: 'totally_unknown', source: loc };
|
|
108
|
+
(0, vitest_1.expect)(() => (0, visitor_1.visit)(fake, counted)).toThrow(/no manejado/);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
(0, vitest_1.describe)('ast/visitor — BaseASTVisitor default behavior', () => {
|
|
112
|
+
class CountVisitor extends visitor_1.BaseASTVisitor {
|
|
113
|
+
count = 0;
|
|
114
|
+
defaultResult() {
|
|
115
|
+
this.count++;
|
|
116
|
+
return this.count;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
(0, vitest_1.it)('every visitor method falls back to defaultResult', () => {
|
|
120
|
+
const visitor = new CountVisitor();
|
|
121
|
+
for (const n of nodes) {
|
|
122
|
+
(0, visitor_1.visit)(n, visitor);
|
|
123
|
+
}
|
|
124
|
+
(0, vitest_1.expect)(visitor.count).toBe(nodes.length);
|
|
125
|
+
});
|
|
126
|
+
(0, vitest_1.it)('subclass can override selectively', () => {
|
|
127
|
+
class OverrideVisitor extends visitor_1.BaseASTVisitor {
|
|
128
|
+
defaultResult() {
|
|
129
|
+
return 'default';
|
|
130
|
+
}
|
|
131
|
+
visitLogicDecl(_node) {
|
|
132
|
+
return 'override-logic';
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
const v = new OverrideVisitor();
|
|
136
|
+
(0, vitest_1.expect)((0, visitor_1.visit)(nodes[0], v)).toBe('override-logic');
|
|
137
|
+
(0, vitest_1.expect)((0, visitor_1.visit)(nodes[1], v)).toBe('default');
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
//# sourceMappingURL=visitor.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visitor.test.js","sourceRoot":"","sources":["../../../src/tests/coverage-95/visitor.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdx-bridge.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const v2_1 = require("../../../text-layer/v2");
|
|
5
|
+
const mk = (id, formula = `F_${id}`, profile = 'classical.propositional', dependencies = []) => ({ id, formula, profile, dependencies });
|
|
6
|
+
(0, vitest_1.describe)('mdxToClaims — comment style', () => {
|
|
7
|
+
(0, vitest_1.it)('extrae 2 claims comment-style con ids correctos', () => {
|
|
8
|
+
const mdx = [
|
|
9
|
+
'# Documento',
|
|
10
|
+
'Aquí afirmo que <!-- st:claim id="c1" profile="classical.propositional" formula="A->B" --> es válido.',
|
|
11
|
+
'',
|
|
12
|
+
'Y también que <!-- st:claim id="c2" profile="classical.propositional" formula="B->C" deps="c1" --> sigue.',
|
|
13
|
+
].join('\n');
|
|
14
|
+
const claims = (0, v2_1.mdxToClaims)(mdx);
|
|
15
|
+
(0, vitest_1.expect)(claims).toHaveLength(2);
|
|
16
|
+
(0, vitest_1.expect)(claims.map((c) => c.id)).toEqual(['c1', 'c2']);
|
|
17
|
+
(0, vitest_1.expect)(claims[0]?.formula).toBe('A->B');
|
|
18
|
+
(0, vitest_1.expect)(claims[1]?.dependencies).toEqual(['c1']);
|
|
19
|
+
(0, vitest_1.expect)(claims[0]?.profile).toBe('classical.propositional');
|
|
20
|
+
});
|
|
21
|
+
(0, vitest_1.it)('soporta comillas simples y sin comillas en atributos', () => {
|
|
22
|
+
const mdx = `<!-- st:claim id='c1' profile=classical formula="A&B" -->`;
|
|
23
|
+
const claims = (0, v2_1.mdxToClaims)(mdx);
|
|
24
|
+
(0, vitest_1.expect)(claims).toHaveLength(1);
|
|
25
|
+
(0, vitest_1.expect)(claims[0]?.id).toBe('c1');
|
|
26
|
+
(0, vitest_1.expect)(claims[0]?.profile).toBe('classical');
|
|
27
|
+
(0, vitest_1.expect)(claims[0]?.formula).toBe('A&B');
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
(0, vitest_1.describe)('mdxToClaims — fence style', () => {
|
|
31
|
+
(0, vitest_1.it)('extrae 3 claims fence-style', () => {
|
|
32
|
+
const mdx = [
|
|
33
|
+
'# Doc',
|
|
34
|
+
'',
|
|
35
|
+
'```st-claim id=c1 profile=classical.propositional',
|
|
36
|
+
'A -> B',
|
|
37
|
+
'```',
|
|
38
|
+
'',
|
|
39
|
+
'Prosa intermedia.',
|
|
40
|
+
'',
|
|
41
|
+
'```st-claim id=c2 profile=classical.propositional deps=c1',
|
|
42
|
+
'(A -> B) & A',
|
|
43
|
+
'```',
|
|
44
|
+
'',
|
|
45
|
+
'```st-claim id=c3 profile=classical.propositional deps=c1,c2',
|
|
46
|
+
'B',
|
|
47
|
+
'```',
|
|
48
|
+
].join('\n');
|
|
49
|
+
const claims = (0, v2_1.mdxToClaims)(mdx);
|
|
50
|
+
(0, vitest_1.expect)(claims).toHaveLength(3);
|
|
51
|
+
(0, vitest_1.expect)(claims.map((c) => c.id)).toEqual(['c1', 'c2', 'c3']);
|
|
52
|
+
(0, vitest_1.expect)(claims[2]?.dependencies).toEqual(['c1', 'c2']);
|
|
53
|
+
(0, vitest_1.expect)(claims[1]?.formula).toBe('(A -> B) & A');
|
|
54
|
+
});
|
|
55
|
+
(0, vitest_1.it)('preserva formula multi-línea en fence', () => {
|
|
56
|
+
const mdx = ['```st-claim id=c1 profile=p', 'A & B', '& C', '```'].join('\n');
|
|
57
|
+
const claims = (0, v2_1.mdxToClaims)(mdx);
|
|
58
|
+
(0, vitest_1.expect)(claims).toHaveLength(1);
|
|
59
|
+
(0, vitest_1.expect)(claims[0]?.formula).toBe('A & B\n& C');
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
(0, vitest_1.describe)('mdxToClaims — edge cases', () => {
|
|
63
|
+
(0, vitest_1.it)('MDX sin claims devuelve array vacío', () => {
|
|
64
|
+
(0, vitest_1.expect)((0, v2_1.mdxToClaims)('# Solo prosa\n\nNada aquí.')).toEqual([]);
|
|
65
|
+
(0, vitest_1.expect)((0, v2_1.mdxToClaims)('')).toEqual([]);
|
|
66
|
+
});
|
|
67
|
+
(0, vitest_1.it)('ignora bloque malformado sin id y acumula warning', () => {
|
|
68
|
+
const mdx = [
|
|
69
|
+
'<!-- st:claim profile="p" formula="A" -->', // sin id
|
|
70
|
+
'<!-- st:claim id="ok" profile="p" formula="B" -->',
|
|
71
|
+
].join('\n');
|
|
72
|
+
const { claims, warnings } = (0, v2_1.mdxToClaimsDetailed)(mdx);
|
|
73
|
+
(0, vitest_1.expect)(claims).toHaveLength(1);
|
|
74
|
+
(0, vitest_1.expect)(claims[0]?.id).toBe('ok');
|
|
75
|
+
(0, vitest_1.expect)(warnings).toHaveLength(1);
|
|
76
|
+
(0, vitest_1.expect)(warnings[0]?.message).toMatch(/sin id/);
|
|
77
|
+
});
|
|
78
|
+
(0, vitest_1.it)('ignora fence sin profile y acumula warning', () => {
|
|
79
|
+
const mdx = ['```st-claim id=c1', 'A', '```'].join('\n');
|
|
80
|
+
const { claims, warnings } = (0, v2_1.mdxToClaimsDetailed)(mdx);
|
|
81
|
+
(0, vitest_1.expect)(claims).toHaveLength(0);
|
|
82
|
+
(0, vitest_1.expect)(warnings).toHaveLength(1);
|
|
83
|
+
(0, vitest_1.expect)(warnings[0]?.message).toMatch(/sin profile/);
|
|
84
|
+
});
|
|
85
|
+
(0, vitest_1.it)('ignora claim duplicada y acumula warning', () => {
|
|
86
|
+
const mdx = [
|
|
87
|
+
'<!-- st:claim id="c1" profile="p" formula="A" -->',
|
|
88
|
+
'<!-- st:claim id="c1" profile="p" formula="B" -->',
|
|
89
|
+
].join('\n');
|
|
90
|
+
const { claims, warnings } = (0, v2_1.mdxToClaimsDetailed)(mdx);
|
|
91
|
+
(0, vitest_1.expect)(claims).toHaveLength(1);
|
|
92
|
+
(0, vitest_1.expect)(claims[0]?.formula).toBe('A');
|
|
93
|
+
(0, vitest_1.expect)(warnings.some((w) => /duplicado/.test(w.message))).toBe(true);
|
|
94
|
+
});
|
|
95
|
+
(0, vitest_1.it)('no lanza con MDX completamente roto', () => {
|
|
96
|
+
(0, vitest_1.expect)(() => (0, v2_1.mdxToClaims)('<!-- st:claim incompleto')).not.toThrow();
|
|
97
|
+
(0, vitest_1.expect)(() => (0, v2_1.mdxToClaims)('```st-claim sin-cierre\nA')).not.toThrow();
|
|
98
|
+
});
|
|
99
|
+
(0, vitest_1.it)('rawBlock preserva el texto original del bloque', () => {
|
|
100
|
+
const block = '<!-- st:claim id="c1" profile="p" formula="A" -->';
|
|
101
|
+
const claims = (0, v2_1.mdxToClaims)(`pre ${block} post`);
|
|
102
|
+
(0, vitest_1.expect)(claims[0]?.rawBlock).toBe(block);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
(0, vitest_1.describe)('claimsToMDX', () => {
|
|
106
|
+
(0, vitest_1.it)('emite formato fence por default', () => {
|
|
107
|
+
const out = (0, v2_1.claimsToMDX)([mk('c1', 'A->B')]);
|
|
108
|
+
(0, vitest_1.expect)(out).toContain('```st-claim');
|
|
109
|
+
(0, vitest_1.expect)(out).toContain('id=c1');
|
|
110
|
+
(0, vitest_1.expect)(out).toContain('A->B');
|
|
111
|
+
(0, vitest_1.expect)(out.trim().endsWith('```')).toBe(true);
|
|
112
|
+
});
|
|
113
|
+
(0, vitest_1.it)('emite formato comment cuando se pide', () => {
|
|
114
|
+
const out = (0, v2_1.claimsToMDX)([mk('c1', 'A->B')], { template: 'comment' });
|
|
115
|
+
(0, vitest_1.expect)(out).toContain('<!-- st:claim');
|
|
116
|
+
(0, vitest_1.expect)(out).toContain('id="c1"');
|
|
117
|
+
(0, vitest_1.expect)(out).toContain('formula="A->B"');
|
|
118
|
+
(0, vitest_1.expect)(out).toContain('-->');
|
|
119
|
+
});
|
|
120
|
+
(0, vitest_1.it)('serializa dependencies como csv', () => {
|
|
121
|
+
const out = (0, v2_1.claimsToMDX)([mk('c2', 'B', 'p', ['c1', 'c0'])], { template: 'comment' });
|
|
122
|
+
(0, vitest_1.expect)(out).toContain('deps="c1,c0"');
|
|
123
|
+
});
|
|
124
|
+
(0, vitest_1.it)('omite deps cuando está vacío', () => {
|
|
125
|
+
const out = (0, v2_1.claimsToMDX)([mk('c1', 'A')], { template: 'comment' });
|
|
126
|
+
(0, vitest_1.expect)(out).not.toContain('deps=');
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
(0, vitest_1.describe)('round-trip claimsToMDX → mdxToClaims', () => {
|
|
130
|
+
const sample = [
|
|
131
|
+
mk('c1', 'A -> B', 'classical.propositional', []),
|
|
132
|
+
mk('c2', '(A -> B) & A', 'classical.propositional', ['c1']),
|
|
133
|
+
mk('c3', 'B', 'classical.propositional', ['c1', 'c2']),
|
|
134
|
+
];
|
|
135
|
+
(0, vitest_1.it)('preserva claims con template fence', () => {
|
|
136
|
+
const mdx = (0, v2_1.claimsToMDX)(sample, { template: 'fence' });
|
|
137
|
+
const parsed = (0, v2_1.mdxToClaims)(mdx).map(v2_1.stripMDXMetadata);
|
|
138
|
+
(0, vitest_1.expect)(parsed).toEqual(sample);
|
|
139
|
+
});
|
|
140
|
+
(0, vitest_1.it)('preserva claims con template comment', () => {
|
|
141
|
+
const mdx = (0, v2_1.claimsToMDX)(sample, { template: 'comment' });
|
|
142
|
+
const parsed = (0, v2_1.mdxToClaims)(mdx).map(v2_1.stripMDXMetadata);
|
|
143
|
+
(0, vitest_1.expect)(parsed).toEqual(sample);
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
(0, vitest_1.describe)('diffMDX', () => {
|
|
147
|
+
(0, vitest_1.it)('detecta add, modify y remove correctamente', () => {
|
|
148
|
+
const before = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', []), mk('c2', 'B', 'p', ['c1']), mk('c3', 'C', 'p', [])], { template: 'fence' });
|
|
149
|
+
const after = (0, v2_1.claimsToMDX)([
|
|
150
|
+
mk('c1', 'A', 'p', []), // sin cambios
|
|
151
|
+
mk('c2', 'B & X', 'p', ['c1']), // modificada
|
|
152
|
+
// c3 eliminada
|
|
153
|
+
mk('c4', 'D', 'p', ['c1']), // añadida
|
|
154
|
+
], { template: 'fence' });
|
|
155
|
+
const delta = (0, v2_1.diffMDX)(before, after);
|
|
156
|
+
(0, vitest_1.expect)(delta.added.map((c) => c.id)).toEqual(['c4']);
|
|
157
|
+
(0, vitest_1.expect)(delta.removed).toEqual(['c3']);
|
|
158
|
+
(0, vitest_1.expect)(delta.modified.map((m) => m.id)).toEqual(['c2']);
|
|
159
|
+
(0, vitest_1.expect)(delta.modified[0]?.before.formula).toBe('B');
|
|
160
|
+
(0, vitest_1.expect)(delta.modified[0]?.after.formula).toBe('B & X');
|
|
161
|
+
});
|
|
162
|
+
(0, vitest_1.it)('cambio en profile cuenta como modified', () => {
|
|
163
|
+
const before = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'classical.propositional', [])]);
|
|
164
|
+
const after = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'intuitionistic.propositional', [])]);
|
|
165
|
+
const delta = (0, v2_1.diffMDX)(before, after);
|
|
166
|
+
(0, vitest_1.expect)(delta.modified).toHaveLength(1);
|
|
167
|
+
(0, vitest_1.expect)(delta.added).toEqual([]);
|
|
168
|
+
(0, vitest_1.expect)(delta.removed).toEqual([]);
|
|
169
|
+
});
|
|
170
|
+
(0, vitest_1.it)('cambio en dependencies cuenta como modified', () => {
|
|
171
|
+
const before = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', ['x'])]);
|
|
172
|
+
const after = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', ['x', 'y'])]);
|
|
173
|
+
const delta = (0, v2_1.diffMDX)(before, after);
|
|
174
|
+
(0, vitest_1.expect)(delta.modified).toHaveLength(1);
|
|
175
|
+
(0, vitest_1.expect)(delta.modified[0]?.after.dependencies).toEqual(['x', 'y']);
|
|
176
|
+
});
|
|
177
|
+
(0, vitest_1.it)('orden de dependencies no cuenta como modified', () => {
|
|
178
|
+
const before = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', ['x', 'y'])]);
|
|
179
|
+
const after = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', ['y', 'x'])]);
|
|
180
|
+
const delta = (0, v2_1.diffMDX)(before, after);
|
|
181
|
+
(0, vitest_1.expect)(delta.modified).toEqual([]);
|
|
182
|
+
});
|
|
183
|
+
(0, vitest_1.it)('MDX idéntico → delta vacío', () => {
|
|
184
|
+
const mdx = (0, v2_1.claimsToMDX)([mk('c1', 'A', 'p', []), mk('c2', 'B', 'p', ['c1'])]);
|
|
185
|
+
(0, vitest_1.expect)((0, v2_1.diffMDX)(mdx, mdx)).toEqual({ added: [], removed: [], modified: [] });
|
|
186
|
+
});
|
|
187
|
+
(0, vitest_1.it)('mezcla comment y fence en mismo MDX', () => {
|
|
188
|
+
const mdx = [
|
|
189
|
+
'<!-- st:claim id="c1" profile="p" formula="A" -->',
|
|
190
|
+
'',
|
|
191
|
+
'```st-claim id=c2 profile=p deps=c1',
|
|
192
|
+
'B',
|
|
193
|
+
'```',
|
|
194
|
+
].join('\n');
|
|
195
|
+
const claims = (0, v2_1.mdxToClaims)(mdx);
|
|
196
|
+
(0, vitest_1.expect)(claims).toHaveLength(2);
|
|
197
|
+
(0, vitest_1.expect)(claims.map((c) => c.id)).toEqual(['c1', 'c2']);
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
//# sourceMappingURL=mdx-bridge.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdx-bridge.test.js","sourceRoot":"","sources":["../../../../src/tests/text-layer-v2/mdx-bridge/mdx-bridge.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,4 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export type { Claim, ClaimValidation, ClaimSource, ClaimEvaluator } from './types';
|
|
5
5
|
export { ClaimGraph, CycleError } from './claim-graph';
|
|
6
|
+
export { mdxToClaims, mdxToClaimsDetailed, claimsToMDX, diffMDX, stripMDXMetadata, } from './mdx-bridge';
|
|
7
|
+
export type { MDXClaim, MDXClaimTemplate, ClaimsToMDXOptions, MDXDelta, MDXParseWarning, MDXParseResult, } from './mdx-bridge';
|
|
6
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/text-layer/v2/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/text-layer/v2/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,OAAO,EACP,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,cAAc,GACf,MAAM,cAAc,CAAC"}
|
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
* ST Text Layer 2.0 — entry point.
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CycleError = exports.ClaimGraph = void 0;
|
|
6
|
+
exports.stripMDXMetadata = exports.diffMDX = exports.claimsToMDX = exports.mdxToClaimsDetailed = exports.mdxToClaims = exports.CycleError = exports.ClaimGraph = void 0;
|
|
7
7
|
var claim_graph_1 = require("./claim-graph");
|
|
8
8
|
Object.defineProperty(exports, "ClaimGraph", { enumerable: true, get: function () { return claim_graph_1.ClaimGraph; } });
|
|
9
9
|
Object.defineProperty(exports, "CycleError", { enumerable: true, get: function () { return claim_graph_1.CycleError; } });
|
|
10
|
+
var mdx_bridge_1 = require("./mdx-bridge");
|
|
11
|
+
Object.defineProperty(exports, "mdxToClaims", { enumerable: true, get: function () { return mdx_bridge_1.mdxToClaims; } });
|
|
12
|
+
Object.defineProperty(exports, "mdxToClaimsDetailed", { enumerable: true, get: function () { return mdx_bridge_1.mdxToClaimsDetailed; } });
|
|
13
|
+
Object.defineProperty(exports, "claimsToMDX", { enumerable: true, get: function () { return mdx_bridge_1.claimsToMDX; } });
|
|
14
|
+
Object.defineProperty(exports, "diffMDX", { enumerable: true, get: function () { return mdx_bridge_1.diffMDX; } });
|
|
15
|
+
Object.defineProperty(exports, "stripMDXMetadata", { enumerable: true, get: function () { return mdx_bridge_1.stripMDXMetadata; } });
|
|
10
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/text-layer/v2/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/text-layer/v2/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA;AAC/B,2CAMsB;AALpB,yGAAA,WAAW,OAAA;AACX,iHAAA,mBAAmB,OAAA;AACnB,yGAAA,WAAW,OAAA;AACX,qGAAA,OAAO,OAAA;AACP,8GAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MDX diff — detecta qué claims cambiaron entre dos versiones de un MDX.
|
|
3
|
+
*
|
|
4
|
+
* Algoritmo:
|
|
5
|
+
* 1. Parsear ambas versiones a Claim[] (ignorando bloques malformados).
|
|
6
|
+
* 2. Indexar por id.
|
|
7
|
+
* 3. added = ids en `after` que no estaban en `before`.
|
|
8
|
+
* removed = ids en `before` que ya no están en `after`.
|
|
9
|
+
* modified = ids en ambos cuyos campos lógicos difieren.
|
|
10
|
+
*/
|
|
11
|
+
import type { MDXDelta } from './types';
|
|
12
|
+
export declare const diffMDX: (before: string, after: string) => MDXDelta;
|
|
13
|
+
//# sourceMappingURL=diff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../src/text-layer/v2/mdx-bridge/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAqBxC,eAAO,MAAM,OAAO,GAAI,QAAQ,MAAM,EAAE,OAAO,MAAM,KAAG,QAgCvD,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* MDX diff — detecta qué claims cambiaron entre dos versiones de un MDX.
|
|
4
|
+
*
|
|
5
|
+
* Algoritmo:
|
|
6
|
+
* 1. Parsear ambas versiones a Claim[] (ignorando bloques malformados).
|
|
7
|
+
* 2. Indexar por id.
|
|
8
|
+
* 3. added = ids en `after` que no estaban en `before`.
|
|
9
|
+
* removed = ids en `before` que ya no están en `after`.
|
|
10
|
+
* modified = ids en ambos cuyos campos lógicos difieren.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.diffMDX = void 0;
|
|
14
|
+
const parser_1 = require("./parser");
|
|
15
|
+
const sortedDeps = (deps) => [...deps].sort();
|
|
16
|
+
/**
|
|
17
|
+
* Compara dos Claim por igualdad lógica (id, formula, profile, dependencies
|
|
18
|
+
* como conjunto). Ignora `source` y campos extra.
|
|
19
|
+
*/
|
|
20
|
+
const claimsEqual = (a, b) => {
|
|
21
|
+
if (a.id !== b.id)
|
|
22
|
+
return false;
|
|
23
|
+
if (a.formula !== b.formula)
|
|
24
|
+
return false;
|
|
25
|
+
if (a.profile !== b.profile)
|
|
26
|
+
return false;
|
|
27
|
+
const da = sortedDeps(a.dependencies);
|
|
28
|
+
const db = sortedDeps(b.dependencies);
|
|
29
|
+
if (da.length !== db.length)
|
|
30
|
+
return false;
|
|
31
|
+
for (let i = 0; i < da.length; i++) {
|
|
32
|
+
if (da[i] !== db[i])
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
};
|
|
37
|
+
const diffMDX = (before, after) => {
|
|
38
|
+
const beforeClaims = (0, parser_1.mdxToClaims)(before).map(parser_1.stripMDXMetadata);
|
|
39
|
+
const afterClaims = (0, parser_1.mdxToClaims)(after).map(parser_1.stripMDXMetadata);
|
|
40
|
+
const beforeById = new Map();
|
|
41
|
+
for (const c of beforeClaims)
|
|
42
|
+
beforeById.set(c.id, c);
|
|
43
|
+
const afterById = new Map();
|
|
44
|
+
for (const c of afterClaims)
|
|
45
|
+
afterById.set(c.id, c);
|
|
46
|
+
const added = [];
|
|
47
|
+
const removed = [];
|
|
48
|
+
const modified = [];
|
|
49
|
+
for (const [id, afterC] of afterById) {
|
|
50
|
+
const beforeC = beforeById.get(id);
|
|
51
|
+
if (!beforeC) {
|
|
52
|
+
added.push(afterC);
|
|
53
|
+
}
|
|
54
|
+
else if (!claimsEqual(beforeC, afterC)) {
|
|
55
|
+
modified.push({ id, before: beforeC, after: afterC });
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
for (const id of beforeById.keys()) {
|
|
59
|
+
if (!afterById.has(id))
|
|
60
|
+
removed.push(id);
|
|
61
|
+
}
|
|
62
|
+
// Determinismo por id.
|
|
63
|
+
added.sort((a, b) => a.id.localeCompare(b.id));
|
|
64
|
+
removed.sort();
|
|
65
|
+
modified.sort((a, b) => a.id.localeCompare(b.id));
|
|
66
|
+
return { added, removed, modified };
|
|
67
|
+
};
|
|
68
|
+
exports.diffMDX = diffMDX;
|
|
69
|
+
//# sourceMappingURL=diff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../../src/text-layer/v2/mdx-bridge/diff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ST Text Layer 2.0 — MDX bridge.
|
|
3
|
+
*
|
|
4
|
+
* Conversión bidireccional Claim[] ↔ MDX con diff de cambios.
|
|
5
|
+
*
|
|
6
|
+
* mdxToClaims(mdx) → MDXClaim[]
|
|
7
|
+
* claimsToMDX(claims, opts?) → string
|
|
8
|
+
* diffMDX(before, after) → MDXDelta
|
|
9
|
+
*/
|
|
10
|
+
export { mdxToClaims, mdxToClaimsDetailed, stripMDXMetadata } from './parser';
|
|
11
|
+
export { claimsToMDX } from './serializer';
|
|
12
|
+
export { diffMDX } from './diff';
|
|
13
|
+
export type { MDXClaim, MDXClaimTemplate, ClaimsToMDXOptions, MDXDelta, MDXParseWarning, MDXParseResult, } from './types';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/text-layer/v2/mdx-bridge/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ST Text Layer 2.0 — MDX bridge.
|
|
4
|
+
*
|
|
5
|
+
* Conversión bidireccional Claim[] ↔ MDX con diff de cambios.
|
|
6
|
+
*
|
|
7
|
+
* mdxToClaims(mdx) → MDXClaim[]
|
|
8
|
+
* claimsToMDX(claims, opts?) → string
|
|
9
|
+
* diffMDX(before, after) → MDXDelta
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.diffMDX = exports.claimsToMDX = exports.stripMDXMetadata = exports.mdxToClaimsDetailed = exports.mdxToClaims = void 0;
|
|
13
|
+
var parser_1 = require("./parser");
|
|
14
|
+
Object.defineProperty(exports, "mdxToClaims", { enumerable: true, get: function () { return parser_1.mdxToClaims; } });
|
|
15
|
+
Object.defineProperty(exports, "mdxToClaimsDetailed", { enumerable: true, get: function () { return parser_1.mdxToClaimsDetailed; } });
|
|
16
|
+
Object.defineProperty(exports, "stripMDXMetadata", { enumerable: true, get: function () { return parser_1.stripMDXMetadata; } });
|
|
17
|
+
var serializer_1 = require("./serializer");
|
|
18
|
+
Object.defineProperty(exports, "claimsToMDX", { enumerable: true, get: function () { return serializer_1.claimsToMDX; } });
|
|
19
|
+
var diff_1 = require("./diff");
|
|
20
|
+
Object.defineProperty(exports, "diffMDX", { enumerable: true, get: function () { return diff_1.diffMDX; } });
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/text-layer/v2/mdx-bridge/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,mCAA8E;AAArE,qGAAA,WAAW,OAAA;AAAE,6GAAA,mBAAmB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAC3D,2CAA2C;AAAlC,yGAAA,WAAW,OAAA;AACpB,+BAAiC;AAAxB,+FAAA,OAAO,OAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MDX → Claim[] parser.
|
|
3
|
+
*
|
|
4
|
+
* Reconoce dos formatos en cualquier orden y en cualquier posición del
|
|
5
|
+
* documento (dentro de prosa, dentro de listas, etc):
|
|
6
|
+
*
|
|
7
|
+
* - HTML comment style:
|
|
8
|
+
* <!-- st:claim id="c1" profile="p" formula="A->B" deps="c0,c2" -->
|
|
9
|
+
*
|
|
10
|
+
* - Fenced code block style:
|
|
11
|
+
* ```st-claim id=c1 profile=p deps=c0
|
|
12
|
+
* A->B
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Bloques malformados (sin id, sin profile, sin formula, etc.) se ignoran
|
|
16
|
+
* acumulando un warning. NUNCA lanza.
|
|
17
|
+
*/
|
|
18
|
+
import type { Claim } from '../types';
|
|
19
|
+
import type { MDXClaim, MDXParseResult } from './types';
|
|
20
|
+
/**
|
|
21
|
+
* Versión "rica" — devuelve también warnings. La API pública delega aquí.
|
|
22
|
+
*/
|
|
23
|
+
export declare const mdxToClaimsDetailed: (mdx: string) => MDXParseResult;
|
|
24
|
+
/**
|
|
25
|
+
* MDX → Claim[]. Tolera bloques malformados ignorándolos.
|
|
26
|
+
*/
|
|
27
|
+
export declare const mdxToClaims: (mdx: string) => MDXClaim[];
|
|
28
|
+
/**
|
|
29
|
+
* Helper interno: convierte MDXClaim a Claim "pelado" (sin rawBlock/source).
|
|
30
|
+
* Útil para diff que sólo compara campos lógicos.
|
|
31
|
+
*/
|
|
32
|
+
export declare const stripMDXMetadata: (claim: MDXClaim) => Claim;
|
|
33
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/text-layer/v2/mdx-bridge/parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAmB,MAAM,SAAS,CAAC;AAkGzE;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,MAAM,KAAG,cAoEjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,QAAQ,EAEjD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,QAAQ,KAAG,KAQlD,CAAC"}
|