appium 2.9.0 → 2.10.1

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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  <p align="center">
4
4
  <a href="https://appium.io/">
5
- <img alt="Appium" src="https://raw.githubusercontent.com/appium/appium/master/packages/appium/docs/assets/images/appium-logo-horiz.png" width="500">
5
+ <img alt="Appium" src="https://raw.githubusercontent.com/appium/appium/master/packages/appium/docs/overrides/assets/images/appium-logo-horiz.png" width="500">
6
6
  </a>
7
7
  </p>
8
8
  <p align="center">
@@ -185,14 +185,29 @@ and wants to give back financially to the project, we use these funds to [encour
185
185
  contributions](GOVERNANCE.md#compensation-scheme), as well as support other open source projects we
186
186
  rely on. [Become a sponsor](https://opencollective.com/appium) via our OpenCollective page.
187
187
 
188
- ### Development Partners
188
+ ### Development and Strategic Partners
189
189
 
190
- Appium is incredibly grateful to our Development Partners for their sustained contribution of
191
- project development and leadership!
190
+ Appium is incredibly grateful to our Development and Strategic Partners for their sustained
191
+ contribution of project development and leadership!
192
192
 
193
193
  <p align="center">
194
- <a href="https://www.headspin.io/solutions/appium-mobile-test-automation"><img src="packages/appium/docs/assets/images/sponsor-logo-headspin.png"
195
- width="300" alt="HeadSpin" /></a>
194
+ <a href="https://www.headspin.io/solutions/appium-mobile-test-automation"><img src="packages/appium/docs/overrides/assets/images/sponsor-logo-headspin.png"
195
+ width="275" alt="HeadSpin" /></a>
196
+ </p>
197
+
198
+ <p align="center">
199
+ <a href="https://www.browserstack.com/browserstack-appium?utm_campaigncode=701OW00000AoUTQYA3&utm_medium=partnered&utm_source=appium">
200
+ <picture>
201
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png" media="(prefers-color-scheme: dark)"/>
202
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-light.png" media="(prefers-color-scheme: light)"/>
203
+ <img src="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png" width="300" alt="Browserstack"/>
204
+ </picture>
205
+ </a>
206
+ </p>
207
+
208
+ <p align="center">
209
+ <a href="https://saucelabs.com/resources/blog/appium-strategic-partner"><img src="packages/appium/docs/overrides/assets/images/sponsor-logo-sauce.png"
210
+ width="300" alt="Sauce Labs" /></a>
196
211
  </p>
197
212
 
198
213
  ### Other Sponsors
@@ -1,4 +1,14 @@
1
- export default init;
2
- export function init(args: any): Promise<void>;
1
+ /**
2
+ *
3
+ * @param {import('../types').ParsedArgs} args
4
+ * @returns {Promise<void>}
5
+ */
6
+ export function init(args: import('../types').ParsedArgs): Promise<void>;
7
+ /**
8
+ * @returns {void}
9
+ */
3
10
  export function clear(): void;
11
+ export default init;
12
+ export type ParsedArgs = import('appium/types').ParsedArgs;
13
+ export type MessageObject = import('@appium/logger').MessageObject;
4
14
  //# sourceMappingURL=logsink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logsink.d.ts","sourceRoot":"","sources":["../../lib/logsink.js"],"names":[],"mappings":";AAuMA,+CA4CC;AAED,8BAOC"}
1
+ {"version":3,"file":"logsink.d.ts","sourceRoot":"","sources":["../../lib/logsink.js"],"names":[],"mappings":"AA+CA;;;;GAIG;AACH,2BAHW,OAAO,UAAU,EAAE,UAAU,GAC3B,QAAQ,IAAI,CAAC,CAoDzB;AAED;;GAEG;AACH,yBAFa,IAAI,CAKhB;;yBA+OY,OAAO,cAAc,EAAE,UAAU;4BACjC,OAAO,gBAAgB,EAAE,aAAa"}
@@ -7,26 +7,26 @@ exports.clear = exports.init = void 0;
7
7
  const logger_1 = __importDefault(require("@appium/logger"));
8
8
  const winston_1 = require("winston");
9
9
  const support_1 = require("@appium/support");
10
- const logger_2 = require("./logger");
11
10
  const lodash_1 = __importDefault(require("lodash"));
11
+ const utils_1 = require("./utils");
12
+ const lru_cache_1 = require("lru-cache");
12
13
  // set up distributed logging before everything else
13
- support_1.logger.patchLogger(logger_1.default);
14
14
  global._global_npmlog = logger_1.default;
15
15
  // npmlog is used only for emitting, we use winston for output
16
16
  logger_1.default.level = 'info';
17
- const levels = {
17
+ const LEVELS_MAP = {
18
18
  debug: 4,
19
19
  info: 3,
20
20
  warn: 2,
21
21
  error: 1,
22
22
  };
23
- const colors = {
23
+ const COLORS_MAP = {
24
24
  info: 'cyan',
25
25
  debug: 'grey',
26
26
  warn: 'yellow',
27
27
  error: 'red',
28
28
  };
29
- const npmToWinstonLevels = {
29
+ const TO_WINSTON_LEVELS_MAP = {
30
30
  silly: 'debug',
31
31
  verbose: 'debug',
32
32
  debug: 'debug',
@@ -35,30 +35,97 @@ const npmToWinstonLevels = {
35
35
  warn: 'warn',
36
36
  error: 'error',
37
37
  };
38
- const encounteredPrefixes = [];
38
+ const COLOR_CODE_PATTERN = /\u001b\[(\d+(;\d+)*)?m/g; // eslint-disable-line no-control-regex
39
+ // https://www.ditig.com/publications/256-colors-cheat-sheet
40
+ const MIN_COLOR = 17;
41
+ const MAX_COLOR = 231;
42
+ /** @type {LRUCache<string, number>} */
43
+ const COLORS_CACHE = new lru_cache_1.LRUCache({
44
+ max: 1024,
45
+ ttl: 1000 * 60 * 60 * 24, // expire after 24 hours
46
+ updateAgeOnGet: true,
47
+ });
48
+ /** @type {import('winston').Logger?} */
39
49
  let log = null;
40
- let useLocalTimeZone = false;
41
- // add the timestamp in the correct format to the log info object
42
- const timestampFormat = winston_1.format.timestamp({
43
- format() {
44
- let date = new Date();
45
- if (useLocalTimeZone) {
46
- date = new Date(date.valueOf() - date.getTimezoneOffset() * 60000);
50
+ /**
51
+ *
52
+ * @param {import('../types').ParsedArgs} args
53
+ * @returns {Promise<void>}
54
+ */
55
+ async function init(args) {
56
+ logger_1.default.level = 'silent';
57
+ // clean up in case we have initiated before since npmlog is a global object
58
+ clear();
59
+ const transports = await createTransports(args);
60
+ const transportNames = new Set(transports.map((tr) => tr.constructor.name));
61
+ log = (0, winston_1.createLogger)({
62
+ transports,
63
+ levels: LEVELS_MAP,
64
+ });
65
+ const reportedLoggerErrors = new Set();
66
+ // Capture logs emitted via npmlog and pass them through winston
67
+ logger_1.default.on('log', (/** @type {MessageObject} */ { level, message, prefix }) => {
68
+ const { sessionSignature } = logger_1.default.asyncStorage.getStore() ?? {};
69
+ /** @type {string[]} */
70
+ const prefixes = [];
71
+ if (sessionSignature) {
72
+ prefixes.push(sessionSignature);
47
73
  }
48
- // '2012-11-04T14:51:06.157Z' -> '2012-11-04 14:51:06:157'
49
- return date.toISOString().replace(/[TZ]/g, ' ').replace(/\./g, ':').trim();
50
- },
51
- });
74
+ if (prefix) {
75
+ prefixes.push(prefix);
76
+ }
77
+ let msg = message;
78
+ if (!lodash_1.default.isEmpty(prefixes)) {
79
+ const finalPrefix = prefixes
80
+ .map(toDecoratedPrefix)
81
+ .map((pfx) => isLogColorEnabled(args) ? colorizePrefix(pfx) : pfx)
82
+ .join('');
83
+ msg = `${finalPrefix} ${msg}`;
84
+ }
85
+ const winstonLevel = TO_WINSTON_LEVELS_MAP[level] || 'info';
86
+ try {
87
+ /** @type {import('winston').Logger} */ (log)[winstonLevel](msg);
88
+ if (lodash_1.default.isFunction(args.logHandler)) {
89
+ args.logHandler(level, msg);
90
+ }
91
+ }
92
+ catch (e) {
93
+ if (!reportedLoggerErrors.has(e.message) && process.stderr.writable) {
94
+ // eslint-disable-next-line no-console
95
+ console.error(`The log message '${lodash_1.default.truncate(msg, { length: 30 })}' cannot be written into ` +
96
+ `one or more requested destinations: ${transportNames}. Original error: ${e.message}`);
97
+ reportedLoggerErrors.add(e.message);
98
+ }
99
+ }
100
+ });
101
+ }
102
+ exports.init = init;
103
+ /**
104
+ * @returns {void}
105
+ */
106
+ function clear() {
107
+ log?.clear();
108
+ logger_1.default.removeAllListeners('log');
109
+ }
110
+ exports.clear = clear;
52
111
  // set the custom colors
53
112
  const colorizeFormat = winston_1.format.colorize({
54
- colors,
113
+ colors: COLORS_MAP,
55
114
  });
56
115
  // Strip the color marking within messages
57
116
  const stripColorFormat = (0, winston_1.format)(function stripColor(info) {
58
- const code = /\u001b\[(\d+(;\d+)*)?m/g; // eslint-disable-line no-control-regex
59
- info.message = info.message.replace(code, '');
60
- return info;
117
+ return {
118
+ ...info,
119
+ level: stripColorCodes(info.level),
120
+ message: stripColorCodes(info.message),
121
+ };
61
122
  })();
123
+ /**
124
+ *
125
+ * @param {ParsedArgs} args
126
+ * @param {string} logLvl
127
+ * @returns {transports.ConsoleTransportInstance}
128
+ */
62
129
  function createConsoleTransport(args, logLvl) {
63
130
  return new winston_1.transports.Console({
64
131
  // @ts-expect-error The 'name' property should exist
@@ -68,11 +135,15 @@ function createConsoleTransport(args, logLvl) {
68
135
  json: false,
69
136
  level: logLvl,
70
137
  stderrLevels: ['error'],
71
- format: winston_1.format.combine(timestampFormat, args.logNoColors ? stripColorFormat : colorizeFormat, winston_1.format.printf(function printInfo(info) {
72
- return `${args.logTimestamp ? `${info.timestamp} - ` : ''}${info.message}`;
73
- })),
138
+ format: winston_1.format.combine(formatTimestamp(args), isLogColorEnabled(args) ? colorizeFormat : stripColorFormat, winston_1.format.printf(formatLogLine(args, true))),
74
139
  });
75
140
  }
141
+ /**
142
+ *
143
+ * @param {ParsedArgs} args
144
+ * @param {string} logLvl
145
+ * @returns {transports.FileTransportInstance}
146
+ */
76
147
  function createFileTransport(args, logLvl) {
77
148
  return new winston_1.transports.File({
78
149
  // @ts-expect-error The 'name' property should exist
@@ -83,15 +154,19 @@ function createFileTransport(args, logLvl) {
83
154
  exitOnError: false,
84
155
  json: false,
85
156
  level: logLvl,
86
- format: winston_1.format.combine(stripColorFormat, timestampFormat, winston_1.format.printf(function printInfo(info) {
87
- return `${info.timestamp} ${info.message}`;
88
- })),
157
+ format: winston_1.format.combine(stripColorFormat, formatTimestamp(args), winston_1.format.printf(formatLogLine(args, false))),
89
158
  });
90
159
  }
160
+ /**
161
+ *
162
+ * @param {ParsedArgs} args
163
+ * @param {string} logLvl
164
+ * @returns {transports.HttpTransportInstance}
165
+ */
91
166
  function createHttpTransport(args, logLvl) {
92
167
  let host = '127.0.0.1';
93
168
  let port = 9003;
94
- if (args.webhook.match(':')) {
169
+ if (args.webhook?.match(':')) {
95
170
  const hostAndPort = args.webhook.split(':');
96
171
  host = hostAndPort[0];
97
172
  port = parseInt(hostAndPort[1], 10);
@@ -106,25 +181,24 @@ function createHttpTransport(args, logLvl) {
106
181
  exitOnError: false,
107
182
  json: false,
108
183
  level: logLvl,
109
- format: winston_1.format.combine(stripColorFormat, winston_1.format.printf(function printInfo(info) {
110
- return `${info.timestamp} ${info.message}`;
111
- })),
184
+ format: winston_1.format.combine(stripColorFormat, winston_1.format.printf(formatLogLine(args, false))),
112
185
  });
113
186
  }
114
187
  /**
115
188
  *
116
- * @param {import('@appium/types').StringRecord} args
189
+ * @param {ParsedArgs} args
117
190
  * @returns {Promise<import('winston-transport')[]>}
118
191
  */
119
192
  async function createTransports(args) {
120
193
  const transports = [];
121
- let consoleLogLevel = null;
122
- let fileLogLevel = null;
194
+ /** @type {string} */
195
+ let consoleLogLevel;
196
+ /** @type {string} */
197
+ let fileLogLevel;
123
198
  if (args.loglevel && args.loglevel.match(':')) {
124
199
  // --log-level arg can optionally provide diff logging levels for console and file, separated by a colon
125
200
  const lvlPair = args.loglevel.split(':');
126
- consoleLogLevel = lvlPair[0] || consoleLogLevel;
127
- fileLogLevel = lvlPair[1] || fileLogLevel;
201
+ [consoleLogLevel, fileLogLevel] = lvlPair;
128
202
  }
129
203
  else {
130
204
  consoleLogLevel = fileLogLevel = args.loglevel;
@@ -157,66 +231,89 @@ async function createTransports(args) {
157
231
  }
158
232
  return transports;
159
233
  }
160
- function getColorizedPrefix(prefix) {
161
- let prefixId = prefix.split('@')[0].trim();
162
- prefixId = prefixId.split(' (')[0].trim();
163
- if (encounteredPrefixes.indexOf(prefixId) < 0) {
164
- encounteredPrefixes.push(prefixId);
234
+ /**
235
+ *
236
+ * @param {string} text
237
+ * @returns {string}
238
+ */
239
+ function toDecoratedPrefix(text) {
240
+ return `[${text}]`;
241
+ }
242
+ /**
243
+ * Selects the color of the text in terminal from the MIN_COLOR..MAX_COLOR
244
+ * range. We use adler32 hashing to ensure that equal prefixes would always have
245
+ * same colors.
246
+ *
247
+ * @param {string} text Initial text
248
+ * @returns {string} Colorized text (with pseudocode cchars added)
249
+ */
250
+ function colorizePrefix(text) {
251
+ let colorIndex = COLORS_CACHE.get(text);
252
+ if (!colorIndex) {
253
+ const hash = (0, utils_1.adler32)(text);
254
+ colorIndex = MIN_COLOR + hash % (MAX_COLOR - MIN_COLOR);
255
+ COLORS_CACHE.set(text, colorIndex);
165
256
  }
166
- // using a multiple of 16 should cause 16 colors to be created
167
- const colorNumber = encounteredPrefixes.indexOf(prefixId) * 16;
168
- // use the modulus to cycle around color wheel
169
- return `\x1b[38;5;${colorNumber % 256}m${prefix}\x1b[0m`;
257
+ return `\x1b[38;5;${colorIndex}m${text}\x1b[0m`;
170
258
  }
171
- async function init(args) {
172
- logger_1.default.level = 'silent';
173
- // set de facto param passed to timestamp function
174
- useLocalTimeZone = args.localTimezone;
175
- // clean up in case we have initiated before since npmlog is a global object
176
- clear();
177
- const transports = await createTransports(args);
178
- const transportNames = new Set(transports.map((tr) => tr.constructor.name));
179
- log = (0, winston_1.createLogger)({
180
- transports,
181
- levels,
182
- });
183
- const reportedLoggerErrors = new Set();
184
- // Capture logs emitted via npmlog and pass them through winston
185
- logger_1.default.on('log', ({ level, message, prefix }) => {
186
- const winstonLevel = npmToWinstonLevels[level] || 'info';
187
- let msg = message;
188
- if (prefix) {
189
- const decoratedPrefix = `[${prefix}]`;
190
- const toColorizedDecoratedPrefix = () => prefix === logger_2.APPIUM_LOGGER_NAME
191
- ? decoratedPrefix.magenta
192
- : getColorizedPrefix(decoratedPrefix);
193
- msg = `${args.logNoColors ? decoratedPrefix : toColorizedDecoratedPrefix()} ${msg}`;
194
- }
195
- try {
196
- log[winstonLevel](msg);
197
- if (lodash_1.default.isFunction(args.logHandler)) {
198
- args.logHandler(level, msg);
259
+ /**
260
+ * @param {ParsedArgs} args
261
+ * @param {boolean} targetConsole
262
+ * @returns {(info: import('logform').TransformableInfo) => string}
263
+ */
264
+ function formatLogLine(args, targetConsole) {
265
+ return (info) => {
266
+ if (['json', 'pretty_json'].includes(args.logFormat)) {
267
+ let infoCopy = { ...info };
268
+ if (targetConsole && !args.logTimestamp) {
269
+ delete infoCopy.timestamp;
199
270
  }
271
+ return JSON.stringify(infoCopy, null, args.logFormat === 'pretty_json' ? 2 : undefined);
200
272
  }
201
- catch (e) {
202
- if (!reportedLoggerErrors.has(e.message) && process.stderr.writable) {
203
- // eslint-disable-next-line no-console
204
- console.error(`The log message '${lodash_1.default.truncate(msg, { length: 30 })}' cannot be written into ` +
205
- `one or more requested destinations: ${transportNames}. Original error: ${e.message}`);
206
- reportedLoggerErrors.add(e.message);
207
- }
273
+ if (targetConsole) {
274
+ return `${args.logTimestamp ? `${info.timestamp} - ` : ''}${info.message}`;
208
275
  }
276
+ return `${info.timestamp} ${info.message}`;
277
+ };
278
+ }
279
+ /**
280
+ * add the timestamp in the correct format to the log info object
281
+ *
282
+ * @param {ParsedArgs} args
283
+ * @returns {import('logform').Format}
284
+ */
285
+ function formatTimestamp(args) {
286
+ return winston_1.format.timestamp({
287
+ format() {
288
+ let date = new Date();
289
+ if (args.localTimezone) {
290
+ date = new Date(date.valueOf() - date.getTimezoneOffset() * 60000);
291
+ }
292
+ // '2012-11-04T14:51:06.157Z' -> '2012-11-04 14:51:06:157'
293
+ return date.toISOString().replace(/[TZ]/g, ' ').replace(/\./g, ':').trim();
294
+ },
209
295
  });
210
296
  }
211
- exports.init = init;
212
- function clear() {
213
- if (log) {
214
- for (let transport of lodash_1.default.keys(log.transports)) {
215
- log.remove(transport);
216
- }
217
- }
218
- logger_1.default.removeAllListeners('log');
297
+ /**
298
+ * Strips color control codes from the given string
299
+ *
300
+ * @param {string} text
301
+ * @returns {string}
302
+ */
303
+ function stripColorCodes(text) {
304
+ return text.replace(COLOR_CODE_PATTERN, '');
305
+ }
306
+ /**
307
+ *
308
+ * @param {ParsedArgs} args
309
+ * @returns {boolean}
310
+ */
311
+ function isLogColorEnabled(args) {
312
+ return !args.logNoColors && args.logFormat === 'text';
219
313
  }
220
- exports.clear = clear;
221
314
  exports.default = init;
315
+ /**
316
+ * @typedef {import('appium/types').ParsedArgs} ParsedArgs
317
+ * @typedef {import('@appium/logger').MessageObject} MessageObject
318
+ */
222
319
  //# sourceMappingURL=logsink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logsink.js","sourceRoot":"","sources":["../../lib/logsink.js"],"names":[],"mappings":";;;;;;AAAA,4DAAuC;AACvC,qCAAyD;AACzD,6CAA2C;AAC3C,qCAA8C;AAC9C,oDAAuB;AAEvB,oDAAoD;AACpD,gBAAM,CAAC,WAAW,CAAC,gBAAS,CAAC,CAAC;AAC9B,MAAM,CAAC,cAAc,GAAG,gBAAS,CAAC;AAElC,8DAA8D;AAC9D,gBAAS,CAAC,KAAK,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,KAAK;CACb,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,IAAI,GAAG,GAAG,IAAI,CAAC;AACf,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAE7B,iEAAiE;AACjE,MAAM,eAAe,GAAG,gBAAM,CAAC,SAAS,CAAC;IACvC,MAAM;QACJ,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACtB,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC;QACrE,CAAC;QACD,0DAA0D;QAC1D,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7E,CAAC;CACF,CAAC,CAAC;AAEH,wBAAwB;AACxB,MAAM,cAAc,GAAG,gBAAM,CAAC,QAAQ,CAAC;IACrC,MAAM;CACP,CAAC,CAAC;AAEH,0CAA0C;AAC1C,MAAM,gBAAgB,GAAG,IAAA,gBAAM,EAAC,SAAS,UAAU,CAAC,IAAI;IACtD,MAAM,IAAI,GAAG,yBAAyB,CAAC,CAAC,uCAAuC;IAC/E,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC;AACd,CAAC,CAAC,EAAE,CAAC;AAEL,SAAS,sBAAsB,CAAC,IAAI,EAAE,MAAM;IAC1C,OAAO,IAAI,oBAAU,CAAC,OAAO,CAAC;QAC5B,oDAAoD;QACpD,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,eAAe,EACf,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc,EACpD,gBAAM,CAAC,MAAM,CAAC,SAAS,SAAS,CAAC,IAAI;YACnC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7E,CAAC,CAAC,CACH;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM;IACvC,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC;QACzB,oDAAoD;QACpD,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,QAAQ,EAAE,CAAC;QACX,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,gBAAgB,EAChB,eAAe,EACf,gBAAM,CAAC,MAAM,CAAC,SAAS,SAAS,CAAC,IAAI;YACnC,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC,CACH;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM;IACvC,IAAI,IAAI,GAAG,WAAW,CAAC;IACvB,IAAI,IAAI,GAAG,IAAI,CAAC;IAEhB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC;QACzB,oDAAoD;QACpD,IAAI,EAAE,MAAM;QACZ,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,GAAG;QACT,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,gBAAgB,EAChB,gBAAM,CAAC,MAAM,CAAC,SAAS,SAAS,CAAC,IAAI;YACnC,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC,CACH;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAAC,IAAI;IAClC,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,IAAI,eAAe,GAAG,IAAI,CAAC;IAC3B,IAAI,YAAY,GAAG,IAAI,CAAC;IAExB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,wGAAwG;QACxG,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC;QAChD,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IAE/D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,iGAAiG;YACjG,+FAA+F;YAC/F,gFAAgF;YAChF,IAAI,MAAM,YAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,MAAM,YAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;YAED,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sCAAsC;YACtC,OAAO,CAAC,GAAG,CACT,oCAAoC,IAAI,CAAC,OAAO,iBAAiB,GAAG,aAAa,CAAC,CAAC,OAAO,EAAE,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sCAAsC;YACtC,OAAO,CAAC,GAAG,CACT,sCAAsC,IAAI,CAAC,OAAO,OAAO;gBACvD,sBAAsB,CAAC,CAAC,OAAO,EAAE,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAM;IAChC,IAAI,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1C,IAAI,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IACD,8DAA8D;IAC9D,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC/D,8CAA8C;IAC9C,OAAO,aAAa,WAAW,GAAG,GAAG,IAAI,MAAM,SAAS,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,IAAI;IACtB,gBAAS,CAAC,KAAK,GAAG,QAAQ,CAAC;IAE3B,kDAAkD;IAClD,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC;IAEtC,4EAA4E;IAC5E,KAAK,EAAE,CAAC;IAER,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5E,GAAG,GAAG,IAAA,sBAAY,EAAC;QACjB,UAAU;QACV,MAAM;KACP,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAC;IACvC,gEAAgE;IAChE,gBAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAC,EAAE,EAAE;QAC/C,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;QACzD,IAAI,GAAG,GAAG,OAAO,CAAC;QAClB,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,eAAe,GAAG,IAAI,MAAM,GAAG,CAAC;YACtC,MAAM,0BAA0B,GAAG,GAAG,EAAE,CAAC,MAAM,KAAK,2BAAkB;gBACpE,CAAC,CAAC,eAAe,CAAC,OAAO;gBACzB,CAAC,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;YACxC,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,0BAA0B,EAAE,IAAI,GAAG,EAAE,CAAC;QACtF,CAAC;QACD,IAAI,CAAC;YACH,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,gBAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpE,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CACX,oBAAoB,gBAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC,2BAA2B;oBAC5E,uCAAuC,cAAc,qBAAqB,CAAC,CAAC,OAAO,EAAE,CACtF,CAAC;gBACF,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAWO,oBAAI;AATZ,SAAS,KAAK;IACZ,IAAI,GAAG,EAAE,CAAC;QACR,KAAK,IAAI,SAAS,IAAI,gBAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,gBAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAEa,sBAAK;AACnB,kBAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"logsink.js","sourceRoot":"","sources":["../../lib/logsink.js"],"names":[],"mappings":";;;;;;AAAA,4DAAuC;AACvC,qCAAyD;AACzD,6CAAmC;AACnC,oDAAuB;AACvB,mCAAkC;AAClC,yCAAqC;AAErC,oDAAoD;AACpD,MAAM,CAAC,cAAc,GAAG,gBAAS,CAAC;AAClC,8DAA8D;AAC9D,gBAAS,CAAC,KAAK,GAAG,MAAM,CAAC;AACzB,MAAM,UAAU,GAAG;IACjB,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AACF,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,KAAK;CACb,CAAC;AACF,MAAM,qBAAqB,GAAG;IAC5B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACf,CAAC;AACF,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,CAAC,uCAAuC;AAE7F,4DAA4D;AAC5D,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,uCAAuC;AACvC,MAAM,YAAY,GAAG,IAAI,oBAAQ,CAAC;IAChC,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,wBAAwB;IAClD,cAAc,EAAE,IAAI;CACrB,CAAC,CAAC;AAEH,wCAAwC;AACxC,IAAI,GAAG,GAAG,IAAI,CAAC;AAEf;;;;GAIG;AACI,KAAK,UAAU,IAAI,CAAC,IAAI;IAC7B,gBAAS,CAAC,KAAK,GAAG,QAAQ,CAAC;IAE3B,4EAA4E;IAC5E,KAAK,EAAE,CAAC;IAER,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5E,GAAG,GAAG,IAAA,sBAAY,EAAC;QACjB,UAAU;QACV,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAC;IACvC,gEAAgE;IAChE,gBAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,4BAA4B,CAAA,EAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAC,EAAE,EAAE;QAC3E,MAAM,EAAC,gBAAgB,EAAC,GAAG,gBAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QACnE,uBAAuB;QACvB,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,gBAAgB,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,GAAG,GAAG,OAAO,CAAC;QAClB,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,QAAQ;iBACzB,GAAG,CAAC,iBAAiB,CAAC;iBACtB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;iBACjE,IAAI,CAAC,EAAE,CAAC,CAAC;YACZ,GAAG,GAAG,GAAG,WAAW,IAAI,GAAG,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;QAC5D,IAAI,CAAC;YACH,uCAAuC,CAAA,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,gBAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpE,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CACX,oBAAoB,gBAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC,2BAA2B;oBAC5E,uCAAuC,cAAc,qBAAqB,CAAC,CAAC,OAAO,EAAE,CACtF,CAAC;gBACF,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAlDD,oBAkDC;AAED;;GAEG;AACH,SAAgB,KAAK;IACnB,GAAG,EAAE,KAAK,EAAE,CAAC;IACb,gBAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAHD,sBAGC;AAED,wBAAwB;AACxB,MAAM,cAAc,GAAG,gBAAM,CAAC,QAAQ,CAAC;IACrC,MAAM,EAAE,UAAU;CACnB,CAAC,CAAC;AAEH,0CAA0C;AAC1C,MAAM,gBAAgB,GAAG,IAAA,gBAAM,EAAC,SAAS,UAAU,CAAC,IAAI;IACtD,OAAO;QACL,GAAG,IAAI;QACP,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAClC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC,EAAE,CAAC;AAEL;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,IAAI,EAAE,MAAM;IAC1C,OAAO,IAAI,oBAAU,CAAC,OAAO,CAAC;QAC5B,oDAAoD;QACpD,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,eAAe,CAAC,IAAI,CAAC,EACrB,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,EAC3D,gBAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CACzC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM;IACvC,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC;QACzB,oDAAoD;QACpD,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,QAAQ,EAAE,CAAC;QACX,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,gBAAgB,EAChB,eAAe,CAAC,IAAI,CAAC,EACrB,gBAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAC1C;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,IAAI,EAAE,MAAM;IACvC,IAAI,IAAI,GAAG,WAAW,CAAC;IACvB,IAAI,IAAI,GAAG,IAAI,CAAC;IAEhB,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC;QACzB,oDAAoD;QACpD,IAAI,EAAE,MAAM;QACZ,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,GAAG;QACT,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,gBAAM,CAAC,OAAO,CACpB,gBAAgB,EAChB,gBAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAC1C;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAAC,IAAI;IAClC,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,qBAAqB;IACrB,IAAI,eAAe,CAAC;IACpB,qBAAqB;IACrB,IAAI,YAAY,CAAC;IACjB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,wGAAwG;QACxG,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC,eAAe,EAAE,YAAY,CAAC,GAAG,OAAO,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IAE/D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,iGAAiG;YACjG,+FAA+F;YAC/F,gFAAgF;YAChF,IAAI,MAAM,YAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,MAAM,YAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;YAED,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sCAAsC;YACtC,OAAO,CAAC,GAAG,CACT,oCAAoC,IAAI,CAAC,OAAO,iBAAiB,GAAG,aAAa,CAAC,CAAC,OAAO,EAAE,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sCAAsC;YACtC,OAAO,CAAC,GAAG,CACT,sCAAsC,IAAI,CAAC,OAAO,OAAO;gBACvD,sBAAsB,CAAC,CAAC,OAAO,EAAE,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,IAAI;IAC7B,OAAO,IAAI,IAAI,GAAG,CAAC;AACrB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CAAC,IAAI;IAC1B,IAAI,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;QAC3B,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;QACxD,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,aAAa,UAAU,IAAI,IAAI,SAAS,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,IAAI,EAAE,aAAa;IACxC,OAAO,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,IAAI,QAAQ,GAAG,EAAC,GAAG,IAAI,EAAC,CAAC;YACzB,IAAI,aAAa,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACxC,OAAO,QAAQ,CAAC,SAAS,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7E,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7C,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,IAAI;IAC3B,OAAO,gBAAM,CAAC,SAAS,CAAC;QACtB,MAAM;YACJ,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC;YACrE,CAAC;YACD,0DAA0D;YAC1D,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7E,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,IAAI;IAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,IAAI;IAC7B,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;AACxD,CAAC;AAED,kBAAe,IAAI,CAAC;AAEpB;;;GAGG"}
package/build/lib/main.js CHANGED
@@ -197,7 +197,7 @@ async function init(args) {
197
197
  }
198
198
  await (0, logsink_1.init)(serverArgs);
199
199
  if (serverArgs.logFilters) {
200
- const { issues, rules } = await support_1.logger.loadSecureValuesPreprocessingRules(serverArgs.logFilters);
200
+ const { issues, rules } = await logger_1.default.unwrap().loadSecureValuesPreprocessingRules(serverArgs.logFilters);
201
201
  if (!lodash_1.default.isEmpty(issues)) {
202
202
  throw new Error(`The log filtering rules config '${serverArgs.logFilters}' has issues: ` +
203
203
  JSON.stringify(issues, null, 2));
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../lib/main.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../lib/main.js"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ export function isServerCommandArgs<Cmd extends import("appium/types").CliComman
39
39
  keepAliveTimeout?: number | undefined;
40
40
  localTimezone?: NonNullable<boolean | undefined> | undefined;
41
41
  logFilters?: import("@appium/types").LogFiltersConfig | undefined;
42
+ logFormat?: NonNullable<import("@appium/types").LogFormatConfig | undefined> | undefined;
42
43
  logNoColors?: NonNullable<boolean | undefined> | undefined;
43
44
  logTimestamp?: NonNullable<boolean | undefined> | undefined;
44
45
  pluginsImportChunkSize?: number | undefined;
@@ -92,6 +93,14 @@ export function isPluginCommandArgs<Cmd extends import("appium/types").CliComman
92
93
  * @returns {os.NetworkInterfaceInfo[]} The list of matched interfcaes
93
94
  */
94
95
  export function fetchInterfaces(family?: 4 | 6 | null): os.NetworkInterfaceInfo[];
96
+ /**
97
+ * https://github.com/SheetJS/js-adler32
98
+ *
99
+ * @param {string} str
100
+ * @param {number?} [seed]
101
+ * @returns {number}
102
+ */
103
+ export function adler32(str: string, seed?: number | null | undefined): number;
95
104
  export const V4_BROADCAST_IP: "0.0.0.0";
96
105
  export const V6_BROADCAST_IP: "::";
97
106
  export const npmPackage: import("read-pkg").NormalizedPackageJson;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.js"],"names":[],"mappings":";AAyBA;;;;GAIG;AACH,uCAFa,KAAK,CAOjB;AA+RD;;;;;GAKG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEC;AAED;;;;;GAKG;AACH,2TAEC;AAED;;;;;GAKG;AACH,gVAEC;AAED;;;;;GAKG;AACH,8PAEC;AAED;;;;;GAKG;AACH,8PAEC;AAED;;;;;;GAMG;AACH,yCAJW,CAAC,GAAC,CAAC,GAAC,IAAI,GAEN,GAAG,oBAAoB,EAAE,CAcrC;AA5XD,wCAAyC;AACzC,mCAAoC;AACpC,kEAA4D;2BAuY/C,OAAO,eAAe,EAAE,YAAY;uCACpC,OAAO,eAAe,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO/C,aAAa,CAAC,CAAC;cACf,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAUN,KAAK;cACL,MAAM;;;;;0EAQP,OAAO,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;6EAKvC,OAAO,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;4EAK1C,OAAO,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;+EAKzC,OAAO,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;6BAK5C,OAAO,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;0BAIlC,OAAO,eAAe,EAAE,WAAW;yBAInC,OAAO,cAAc,EAAE,UAAU;qCACjC,OAAO,cAAc,EAAE,sBAAsB;kCAC7C,OAAO,cAAc,EAAE,mBAAmB;wCAC1C,OAAO,cAAc,EAAE,yBAAyB;4BAChD,OAAO,cAAc,EAAE,gBAAgB;4BACvC,OAAO,cAAc,EAAE,gBAAgB;4BACvC,OAAO,cAAc,EAAE,gBAAgB;2BACvC,OAAO,cAAc,EAAE,eAAe;4MAMtC,OAAO,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;kNAMxC,OAAO,cAAc,EAAE,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;eAxd5C,SAAS;AA8BxB;;;;GAIG;AACH,wCAQE;AAEF;;;;;;;;;;;GAWG;AACH,0XAgHC;AAED;;;;;GAKG;AACH,oPAQC;AAoBD;;;;GAIG;AACH,2CAHW,MAAM,GACJ,MAAM,GAAC,SAAS,CAK5B;AAwDD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,oDAqBC;AA9HD;;;;GAIG;AACH,oPAEC;AAqBD;;;;;;GAMG;AACH,kCAFa,IAAI,CA+ChB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.js"],"names":[],"mappings":";AAyBA;;;;GAIG;AACH,uCAFa,KAAK,CAOjB;AA+RD;;;;;GAKG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEC;AAED;;;;;GAKG;AACH,2TAEC;AAED;;;;;GAKG;AACH,gVAEC;AAED;;;;;GAKG;AACH,8PAEC;AAED;;;;;GAKG;AACH,8PAEC;AAED;;;;;;GAMG;AACH,yCAJW,CAAC,GAAC,CAAC,GAAC,IAAI,GAEN,GAAG,oBAAoB,EAAE,CAcrC;AAED;;;;;;GAMG;AACH,6BAJW,MAAM,qCAEJ,MAAM,CAiDlB;AApbD,wCAAyC;AACzC,mCAAoC;AACpC,kEAA4D;2BA+b/C,OAAO,eAAe,EAAE,YAAY;uCACpC,OAAO,eAAe,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO/C,aAAa,CAAC,CAAC;cACf,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAUN,KAAK;cACL,MAAM;;;;;0EAQP,OAAO,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;6EAKvC,OAAO,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;4EAK1C,OAAO,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;+EAKzC,OAAO,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;6BAK5C,OAAO,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;0BAIlC,OAAO,eAAe,EAAE,WAAW;yBAInC,OAAO,cAAc,EAAE,UAAU;qCACjC,OAAO,cAAc,EAAE,sBAAsB;kCAC7C,OAAO,cAAc,EAAE,mBAAmB;wCAC1C,OAAO,cAAc,EAAE,yBAAyB;4BAChD,OAAO,cAAc,EAAE,gBAAgB;4BACvC,OAAO,cAAc,EAAE,gBAAgB;4BACvC,OAAO,cAAc,EAAE,gBAAgB;2BACvC,OAAO,cAAc,EAAE,eAAe;4MAMtC,OAAO,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;kNAMxC,OAAO,cAAc,EAAE,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;eAhhB5C,SAAS;AA8BxB;;;;GAIG;AACH,wCAQE;AAEF;;;;;;;;;;;GAWG;AACH,0XAgHC;AAED;;;;;GAKG;AACH,oPAQC;AAoBD;;;;GAIG;AACH,2CAHW,MAAM,GACJ,MAAM,GAAC,SAAS,CAK5B;AAwDD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,oDAqBC;AA9HD;;;;GAIG;AACH,oPAEC;AAqBD;;;;;;GAMG;AACH,kCAFa,IAAI,CA+ChB"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.adjustNodePath = exports.removeAppiumPrefixes = exports.pullSettings = exports.getPackageVersion = exports.insertAppiumPrefixes = exports.parseCapsForInnerDriver = exports.inspect = exports.fetchInterfaces = exports.isPluginCommandArgs = exports.isDriverCommandArgs = exports.isExtensionCommandArgs = exports.isSetupCommandArgs = exports.isServerCommandArgs = exports.makeNonW3cCapsError = exports.npmPackage = exports.V6_BROADCAST_IP = exports.V4_BROADCAST_IP = void 0;
6
+ exports.adjustNodePath = exports.removeAppiumPrefixes = exports.pullSettings = exports.getPackageVersion = exports.insertAppiumPrefixes = exports.parseCapsForInnerDriver = exports.inspect = exports.adler32 = exports.fetchInterfaces = exports.isPluginCommandArgs = exports.isDriverCommandArgs = exports.isExtensionCommandArgs = exports.isSetupCommandArgs = exports.isServerCommandArgs = exports.makeNonW3cCapsError = exports.npmPackage = exports.V6_BROADCAST_IP = exports.V4_BROADCAST_IP = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
8
  const logger_1 = __importDefault(require("./logger"));
9
9
  const base_driver_1 = require("@appium/base-driver");
@@ -363,6 +363,64 @@ function fetchInterfaces(family = null) {
363
363
  .filter(({ family }) => !familyValue || familyValue && familyValue.includes(family));
364
364
  }
365
365
  exports.fetchInterfaces = fetchInterfaces;
366
+ /**
367
+ * https://github.com/SheetJS/js-adler32
368
+ *
369
+ * @param {string} str
370
+ * @param {number?} [seed]
371
+ * @returns {number}
372
+ */
373
+ function adler32(str, seed = null) {
374
+ let a = 1, b = 0, L = str.length, M = 0, c = 0, d = 0;
375
+ if (typeof seed === 'number') {
376
+ a = seed & 0xFFFF;
377
+ b = seed >>> 16;
378
+ }
379
+ for (let i = 0; i < L;) {
380
+ M = Math.min(L - i, 2918);
381
+ while (M > 0) {
382
+ c = str.charCodeAt(i++);
383
+ if (c < 0x80) {
384
+ a += c;
385
+ }
386
+ else if (c < 0x800) {
387
+ a += 192 | ((c >> 6) & 31);
388
+ b += a;
389
+ --M;
390
+ a += 128 | (c & 63);
391
+ }
392
+ else if (c >= 0xD800 && c < 0xE000) {
393
+ c = (c & 1023) + 64;
394
+ d = str.charCodeAt(i++) & 1023;
395
+ a += 240 | ((c >> 8) & 7);
396
+ b += a;
397
+ --M;
398
+ a += 128 | ((c >> 2) & 63);
399
+ b += a;
400
+ --M;
401
+ a += 128 | ((d >> 6) & 15) | ((c & 3) << 4);
402
+ b += a;
403
+ --M;
404
+ a += 128 | (d & 63);
405
+ }
406
+ else {
407
+ a += 224 | ((c >> 12) & 15);
408
+ b += a;
409
+ --M;
410
+ a += 128 | ((c >> 6) & 63);
411
+ b += a;
412
+ --M;
413
+ a += 128 | (c & 63);
414
+ }
415
+ b += a;
416
+ --M;
417
+ }
418
+ a = (15 * (a >>> 16) + (a & 65535));
419
+ b = (15 * (b >>> 16) + (b & 65535));
420
+ }
421
+ return ((b % 65521) << 16) | (a % 65521);
422
+ }
423
+ exports.adler32 = adler32;
366
424
  /**
367
425
  * @typedef {import('@appium/types').StringRecord} StringRecord
368
426
  * @typedef {import('@appium/types').BaseDriverCapConstraints} BaseDriverCapConstraints
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.js"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,sDAA8B;AAC9B,qDAA0F;AAC1F,+BAAqC;AACrC,6CAAyC;AACzC,gDAAwB;AACxB,2CAA0F;AAC1F,sDAAyB;AAEzB,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,2BAAa,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAC/E,QAAA,eAAe,GAAG,SAAS,CAAC;AAC5B,QAAA,eAAe,GAAG,IAAI,CAAC;AACvB,QAAA,UAAU,GAAG,YAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAG5D;;;;;;GAMG;AACH,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;AAEzC;;;;GAIG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAI,oBAAM,CAAC,sBAAsB,CACtC,oGAAoG;QACpG,oEAAoE,CACrE,CAAC;AACJ,CAAC;AALD,kDAKC;AAED;;;;GAIG;AACH,MAAM,OAAO,GAAG,gBAAC,CAAC,IAAI,CACpB,gBAAC,CAAC,YAAY;AACZ,8EAA8E,CAAC,CAAC,cAAI,CAAC,EACrF,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,WAAW,EAAC,CACnD,EACD,CAAC,GAAG,IAAI,EAAE,EAAE;IACV,gBAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AACvB,CAAC,CACF,CAAC;AAgZA,0BAAO;AA9YT;;;;;;;;;;;GAWG;AACH,SAAS,uBAAuB,CAC9B,kBAAkB,EAClB,eAAe,EACf,WAAW,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,EACnC,mBAAmB,GAAG,EAAE;IAExB,0DAA0D;IAC1D,MAAM,UAAU,GACd,gBAAC,CAAC,aAAa,CAAC,eAAe,CAAC;QAChC,CAAC,gBAAC,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,IAAI,gBAAC,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;IAClF,MAAM,aAAa,GAAG,gBAAC,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC1D,IAAI,WAAW,GAAG,iDAAiD,CAAC,CAAC,EAAE,CAAC,CAAC;IACzE,8DAA8D;IAC9D,IAAI,wBAAwB,CAAC;IAC7B,iEAAiE;IACjE,IAAI,2BAA2B,CAAC;IAEhC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,6BAA6B,CAAC,CAAC;YACpC,QAAQ,EAAE,uBAAS,CAAC,GAAG;YACvB,KAAK,EAAE,mBAAmB,EAAE;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAC,GAAG,EAAC,GAAG,uBAAS,CAAC;IACxB,MAAM,QAAQ,GAAG,GAAG,CAAC;IAErB,mDAAmD;IACnD,kBAAkB,GAAG,gBAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IACrD,eAAe,GAAG,gBAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAC/C,mBAAmB,GAAG,gBAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAEvD,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACpC,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,IAAI,gBAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC9E,IAAI,eAAe,GAAG,KAAK,CAAC;gBAC5B,4DAA4D;gBAC5D,KAAK,MAAM,eAAe,IAAI,eAAe,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;oBAC/D,IACE,gBAAC,CAAC,aAAa,CAAC,eAAe,CAAC;wBAChC,gBAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC,EAC/E,CAAC;wBACD,eAAe,GAAG,IAAI,CAAC;wBACvB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,6DAA6D;gBAC7D,eAAe;oBACb,eAAe;wBACf,CAAC,gBAAC,CAAC,aAAa,CAAC,eAAe,CAAC,WAAW,CAAC;4BAC3C,gBAAC,CAAC,GAAG,CACH,oBAAoB,CAAC,eAAe,CAAC,WAAW,CAAC,EACjD,kBAAkB,CAAC,aAAa,CAAC,CAClC,CAAC,CAAC;gBACP,IAAI,eAAe,EAAE,CAAC;oBACpB,0DAA0D;oBAC1D,SAAS;gBACX,CAAC;gBAED,0DAA0D;gBAC1D,IAAI,gBAAC,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC1C,eAAe,CAAC,UAAU,GAAG,+CAA+C,CAAC,CAAC;wBAC5E,EAAC,CAAC,aAAa,CAAC,EAAE,eAAe,EAAC;qBACnC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,eAAe,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,kBAAkB,GAAG;gBACnB,GAAG,oBAAoB,CAAC,mBAAmB,CAAC;gBAC5C,GAAG,kBAAkB;aACtB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,IAAI,aAAa,EAAE,CAAC;QAClB,2BAA2B,GAAG,EAAC,GAAG,kBAAkB,EAAC,CAAC;IACxD,CAAC;IAED,eAAe;IACf,IAAI,UAAU,EAAE,CAAC;QACf,2EAA2E;QAC3E,0EAA0E;QAC1E,IAAI,CAAC;YACH,WAAW,GAAG,IAAA,iCAAmB,EAAC,eAAe,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAM,CAAC,IAAI,CAAC,qCAAqC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,OAAO,+BAA+B,CAAC,CAAC;gBACtC,WAAW;gBACX,2BAA2B;gBAC3B,wBAAwB;gBACxB,QAAQ;gBACR,KAAK;aACN,CAAC,CAAC;QACL,CAAC;QAED,8FAA8F;QAC9F,wBAAwB,GAAG;YACzB,WAAW,EAAE,EAAC,GAAG,oBAAoB,CAAC,WAAW,CAAC,EAAC;YACnD,UAAU,EAAE,CAAC,EAAE,CAAC;SACjB,CAAC;IACJ,CAAC;IAED,OAAO,oCAAoC,CAAC,CAAC;QAC3C,WAAW;QACX,2BAA2B;QAC3B,wBAAwB;QACxB,QAAQ;KACT,CAAC,CAAC;AACL,CAAC;AAmRC,0DAAuB;AAjRzB;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,IAAI;IAChC,OAAO,gCAAgC,CAAC,CACtC,gBAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACzB,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QACjE,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,GAAG,iBAAiB,IAAI,GAAG,EAAE,CAClC,CACF,CAAC;AACJ,CAAC;AAoQC,oDAAoB;AAlQtB;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,IAAI;IAChC,OAAO,8BAA8B,CAAC,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC/F,CAAC;AA8PC,oDAAoB;AA5PtB;;;GAGG;AACH,SAAS,kBAAkB,CAAC,GAAG;IAC7B,MAAM,MAAM,GAAG,GAAG,iBAAiB,GAAG,CAAC;IACvC,OAAO,gBAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,OAAO;IAChC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,OAAO,eAAe,CAAC,IAAI,EAAE,CAAC;IACzD,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC;AAyOC,8CAAiB;AAvOnB;;;;;;GAMG;AACH,SAAS,cAAc;IACrB,MAAM,QAAQ,GAAG,cAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC9D,IAAI,CAAC,QAAQ,IAAI,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAClE,OAAO;IACT,CAAC;IACD,MAAM,eAAe,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE/C,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,IAAI,CAAC;YACH,wDAAwD;YACxD,gEAAgE;YAChE,2CAA2C;YAC3C,2DAA2D;YAC3D,+BAA+B;YAC/B,8DAA8D;YAC9D,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC;QACxC,IAAI,mBAAmB,EAAE,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QAC/B,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,cAAI,CAAC,SAAS,CAAC,CAAC;IAClE,IAAI,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;QACxC,OAAO;IACT,CAAC;IAED,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,cAAI,CAAC,SAAS,CAAC,CAAC;IAC3D,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,gBAAC,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,SAAS,CAAC,CAAC;IACzF,CAAC;AACH,CAAC;AAsLC,wCAAc;AApLhB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAS,YAAY,CAAC,IAAI;IACxB,IAAI,CAAC,gBAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC;QACV,IAAI,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,gBAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,IAAI,CAAC,KAAK,GAAG,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;YACjC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAsIC,oCAAY;AApId;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,IAAI;IACtC,OAAO,IAAI,CAAC,UAAU,KAAK,6BAAiB,CAAC;AAC/C,CAAC;AAFD,kDAEC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,IAAI;IACrC,OAAO,IAAI,CAAC,UAAU,KAAK,4BAAgB,CAAC;AAC9C,CAAC;AAFD,gDAEC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,IAAI;IACzC,OAAO,IAAI,CAAC,UAAU,KAAK,uBAAW,IAAI,IAAI,CAAC,UAAU,KAAK,uBAAW,CAAC;AAC5E,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,IAAI;IACtC,OAAO,IAAI,CAAC,UAAU,KAAK,uBAAW,CAAC;AACzC,CAAC;AAFD,kDAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,IAAI;IACtC,OAAO,IAAI,CAAC,UAAU,KAAK,uBAAW,CAAC;AACzC,CAAC;AAFD,kDAEC;AAED;;;;;;GAMG;AACH,SAAgB,eAAe,CAAE,MAAM,GAAG,IAAI;IAC5C,IAAI,WAAW,GAAG,IAAI,CAAC;IACvB,wDAAwD;IACxD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;SAAM,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,6DAA6D;IAC7D,OAAO,gBAAC,CAAC,OAAO,CAAC,gBAAC,CAAC,MAAM,CAAC,iBAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChE,6DAA6D;SAC5D,MAAM,CAAC,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,CAAC,WAAW,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACvF,CAAC;AAZD,0CAYC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IACvC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC;QAClB,CAAC,GAAG,IAAI,KAAK,EAAE,CAAC;IAClB,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;QACxB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACd,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;gBACV,CAAC,IAAI,CAAC,CAAC;YACT,CAAC;iBACC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC;gBACpB,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvB,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACrB,CAAC;iBAAM,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;gBACtC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gBACnC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtB,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvB,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxC,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACP,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBACxB,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvB,CAAC,IAAI,CAAC,CAAC;gBACP,EAAE,CAAC,CAAC;gBACR,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACrB,CAAC;YACD,CAAC,IAAI,CAAC,CAAC;YACJ,EAAE,CAAC,CAAC;QACR,CAAC;QACD,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QACpC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC1C,CAAC;AA/CD,0BA+CC;AAYD;;;GAGG;AAEH;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;;GAGG;AAEH;;GAEG;AAEH;;;;;;;;;GASG;AAEH;;;;GAIG;AAEH;;;;GAIG"}
package/lib/logsink.js CHANGED
@@ -1,30 +1,27 @@
1
1
  import globalLog from '@appium/logger';
2
2
  import {createLogger, format, transports} from 'winston';
3
- import {fs, logger} from '@appium/support';
4
- import { APPIUM_LOGGER_NAME } from './logger';
3
+ import {fs} from '@appium/support';
5
4
  import _ from 'lodash';
5
+ import { adler32 } from './utils';
6
+ import { LRUCache } from 'lru-cache';
6
7
 
7
8
  // set up distributed logging before everything else
8
- logger.patchLogger(globalLog);
9
9
  global._global_npmlog = globalLog;
10
-
11
10
  // npmlog is used only for emitting, we use winston for output
12
11
  globalLog.level = 'info';
13
- const levels = {
12
+ const LEVELS_MAP = {
14
13
  debug: 4,
15
14
  info: 3,
16
15
  warn: 2,
17
16
  error: 1,
18
17
  };
19
-
20
- const colors = {
18
+ const COLORS_MAP = {
21
19
  info: 'cyan',
22
20
  debug: 'grey',
23
21
  warn: 'yellow',
24
22
  error: 'red',
25
23
  };
26
-
27
- const npmToWinstonLevels = {
24
+ const TO_WINSTON_LEVELS_MAP = {
28
25
  silly: 'debug',
29
26
  verbose: 'debug',
30
27
  debug: 'debug',
@@ -33,36 +30,106 @@ const npmToWinstonLevels = {
33
30
  warn: 'warn',
34
31
  error: 'error',
35
32
  };
33
+ const COLOR_CODE_PATTERN = /\u001b\[(\d+(;\d+)*)?m/g; // eslint-disable-line no-control-regex
36
34
 
37
- const encounteredPrefixes = [];
35
+ // https://www.ditig.com/publications/256-colors-cheat-sheet
36
+ const MIN_COLOR = 17;
37
+ const MAX_COLOR = 231;
38
+ /** @type {LRUCache<string, number>} */
39
+ const COLORS_CACHE = new LRUCache({
40
+ max: 1024,
41
+ ttl: 1000 * 60 * 60 * 24, // expire after 24 hours
42
+ updateAgeOnGet: true,
43
+ });
38
44
 
45
+ /** @type {import('winston').Logger?} */
39
46
  let log = null;
40
- let useLocalTimeZone = false;
41
47
 
42
- // add the timestamp in the correct format to the log info object
43
- const timestampFormat = format.timestamp({
44
- format() {
45
- let date = new Date();
46
- if (useLocalTimeZone) {
47
- date = new Date(date.valueOf() - date.getTimezoneOffset() * 60000);
48
+ /**
49
+ *
50
+ * @param {import('../types').ParsedArgs} args
51
+ * @returns {Promise<void>}
52
+ */
53
+ export async function init(args) {
54
+ globalLog.level = 'silent';
55
+
56
+ // clean up in case we have initiated before since npmlog is a global object
57
+ clear();
58
+
59
+ const transports = await createTransports(args);
60
+ const transportNames = new Set(transports.map((tr) => tr.constructor.name));
61
+ log = createLogger({
62
+ transports,
63
+ levels: LEVELS_MAP,
64
+ });
65
+
66
+ const reportedLoggerErrors = new Set();
67
+ // Capture logs emitted via npmlog and pass them through winston
68
+ globalLog.on('log', (/** @type {MessageObject} */{level, message, prefix}) => {
69
+ const {sessionSignature} = globalLog.asyncStorage.getStore() ?? {};
70
+ /** @type {string[]} */
71
+ const prefixes = [];
72
+ if (sessionSignature) {
73
+ prefixes.push(sessionSignature);
48
74
  }
49
- // '2012-11-04T14:51:06.157Z' -> '2012-11-04 14:51:06:157'
50
- return date.toISOString().replace(/[TZ]/g, ' ').replace(/\./g, ':').trim();
51
- },
52
- });
75
+ if (prefix) {
76
+ prefixes.push(prefix);
77
+ }
78
+ let msg = message;
79
+ if (!_.isEmpty(prefixes)) {
80
+ const finalPrefix = prefixes
81
+ .map(toDecoratedPrefix)
82
+ .map((pfx) => isLogColorEnabled(args) ? colorizePrefix(pfx) : pfx)
83
+ .join('');
84
+ msg = `${finalPrefix} ${msg}`;
85
+ }
86
+ const winstonLevel = TO_WINSTON_LEVELS_MAP[level] || 'info';
87
+ try {
88
+ /** @type {import('winston').Logger} */(log)[winstonLevel](msg);
89
+ if (_.isFunction(args.logHandler)) {
90
+ args.logHandler(level, msg);
91
+ }
92
+ } catch (e) {
93
+ if (!reportedLoggerErrors.has(e.message) && process.stderr.writable) {
94
+ // eslint-disable-next-line no-console
95
+ console.error(
96
+ `The log message '${_.truncate(msg, {length: 30})}' cannot be written into ` +
97
+ `one or more requested destinations: ${transportNames}. Original error: ${e.message}`
98
+ );
99
+ reportedLoggerErrors.add(e.message);
100
+ }
101
+ }
102
+ });
103
+ }
104
+
105
+ /**
106
+ * @returns {void}
107
+ */
108
+ export function clear() {
109
+ log?.clear();
110
+ globalLog.removeAllListeners('log');
111
+ }
53
112
 
54
113
  // set the custom colors
55
114
  const colorizeFormat = format.colorize({
56
- colors,
115
+ colors: COLORS_MAP,
57
116
  });
58
117
 
59
118
  // Strip the color marking within messages
60
119
  const stripColorFormat = format(function stripColor(info) {
61
- const code = /\u001b\[(\d+(;\d+)*)?m/g; // eslint-disable-line no-control-regex
62
- info.message = info.message.replace(code, '');
63
- return info;
120
+ return {
121
+ ...info,
122
+ level: stripColorCodes(info.level),
123
+ message: stripColorCodes(info.message),
124
+ };
64
125
  })();
65
126
 
127
+ /**
128
+ *
129
+ * @param {ParsedArgs} args
130
+ * @param {string} logLvl
131
+ * @returns {transports.ConsoleTransportInstance}
132
+ */
66
133
  function createConsoleTransport(args, logLvl) {
67
134
  return new transports.Console({
68
135
  // @ts-expect-error The 'name' property should exist
@@ -73,15 +140,19 @@ function createConsoleTransport(args, logLvl) {
73
140
  level: logLvl,
74
141
  stderrLevels: ['error'],
75
142
  format: format.combine(
76
- timestampFormat,
77
- args.logNoColors ? stripColorFormat : colorizeFormat,
78
- format.printf(function printInfo(info) {
79
- return `${args.logTimestamp ? `${info.timestamp} - ` : ''}${info.message}`;
80
- })
143
+ formatTimestamp(args),
144
+ isLogColorEnabled(args) ? colorizeFormat : stripColorFormat,
145
+ format.printf(formatLogLine(args, true))
81
146
  ),
82
147
  });
83
148
  }
84
149
 
150
+ /**
151
+ *
152
+ * @param {ParsedArgs} args
153
+ * @param {string} logLvl
154
+ * @returns {transports.FileTransportInstance}
155
+ */
85
156
  function createFileTransport(args, logLvl) {
86
157
  return new transports.File({
87
158
  // @ts-expect-error The 'name' property should exist
@@ -94,19 +165,23 @@ function createFileTransport(args, logLvl) {
94
165
  level: logLvl,
95
166
  format: format.combine(
96
167
  stripColorFormat,
97
- timestampFormat,
98
- format.printf(function printInfo(info) {
99
- return `${info.timestamp} ${info.message}`;
100
- })
168
+ formatTimestamp(args),
169
+ format.printf(formatLogLine(args, false))
101
170
  ),
102
171
  });
103
172
  }
104
173
 
174
+ /**
175
+ *
176
+ * @param {ParsedArgs} args
177
+ * @param {string} logLvl
178
+ * @returns {transports.HttpTransportInstance}
179
+ */
105
180
  function createHttpTransport(args, logLvl) {
106
181
  let host = '127.0.0.1';
107
182
  let port = 9003;
108
183
 
109
- if (args.webhook.match(':')) {
184
+ if (args.webhook?.match(':')) {
110
185
  const hostAndPort = args.webhook.split(':');
111
186
  host = hostAndPort[0];
112
187
  port = parseInt(hostAndPort[1], 10);
@@ -124,28 +199,26 @@ function createHttpTransport(args, logLvl) {
124
199
  level: logLvl,
125
200
  format: format.combine(
126
201
  stripColorFormat,
127
- format.printf(function printInfo(info) {
128
- return `${info.timestamp} ${info.message}`;
129
- })
202
+ format.printf(formatLogLine(args, false))
130
203
  ),
131
204
  });
132
205
  }
133
206
 
134
207
  /**
135
208
  *
136
- * @param {import('@appium/types').StringRecord} args
209
+ * @param {ParsedArgs} args
137
210
  * @returns {Promise<import('winston-transport')[]>}
138
211
  */
139
212
  async function createTransports(args) {
140
213
  const transports = [];
141
- let consoleLogLevel = null;
142
- let fileLogLevel = null;
143
-
214
+ /** @type {string} */
215
+ let consoleLogLevel;
216
+ /** @type {string} */
217
+ let fileLogLevel;
144
218
  if (args.loglevel && args.loglevel.match(':')) {
145
219
  // --log-level arg can optionally provide diff logging levels for console and file, separated by a colon
146
220
  const lvlPair = args.loglevel.split(':');
147
- consoleLogLevel = lvlPair[0] || consoleLogLevel;
148
- fileLogLevel = lvlPair[1] || fileLogLevel;
221
+ [consoleLogLevel, fileLogLevel] = lvlPair;
149
222
  } else {
150
223
  consoleLogLevel = fileLogLevel = args.loglevel;
151
224
  }
@@ -185,72 +258,95 @@ async function createTransports(args) {
185
258
  return transports;
186
259
  }
187
260
 
188
- function getColorizedPrefix(prefix) {
189
- let prefixId = prefix.split('@')[0].trim();
190
- prefixId = prefixId.split(' (')[0].trim();
191
- if (encounteredPrefixes.indexOf(prefixId) < 0) {
192
- encounteredPrefixes.push(prefixId);
193
- }
194
- // using a multiple of 16 should cause 16 colors to be created
195
- const colorNumber = encounteredPrefixes.indexOf(prefixId) * 16;
196
- // use the modulus to cycle around color wheel
197
- return `\x1b[38;5;${colorNumber % 256}m${prefix}\x1b[0m`;
261
+ /**
262
+ *
263
+ * @param {string} text
264
+ * @returns {string}
265
+ */
266
+ function toDecoratedPrefix(text) {
267
+ return `[${text}]`;
198
268
  }
199
269
 
200
- async function init(args) {
201
- globalLog.level = 'silent';
202
-
203
- // set de facto param passed to timestamp function
204
- useLocalTimeZone = args.localTimezone;
205
-
206
- // clean up in case we have initiated before since npmlog is a global object
207
- clear();
208
-
209
- const transports = await createTransports(args);
210
- const transportNames = new Set(transports.map((tr) => tr.constructor.name));
211
- log = createLogger({
212
- transports,
213
- levels,
214
- });
270
+ /**
271
+ * Selects the color of the text in terminal from the MIN_COLOR..MAX_COLOR
272
+ * range. We use adler32 hashing to ensure that equal prefixes would always have
273
+ * same colors.
274
+ *
275
+ * @param {string} text Initial text
276
+ * @returns {string} Colorized text (with pseudocode cchars added)
277
+ */
278
+ function colorizePrefix(text) {
279
+ let colorIndex = COLORS_CACHE.get(text);
280
+ if (!colorIndex) {
281
+ const hash = adler32(text);
282
+ colorIndex = MIN_COLOR + hash % (MAX_COLOR - MIN_COLOR);
283
+ COLORS_CACHE.set(text, colorIndex);
284
+ }
285
+ return `\x1b[38;5;${colorIndex}m${text}\x1b[0m`;
286
+ }
215
287
 
216
- const reportedLoggerErrors = new Set();
217
- // Capture logs emitted via npmlog and pass them through winston
218
- globalLog.on('log', ({level, message, prefix}) => {
219
- const winstonLevel = npmToWinstonLevels[level] || 'info';
220
- let msg = message;
221
- if (prefix) {
222
- const decoratedPrefix = `[${prefix}]`;
223
- const toColorizedDecoratedPrefix = () => prefix === APPIUM_LOGGER_NAME
224
- ? decoratedPrefix.magenta
225
- : getColorizedPrefix(decoratedPrefix);
226
- msg = `${args.logNoColors ? decoratedPrefix : toColorizedDecoratedPrefix()} ${msg}`;
227
- }
228
- try {
229
- log[winstonLevel](msg);
230
- if (_.isFunction(args.logHandler)) {
231
- args.logHandler(level, msg);
232
- }
233
- } catch (e) {
234
- if (!reportedLoggerErrors.has(e.message) && process.stderr.writable) {
235
- // eslint-disable-next-line no-console
236
- console.error(
237
- `The log message '${_.truncate(msg, {length: 30})}' cannot be written into ` +
238
- `one or more requested destinations: ${transportNames}. Original error: ${e.message}`
239
- );
240
- reportedLoggerErrors.add(e.message);
288
+ /**
289
+ * @param {ParsedArgs} args
290
+ * @param {boolean} targetConsole
291
+ * @returns {(info: import('logform').TransformableInfo) => string}
292
+ */
293
+ function formatLogLine(args, targetConsole) {
294
+ return (info) => {
295
+ if (['json', 'pretty_json'].includes(args.logFormat)) {
296
+ let infoCopy = {...info};
297
+ if (targetConsole && !args.logTimestamp) {
298
+ delete infoCopy.timestamp;
241
299
  }
300
+ return JSON.stringify(infoCopy, null, args.logFormat === 'pretty_json' ? 2 : undefined);
242
301
  }
302
+ if (targetConsole) {
303
+ return `${args.logTimestamp ? `${info.timestamp} - ` : ''}${info.message}`;
304
+ }
305
+ return `${info.timestamp} ${info.message}`;
306
+ };
307
+ }
308
+
309
+ /**
310
+ * add the timestamp in the correct format to the log info object
311
+ *
312
+ * @param {ParsedArgs} args
313
+ * @returns {import('logform').Format}
314
+ */
315
+ function formatTimestamp(args) {
316
+ return format.timestamp({
317
+ format() {
318
+ let date = new Date();
319
+ if (args.localTimezone) {
320
+ date = new Date(date.valueOf() - date.getTimezoneOffset() * 60000);
321
+ }
322
+ // '2012-11-04T14:51:06.157Z' -> '2012-11-04 14:51:06:157'
323
+ return date.toISOString().replace(/[TZ]/g, ' ').replace(/\./g, ':').trim();
324
+ },
243
325
  });
244
326
  }
245
327
 
246
- function clear() {
247
- if (log) {
248
- for (let transport of _.keys(log.transports)) {
249
- log.remove(transport);
250
- }
251
- }
252
- globalLog.removeAllListeners('log');
328
+ /**
329
+ * Strips color control codes from the given string
330
+ *
331
+ * @param {string} text
332
+ * @returns {string}
333
+ */
334
+ function stripColorCodes(text) {
335
+ return text.replace(COLOR_CODE_PATTERN, '');
336
+ }
337
+
338
+ /**
339
+ *
340
+ * @param {ParsedArgs} args
341
+ * @returns {boolean}
342
+ */
343
+ function isLogColorEnabled(args) {
344
+ return !args.logNoColors && args.logFormat === 'text';
253
345
  }
254
346
 
255
- export {init, clear};
256
347
  export default init;
348
+
349
+ /**
350
+ * @typedef {import('appium/types').ParsedArgs} ParsedArgs
351
+ * @typedef {import('@appium/logger').MessageObject} MessageObject
352
+ */
package/lib/main.js CHANGED
@@ -8,7 +8,7 @@ import {
8
8
  server as baseServer,
9
9
  normalizeBasePath,
10
10
  } from '@appium/base-driver';
11
- import {logger as logFactory, util, env} from '@appium/support';
11
+ import {util, env} from '@appium/support';
12
12
  import {asyncify} from 'asyncbox';
13
13
  import _ from 'lodash';
14
14
  import {AppiumDriver} from './appium';
@@ -246,7 +246,7 @@ async function init(args) {
246
246
  await logsinkInit(serverArgs);
247
247
 
248
248
  if (serverArgs.logFilters) {
249
- const {issues, rules} = await logFactory.loadSecureValuesPreprocessingRules(
249
+ const {issues, rules} = await logger.unwrap().loadSecureValuesPreprocessingRules(
250
250
  serverArgs.logFilters,
251
251
  );
252
252
  if (!_.isEmpty(issues)) {
package/lib/utils.js CHANGED
@@ -391,6 +391,62 @@ export function fetchInterfaces (family = null) {
391
391
  .filter(({family}) => !familyValue || familyValue && familyValue.includes(family));
392
392
  }
393
393
 
394
+ /**
395
+ * https://github.com/SheetJS/js-adler32
396
+ *
397
+ * @param {string} str
398
+ * @param {number?} [seed]
399
+ * @returns {number}
400
+ */
401
+ export function adler32(str, seed = null) {
402
+ let a = 1, b = 0, L = str.length, M = 0, c = 0, d = 0;
403
+ if (typeof seed === 'number') {
404
+ a = seed & 0xFFFF;
405
+ b = seed >>> 16;
406
+ }
407
+ for (let i = 0; i < L;) {
408
+ M = Math.min(L - i, 2918);
409
+ while (M > 0) {
410
+ c = str.charCodeAt(i++);
411
+ if (c < 0x80) {
412
+ a += c;
413
+ }
414
+ else if (c < 0x800) {
415
+ a += 192 | ((c >> 6) & 31);
416
+ b += a;
417
+ --M;
418
+ a += 128 | (c & 63);
419
+ } else if (c >= 0xD800 && c < 0xE000) {
420
+ c = (c & 1023) + 64;
421
+ d = str.charCodeAt(i++) & 1023;
422
+ a += 240 | ((c >> 8) & 7);
423
+ b += a;
424
+ --M;
425
+ a += 128 | ((c >> 2) & 63);
426
+ b += a;
427
+ --M;
428
+ a += 128 | ((d >> 6) & 15) | ((c & 3) << 4);
429
+ b += a;
430
+ --M;
431
+ a += 128 | (d & 63);
432
+ } else {
433
+ a += 224 | ((c >> 12) & 15);
434
+ b += a;
435
+ --M;
436
+ a += 128 | ((c >> 6) & 63);
437
+ b += a;
438
+ --M;
439
+ a += 128 | (c & 63);
440
+ }
441
+ b += a;
442
+ --M;
443
+ }
444
+ a = (15 * (a >>> 16) + (a & 65535));
445
+ b = (15 * (b >>> 16) + (b & 65535));
446
+ }
447
+ return ((b % 65521) << 16) | (a % 65521);
448
+ }
449
+
394
450
  export {
395
451
  inspect,
396
452
  parseCapsForInnerDriver,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium",
3
- "version": "2.9.0",
3
+ "version": "2.10.1",
4
4
  "description": "Automation for Apps.",
5
5
  "keywords": [
6
6
  "automation",
@@ -45,10 +45,9 @@
45
45
  "scripts": {
46
46
  "build:docs": "node docs/scripts/build-docs.js",
47
47
  "build:docs:preview": "cross-env APPIUM_DOCS_PREVIEW=1 npm run build:docs",
48
- "build:docs:assets": "node docs/scripts/copy-assets.js",
49
48
  "build:docs:cli": "node docs/scripts/gen-cli-args-docs.js",
50
49
  "build:docs:reference": "node docs/scripts/build-reference.js",
51
- "dev:docs": "npm run build:docs:assets && npm run dev:docs:en",
50
+ "dev:docs": "npm run dev:docs:en",
52
51
  "dev:docs:en": "appium-docs build --serve --mkdocs-yml ./docs/mkdocs-en.yml",
53
52
  "dev:docs:ja": "appium-docs build --serve --mkdocs-yml ./docs/mkdocs-ja.yml",
54
53
  "dev:docs:zh": "appium-docs build --serve --mkdocs-yml ./docs/mkdocs-zh.yml",
@@ -60,13 +59,13 @@
60
59
  "test:unit": "mocha \"./test/unit/**/*.spec.js\""
61
60
  },
62
61
  "dependencies": {
63
- "@appium/base-driver": "^9.9.0",
64
- "@appium/base-plugin": "^2.2.35",
65
- "@appium/docutils": "^1.0.11",
66
- "@appium/logger": "^1.3.0",
67
- "@appium/schema": "~0.5.0",
68
- "@appium/support": "^4.5.0",
69
- "@appium/types": "^0.19.2",
62
+ "@appium/base-driver": "^9.10.1",
63
+ "@appium/base-plugin": "^2.2.37",
64
+ "@appium/docutils": "^1.0.13",
65
+ "@appium/logger": "^1.4.1",
66
+ "@appium/schema": "^0.6.0",
67
+ "@appium/support": "^5.0.1",
68
+ "@appium/types": "^0.20.1",
70
69
  "@sidvind/better-ajv-errors": "2.1.3",
71
70
  "@types/argparse": "2.0.16",
72
71
  "@types/bluebird": "3.5.42",
@@ -82,19 +81,20 @@
82
81
  "axios": "1.7.2",
83
82
  "bluebird": "3.7.2",
84
83
  "cross-env": "7.0.3",
85
- "lilconfig": "3.1.1",
84
+ "lilconfig": "3.1.2",
86
85
  "lodash": "4.17.21",
86
+ "lru-cache": "10.2.2",
87
87
  "ora": "5.4.1",
88
88
  "package-changed": "3.0.0",
89
89
  "resolve-from": "5.0.0",
90
90
  "semver": "7.6.2",
91
91
  "source-map-support": "0.5.21",
92
92
  "teen_process": "2.1.4",
93
- "type-fest": "4.19.0",
93
+ "type-fest": "4.20.0",
94
94
  "winston": "3.13.0",
95
95
  "wrap-ansi": "7.0.0",
96
96
  "ws": "8.17.0",
97
- "yaml": "2.4.3"
97
+ "yaml": "2.4.5"
98
98
  },
99
99
  "engines": {
100
100
  "node": "^14.17.0 || ^16.13.0 || >=18.0.0",
@@ -103,5 +103,5 @@
103
103
  "publishConfig": {
104
104
  "access": "public"
105
105
  },
106
- "gitHead": "d4ce2a82d9b70af7cecf5174ec2521b0911f737d"
106
+ "gitHead": "192f1f379301539540aa7882f4b667a802cbc4a8"
107
107
  }