@honor-minigame/cli
Version:
honor minigame pack cli
77 lines (65 loc) • 3.33 kB
JavaScript
/**
* 导出小游戏项目相关的路径
*/
import path from 'path'
import { fileURLToPath } from 'url'
import * as ct from './constanst.js'
const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)
let projectPath = process.env.PATH_PROJECT || process.cwd()
const updateProjectPath = (newProjectPath) => {
if (newProjectPath) {
projectPath = newProjectPath
}
}
// 小游戏工程目录
export let PROJECT_PATH = projectPath
// 小游戏工程src目录
export let SRC = path.resolve(PROJECT_PATH, ct.SRC)
// 小游戏工程build目录
export let BUILD = path.resolve(PROJECT_PATH, ct.BUILD)
export let BUILDTEMP = path.resolve(PROJECT_PATH, ct.BUILDTEMP)
// 小游戏工程dist目录
export let DIST = path.resolve(PROJECT_PATH, ct.DIST)
// 小游戏工程临时dist目录,打原整包时临时使用,打包完成删除
export let TEMP = path.resolve(PROJECT_PATH, ct.TEMP)
// 小游戏工程主入口 src/game.js
export let ENTRY = path.resolve(SRC, ct.ENTRY)
// 小游戏工程的配置文件 src/manifest.json
export let MANIFEST = path.resolve(SRC, ct.MANIFEST)
// 小游戏工程src目录
export let ENGINE = path.resolve(PROJECT_PATH, 'engine')
// 导出小游戏工程目录下的webpack配置文件,用于postHook
export let PROJECT_WEBPACK_CONFIG = path.join(PROJECT_PATH, 'config', ct.WEBPACK_CONFIG_FILE)
// 导出小游戏工程目录下的配置文件路径
export let PROJECT_CONFIG = path.join(PROJECT_PATH, ct.MINIGAME_CONFIG)
// 导出证书路径
export let DEBUG_PRIVATE_KEY = path.join(__dirname, 'signature', 'debug', 'private.pem')
export let DEBUG_CERTIFICATE = path.join(__dirname, 'signature', 'debug', 'certificate.pem')
export let RELEASE_PRIVATE_KEY = path.join(PROJECT_PATH, 'sign', 'release', 'private.pem')
export let RELEASE_CERTIFICATE = path.join(PROJECT_PATH, 'sign', 'release', 'certificate.pem')
// 将根目录下的COCOS plugin也都copy到build目录下, 解决cocos2.3.4版本问题
export let PLUGIN_COCOS = path.resolve(PROJECT_PATH, ct.COCOS_LIBRARY)
export let PLUGIN_COCOS_BUILD = path.resolve(BUILD, ct.COCOS_LIBRARY)
export let unUsedFiles = []
export function updateProject(newProjectPath) {
updateProjectPath(newProjectPath)
PROJECT_PATH = projectPath
SRC = path.resolve(PROJECT_PATH, ct.SRC)
BUILD = path.resolve(PROJECT_PATH, ct.BUILD)
BUILDTEMP = path.resolve(PROJECT_PATH, ct.BUILDTEMP)
DIST = path.resolve(PROJECT_PATH, ct.DIST)
TEMP = path.resolve(PROJECT_PATH, ct.TEMP)
ENTRY = path.resolve(SRC, ct.ENTRY)
ENGINE = path.resolve(PROJECT_PATH, 'engine')
MANIFEST = path.resolve(SRC, ct.MANIFEST)
PROJECT_WEBPACK_CONFIG = path.join(PROJECT_PATH, 'config', ct.WEBPACK_CONFIG_FILE)
PROJECT_CONFIG = path.join(PROJECT_PATH, ct.MINIGAME_CONFIG)
DEBUG_PRIVATE_KEY = path.join(__dirname, 'signature', 'debug', 'private.pem')
DEBUG_CERTIFICATE = path.join(__dirname, 'signature', 'debug', 'certificate.pem')
RELEASE_PRIVATE_KEY = path.join(PROJECT_PATH, 'sign', 'release', 'private.pem')
RELEASE_CERTIFICATE = path.join(PROJECT_PATH, 'sign', 'release', 'certificate.pem')
PLUGIN_COCOS = path.resolve(PROJECT_PATH, ct.COCOS_LIBRARY)
PLUGIN_COCOS_BUILD = path.resolve(BUILD, ct.COCOS_LIBRARY)
unUsedFiles = []
}