@normed/bundle 2.0.3 → 2.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/bundles/log.js DELETED
@@ -1,77 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.setMinLogLevel = void 0;
7
- const chalk_1 = __importDefault(require("chalk"));
8
- function logStdOut(colour, ...message) {
9
- console.log(...message.map(m => typeof m === 'string' ? colour(m) : m));
10
- }
11
- function logStdErr(colour, ...message) {
12
- console.error(...message.map(m => typeof m === 'string' ? colour(m) : m));
13
- }
14
- function logNothing(_color, ..._message) { }
15
- const levels = ['debug', 'verbose', 'info', 'warn', 'error', 'critical'];
16
- function isLogLevel(v) {
17
- const l = v;
18
- return levels.includes(l);
19
- }
20
- function setMinLogLevel(level) {
21
- let minIndex = 0;
22
- // Validate / transform to an index
23
- if (typeof level === 'string') {
24
- const index = levels.indexOf(level);
25
- if (index !== -1) {
26
- minIndex = index;
27
- }
28
- else {
29
- throw new Error(`Unknown log level "${level}"`);
30
- }
31
- }
32
- else {
33
- if (level < 0 || level >= levels.length) {
34
- throw new Error(`Log Level must be between 0 and ${levels.length - 1}`);
35
- }
36
- else {
37
- minIndex = level;
38
- }
39
- }
40
- // Update the activeLogFunctions to match
41
- for (let index = 0; index < levels.length; ++index) {
42
- const level = levels[index];
43
- if (!level)
44
- continue; // This should never happen (type guard)
45
- if (index < minIndex) {
46
- activeLogFunctions[level] = logNothing;
47
- }
48
- else {
49
- activeLogFunctions[level] = logFunctions[level];
50
- }
51
- }
52
- }
53
- exports.setMinLogLevel = setMinLogLevel;
54
- const logFunctions = {
55
- verbose: logStdOut.bind(null, chalk_1.default.grey),
56
- debug: logStdOut.bind(null, chalk_1.default.cyan),
57
- info: logStdOut.bind(null, chalk_1.default.reset),
58
- warn: logStdErr.bind(null, chalk_1.default.yellow),
59
- error: logStdErr.bind(null, chalk_1.default.red),
60
- critical: logStdErr.bind(null, chalk_1.default.redBright)
61
- };
62
- const activeLogFunctions = Object.entries(logFunctions).reduce((acc, [k, v]) => {
63
- acc[k] = v;
64
- return acc;
65
- }, {});
66
- const envLogLevel = process.env['LOG_LEVEL'];
67
- if (!envLogLevel) {
68
- setMinLogLevel('info');
69
- }
70
- else if (isLogLevel(envLogLevel)) {
71
- setMinLogLevel(envLogLevel);
72
- }
73
- else {
74
- throw new Error(`No such log level (See LOG_LEVEL)`);
75
- }
76
- exports.default = activeLogFunctions;
77
- //# sourceMappingURL=log.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"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"}
package/bundles/types.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/bundles/utils.js DELETED
@@ -1,155 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.copy = exports.write = exports.getExtension = exports.canRefinePackageJson = exports.refinePackageJson = exports.join = exports.divide = exports.getPlatform = exports.getPlatformPart = exports.readPackageJson = exports.groupBy = void 0;
7
- const fs_extra_1 = __importDefault(require("fs-extra"));
8
- const path_1 = __importDefault(require("path"));
9
- const log_1 = __importDefault(require("./log"));
10
- require("@normed/json-types");
11
- const refinements_1 = require("@normed/refinements");
12
- function groupBy(objs, keys) {
13
- const groups = [];
14
- const keyList = [];
15
- for (const obj of objs) {
16
- const groupIndex = keyList.findIndex(list => keys.every((key, index) => list[index] === obj[key]));
17
- if (groupIndex === -1) {
18
- keyList.push(keys.map(key => obj[key]));
19
- groups.push([obj]);
20
- }
21
- else {
22
- const group = groups[groupIndex];
23
- if (!group) {
24
- throw new Error(`Keying failed in groupBy`);
25
- }
26
- group.push(obj);
27
- }
28
- }
29
- return groups;
30
- }
31
- exports.groupBy = groupBy;
32
- async function readPackageJson(buildConfig) {
33
- const packageJsonLocations = [join(buildConfig.dir.in, 'package.json'), join(buildConfig.dir.root, 'package.json')];
34
- const blank = { bundle: undefined };
35
- const packageJsonLocation = packageJsonLocations.find(file => fs_extra_1.default.existsSync(file));
36
- if (!packageJsonLocation) {
37
- log_1.default.error(`ERROR: No package.json found`);
38
- return blank;
39
- }
40
- const packageJsonData = await fs_extra_1.default.promises.readFile(packageJsonLocation, { encoding: 'utf-8' }).catch(error => {
41
- log_1.default.error(`ERROR: Unable to read package.json`, error);
42
- return null;
43
- });
44
- if (packageJsonData === null) {
45
- log_1.default.error(`ERROR: packageData was null`);
46
- return blank;
47
- }
48
- const packageJson = JSON.parse(packageJsonData);
49
- if (!(0, exports.canRefinePackageJson)([packageJsonLocation], packageJson)) {
50
- log_1.default.error(`ERROR: Failed to parse package.json`, exports.canRefinePackageJson.getLastError());
51
- return blank;
52
- }
53
- else {
54
- log_1.default.debug(`PackageData was read`);
55
- }
56
- return packageJson;
57
- }
58
- exports.readPackageJson = readPackageJson;
59
- function getPlatformPart(file) {
60
- const basename = file.split(path_1.default.sep).slice(-1)[0];
61
- if (basename === undefined) {
62
- throw new Error(`This should be impossible`);
63
- }
64
- const parts = basename.split('.');
65
- if (parts.length <= 2) {
66
- return null;
67
- }
68
- const platformPart = parts.slice(-2, -1)[0];
69
- switch (platformPart) {
70
- case 'static':
71
- case 'browser':
72
- case 'web':
73
- case 'node':
74
- case 'server':
75
- return platformPart;
76
- default:
77
- return null;
78
- }
79
- }
80
- exports.getPlatformPart = getPlatformPart;
81
- function getPlatform(file, basePlatform) {
82
- const platformPart = getPlatformPart(file);
83
- switch (platformPart) {
84
- case 'browser':
85
- return 'web';
86
- case 'node':
87
- return 'server';
88
- case 'web':
89
- case 'server':
90
- return platformPart;
91
- default:
92
- return basePlatform;
93
- }
94
- }
95
- exports.getPlatform = getPlatform;
96
- function divide(list, divider) {
97
- const a = [];
98
- const b = [];
99
- for (const el of list) {
100
- if (divider(el)) {
101
- a.push(el);
102
- }
103
- else {
104
- b.push(el);
105
- }
106
- }
107
- return [a, b];
108
- }
109
- exports.divide = divide;
110
- function isNotX(x) {
111
- return (v) => v !== x;
112
- }
113
- const isNot = {
114
- undefined: isNotX(undefined),
115
- null: isNotX(null)
116
- };
117
- function join(...parts) {
118
- return path_1.default.join(...parts.filter(isNot.undefined));
119
- }
120
- exports.join = join;
121
- exports.refinePackageJson = (0, refinements_1.makeRefinement)({
122
- bundle: (0, refinements_1.refineAny)(refinements_1.refineUndefined, (0, refinements_1.makeRefinement)({
123
- entrypoints: (0, refinements_1.refineAny)(refinements_1.refineUndefined, (0, refinements_1.refineArrayOf)(refinements_1.refineString)),
124
- typescript: (0, refinements_1.refineAny)(refinements_1.refineUndefined, (0, refinements_1.makeRefinement)({
125
- external: (0, refinements_1.refineAny)(refinements_1.refineUndefined, (0, refinements_1.refineArrayOf)(refinements_1.refineString)),
126
- declarations: (0, refinements_1.refineAny)(refinements_1.refineBoolean)
127
- }))
128
- }))
129
- });
130
- exports.canRefinePackageJson = (0, refinements_1.canRefine)(exports.refinePackageJson);
131
- /**
132
- * Get the extension of the file
133
- * note that for a file with no extension; e.g. "my/file/is", "is" will be the file extension
134
- */
135
- function getExtension(file) {
136
- return file.split('/').slice(-1)[0]?.split('.').slice(-1)[0] ?? '';
137
- }
138
- exports.getExtension = getExtension;
139
- async function write(to, data) {
140
- const dir = path_1.default.dirname(to);
141
- if (!fs_extra_1.default.existsSync(dir)) {
142
- await fs_extra_1.default.promises.mkdir(dir, { recursive: true });
143
- }
144
- await fs_extra_1.default.promises.writeFile(to, data);
145
- }
146
- exports.write = write;
147
- async function copy(from, to) {
148
- const dir = path_1.default.dirname(to);
149
- if (!fs_extra_1.default.existsSync(dir)) {
150
- await fs_extra_1.default.promises.mkdir(dir, { recursive: true });
151
- }
152
- await fs_extra_1.default.promises.copyFile(from, to);
153
- }
154
- exports.copy = copy;
155
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}