@appium/docutils 2.4.1 → 2.4.3

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.
Files changed (41) hide show
  1. package/build/lib/builder/deploy.d.ts.map +1 -1
  2. package/build/lib/builder/deploy.js +2 -3
  3. package/build/lib/builder/deploy.js.map +1 -1
  4. package/build/lib/cli/check.d.ts.map +1 -1
  5. package/build/lib/cli/check.js +9 -11
  6. package/build/lib/cli/check.js.map +1 -1
  7. package/build/lib/cli/config.d.ts.map +1 -1
  8. package/build/lib/cli/config.js +1 -2
  9. package/build/lib/cli/config.js.map +1 -1
  10. package/build/lib/cli/index.d.ts.map +1 -1
  11. package/build/lib/cli/index.js +1 -2
  12. package/build/lib/cli/index.js.map +1 -1
  13. package/build/lib/fs.d.ts +19 -7
  14. package/build/lib/fs.d.ts.map +1 -1
  15. package/build/lib/fs.js +21 -18
  16. package/build/lib/fs.js.map +1 -1
  17. package/build/lib/logger.d.ts +0 -7
  18. package/build/lib/logger.d.ts.map +1 -1
  19. package/build/lib/logger.js +8 -6
  20. package/build/lib/logger.js.map +1 -1
  21. package/build/lib/scaffold.d.ts.map +1 -1
  22. package/build/lib/scaffold.js +4 -5
  23. package/build/lib/scaffold.js.map +1 -1
  24. package/build/lib/util.d.ts +16 -6
  25. package/build/lib/util.d.ts.map +1 -1
  26. package/build/lib/util.js +69 -18
  27. package/build/lib/util.js.map +1 -1
  28. package/build/lib/validate.d.ts.map +1 -1
  29. package/build/lib/validate.js +3 -7
  30. package/build/lib/validate.js.map +1 -1
  31. package/lib/builder/deploy.ts +10 -5
  32. package/lib/cli/check.ts +10 -9
  33. package/lib/cli/config.ts +1 -2
  34. package/lib/cli/index.ts +1 -2
  35. package/lib/fs.ts +22 -27
  36. package/lib/logger.ts +7 -3
  37. package/lib/scaffold.ts +7 -8
  38. package/lib/util.ts +69 -26
  39. package/lib/validate.ts +3 -4
  40. package/package.json +4 -5
  41. package/requirements.txt +1 -1
@@ -1,14 +1,10 @@
1
- /**
2
- * Utilities
3
- * @module
4
- */
5
- import _ from 'lodash';
6
1
  import type { SpawnOptions } from 'node:child_process';
7
2
  import type { TeenProcessExecOptions } from 'teen_process';
8
3
  /**
9
4
  * Computes a relative path, prepending `./`
10
5
  */
11
- export declare const relative: _.CurriedFunction2<string, string, string>;
6
+ export declare function relative(from: string): (to: string) => string;
7
+ export declare function relative(from: string, to: string): string;
12
8
  /**
13
9
  * A stopwatch-like thing
14
10
  *
@@ -40,6 +36,20 @@ export declare const isStringArray: (value: any) => value is string[];
40
36
  */
41
37
  export declare const argify: (obj: Record<string, string | number | boolean | undefined>) => string[];
42
38
  export type SpawnBackgroundProcessOpts = Omit<SpawnOptions, 'stdio'>;
