Skip to content

Commit 23dd6f4

Browse files
committed
fix(options): remove getWrapperClassName, make wrapperClassName to accept both string and function
1 parent a3f2dad commit 23dd6f4

File tree

2 files changed

+12
-15
lines changed

2 files changed

+12
-15
lines changed

src/index.js

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ function createPlugin() {
3636
{
3737
colorTheme = 'Default Dark+',
3838
wrapperClassName = '',
39-
getWrapperClassName = () => '',
4039
languageAliases = {},
4140
extensions = [],
4241
getLineClassName = () => '',
@@ -53,7 +52,6 @@ function createPlugin() {
5352
const lineTransformers = getLineTransformers({
5453
colorTheme,
5554
wrapperClassName,
56-
getWrapperClassName,
5755
languageAliases,
5856
extensions,
5957
getLineClassName,
@@ -179,17 +177,17 @@ function createPlugin() {
179177
);
180178
}
181179

182-
const className = joinClassNames(
183-
wrapperClassName,
184-
getWrapperClassName({
185-
language: languageName,
186-
markdownNode,
187-
codeFenceNode: node,
188-
parsedOptions: options,
189-
}),
190-
themeClassNames,
191-
'vscode-highlight'
192-
);
180+
const wrapperClassNameValue =
181+
typeof wrapperClassName === 'function'
182+
? wrapperClassName({
183+
language: languageName,
184+
markdownNode,
185+
codeFenceNode: node,
186+
parsedOptions: options
187+
})
188+
: wrapperClassName;
189+
190+
const className = joinClassNames(wrapperClassNameValue, themeClassNames, 'vscode-highlight');
193191
node.type = 'html';
194192
node.value = renderHTML(
195193
pre(

src/types.d.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@ type ColorThemeOption = string | ColorThemeSettings | ((data: CodeFenceData) =>
4141

4242
interface PluginOptions {
4343
colorTheme?: ColorThemeOption;
44-
wrapperClassName?: string;
45-
getWrapperClassName?: (data: CodeFenceData) => string;
44+
wrapperClassName?: string | ((data: CodeFenceData) => string);
4645
languageAliases?: Record<string, string>;
4746
extensions?: ExtensionDemand[];
4847
getLineClassName?: (line: LineData) => string;

0 commit comments

Comments
 (0)