Skip to content

Commit 3742058

Browse files
committed
fix: theme resolution, close #59
1 parent 3ced211 commit 3742058

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

packages/slidev/node/cli.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import os from 'os'
44
import fs from 'fs-extra'
55
import yargs, { Argv } from 'yargs'
66
import prompts from 'prompts'
7-
import { blue, bold, cyan, dim, green, yellow } from 'kolorist'
7+
import { blue, bold, cyan, dim, gray, green, yellow } from 'kolorist'
88
import { LogLevel, ViteDevServer } from 'vite'
99
import * as parser from '@slidev/parser/fs'
1010
import { version } from '../package.json'
@@ -293,7 +293,7 @@ function printInfo(options: ResolvedSlidevOptions, port?: number) {
293293
console.log(` ${cyan('●') + blue('■') + yellow('▲')}`)
294294
console.log(`${bold(' Slidev')} ${blue(`v${version}`)}`)
295295
console.log()
296-
console.log(dim(' theme ') + green(options.theme))
296+
console.log(dim(' theme ') + options.theme ? green(options.theme) : gray('none'))
297297
console.log(dim(' entry ') + dim(path.dirname(options.entry) + path.sep) + path.basename(options.entry))
298298
if (port) {
299299
console.log()

packages/slidev/node/themes.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,16 @@ export function resolveThemeName(name: string) {
2525
return name
2626
if (isRelative(name))
2727
return name
28+
29+
// search for local packages first
30+
if (packageExists(`@slidev/theme-${name}`))
31+
return `@slidev/theme-${name}`
32+
if (packageExists(`slidev-theme-${name}`))
33+
return `slidev-theme-${name}`
34+
35+
// fallback to prompt install
2836
if (officialThemes[name] != null)
2937
return officialThemes[name]
30-
3138
return `slidev-theme-${name}`
3239
}
3340

0 commit comments

Comments
 (0)