UNPKG

2.6 kBJavaScriptView Raw
1(function (factory) {
2 if (typeof module === "object" && typeof module.exports === "object") {
3 var v = factory(require, exports);
4 if (v !== undefined) module.exports = v;
5 }
6 else if (typeof define === "function" && define.amd) {
7 define(["require", "exports", "../index"], factory);
8 }
9})(function (require, exports) {
10 "use strict";
11 Object.defineProperty(exports, "__esModule", { value: true });
12 const index_1 = require("../index");
13 function main(argv) {
14 const kwArgs = {
15 files: [],
16 sendMessage: console.log.bind(console)
17 };
18 for (let i = 0; i < argv.length; ++i) {
19 const arg = argv[i];
20 if (arg.charAt(0) === '-') {
21 const key = argv[i].replace(/^-+/, '');
22 const value = argv[i + 1];
23 ++i;
24 if (key === 'exclude') {
25 if (!kwArgs.exclude) {
26 kwArgs.exclude = [];
27 }
28 kwArgs.exclude.push(value);
29 }
30 else if (key === 'extern') {
31 if (!kwArgs.externs) {
32 kwArgs.externs = [];
33 }
34 kwArgs.externs.push(value);
35 }
36 else if (key === 'types') {
37 if (!kwArgs.types) {
38 kwArgs.types = [];
39 }
40 kwArgs.types.push(value);
41 }
42 else if (key === 'verbose') {
43 kwArgs.verbose = true;
44 /* decrement counter, because vebose does not take a value */
45 --i;
46 }
47 else {
48 kwArgs[key] = value;
49 }
50 }
51 else {
52 kwArgs.files.push(argv[i]);
53 }
54 }
55 ['out'].forEach(function (key) {
56 if (!kwArgs[key]) {
57 console.error(`Missing required argument "${key}"`);
58 process.exit(1);
59 }
60 });
61 if (!kwArgs.baseDir && !kwArgs.project) {
62 console.error(`Missing required argument of "baseDir" or "project"`);
63 process.exit(1);
64 }
65 if (!kwArgs.project && kwArgs.files.length === 0) {
66 console.error('Missing files');
67 process.exit(1);
68 }
69 console.log('Starting');
70 return index_1.default(kwArgs).then(function () {
71 console.log('Done!');
72 });
73 }
74 exports.default = main;
75});