FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

refactor: logic · show-docs/remark-code-example@ff35793 · GitHub

Commit ff35793

Browse files
committed
refactor: logic
BREAKING CHANGE: remove Options.transforms
1 parent b2e9360 commit ff35793

3 files changed

Lines changed: 24 additions & 50 deletions

File tree

‎README.md‎

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,6 @@ remark()
4242
- required: false
4343
- description: Metas of example code block
4444

45-
### Options.transforms
46-
47-
- type: object of string
48-
- default: {}
49-
- required: false
50-
- description: Transform functions of alias code
51-
5245
## Syntax
5346

5447
### code-example

‎index.mjs‎

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,18 @@ function visitCode(tree, key, visitor) {
2828
meta &&
2929
meta.split(/\s/).some((item) => item.startsWith(key)),
3030
(node) => {
31-
const { [key]: lang, copyToAfter, ...meta } = parseMeta(node.meta);
31+
const { [key]: lang, ...meta } = parseMeta(node.meta);
32+
33+
const copyToAfter = 'copyToAfter' in meta;
34+
35+
if (copyToAfter) {
36+
delete meta.copyToAfter;
37+
}
3238

3339
visitor({
3440
node,
3541
lang: lang || 'markdown',
36-
copyToAfter: (copyToAfter === '' ? true : copyToAfter) || false,
42+
copyToAfter,
3743
meta,
3844
});
3945
},
@@ -42,22 +48,23 @@ function visitCode(tree, key, visitor) {
4248

4349
/* eslint-disable no-param-reassign */
4450

45-
export function remarkCodeExample({ metas = {}, transforms = {} } = {}) {
51+
export function remarkCodeExample({ metas = {} } = {}) {
4652
return (tree) => {
47-
visitCode(tree, 'code-alias-copy', ({ node, lang, copyToAfter, meta }) => {
48-
const index = tree.children.indexOf(node);
49-
50-
node.meta = stringifyMeta(meta);
51-
52-
tree.children.splice(copyToAfter ? index + 1 : index, 0, {
53-
...node,
54-
lang,
55-
value:
56-
typeof transforms[lang] === 'function'
57-
? transforms[lang](node.value)
58-
: node.value,
59-
});
60-
});
53+
visitCode(
54+
tree,
55+
'code-alias-copy',
56+
({ node, lang, copyToAfter = false, meta }) => {
57+
const index = tree.children.indexOf(node);
58+
59+
node.meta = stringifyMeta(meta);
60+
61+
tree.children.splice(copyToAfter ? index + 1 : index, 0, {
62+
...node,
63+
lang,
64+
value: node.value,
65+
});
66+
},
67+
);
6168

6269
visitCode(
6370
tree,

‎test/to-alias.mjs‎

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -59,29 +59,3 @@ test('code-alias-copy-after', async (t) => {
5959

6060
getUtils(t).sameText(output, expected);
6161
});
62-
63-
test('code-alias-copy-transform', async (t) => {
64-
const input = `
65-
\`\`\`css tab code-alias-copy=less
66-
body {}
67-
\`\`\`
68-
`;
69-
70-
const expected = `
71-
\`\`\`less tab
72-
html {}
73-
\`\`\`
74-
75-
\`\`\`css tab
76-
body {}
77-
\`\`\`
78-
`;
79-
80-
const output = await transform(input, {
81-
transforms: {
82-
less: (original) => original.replace('body', 'html'),
83-
},
84-
});
85-
86-
getUtils(t).sameText(output, expected);
87-
});

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL