Skip to content

Commit 4439274

Browse files
committed
fix: namespace regression, close #25
1 parent 5b25e90 commit 4439274

File tree

5 files changed

+56
-17
lines changed

5 files changed

+56
-17
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
],
2020
"scripts": {
2121
"dev": "npm run build -- --watch",
22-
"example:dev": "npm -C example run dev",
23-
"example:build": "npm -C example run build",
22+
"example:dev": "npm -C example/basic run dev",
23+
"example:build": "npm -C example/basic run build",
2424
"build": "tsup src/index.ts --dts --format cjs,esm",
2525
"prepublishOnly": "npm run build",
2626
"release": "npx git-ensure -a && npx bumpp --commit --tag --push"

pnpm-lock.yaml

Lines changed: 46 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/context.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { relative, resolve } from 'path'
1+
import { relative } from 'path'
22
import Debug from 'debug'
33
import chokidar from 'chokidar'
44
import { ResolvedConfig, UpdatePayload, ViteDevServer } from 'vite'
@@ -24,7 +24,7 @@ export class Context {
2424
options: Options,
2525
public readonly viteConfig: ResolvedConfig,
2626
) {
27-
this.options = resolveOptions(options)
27+
this.options = resolveOptions(options, viteConfig)
2828
const { globs, dirs } = this.options
2929

3030
if (viteConfig.command === 'serve') {

src/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ Required<Options>,
8282
libraries: UILibraryOptions[]
8383
extensions: string[]
8484
dirs: string[]
85+
resolvedDirs: string[]
8586
globs: string[]
8687
}
8788

src/utils.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { join, parse } from 'path'
1+
import { join, parse, resolve } from 'path'
22
import minimatch from 'minimatch'
33
import { ResolvedConfig } from 'vite'
44
import { ComponentInfo, ResolvedOptions, Options } from './types'
@@ -75,7 +75,7 @@ export function stringifyComponentImport({ name, path, importName }: ComponentIn
7575
return `import ${name} from '${path}'`
7676
}
7777

78-
export function resolveOptions(options: Options): ResolvedOptions {
78+
export function resolveOptions(options: Options, viteConfig: ResolvedConfig): ResolvedOptions {
7979
const resolved = Object.assign({}, defaultOptions, options) as ResolvedOptions
8080
resolved.libraries = toArray(resolved.libraries).map(i => typeof i === 'string' ? { name: i } : i)
8181
resolved.customComponentResolvers = toArray(resolved.customComponentResolvers)
@@ -87,6 +87,7 @@ export function resolveOptions(options: Options): ResolvedOptions {
8787
: `{${resolved.extensions.join(',')}}`
8888

8989
resolved.dirs = toArray(resolved.dirs)
90+
resolved.resolvedDirs = resolved.dirs.map(i => resolve(viteConfig.root, i))
9091

9192
resolved.globs = resolved.dirs.map(i =>
9293
resolved.deep
@@ -101,14 +102,14 @@ export function resolveOptions(options: Options): ResolvedOptions {
101102
}
102103

103104
export function getNameFromFilePath(filePath: string, options: ResolvedOptions): string {
104-
const { dirs, directoryAsNamespace, globalNamespaces } = options
105+
const { resolvedDirs, directoryAsNamespace, globalNamespaces } = options
105106

106107
const parsedFilePath = parse(filePath)
107108

108109
let strippedPath = ''
109110

110111
// remove include directories from filepath
111-
for (const dir of dirs) {
112+
for (const dir of resolvedDirs) {
112113
if (parsedFilePath.dir.startsWith(dir)) {
113114
strippedPath = parsedFilePath.dir.slice(dir.length)
114115
break

0 commit comments

Comments
 (0)