@eik/cli 3.0.0-next.1 → 3.0.2
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/CHANGELOG.md +156 -3
- package/classes/alias.js +43 -16
- package/classes/index.js +47 -23
- package/classes/integrity.js +27 -16
- package/classes/login.js +21 -7
- package/classes/meta.js +20 -12
- package/classes/ping.js +20 -9
- package/classes/publish/map.js +33 -10
- package/classes/publish/package/index.js +54 -17
- package/classes/publish/package/tasks/check-bundle-sizes.js +7 -11
- package/classes/publish/package/tasks/check-if-already-published.js +8 -11
- package/classes/publish/package/tasks/cleanup.js +7 -9
- package/classes/publish/package/tasks/create-temp-directory.js +5 -9
- package/classes/publish/package/tasks/create-zip-file.js +6 -11
- package/classes/publish/package/tasks/dry-run.js +4 -8
- package/classes/publish/package/tasks/save-metafile.js +5 -7
- package/classes/publish/package/tasks/task.js +3 -5
- package/classes/publish/package/tasks/upload-files.js +16 -17
- package/classes/publish/package/tasks/validate-input.js +4 -8
- package/classes/version.js +38 -21
- package/commands/alias.js +105 -0
- package/commands/index.js +27 -0
- package/commands/init.js +69 -52
- package/commands/integrity.js +15 -32
- package/commands/login.js +23 -35
- package/commands/map-alias.js +16 -26
- package/commands/map.js +90 -0
- package/commands/meta.js +12 -29
- package/commands/npm-alias.js +16 -26
- package/commands/package-alias.js +21 -28
- package/commands/ping.js +11 -21
- package/commands/publish.js +82 -138
- package/commands/version.js +16 -33
- package/formatters/alias.js +4 -8
- package/formatters/artifact.js +4 -8
- package/formatters/file.js +3 -10
- package/formatters/index.js +5 -5
- package/formatters/version.js +5 -12
- package/index.js +53 -12
- package/package.json +49 -52
- package/readme.md +16 -4
- package/types/classes/alias.d.ts +60 -0
- package/types/classes/index.d.ts +37 -0
- package/types/classes/integrity.d.ts +35 -0
- package/types/classes/login.d.ts +25 -0
- package/types/classes/meta.d.ts +28 -0
- package/types/classes/ping.d.ts +23 -0
- package/types/classes/publish/map.d.ts +51 -0
- package/types/classes/publish/package/index.d.ts +94 -0
- package/types/classes/publish/package/tasks/check-bundle-sizes.d.ts +4 -0
- package/types/classes/publish/package/tasks/check-if-already-published.d.ts +4 -0
- package/types/classes/publish/package/tasks/cleanup.d.ts +4 -0
- package/types/classes/publish/package/tasks/create-temp-directory.d.ts +4 -0
- package/types/classes/publish/package/tasks/create-zip-file.d.ts +4 -0
- package/types/classes/publish/package/tasks/dry-run.d.ts +7 -0
- package/types/classes/publish/package/tasks/save-metafile.d.ts +4 -0
- package/types/classes/publish/package/tasks/task.d.ts +8 -0
- package/types/classes/publish/package/tasks/upload-files.d.ts +4 -0
- package/types/classes/publish/package/tasks/validate-input.d.ts +4 -0
- package/types/classes/version.d.ts +43 -0
- package/types/utils/hash/compare.d.ts +2 -0
- package/types/utils/hash/file.d.ts +2 -0
- package/types/utils/hash/files.d.ts +2 -0
- package/types/utils/hash/index.d.ts +9 -0
- package/types/utils/http/index.d.ts +12 -0
- package/types/utils/http/integrity.d.ts +2 -0
- package/types/utils/http/latest-version.d.ts +2 -0
- package/types/utils/http/request.d.ts +33 -0
- package/types/utils/http/versions.d.ts +5 -0
- package/types/utils/index.d.ts +6 -0
- package/types/utils/json/index.d.ts +9 -0
- package/types/utils/json/read.d.ts +5 -0
- package/types/utils/json/write-eik.d.ts +5 -0
- package/types/utils/json/write.d.ts +5 -0
- package/types/utils/logger.d.ts +33 -0
- package/types/utils/type-slug.d.ts +2 -0
- package/types/utils/type-title.d.ts +2 -0
- package/utils/hash/compare.js +1 -3
- package/utils/hash/file.js +3 -5
- package/utils/hash/files.js +4 -6
- package/utils/hash/index.js +4 -4
- package/utils/http/index.js +6 -5
- package/utils/http/integrity.js +2 -5
- package/utils/http/latest-version.js +2 -5
- package/utils/http/request.js +25 -19
- package/utils/http/versions.js +2 -5
- package/utils/index.js +6 -4
- package/utils/json/index.js +4 -4
- package/utils/json/read.js +5 -7
- package/utils/json/write-eik.js +4 -6
- package/utils/json/write.js +4 -6
- package/utils/logger.js +2 -5
- package/utils/type-slug.js +1 -1
- package/utils/type-title.js +1 -1
- package/utils/get-cwd.js +0 -14
@@ -0,0 +1,43 @@
|
|
1
|
+
/**
|
2
|
+
* @typedef {object} VersionOptions
|
3
|
+
* @property {import('abslog').AbstractLoggerOptions} [logger]
|
4
|
+
* @property {string} server
|
5
|
+
* @property {"package" | "npm" | "map"} [type="package"]
|
6
|
+
* @property {string} name
|
7
|
+
* @property {string} version
|
8
|
+
* @property {import("semver").ReleaseType} [level="patch"]
|
9
|
+
* @property {string} cwd
|
10
|
+
* @property {string[]} [map]
|
11
|
+
* @property {string} [out="./.eik"]
|
12
|
+
* @property {string | Record<string, string>} files
|
13
|
+
*/
|
14
|
+
export default class Version {
|
15
|
+
/**
|
16
|
+
* @param {VersionOptions} options
|
17
|
+
*/
|
18
|
+
constructor({ logger, server, type, name, version, level, cwd, map, out, files, }: VersionOptions);
|
19
|
+
log: abslog.ValidLogger;
|
20
|
+
config: EikConfig;
|
21
|
+
path: string;
|
22
|
+
level: semver.ReleaseType;
|
23
|
+
/**
|
24
|
+
* Similar to `npm version`, but updates `eik.json`
|
25
|
+
* @returns {Promise<string | null>} The new version number, or null if the versioning failed
|
26
|
+
*/
|
27
|
+
run(): Promise<string | null>;
|
28
|
+
}
|
29
|
+
export type VersionOptions = {
|
30
|
+
logger?: import("abslog").AbstractLoggerOptions;
|
31
|
+
server: string;
|
32
|
+
type?: "package" | "npm" | "map";
|
33
|
+
name: string;
|
34
|
+
version: string;
|
35
|
+
level?: import("semver").ReleaseType;
|
36
|
+
cwd: string;
|
37
|
+
map?: string[];
|
38
|
+
out?: string;
|
39
|
+
files: string | Record<string, string>;
|
40
|
+
};
|
41
|
+
import abslog from 'abslog';
|
42
|
+
import { EikConfig } from '@eik/common';
|
43
|
+
import semver from 'semver';
|
@@ -0,0 +1,12 @@
|
|
1
|
+
declare namespace _default {
|
2
|
+
export { latestVersion };
|
3
|
+
export { versions };
|
4
|
+
export { integrity };
|
5
|
+
export { request };
|
6
|
+
}
|
7
|
+
export default _default;
|
8
|
+
import latestVersion from './latest-version.js';
|
9
|
+
import versions from './versions.js';
|
10
|
+
import integrity from './integrity.js';
|
11
|
+
import request from './request.js';
|
12
|
+
export { latestVersion, versions, integrity, request };
|
@@ -0,0 +1,33 @@
|
|
1
|
+
export default request;
|
2
|
+
export type RequestOptions = {
|
3
|
+
method?: string;
|
4
|
+
host: string;
|
5
|
+
pathname: string;
|
6
|
+
data?: unknown;
|
7
|
+
file?: string;
|
8
|
+
map?: string;
|
9
|
+
token?: string;
|
10
|
+
};
|
11
|
+
/**
|
12
|
+
* @typedef {object} RequestOptions
|
13
|
+
* @property {string} [method="POST"]
|
14
|
+
* @property {string} host
|
15
|
+
* @property {string} pathname
|
16
|
+
* @property {unknown} [data]
|
17
|
+
* @property {string} [file]
|
18
|
+
* @property {string} [map]
|
19
|
+
* @property {string} [token]
|
20
|
+
*/
|
21
|
+
/**
|
22
|
+
* HTTP Utility for making requests against an Eik server
|
23
|
+
*
|
24
|
+
* @param {RequestOptions} options
|
25
|
+
*
|
26
|
+
* @returns {Promise<{ status:number; message: object | string }>} - Promise that resolves to an object with properties status and message
|
27
|
+
*
|
28
|
+
* @throws Error
|
29
|
+
*/
|
30
|
+
declare function request(options: RequestOptions): Promise<{
|
31
|
+
status: number;
|
32
|
+
message: object | string;
|
33
|
+
}>;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
export default logger;
|
2
|
+
/**
|
3
|
+
* Creates a logger object that wraps an instance of the "ora" module in order to provide consistent command line logging that includes a spinner
|
4
|
+
*
|
5
|
+
* @param {object} spinner
|
6
|
+
* @param {boolean} debug
|
7
|
+
*/
|
8
|
+
declare function logger(spinner: object, debug?: boolean): {
|
9
|
+
/**
|
10
|
+
* @param {string} message
|
11
|
+
*/
|
12
|
+
fatal(message: string): void;
|
13
|
+
/**
|
14
|
+
* @param {string} message
|
15
|
+
*/
|
16
|
+
error(message: string): void;
|
17
|
+
/**
|
18
|
+
* @param {string} message
|
19
|
+
*/
|
20
|
+
warn(message: string): void;
|
21
|
+
/**
|
22
|
+
* @param {string} message
|
23
|
+
*/
|
24
|
+
info(message: string): void;
|
25
|
+
/**
|
26
|
+
* @param {string} message
|
27
|
+
*/
|
28
|
+
debug(message: string): void;
|
29
|
+
/**
|
30
|
+
* @param {string} message
|
31
|
+
*/
|
32
|
+
trace(message: string): void;
|
33
|
+
};
|
package/utils/hash/compare.js
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
'use strict';
|
2
|
-
|
3
1
|
/**
|
4
2
|
* Compares 2 hash strings for comparison. Returns `true` if hashes are identical, false otherwise.
|
5
3
|
*
|
@@ -10,4 +8,4 @@
|
|
10
8
|
*
|
11
9
|
* @example hash.compare('a1b22c23d24e25f4g33a123b23c34', 'a1b22c23d24e25f4g33a123b23c34');
|
12
10
|
*/
|
13
|
-
|
11
|
+
export default (hash1, hash2) => hash1 === hash2;
|
package/utils/hash/file.js
CHANGED
@@ -1,7 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const ssri = require('ssri');
|
4
|
-
const fs = require('fs');
|
1
|
+
import ssri from 'ssri';
|
2
|
+
import fs from 'fs';
|
5
3
|
|
6
4
|
/**
|
7
5
|
* Reads a file from a given path and produces and returns an integrity hash from its contents
|
@@ -12,7 +10,7 @@ const fs = require('fs');
|
|
12
10
|
*
|
13
11
|
* @example hash.file('/path/to/file.js');
|
14
12
|
*/
|
15
|
-
|
13
|
+
export default async (path) => {
|
16
14
|
const integrity = await ssri.fromStream(fs.createReadStream(path));
|
17
15
|
return integrity.toString();
|
18
16
|
};
|
package/utils/hash/files.js
CHANGED
@@ -1,18 +1,16 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const ssri = require('ssri');
|
4
|
-
const fileHash = require('./file');
|
1
|
+
import ssri from 'ssri';
|
2
|
+
import fileHash from './file.js';
|
5
3
|
|
6
4
|
/**
|
7
5
|
* Reads files from given paths and produces and returns an integrity hash from all files contents
|
8
6
|
*
|
9
|
-
* @param {[
|
7
|
+
* @param {string[]} files - an array of file paths
|
10
8
|
*
|
11
9
|
* @returns {Promise<string>} - integrity string
|
12
10
|
*
|
13
11
|
* @example hash.files(['/path/to/file1.js', '/path/to/file2.js']);
|
14
12
|
*/
|
15
|
-
|
13
|
+
export default async (files) => {
|
16
14
|
const hashes = await Promise.all(files.map(fileHash));
|
17
15
|
const hasher = ssri.create();
|
18
16
|
for (const hash of hashes.sort()) {
|
package/utils/hash/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
import file from './file.js';
|
2
|
+
import files from './files.js';
|
3
|
+
import compare from './compare.js';
|
4
4
|
|
5
|
-
|
5
|
+
export default { file, files, compare };
|
package/utils/http/index.js
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
1
|
+
import latestVersion from './latest-version.js';
|
2
|
+
import versions from './versions.js';
|
3
|
+
import integrity from './integrity.js';
|
4
|
+
import request from './request.js';
|
5
5
|
|
6
|
-
|
6
|
+
export default { latestVersion, versions, integrity, request };
|
7
|
+
export { latestVersion, versions, integrity, request };
|
package/utils/http/integrity.js
CHANGED
@@ -1,7 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const { join } = require('path');
|
4
|
-
const fetch = require('node-fetch');
|
1
|
+
import { join } from 'path';
|
5
2
|
|
6
3
|
/**
|
7
4
|
* Fetches package integrity string by name and version from a given Eik asset server.
|
@@ -14,7 +11,7 @@ const fetch = require('node-fetch');
|
|
14
11
|
*
|
15
12
|
* @throws Error
|
16
13
|
*/
|
17
|
-
|
14
|
+
export default async (server, type, name, version) => {
|
18
15
|
const url = new URL(join(type, name, version), server);
|
19
16
|
url.search = `?t=${Date.now()}`;
|
20
17
|
|
@@ -1,7 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const { join } = require('path');
|
4
|
-
const fetch = require('node-fetch');
|
1
|
+
import { join } from 'path';
|
5
2
|
|
6
3
|
/**
|
7
4
|
* Fetches the latest version from an Eik server of a package by name, optionally restricting the lookup to a specified semver major version
|
@@ -14,7 +11,7 @@ const fetch = require('node-fetch');
|
|
14
11
|
*
|
15
12
|
* @throws Error
|
16
13
|
*/
|
17
|
-
|
14
|
+
export default async (server, type, name, major) => {
|
18
15
|
const url = new URL(`${join(type, name)}?t=${Date.now()}`, server);
|
19
16
|
const res = await fetch(url);
|
20
17
|
if (!res.ok) {
|
package/utils/http/request.js
CHANGED
@@ -1,59 +1,65 @@
|
|
1
|
-
|
1
|
+
import { readFile } from 'node:fs/promises';
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
/**
|
4
|
+
* @typedef {object} RequestOptions
|
5
|
+
* @property {string} [method="POST"]
|
6
|
+
* @property {string} host
|
7
|
+
* @property {string} pathname
|
8
|
+
* @property {unknown} [data]
|
9
|
+
* @property {string} [file]
|
10
|
+
* @property {string} [map]
|
11
|
+
* @property {string} [token]
|
12
|
+
*/
|
6
13
|
|
7
14
|
/**
|
8
15
|
* HTTP Utility for making requests against an Eik server
|
9
16
|
*
|
10
|
-
* @param {
|
17
|
+
* @param {RequestOptions} options
|
11
18
|
*
|
12
|
-
* @returns {Promise<{status:number
|
19
|
+
* @returns {Promise<{ status:number; message: object | string }>} - Promise that resolves to an object with properties status and message
|
13
20
|
*
|
14
21
|
* @throws Error
|
15
22
|
*/
|
16
23
|
async function request(options) {
|
17
24
|
const { method = 'POST', host, pathname, data, file, map, token } = options;
|
18
|
-
const
|
19
|
-
const headers =
|
25
|
+
const body = new FormData();
|
26
|
+
const headers = new Headers();
|
20
27
|
|
21
28
|
if (data) {
|
22
29
|
for (const [key, value] of Object.entries(data)) {
|
23
|
-
|
30
|
+
body.set(key, value);
|
24
31
|
}
|
25
32
|
}
|
26
33
|
|
27
34
|
if (file) {
|
28
|
-
|
35
|
+
const fileData = await readFile(file);
|
36
|
+
body.set('package', new Blob([fileData]));
|
29
37
|
}
|
30
38
|
|
31
39
|
if (map) {
|
32
|
-
|
40
|
+
const mapData = await readFile(map);
|
41
|
+
body.set('map', new Blob([mapData]));
|
33
42
|
}
|
34
43
|
|
35
44
|
if (token) {
|
36
|
-
headers.Authorization
|
45
|
+
headers.set('Authorization', `Bearer ${token}`);
|
37
46
|
}
|
38
47
|
|
39
48
|
try {
|
40
49
|
const url = new URL(pathname, host);
|
41
50
|
url.search = `?t=${Date.now()}`;
|
42
51
|
|
43
|
-
const res = await fetch(url, {
|
44
|
-
method,
|
45
|
-
body: form,
|
46
|
-
headers: { ...headers, ...form.getHeaders() },
|
47
|
-
});
|
52
|
+
const res = await fetch(url, { method, body, headers });
|
48
53
|
|
49
54
|
if (!res.ok) {
|
50
55
|
const err = new Error(
|
51
56
|
`Server responded with a non 200 ok status code. Response: ${res.status}`,
|
52
57
|
);
|
58
|
+
// @ts-ignore
|
53
59
|
err.statusCode = res.status;
|
54
60
|
throw err;
|
55
61
|
}
|
56
|
-
if (res
|
62
|
+
if (res?.headers?.get('content-type')?.includes('application/json')) {
|
57
63
|
return { message: await res.json(), status: res.status };
|
58
64
|
}
|
59
65
|
return { message: await res.text(), status: res.status };
|
@@ -65,4 +71,4 @@ async function request(options) {
|
|
65
71
|
}
|
66
72
|
}
|
67
73
|
|
68
|
-
|
74
|
+
export default request;
|
package/utils/http/versions.js
CHANGED
@@ -1,7 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const { join } = require('path');
|
4
|
-
const fetch = require('node-fetch');
|
1
|
+
import { join } from 'path';
|
5
2
|
|
6
3
|
/**
|
7
4
|
* Fetches package versions by name from a given Eik asset server.
|
@@ -13,7 +10,7 @@ const fetch = require('node-fetch');
|
|
13
10
|
*
|
14
11
|
* @throws Error
|
15
12
|
*/
|
16
|
-
|
13
|
+
export default async (server, type, name) => {
|
17
14
|
const pkg = join(type, name);
|
18
15
|
const url = new URL(pkg, server);
|
19
16
|
url.search = `?t=${Date.now()}`;
|
package/utils/index.js
CHANGED
@@ -1,6 +1,8 @@
|
|
1
|
-
|
1
|
+
import { helpers } from '@eik/common';
|
2
|
+
import logger from './logger.js';
|
3
|
+
import typeSlug from './type-slug.js';
|
4
|
+
import typeTitle from './type-title.js';
|
2
5
|
|
3
|
-
const
|
4
|
-
const getCWD = require('./get-cwd');
|
6
|
+
const { getDefaults } = helpers;
|
5
7
|
|
6
|
-
|
8
|
+
export { logger, getDefaults, typeSlug, typeTitle };
|
package/utils/json/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
import read from './read.js';
|
2
|
+
import write from './write.js';
|
3
|
+
import writeEik from './write-eik.js';
|
4
4
|
|
5
|
-
|
5
|
+
export default { read, write, writeEik };
|
package/utils/json/read.js
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
const fs = require('fs').promises;
|
5
|
-
const { join, isAbsolute } = require('path');
|
1
|
+
import assert from 'assert';
|
2
|
+
import fs from 'node:fs/promises';
|
3
|
+
import { join, isAbsolute } from 'path';
|
6
4
|
|
7
5
|
/**
|
8
6
|
* Reads a file at a given location, assumes the contents to be JSON and then deserializes into a JavaScript object
|
@@ -10,7 +8,7 @@ const { join, isAbsolute } = require('path');
|
|
10
8
|
* @param {string|{filename:string,cwd:string}} location - Path string or object describing location for where to write JSON to.
|
11
9
|
* If location is a string it can be relative or absolute.
|
12
10
|
* If location is an object, `pathname` must be given which can be relative or absolute. `cwd` can also be given to define the current working directory.
|
13
|
-
* @return {Promise<
|
11
|
+
* @return {Promise<unknown>} - JavaScript object deserialized from JSON file contents
|
14
12
|
*
|
15
13
|
* @example json.read('/path/to/file.json');
|
16
14
|
* @example json.read('./relative/path/to/file.json');
|
@@ -18,7 +16,7 @@ const { join, isAbsolute } = require('path');
|
|
18
16
|
* @example json.read({ filename: './relative/path/to/file.json' });
|
19
17
|
* @example json.read({ filename: './relative/path/to/file.json', cwd: '/path/to/cwd });
|
20
18
|
*/
|
21
|
-
|
19
|
+
export default async (location) => {
|
22
20
|
if (typeof location !== 'string') {
|
23
21
|
assert(
|
24
22
|
location.filename,
|
package/utils/json/write-eik.js
CHANGED
@@ -1,7 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
const fs = require('fs').promises;
|
4
|
-
const { join } = require('path');
|
1
|
+
import fs from 'node:fs/promises';
|
2
|
+
import { join } from 'path';
|
5
3
|
|
6
4
|
/**
|
7
5
|
* Reads, updates and then writes data to given eik.json file (defaults to file in current directory)
|
@@ -15,10 +13,10 @@ const { join } = require('path');
|
|
15
13
|
* @example json.writeEik({ key: 'value' }, { cwd: '/path/to/cwd' });
|
16
14
|
* @example json.writeEik({ key: 'value' }, { cwd: '/path/to/cwd', filename: 'eik.json' });
|
17
15
|
*/
|
18
|
-
|
16
|
+
export default async (data = {}, options) => {
|
19
17
|
const { cwd = process.cwd(), filename = 'eik.json' } = options;
|
20
18
|
const eikpath = join(cwd, filename);
|
21
|
-
const eik = await fs.readFile(eikpath);
|
19
|
+
const eik = await fs.readFile(eikpath, 'utf-8');
|
22
20
|
const eikjson = JSON.parse(eik);
|
23
21
|
|
24
22
|
await fs.writeFile(
|
package/utils/json/write.js
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
const fs = require('fs').promises;
|
5
|
-
const { join, isAbsolute, dirname } = require('path');
|
1
|
+
import assert from 'assert';
|
2
|
+
import fs from 'node:fs/promises';
|
3
|
+
import { join, isAbsolute, dirname } from 'path';
|
6
4
|
|
7
5
|
/**
|
8
6
|
* Utility function that can be used to write a JavaScript object to a file at a given location.
|
@@ -21,7 +19,7 @@ const { join, isAbsolute, dirname } = require('path');
|
|
21
19
|
*
|
22
20
|
* @throws Error
|
23
21
|
*/
|
24
|
-
|
22
|
+
export default async (meta = {}, location) => {
|
25
23
|
if (typeof location !== 'string') {
|
26
24
|
assert(
|
27
25
|
location.filename,
|
package/utils/logger.js
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
'use strict';
|
2
|
-
|
3
1
|
/**
|
4
2
|
* Creates a logger object that wraps an instance of the "ora" module in order to provide consistent command line logging that includes a spinner
|
5
3
|
*
|
@@ -30,10 +28,9 @@ const logger = (spinner, debug = false) => ({
|
|
30
28
|
*/
|
31
29
|
info(message) {
|
32
30
|
if (typeof message !== 'string') {
|
33
|
-
// eslint-disable-next-line no-param-reassign
|
34
31
|
spinner.text = '';
|
35
32
|
spinner.stopAndPersist();
|
36
|
-
|
33
|
+
|
37
34
|
console.log(message);
|
38
35
|
spinner.start();
|
39
36
|
} else {
|
@@ -54,4 +51,4 @@ const logger = (spinner, debug = false) => ({
|
|
54
51
|
},
|
55
52
|
});
|
56
53
|
|
57
|
-
|
54
|
+
export default logger;
|
package/utils/type-slug.js
CHANGED
package/utils/type-title.js
CHANGED
package/utils/get-cwd.js
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
'use strict';
|
2
|
-
|
3
|
-
const av = require('yargs-parser')(process.argv.slice(2));
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Returns the current working directory path
|
7
|
-
* If a --cwd or -c command line flag has been used, the value given will be returned
|
8
|
-
* Otherwise, the directory where the process was run from is used
|
9
|
-
*
|
10
|
-
* @returns {string}
|
11
|
-
*/
|
12
|
-
module.exports = function getCWD() {
|
13
|
-
return av.cwd || av.c || process.cwd();
|
14
|
-
};
|