Skip to content

Commit

Permalink
fix(plugin): not resolved after install, closes #18
Browse files Browse the repository at this point in the history
  • Loading branch information
Akryum committed Feb 21, 2020
1 parent 0f44eb3 commit 2ef71fe
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 8 deletions.
1 change: 1 addition & 0 deletions packages/@guijs/server-core/package.json
Expand Up @@ -42,6 +42,7 @@
"npm-registry-fetch": "^6.0.0",
"os-locale": "^4.0.0",
"portfinder": "^1.0.25",
"resolve": "^1.15.1",
"shortid": "^2.2.15",
"string_decoder": "^1.3.0",
"ws": "^7.2.1"
Expand Down
10 changes: 6 additions & 4 deletions packages/@guijs/server-core/src/schema/global-plugin/index.ts
@@ -1,16 +1,18 @@
import path from 'path'
import fs from 'fs-extra'
import { rcFolder } from '@/util/rc-folder'
import { resolveModule } from '@nodepack/module'
import { installPackage } from '@nodepack/utils'
import clearModule from 'clear-module'
import resolve from 'resolve'

export const pluginFolder = path.join(rcFolder, 'global-plugins')
fs.ensureDirSync(pluginFolder)

export function isPluginInstalled (id: string) {
clearModule(id)
return !!resolveModule(path.join(id, 'package.json'), pluginFolder)
try {
return !!resolve.sync(id, { basedir: pluginFolder })
} catch (e) {
return false
}
}

export async function installPlugin (id: string) {
Expand Down
9 changes: 6 additions & 3 deletions packages/@guijs/server-core/src/schema/project/create.ts
Expand Up @@ -11,7 +11,7 @@ import { vanillaJsGenerator } from '@/util/generator-js'
import { executeTask } from '../task'
import { isPluginInstalled, installPlugin, pluginFolder } from '../global-plugin'
import { getProjectGenerators } from '../project-type/generator'
import { loadModule } from '@nodepack/module'
import { loadModule, resolveModule } from '@nodepack/module'
import { addProjectWorkspace } from './workspace'
import { MetaProjectWorkspace } from './meta-types'
import { withFilter } from 'apollo-server-express'
Expand Down Expand Up @@ -71,8 +71,11 @@ async function loadGenerator (projectGenerator: MetaProjectGenerator) {
if (!isPluginInstalled(projectGenerator.packageName)) {
await installPlugin(projectGenerator.packageName)
}
const query = `${projectGenerator.packageName}${projectGenerator.module ? `/${projectGenerator.module}` : ''}`
clearModule(query)
let query = projectGenerator.packageName
if (projectGenerator.module) {
query = path.join(query, projectGenerator.module)
}
clearModule.all()
let generatorModule = loadModule(query, pluginFolder, true)

if (!generatorModule) {
Expand Down
2 changes: 1 addition & 1 deletion yarn.lock
Expand Up @@ -13983,7 +13983,7 @@ resolve-url@^0.2.1:
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=

resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.3.2, resolve@^1.8.1:
resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.15.1, resolve@^1.3.2, resolve@^1.8.1:
version "1.15.1"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8"
integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==
Expand Down

0 comments on commit 2ef71fe

Please sign in to comment.