Socket
Socket
Sign inDemoInstall

appium-support

Package Overview
Dependencies
Maintainers
7
Versions
145
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

appium-support - npm Package Compare versions

Comparing version 2.30.1 to 2.30.2

10

build/lib/util.js

@@ -118,6 +118,6 @@ "use strict";

try {
obj = JSON.parse(obj);
} catch (ign) {}
return obj;
return JSON.parse(obj);
} catch (ign) {
return obj;
}
}

@@ -235,2 +235,2 @@

//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi91dGlsLmpzIl0sIm5hbWVzIjpbIlczQ19XRUJfRUxFTUVOVF9JREVOVElGSUVSIiwiaGFzQ29udGVudCIsInZhbCIsIl8iLCJpc1N0cmluZyIsImhhc1ZhbHVlIiwiaGFzVmFsIiwiaXNOdW1iZXIiLCJpc05hTiIsImlzVW5kZWZpbmVkIiwiaXNOdWxsIiwiZXNjYXBlU3BhY2UiLCJzdHIiLCJzcGxpdCIsImpvaW4iLCJlc2NhcGVTcGVjaWFsQ2hhcnMiLCJxdW90ZUVzY2FwZSIsInJlcGxhY2UiLCJyZSIsIlJlZ0V4cCIsImxvY2FsSXAiLCJpcCIsImNoYWluIiwib3MiLCJuZXR3b3JrSW50ZXJmYWNlcyIsInZhbHVlcyIsImZsYXR0ZW4iLCJmaWx0ZXIiLCJmYW1pbHkiLCJpbnRlcm5hbCIsIm1hcCIsImZpcnN0IiwidmFsdWUiLCJjYW5jZWxsYWJsZURlbGF5IiwibXMiLCJ0aW1lciIsInJlc29sdmUiLCJyZWplY3QiLCJkZWxheSIsIkIiLCJQcm9taXNlIiwiX3Jlc29sdmUiLCJfcmVqZWN0Iiwic2V0VGltZW91dCIsImNhbmNlbCIsImNsZWFyVGltZW91dCIsIkNhbmNlbGxhdGlvbkVycm9yIiwibXVsdGlSZXNvbHZlIiwicm9vdHMiLCJhcmdzIiwicm9vdCIsInBhdGgiLCJzYWZlSnNvblBhcnNlIiwib2JqIiwiSlNPTiIsInBhcnNlIiwiaWduIiwidW53cmFwRWxlbWVudCIsImVsIiwicHJvcE5hbWUiLCJoYXMiLCJ3cmFwRWxlbWVudCIsImVsZW1lbnRJZCIsIkVMRU1FTlQiLCJmaWx0ZXJPYmplY3QiLCJwcmVkaWNhdGUiLCJuZXdPYmoiLCJjbG9uZSIsInYiLCJpc0Z1bmN0aW9uIiwidmFsdWVQcmVkaWNhdGUiLCJrZXkiLCJPYmplY3QiLCJrZXlzIiwidG9SZWFkYWJsZVNpemVTdHJpbmciLCJieXRlcyIsImludEJ5dGVzIiwicGFyc2VJbnQiLCJFcnJvciIsInBhcnNlRmxvYXQiLCJ0b0ZpeGVkIiwiaXNTdWJQYXRoIiwib3JpZ2luYWxQYXRoIiwiZm9yY2VQb3NpeCIsInBhdGhPYmoiLCJwb3NpeCIsInAiLCJpc0Fic29sdXRlIiwibm9ybWFsaXplZFJvb3QiLCJub3JtYWxpemUiLCJub3JtYWxpemVkUGF0aCIsInN0YXJ0c1dpdGgiLCJpc1NhbWVEZXN0aW5hdGlvbiIsInBhdGgxIiwicGF0aDIiLCJwYXRoTiIsImFsbFBhdGhzIiwicmVkdWNlIiwiYSIsImIiLCJmcyIsImV4aXN0cyIsImFyZUFsbEl0ZW1zRXF1YWwiLCJhcnIiLCJOYU4iLCJ4Iiwic3RhdCIsImlubyIsImNvZXJjZVZlcnNpb24iLCJ2ZXIiLCJzdHJpY3QiLCJyZXN1bHQiLCJzZW12ZXIiLCJ2YWxpZCIsImNvZXJjZSIsIlNVUFBPUlRFRF9PUEVSQVRPUlMiLCJjb21wYXJlVmVyc2lvbnMiLCJ2ZXIxIiwib3BlcmF0b3IiLCJ2ZXIyIiwiaW5jbHVkZXMiLCJzdHJpbmdpZnkiLCJzZW12ZXJPcGVyYXRvciIsInNhdGlzZmllcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsMEJBQTBCLEdBQUcscUNBQW5DOzs7QUFFTyxTQUFTQyxVQUFULENBQXFCQyxHQUFyQixFQUEwQjtBQUMvQixTQUFPQyxnQkFBRUMsUUFBRixDQUFXRixHQUFYLEtBQW1CQSxHQUFHLEtBQUssRUFBbEM7QUFDRDs7QUFHRCxTQUFTRyxRQUFULENBQW1CSCxHQUFuQixFQUF3QjtBQUN0QixNQUFJSSxNQUFNLEdBQUcsS0FBYjs7QUFFQSxNQUFJSCxnQkFBRUksUUFBRixDQUFXTCxHQUFYLENBQUosRUFBcUI7QUFDbkJJLElBQUFBLE1BQU0sR0FBRyxDQUFDSCxnQkFBRUssS0FBRixDQUFRTixHQUFSLENBQVY7QUFDRCxHQUZELE1BRU87QUFDTEksSUFBQUEsTUFBTSxHQUFHLENBQUNILGdCQUFFTSxXQUFGLENBQWNQLEdBQWQsQ0FBRCxJQUF1QixDQUFDQyxnQkFBRU8sTUFBRixD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U0FBUCxDQUFpQmYsYUFBYSxDQUFDUyxJQUFELENBQTlCLEVBQXVDLEdBQUVLLGNBQWUsR0FBRWQsYUFBYSxDQUFDVyxJQUFELENBQU8sRUFBOUUsQ0FBZjs7QUFDQSxTQUFPRCxRQUFRLEtBQUssSUFBYixHQUFvQixDQUFDUCxNQUFyQixHQUE4QkEsTUFBckM7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgZnMgZnJvbSAnLi9mcyc7XG5pbXBvcnQgc2VtdmVyIGZyb20gJ3NlbXZlcic7XG5cbmNvbnN0IFczQ19XRUJfRUxFTUVOVF9JREVOVElGSUVSID0gJ2VsZW1lbnQtNjA2Ni0xMWU0LWE1MmUtNGY3MzU0NjZjZWNmJztcblxuZXhwb3J0IGZ1bmN0aW9uIGhhc0NvbnRlbnQgKHZhbCkge1xuICByZXR1cm4gXy5pc1N0cmluZyh2YWwpICYmIHZhbCAhPT0gJyc7XG59XG5cbi8vIHJldHVybiB0cnVlIGlmIHRoZSB0aGUgdmFsdWUgaXMgbm90IHVuZGVmaW5lZCwgbnVsbCwgb3IgTmFOLlxuZnVuY3Rpb24gaGFzVmFsdWUgKHZhbCkge1xuICBsZXQgaGFzVmFsID0gZmFsc2U7XG4gIC8vIGF2b2lkIGluY29ycmVjdGx5IGV2YWx1YXRpbmcgYDBgIGFzIGZhbHNlXG4gIGlmIChfLmlzTnVtYmVyKHZhbCkpIHtcbiAgICBoYXNWYWwgPSAhXy5pc05hTih2YWwpO1xuICB9IGVsc2Uge1xuICAgIGhhc1ZhbCA9ICFfLmlzVW5kZWZpbmVkKHZhbCkgJiYgIV8uaXNOdWxsKHZhbCk7XG4gIH1cblxuICByZXR1cm4gaGFzVmFsO1xufVxuXG4vLyBlc2NhcGUgc3BhY2VzIGluIHN0cmluZywgZm9yIGNvbW1hbmRsaW5lIGNhbGxzXG5mdW5jdGlvbiBlc2NhcGVTcGFjZSAoc3RyKSB7XG4gIHJldHVybiBzdHIuc3BsaXQoLyAvKS5qb2luKCdcXFxcICcpO1xufVxuXG5mdW5jdGlvbiBlc2NhcGVTcGVjaWFsQ2hhcnMgKHN0ciwgcXVvdGVFc2NhcGUpIHtcbiAgaWYgKHR5cGVvZiBzdHIgIT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHN0cjtcbiAgfVxuICBpZiAodHlwZW9mIHF1b3RlRXNjYXBlID09PSAndW5kZWZpbmVkJykge1xuICAgIHF1b3RlRXNjYXBlID0gZmFsc2U7XG4gIH1cbiAgc3RyID0gc3RyXG4gICAgLnJlcGxhY2UoL1tcXFxcXS9nLCAnXFxcXFxcXFwnKVxuICAgIC5yZXBsYWNlKC9bXFwvXS9nLCAnXFxcXC8nKSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVzZWxlc3MtZXNjYXBlXG4gICAgLnJlcGxhY2UoL1tcXGJdL2csICdcXFxcYicpXG4gICAgLnJlcGxhY2UoL1tcXGZdL2csICdcXFxcZicpXG4gICAgLnJlcGxhY2UoL1tcXG5dL2csICdcXFxcbicpXG4gICAgLnJlcGxhY2UoL1tcXHJdL2csICdcXFxccicpXG4gICAgLnJlcGxhY2UoL1tcXHRdL2csICdcXFxcdCcpXG4gICAgLnJlcGxhY2UoL1tcXFwiXS9nLCAnXFxcXFwiJykgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11c2VsZXNzLWVzY2FwZVxuICAgIC5yZXBsYWNlKC9cXFxcJy9nLCBcIlxcXFwnXCIpO1xuICBpZiAocXVvdGVFc2NhcGUpIHtcbiAgICBsZXQgcmUgPSBuZXcgUmVnRXhwKHF1b3RlRXNjYXBlLCAnZycpO1xuICAgIHN0ciA9IHN0ci5yZXBsYWNlKHJlLCBgXFxcXCR7cXVvdGVFc2NhcGV9YCk7XG4gIH1cbiAgcmV0dXJuIHN0cjtcbn1cblxuZnVuY3Rpb24gbG9jYWxJcCAoKSB7XG4gIGxldCBpcCA9IF8uY2hhaW4ob3MubmV0d29ya0ludGVyZmFjZXMoKSlcbiAgICAudmFsdWVzKClcbiAgICAuZmxhdHRlbigpXG4gICAgLmZpbHRlcihmdW5jdGlvbiAodmFsKSB7XG4gICAgICByZXR1cm4gKHZhbC5mYW1pbHkgPT09ICdJUHY0JyAmJiB2YWwuaW50ZXJuYWwgPT09IGZhbHNlKTtcbiAgICB9KVxuICAgIC5tYXAoJ2FkZHJlc3MnKVxuICAgIC5maXJzdCgpXG4gICAgLnZhbHVlKCk7XG4gIHJldHVybiBpcDtcbn1cblxuLypcbiAqIENyZWF0ZXMgYSBwcm9taXNlIHRoYXQgaXMgY2FuY2VsbGFibGUsIGFuZCB3aWxsIHRpbWVvdXRcbiAqIGFmdGVyIGBtc2AgZGVsYXlcbiAqL1xuZnVuY3Rpb24gY2FuY2VsbGFibGVEZWxheSAobXMpIHtcbiAgbGV0IHRpbWVyO1xuICBsZXQgcmVzb2x2ZTtcbiAgbGV0IHJlamVjdDtcblxuICBjb25zdCBkZWxheSA9IG5ldyBCLlByb21pc2UoKF9yZXNvbHZlLCBfcmVqZWN0KSA9PiB7XG4gICAgcmVzb2x2ZSA9IF9yZXNvbHZlO1xuICAgIHJlamVjdCA9IF9yZWplY3Q7XG4gICAgdGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIHJlc29sdmUoKTtcbiAgICB9LCBtcyk7XG4gIH0pO1xuXG4gIC8vIG92ZXJyaWRlIEJsdWViaXJkJ3MgYGNhbmNlbGAsIHdoaWNoIGRvZXMgbm90IHdvcmsgd2hlbiB1c2luZyBgYXdhaXRgIG9uXG4gIC8vIGEgcHJvbWlzZSwgc2luY2UgYHJlc29sdmVgL2ByZWplY3RgIGFyZSBuZXZlciBjYWxsZWRcbiAgZGVsYXkuY2FuY2VsID0gZnVuY3Rpb24gKCkge1xuICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgcmVqZWN0KG5ldyBCLkNhbmNlbGxhdGlvbkVycm9yKCkpO1xuICB9O1xuICByZXR1cm4gZGVsYXk7XG59XG5cbmZ1bmN0aW9uIG11bHRpUmVzb2x2ZSAocm9vdHMsIC4uLmFyZ3MpIHtcbiAgcmV0dXJuIHJvb3RzLm1hcCgocm9vdCkgPT4ge1xuICAgIHJldHVybiBwYXRoLnJlc29sdmUocm9vdCwgLi4uYXJncyk7XG4gIH0pO1xufVxuXG4vKlxuICogUGFyc2VzIGFuIG9iamVjdCBpZiBwb3NzaWJsZS4gT3RoZXJ3aXNlIHJldHVybnMgdGhlIG9iamVjdCB3aXRob3V0IHBhcnNpbmcuXG4gKi9cbmZ1bmN0aW9uIHNhZmVKc29uUGFyc2UgKG9iaikge1xuICB0cnkge1xuICAgIG9iaiA9IEpTT04ucGFyc2Uob2JqKTtcbiAgfSBjYXRjaCAoaWduKSB7XG4gICAgLy8gaWdub3JlOiB0aGlzIGlzIG5vdCBqc29uIHBhcnNhYmxlXG4gIH1cbiAgcmV0dXJuIG9iajtcbn1cblxuLypcbiAqIFJlbW92ZXMgdGhlIHdyYXBwZXIgZnJvbSBlbGVtZW50LCBpZiBpdCBleGlzdHMuXG4gKiAgIHsgRUxFTUVOVDogNCB9IGJlY29tZXMgNFxuICogICB7IGVsZW1lbnQtNjA2Ni0xMWU0LWE1MmUtNGY3MzU0NjZjZWNmOiA1IH0gYmVjb21lcyA1XG4gKi9cbmZ1bmN0aW9uIHVud3JhcEVsZW1lbnQgKGVsKSB7XG4gIGZvciAoY29uc3QgcHJvcE5hbWUgb2YgW1czQ19XRUJfRUxFTUVOVF9JREVOVElGSUVSLCAnRUxFTUVOVCddKSB7XG4gICAgaWYgKF8uaGFzKGVsLCBwcm9wTmFtZSkpIHtcbiAgICAgIHJldHVybiBlbFtwcm9wTmFtZV07XG4gICAgfVxuICB9XG4gIHJldHVybiBlbDtcbn1cblxuZnVuY3Rpb24gd3JhcEVsZW1lbnQgKGVsZW1lbnRJZCkge1xuICByZXR1cm4ge1xuICAgIEVMRU1FTlQ6IGVsZW1lbnRJZCxcbiAgICBbVzNDX1dFQl9FTEVNRU5UX0lERU5USUZJRVJdOiBlbGVtZW50SWQsXG4gIH07XG59XG5cbi8qXG4gKiBSZXR1cm5zIG9iamVjdCBjb25zaXN0aW5nIG9mIGFsbCBwcm9wZXJ0aWVzIGluIHRoZSBvcmlnaW5hbCBlbGVtZW50XG4gKiB3aGljaCB3ZXJlIHRydXRoeSBnaXZlbiB0aGUgcHJlZGljYXRlLlxuICogSWYgdGhlIHByZWRpY2F0ZSBpc1xuICogICAqIG1pc3NpbmcgLSBpdCB3aWxsIHJlbW92ZSBhbGwgcHJvcGVydGllcyB3aG9zZSB2YWx1ZXMgYXJlIGB1bmRlZmluZWRgXG4gKiAgICogYSBzY2FsYXIgLSBpdCB3aWxsIHRlc3QgYWxsIHByb3BlcnRpZXMnIHZhbHVlcyBhZ2FpbnN0IHRoYXQgdmFsdWVcbiAqICAgKiBhIGZ1bmN0aW9uIC0gaXQgd2lsbCBwYXNzIGVhY2ggdmFsdWUgYW5kIHRoZSBvcmlnaW5hbCBvYmplY3QgaW50byB0aGUgZnVuY3Rpb25cbiAqL1xuZnVuY3Rpb24gZmlsdGVyT2JqZWN0IChvYmosIHByZWRpY2F0ZSkge1xuICBsZXQgbmV3T2JqID0gXy5jbG9uZShvYmopO1xuICBpZiAoXy5pc1VuZGVmaW5lZChwcmVkaWNhdGUpKSB7XG4gICAgLy8gcmVtb3ZlIGFueSBlbGVtZW50IGZyb20gdGhlIG9iamVjdCB3aG9zZSB2YWx1ZSBpcyB1bmRlZmluZWRcbiAgICBwcmVkaWNhdGUgPSAodikgPT4gIV8uaXNVbmRlZmluZWQodik7XG4gIH0gZWxzZSBpZiAoIV8uaXNGdW5jdGlvbihwcmVkaWNhdGUpKSB7XG4gICAgLy8gbWFrZSBwcmVkaWNhdGUgaW50byBhIGZ1bmN0aW9uXG4gICAgY29uc3QgdmFsdWVQcmVkaWNhdGUgPSBwcmVkaWNhdGU7XG4gICAgcHJlZGljYXRlID0gKHYpID0+IHYgPT09IHZhbHVlUHJlZGljYXRlO1xuICB9XG4gIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG9iaikpIHtcbiAgICBpZiAoIXByZWRpY2F0ZShvYmpba2V5XSwgb2JqKSkge1xuICAgICAgZGVsZXRlIG5ld09ialtrZXldO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbmV3T2JqO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIG51bWJlciBvZiBieXRlcyB0byBhIHJlYWRhYmxlIHNpemUgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSB7bnVtYmVyfHN0cmluZ30gYnl0ZXMgLSBUaGUgYWN0dWFsIG51bWJlciBvZiBieXRlcy5cbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBhY3R1YWwgc3RyaW5nIHJlcHJlc2VudGF0aW9uLCBmb3IgZXhhbXBsZVxuICogICAgICAgICAgICAgICAgICAgJzEuMDAgS0InIGZvciAnMTAyNCBCJ1xuICogQHRocm93cyB7RXJyb3J9IElmIGJ5dGVzIGNvdW50IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBvclxuICogICAgICAgICAgICAgICAgIGlmIGl0IGlzIGxlc3MgdGhhbiB6ZXJvLlxuICovXG5mdW5jdGlvbiB0b1JlYWRhYmxlU2l6ZVN0cmluZyAoYnl0ZXMpIHtcbiAgY29uc3QgaW50Qnl0ZXMgPSBwYXJzZUludChieXRlcywgMTApO1xuICBpZiAoaXNOYU4oaW50Qnl0ZXMpIHx8IGludEJ5dGVzIDwgMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGNvbnZlcnQgJyR7Ynl0ZXN9JyB0byBhIHJlYWRhYmxlIHNpemUgZm9ybWF0YCk7XG4gIH1cbiAgaWYgKGludEJ5dGVzID49IDEwMjQgKiAxMDI0ICogMTAyNCkge1xuICAgIHJldHVybiBgJHtwYXJzZUZsb2F0KGludEJ5dGVzIC8gKDEwMjQgKiAxMDI0ICogMTAyNC4wKSkudG9GaXhlZCgyKX0gR0JgO1xuICB9IGVsc2UgaWYgKGludEJ5dGVzID49IDEwMjQgKiAxMDI0KSB7XG4gICAgcmV0dXJuIGAke3BhcnNlRmxvYXQoaW50Qnl0ZXMgLyAoMTAyNCAqIDEwMjQuMCkpLnRvRml4ZWQoMil9IE1CYDtcbiAgfSBlbHNlIGlmIChpbnRCeXRlcyA+PSAxMDI0KSB7XG4gICAgcmV0dXJuIGAke3BhcnNlRmxvYXQoaW50Qnl0ZXMgLyAxMDI0LjApLnRvRml4ZWQoMil9IEtCYDtcbiAgfVxuICByZXR1cm4gYCR7aW50Qnl0ZXN9IEJgO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBwYXRoIGlzIGEgc3VicGF0aCBvZiB0aGVcbiAqIHBhcnRpY3VsYXIgcm9vdCBmb2xkZXIuIEJvdGggcGF0aHMgY2FuIGluY2x1ZGUgLi4gYW5kIC4gc3BlY2lmaWVyc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBvcmlnaW5hbFBhdGggVGhlIGFic29sdXRlIGZpbGUvZm9sZGVyIHBhdGhcbiAqIEBwYXJhbSB7c3RyaW5nfSByb290IFRoZSBhYnNvbHV0ZSByb290IGZvbGRlciBwYXRoXG4gKiBAcGFyYW0gez9ib29sZWFufSBmb3JjZVBvc2l4IFNldCBpdCB0byB0cnVlIGlmIHBhdGhzIG11c3QgYmUgaW50ZXJwcmV0ZWQgaW4gUE9TSVggZm9ybWF0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB0aGUgZ2l2ZW4gb3JpZ2luYWwgcGF0aCBpcyB0aGUgc3VicGF0aCBvZiB0aGUgcm9vdCBmb2xkZXJcbiAqIEB0aHJvd3Mge0Vycm9yfSBpZiBhbnkgb2YgdGhlIGdpdmVuIHBhdGhzIGlzIG5vdCBhYnNvbHV0ZVxuICovXG5mdW5jdGlvbiBpc1N1YlBhdGggKG9yaWdpbmFsUGF0aCwgcm9vdCwgZm9yY2VQb3NpeCA9IG51bGwpIHtcbiAgY29uc3QgcGF0aE9iaiA9IGZvcmNlUG9zaXggPyBwYXRoLnBvc2l4IDogcGF0aDtcbiAgZm9yIChjb25zdCBwIG9mIFtvcmlnaW5hbFBhdGgsIHJvb3RdKSB7XG4gICAgaWYgKCFwYXRoT2JqLmlzQWJzb2x1dGUocCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJyR7cH0nIGlzIGV4cGVjdGVkIHRvIGJlIGFuIGFic29sdXRlIHBhdGhgKTtcbiAgICB9XG4gIH1cbiAgY29uc3Qgbm9ybWFsaXplZFJvb3QgPSBwYXRoT2JqLm5vcm1hbGl6ZShyb290KTtcbiAgY29uc3Qgbm9ybWFsaXplZFBhdGggPSBwYXRoT2JqLm5vcm1hbGl6ZShvcmlnaW5hbFBhdGgpO1xuICByZXR1cm4gbm9ybWFsaXplZFBhdGguc3RhcnRzV2l0aChub3JtYWxpemVkUm9vdCk7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIHBhdGhzIGFyZSBwb2ludGluZyB0byB0aGUgc2FtZSBmaWxlIHN5c3RlbVxuICogZGVzdGluYXRpb24uXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBhdGgxIC0gQWJzb2x1dGUgb3IgcmVsYXRpdmUgcGF0aCB0byBhIGZpbGUvZm9sZGVyXG4gKiBAcGFyYW0ge3N0cmluZ30gcGF0aDIgLSBBYnNvbHV0ZSBvciByZWxhdGl2ZSBwYXRoIHRvIGEgZmlsZS9mb2xkZXJcbiAqIEBwYXJhbSB7Li4uc3RyaW5nfSBwYXRoTiAtIFplcm8gb3IgbW9yZSBhYnNvbHV0ZSBvciByZWxhdGl2ZSBwYXRocyB0byBmaWxlcy9mb2xkZXJzXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiBhbGwgcGF0aHMgYXJlIHBvaW50aW5nIHRvIHRoZSBzYW1lIGZpbGUgc3lzdGVtIGl0ZW1cbiAqL1xuYXN5bmMgZnVuY3Rpb24gaXNTYW1lRGVzdGluYXRpb24gKHBhdGgxLCBwYXRoMiwgLi4ucGF0aE4pIHtcbiAgY29uc3QgYWxsUGF0aHMgPSBbcGF0aDEsIHBhdGgyLCAuLi5wYXRoTl07XG4gIGlmICghYXdhaXQgQi5yZWR1Y2UoYWxsUGF0aHMsIGFzeW5jIChhLCBiKSA9PiBhICYmIGF3YWl0IGZzLmV4aXN0cyhiKSwgdHJ1ZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBhcmVBbGxJdGVtc0VxdWFsID0gKGFycikgPT4gISFhcnIucmVkdWNlKChhLCBiKSA9PiBhID09PSBiID8gYSA6IE5hTik7XG4gIGlmIChhcmVBbGxJdGVtc0VxdWFsKGFsbFBhdGhzKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIHJldHVybiBhcmVBbGxJdGVtc0VxdWFsKGF3YWl0IEIubWFwKGFsbFBhdGhzLCBhc3luYyAoeCkgPT4gKGF3YWl0IGZzLnN0YXQoeCkpLmlubykpO1xufVxuXG4vKipcbiAqIENvZXJjZXMgdGhlIGdpdmVuIG51bWJlci9zdHJpbmcgdG8gYSB2YWxpZCB2ZXJzaW9uIHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfG51bWJlcn0gdmVyIC0gVmVyc2lvbiBzdHJpbmcgdG8gY29lcmNlXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHN0cmljdCBbdHJ1ZV0gLSBJZiB0cnVlIHRoZW4gYW4gZXhjZXB0aW9uIHdpbGwgYmUgdGhyb3duXG4gKiBpZiBgdmVyYCBjYW5ub3QgYmUgY29lcmNlZFxuICogQHJldHVybnMge3N0cmluZ30gQ29lcmNlZCB2ZXJzaW9uIG51bWJlciBvciBudWxsIGlmIHRoZSBzdHJpbmcgY2Fubm90IGJlXG4gKiBjb2VyY2VkIGFuZCBzdHJpY3QgbW9kZSBpcyBkaXNhYmxlZFxuICogQHRocm93cyB7RXJyb3J9IGlmIHN0cmljdCBtb2RlIGlzIGVuYWJsZWQgYW5kIGB2ZXJgIGNhbm5vdCBiZSBjb2VyY2VkXG4gKi9cbmZ1bmN0aW9uIGNvZXJjZVZlcnNpb24gKHZlciwgc3RyaWN0ID0gdHJ1ZSkge1xuICBjb25zdCByZXN1bHQgPSBzZW12ZXIudmFsaWQoc2VtdmVyLmNvZXJjZShgJHt2ZXJ9YCkpO1xuICBpZiAoc3RyaWN0ICYmICFyZXN1bHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCcke3Zlcn0nIGNhbm5vdCBiZSBjb2VyY2VkIHRvIGEgdmFsaWQgdmVyc2lvbiBudW1iZXJgKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5jb25zdCBTVVBQT1JURURfT1BFUkFUT1JTID0gWyc9PScsICchPScsICc+JywgJzwnLCAnPj0nLCAnPD0nLCAnPSddO1xuXG4vKipcbiAqIENvbXBhcmVzIHR3byB2ZXJzaW9uIHN0cmluZ3NcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IHZlcjEgLSBUaGUgZmlyc3QgdmVyc2lvbiBudW1iZXIgdG8gY29tcGFyZS4gU2hvdWxkIGJlIGEgdmFsaWRcbiAqIHZlcnNpb24gbnVtYmVyIHN1cHBvcnRlZCBieSBzZW12ZXIgcGFyc2VyLlxuICogQHBhcmFtIHtzdHJpbmd8bnVtYmVyfSB2ZXIyIC0gVGhlIHNlY29uZCB2ZXJzaW9uIG51bWJlciB0byBjb21wYXJlLiBTaG91bGQgYmUgYSB2YWxpZFxuICogdmVyc2lvbiBudW1iZXIgc3VwcG9ydGVkIGJ5IHNlbXZlciBwYXJzZXIuXG4gKiBAcGFyYW0ge3N0cmluZ30gb3BlcmF0b3IgLSBPbmUgb2Ygc3VwcG9ydGVkIHZlcnNpb24gbnVtYmVyIG9wZXJhdG9yczpcbiAqID09LCAhPSwgPiwgPCwgPD0sID49LCA9XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBvciBmYWxzZSBkZXBlbmRpbmcgb24gdGhlIGFjdHVhbCBjb21wYXJpc29uIHJlc3VsdFxuICogQHRocm93cyB7RXJyb3J9IGlmIGFuIHVuc3VwcG9ydGVkIG9wZXJhdG9yIGlzIHN1cHBsaWVkIG9yIGFueSBvZiB0aGUgc3VwcGxpZWRcbiAqIHZlcnNpb24gc3RyaW5ncyBjYW5ub3QgYmUgY29lcmNlZFxuICovXG5mdW5jdGlvbiBjb21wYXJlVmVyc2lvbnMgKHZlcjEsIG9wZXJhdG9yLCB2ZXIyKSB7XG4gIGlmICghU1VQUE9SVEVEX09QRVJBVE9SUy5pbmNsdWRlcyhvcGVyYXRvcikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSAnJHtvcGVyYXRvcn0nIGNvbXBhcmlzb24gb3BlcmF0b3IgaXMgbm90IHN1cHBvcnRlZC4gYCArXG4gICAgICBgT25seSAnJHtKU09OLnN0cmluZ2lmeShTVVBQT1JURURfT1BFUkFUT1JTKX0nIG9wZXJhdG9ycyBhcmUgc3VwcG9ydGVkYCk7XG4gIH1cblxuICBjb25zdCBzZW12ZXJPcGVyYXRvciA9IFsnPT0nLCAnIT0nXS5pbmNsdWRlcyhvcGVyYXRvcikgPyAnPScgOiBvcGVyYXRvcjtcbiAgY29uc3QgcmVzdWx0ID0gc2VtdmVyLnNhdGlzZmllcyhjb2VyY2VWZXJzaW9uKHZlcjEpLCBgJHtzZW12ZXJPcGVyYXRvcn0ke2NvZXJjZVZlcnNpb24odmVyMil9YCk7XG4gIHJldHVybiBvcGVyYXRvciA9PT0gJyE9JyA/ICFyZXN1bHQgOiByZXN1bHQ7XG59XG5cbmV4cG9ydCB7XG4gIGhhc1ZhbHVlLCBlc2NhcGVTcGFjZSwgZXNjYXBlU3BlY2lhbENoYXJzLCBsb2NhbElwLCBjYW5jZWxsYWJsZURlbGF5LFxuICBtdWx0aVJlc29sdmUsIHNhZmVKc29uUGFyc2UsIHdyYXBFbGVtZW50LCB1bndyYXBFbGVtZW50LCBmaWx0ZXJPYmplY3QsXG4gIHRvUmVhZGFibGVTaXplU3RyaW5nLCBpc1N1YlBhdGgsIFczQ19XRUJfRUxFTUVOVF9JREVOVElGSUVSLFxuICBpc1NhbWVEZXN0aW5hdGlvbiwgY29tcGFyZVZlcnNpb25zLCBjb2VyY2VWZXJzaW9uLFxufTtcbiJdLCJmaWxlIjoibGliL3V0aWwuanMiLCJzb3VyY2VSb290IjoiLi4vLi4ifQ==
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi91dGlsLmpzIl0sIm5hbWVzIjpbIlczQ19XRUJfRUxFTUVOVF9JREVOVElGSUVSIiwiaGFzQ29udGVudCIsInZhbCIsIl8iLCJpc1N0cmluZyIsImhhc1ZhbHVlIiwiaGFzVmFsIiwiaXNOdW1iZXIiLCJpc05hTiIsImlzVW5kZWZpbmVkIiwiaXNOdWxsIiwiZXNjYXBlU3BhY2UiLCJzdHIiLCJzcGxpdCIsImpvaW4iLCJlc2NhcGVTcGVjaWFsQ2hhcnMiLCJxdW90ZUVzY2FwZSIsInJlcGxhY2UiLCJyZSIsIlJlZ0V4cCIsImxvY2FsSXAiLCJpcCIsImNoYWluIiwib3MiLCJuZXR3b3JrSW50ZXJmYWNlcyIsInZhbHVlcyIsImZsYXR0ZW4iLCJmaWx0ZXIiLCJmYW1pbHkiLCJpbnRlcm5hbCIsIm1hcCIsImZpcnN0IiwidmFsdWUiLCJjYW5jZWxsYWJsZURlbGF5IiwibXMiLCJ0aW1lciIsInJlc29sdmUiLCJyZWplY3QiLCJkZWxheSIsIkIiLCJQcm9taXNlIiwiX3Jlc29sdmUiLCJfcmVqZWN0Iiwic2V0VGltZW91dCIsImNhbmNlbCIsImNsZWFyVGltZW91dCIsIkNhbmNlbGxhdGlvbkVycm9yIiwibXVsdGlSZXNvbHZlIiwicm9vdHMiLCJhcmdzIiwicm9vdCIsInBhdGgiLCJzYWZlSnNvblBhcnNlIiwib2JqIiwiSlNPTiIsInBhcnNlIiwiaWduIiwidW53cmFwRWxlbWVudCIsImVsIiwicHJvcE5hbWUiLCJoYXMiLCJ3cmFwRWxlbWVudCIsImVsZW1lbnRJZCIsIkVMRU1FTlQiLCJmaWx0ZXJPYmplY3QiLCJwcmVkaWNhdGUiLCJuZXdPYmoiLCJjbG9uZSIsInYiLCJpc0Z1bmN0aW9uIiwidmFsdWVQcmVkaWNhdGUiLCJrZXkiLCJPYmplY3QiLCJrZXlzIiwidG9SZWFkYWJsZVNpemVTdHJpbmciLCJieXRlcyIsImludEJ5dGVzIiwicGFyc2VJbnQiLCJFcnJvciIsInBhcnNlRmxvYXQiLCJ0b0ZpeGVkIiwiaXNTdWJQYXRoIiwib3JpZ2luYWxQYXRoIiwiZm9yY2VQb3NpeCIsInBhdGhPYmoiLCJwb3NpeCIsInAiLCJpc0Fic29sdXRlIiwibm9ybWFsaXplZFJvb3QiLCJub3JtYWxpemUiLCJub3JtYWxpemVkUGF0aCIsInN0YXJ0c1dpdGgiLCJpc1NhbWVEZXN0aW5hdGlvbiIsInBhdGgxIiwicGF0aDIiLCJwYXRoTiIsImFsbFBhdGhzIiwicmVkdWNlIiwiYSIsImIiLCJmcyIsImV4aXN0cyIsImFyZUFsbEl0ZW1zRXF1YWwiLCJhcnIiLCJOYU4iLCJ4Iiwic3RhdCIsImlubyIsImNvZXJjZVZlcnNpb24iLCJ2ZXIiLCJzdHJpY3QiLCJyZXN1bHQiLCJzZW12ZXIiLCJ2YWxpZCIsImNvZXJjZSIsIlNVUFBPUlRFRF9PUEVSQVRPUlMiLCJjb21wYXJlVmVyc2lvbnMiLCJ2ZXIxIiwib3BlcmF0b3IiLCJ2ZXIyIiwiaW5jbHVkZXMiLCJzdHJpbmdpZnkiLCJzZW12ZXJPcGVyYXRvciIsInNhdGlzZmllcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsMEJBQTBCLEdBQUcscUNBQW5DOzs7QUFFTyxTQUFTQyxVQUFULENBQXFCQyxHQUFyQixFQUEwQjtBQUMvQixTQUFPQyxnQkFBRUMsUUFBRixDQUFXRixHQUFYLEtBQW1CQSxHQUFHLEtBQUssRUFBbEM7QUFDRDs7QUFHRCxTQUFTRyxRQUFULENBQW1CSCxHQUFuQixFQUF3QjtBQUN0QixNQUFJSSxNQUFNLEdBQUcsS0FBYjs7QUFFQSxNQUFJSCxnQkFBRUksUUFBRixDQUFXTCxHQUFYLENBQUosRUFBcUI7QUFDbkJJLElBQUFBLE1BQU0sR0FBRyxDQUFDSCxnQkFBRUssS0FBRixDQUFRTixHQUFSLENBQVY7QUFDRCxHQUZELE1BRU87QUFDTEksSUFBQUEsTUFBTSxHQUFHLENBQUNILGdCQUFFTSxXQUFGLENBQWNQLEdBQWQsQ0FBRCxJQUF1QixDQUFDQyxnQkFBRU8sTUFBRixD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QUFhLENBQUNTLElBQUQsQ0FBOUIsRUFBdUMsR0FBRUssY0FBZSxHQUFFZCxhQUFhLENBQUNXLElBQUQsQ0FBTyxFQUE5RSxDQUFmOztBQUNBLFNBQU9ELFFBQVEsS0FBSyxJQUFiLEdBQW9CLENBQUNQLE1BQXJCLEdBQThCQSxNQUFyQztBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBvcyBmcm9tICdvcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBmcyBmcm9tICcuL2ZzJztcbmltcG9ydCBzZW12ZXIgZnJvbSAnc2VtdmVyJztcblxuY29uc3QgVzNDX1dFQl9FTEVNRU5UX0lERU5USUZJRVIgPSAnZWxlbWVudC02MDY2LTExZTQtYTUyZS00ZjczNTQ2NmNlY2YnO1xuXG5leHBvcnQgZnVuY3Rpb24gaGFzQ29udGVudCAodmFsKSB7XG4gIHJldHVybiBfLmlzU3RyaW5nKHZhbCkgJiYgdmFsICE9PSAnJztcbn1cblxuLy8gcmV0dXJuIHRydWUgaWYgdGhlIHRoZSB2YWx1ZSBpcyBub3QgdW5kZWZpbmVkLCBudWxsLCBvciBOYU4uXG5mdW5jdGlvbiBoYXNWYWx1ZSAodmFsKSB7XG4gIGxldCBoYXNWYWwgPSBmYWxzZTtcbiAgLy8gYXZvaWQgaW5jb3JyZWN0bHkgZXZhbHVhdGluZyBgMGAgYXMgZmFsc2VcbiAgaWYgKF8uaXNOdW1iZXIodmFsKSkge1xuICAgIGhhc1ZhbCA9ICFfLmlzTmFOKHZhbCk7XG4gIH0gZWxzZSB7XG4gICAgaGFzVmFsID0gIV8uaXNVbmRlZmluZWQodmFsKSAmJiAhXy5pc051bGwodmFsKTtcbiAgfVxuXG4gIHJldHVybiBoYXNWYWw7XG59XG5cbi8vIGVzY2FwZSBzcGFjZXMgaW4gc3RyaW5nLCBmb3IgY29tbWFuZGxpbmUgY2FsbHNcbmZ1bmN0aW9uIGVzY2FwZVNwYWNlIChzdHIpIHtcbiAgcmV0dXJuIHN0ci5zcGxpdCgvIC8pLmpvaW4oJ1xcXFwgJyk7XG59XG5cbmZ1bmN0aW9uIGVzY2FwZVNwZWNpYWxDaGFycyAoc3RyLCBxdW90ZUVzY2FwZSkge1xuICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gc3RyO1xuICB9XG4gIGlmICh0eXBlb2YgcXVvdGVFc2NhcGUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcXVvdGVFc2NhcGUgPSBmYWxzZTtcbiAgfVxuICBzdHIgPSBzdHJcbiAgICAucmVwbGFjZSgvW1xcXFxdL2csICdcXFxcXFxcXCcpXG4gICAgLnJlcGxhY2UoL1tcXC9dL2csICdcXFxcLycpIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdXNlbGVzcy1lc2NhcGVcbiAgICAucmVwbGFjZSgvW1xcYl0vZywgJ1xcXFxiJylcbiAgICAucmVwbGFjZSgvW1xcZl0vZywgJ1xcXFxmJylcbiAgICAucmVwbGFjZSgvW1xcbl0vZywgJ1xcXFxuJylcbiAgICAucmVwbGFjZSgvW1xccl0vZywgJ1xcXFxyJylcbiAgICAucmVwbGFjZSgvW1xcdF0vZywgJ1xcXFx0JylcbiAgICAucmVwbGFjZSgvW1xcXCJdL2csICdcXFxcXCInKSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVzZWxlc3MtZXNjYXBlXG4gICAgLnJlcGxhY2UoL1xcXFwnL2csIFwiXFxcXCdcIik7XG4gIGlmIChxdW90ZUVzY2FwZSkge1xuICAgIGxldCByZSA9IG5ldyBSZWdFeHAocXVvdGVFc2NhcGUsICdnJyk7XG4gICAgc3RyID0gc3RyLnJlcGxhY2UocmUsIGBcXFxcJHtxdW90ZUVzY2FwZX1gKTtcbiAgfVxuICByZXR1cm4gc3RyO1xufVxuXG5mdW5jdGlvbiBsb2NhbElwICgpIHtcbiAgbGV0IGlwID0gXy5jaGFpbihvcy5uZXR3b3JrSW50ZXJmYWNlcygpKVxuICAgIC52YWx1ZXMoKVxuICAgIC5mbGF0dGVuKClcbiAgICAuZmlsdGVyKGZ1bmN0aW9uICh2YWwpIHtcbiAgICAgIHJldHVybiAodmFsLmZhbWlseSA9PT0gJ0lQdjQnICYmIHZhbC5pbnRlcm5hbCA9PT0gZmFsc2UpO1xuICAgIH0pXG4gICAgLm1hcCgnYWRkcmVzcycpXG4gICAgLmZpcnN0KClcbiAgICAudmFsdWUoKTtcbiAgcmV0dXJuIGlwO1xufVxuXG4vKlxuICogQ3JlYXRlcyBhIHByb21pc2UgdGhhdCBpcyBjYW5jZWxsYWJsZSwgYW5kIHdpbGwgdGltZW91dFxuICogYWZ0ZXIgYG1zYCBkZWxheVxuICovXG5mdW5jdGlvbiBjYW5jZWxsYWJsZURlbGF5IChtcykge1xuICBsZXQgdGltZXI7XG4gIGxldCByZXNvbHZlO1xuICBsZXQgcmVqZWN0O1xuXG4gIGNvbnN0IGRlbGF5ID0gbmV3IEIuUHJvbWlzZSgoX3Jlc29sdmUsIF9yZWplY3QpID0+IHtcbiAgICByZXNvbHZlID0gX3Jlc29sdmU7XG4gICAgcmVqZWN0ID0gX3JlamVjdDtcbiAgICB0aW1lciA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgcmVzb2x2ZSgpO1xuICAgIH0sIG1zKTtcbiAgfSk7XG5cbiAgLy8gb3ZlcnJpZGUgQmx1ZWJpcmQncyBgY2FuY2VsYCwgd2hpY2ggZG9lcyBub3Qgd29yayB3aGVuIHVzaW5nIGBhd2FpdGAgb25cbiAgLy8gYSBwcm9taXNlLCBzaW5jZSBgcmVzb2x2ZWAvYHJlamVjdGAgYXJlIG5ldmVyIGNhbGxlZFxuICBkZWxheS5jYW5jZWwgPSBmdW5jdGlvbiAoKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgICByZWplY3QobmV3IEIuQ2FuY2VsbGF0aW9uRXJyb3IoKSk7XG4gIH07XG4gIHJldHVybiBkZWxheTtcbn1cblxuZnVuY3Rpb24gbXVsdGlSZXNvbHZlIChyb290cywgLi4uYXJncykge1xuICByZXR1cm4gcm9vdHMubWFwKChyb290KSA9PiB7XG4gICAgcmV0dXJuIHBhdGgucmVzb2x2ZShyb290LCAuLi5hcmdzKTtcbiAgfSk7XG59XG5cbi8qXG4gKiBQYXJzZXMgYW4gb2JqZWN0IGlmIHBvc3NpYmxlLiBPdGhlcndpc2UgcmV0dXJucyB0aGUgb2JqZWN0IHdpdGhvdXQgcGFyc2luZy5cbiAqL1xuZnVuY3Rpb24gc2FmZUpzb25QYXJzZSAob2JqKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2Uob2JqKTtcbiAgfSBjYXRjaCAoaWduKSB7XG4gICAgLy8gaWdub3JlOiB0aGlzIGlzIG5vdCBqc29uIHBhcnNhYmxlXG4gICAgcmV0dXJuIG9iajtcbiAgfVxufVxuXG4vKlxuICogUmVtb3ZlcyB0aGUgd3JhcHBlciBmcm9tIGVsZW1lbnQsIGlmIGl0IGV4aXN0cy5cbiAqICAgeyBFTEVNRU5UOiA0IH0gYmVjb21lcyA0XG4gKiAgIHsgZWxlbWVudC02MDY2LTExZTQtYTUyZS00ZjczNTQ2NmNlY2Y6IDUgfSBiZWNvbWVzIDVcbiAqL1xuZnVuY3Rpb24gdW53cmFwRWxlbWVudCAoZWwpIHtcbiAgZm9yIChjb25zdCBwcm9wTmFtZSBvZiBbVzNDX1dFQl9FTEVNRU5UX0lERU5USUZJRVIsICdFTEVNRU5UJ10pIHtcbiAgICBpZiAoXy5oYXMoZWwsIHByb3BOYW1lKSkge1xuICAgICAgcmV0dXJuIGVsW3Byb3BOYW1lXTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGVsO1xufVxuXG5mdW5jdGlvbiB3cmFwRWxlbWVudCAoZWxlbWVudElkKSB7XG4gIHJldHVybiB7XG4gICAgRUxFTUVOVDogZWxlbWVudElkLFxuICAgIFtXM0NfV0VCX0VMRU1FTlRfSURFTlRJRklFUl06IGVsZW1lbnRJZCxcbiAgfTtcbn1cblxuLypcbiAqIFJldHVybnMgb2JqZWN0IGNvbnNpc3Rpbmcgb2YgYWxsIHByb3BlcnRpZXMgaW4gdGhlIG9yaWdpbmFsIGVsZW1lbnRcbiAqIHdoaWNoIHdlcmUgdHJ1dGh5IGdpdmVuIHRoZSBwcmVkaWNhdGUuXG4gKiBJZiB0aGUgcHJlZGljYXRlIGlzXG4gKiAgICogbWlzc2luZyAtIGl0IHdpbGwgcmVtb3ZlIGFsbCBwcm9wZXJ0aWVzIHdob3NlIHZhbHVlcyBhcmUgYHVuZGVmaW5lZGBcbiAqICAgKiBhIHNjYWxhciAtIGl0IHdpbGwgdGVzdCBhbGwgcHJvcGVydGllcycgdmFsdWVzIGFnYWluc3QgdGhhdCB2YWx1ZVxuICogICAqIGEgZnVuY3Rpb24gLSBpdCB3aWxsIHBhc3MgZWFjaCB2YWx1ZSBhbmQgdGhlIG9yaWdpbmFsIG9iamVjdCBpbnRvIHRoZSBmdW5jdGlvblxuICovXG5mdW5jdGlvbiBmaWx0ZXJPYmplY3QgKG9iaiwgcHJlZGljYXRlKSB7XG4gIGxldCBuZXdPYmogPSBfLmNsb25lKG9iaik7XG4gIGlmIChfLmlzVW5kZWZpbmVkKHByZWRpY2F0ZSkpIHtcbiAgICAvLyByZW1vdmUgYW55IGVsZW1lbnQgZnJvbSB0aGUgb2JqZWN0IHdob3NlIHZhbHVlIGlzIHVuZGVmaW5lZFxuICAgIHByZWRpY2F0ZSA9ICh2KSA9PiAhXy5pc1VuZGVmaW5lZCh2KTtcbiAgfSBlbHNlIGlmICghXy5pc0Z1bmN0aW9uKHByZWRpY2F0ZSkpIHtcbiAgICAvLyBtYWtlIHByZWRpY2F0ZSBpbnRvIGEgZnVuY3Rpb25cbiAgICBjb25zdCB2YWx1ZVByZWRpY2F0ZSA9IHByZWRpY2F0ZTtcbiAgICBwcmVkaWNhdGUgPSAodikgPT4gdiA9PT0gdmFsdWVQcmVkaWNhdGU7XG4gIH1cbiAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMob2JqKSkge1xuICAgIGlmICghcHJlZGljYXRlKG9ialtrZXldLCBvYmopKSB7XG4gICAgICBkZWxldGUgbmV3T2JqW2tleV07XG4gICAgfVxuICB9XG4gIHJldHVybiBuZXdPYmo7XG59XG5cbi8qKlxuICogQ29udmVydHMgbnVtYmVyIG9mIGJ5dGVzIHRvIGEgcmVhZGFibGUgc2l6ZSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHtudW1iZXJ8c3RyaW5nfSBieXRlcyAtIFRoZSBhY3R1YWwgbnVtYmVyIG9mIGJ5dGVzLlxuICogQHJldHVybnMge3N0cmluZ30gVGhlIGFjdHVhbCBzdHJpbmcgcmVwcmVzZW50YXRpb24sIGZvciBleGFtcGxlXG4gKiAgICAgICAgICAgICAgICAgICAnMS4wMCBLQicgZm9yICcxMDI0IEInXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgYnl0ZXMgY291bnQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyIG9yXG4gKiAgICAgICAgICAgICAgICAgaWYgaXQgaXMgbGVzcyB0aGFuIHplcm8uXG4gKi9cbmZ1bmN0aW9uIHRvUmVhZGFibGVTaXplU3RyaW5nIChieXRlcykge1xuICBjb25zdCBpbnRCeXRlcyA9IHBhcnNlSW50KGJ5dGVzLCAxMCk7XG4gIGlmIChpc05hTihpbnRCeXRlcykgfHwgaW50Qnl0ZXMgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgY29udmVydCAnJHtieXRlc30nIHRvIGEgcmVhZGFibGUgc2l6ZSBmb3JtYXRgKTtcbiAgfVxuICBpZiAoaW50Qnl0ZXMgPj0gMTAyNCAqIDEwMjQgKiAxMDI0KSB7XG4gICAgcmV0dXJuIGAke3BhcnNlRmxvYXQoaW50Qnl0ZXMgLyAoMTAyNCAqIDEwMjQgKiAxMDI0LjApKS50b0ZpeGVkKDIpfSBHQmA7XG4gIH0gZWxzZSBpZiAoaW50Qnl0ZXMgPj0gMTAyNCAqIDEwMjQpIHtcbiAgICByZXR1cm4gYCR7cGFyc2VGbG9hdChpbnRCeXRlcyAvICgxMDI0ICogMTAyNC4wKSkudG9GaXhlZCgyKX0gTUJgO1xuICB9IGVsc2UgaWYgKGludEJ5dGVzID49IDEwMjQpIHtcbiAgICByZXR1cm4gYCR7cGFyc2VGbG9hdChpbnRCeXRlcyAvIDEwMjQuMCkudG9GaXhlZCgyKX0gS0JgO1xuICB9XG4gIHJldHVybiBgJHtpbnRCeXRlc30gQmA7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIHBhdGggaXMgYSBzdWJwYXRoIG9mIHRoZVxuICogcGFydGljdWxhciByb290IGZvbGRlci4gQm90aCBwYXRocyBjYW4gaW5jbHVkZSAuLiBhbmQgLiBzcGVjaWZpZXJzXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IG9yaWdpbmFsUGF0aCBUaGUgYWJzb2x1dGUgZmlsZS9mb2xkZXIgcGF0aFxuICogQHBhcmFtIHtzdHJpbmd9IHJvb3QgVGhlIGFic29sdXRlIHJvb3QgZm9sZGVyIHBhdGhcbiAqIEBwYXJhbSB7P2Jvb2xlYW59IGZvcmNlUG9zaXggU2V0IGl0IHRvIHRydWUgaWYgcGF0aHMgbXVzdCBiZSBpbnRlcnByZXRlZCBpbiBQT1NJWCBmb3JtYXRcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIHRoZSBnaXZlbiBvcmlnaW5hbCBwYXRoIGlzIHRoZSBzdWJwYXRoIG9mIHRoZSByb290IGZvbGRlclxuICogQHRocm93cyB7RXJyb3J9IGlmIGFueSBvZiB0aGUgZ2l2ZW4gcGF0aHMgaXMgbm90IGFic29sdXRlXG4gKi9cbmZ1bmN0aW9uIGlzU3ViUGF0aCAob3JpZ2luYWxQYXRoLCByb290LCBmb3JjZVBvc2l4ID0gbnVsbCkge1xuICBjb25zdCBwYXRoT2JqID0gZm9yY2VQb3NpeCA/IHBhdGgucG9zaXggOiBwYXRoO1xuICBmb3IgKGNvbnN0IHAgb2YgW29yaWdpbmFsUGF0aCwgcm9vdF0pIHtcbiAgICBpZiAoIXBhdGhPYmouaXNBYnNvbHV0ZShwKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAnJHtwfScgaXMgZXhwZWN0ZWQgdG8gYmUgYW4gYWJzb2x1dGUgcGF0aGApO1xuICAgIH1cbiAgfVxuICBjb25zdCBub3JtYWxpemVkUm9vdCA9IHBhdGhPYmoubm9ybWFsaXplKHJvb3QpO1xuICBjb25zdCBub3JtYWxpemVkUGF0aCA9IHBhdGhPYmoubm9ybWFsaXplKG9yaWdpbmFsUGF0aCk7XG4gIHJldHVybiBub3JtYWxpemVkUGF0aC5zdGFydHNXaXRoKG5vcm1hbGl6ZWRSb290KTtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gcGF0aHMgYXJlIHBvaW50aW5nIHRvIHRoZSBzYW1lIGZpbGUgc3lzdGVtXG4gKiBkZXN0aW5hdGlvbi5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcGF0aDEgLSBBYnNvbHV0ZSBvciByZWxhdGl2ZSBwYXRoIHRvIGEgZmlsZS9mb2xkZXJcbiAqIEBwYXJhbSB7c3RyaW5nfSBwYXRoMiAtIEFic29sdXRlIG9yIHJlbGF0aXZlIHBhdGggdG8gYSBmaWxlL2ZvbGRlclxuICogQHBhcmFtIHsuLi5zdHJpbmd9IHBhdGhOIC0gWmVybyBvciBtb3JlIGFic29sdXRlIG9yIHJlbGF0aXZlIHBhdGhzIHRvIGZpbGVzL2ZvbGRlcnNcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIGFsbCBwYXRocyBhcmUgcG9pbnRpbmcgdG8gdGhlIHNhbWUgZmlsZSBzeXN0ZW0gaXRlbVxuICovXG5hc3luYyBmdW5jdGlvbiBpc1NhbWVEZXN0aW5hdGlvbiAocGF0aDEsIHBhdGgyLCAuLi5wYXRoTikge1xuICBjb25zdCBhbGxQYXRocyA9IFtwYXRoMSwgcGF0aDIsIC4uLnBhdGhOXTtcbiAgaWYgKCFhd2FpdCBCLnJlZHVjZShhbGxQYXRocywgYXN5bmMgKGEsIGIpID0+IGEgJiYgYXdhaXQgZnMuZXhpc3RzKGIpLCB0cnVlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGFyZUFsbEl0ZW1zRXF1YWwgPSAoYXJyKSA9PiAhIWFyci5yZWR1Y2UoKGEsIGIpID0+IGEgPT09IGIgPyBhIDogTmFOKTtcbiAgaWYgKGFyZUFsbEl0ZW1zRXF1YWwoYWxsUGF0aHMpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgcmV0dXJuIGFyZUFsbEl0ZW1zRXF1YWwoYXdhaXQgQi5tYXAoYWxsUGF0aHMsIGFzeW5jICh4KSA9PiAoYXdhaXQgZnMuc3RhdCh4KSkuaW5vKSk7XG59XG5cbi8qKlxuICogQ29lcmNlcyB0aGUgZ2l2ZW4gbnVtYmVyL3N0cmluZyB0byBhIHZhbGlkIHZlcnNpb24gc3RyaW5nXG4gKlxuICogQHBhcmFtIHtzdHJpbmd8bnVtYmVyfSB2ZXIgLSBWZXJzaW9uIHN0cmluZyB0byBjb2VyY2VcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gc3RyaWN0IFt0cnVlXSAtIElmIHRydWUgdGhlbiBhbiBleGNlcHRpb24gd2lsbCBiZSB0aHJvd25cbiAqIGlmIGB2ZXJgIGNhbm5vdCBiZSBjb2VyY2VkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBDb2VyY2VkIHZlcnNpb24gbnVtYmVyIG9yIG51bGwgaWYgdGhlIHN0cmluZyBjYW5ub3QgYmVcbiAqIGNvZXJjZWQgYW5kIHN0cmljdCBtb2RlIGlzIGRpc2FibGVkXG4gKiBAdGhyb3dzIHtFcnJvcn0gaWYgc3RyaWN0IG1vZGUgaXMgZW5hYmxlZCBhbmQgYHZlcmAgY2Fubm90IGJlIGNvZXJjZWRcbiAqL1xuZnVuY3Rpb24gY29lcmNlVmVyc2lvbiAodmVyLCBzdHJpY3QgPSB0cnVlKSB7XG4gIGNvbnN0IHJlc3VsdCA9IHNlbXZlci52YWxpZChzZW12ZXIuY29lcmNlKGAke3Zlcn1gKSk7XG4gIGlmIChzdHJpY3QgJiYgIXJlc3VsdCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJyR7dmVyfScgY2Fubm90IGJlIGNvZXJjZWQgdG8gYSB2YWxpZCB2ZXJzaW9uIG51bWJlcmApO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmNvbnN0IFNVUFBPUlRFRF9PUEVSQVRPUlMgPSBbJz09JywgJyE9JywgJz4nLCAnPCcsICc+PScsICc8PScsICc9J107XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIHZlcnNpb24gc3RyaW5nc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfG51bWJlcn0gdmVyMSAtIFRoZSBmaXJzdCB2ZXJzaW9uIG51bWJlciB0byBjb21wYXJlLiBTaG91bGQgYmUgYSB2YWxpZFxuICogdmVyc2lvbiBudW1iZXIgc3VwcG9ydGVkIGJ5IHNlbXZlciBwYXJzZXIuXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IHZlcjIgLSBUaGUgc2Vjb25kIHZlcnNpb24gbnVtYmVyIHRvIGNvbXBhcmUuIFNob3VsZCBiZSBhIHZhbGlkXG4gKiB2ZXJzaW9uIG51bWJlciBzdXBwb3J0ZWQgYnkgc2VtdmVyIHBhcnNlci5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcGVyYXRvciAtIE9uZSBvZiBzdXBwb3J0ZWQgdmVyc2lvbiBudW1iZXIgb3BlcmF0b3JzOlxuICogPT0sICE9LCA+LCA8LCA8PSwgPj0sID1cbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIG9yIGZhbHNlIGRlcGVuZGluZyBvbiB0aGUgYWN0dWFsIGNvbXBhcmlzb24gcmVzdWx0XG4gKiBAdGhyb3dzIHtFcnJvcn0gaWYgYW4gdW5zdXBwb3J0ZWQgb3BlcmF0b3IgaXMgc3VwcGxpZWQgb3IgYW55IG9mIHRoZSBzdXBwbGllZFxuICogdmVyc2lvbiBzdHJpbmdzIGNhbm5vdCBiZSBjb2VyY2VkXG4gKi9cbmZ1bmN0aW9uIGNvbXBhcmVWZXJzaW9ucyAodmVyMSwgb3BlcmF0b3IsIHZlcjIpIHtcbiAgaWYgKCFTVVBQT1JURURfT1BFUkFUT1JTLmluY2x1ZGVzKG9wZXJhdG9yKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVGhlICcke29wZXJhdG9yfScgY29tcGFyaXNvbiBvcGVyYXRvciBpcyBub3Qgc3VwcG9ydGVkLiBgICtcbiAgICAgIGBPbmx5ICcke0pTT04uc3RyaW5naWZ5KFNVUFBPUlRFRF9PUEVSQVRPUlMpfScgb3BlcmF0b3JzIGFyZSBzdXBwb3J0ZWRgKTtcbiAgfVxuXG4gIGNvbnN0IHNlbXZlck9wZXJhdG9yID0gWyc9PScsICchPSddLmluY2x1ZGVzKG9wZXJhdG9yKSA/ICc9JyA6IG9wZXJhdG9yO1xuICBjb25zdCByZXN1bHQgPSBzZW12ZXIuc2F0aXNmaWVzKGNvZXJjZVZlcnNpb24odmVyMSksIGAke3NlbXZlck9wZXJhdG9yfSR7Y29lcmNlVmVyc2lvbih2ZXIyKX1gKTtcbiAgcmV0dXJuIG9wZXJhdG9yID09PSAnIT0nID8gIXJlc3VsdCA6IHJlc3VsdDtcbn1cblxuZXhwb3J0IHtcbiAgaGFzVmFsdWUsIGVzY2FwZVNwYWNlLCBlc2NhcGVTcGVjaWFsQ2hhcnMsIGxvY2FsSXAsIGNhbmNlbGxhYmxlRGVsYXksXG4gIG11bHRpUmVzb2x2ZSwgc2FmZUpzb25QYXJzZSwgd3JhcEVsZW1lbnQsIHVud3JhcEVsZW1lbnQsIGZpbHRlck9iamVjdCxcbiAgdG9SZWFkYWJsZVNpemVTdHJpbmcsIGlzU3ViUGF0aCwgVzNDX1dFQl9FTEVNRU5UX0lERU5USUZJRVIsXG4gIGlzU2FtZURlc3RpbmF0aW9uLCBjb21wYXJlVmVyc2lvbnMsIGNvZXJjZVZlcnNpb24sXG59O1xuIl0sImZpbGUiOiJsaWIvdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLiJ9

@@ -106,7 +106,7 @@ import B from 'bluebird';

try {
obj = JSON.parse(obj);
return JSON.parse(obj);
} catch (ign) {
// ignore: this is not json parsable
return obj;
}
return obj;
}

@@ -113,0 +113,0 @@

@@ -7,3 +7,3 @@ {

],
"version": "2.30.1",
"version": "2.30.2",
"author": "appium",

@@ -10,0 +10,0 @@ "license": "Apache-2.0",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc