@@ -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 ,
0 commit comments