UNPKG

knip

Version:

Find unused files, dependencies and exports in your TypeScript and JavaScript projects

24 lines (23 loc) 864 B
export const fencedCodeBlockMatcher = /```[\s\S]*?```/g; const scriptExtractor = /<script\b[^>]*>([\s\S]*?)<\/script>/gm; export const importMatcher = /import[^'"]+['"]([^'"]+)['"]/g; export const importsWithinScripts = (text) => { const scripts = []; let scriptMatch; while ((scriptMatch = scriptExtractor.exec(text))) { for (const importMatch of scriptMatch[1].matchAll(importMatcher)) { scripts.push(importMatch); } } return scripts.join(';\n'); }; const tsScriptExtractor = /<script\b[^>]*lang="ts"[^>]*>(?<body>[\s\S]*?)<\/script>/gm; export const tsScriptBodies = (text) => { const scripts = []; let scriptMatch; while ((scriptMatch = tsScriptExtractor.exec(text))) { if (scriptMatch.groups?.body) scripts.push(scriptMatch.groups.body); } return scripts.join(';\n'); };