remove lock on shikiji

pull/3390/head
Divyansh Singh 2 years ago
parent afd9bd7d62
commit 78726cfff4

@ -101,9 +101,9 @@
"mark.js": "8.11.1", "mark.js": "8.11.1",
"minisearch": "^6.3.0", "minisearch": "^6.3.0",
"mrmime": "^2.0.0", "mrmime": "^2.0.0",
"shikiji": "0.9.12", "shikiji": "^0.9.15",
"shikiji-core": "0.9.12", "shikiji-core": "^0.9.15",
"shikiji-transformers": "0.9.12", "shikiji-transformers": "^0.9.15",
"vite": "^5.0.10", "vite": "^5.0.10",
"vue": "^3.4.3" "vue": "^3.4.3"
}, },

@ -45,14 +45,14 @@ importers:
specifier: ^2.0.0 specifier: ^2.0.0
version: 2.0.0 version: 2.0.0
shikiji: shikiji:
specifier: 0.9.12 specifier: ^0.9.15
version: 0.9.12 version: 0.9.15
shikiji-core: shikiji-core:
specifier: 0.9.12 specifier: ^0.9.15
version: 0.9.12 version: 0.9.15
shikiji-transformers: shikiji-transformers:
specifier: 0.9.12 specifier: ^0.9.15
version: 0.9.12 version: 0.9.15
vite: vite:
specifier: ^5.0.10 specifier: ^5.0.10
version: 5.0.10(@types/node@20.10.6) version: 5.0.10(@types/node@20.10.6)
@ -3982,20 +3982,20 @@ packages:
resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
dev: true dev: true
/shikiji-core@0.9.12: /shikiji-core@0.9.15:
resolution: {integrity: sha512-AYsAtsbZuq0FPT3mdskNMa+yxD5VwXrFC2sH7R2ELmncVGNYvSzR6Zlfq8iEzINq7/kKL5prtt81UFzFWTTbxQ==} resolution: {integrity: sha512-7hqIcUKS15OMs/61Qp2GvO1fSajBB36bDqi8vexIg5kp80V6v6SGtBrlq+nLlo7erMG2d1kvIuTIq1bwKI6fEg==}
dev: false dev: false
/shikiji-transformers@0.9.12: /shikiji-transformers@0.9.15:
resolution: {integrity: sha512-ge+47j4MLTbKAnTnhTTolD9DKGW2Fhp80MV7Tb2E+p4HsJixu4slq2SDV/eFR34iH/egtyi/cjGMD8vJbNLBUA==} resolution: {integrity: sha512-k0sQ6tX26/cdb8QV9CCwwr7QjRp6/AVP9C0oNIXNld3of+xCrpf74kD74piybG6vMfzBoHGsz/s60RVBJOUaYQ==}
dependencies: dependencies:
shikiji: 0.9.12 shikiji: 0.9.15
dev: false dev: false
/shikiji@0.9.12: /shikiji@0.9.15:
resolution: {integrity: sha512-jYbulSGcPKYKu2uFZOSg4lgrF7s9s8/ITFzRvczE6633wypMjnnTcRnG/mCFe6v1Dbov7bRCMsXVINBUD2FV9w==} resolution: {integrity: sha512-+inN4cN+nY7b0uCPOiqFHAk+cn2DEdM3AIQgPhAV7QKqhww/o7OGS5xvLh3SNnjke9C/HispALqGOQGYHVq7KQ==}
dependencies: dependencies:
shikiji-core: 0.9.12 shikiji-core: 0.9.15
dev: false dev: false
/side-channel@1.0.4: /side-channel@1.0.4:

