UNPKG

@omnia/tooling

Version:

Provide basic stuffs extensible for omnia extension.

84 lines (83 loc) 2.64 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var fs = require('fs'), path = require('path'); var utils = require("./utils"); var BuildStage = { BeforeBuild: "BeforeBuild", AfterBuild: "AfterBuild", BeforeScanManifests: "BeforeScanManifests", AfterScanManifests: "AfterScanManifests", BeforeBundleManifest: "BeforeBundleManifest", BundleManifest: "BundleManifest", AfterBundleManifest: "AfterBundleManifest", BeforeGenerateManifestsMetadata: "BeforeGenerateManifestsMetadata", GenerateManifestsMetadata: "GenerateManifestsMetadata", AfterGenerateManifestsMetadata: "AfterGenerateManifestsMetadata" }; exports.BuildStage = BuildStage; var _registeredBuildTasks = []; /** * buildTask: {type: BeforeBuild|AfterBuild, order:number(default 100 for extension), task: () -> promise } */ function registerBuildTask(buildTask) { _registeredBuildTasks.push(buildTask); } exports.registerBuildTask = registerBuildTask; function getRegisteredBuildTasks() { return _registeredBuildTasks; } exports.getRegisteredBuildTasks = getRegisteredBuildTasks; function getExtensionInfo() { var result = {}; var filePath = utils.root('extension.json'); if (fs.existsSync(filePath)) { try { result = require(filePath); } catch (err) { console.log(err); } } return result; } exports.getExtensionInfo = getExtensionInfo; function getEnviromentInfo() { var result = {}; var filePath = utils.root('environment.json'); if (fs.existsSync(filePath)) { try { result = require(filePath); } catch (err) { console.log(err); } } return result; } exports.getEnviromentInfo = getEnviromentInfo; function getConfig(path) { var filePath = (process.cwd().replace(/\\/g, "/") + "/" + path).replace(/\/\//g, "/"); if (fs.existsSync(filePath)) { try { return require(filePath); } catch (err) { console.log('have an exception when load ' + filePath + ' : ' + err); } } return null; } exports.getConfig = getConfig; function loadFile(path) { var filePath = (process.cwd() + "/" + path).replace(/\\/g, "/").replace(/\/\//g, "/"); if (fs.existsSync(filePath)) { try { return require(filePath); } catch (err) { console.log('have an exception when load ' + filePath + ' : ' + err); } } return null; } exports.loadFile = loadFile;