Skip to content

Commit 533434a

Browse files
committed
feat: expose more utils
1 parent 1288ecf commit 533434a

File tree

4 files changed

+23
-17
lines changed

4 files changed

+23
-17
lines changed

packages/shikiji-compat/src/index.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ export async function getHighlighter(options: HighlighterOptions = {}) {
3434
langs,
3535
})
3636

37-
const context = shikiji.getInternalContext()
38-
3937
const defaultTheme = shikiji.getLoadedThemes()[0]
4038

4139
function codeToThemedTokens(code: string, options: CodeToThemedTokensOptions<BuiltinLanguage, BuiltinTheme>): ThemedToken[][]
@@ -99,10 +97,10 @@ export async function getHighlighter(options: HighlighterOptions = {}) {
9997
})
10098
},
10199
getBackgroundColor(theme: BuiltinTheme | ThemeRegistration | string) {
102-
return context.getTheme(theme).bg
100+
return shikiji.getTheme(theme).bg
103101
},
104102
getForegroundColor(theme: BuiltinTheme | ThemeRegistration | string) {
105-
return context.getTheme(theme).fg
103+
return shikiji.getTheme(theme).fg
106104
},
107105

108106
/**

packages/shikiji/src/core/highlighter.ts

+12-12
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,28 @@ import type { HighlighterCoreOptions, HighlighterGeneric } from '../types'
22
import { codeToHtml } from './renderer-html'
33
import { codeToTokensWithThemes } from './renderer-html-themes'
44
import { codeToThemedTokens } from './tokenizer'
5-
import { getShikiInternal } from './context'
5+
import { getShikiInternal } from './internal'
66
import { codeToHast } from './renderer-hast'
77

88
export type HighlighterCore = HighlighterGeneric<never, never>
99

1010
export async function getHighlighterCore(options: HighlighterCoreOptions = {}): Promise<HighlighterCore> {
11-
const context = await getShikiInternal(options)
11+
const internal = await getShikiInternal(options)
1212

1313
return {
14-
codeToThemedTokens: (code, options) => codeToThemedTokens(context, code, options),
15-
codeToTokensWithThemes: (code, options) => codeToTokensWithThemes(context, code, options),
16-
codeToHast: (code, options) => codeToHast(context, code, options),
17-
codeToHtml: (code, options) => codeToHtml(context, code, options),
14+
codeToThemedTokens: (code, options) => codeToThemedTokens(internal, code, options),
15+
codeToTokensWithThemes: (code, options) => codeToTokensWithThemes(internal, code, options),
16+
codeToHast: (code, options) => codeToHast(internal, code, options),
17+
codeToHtml: (code, options) => codeToHtml(internal, code, options),
1818

19-
loadLanguage: context.loadLanguage,
20-
loadTheme: context.loadTheme,
19+
loadLanguage: internal.loadLanguage,
20+
loadTheme: internal.loadTheme,
2121

22-
getTheme: context.getTheme,
22+
getTheme: internal.getTheme,
2323

24-
getLoadedThemes: context.getLoadedThemes,
25-
getLoadedLanguages: context.getLoadedLanguages,
24+
getLoadedThemes: internal.getLoadedThemes,
25+
getLoadedLanguages: internal.getLoadedLanguages,
2626

27-
getInternalContext: () => context,
27+
getInternalContext: () => internal,
2828
}
2929
}

packages/shikiji/src/core/index.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
export { loadWasm } from '../oniguruma'
22

3-
export * from './context'
43
export * from './highlighter'
54
export * from './bundle-factory'
65
export * from './utils'
76

7+
export { getShikiInternal, getShikiContext } from './internal'
88
export { codeToThemedTokens } from './tokenizer'
99
export { tokenizeAnsiWithTheme } from './tokenizer-ansi'
10+
export { codeToHast } from './renderer-hast'
11+
export { codeToHtml } from './renderer-html'
12+
export { codeToTokensWithThemes } from './renderer-html-themes'
1013
export { toShikiTheme } from './normalize'

packages/shikiji/src/core/context.ts packages/shikiji/src/core/internal.ts

+5
Original file line numberDiff line numberDiff line change
@@ -105,3 +105,8 @@ export async function getShikiInternal(options: HighlighterCoreOptions = {}): Pr
105105
loadTheme,
106106
}
107107
}
108+
109+
/**
110+
* @deprecated Use `getShikiInternal` instead.
111+
*/
112+
export const getShikiContext = getShikiInternal

0 commit comments

Comments
 (0)