don't just assume a dir in NOSE_DIR is a project
This commit is contained in:
parent
04ab968e0f
commit
38e081f2cf
|
|
@ -5,7 +5,7 @@ import { join } from "path"
|
||||||
import { readdirSync, type Dirent } from "fs"
|
import { readdirSync, type Dirent } from "fs"
|
||||||
import { sessionGet } from "./session"
|
import { sessionGet } from "./session"
|
||||||
import { DEFAULT_PROJECT, NOSE_DIR } from "./config"
|
import { DEFAULT_PROJECT, NOSE_DIR } from "./config"
|
||||||
import { isDir } from "./utils"
|
import { isDir, isFile } from "./utils"
|
||||||
|
|
||||||
export function projectName(): string {
|
export function projectName(): string {
|
||||||
const state = sessionGet()
|
const state = sessionGet()
|
||||||
|
|
@ -16,7 +16,7 @@ export function projectName(): string {
|
||||||
|
|
||||||
export function projects(): string[] {
|
export function projects(): string[] {
|
||||||
return readdirSync(NOSE_DIR, { withFileTypes: true })
|
return readdirSync(NOSE_DIR, { withFileTypes: true })
|
||||||
.filter(file => file.isDirectory())
|
.filter(dir => dir.isDirectory() && isProject(join(NOSE_DIR, dir.name)))
|
||||||
.map(dir => dir.name)
|
.map(dir => dir.name)
|
||||||
.sort()
|
.sort()
|
||||||
}
|
}
|
||||||
|
|
@ -35,3 +35,7 @@ export function projectBin(name = projectName()): string {
|
||||||
export function projectFiles(name = projectName()): Dirent[] {
|
export function projectFiles(name = projectName()): Dirent[] {
|
||||||
return readdirSync(projectDir(name), { recursive: true, withFileTypes: true })
|
return readdirSync(projectDir(name), { recursive: true, withFileTypes: true })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isProject(path: string): boolean {
|
||||||
|
return isFile(join(path, "index.ts")) || isFile(join(path, "index.tsx")) || isDir(join(path, "pub"))
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user