39
+ /**
40
+ * Converts a string to kebab-case.
41
+ * @param value Input string
42
+ * @returns Kebab-cased string
43
+ */
44
+ export declare function kebabCase(value: string): string;
45
+ /**
46
+ * Performs a deep "defaults" merge into a clone of `target`.
47
+ * Only undefined properties in `target` are filled from `defaults`.
48
+ * @param target Destination object
49
+ * @param defaults Default values object
50
+ * @returns Merged clone
51
+ */
52
+ export declare function mergeDefaultsDeep<T extends Record<string, any>>(target: T, defaults: T): T;
43
53
  /**
44
54
  * Spawns a long-running "background" child process. This is expected to only return control to the
45
55
  * parent process in the case of a nonzero exit code from the child process.
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGrD,OAAO,KAAK,EAAY,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAGpE;;GAEG;AACH,eAAO,MAAM,QAAQ,4CAEpB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,gBAQnC;yBARe,SAAS;;;AAWzB;;GAEG;AACH,MAAM,MAAM,aAAa,CACvB,CAAC,SAAS,SAAS,GAAG,EAAE,EACxB,CAAC,SAAS,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,IAC1D;KAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAgE,CACxF,KAAK,EAAE,GAAG,KACP,KAAK,IAAI,MAAM,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,KAAK,MAAM,EAaxF,CAAC;AAEJ,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAErE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,iBAY/F;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,EACf,IAAI,CAAC,EAAE,sBAAsB,iEAS9B"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGrD,OAAO,KAAK,EAAY,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAIpE;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;AAC/D,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;AAQ3D;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,gBAQnC;yBARe,SAAS;;;AAWzB;;GAEG;AACH,MAAM,MAAM,aAAa,CACvB,CAAC,SAAS,SAAS,GAAG,EAAE,EACxB,CAAC,SAAS,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,IAC1D;KAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,GAAG,KAAG,KAAK,IAAI,MAAM,EACe,CAAC;AAE1E;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,KAAG,MAAM,EAYzF,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAErE;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAwB1F;AAED;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,iBAY/F;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,EACf,IAAI,CAAC,EAAE,sBAAsB,iEAS9B"}
package/build/lib/util.js CHANGED
@@ -1,24 +1,25 @@
1
1
  "use strict";
2
- /**
3
- * Utilities
4
- * @module
5
- */
6
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
7
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
8
4
  };
9
5
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.argify = exports.isStringArray = exports.relative = void 0;
6
+ exports.argify = exports.isStringArray = void 0;
7
+ exports.relative = relative;
11
8
  exports.stopwatch = stopwatch;
9
+ exports.kebabCase = kebabCase;
10
+ exports.mergeDefaultsDeep = mergeDefaultsDeep;
12
11
  exports.spawnBackgroundProcess = spawnBackgroundProcess;
13
12
  exports.execWithErrorHandling = execWithErrorHandling;
14
- const lodash_1 = __importDefault(require("lodash"));
15
13
  const node_child_process_1 = require("node:child_process");
16
14
  const node_path_1 = __importDefault(require("node:path"));
17
15
  const teen_process_1 = require("teen_process");
18
- /**
19
- * Computes a relative path, prepending `./`
20
- */
21
- exports.relative = lodash_1.default.curry((from, to) => `.${node_path_1.default.sep}${node_path_1.default.relative(from, to)}`);
16
+ const support_1 = require("@appium/support");
17
+ function relative(from, to) {
18
+ if (to === undefined) {
19
+ return (nextTo) => `.${node_path_1.default.sep}${node_path_1.default.relative(from, nextTo)}`;
20
+ }
21
+ return `.${node_path_1.default.sep}${node_path_1.default.relative(from, to)}`;
22
+ }
22
23
  /**
23
24
  * A stopwatch-like thing
24
25
  *
@@ -41,22 +42,72 @@ stopwatch.cache = new Map();
41
42
  * @param value any value
42
43
  * @returns `true` if the array is `string[]`
43
44
  */
44
- exports.isStringArray = lodash_1.default.overEvery(lodash_1.default.isArray, lodash_1.default.partial(lodash_1.default.every, lodash_1.default, lodash_1.default.isString));
45
+ const isStringArray = (value) => Array.isArray(value) && value.every((item) => typeof item === 'string');
46
+ exports.isStringArray = isStringArray;
45
47
  /**
46
48
  * Converts an object of string values to an array of arguments for CLI
47
49
  *
48
50
  * Supports `boolean` and `number` values as well. `boolean`s are assumed to be flags which default
49
51
  * to `false`, so they will only be added to the array if the value is `true`.
50
52
  */
