@openuji/speculator 0.5.4 → 0.6.1

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 (123) hide show
  1. package/dist/index.d.ts +2 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/parse/__tests__/assembler.test.js +29 -3
  6. package/dist/parse/__tests__/assembler.test.js.map +1 -1
  7. package/dist/parse/__tests__/html-in-markdown.test.js +3 -3
  8. package/dist/parse/__tests__/html-in-markdown.test.js.map +1 -1
  9. package/dist/parse/__tests__/pipeline.test.js +4 -3
  10. package/dist/parse/__tests__/pipeline.test.js.map +1 -1
  11. package/dist/parse/__tests__/respec.test.js +9 -9
  12. package/dist/parse/__tests__/respec.test.js.map +1 -1
  13. package/dist/parse/__tests__/shorthands.test.js +6 -6
  14. package/dist/parse/__tests__/shorthands.test.js.map +1 -1
  15. package/dist/parse/assembler.d.ts.map +1 -1
  16. package/dist/parse/assembler.js +56 -0
  17. package/dist/parse/assembler.js.map +1 -1
  18. package/dist/parse/html/InlinesHtmlParser.d.ts +2 -2
  19. package/dist/parse/html/InlinesHtmlParser.d.ts.map +1 -1
  20. package/dist/parse/html/InlinesHtmlParser.js +3 -81
  21. package/dist/parse/html/InlinesHtmlParser.js.map +1 -1
  22. package/dist/parse/html/ReferenceHtmlParser.d.ts +9 -0
  23. package/dist/parse/html/ReferenceHtmlParser.d.ts.map +1 -0
  24. package/dist/parse/html/ReferenceHtmlParser.js +128 -0
  25. package/dist/parse/html/ReferenceHtmlParser.js.map +1 -0
  26. package/dist/parse/html/parser.d.ts.map +1 -1
  27. package/dist/parse/html/parser.js +7 -4
  28. package/dist/parse/html/parser.js.map +1 -1
  29. package/dist/parse/markdown/HtmlBlockMarkdownParser.d.ts.map +1 -1
  30. package/dist/parse/markdown/HtmlBlockMarkdownParser.js +3 -2
  31. package/dist/parse/markdown/HtmlBlockMarkdownParser.js.map +1 -1
  32. package/dist/parse/markdown/HtmlParagraphMarkdownParser.js +2 -2
  33. package/dist/parse/markdown/HtmlParagraphMarkdownParser.js.map +1 -1
  34. package/dist/parse/markdown/ShorthandsMarkdownParser.d.ts.map +1 -1
  35. package/dist/parse/markdown/ShorthandsMarkdownParser.js +3 -5
  36. package/dist/parse/markdown/ShorthandsMarkdownParser.js.map +1 -1
  37. package/dist/parse/markdown/parser.d.ts.map +1 -1
  38. package/dist/parse/markdown/parser.js +8 -6
  39. package/dist/parse/markdown/parser.js.map +1 -1
  40. package/dist/parse/parsers.d.ts +1 -1
  41. package/dist/parse/parsers.d.ts.map +1 -1
  42. package/dist/parse/parsers.js +3 -3
  43. package/dist/parse/parsers.js.map +1 -1
  44. package/dist/parse/pipeline.d.ts.map +1 -1
  45. package/dist/parse/pipeline.js +1 -1
  46. package/dist/parse/pipeline.js.map +1 -1
  47. package/dist/parse/registry.d.ts +9 -5
  48. package/dist/parse/registry.d.ts.map +1 -1
  49. package/dist/parse/registry.js.map +1 -1
  50. package/dist/parse/utils/hast-utils.d.ts +5 -2
  51. package/dist/parse/utils/hast-utils.d.ts.map +1 -1
  52. package/dist/parse/utils/hast-utils.js +30 -2
  53. package/dist/parse/utils/hast-utils.js.map +1 -1
  54. package/dist/pipeline/__tests__/pipeline.test.js +1 -2
  55. package/dist/pipeline/__tests__/pipeline.test.js.map +1 -1
  56. package/dist/pipeline/__tests__/workspace.test.js +2 -1
  57. package/dist/pipeline/__tests__/workspace.test.js.map +1 -1
  58. package/dist/postprocess/__tests__/dfn-resolve.test.d.ts +0 -3
  59. package/dist/postprocess/__tests__/dfn-resolve.test.d.ts.map +1 -1
  60. package/dist/postprocess/__tests__/dfn-resolve.test.js +147 -127
  61. package/dist/postprocess/__tests__/dfn-resolve.test.js.map +1 -1
  62. package/dist/postprocess/__tests__/section-id.test.js +2 -1
  63. package/dist/postprocess/__tests__/section-id.test.js.map +1 -1
  64. package/dist/postprocess/__tests__/toc.test.js +3 -1
  65. package/dist/postprocess/__tests__/toc.test.js.map +1 -1
  66. package/dist/postprocess/plugins/dfn-index.d.ts.map +1 -1
  67. package/dist/postprocess/plugins/dfn-index.js +1 -0
  68. package/dist/postprocess/plugins/dfn-index.js.map +1 -1
  69. package/dist/postprocess/plugins/reference-resolve.d.ts +4 -4
  70. package/dist/postprocess/plugins/reference-resolve.d.ts.map +1 -1
  71. package/dist/postprocess/plugins/reference-resolve.js +28 -7
  72. package/dist/postprocess/plugins/reference-resolve.js.map +1 -1
  73. package/dist/postprocess/plugins/section-id.d.ts.map +1 -1
  74. package/dist/postprocess/plugins/section-id.js +8 -4
  75. package/dist/postprocess/plugins/section-id.js.map +1 -1
  76. package/dist/postprocess/plugins/toc.d.ts.map +1 -1
  77. package/dist/postprocess/plugins/toc.js +11 -4
  78. package/dist/postprocess/plugins/toc.js.map +1 -1
  79. package/dist/postprocess/walk-ast.d.ts.map +1 -1
  80. package/dist/postprocess/walk-ast.js +4 -1
  81. package/dist/postprocess/walk-ast.js.map +1 -1
  82. package/dist/preprocess/__tests__/pipeline.test.js +16 -12
  83. package/dist/preprocess/__tests__/pipeline.test.js.map +1 -1
  84. package/dist/preprocess/config/__tests__/rules.test.js +22 -11
  85. package/dist/preprocess/config/__tests__/rules.test.js.map +1 -1
  86. package/dist/preprocess/config/doc-config.js +1 -1
  87. package/dist/preprocess/config/doc-config.js.map +1 -1
  88. package/dist/preprocess/config/index.d.ts +1 -1
  89. package/dist/preprocess/config/index.d.ts.map +1 -1
  90. package/dist/preprocess/config/index.js +1 -1
  91. package/dist/preprocess/config/index.js.map +1 -1
  92. package/dist/preprocess/config/normalize.d.ts +4 -8
  93. package/dist/preprocess/config/normalize.d.ts.map +1 -1
  94. package/dist/preprocess/config/normalize.js +20 -12
  95. package/dist/preprocess/config/normalize.js.map +1 -1
  96. package/dist/preprocess/config/types.d.ts +13 -0
  97. package/dist/preprocess/config/types.d.ts.map +1 -1
  98. package/dist/preprocess/index.d.ts +2 -2
  99. package/dist/preprocess/index.d.ts.map +1 -1
  100. package/dist/preprocess/index.js +1 -1
  101. package/dist/preprocess/index.js.map +1 -1
  102. package/dist/preprocess/pipeline.d.ts +1 -1
  103. package/dist/preprocess/pipeline.d.ts.map +1 -1
  104. package/dist/preprocess/pipeline.js +11 -16
  105. package/dist/preprocess/pipeline.js.map +1 -1
  106. package/dist/preprocess/types.d.ts +49 -2
  107. package/dist/preprocess/types.d.ts.map +1 -1
  108. package/dist/types/ast.generated.d.ts +84 -33
  109. package/dist/types/ast.generated.d.ts.map +1 -1
  110. package/dist/types/ast.generated.js +9 -3
  111. package/dist/types/ast.generated.js.map +1 -1
  112. package/dist/workspace/__tests__/sort.test.js +8 -8
  113. package/dist/workspace/__tests__/sort.test.js.map +1 -1
  114. package/dist/workspace/builder.d.ts +23 -0
  115. package/dist/workspace/builder.d.ts.map +1 -0
  116. package/dist/workspace/builder.js +50 -0
  117. package/dist/workspace/builder.js.map +1 -0
  118. package/dist/workspace/index.d.ts +2 -0
  119. package/dist/workspace/index.d.ts.map +1 -1
  120. package/dist/workspace/index.js +1 -0
  121. package/dist/workspace/index.js.map +1 -1
  122. package/package.json +1 -2
  123. package/schema/spec-ast.schema.json +209 -68