@ -19,6 +19,13 @@ import anchorPlugin from 'markdown-it-anchor'
import attrsPlugin from 'markdown-it-attrs' import attrsPlugin from 'markdown-it-attrs'
// @ts-ignore // @ts-ignore
import { full as emojiPlugin } from 'markdown-it-emoji' import { full as emojiPlugin } from 'markdown-it-emoji'
import type {
BuiltinTheme,
Highlighter,
LanguageInput,
ShikijiTransformer,
ThemeRegistrationAny
} from 'shikiji'
import type { Logger } from 'vite' import type { Logger } from 'vite'
import { containerPlugin, type ContainerOptions } from './plugins/containers' import { containerPlugin, type ContainerOptions } from './plugins/containers'
import { highlight } from './plugins/highlight' import { highlight } from './plugins/highlight'
@ -28,22 +35,15 @@ import { lineNumberPlugin } from './plugins/lineNumbers'
import { linkPlugin } from './plugins/link' import { linkPlugin } from './plugins/link'
import { preWrapperPlugin } from './plugins/preWrapper' import { preWrapperPlugin } from './plugins/preWrapper'
import { snippetPlugin } from './plugins/snippet' import { snippetPlugin } from './plugins/snippet'
import type {
ThemeRegistration,
BuiltinTheme,
LanguageInput,
ShikijiTransformer,
Highlighter
} from 'shikiji'
export type { Header } from '../shared' export type { Header } from '../shared'
export type ThemeOptions = export type ThemeOptions =
| ThemeRegistration | ThemeRegistrationAny
| BuiltinTheme | BuiltinTheme
| { | {
light: ThemeRegistration | BuiltinTheme light: ThemeRegistrationAny | BuiltinTheme
dark: ThemeRegistration | BuiltinTheme dark: ThemeRegistrationAny | BuiltinTheme
} }
export interface MarkdownOptions extends MarkdownIt.Options { export interface MarkdownOptions extends MarkdownIt.Options {

@ -2,14 +2,12 @@ import { customAlphabet } from 'nanoid'
import c from 'picocolors' import c from 'picocolors'
import type { ShikijiTransformer } from 'shikiji' import type { ShikijiTransformer } from 'shikiji'
import { import {
addClassToHast,
bundledLanguages, bundledLanguages,
getHighlighter, getHighlighter,
addClassToHast,
isPlaintext as isPlainLang, isPlaintext as isPlainLang,
isSpecialLang isSpecialLang
} from 'shikiji' } from 'shikiji'
import type { Logger } from 'vite'
import type { MarkdownOptions, ThemeOptions } from '../markdown'
import { import {
transformerCompactLineOptions, transformerCompactLineOptions,
transformerNotationDiff, transformerNotationDiff,
@ -18,6 +16,8 @@ import {
transformerNotationHighlight, transformerNotationHighlight,
type TransformerCompactLineOption type TransformerCompactLineOption
} from 'shikiji-transformers' } from 'shikiji-transformers'
import type { Logger } from 'vite'
import type { MarkdownOptions, ThemeOptions } from '../markdown'
const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz', 10) const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz', 10)
@ -65,9 +65,9 @@ export async function highlight(
const highlighter = await getHighlighter({ const highlighter = await getHighlighter({
themes: themes:
typeof theme === 'string' || 'name' in theme typeof theme === 'object' && 'light' in theme && 'dark' in theme
? [theme] ? [theme.light, theme.dark]
: [theme.light, theme.dark], : [theme],
langs: [...Object.keys(bundledLanguages), ...(options.languages || [])], langs: [...Object.keys(bundledLanguages), ...(options.languages || [])],
langAlias: options.languageAlias langAlias: options.languageAlias
}) })
@ -169,15 +169,10 @@ export async function highlight(
}, },
...userTransformers ...userTransformers
], ],
meta: { meta: { __raw: attrs },
__raw: attrs ...(typeof theme === 'object' && 'light' in theme && 'dark' in theme
}, ? { themes: theme, defaultColor: false }
...(typeof theme === 'string' || 'name' in theme : { theme })
? { theme }
: {
themes: theme,
defaultColor: false
})
}) })
return fillEmptyHighlightedLine(restoreMustache(highlighted)) return fillEmptyHighlightedLine(restoreMustache(highlighted))

Loading…
Cancel
Save