{{ formatDate(post.date) }}
+{{ formatDate(date) }}
+{{ formatDate(post.date) }}
+{{ formatDate(date) }}
+ + +`; + const result = extractFromSource('src/components/Spaced.vue', code); + + expect(result.errors).toEqual([]); + expect(result.nodes.find((n) => n.name === 'ready')?.startLine).toBe(5); + expect(calls(result, 'formatDate', 2)).toBe(true); + }); +}); diff --git a/src/extraction/astro-extractor.ts b/src/extraction/astro-extractor.ts index 8b75796ad..0ecba779a 100644 --- a/src/extraction/astro-extractor.ts +++ b/src/extraction/astro-extractor.ts @@ -2,7 +2,7 @@ import { Node, Edge, ExtractionResult, ExtractionError, UnresolvedReference } fr import { generateNodeId } from './tree-sitter-helpers'; import { TreeSitterExtractor } from './tree-sitter'; import { isLanguageSupported } from './grammars'; -import { foldScriptResult, sfcFileNode } from './sfc-script'; +import { foldScriptResult, sfcFileNode, SFC_SCRIPT_ELEMENT, sfcBlockLineRanges } from './sfc-script'; /** * Astro built-in components — compiler-provided (`