|
1 | 1 | import { parse } from "./deps.ts"; |
2 | | -import { |
3 | | - generateSnippetDocs, |
4 | | - generateVariantSections, |
5 | | -} from "./docs-gen/snippets.ts"; |
6 | | -// import { logMdTables } from "./docs-gen/table-md.ts"; |
| 2 | +import { generateDocs, populateDocsBlock } from "./docs-gen/snippets.ts"; |
7 | 3 | import { languages } from "./snippets/app.ts"; |
8 | 4 | import { |
9 | 5 | convertToVscSnippet, |
10 | | - generateSnippetsFile, |
| 6 | + generateSnippets, |
11 | 7 | groupSnippets, |
12 | 8 | } from "./utils/snippets.ts"; |
13 | 9 |
|
14 | 10 | const flags = parse(Deno.args, { |
15 | | - boolean: ["table", "snippets"], |
16 | | - default: { snippets: true }, |
| 11 | + boolean: ["snippets", "docs"], |
| 12 | + default: { snippets: false, docs: false }, |
17 | 13 | }); |
18 | 14 |
|
19 | | -if (!flags.table && !flags.snippets) { |
20 | | - console.log("Please specify at least one flag: --table or --snippets"); |
| 15 | +if (!flags.snippets && !flags.docs) { |
| 16 | + console.log("Please specify at least one flag: --snippets or --docs"); |
21 | 17 | } else { |
22 | 18 | if (flags.snippets) { |
23 | | - // Snippets generation |
24 | 19 | languages.forEach((language) => { |
25 | 20 | const categorizedVscSnippets = language |
26 | 21 | .snippetDefinitions.map( |
27 | | - (item) => ({ |
28 | | - ...item, |
29 | | - snippets: convertToVscSnippet(item.snippets), |
30 | | - }), |
| 22 | + (item) => { |
| 23 | + const snippets = convertToVscSnippet(item.snippets); |
| 24 | + return { ...item, snippets }; |
| 25 | + }, |
31 | 26 | ); |
32 | 27 |
|
33 | 28 | const variantVscSnippet = groupSnippets( |
34 | 29 | categorizedVscSnippets.map((item) => item.snippets), |
35 | 30 | ); |
36 | | - generateSnippetsFile(language.fileExtension, variantVscSnippet); |
| 31 | + generateSnippets(language.fileExtension, variantVscSnippet); |
37 | 32 | }); |
38 | 33 | } |
39 | 34 |
|
40 | | - if (flags.table) { |
41 | | - const sections = generateVariantSections(languages); |
42 | | - generateSnippetDocs(sections); |
| 35 | + // TODO: probably better to make it generate from vsc json |
| 36 | + // pass in meta, and snippets converted to vsc format |
| 37 | + if (flags.docs) { |
| 38 | + const docs = generateDocs(languages); |
| 39 | + populateDocsBlock(docs); |
43 | 40 | } |
44 | 41 | } |
0 commit comments