node-backpack 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cli.js ADDED
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const path = __importStar(require("path"));
27
+ const fs = __importStar(require("fs-extra"));
28
+ const yargs = __importStar(require("yargs"));
29
+ const api_1 = require("./api");
30
+ function versionNumber() {
31
+ return fs.readJSONSync(path.join(__dirname, '..', 'package.json')).version;
32
+ }
33
+ async function buildCommands() {
34
+ const argv = yargs
35
+ .usage('Usage: node-bundle COMMAND')
36
+ .option('entrypoint', { type: 'array', nargs: 1, desc: 'List of entrypoints to bundle' })
37
+ .option('external', { type: 'array', nargs: 1, default: [], desc: 'Packages in this list will be excluded from the bundle and added as dependencies (example: fsevents:optional)' })
38
+ .option('allowed-license', { type: 'array', nargs: 1, default: [], desc: 'List of valid licenses' })
39
+ .option('resource', { type: 'array', nargs: 1, default: [], desc: 'List of resources that need to be explicitly copied to the bundle (example: node_modules/proxy-agent/contextify.js:bin/contextify.js)' })
40
+ .option('dont-attribute', { type: 'string', desc: 'Dependencies matching this regular expressions wont be added to the notice file' })
41
+ .option('test', { type: 'string', desc: 'Validation command to sanity test the bundle after its created' })
42
+ .command('validate', 'Validate the package is ready for bundling', args => args
43
+ .option('fix', { type: 'boolean', default: false, alias: 'f', desc: 'Fix any fixable violations' }))
44
+ .command('write', 'Write the bundled version of the project to a temp directory')
45
+ .command('pack', 'Write the bundle and create the tarball')
46
+ .help()
47
+ .version(versionNumber())
48
+ .argv;
49
+ const command = argv._[0];
50
+ function undefinedIfEmpty(arr) {
51
+ if (!arr || arr.length === 0)
52
+ return undefined;
53
+ return arr;
54
+ }
55
+ const resources = {};
56
+ for (const resource of argv.resource) {
57
+ const parts = resource.split(':');
58
+ resources[parts[0]] = parts[1];
59
+ }
60
+ const optionalExternals = [];
61
+ const runtimeExternals = [];
62
+ for (const external of argv.external) {
63
+ const parts = external.split(':');
64
+ const name = parts[0];
65
+ const type = parts[1];
66
+ switch (type) {
67
+ case 'optional':
68
+ optionalExternals.push(name);
69
+ break;
70
+ case 'runtime':
71
+ runtimeExternals.push(name);
72
+ break;
73
+ default:
74
+ throw new Error(`Unsupported dependency type '${type}' for external package '${name}'. Supported types are: ['optional', 'runtime']`);
75
+ }
76
+ }
77
+ const props = {
78
+ packageDir: process.cwd(),
79
+ entryPoints: undefinedIfEmpty(argv.entrypoint),
80
+ externals: { dependencies: runtimeExternals, optionalDependencies: optionalExternals },
81
+ allowedLicenses: undefinedIfEmpty(argv['allowed-license']),
82
+ resources: resources,
83
+ dontAttribute: argv['dont-attribute'],
84
+ test: argv.test,
85
+ };
86
+ const bundle = new api_1.Bundle(props);
87
+ switch (command) {
88
+ case 'validate':
89
+ validate(bundle, { fix: argv.fix });
90
+ break;
91
+ case 'write':
92
+ write(bundle);
93
+ break;
94
+ case 'pack':
95
+ pack(bundle);
96
+ break;
97
+ default:
98
+ throw new Error(`Unknown command: ${command}`);
99
+ }
100
+ }
101
+ function write(bundle) {
102
+ const bundleDir = bundle.write();
103
+ console.log(bundleDir);
104
+ }
105
+ function validate(bundle, options = {}) {
106
+ const report = bundle.validate(options);
107
+ if (!report.success) {
108
+ throw new Error(report.summary);
109
+ }
110
+ }
111
+ function pack(bundle) {
112
+ bundle.pack();
113
+ }
114
+ buildCommands()
115
+ .catch((err) => {
116
+ console.error(`Error: ${err.message}`);
117
+ process.exitCode = 1;
118
+ });
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkNBQTZCO0FBQzdCLDZDQUErQjtBQUMvQiw2Q0FBK0I7QUFDL0IsK0JBQW1FO0FBRW5FLFNBQVMsYUFBYTtJQUNwQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0FBQzdFLENBQUM7QUFFRCxLQUFLLFVBQVUsYUFBYTtJQUUxQixNQUFNLElBQUksR0FBRyxLQUFLO1NBQ2YsS0FBSyxDQUFDLDRCQUE0QixDQUFDO1NBQ25DLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLCtCQUErQixFQUFFLENBQUM7U0FDeEYsTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSwrR0FBK0csRUFBRSxDQUFDO1NBQ25MLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSx3QkFBd0IsRUFBRSxDQUFDO1NBQ25HLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsdUlBQXVJLEVBQUUsQ0FBQztTQUMzTSxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxpRkFBaUYsRUFBRSxDQUFDO1NBQ3JJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxnRUFBZ0UsRUFBRSxDQUFDO1NBQzFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsNENBQTRDLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJO1NBQzVFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsNEJBQTRCLEVBQUUsQ0FBQyxDQUNwRztTQUNBLE9BQU8sQ0FBQyxPQUFPLEVBQUUsOERBQThELENBQUM7U0FDaEYsT0FBTyxDQUFDLE1BQU0sRUFBRSx5Q0FBeUMsQ0FBQztTQUMxRCxJQUFJLEVBQUU7U0FDTixPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDeEIsSUFBSSxDQUFDO0lBRVIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUxQixTQUFTLGdCQUFnQixDQUFDLEdBQVc7UUFDbkMsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUMvQyxPQUFPLEdBQWUsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxTQUFTLEdBQVEsRUFBRSxDQUFDO0lBQzFCLEtBQUssTUFBTSxRQUFRLElBQUssSUFBSSxDQUFDLFFBQXFCLEVBQUU7UUFDbEQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2hDO0lBRUQsTUFBTSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDN0IsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFFNUIsS0FBSyxNQUFNLFFBQVEsSUFBSyxJQUFJLENBQUMsUUFBcUIsRUFBRTtRQUNsRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLFVBQVU7Z0JBQ2IsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QixNQUFNO1lBQ1IsS0FBSyxTQUFTO2dCQUNaLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDNUIsTUFBTTtZQUNSO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLElBQUksMkJBQTJCLElBQUksaURBQWlELENBQUMsQ0FBQztTQUN6STtLQUNGO0lBRUQsTUFBTSxLQUFLLEdBQWdCO1FBQ3pCLFVBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO1FBQ3pCLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzlDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRTtRQUN0RixlQUFlLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUQsU0FBUyxFQUFFLFNBQVM7UUFDcEIsYUFBYSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUNyQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7S0FDaEIsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLElBQUksWUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpDLFFBQVEsT0FBTyxFQUFFO1FBQ2YsS0FBSyxVQUFVO1lBQ2IsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNwQyxNQUFNO1FBQ1IsS0FBSyxPQUFPO1lBQ1YsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2QsTUFBTTtRQUNSLEtBQUssTUFBTTtZQUNULElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNiLE1BQU07UUFDUjtZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDbEQ7QUFDSCxDQUFDO0FBRUQsU0FBUyxLQUFLLENBQUMsTUFBYztJQUMzQixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN6QixDQUFDO0FBRUQsU0FBUyxRQUFRLENBQUMsTUFBYyxFQUFFLFVBQWlDLEVBQUU7SUFDbkUsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUNuQixNQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUNqQztBQUNILENBQUM7QUFFRCxTQUFTLElBQUksQ0FBQyxNQUFjO0lBQzFCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztBQUNoQixDQUFDO0FBRUQsYUFBYSxFQUFFO0tBQ1osS0FBSyxDQUFDLENBQUMsR0FBVSxFQUFFLEVBQUU7SUFDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCB7IEJ1bmRsZSwgQnVuZGxlUHJvcHMsIEJ1bmRsZVZhbGlkYXRlT3B0aW9ucyB9IGZyb20gJy4vYXBpJztcblxuZnVuY3Rpb24gdmVyc2lvbk51bWJlcigpOiBzdHJpbmcge1xuICByZXR1cm4gZnMucmVhZEpTT05TeW5jKHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICdwYWNrYWdlLmpzb24nKSkudmVyc2lvbjtcbn1cblxuYXN5bmMgZnVuY3Rpb24gYnVpbGRDb21tYW5kcygpIHtcblxuICBjb25zdCBhcmd2ID0geWFyZ3NcbiAgICAudXNhZ2UoJ1VzYWdlOiBub2RlLWJ1bmRsZSBDT01NQU5EJylcbiAgICAub3B0aW9uKCdlbnRyeXBvaW50JywgeyB0eXBlOiAnYXJyYXknLCBuYXJnczogMSwgZGVzYzogJ0xpc3Qgb2YgZW50cnlwb2ludHMgdG8gYnVuZGxlJyB9KVxuICAgIC5vcHRpb24oJ2V4dGVybmFsJywgeyB0eXBlOiAnYXJyYXknLCBuYXJnczogMSwgZGVmYXVsdDogW10sIGRlc2M6ICdQYWNrYWdlcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBleGNsdWRlZCBmcm9tIHRoZSBidW5kbGUgYW5kIGFkZGVkIGFzIGRlcGVuZGVuY2llcyAoZXhhbXBsZTogZnNldmVudHM6b3B0aW9uYWwpJyB9KVxuICAgIC5vcHRpb24oJ2FsbG93ZWQtbGljZW5zZScsIHsgdHlwZTogJ2FycmF5JywgbmFyZ3M6IDEsIGRlZmF1bHQ6IFtdLCBkZXNjOiAnTGlzdCBvZiB2YWxpZCBsaWNlbnNlcycgfSlcbiAgICAub3B0aW9uKCdyZXNvdXJjZScsIHsgdHlwZTogJ2FycmF5JywgbmFyZ3M6IDEsIGRlZmF1bHQ6IFtdLCBkZXNjOiAnTGlzdCBvZiByZXNvdXJjZXMgdGhhdCBuZWVkIHRvIGJlIGV4cGxpY2l0bHkgY29waWVkIHRvIHRoZSBidW5kbGUgKGV4YW1wbGU6IG5vZGVfbW9kdWxlcy9wcm94eS1hZ2VudC9jb250ZXh0aWZ5LmpzOmJpbi9jb250ZXh0aWZ5LmpzKScgfSlcbiAgICAub3B0aW9uKCdkb250LWF0dHJpYnV0ZScsIHsgdHlwZTogJ3N0cmluZycsIGRlc2M6ICdEZXBlbmRlbmNpZXMgbWF0Y2hpbmcgdGhpcyByZWd1bGFyIGV4cHJlc3Npb25zIHdvbnQgYmUgYWRkZWQgdG8gdGhlIG5vdGljZSBmaWxlJyB9KVxuICAgIC5vcHRpb24oJ3Rlc3QnLCB7IHR5cGU6ICdzdHJpbmcnLCBkZXNjOiAnVmFsaWRhdGlvbiBjb21tYW5kIHRvIHNhbml0eSB0ZXN0IHRoZSBidW5kbGUgYWZ0ZXIgaXRzIGNyZWF0ZWQnIH0pXG4gICAgLmNvbW1hbmQoJ3ZhbGlkYXRlJywgJ1ZhbGlkYXRlIHRoZSBwYWNrYWdlIGlzIHJlYWR5IGZvciBidW5kbGluZycsIGFyZ3MgPT4gYXJnc1xuICAgICAgLm9wdGlvbignZml4JywgeyB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6IGZhbHNlLCBhbGlhczogJ2YnLCBkZXNjOiAnRml4IGFueSBmaXhhYmxlIHZpb2xhdGlvbnMnIH0pLFxuICAgIClcbiAgICAuY29tbWFuZCgnd3JpdGUnLCAnV3JpdGUgdGhlIGJ1bmRsZWQgdmVyc2lvbiBvZiB0aGUgcHJvamVjdCB0byBhIHRlbXAgZGlyZWN0b3J5JylcbiAgICAuY29tbWFuZCgncGFjaycsICdXcml0ZSB0aGUgYnVuZGxlIGFuZCBjcmVhdGUgdGhlIHRhcmJhbGwnKVxuICAgIC5oZWxwKClcbiAgICAudmVyc2lvbih2ZXJzaW9uTnVtYmVyKCkpXG4gICAgLmFyZ3Y7XG5cbiAgY29uc3QgY29tbWFuZCA9IGFyZ3YuX1swXTtcblxuICBmdW5jdGlvbiB1bmRlZmluZWRJZkVtcHR5KGFycj86IGFueVtdKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIGlmICghYXJyIHx8IGFyci5sZW5ndGggPT09IDApIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGFyciBhcyBzdHJpbmdbXTtcbiAgfVxuXG4gIGNvbnN0IHJlc291cmNlczogYW55ID0ge307XG4gIGZvciAoY29uc3QgcmVzb3VyY2Ugb2YgKGFyZ3YucmVzb3VyY2UgYXMgc3RyaW5nW10pKSB7XG4gICAgY29uc3QgcGFydHMgPSByZXNvdXJjZS5zcGxpdCgnOicpO1xuICAgIHJlc291cmNlc1twYXJ0c1swXV0gPSBwYXJ0c1sxXTtcbiAgfVxuXG4gIGNvbnN0IG9wdGlvbmFsRXh0ZXJuYWxzID0gW107XG4gIGNvbnN0IHJ1bnRpbWVFeHRlcm5hbHMgPSBbXTtcblxuICBmb3IgKGNvbnN0IGV4dGVybmFsIG9mIChhcmd2LmV4dGVybmFsIGFzIHN0cmluZ1tdKSkge1xuICAgIGNvbnN0IHBhcnRzID0gZXh0ZXJuYWwuc3BsaXQoJzonKTtcbiAgICBjb25zdCBuYW1lID0gcGFydHNbMF07XG4gICAgY29uc3QgdHlwZSA9IHBhcnRzWzFdO1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAnb3B0aW9uYWwnOlxuICAgICAgICBvcHRpb25hbEV4dGVybmFscy5wdXNoKG5hbWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3J1bnRpbWUnOlxuICAgICAgICBydW50aW1lRXh0ZXJuYWxzLnB1c2gobmFtZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBkZXBlbmRlbmN5IHR5cGUgJyR7dHlwZX0nIGZvciBleHRlcm5hbCBwYWNrYWdlICcke25hbWV9Jy4gU3VwcG9ydGVkIHR5cGVzIGFyZTogWydvcHRpb25hbCcsICdydW50aW1lJ11gKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBwcm9wczogQnVuZGxlUHJvcHMgPSB7XG4gICAgcGFja2FnZURpcjogcHJvY2Vzcy5jd2QoKSxcbiAgICBlbnRyeVBvaW50czogdW5kZWZpbmVkSWZFbXB0eShhcmd2LmVudHJ5cG9pbnQpLFxuICAgIGV4dGVybmFsczogeyBkZXBlbmRlbmNpZXM6IHJ1bnRpbWVFeHRlcm5hbHMsIG9wdGlvbmFsRGVwZW5kZW5jaWVzOiBvcHRpb25hbEV4dGVybmFscyB9LFxuICAgIGFsbG93ZWRMaWNlbnNlczogdW5kZWZpbmVkSWZFbXB0eShhcmd2WydhbGxvd2VkLWxpY2Vuc2UnXSksXG4gICAgcmVzb3VyY2VzOiByZXNvdXJjZXMsXG4gICAgZG9udEF0dHJpYnV0ZTogYXJndlsnZG9udC1hdHRyaWJ1dGUnXSxcbiAgICB0ZXN0OiBhcmd2LnRlc3QsXG4gIH07XG5cbiAgY29uc3QgYnVuZGxlID0gbmV3IEJ1bmRsZShwcm9wcyk7XG5cbiAgc3dpdGNoIChjb21tYW5kKSB7XG4gICAgY2FzZSAndmFsaWRhdGUnOlxuICAgICAgdmFsaWRhdGUoYnVuZGxlLCB7IGZpeDogYXJndi5maXggfSk7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd3cml0ZSc6XG4gICAgICB3cml0ZShidW5kbGUpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAncGFjayc6XG4gICAgICBwYWNrKGJ1bmRsZSk7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNvbW1hbmQ6ICR7Y29tbWFuZH1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB3cml0ZShidW5kbGU6IEJ1bmRsZSkge1xuICBjb25zdCBidW5kbGVEaXIgPSBidW5kbGUud3JpdGUoKTtcbiAgY29uc29sZS5sb2coYnVuZGxlRGlyKTtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGUoYnVuZGxlOiBCdW5kbGUsIG9wdGlvbnM6IEJ1bmRsZVZhbGlkYXRlT3B0aW9ucyA9IHt9KSB7XG4gIGNvbnN0IHJlcG9ydCA9IGJ1bmRsZS52YWxpZGF0ZShvcHRpb25zKTtcbiAgaWYgKCFyZXBvcnQuc3VjY2Vzcykge1xuICAgIHRocm93IG5ldyBFcnJvcihyZXBvcnQuc3VtbWFyeSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGFjayhidW5kbGU6IEJ1bmRsZSkge1xuICBidW5kbGUucGFjaygpO1xufVxuXG5idWlsZENvbW1hbmRzKClcbiAgLmNhdGNoKChlcnI6IEVycm9yKSA9PiB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3I6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgcHJvY2Vzcy5leGl0Q29kZSA9IDE7XG4gIH0pO1xuIl19
package/lib/index.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './api';
package/lib/index.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./api"), exports);
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBpJzsiXX0=
package/package.json ADDED
@@ -0,0 +1,101 @@
1
+ {
2
+ "name": "node-backpack",
3
+ "bin": {
4
+ "node-backpack": "bin/node-backpack"
5
+ },
6
+ "scripts": {
7
+ "build": "npx projen build",
8
+ "bump": "npx projen bump",
9
+ "clobber": "npx projen clobber",
10
+ "compile": "npx projen compile",
11
+ "default": "npx projen default",
12
+ "eject": "npx projen eject",
13
+ "eslint": "npx projen eslint",
14
+ "package": "npx projen package",
15
+ "post-compile": "npx projen post-compile",
16
+ "post-upgrade": "npx projen post-upgrade",
17
+ "pre-compile": "npx projen pre-compile",
18
+ "release": "npx projen release",
19
+ "test": "npx projen test",
20
+ "test:update": "npx projen test:update",
21
+ "test:watch": "npx projen test:watch",
22
+ "unbump": "npx projen unbump",
23
+ "upgrade": "npx projen upgrade",
24
+ "watch": "npx projen watch",
25
+ "projen": "npx projen"
26
+ },
27
+ "devDependencies": {
28
+ "@types/fs-extra": "^9.0.13",
29
+ "@types/jest": "^27.4.1",
30
+ "@types/license-checker": "^25.0.3",
31
+ "@types/madge": "^5.0.0",
32
+ "@types/node": "^12",
33
+ "@typescript-eslint/eslint-plugin": "^5",
34
+ "@typescript-eslint/parser": "^5",
35
+ "eslint": "^8",
36
+ "eslint-import-resolver-node": "^0.3.6",
37
+ "eslint-import-resolver-typescript": "^2.7.1",
38
+ "eslint-plugin-import": "^2.26.0",
39
+ "jest": "^27.5.1",
40
+ "jest-junit": "^13",
41
+ "json-schema": "^0.4.0",
42
+ "npm-check-updates": "^12",
43
+ "projen": "^0.54.41",
44
+ "standard-version": "^9",
45
+ "ts-jest": "^27.1.4",
46
+ "typescript": "^4.6.3"
47
+ },
48
+ "dependencies": {
49
+ "esbuild": "^0.14.38",
50
+ "fs-extra": "^10.1.0",
51
+ "license-checker": "^25.0.1",
52
+ "madge": "^5.0.1",
53
+ "shlex": "^2.1.0",
54
+ "yargs": "^17.4.1"
55
+ },
56
+ "main": "lib/index.js",
57
+ "license": "Apache-2.0",
58
+ "version": "0.0.4",
59
+ "jest": {
60
+ "testMatch": [
61
+ "<rootDir>/src/**/__tests__/**/*.ts?(x)",
62
+ "<rootDir>/(test|src)/**/?(*.)+(spec|test).ts?(x)"
63
+ ],
64
+ "clearMocks": true,
65
+ "collectCoverage": true,
66
+ "coverageReporters": [
67
+ "json",
68
+ "lcov",
69
+ "clover",
70
+ "cobertura",
71
+ "text"
72
+ ],
73
+ "coverageDirectory": "coverage",
74
+ "coveragePathIgnorePatterns": [
75
+ "/node_modules/"
76
+ ],
77
+ "testPathIgnorePatterns": [
78
+ "/node_modules/"
79
+ ],
80
+ "watchPathIgnorePatterns": [
81
+ "/node_modules/"
82
+ ],
83
+ "reporters": [
84
+ "default",
85
+ [
86
+ "jest-junit",
87
+ {
88
+ "outputDirectory": "test-reports"
89
+ }
90
+ ]
91
+ ],
92
+ "preset": "ts-jest",
93
+ "globals": {
94
+ "ts-jest": {
95
+ "tsconfig": "tsconfig.dev.json"
96
+ }
97
+ }
98
+ },
99
+ "types": "lib/index.d.ts",
100
+ "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
101
+ }