@@ -102,7 +102,7 @@ export function registerParser(parser) {
102
102
  *
103
103
  * Useful for testing or when config is handled separately.
104
104
  */
105
- export function parseCompositeSource(source, config = {}) {
105
+ export function parseCompositeSource(source, config = { id: 'anonymous' }) {
106
106
  return parse({ config, source });
107
107
  }
108
108
  //# sourceMappingURL=pipeline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/parse/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/parse/pipeline.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Manages the registration and lookup of HTML and Markdown parser modules.
5
5
  */
6
- import type { Element } from 'hast';
6
+ import type { Element, RootContent as HastRootContent } from 'hast';
7
7
  import type { RootContent as MdastRootContent } from 'mdast';
8
- import type { Block, Inline, Section } from '#src/types/ast.generated';
8
+ import type { Block, Inline, Section, SourcePos } from '#src/types/ast.generated';
9
9
  import type { SourceUnit } from '#src/preprocess/types';
10
10
  /** Node with position info from standard parsers */
11
11
  export interface NodeWithPosition {
@@ -28,6 +28,10 @@ export type BlockHandlerResult = Block | Section | (Block | Section)[] | null;
28
28
  export type InlineHandlerResult = Inline | Inline[] | null;
29
29
  /** Generic result type for either block or inline handler */
30
30
  export type HandlerResult = BlockHandlerResult | InlineHandlerResult;
31
+ /**
32
+ * Union of possible children arrays from different parsers
33
+ */
34
+ export type ParseContextChildren = HastRootContent[] | MdastRootContent[];
31
35
  /**
32
36
  * Context provided to parser modules during transformation.
33
37
  */
@@ -35,11 +39,11 @@ export interface ParseContext {
35
39
  /** The source unit being parsed */
36
40
  readonly unit: SourceUnit;
37
41
  /** Create a source position for the AST node */
38
- createSourcePos(node: NodeWithPosition): any;
42
+ createSourcePos(node: NodeWithPosition): SourcePos;
39
43
  /** Transform an array of mdast/hast inline children */
40
- transformInlineChildren(children: any[]): Inline[];
44
+ transformInlineChildren(children: ParseContextChildren): Inline[];
41
45
  /** Transform an array of mdast/hast block children */
42
- transformBlockChildren(children: any[]): (Section | Block)[];
46
+ transformBlockChildren(children: ParseContextChildren): (Section | Block)[];
43
47
  /** Get text content of element (HTML) */
44
48
  getTextContent(element: Element): string;
45
49
  /** Get attribute value (HTML) */
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/parse/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/parse/registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/parse/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/parse/registry.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { Element, RootContent as HastRootContent } from 'hast';
8
8
  import type { ParseContext } from '#src/parse/registry';
9
- import type { Inline } from '#src/types/ast.generated';
9
+ import type { Inline, SourcePos } from '#src/types/ast.generated';
10
10
  /**
11
11
  * Get element attribute value from hast element.
12
12
  * Handles various types: strings, arrays (joins with space), numbers, and booleans.
@@ -25,6 +25,9 @@ export declare function transformHastInline(node: HastRootContent, ctx: ParseCon
25
25
  /**
26
26
  * Create a hast-aware ParseContext from a base (markdown) context.
27
27
  * This allows hast nodes to be transformed using the same handler infrastructure.
28
+ *
29
+ * If parentSourcePos is provided, it will be used as the base for all child nodes
30
+ * created from the hast tree (correcting offsets for HTML inside Markdown).
28
31
  */
29
- export declare function createHastContext(ctx: ParseContext): ParseContext;
32
+ export declare function createHastContext(ctx: ParseContext, parentSourcePos?: SourcePos): ParseContext;
30
33
  //# sourceMappingURL=hast-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hast-utils.d.ts","sourceRoot":"","sources":["../../../src/parse/utils/hast-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAoB,WAAW,IAAI,eAAe,EAAE,MAAM,MAAM,CAAC;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO1E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAUvD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAsBtG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,GAAG,YAAY,CAwBjE"}
1
+ {"version":3,"file":"hast-utils.d.ts","sourceRoot":"","sources":["../../../src/parse/utils/hast-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAoB,WAAW,IAAI,eAAe,EAAE,MAAM,MAAM,CAAC;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAc1E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAUvD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAsBtG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,eAAe,CAAC,EAAE,SAAS,GAAG,YAAY,CA8C9F"}
@@ -9,7 +9,12 @@
9
9
  * Handles various types: strings, arrays (joins with space), numbers, and booleans.
10
10
  */
11
11
  export function getAttr(element, name) {
12
- const val = element.properties?.[name];
12
+ let val = element.properties?.[name];
13
+ // Fallback: if camelCase name not found, try kebab-case for data- attributes
14
+ if (val === undefined && name.startsWith('data')) {
15
+ const kebab = name.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
16
+ val = element.properties?.[kebab];
17
+ }
13
18
  if (typeof val === 'string')
14
19
  return val;
15
20
  if (Array.isArray(val))
@@ -62,11 +67,34 @@ export function transformHastInline(node, ctx) {
62
67
  /**
63
68
  * Create a hast-aware ParseContext from a base (markdown) context.
64
69
  * This allows hast nodes to be transformed using the same handler infrastructure.
70
+ *
71
+ * If parentSourcePos is provided, it will be used as the base for all child nodes
72
+ * created from the hast tree (correcting offsets for HTML inside Markdown).
65
73
  */
66
- export function createHastContext(ctx) {
74
+ export function createHastContext(ctx, parentSourcePos) {
67
75
  const originalTransform = ctx.transformInlineChildren;
76
+ // Create an overridden createSourcePos if we have a parent offset
77
+ const createSourcePos = parentSourcePos
78
+ ? (hastNode) => {
79
+ const localPos = hastNode.position;
80
+ if (!localPos)
81
+ return parentSourcePos;
82
+ return {
83
+ ...parentSourcePos,
84
+ line: parentSourcePos.line + localPos.start.line - 1,
85
+ // Column is only relative if on the first line of the fragment
86
+ column: localPos.start.line === 1
87
+ ? parentSourcePos.column + localPos.start.column - 1
88
+ : localPos.start.column,
89
+ offset: parentSourcePos.offset !== undefined
90
+ ? parentSourcePos.offset + (localPos.start.offset || 0)
91
+ : undefined
92
+ };
93
+ }
94
+ : ctx.createSourcePos;
68
95
  const hastCtx = {
69
96
  ...ctx,
97
+ createSourcePos,
70
98
  transformInlineChildren: (children) => {
71
99
  const results = [];
72
100
  for (const child of children) {
@@ -1 +1 @@
1
- {"version":3,"file":"hast-utils.js","sourceRoot":"","sources":["../../../src/parse/utils/hast-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hast-utils.js","sourceRoot":"","sources":["../../../src/parse/utils/hast-utils.ts"],"names":[],"mappings":"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"}
@@ -20,14 +20,13 @@ describe('speculate', () => {
20
20
  it('processes markdown with config', async () => {
21
21
  const fileProvider = new MemoryFileProvider({
22
22
  '/spec/index.md': '# Title\n\nContent',
23
- '/spec/config.respec.json': JSON.stringify({
23
+ '/spec/config.json': JSON.stringify({
24
24
  title: 'Test Spec',
25
25
  shortName: 'test',
26
26
  }),
27
27
  });
28
28
  const result = await speculate({
29
29
  entry: '/spec/index.md',
30
- configPath: '/spec/config.respec.json',
31
30
  plugins: corePlugins,
32
31
  fileProvider,
33
32
  });
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../../src/pipeline/__tests__/pipeline.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../../src/pipeline/__tests__/pipeline.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC;YACxC,gBAAgB,EAAE,iCAAiC;SACtD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;YAC3B,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,WAAW;YACpB,YAAY;SACf,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAE9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC;YACxC,gBAAgB,EAAE,oBAAoB;YACtC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC;gBAChC,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,MAAM;aACpB,CAAC;SACL,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;YAC3B,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,WAAW;YACpB,YAAY;SACf,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC;YACxC,kBAAkB,EAAE;;;;;aAKnB;SACJ,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;YAC3B,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,WAAW;YACpB,YAAY;SACf,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAY,CAAC;QACtE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAExC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC;YACxC,gBAAgB,EAAE,wCAAwC;YAC1D,gBAAgB,EAAE,+BAA+B;SACpD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;YAC3B,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,WAAW;YACpB,YAAY;SACf,CAAC,CAAC;QAEH,gDAAgD;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAEpD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -45,8 +45,9 @@ describe('Workspace processing', () => {
45
45
  // Deep walk docB to find the reference
46
46
  const findRef = (node) => {
47
47
  if (typeof node === 'object' && node !== null && 'type' in node) {
48
- if (node.type === 'reference' && 'targetTerm' in node && node.targetTerm === 'term a') {
48
+ if (node.type === 'workspaceDfnReference' && 'targetTerm' in node && node.targetTerm === 'term a') {
49
49
  expect('targetId' in node ? node.targetId : undefined).toBe('term-a');
50
+ expect('targetDocumentId' in node ? node.targetDocumentId : undefined).toBe('spec-a');
50
51
  resolved = true;
51
52
  }
52
53
  if ('children' in node && Array.isArray(node.children)) {
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.test.js","sourceRoot":"","sources":["../../../src/pipeline/__tests__/workspace.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.test.js","sourceRoot":"","sources":["../../../src/pipeline/__tests__/workspace.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,2 @@
1
- /**
2
- * DFN Index and Reference Resolve Plugin Tests
3
- */
4
1
  export {};
5
2
  //# sourceMappingURL=dfn-resolve.test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dfn-resolve.test.d.ts","sourceRoot":"","sources":["../../../src/postprocess/__tests__/dfn-resolve.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
1
+ {"version":3,"file":"dfn-resolve.test.d.ts","sourceRoot":"","sources":["../../../src/postprocess/__tests__/dfn-resolve.test.ts"],"names":[],"mappings":""}
@@ -1,160 +1,180 @@
1
+ import { referenceResolvePlugin } from '../plugins/reference-resolve.js';
2
+ import { describe, it, expect } from 'vitest';
1
3
  /**
2
- * DFN Index and Reference Resolve Plugin Tests
4
+ * Mock ResolveContext
3
5
  */
4
- import { describe, it, expect } from 'vitest';
5
- import { dfnIndexPlugin } from '#src/postprocess/plugins/dfn-index';
6
- import { referenceResolvePlugin } from '#src/postprocess/plugins/reference-resolve';
7
- function createDocWithDfnAndRef(dfnTerm, refTerm) {
6
+ function createCtx(doc) {
8
7
  return {
9
- type: 'document',
10
- children: [{
11
- type: 'section',
12
- children: [
8
+ document: doc,
9
+ level: 0,
10
+ };
11
+ }
12
+ describe('ReferenceResolvePlugin', () => {
13
+ it('resolves basic internal references', async () => {
14
+ const doc = {
15
+ id: 'doc-1',
16
+ type: 'document',
17
+ children: [
18
+ {
19
+ type: 'paragraph',
20
+ children: [
21
+ { type: 'text', value: 'See ' },
22
+ {
23
+ type: 'workspaceDfnReference',
24
+ targetTerm: 'term a',
25
+ children: [{ type: 'text', value: 'Term A' }],
26
+ },
27
+ ],
28
+ },
29
+ ],
30
+ indexes: {
31
+ definitions: [
13
32
  {
14
- type: 'paragraph',
15
- children: [{
16
- type: 'definition',
17
- term: dfnTerm,
18
- children: [{ type: 'text', value: dfnTerm }],
19
- }],
33
+ id: 'dfn-term-a',
34
+ term: 'term a',
35
+ documentId: 'doc-1',
36
+ sourcePos: { file: 'test.md', line: 10, column: 1 },
20
37
  },
38
+ ],
39
+ },
40
+ };
41
+ await referenceResolvePlugin.resolve(createCtx(doc));
42
+ const ref = doc.children[0].children[1];
43
+ expect(ref.targetId).toBe('dfn-term-a');
44
+ expect(ref.targetDocumentId).toBe('doc-1');
45
+ });
46
+ it('resolves using candidateTerms', async () => {
47
+ const doc = {
48
+ id: 'doc-1',
49
+ type: 'document',
50
+ children: [
51
+ {
52
+ type: 'paragraph',
53
+ children: [
54
+ {
55
+ type: 'workspaceDfnReference',
56
+ targetTerm: 'alias',
57
+ candidateTerms: ['primary'],
58
+ children: [{ type: 'text', value: 'Alias' }],
59
+ },
60
+ ],
61
+ },
62
+ ],
63
+ indexes: {
64
+ definitions: [
21
65
  {
22
- type: 'paragraph',
23
- children: [{
24
- type: 'reference',
25
- targetTerm: refTerm,
26
- children: [{ type: 'text', value: refTerm }],
27
- }],
66
+ id: 'dfn-primary',
67
+ term: 'primary',
68
+ documentId: 'doc-1',
69
+ sourcePos: { file: 'test.md', line: 10, column: 1 },
28
70
  },
29
71
  ],
30
- }],
31
- };
32
- }
33
- describe('DfnIndexPlugin', () => {
34
- it('assigns ID to definition', async () => {
35
- const doc = createDocWithDfnAndRef('task queue', 'task queue');
36
- await dfnIndexPlugin.index({ document: doc, level: 0 });
37
- const section = doc.children[0];
38
- const dfnPara = section.children[0];
39
- const dfn = dfnPara.children[0];
40
- expect(dfn.id).toBe('dfn-task-queue');
72
+ },
73
+ };
74
+ await referenceResolvePlugin.resolve(createCtx(doc));
75
+ const ref = doc.children[0].children[0];
76
+ expect(ref.targetId).toBe('dfn-primary');
41
77
  });
42
- it('preserves explicitId on definition', async () => {
78
+ it('handles unresolved references gracefully', async () => {
43
79
  const doc = {
80
+ id: 'doc-1',
44
81
  type: 'document',
45
- children: [{
46
- type: 'section',
47
- children: [{
48
- type: 'paragraph',
49
- children: [{
50
- type: 'definition',
51
- term: 'focus',
52
- explicitId: 'dom-focus',
53
- children: [{ type: 'text', value: 'focus' }],
54
- }],
55
- }],
56
- }],
82
+ children: [
83
+ {
84
+ type: 'paragraph',
85
+ children: [
86
+ {
87
+ type: 'workspaceDfnReference',
88
+ targetTerm: 'unknown',
89
+ children: [{ type: 'text', value: 'Unknown' }],
90
+ },
91
+ ],
92
+ },
93
+ ],
94
+ indexes: { definitions: [] },
57
95
  };
58
- await dfnIndexPlugin.index({ document: doc, level: 0 });
59
- const section = doc.children[0];
60
- const dfnPara = section.children[0];
61
- const dfn = dfnPara.children[0];
62
- expect(dfn.id).toBe('dom-focus');
63
- });
64
- it('builds definition index', async () => {
65
- const doc = createDocWithDfnAndRef('event loop', 'event loop');
66
- await dfnIndexPlugin.index({ document: doc, level: 0 });
67
- expect(doc.indexes?.definitions).toHaveLength(1);
68
- expect(doc.indexes?.definitions?.[0].term).toBe('event loop');
69
- expect(doc.indexes?.definitions?.[0].id).toBe('dfn-event-loop');
70
- });
71
- });
72
- describe('ReferenceResolvePlugin', () => {
73
- it('resolves reference to definition with same term', async () => {
74
- const doc = createDocWithDfnAndRef('event loop', 'event loop');
75
- await dfnIndexPlugin.index({ document: doc, level: 0 });
76
- await referenceResolvePlugin.resolve({ document: doc, level: 0 });
77
- const section = doc.children[0];
78
- const refPara = section.children[1];
79
- const ref = refPara.children[0];
80
- expect(ref.targetId).toBe('dfn-event-loop');
96
+ await referenceResolvePlugin.resolve(createCtx(doc));
97
+ const ref = doc.children[0].children[0];
98
+ expect(ref.targetId).toBeUndefined();
81
99
  });
82
- it('resolves reference using candidateTerms', async () => {
100
+ it('resolves in workspace mode using targetDocumentId', async () => {
83
101
  const doc = {
102
+ id: 'doc-1',
84
103
  type: 'document',
85
- children: [{
86
- type: 'section',
104
+ children: [
105
+ {
106
+ type: 'paragraph',
87
107
  children: [
88
108
  {
89
- type: 'paragraph',
90
- children: [{
91
- type: 'definition',
92
- term: 'event loop',
93
- linkTexts: ['event loop', 'loop'],
94
- children: [{ type: 'text', value: 'event loop' }],
95
- }],
109
+ type: 'workspaceDfnReference',
110
+ targetTerm: 'term a',
111
+ children: [{ type: 'text', value: 'Term A' }],
96
112
  },
113
+ ],
114
+ },
115
+ ],
116
+ };
117
+ const globalIndex = {
118
+ definitions: new Map([
119
+ [
120
+ 'term a',
121
+ [
97
122
  {
98
- type: 'paragraph',
99
- children: [{
100
- type: 'reference',
101
- targetTerm: 'loop',
102
- candidateTerms: ['loop'],
103
- children: [{ type: 'text', value: 'loop' }],
104
- }],
123
+ id: 'dfn-term-a',
124
+ term: 'term a',
125
+ documentId: 'other-doc',
126
+ sourcePos: { file: 'other.md', line: 5, column: 1 },
105
127
  },
106
128
  ],
107
- }],
129
+ ],
130
+ ]),
108
131
  };
109
- await dfnIndexPlugin.index({ document: doc, level: 0 });
110
- await referenceResolvePlugin.resolve({ document: doc, level: 0 });
111
- const section = doc.children[0];
112
- const refPara = section.children[1];
113
- const ref = refPara.children[0];
114
- expect(ref.targetId).toBe('dfn-event-loop');
132
+ const ctx = createCtx(doc);
133
+ ctx.workspace = { globalIndex };
134
+ await referenceResolvePlugin.resolve(ctx);
135
+ const ref = doc.children[0].children[0];
136
+ expect(ref.targetId).toBe('dfn-term-a');
137
+ expect(ref.targetDocumentId).toBe('other-doc');
115
138
  });
116
- it('resolves with forContext matching', async () => {
139
+ it('respects forContext when resolving', async () => {
117
140
  const doc = {
141
+ id: 'doc-1',
118
142
  type: 'document',
119
- children: [{
120
- type: 'section',
143
+ children: [
144
+ {
145
+ type: 'paragraph',
121
146
  children: [
122
147
  {
123
- type: 'paragraph',
124
- children: [{
125
- type: 'definition',
126
- term: 'postMessage',
127
- forContexts: ['Window'],
128
- children: [{ type: 'text', value: 'postMessage' }],
129
- }],
130
- },
131
- {
132
- type: 'paragraph',
133
- children: [{
134
- type: 'reference',
135
- targetTerm: 'postMessage',
136
- forContexts: ['Window'],
137
- children: [{ type: 'text', value: 'postMessage' }],
138
- }],
148
+ type: 'workspaceDfnReference',
149
+ targetTerm: 'term a',
150
+ forContexts: ['context-b'],
151
+ children: [{ type: 'text', value: 'Term A' }],
139
152
  },
140
153
  ],
141
- }],
154
+ },
155
+ ],
156
+ indexes: {
157
+ definitions: [
158
+ {
159
+ id: 'dfn-term-a-1',
160
+ term: 'term a',
161
+ documentId: 'doc-1',
162
+ forContexts: ['context-a'],
163
+ sourcePos: { file: 'test.md', line: 10, column: 1 },
164
+ },
165
+ {
166
+ id: 'dfn-term-a-2',
167
+ term: 'term a',
168
+ documentId: 'doc-1',
169
+ forContexts: ['context-b'],
170
+ sourcePos: { file: 'test.md', line: 20, column: 1 },
171
+ },
172
+ ],
173
+ },
142
174
  };
143
- await dfnIndexPlugin.index({ document: doc, level: 0 });
144
- await referenceResolvePlugin.resolve({ document: doc, level: 0 });
145
- const section = doc.children[0];
146
- const refPara = section.children[1];
147
- const ref = refPara.children[0];
148
- expect(ref.targetId).toBe('dfn-window-postmessage');
149
- });
150
- it('leaves targetId undefined for unresolved reference', async () => {
151
- const doc = createDocWithDfnAndRef('foo', 'bar');
152
- await dfnIndexPlugin.index({ document: doc, level: 0 });
153
- await referenceResolvePlugin.resolve({ document: doc, level: 0 });
154
- const section = doc.children[0];
155
- const refPara = section.children[1];
156
- const ref = refPara.children[0];
157
- expect(ref.targetId).toBeUndefined();
175
+ await referenceResolvePlugin.resolve(createCtx(doc));
176
+ const ref = doc.children[0].children[0];
177
+ expect(ref.targetId).toBe('dfn-term-a-2');
158
178
  });
159
179
  });
160
180
  //# sourceMappingURL=dfn-resolve.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dfn-resolve.test.js","sourceRoot":"","sources":["../../../src/postprocess/__tests__/dfn-resolve.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dfn-resolve.test.js","sourceRoot":"","sources":["../../../src/postprocess/__tests__/dfn-resolve.test.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ function createSectionWithHeading(headingText, explicitId) {
21
21
  function createDocWithSections(sections) {
22
22
  return {
23
23
  type: 'document',
24
+ id: 'test-doc',
24
25
  children: sections,
25
26
  };
26
27
  }
@@ -146,7 +147,7 @@ describe('SectionIdPlugin', () => {
146
147
  children: [
147
148
  { type: 'text', value: 'Understanding ' },
148
149
  {
149
- type: 'reference',
150
+ type: 'workspaceDfnReference',
150
151
  targetTerm: 'task queue',
151
152
  children: [{ type: 'text', value: 'Task Queue' }]
152
153
  },