From 123aa9c53ac70cae3f363f2c686b776a6c38604a Mon Sep 17 00:00:00 2001 From: Zachary Belford Date: Thu, 16 May 2019 12:00:51 -0700 Subject: [PATCH] fix: fix exported package --- package.json | 2 +- src/cli.ts | 64 +++++++++++++++++++++++++++------------------------- 2 files changed, 34 insertions(+), 32 deletions(-) diff --git a/package.json b/package.json index 30a0beb7..16023451 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "test": "npm run test:lint && npm run test:unit", "test:lint": "tslint -c tslint.json 'src/**/*.ts' --fix", "test:unit": "jest --coverage", - "build": "tsc", + "build": "tsc && rm -rf ./build/package.json && cp -R ./build/src/* build/. && rm -rf ./build/src", "watch:build": "tsc --watch", "watch:test": "jest --watch" }, diff --git a/src/cli.ts b/src/cli.ts index b211b1b3..3a372118 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -10,50 +10,52 @@ import { keyBy, flatten, chain } from "lodash"; import { IMethodMapping } from "./router"; import { resolve } from "path"; -const version = require("../../package.json").version; // tslint:disable-line - const readDir = util.promisify(fs.readdir); const basePath = "./src/method-handlers"; -let methodMapping; -try { - methodMapping = import(`${process.cwd()}/src/method-handlers)`); -} catch (e) { - console.log("no method mapping"); // tslint:disable-line - console.log(e); // tslint:disable-line -} +const cwd = process.cwd(); -program - .option("-d, --document ", "JSON string or a Path/Url pointing to an OpenROC document"); +const init = async () => { + let methodMapping; + const { version } = await import(`../package.json`); + try { + methodMapping = await import(`${cwd}/src/method-handlers)`); + } catch (e) { + console.log("no method mapping"); // tslint:disable-line + console.log(e); // tslint:disable-line + } + program + .option("-d, --document ", "JSON string or a Path/Url pointing to an OpenROC document"); -program - .version(version, "-v, --version") - .command("start") - .action(async (env, options) => { - const methodFilenames = await readDir(basePath); + program + .version(version, "-v, --version") + .command("start") + .action(async (env, options) => { + const methodFilenames = await readDir(basePath); - const baba = `${process.cwd()}/src/method-handlers`; - // const methodMapping = await import(baba); + const baba = `${process.cwd()}/src/method-handlers`; + // const methodMapping = await import(baba); - // const readMethodsPromises = methodFilenames.map(async (methodFilename) => { - // const methodPath = `./method-handlers/${methodFilename}`.replace(".ts", ""); - // const name = methodFilename.replace(".ts", ""); - // const methodHandler = await import(methodPath); + // const readMethodsPromises = methodFilenames.map(async (methodFilename) => { + // const methodPath = `./method-handlers/${methodFilename}`.replace(".ts", ""); + // const name = methodFilename.replace(".ts", ""); + // const methodHandler = await import(methodPath); - // return { name, fn: methodHandler.default }; - // }); + // return { name, fn: methodHandler.default }; + // }); - // const allMethodHandlers = flatten(await Promise.all(readMethodsPromises)); + // const allMethodHandlers = flatten(await Promise.all(readMethodsPromises)); - // const methodHandlerMap = chain(allMethodHandlers) - // .keyBy("name") - // .mapValues("fn") - // .value(); + // const methodHandlerMap = chain(allMethodHandlers) + // .keyBy("name") + // .mapValues("fn") + // .value(); - }); + }); +}; if (require.main === module) { - program.parse(process.argv); + init().then(() => program.parse(process.argv)); } else { module.exports = program; }