51
- exports.argify = lodash_1.default.flow(lodash_1.default.entries, (list) => list.map(([key, value]) => {
52
- if (value === true) {
53
- return [`--${key}`];
53
+ const argify = (obj) => {
54
+ const args = [];
55
+ for (const [key, value] of Object.entries(obj)) {
56
+ if (value === true) {
57
+ args.push(`--${key}`);
58
+ }
59
+ else if (value === false || value === undefined) {
60
+ continue;
61
+ }
62
+ else {
63
+ args.push(`--${key}`, String(value));
64
+ }
54
65
  }
55
- else if (value === false || value === undefined) {
56
- return;
66
+ return args;
67
+ };
68
+ exports.argify = argify;
69
+ /**
70
+ * Converts a string to kebab-case.
71
+ * @param value Input string
72
+ * @returns Kebab-cased string
73
+ */
74
+ function kebabCase(value) {
75
+ return value
76
+ .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
77
+ .replace(/[_\s]+/g, '-')
78
+ .toLowerCase();
79
+ }
80
+ /**
81
+ * Performs a deep "defaults" merge into a clone of `target`.
82
+ * Only undefined properties in `target` are filled from `defaults`.
83
+ * @param target Destination object
84
+ * @param defaults Default values object
85
+ * @returns Merged clone
86
+ */
87
+ function mergeDefaultsDeep(target, defaults) {
88
+ const out = structuredClone(target);
89
+ const stack = [
90
+ { dest: out, src: defaults },
91
+ ];
92
+ while (stack.length) {
93
+ const next = stack.pop();
94
+ if (!next) {
95
+ continue;
96
+ }
97
+ const { dest, src } = next;
98
+ for (const [key, srcVal] of Object.entries(src)) {
99
+ const destVal = dest[key];
100
+ if (destVal === undefined) {
101
+ dest[key] = structuredClone(srcVal);
102
+ continue;
103
+ }
104
+ if (support_1.util.isPlainObject(destVal) && support_1.util.isPlainObject(srcVal)) {
105
+ stack.push({ dest: destVal, src: srcVal });
106
+ }
107
+ }
57
108
  }
58
- return [`--${key}`, value];
59
- }), lodash_1.default.flatten);
109
+ return out;
110
+ }
60
111
  /**
61
112
  * Spawns a long-running "background" child process. This is expected to only return control to the
62
113
  * parent process in the case of a nonzero exit code from the child process.
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/util.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,WAAW,EAGX,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAGtC,OAAO,KAAK,EAAY,UAAU,EAAC,MAAM,SAAS,CAAC;AAcnD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO,WAAW,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD;;;OAGG;IACH,gBAAuB,KAAK,WAAW;IAEvC;;;OAGG;IACH,gBAAuB,GAAG,SAAS;IAEnC;;;OAGG;IACH,gBAAuB,OAAO,UAAU;IAExC;;;OAGG;IACH,gBAAuB,OAAO,QAAQ;IAEtC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,sBAA6B;IAE3D;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,6BAAoC;IAE3D;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,eAAe,CAA2B;IAElD;;OAEG;gBACS,IAAI,GAAE,qBAA0B;IAoB5C;;OAEG;IACU,QAAQ;IAoBrB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM;IAO1C;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM;IAI5B;;;;;OAKG;cACa,oBAAoB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IA0B7D;;OAEG;IACH,SAAS,CAAC,KAAK;IAIf;;OAEG;cACa,cAAc;IAuC9B;;;;OAIG;cACa,oBAAoB;IA8BpC;;;;;OAKG;cACa,kBAAkB;IA4ElC;;OAEG;cACa,qBAAqB;CAkBtC"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,WAAW,EAGX,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAGtC,OAAO,KAAK,EAAY,UAAU,EAAC,MAAM,SAAS,CAAC;AAcnD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,WAAW,GAAG,OAAO,WAAW,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD;;;OAGG;IACH,gBAAuB,KAAK,WAAW;IAEvC;;;OAGG;IACH,gBAAuB,GAAG,SAAS;IAEnC;;;OAGG;IACH,gBAAuB,OAAO,UAAU;IAExC;;;OAGG;IACH,gBAAuB,OAAO,QAAQ;IAEtC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,sBAA6B;IAE3D;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,6BAAoC;IAE3D;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,eAAe,CAA2B;IAElD;;OAEG;gBACS,IAAI,GAAE,qBAA0B;IAoB5C;;OAEG;IACU,QAAQ;IAoBrB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM;IAO1C;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM;IAI5B;;;;;OAKG;cACa,oBAAoB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IA0B7D;;OAEG;IACH,SAAS,CAAC,KAAK;IAIf;;OAEG;cACa,cAAc;IAuC9B;;;;OAIG;cACa,oBAAoB;IA8BpC;;;;;OAKG;cACa,kBAAkB;IA4ElC;;OAEG;cACa,qBAAqB;CAkBtC"}
@@ -4,13 +4,9 @@
4
4
  *
5
5
  * @module
6
6
  */
7
- var __importDefault = (this && this.__importDefault) || function (mod) {
8
- return (mod && mod.__esModule) ? mod : { "default": mod };
9
- };
10
7
  Object.defineProperty(exports, "__esModule", { value: true });
11
8
  exports.DocutilsValidator = void 0;
12
9
  const support_1 = require("@appium/support");
13
- const lodash_1 = __importDefault(require("lodash"));
14
10
  const node_events_1 = require("node:events");
15
11
  const teen_process_1 = require("teen_process");
16
12
  const constants_1 = require("./constants");
@@ -129,7 +125,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
129
125
  * @returns
130
126
  */
131
127
  fail(err) {
132
- const dErr = lodash_1.default.isString(err) ? new error_1.DocutilsError(err) : err;
128
+ const dErr = typeof err === 'string' ? new error_1.DocutilsError(err) : err;
133
129
  if (!this.emittedErrors.has(dErr.message)) {
134
130
  this.emit(DocutilsValidator.FAILURE, dErr);
135
131
  }
@@ -199,7 +195,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
199
195
  }
200
196
  const version = match[1];
201
197
  const reqs = await this.parseRequirementsTxt();
202
- const mkDocsPipPkg = lodash_1.default.find(reqs, { name: constants_1.NAME_MKDOCS });
198
+ const mkDocsPipPkg = reqs.find((pkg) => pkg.name === constants_1.NAME_MKDOCS);
203
199
  if (!mkDocsPipPkg) {
204
200
  throw new error_1.DocutilsError(`No ${constants_1.NAME_MKDOCS} package in ${constants_1.REQUIREMENTS_TXT_PATH}. This is a bug`);
205
201
  }
@@ -268,7 +264,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
268
264
  catch {
269
265
  return this.fail(`Could not parse output of "${constants_1.NAME_PIP} list" as JSON: ${pipListOutput}`);
270
266
  }
271
- const pkgsByName = lodash_1.default.mapValues(lodash_1.default.keyBy(installedPkgs, 'name'), 'version');
267
+ const pkgsByName = Object.fromEntries(installedPkgs.map((pkg) => [pkg.name, pkg.version]));
272
268
  log.debug('Installed Python packages: %O', pkgsByName);
273
269
  const requiredPackages = await this.parseRequirementsTxt();
274
270
  const missingPackages = [];
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@
4
4
  * @module
5
5
  */
6
6
 
7
- import _ from 'lodash';
8
7
  import path from 'node:path';
9
8
  import type {TeenProcessExecOptions} from 'teen_process';
10
9
  import {
@@ -169,7 +168,11 @@ export async function deploy({
169
168
  }
170
169
  if (serve) {
171
170
  const mikeArgs = [
172
- ...argify(_.pickBy(mikeOpts, (value) => _.isNumber(value) || Boolean(value))),
171
+ ...argify(
172
+ Object.fromEntries(
173
+ Object.entries(mikeOpts).filter(([, value]) => typeof value === 'number' || Boolean(value))
174
+ )
175
+ ),
173
176
  ];
174
177
  stop(); // discard
175
178
  // unsure about how SIGHUP is handled here
@@ -178,9 +181,11 @@ export async function deploy({
178
181
  log.info('Deploying into branch %s', branch);
179
182
  const mikeArgs = [
180
183
  ...argify(
181
- _.omitBy(
182
- mikeOpts,
183
- (value, key) => _.includes(['port', 'host'], key) || (!_.isNumber(value) && !value),
184
+ Object.fromEntries(
185
+ Object.entries(mikeOpts).filter(
186
+ ([key, value]) =>
187
+ !['port', 'host'].includes(key) && (typeof value === 'number' || Boolean(value))
188
+ )
184
189
  ),
185
190
  ),
186
191
  ];
package/lib/cli/check.ts CHANGED
@@ -4,9 +4,9 @@
4
4
  */
5
5
 
6
6
  import {fs, util} from '@appium/support';
7
- import _ from 'lodash';
8
7
  import type {Options} from 'yargs';
9
8
  import {getLogger} from '../logger';
9
+ import {kebabCase} from '../util';
10
10
 
11
11
  const log = getLogger('check');
12
12
 
@@ -41,17 +41,17 @@ export async function checkMissingPaths<T extends Record<string, Options>>(
41
41
  group: string,
42
42
  argv: Record<string, unknown>
43
43
  ): Promise<true | string> {
44
- const argsToCheck = _.keys(
45
- _.pickBy(opts, (opt: Options, id: string) => opt?.group === group && id in argv) as Partial<T>
44
+ const argsToCheck = Object.keys(opts).filter(
45
+ (id) => opts[id]?.group === group && id in argv
46
46
  );
47
47
 
48
48
  // yargs is pretty loose about allowing CLI args multiple times, and the value could potentially
49
49
  // be a `string[]` instead of `string`; we don't want to allow more than one path per arg.
50
- if (!argsToCheck.every((id) => _.isString(argv[id]))) {
50
+ if (!argsToCheck.every((id) => typeof argv[id] === 'string')) {
51
51
  return 'Paths may only be provided once each';
52
52
  }
53
53
 
54
- const pathsToCheck: MissingFileData[] = _.map(argsToCheck, (id) => ({
54
+ const pathsToCheck: MissingFileData[] = argsToCheck.map((id) => ({
55
55
  id,
56
56
  path: String(argv[id]), // this must be a string per the above check
57
57
  }));
@@ -59,7 +59,7 @@ export async function checkMissingPaths<T extends Record<string, Options>>(
59
59
  log.debug(
60
60
  'Checking for existence of %s: %s',
61
61
  util.pluralize('path', pathsToCheck.length),
62
- _.map(pathsToCheck, 'path')
62
+ pathsToCheck.map(({path}) => path)
63
63
  );
64
64
 
65
65
  const missingPaths = await filterMissing(pathsToCheck);
@@ -68,7 +68,7 @@ export async function checkMissingPaths<T extends Record<string, Options>>(
68
68
  return missingPaths
69
69
  .map(
70
70
  ({id, path}) =>
71
- `Default or specified path via --${_.kebabCase(id)} (${path}) does not exist`
71
+ `Default or specified path via --${kebabCase(id)} (${path}) does not exist`
72
72
  )
73
73
  .join('\n');
74
74
  }
@@ -85,6 +85,7 @@ async function filterMissing(paths: MissingFileData[]): Promise<MissingFileData[
85
85
  const exists = await Promise.all(
86
86
  paths.map(async ({id, path}) => ({id, path, exists: await fs.exists(path)}))
87
87
  );
88
- const results = _.reject(exists, 'exists');
89
- return _.map(results, (result) => _.omit(result, 'exists'));
88
+ return exists
89
+ .filter((result) => !result.exists)
90
+ .map(({id, path}) => ({id, path}));
90
91
  }
package/lib/cli/config.ts CHANGED
@@ -5,7 +5,6 @@
5
5
 
6
6
  import type {Loader} from 'lilconfig';
7
7
  import {lilconfig} from 'lilconfig';
8
- import _ from 'lodash';
9
8
  import path from 'node:path';
10
9
  import * as YAML from 'yaml';
11
10
  import parser from 'yargs-parser';
@@ -20,7 +19,7 @@ const log = getLogger('config');
20
19
  /**
21
20
  * `lilconfig` loader for YAML
22
21
  */
23
- const loadYaml: Loader = _.rearg(YAML.parse, [2, 0, 1]);
22
+ const loadYaml: Loader = (_filepath, content) => YAML.parse(content);
24
23
 
25
24
  /**
26
25
  * Controls how we load/find a config file.
package/lib/cli/index.ts CHANGED
@@ -9,7 +9,6 @@
9
9
  import {getLogger} from '../logger';
10
10
 
11
11
  import {fs} from '@appium/support';
12
- import _ from 'lodash';
13
12
  import {readPackageSync} from 'read-pkg';
14
13
  import {hideBin} from 'yargs/helpers';
15
14
  import yargs from 'yargs/yargs';
@@ -46,7 +45,7 @@ export async function main(argv = hideBin(process.argv)) {
46
45
  choices: ['debug', 'info', 'warn', 'error', 'silent'],
47
46
  describe: 'Sets the log level',
48
47
  default: DEFAULT_LOG_LEVEL,
49
- coerce: _.identity as (x: string) => keyof typeof LogLevelMap,
48
+ coerce: ((x: string) => x) as (x: string) => keyof typeof LogLevelMap,
50
49
  },
51
50
  config: {
52
51
  alias: 'c',
package/lib/fs.ts CHANGED
@@ -3,8 +3,7 @@
3
3
  * @module
4
4
  */
5
5
 
6
- import {fs} from '@appium/support';
7
- import _ from 'lodash';
6
+ import {fs, util} from '@appium/support';
8
7
  import path from 'node:path';
9
8
  import {packageDirectory} from 'package-directory';
10
9
  import type {NormalizedPackageJson, PackageJson} from 'read-pkg';
@@ -23,6 +22,7 @@ import {DocutilsError} from './error';
23
22
  import {getLogger} from './logger';
24
23
  import type {MkDocsYml} from './model';
25
24
  import {exec} from 'teen_process';
25
+ import {mergeDefaultsDeep} from './util';
26
26
 
27
27
  const log = getLogger('fs');
28
28
 
@@ -31,34 +31,27 @@ const log = getLogger('fs');
31
31
  *
32
32
  * Caches result
33
33
  */
34
- const findPkgDir = _.memoize(packageDirectory, (opts) => opts?.cwd);
34
+ const findPkgDir = util.memoize(packageDirectory, (opts) => opts?.cwd);
35
35
 
36
36
  /**
37
37
  * Stringifies a thing into a YAML
38
38
  * @param value Something to yamlify
39
39
  * @returns Some nice YAML 4 u
40
40
  */
41
- export const stringifyYaml: (value: JsonValue) => string = _.partialRight(
42
- YAML.stringify,
43
- {indent: 2},
44
- undefined,
45
- );
41
+ export const stringifyYaml = (value: JsonValue): string =>
42
+ YAML.stringify(value, undefined, {indent: 2});
46
43
 
47
44
  /**
48
45
  * Pretty-stringifies a JSON value
49
46
  * @param value Something to stringify
50
47
  * @returns JSON string
51
48
  */
52
- export const stringifyJson: (value: JsonValue) => string = _.partialRight(
53
- JSON.stringify,
54
- 2,
55
- undefined,
56
- );
49
+ export const stringifyJson = (value: JsonValue): string => JSON.stringify(value, undefined, 2);
57
50
 
58
51
  /**
59
52
  * Reads a YAML file, parses it and caches the result
60
53
  */
61
- const readYaml = _.memoize(async (filepath: string) =>
54
+ const readYaml = util.memoize(async (filepath: string) =>
62
55
  YAML.parse(await fs.readFile(filepath, 'utf8'), {
63
56
  prettyErrors: false,
64
57
  logLevel: 'silent',
@@ -90,7 +83,9 @@ export async function findInPkgDir(
90
83
  * @param cwd - Current working directory
91
84
  * @returns Path to `mkdocs.yml`
92
85
  */
93
- export const findMkDocsYml = _.memoize(_.partial(findInPkgDir, NAME_MKDOCS_YML));
86
+ export const findMkDocsYml = util.memoize(
87
+ async (cwd = process.cwd()) => await findInPkgDir(NAME_MKDOCS_YML, cwd)
88
+ );
94
89
 
95
90
  /**
96
91
  * Given a directory path, finds closest `package.json` and reads it.
@@ -130,12 +125,12 @@ async function _readPkgJson(
130
125
  /**
131
126
  * Given a directory to start from, reads a `package.json` file and returns its path and contents
132
127
  */
133
- export const readPackageJson = _.memoize(_readPkgJson);
128
+ export const readPackageJson = util.memoize(_readPkgJson);
134
129
 
135
130
  /**
136
131
  * Reads a JSON file and parses it
137
132
  */
138
- export const readJson = _.memoize(
133
+ export const readJson = util.memoize(
139
134
  async <T extends JsonValue>(filepath: string): Promise<T> =>
140
135
  JSON.parse(await fs.readFile(filepath, 'utf8')),
141
136
  );
@@ -148,7 +143,7 @@ type WhichFunction = (cmd: string, opts?: {nothrow: boolean}) => Promise<string
148
143
  * @param content - File contents
149
144
  */
150
145
  export function writeFileString(filepath: string, content: JsonValue) {
151
- const data: string = _.isString(content) ? content : JSON.stringify(content, undefined, 2);
146
+ const data: string = typeof content === 'string' ? content : JSON.stringify(content, undefined, 2);
152
147
  return fs.writeFile(filepath, data, {
153
148
  encoding: 'utf8',
154
149
  });
@@ -157,22 +152,22 @@ export function writeFileString(filepath: string, content: JsonValue) {
157
152
  /**
158
153
  * `which` with memoization
159
154
  */
160
- const cachedWhich = _.memoize(fs.which as WhichFunction);
155
+ const cachedWhich = util.memoize(fs.which as WhichFunction);
161
156
 
162
157
  /**
163
158
  * Finds `python` executable
164
159
  */
165
- const whichPython = _.partial(cachedWhich, NAME_PYTHON, {nothrow: true});
160
+ const whichPython = async () => await cachedWhich(NAME_PYTHON, {nothrow: true});
166
161
 
167
162
  /**
168
163
  * Finds `python3` executable
169
164
  */
170
- const whichPython3 = _.partial(cachedWhich, `${NAME_PYTHON}3`, {nothrow: true});
165
+ const whichPython3 = async () => await cachedWhich(`${NAME_PYTHON}3`, {nothrow: true});
171
166
 
172
167
  /**
173
168
  * Check if `mkdocs` is installed
174
169
  */
175
- export const isMkDocsInstalled = _.memoize(async (): Promise<boolean> => {
170
+ export const isMkDocsInstalled = util.memoize(async (): Promise<boolean> => {
176
171
  // see if it's in PATH
177
172
  const mkDocsPath = await cachedWhich(NAME_MKDOCS, {nothrow: true});
178
173
  if (mkDocsPath) {
@@ -194,7 +189,7 @@ export const isMkDocsInstalled = _.memoize(async (): Promise<boolean> => {
194
189
  /**
195
190
  * `mike` cannot be invoked via `python -m`, so we need to find the script.
196
191
  */
197
- export const findMike = _.partial(async () => {
192
+ export const findMike = async () => {
198
193
  // see if it's in PATH
199
194
  let mikePath = await cachedWhich(NAME_MIKE, {nothrow: true});
200
195
  if (mikePath) {
@@ -216,14 +211,14 @@ export const findMike = _.partial(async () => {
216
211
  }
217
212
  }
218
213
  } catch {}
219
- });
214
+ };
220
215
 
221
216
  /**
222
217
  * Finds the `python3` or `python` executable in the user's `PATH`.
223
218
  *
224
219
  * `python3` is preferred over `python`, since the latter could be Python 2.
225
220
  */
226
- export const findPython = _.memoize(
221
+ export const findPython = util.memoize(
227
222
  async (): Promise<string | null> => (await whichPython3()) ?? (await whichPython()),
228
223
  );
229
224
 
@@ -246,7 +241,7 @@ export async function requirePython(pythonPath?: string): Promise<string> {
246
241
  * @param filepath Patgh to an `mkdocs.yml` file
247
242
  * @returns Parsed `mkdocs.yml` file
248
243
  */
249
- export const readMkDocsYml = _.memoize(
244
+ export const readMkDocsYml: (filepath: string, cwd?: string) => Promise<MkDocsYml> = util.memoize(
250
245
  async (filepath: string, cwd = process.cwd()): Promise<MkDocsYml> => {
251
246
  let mkDocsYml = (await readYaml(filepath)) as MkDocsYml;
252
247
  if (mkDocsYml.site_dir) {
@@ -264,7 +259,7 @@ export const readMkDocsYml = _.memoize(
264
259
  inheritYml.docs_dir = path.resolve(path.dirname(inheritPath), inheritYml.docs_dir);
265
260
  log.debug('Resolved docs_dir to %s', inheritYml.docs_dir);
266
261
  }
267
- mkDocsYml = _.defaultsDeep(mkDocsYml, inheritYml);
262
+ mkDocsYml = mergeDefaultsDeep(mkDocsYml, inheritYml);
268
263
  inheritPath = inheritYml.INHERIT
269
264
  ? path.resolve(path.dirname(inheritPath), inheritYml.INHERIT)
270
265
  : undefined;
package/lib/logger.ts CHANGED
@@ -9,7 +9,6 @@
9
9
 
10
10
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
11
11
  const {ConsolaInstance, createConsola, LogLevel} = require('consola');
12
- import _ from 'lodash';
13
12
  import {DEFAULT_LOG_LEVEL, LogLevelMap} from './constants';
14
13
 
15
14
  /**
@@ -72,7 +71,12 @@ export function getLogger(tag: string, parent = rootLogger) {
72
71
  *
73
72
  * @remarks Child loggers seem to inherit the "paused" state of the parent, so when this is called, we must resume all of them.
74
73
  */
75
- export const initLogger = _.once((level: keyof typeof LogLevelMap | typeof LogLevel) => {
74
+ let hasInitializedLogger = false;
75
+ export const initLogger = (level: keyof typeof LogLevelMap | typeof LogLevel) => {
76
+ if (hasInitializedLogger) {
77
+ return;
78
+ }
79
+ hasInitializedLogger = true;
76
80
  globalLevel = isLogLevelString(level) ? LogLevelMap[level] : level;
77
81
  rootLogger.level = globalLevel;
78
82
  rootLogger.resumeLogs();
@@ -83,4 +87,4 @@ export const initLogger = _.once((level: keyof typeof LogLevelMap | typeof LogLe
83
87
  logger.resumeLogs();
84
88
  }
85
89
  }
86
- });
90
+ };
package/lib/scaffold.ts CHANGED
@@ -3,15 +3,14 @@
3
3
  * @module
4
4
  */
5
5
 
6
- import {fs} from '@appium/support';
6
+ import {fs, util} from '@appium/support';
7
7
  import {getLogger} from './logger';
8
8
  import path from 'node:path';
9
9
  import {createPatch} from 'diff';
10
10
  import type {NormalizedPackageJson} from 'read-pkg';
11
11
  import type {JsonValue, JsonObject} from 'type-fest';
12
12
  import {DocutilsError} from './error';
13
- import {relative} from './util';
14
- import _ from 'lodash';
13
+ import {mergeDefaultsDeep, relative} from './util';
15
14
  import {stringifyJson, readPackageJson, writeFileString} from './fs';
16
15
  import {NAME_ERR_ENOENT} from './constants';
17
16
 
@@ -127,7 +126,7 @@ export function createScaffoldTask<Opts extends ScaffoldTaskOptions, T extends J
127
126
  defaultContent: T,
128
127
  description: string,
129
128
  {
130
- transform = _.identity,
129
+ transform = (content) => content,
131
130
  deserialize = JSON.parse,
132
131
  serialize = stringifyJson,
133
132
  }: CreateScaffoldTaskOptions<Opts, T> = {}
@@ -168,9 +167,9 @@ export function createScaffoldTask<Opts extends ScaffoldTaskOptions, T extends J
168
167
  }
169
168
 
170
169
  const defaults: T = transform(defaultContent, opts, pkg);
171
- const finalDestContent: T = _.defaultsDeep({}, destContent, defaults);
170
+ const finalDestContent: T = mergeDefaultsDeep(destContent, defaults);
172
171
 
173
- destChangesNeeded = destChangesNeeded || !_.isEqual(destContent, finalDestContent);
172
+ destChangesNeeded = destChangesNeeded || !util.isEqual(destContent, finalDestContent);
174
173
 
175
174
  if (destChangesNeeded) {
176
175
  log.info('Changes needed in %s', relativeDest);
@@ -225,7 +224,7 @@ function makePatch<T extends JsonValue>(
225
224
  ) {
226
225
  return createPatch(
227
226
  filename,
228
- _.isString(oldData) ? oldData : serializer(oldData),
229
- _.isString(newData) ? newData : serializer(newData)
227
+ typeof oldData === 'string' ? oldData : serializer(oldData),
228
+ typeof newData === 'string' ? newData : serializer(newData)
230
229
  );
231
230
  }