appium-xcode
Advanced tools
Comparing version 2.0.2 to 2.0.3
@@ -41,2 +41,6 @@ 'use strict'; | ||
var _plist = require('plist'); | ||
var _plist2 = _interopRequireWildcard(_plist); | ||
var exec = _support2['default'].core.exec; | ||
@@ -320,4 +324,2 @@ var util = _support2['default'].util; | ||
// TODO remove this function. should really just be using 'getVersion()' everywhere. | ||
// This was added for tech-debt backwards compatibility | ||
function getMaxIOSSDKWithoutRetry() { | ||
@@ -377,2 +379,46 @@ var version, cmd, _ref4, _ref42, stdout, sdkVersion, match; | ||
function getConnectedDevices() { | ||
var _ref5, _ref52, stdout, plistContent, devicesFound, entriesToSearch, currentEntry, deviceInfo; | ||
return _regeneratorRuntime.async(function getConnectedDevices$(context$1$0) { | ||
while (1) switch (context$1$0.prev = context$1$0.next) { | ||
case 0: | ||
context$1$0.next = 2; | ||
return exec('/usr/sbin/system_profiler -xml SPUSBDataType', { maxBuffer: 524288, timeout: XCODE_SELECT_TIMEOUT }); | ||
case 2: | ||
_ref5 = context$1$0.sent; | ||
_ref52 = _slicedToArray(_ref5, 1); | ||
stdout = _ref52[0]; | ||
plistContent = _plist2['default'].parse(stdout); | ||
devicesFound = []; | ||
entriesToSearch = [plistContent[0]]; | ||
while (entriesToSearch.length > 0) { | ||
currentEntry = entriesToSearch.pop(); | ||
if (currentEntry instanceof Array) { | ||
entriesToSearch = entriesToSearch.concat(currentEntry); | ||
} else if (currentEntry._name && currentEntry._name.substring(0, 4) === 'iPad' || currentEntry._name && currentEntry._name.substring(0, 6) === 'iPhone') { | ||
deviceInfo = { | ||
name: currentEntry._name, | ||
udid: currentEntry.serial_num, | ||
productId: currentEntry.product_id, | ||
deviceVersion: currentEntry.bcd_device | ||
}; | ||
devicesFound.push(deviceInfo); | ||
} else if (currentEntry._items) { | ||
entriesToSearch = entriesToSearch.concat(currentEntry._items); | ||
} | ||
} | ||
return context$1$0.abrupt('return', devicesFound); | ||
case 10: | ||
case 'end': | ||
return context$1$0.stop(); | ||
} | ||
}, null, this); | ||
} | ||
function clearInternalCache() { | ||
@@ -396,2 +442,3 @@ | ||
exports.getMaxIOSSDKWithoutRetry = getMaxIOSSDKWithoutRetry; | ||
exports.getConnectedDevices = getConnectedDevices; | ||
exports.clearInternalCache = clearInternalCache; | ||
@@ -417,2 +464,2 @@ // Xcode < 5.x | ||
// rather than waste time getting the iOSSDKVersion, just get both paths and see which one exists | ||
//# sourceMappingURL=data:application/json;base64,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LFVBQVUsRUFBRSw4QkFBOEIsRUFDbkQsWUFBWSxDQUFDLENBQUM7O0FBRWhDLFVBQVEsQ0FBQyxPQUFPLENBQUMsVUFBQyxDQUFDLEVBQUs7QUFDdEIsUUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO0FBQ1gsT0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLG9CQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUNqQztHQUNGLENBQUMsQ0FBQztDQUdKOztRQUVRLE9BQU8sR0FBUCxPQUFPO1FBQUUsVUFBVSxHQUFWLFVBQVU7UUFBRSw4QkFBOEIsR0FBOUIsOEJBQThCO1FBQUUsWUFBWSxHQUFaLFlBQVk7UUFDakUsMENBQTBDLEdBQTFDLDBDQUEwQztRQUFFLHdCQUF3QixHQUF4Qix3QkFBd0I7UUFDcEUsa0JBQWtCLEdBQWxCLGtCQUFrQiIsImZpbGUiOiJsaWIveGNvZGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbnBtbG9nIGZyb20gJ25wbWxvZyc7XG5pbXBvcnQgc3VwcG9ydCBmcm9tICdhcHBpdW0tc3VwcG9ydCc7XG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGRlbm9kZWlmeSBmcm9tICdkZW5vZGVpZnknO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyByZXRyeSB9IGZyb20gJ2FzeW5jYm94JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cbmNvbnN0IGV4ZWMgPSBzdXBwb3J0LmNvcmUuZXhlYztcbmNvbnN0IHV0aWwgPSBzdXBwb3J0LnV0aWw7XG5jb25zdCBmaWxlRXhpc3RzID0gc3VwcG9ydC51dGlsLmZpbGVFeGlzdHM7XG5jb25zdCBlc2NhcGVTcGFjZSA9IHN1cHBvcnQudXRpbC5lc2NhcGVTcGFjZTtcbmNvbnN0IHJlYWRTeW1saW5rID0gZGVub2RlaWZ5KGZzLnJlYWRsaW5rKTtcbmNvbnN0IGVudiA9IHByb2Nlc3MuZW52O1xuXG5jb25zdCBYQ09ERV9TRUxFQ1RfVElNRU9VVCA9IDMwMDA7XG5jb25zdCBYQ09ERV9TVUJESVIgPSBcIi9Db250ZW50cy9EZXZlbG9wZXJcIjtcbmNvbnN0IERFRkFVTFRfTlVNQkVSX09GX1JFVFJJRVMgPSAzO1xuXG5jb25zdCBsb2cgPSBwcm9jZXNzLmVudi5HTE9CQUxfTlBNTE9HID8gZ2xvYmFsLmxvZyA6IG5wbWxvZztcblxuXG5mdW5jdGlvbiBoYXNFeHBlY3RlZFN1YkRpciAocGF0aCkge1xuICByZXR1cm4gcGF0aC5zdWJzdHJpbmcocGF0aC5sZW5ndGggLSBYQ09ERV9TVUJESVIubGVuZ3RoKSA9PT0gWENPREVfU1VCRElSO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRQYXRoRnJvbVN5bWxpbmsgKGZhaWxNZXNzYWdlKSB7XG4gIC8vIE5vZGUncyBpbnZvY2F0aW9uIG9mIHhjb2RlLXNlbGVjdCBzb21ldGltZXMgZmxha2VzIGFuZCByZXR1cm5zIGFuIGVtcHR5IHN0cmluZy5cbiAgLy8gTm90IGNsZWFyIHdoeS4gQXMgYSB3b3JrYXJvdW5kLCBBcHBpdW0gY2FuIHJlbGlhYmx5IGRlZHVjZSB0aGUgdmVyc2lvbiBpbiB1c2UgYnkgY2hlY2tpbmdcbiAgLy8gdGhlIGxvY2F0aW9ucyB4Y29kZS1zZWxlY3QgdXNlcyB0byBzdG9yZSB0aGUgc2VsZWN0ZWQgdmVyc2lvbidzIHBhdGguIFRoaXMgc2hvdWxkIGJlIDEwMCVcbiAgLy8gcmVsaWFibGUgc28gbG9uZyBhcyB0aGUgbGluayBsb2NhdGlvbnMgcmVtYWluIHRoZSBzYW1lLiBIb3dldmVyLCBzaW5jZSB3ZSdyZSByZWx5aW5nIG9uXG4gIC8vIGhhcmRjb2RlZCBwYXRocywgdGhpcyBhcHByb2FjaCB3aWxsIGJyZWFrIHRoZSBuZXh0IHRpbWUgQXBwbGUgY2hhbmdlcyB0aGUgc3ltbGluayBsb2NhdGlvbi5cbiAgbG9nLndhcm4oYEZpbmRpbmcgWGNvZGVQYXRoIGJ5IHN5bWxpbmsgYmVjYXVzZSAke2ZhaWxNZXNzYWdlfWApO1xuXG4gIGNvbnN0IHN5bWxpbmtQYXRoID0gXCIvdmFyL2RiL3hjb2RlX3NlbGVjdF9saW5rXCI7XG4gIGNvbnN0IGxlZ2FjeVN5bWxpbmtQYXRoID0gXCIvdXNyL3NoYXJlL3hjb2RlLXNlbGVjdC94Y29kZV9kaXJfbGlua1wiOyAvLyAgWGNvZGUgPCA1LnhcbiAgbGV0IHhjb2RlUGF0aCA9IG51bGw7XG5cbiAgLy8geGNvZGUtc2VsZWN0IGFsbG93cyB1c2VycyB0byBvdmVycmlkZSBpdHMgc2V0dGluZ3Mgd2l0aCB0aGUgREVWRUxPUEVSX0RJUiBlbnYgdmFyLFxuICAvLyBzbyBjaGVjayB0aGF0IGZpcnN0XG4gIGlmICh1dGlsLmhhc0NvbnRlbnQoZW52LkRFVkVMT1BFUl9ESVIpKSB7XG4gICAgY29uc3QgY3VzdG9tUGF0aCA9IGhhc0V4cGVjdGVkU3ViRGlyKGVudi5ERVZFTE9QRVJfRElSKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudi5ERVZFTE9QRVJfRElSICA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudi5ERVZFTE9QRVJfRElSICsgWENPREVfU1VCRElSO1xuXG4gICAgaWYgKGF3YWl0IGZpbGVFeGlzdHMoY3VzdG9tUGF0aCkpIHtcbiAgICAgIHhjb2RlUGF0aCA9IGN1c3RvbVBhdGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBtZXNnID0gYENvdWxkIG5vdCBmaW5kIHBhdGggdG8gWGNvZGUsIGVudmlyb25tZW50IHZhcmlhYmxlIGAgK1xuICAgICAgICAgICAgICAgICBgREVWRUxPUEVSX0RJUiBzZXQgdG86ICR7ZW52LkRFVkVMT1BFUl9ESVJ9IGAgK1xuICAgICAgICAgICAgICAgICBgYnV0IG5vIFhjb2RlIGZvdW5kYDtcbiAgICAgIGxvZy53YXJuKG1lc2cpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc2cpO1xuICAgIH1cbiAgfSBlbHNlIGlmIChhd2FpdCBmaWxlRXhpc3RzKHN5bWxpbmtQYXRoKSkge1xuICAgIHhjb2RlUGF0aCA9IHJlYWRTeW1saW5rKHN5bWxpbmtQYXRoKTtcbiAgfSBlbHNlIGlmIChhd2FpdCBmaWxlRXhpc3RzKGxlZ2FjeVN5bWxpbmtQYXRoKSkge1xuICAgIHhjb2RlUGF0aCA9IHJlYWRTeW1saW5rKGxlZ2FjeVN5bWxpbmtQYXRoKTtcbiAgfVxuXG4gIGlmICh4Y29kZVBhdGgpIHtcbiAgICByZXR1cm4geGNvZGVQYXRoLnJlcGxhY2UobmV3IFJlZ0V4cChcIi8kXCIpLCBcIlwiKS50cmltKCk7XG4gIH1cblxuICAvLyBXZSBzaG91bGQgb25seSBnZXQgaGVyZSBpcyB3ZSBmYWlsZWQgdG8gY2FwdHVyZSB4Y29kZS1zZWxlY3QncyBzdGRvdXQgYW5kIG91clxuICAvLyBvdGhlciBjaGVja3MgZmFpbGVkLiBFaXRoZXIgQXBwbGUgaGFzIG1vdmVkIHRoZSBzeW1saW5rIHRvIGEgbmV3IGxvY2F0aW9uIG9yIHRoZSB1c2VyXG4gIC8vIGlzIG5vdCB1c2luZyB0aGUgZGVmYXVsdCBpbnN0YWxsLiA5OS45OTklIGNoYW5jZSBpdCdzIHRoZSBsYXR0ZXIsIHNvIGlzc3VlIGEgd2FybmluZ1xuICAvLyBzaG91bGQgd2UgZXZlciBoaXQgdGhlIGVkZ2UgY2FzZS5cbiAgbGV0IG1zZyA9IGBDb3VsZCBub3QgZmluZCBwYXRoIHRvIFhjb2RlIGJ5IHN5bWxpbmtzIGxvY2F0ZWQgaW4gJHtzeW1saW5rUGF0aH0sIG9yICR7bGVnYWN5U3ltbGlua1BhdGh9YDtcbiAgbG9nLndhcm4obXNnKTtcbiAgdGhyb3cgbmV3IEVycm9yKG1zZyk7XG5cbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0UGF0aEZyb21YY29kZVNlbGVjdCAoKSB7XG5cbiAgbGV0IFtzdGRvdXRdID0gYXdhaXQgZXhlYygneGNvZGUtc2VsZWN0IC0tcHJpbnQtcGF0aCcsIHttYXhCdWZmZXI6IDUyNDI4OCwgdGltZW91dDogWENPREVfU0VMRUNUX1RJTUVPVVR9KTtcblxuICAvLyB0cmltIGFuZCByZW1vdmUgdHJhaWxpbmcgc2xhc2hcbiAgY29uc3QgeGNvZGVGb2xkZXJQYXRoID0gc3Rkb3V0LnJlcGxhY2UobmV3IFJlZ0V4cChcIi8kXCIpLCBcIlwiKS50cmltKCk7XG5cbiAgaWYgKCF1dGlsLmhhc0NvbnRlbnQoeGNvZGVGb2xkZXJQYXRoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcInhjb2RlLXNlbGVjdCByZXR1cm5lZCBhbiBlbXB0eSBzdHJpbmdcIik7XG4gIH1cblxuICBpZiAoYXdhaXQgZmlsZUV4aXN0cyh4Y29kZUZvbGRlclBhdGgpKSB7XG4gICAgcmV0dXJuIHhjb2RlRm9sZGVyUGF0aDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBtc2cgPSBgeGNvZGUtc2VsZWN0IGNvdWxkIG5vdCBmaW5kIHhjb2RlLiBQYXRoOiAke3hjb2RlRm9sZGVyUGF0aH0gZG9lcyBub3QgZXhpc3QuYDtcbiAgICBsb2cuZXJyb3IobXNnKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTtcbiAgfVxufVxuXG5jb25zdCBnZXRQYXRoID0gXy5tZW1vaXplKGZ1bmN0aW9uICgpIHtcblxuICAvLyBmaXJzdCB3ZSB0cnkgdXNpbmcgeGNvZGUtc2VsZWN0IHRvIGZpbmQgdGhlIHBhdGhcbiAgLy8gdGhlbiB3ZSB0cnkgdXNpbmcgdGhlIHN5bWxpbmtzIHRoYXQgQXBwbGUgaGFzIGJ5IGRlZmF1bHRcblxuICByZXR1cm4gZ2V0UGF0aEZyb21YY29kZVNlbGVjdCgpLmNhdGNoKGdldFBhdGhGcm9tU3ltbGluayk7XG59KTtcblxuXG5cbmFzeW5jIGZ1bmN0aW9uIGdldFZlcnNpb25XaXRob3V0UmV0cnkgKCkge1xuXG4gIGxldCB4Y29kZVBhdGggPSBhd2FpdCBnZXRQYXRoKCk7XG5cbiAgLy8gd2Ugd2FudCB0byByZWFkIHRoZSBDRkJ1bmRsZVNob3J0VmVyc2lvblN0cmluZyBmcm9tIFhjb2RlJ3MgcGxpc3QuXG4gIC8vIEl0IHNob3VsZCBiZSBpbiAvW3Jvb3RdL1hDb2RlLmFwcC9Db250ZW50cy9cbiAgY29uc3QgcGxpc3RQYXRoID0geGNvZGVQYXRoLnJlcGxhY2UoWENPREVfU1VCRElSLCBcIi9Db250ZW50cy9JbmZvLnBsaXN0XCIpO1xuXG4gIGlmICghYXdhaXQgZmlsZUV4aXN0cyhwbGlzdFBhdGgpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZ2V0IFhjb2RlIHZlcnNpb24uICR7cGxpc3RQYXRofSBkb2VzIG5vdCBleGlzdCBvbiBkaXNrLmApO1xuICB9XG5cbiAgY29uc3QgY21kID0gYC91c3IvbGliZXhlYy9QbGlzdEJ1ZGR5IC1jICdQcmludCBDRkJ1bmRsZVNob3J0VmVyc2lvblN0cmluZycgJHtlc2NhcGVTcGFjZShwbGlzdFBhdGgpfWA7XG4gIGxldCBbc3Rkb3V0XSA9IGF3YWl0IGV4ZWMoY21kLCB7bWF4QnVmZmVyOiA1MjQyODgsIHRpbWVvdXQ6IFhDT0RFX1NFTEVDVF9USU1FT1VUfSk7XG5cbiAgbGV0IHZlcnNpb25QYXR0ZXJuID0gL1xcZFxcLlxcZFxcLipcXGQqLztcbiAgLy8gbmVlZCB0byB1c2Ugc3RyaW5nI21hdGNoIGhlcmU7IHByZXZpb3VzIGNvZGUgdXNlZCByZWdleHAjZXhlYywgd2hpY2ggZG9lcyBub3QgcmV0dXJuIG51bGxcbiAgbGV0IG1hdGNoID0gc3Rkb3V0Lm1hdGNoKHZlcnNpb25QYXR0ZXJuKTtcbiAgaWYgKG1hdGNoID09PSBudWxsIHx8ICF1dGlsLmhhc0NvbnRlbnQobWF0Y2hbMF0pKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgcGFyc2UgWGNvZGUgdmVyc2lvbi4geGNvZGVidWlsZCBvdXRwdXQgd2FzOiAke3N0ZG91dH1gKTtcbiAgfVxuXG4gIHJldHVybiBtYXRjaFswXTtcbn1cblxuXG5jb25zdCBnZXRWZXJzaW9uID0gXy5tZW1vaXplKFxuICBmdW5jdGlvbiAocmV0cmllcyA9IERFRkFVTFRfTlVNQkVSX09GX1JFVFJJRVMpIHtcbiAgICByZXR1cm4gcmV0cnkocmV0cmllcywgZ2V0VmVyc2lvbldpdGhvdXRSZXRyeSk7XG4gIH1cbik7XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aFdpdGhvdXRSZXRyeSAoKSB7XG5cbiAgY29uc3QgeGNvZGVQYXRoID0gYXdhaXQgZ2V0UGF0aCgpO1xuXG4gIC8vIGZvciBpb3MgOCBhbmQgdXAsIHRoZSBmaWxlIGV4dGVuc2lvbiBmb3IgQXV0aW9tYXRpb25JbnN0cnVtZW50IGNoYW5nZWQuXG4gIC8vIHJhdGhlciB0aGFuIHdhc3RlIHRpbWUgZ2V0dGluZyB0aGUgaU9TU0RLVmVyc2lvbiwganVzdCBnZXQgYm90aCBwYXRocyBhbmQgc2VlIHdoaWNoIG9uZSBleGlzdHNcbiAgY29uc3QgZXh0ZW5zaW9ucyA9IFsneHJwbHVnaW4nLCAnYnVuZGxlJ107XG4gIGNvbnN0IHBhdGhQcmVmaXggPSBwYXRoLnJlc29sdmUoeGNvZGVQYXRoLCBcIi4uL0FwcGxpY2F0aW9ucy9JbnN0cnVtZW50cy5hcHAvQ29udGVudHMvUGx1Z0luc1wiKTtcbiAgY29uc3QgcGF0aFN1ZmZpeCA9IFwiQ29udGVudHMvUmVzb3VyY2VzL0F1dG9tYXRpb24udHJhY2V0ZW1wbGF0ZVwiO1xuICBsZXQgYXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRocyA9IFtcbiAgICBwYXRoLnJlc29sdmUocGF0aFByZWZpeCwgXCJBdXRvbWF0aW9uSW5zdHJ1bWVudC5cIiArIGV4dGVuc2lvbnNbMF0sIHBhdGhTdWZmaXgpLFxuICAgIHBhdGgucmVzb2x2ZShwYXRoUHJlZml4LCBcIkF1dG9tYXRpb25JbnN0cnVtZW50LlwiICsgZXh0ZW5zaW9uc1sxXSwgcGF0aFN1ZmZpeClcbiAgXTtcblxuICBpZiAoYXdhaXQgZmlsZUV4aXN0cyhhdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGhzWzBdKSkge1xuICAgIHJldHVybiBhdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGhzWzBdO1xuICB9XG5cbiAgaWYgKGF3YWl0IGZpbGVFeGlzdHMoYXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoc1sxXSkpIHtcbiAgICByZXR1cm4gYXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoc1sxXTtcbiAgfVxuXG4gIGNvbnN0IG1zZyA9IFwiQ291bGQgbm90IGZpbmQgQXV0b21hdGlvbi50cmFjZXRlbXBsYXRlIGluIGFueSBvZiB0aGUgZm9sbG93aW5nXCIgK1xuICAgICAgICAgICAgICBgbG9jYXRpb25zICR7YXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRocy50b1N0cmluZygpfWA7XG4gIGxvZy5lcnJvcihtc2cpO1xuICB0aHJvdyBuZXcgRXJyb3IobXNnKTtcblxufVxuXG5jb25zdCBnZXRBdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGggPSBfLm1lbW9pemUoXG4gIGZ1bmN0aW9uIChyZXRyaWVzID0gREVGQVVMVF9OVU1CRVJfT0ZfUkVUUklFUykge1xuICAgIHJldHVybiByZXRyeShyZXRyaWVzLCBnZXRBdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGhXaXRob3V0UmV0cnkpO1xuICB9XG4pO1xuXG4vLyBUT0RPIHJlbW92ZSB0aGlzIGZ1bmN0aW9uLiBzaG91bGQgcmVhbGx5IGp1c3QgYmUgdXNpbmcgJ2dldFZlcnNpb24oKScgZXZlcnl3aGVyZS5cbi8vIFRoaXMgd2FzIGFkZGVkIGZvciB0ZWNoLWRlYnQgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbmFzeW5jIGZ1bmN0aW9uIGdldE1heElPU1NES1dpdGhvdXRSZXRyeSAoKSB7XG5cbiAgY29uc3QgdmVyc2lvbiA9IGF3YWl0IGdldFZlcnNpb24oKTtcblxuICBpZiAodmVyc2lvblswXSA9PT0gJzQnKSB7XG4gICAgcmV0dXJuICc2LjEnO1xuICB9XG5cbiAgY29uc3QgY21kID0gYHhjcnVuIC0tc2RrIGlwaG9uZXNpbXVsYXRvciAtLXNob3ctc2RrLXZlcnNpb25gO1xuICBjb25zdCBbc3Rkb3V0XSA9IGF3YWl0IGV4ZWMoY21kLCB7bWF4QnVmZmVyOiA1MjQyODgsIHRpbWVvdXQ6IFhDT0RFX1NFTEVDVF9USU1FT1VUfSk7XG5cbiAgY29uc3Qgc2RrVmVyc2lvbiA9IHN0ZG91dC50cmltKCk7XG4gIGNvbnN0IG1hdGNoID0gL1xcZC5cXGQvLmV4ZWMoc3Rkb3V0KTtcblxuICBpZiAoIW1hdGNoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB4Y3J1biByZXR1cm5lZCBhIG5vbi1udW1lcmljIGlPUyBTREsgdmVyc2lvbjogJHtzZGtWZXJzaW9ufWApO1xuICB9XG5cbiAgcmV0dXJuIHNka1ZlcnNpb247XG59XG5cbmNvbnN0IGdldE1heElPU1NESyA9IF8ubWVtb2l6ZShcbiAgZnVuY3Rpb24gKHJldHJpZXMgPSBERUZBVUxUX05VTUJFUl9PRl9SRVRSSUVTKSB7XG4gICAgcmV0dXJuIHJldHJ5KHJldHJpZXMsIGdldE1heElPU1NES1dpdGhvdXRSZXRyeSk7XG4gIH1cbik7XG5cbmZ1bmN0aW9uIGNsZWFySW50ZXJuYWxDYWNoZSAoKSB7XG5cbiAgLy8gbWVtb2l6ZWQgZnVuY3Rpb25zXG4gIGNvbnN0IG1lbW9pemVkID0gW2dldFBhdGgsIGdldFZlcnNpb24sIGdldEF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgZ2V0TWF4SU9TU0RLXTtcblxuICBtZW1vaXplZC5mb3JFYWNoKChmKSA9PiB7XG4gICAgaWYgKGYuY2FjaGUpIHtcbiAgICAgIGYuY2FjaGUgPSBuZXcgXy5tZW1vaXplLkNhY2hlKCk7XG4gICAgfVxuICB9KTtcblxuXG59XG5cbmV4cG9ydCB7IGdldFBhdGgsIGdldFZlcnNpb24sIGdldEF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aCwgZ2V0TWF4SU9TU0RLLFxuICAgICAgICAgZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoV2l0aG91dFJldHJ5LCBnZXRNYXhJT1NTREtXaXRob3V0UmV0cnksXG4gICAgICAgICBjbGVhckludGVybmFsQ2FjaGUgfTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,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O1NBQ0Y7NENBQ00sWUFBWTs7Ozs7OztDQUNwQjs7QUFFRCxTQUFTLGtCQUFrQixHQUFJOzs7QUFHN0IsTUFBTSxRQUFRLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLDhCQUE4QixFQUNuRCxZQUFZLENBQUMsQ0FBQzs7QUFFaEMsVUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFDLENBQUMsRUFBSztBQUN0QixRQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7QUFDWCxPQUFDLENBQUMsS0FBSyxHQUFHLElBQUksb0JBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0tBQ2pDO0dBQ0YsQ0FBQyxDQUFDO0NBR0o7O1FBRVEsT0FBTyxHQUFQLE9BQU87UUFBRSxVQUFVLEdBQVYsVUFBVTtRQUFFLDhCQUE4QixHQUE5Qiw4QkFBOEI7UUFBRSxZQUFZLEdBQVosWUFBWTtRQUNqRSwwQ0FBMEMsR0FBMUMsMENBQTBDO1FBQUUsd0JBQXdCLEdBQXhCLHdCQUF3QjtRQUNwRSxtQkFBbUIsR0FBbkIsbUJBQW1CO1FBQUUsa0JBQWtCLEdBQWxCLGtCQUFrQiIsImZpbGUiOiJsaWIveGNvZGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbnBtbG9nIGZyb20gJ25wbWxvZyc7XG5pbXBvcnQgc3VwcG9ydCBmcm9tICdhcHBpdW0tc3VwcG9ydCc7XG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGRlbm9kZWlmeSBmcm9tICdkZW5vZGVpZnknO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyByZXRyeSB9IGZyb20gJ2FzeW5jYm94JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgcGxpc3QgZnJvbSAncGxpc3QnO1xuXG5jb25zdCBleGVjID0gc3VwcG9ydC5jb3JlLmV4ZWM7XG5jb25zdCB1dGlsID0gc3VwcG9ydC51dGlsO1xuY29uc3QgZmlsZUV4aXN0cyA9IHN1cHBvcnQudXRpbC5maWxlRXhpc3RzO1xuY29uc3QgZXNjYXBlU3BhY2UgPSBzdXBwb3J0LnV0aWwuZXNjYXBlU3BhY2U7XG5jb25zdCByZWFkU3ltbGluayA9IGRlbm9kZWlmeShmcy5yZWFkbGluayk7XG5jb25zdCBlbnYgPSBwcm9jZXNzLmVudjtcblxuY29uc3QgWENPREVfU0VMRUNUX1RJTUVPVVQgPSAzMDAwO1xuY29uc3QgWENPREVfU1VCRElSID0gXCIvQ29udGVudHMvRGV2ZWxvcGVyXCI7XG5jb25zdCBERUZBVUxUX05VTUJFUl9PRl9SRVRSSUVTID0gMztcblxuY29uc3QgbG9nID0gcHJvY2Vzcy5lbnYuR0xPQkFMX05QTUxPRyA/IGdsb2JhbC5sb2cgOiBucG1sb2c7XG5cblxuZnVuY3Rpb24gaGFzRXhwZWN0ZWRTdWJEaXIgKHBhdGgpIHtcbiAgcmV0dXJuIHBhdGguc3Vic3RyaW5nKHBhdGgubGVuZ3RoIC0gWENPREVfU1VCRElSLmxlbmd0aCkgPT09IFhDT0RFX1NVQkRJUjtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0UGF0aEZyb21TeW1saW5rIChmYWlsTWVzc2FnZSkge1xuICAvLyBOb2RlJ3MgaW52b2NhdGlvbiBvZiB4Y29kZS1zZWxlY3Qgc29tZXRpbWVzIGZsYWtlcyBhbmQgcmV0dXJucyBhbiBlbXB0eSBzdHJpbmcuXG4gIC8vIE5vdCBjbGVhciB3aHkuIEFzIGEgd29ya2Fyb3VuZCwgQXBwaXVtIGNhbiByZWxpYWJseSBkZWR1Y2UgdGhlIHZlcnNpb24gaW4gdXNlIGJ5IGNoZWNraW5nXG4gIC8vIHRoZSBsb2NhdGlvbnMgeGNvZGUtc2VsZWN0IHVzZXMgdG8gc3RvcmUgdGhlIHNlbGVjdGVkIHZlcnNpb24ncyBwYXRoLiBUaGlzIHNob3VsZCBiZSAxMDAlXG4gIC8vIHJlbGlhYmxlIHNvIGxvbmcgYXMgdGhlIGxpbmsgbG9jYXRpb25zIHJlbWFpbiB0aGUgc2FtZS4gSG93ZXZlciwgc2luY2Ugd2UncmUgcmVseWluZyBvblxuICAvLyBoYXJkY29kZWQgcGF0aHMsIHRoaXMgYXBwcm9hY2ggd2lsbCBicmVhayB0aGUgbmV4dCB0aW1lIEFwcGxlIGNoYW5nZXMgdGhlIHN5bWxpbmsgbG9jYXRpb24uXG4gIGxvZy53YXJuKGBGaW5kaW5nIFhjb2RlUGF0aCBieSBzeW1saW5rIGJlY2F1c2UgJHtmYWlsTWVzc2FnZX1gKTtcblxuICBjb25zdCBzeW1saW5rUGF0aCA9IFwiL3Zhci9kYi94Y29kZV9zZWxlY3RfbGlua1wiO1xuICBjb25zdCBsZWdhY3lTeW1saW5rUGF0aCA9IFwiL3Vzci9zaGFyZS94Y29kZS1zZWxlY3QveGNvZGVfZGlyX2xpbmtcIjsgLy8gIFhjb2RlIDwgNS54XG4gIGxldCB4Y29kZVBhdGggPSBudWxsO1xuXG4gIC8vIHhjb2RlLXNlbGVjdCBhbGxvd3MgdXNlcnMgdG8gb3ZlcnJpZGUgaXRzIHNldHRpbmdzIHdpdGggdGhlIERFVkVMT1BFUl9ESVIgZW52IHZhcixcbiAgLy8gc28gY2hlY2sgdGhhdCBmaXJzdFxuICBpZiAodXRpbC5oYXNDb250ZW50KGVudi5ERVZFTE9QRVJfRElSKSkge1xuICAgIGNvbnN0IGN1c3RvbVBhdGggPSBoYXNFeHBlY3RlZFN1YkRpcihlbnYuREVWRUxPUEVSX0RJUikgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnYuREVWRUxPUEVSX0RJUiAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnYuREVWRUxPUEVSX0RJUiArIFhDT0RFX1NVQkRJUjtcblxuICAgIGlmIChhd2FpdCBmaWxlRXhpc3RzKGN1c3RvbVBhdGgpKSB7XG4gICAgICB4Y29kZVBhdGggPSBjdXN0b21QYXRoO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgbWVzZyA9IGBDb3VsZCBub3QgZmluZCBwYXRoIHRvIFhjb2RlLCBlbnZpcm9ubWVudCB2YXJpYWJsZSBgICtcbiAgICAgICAgICAgICAgICAgYERFVkVMT1BFUl9ESVIgc2V0IHRvOiAke2Vudi5ERVZFTE9QRVJfRElSfSBgICtcbiAgICAgICAgICAgICAgICAgYGJ1dCBubyBYY29kZSBmb3VuZGA7XG4gICAgICBsb2cud2FybihtZXNnKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihtZXNnKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoYXdhaXQgZmlsZUV4aXN0cyhzeW1saW5rUGF0aCkpIHtcbiAgICB4Y29kZVBhdGggPSByZWFkU3ltbGluayhzeW1saW5rUGF0aCk7XG4gIH0gZWxzZSBpZiAoYXdhaXQgZmlsZUV4aXN0cyhsZWdhY3lTeW1saW5rUGF0aCkpIHtcbiAgICB4Y29kZVBhdGggPSByZWFkU3ltbGluayhsZWdhY3lTeW1saW5rUGF0aCk7XG4gIH1cblxuICBpZiAoeGNvZGVQYXRoKSB7XG4gICAgcmV0dXJuIHhjb2RlUGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCIvJFwiKSwgXCJcIikudHJpbSgpO1xuICB9XG5cbiAgLy8gV2Ugc2hvdWxkIG9ubHkgZ2V0IGhlcmUgaXMgd2UgZmFpbGVkIHRvIGNhcHR1cmUgeGNvZGUtc2VsZWN0J3Mgc3Rkb3V0IGFuZCBvdXJcbiAgLy8gb3RoZXIgY2hlY2tzIGZhaWxlZC4gRWl0aGVyIEFwcGxlIGhhcyBtb3ZlZCB0aGUgc3ltbGluayB0byBhIG5ldyBsb2NhdGlvbiBvciB0aGUgdXNlclxuICAvLyBpcyBub3QgdXNpbmcgdGhlIGRlZmF1bHQgaW5zdGFsbC4gOTkuOTk5JSBjaGFuY2UgaXQncyB0aGUgbGF0dGVyLCBzbyBpc3N1ZSBhIHdhcm5pbmdcbiAgLy8gc2hvdWxkIHdlIGV2ZXIgaGl0IHRoZSBlZGdlIGNhc2UuXG4gIGxldCBtc2cgPSBgQ291bGQgbm90IGZpbmQgcGF0aCB0byBYY29kZSBieSBzeW1saW5rcyBsb2NhdGVkIGluICR7c3ltbGlua1BhdGh9LCBvciAke2xlZ2FjeVN5bWxpbmtQYXRofWA7XG4gIGxvZy53YXJuKG1zZyk7XG4gIHRocm93IG5ldyBFcnJvcihtc2cpO1xuXG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFBhdGhGcm9tWGNvZGVTZWxlY3QgKCkge1xuXG4gIGxldCBbc3Rkb3V0XSA9IGF3YWl0IGV4ZWMoJ3hjb2RlLXNlbGVjdCAtLXByaW50LXBhdGgnLCB7bWF4QnVmZmVyOiA1MjQyODgsIHRpbWVvdXQ6IFhDT0RFX1NFTEVDVF9USU1FT1VUfSk7XG5cbiAgLy8gdHJpbSBhbmQgcmVtb3ZlIHRyYWlsaW5nIHNsYXNoXG4gIGNvbnN0IHhjb2RlRm9sZGVyUGF0aCA9IHN0ZG91dC5yZXBsYWNlKG5ldyBSZWdFeHAoXCIvJFwiKSwgXCJcIikudHJpbSgpO1xuXG4gIGlmICghdXRpbC5oYXNDb250ZW50KHhjb2RlRm9sZGVyUGF0aCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ4Y29kZS1zZWxlY3QgcmV0dXJuZWQgYW4gZW1wdHkgc3RyaW5nXCIpO1xuICB9XG5cbiAgaWYgKGF3YWl0IGZpbGVFeGlzdHMoeGNvZGVGb2xkZXJQYXRoKSkge1xuICAgIHJldHVybiB4Y29kZUZvbGRlclBhdGg7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbXNnID0gYHhjb2RlLXNlbGVjdCBjb3VsZCBub3QgZmluZCB4Y29kZS4gUGF0aDogJHt4Y29kZUZvbGRlclBhdGh9IGRvZXMgbm90IGV4aXN0LmA7XG4gICAgbG9nLmVycm9yKG1zZyk7XG4gICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7XG4gIH1cbn1cblxuY29uc3QgZ2V0UGF0aCA9IF8ubWVtb2l6ZShmdW5jdGlvbiAoKSB7XG5cbiAgLy8gZmlyc3Qgd2UgdHJ5IHVzaW5nIHhjb2RlLXNlbGVjdCB0byBmaW5kIHRoZSBwYXRoXG4gIC8vIHRoZW4gd2UgdHJ5IHVzaW5nIHRoZSBzeW1saW5rcyB0aGF0IEFwcGxlIGhhcyBieSBkZWZhdWx0XG5cbiAgcmV0dXJuIGdldFBhdGhGcm9tWGNvZGVTZWxlY3QoKS5jYXRjaChnZXRQYXRoRnJvbVN5bWxpbmspO1xufSk7XG5cblxuXG5hc3luYyBmdW5jdGlvbiBnZXRWZXJzaW9uV2l0aG91dFJldHJ5ICgpIHtcblxuICBsZXQgeGNvZGVQYXRoID0gYXdhaXQgZ2V0UGF0aCgpO1xuXG4gIC8vIHdlIHdhbnQgdG8gcmVhZCB0aGUgQ0ZCdW5kbGVTaG9ydFZlcnNpb25TdHJpbmcgZnJvbSBYY29kZSdzIHBsaXN0LlxuICAvLyBJdCBzaG91bGQgYmUgaW4gL1tyb290XS9YQ29kZS5hcHAvQ29udGVudHMvXG4gIGNvbnN0IHBsaXN0UGF0aCA9IHhjb2RlUGF0aC5yZXBsYWNlKFhDT0RFX1NVQkRJUiwgXCIvQ29udGVudHMvSW5mby5wbGlzdFwiKTtcblxuICBpZiAoIWF3YWl0IGZpbGVFeGlzdHMocGxpc3RQYXRoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ291bGQgbm90IGdldCBYY29kZSB2ZXJzaW9uLiAke3BsaXN0UGF0aH0gZG9lcyBub3QgZXhpc3Qgb24gZGlzay5gKTtcbiAgfVxuXG4gIGNvbnN0IGNtZCA9IGAvdXNyL2xpYmV4ZWMvUGxpc3RCdWRkeSAtYyAnUHJpbnQgQ0ZCdW5kbGVTaG9ydFZlcnNpb25TdHJpbmcnICR7ZXNjYXBlU3BhY2UocGxpc3RQYXRoKX1gO1xuICBsZXQgW3N0ZG91dF0gPSBhd2FpdCBleGVjKGNtZCwge21heEJ1ZmZlcjogNTI0Mjg4LCB0aW1lb3V0OiBYQ09ERV9TRUxFQ1RfVElNRU9VVH0pO1xuXG4gIGxldCB2ZXJzaW9uUGF0dGVybiA9IC9cXGRcXC5cXGRcXC4qXFxkKi87XG4gIC8vIG5lZWQgdG8gdXNlIHN0cmluZyNtYXRjaCBoZXJlOyBwcmV2aW91cyBjb2RlIHVzZWQgcmVnZXhwI2V4ZWMsIHdoaWNoIGRvZXMgbm90IHJldHVybiBudWxsXG4gIGxldCBtYXRjaCA9IHN0ZG91dC5tYXRjaCh2ZXJzaW9uUGF0dGVybik7XG4gIGlmIChtYXRjaCA9PT0gbnVsbCB8fCAhdXRpbC5oYXNDb250ZW50KG1hdGNoWzBdKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ291bGQgbm90IHBhcnNlIFhjb2RlIHZlcnNpb24uIHhjb2RlYnVpbGQgb3V0cHV0IHdhczogJHtzdGRvdXR9YCk7XG4gIH1cblxuICByZXR1cm4gbWF0Y2hbMF07XG59XG5cblxuY29uc3QgZ2V0VmVyc2lvbiA9IF8ubWVtb2l6ZShcbiAgZnVuY3Rpb24gKHJldHJpZXMgPSBERUZBVUxUX05VTUJFUl9PRl9SRVRSSUVTKSB7XG4gICAgcmV0dXJuIHJldHJ5KHJldHJpZXMsIGdldFZlcnNpb25XaXRob3V0UmV0cnkpO1xuICB9XG4pO1xuXG5hc3luYyBmdW5jdGlvbiBnZXRBdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGhXaXRob3V0UmV0cnkgKCkge1xuXG4gIGNvbnN0IHhjb2RlUGF0aCA9IGF3YWl0IGdldFBhdGgoKTtcblxuICAvLyBmb3IgaW9zIDggYW5kIHVwLCB0aGUgZmlsZSBleHRlbnNpb24gZm9yIEF1dGlvbWF0aW9uSW5zdHJ1bWVudCBjaGFuZ2VkLlxuICAvLyByYXRoZXIgdGhhbiB3YXN0ZSB0aW1lIGdldHRpbmcgdGhlIGlPU1NES1ZlcnNpb24sIGp1c3QgZ2V0IGJvdGggcGF0aHMgYW5kIHNlZSB3aGljaCBvbmUgZXhpc3RzXG4gIGNvbnN0IGV4dGVuc2lvbnMgPSBbJ3hycGx1Z2luJywgJ2J1bmRsZSddO1xuICBjb25zdCBwYXRoUHJlZml4ID0gcGF0aC5yZXNvbHZlKHhjb2RlUGF0aCwgXCIuLi9BcHBsaWNhdGlvbnMvSW5zdHJ1bWVudHMuYXBwL0NvbnRlbnRzL1BsdWdJbnNcIik7XG4gIGNvbnN0IHBhdGhTdWZmaXggPSBcIkNvbnRlbnRzL1Jlc291cmNlcy9BdXRvbWF0aW9uLnRyYWNldGVtcGxhdGVcIjtcbiAgbGV0IGF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aHMgPSBbXG4gICAgcGF0aC5yZXNvbHZlKHBhdGhQcmVmaXgsIFwiQXV0b21hdGlvbkluc3RydW1lbnQuXCIgKyBleHRlbnNpb25zWzBdLCBwYXRoU3VmZml4KSxcbiAgICBwYXRoLnJlc29sdmUocGF0aFByZWZpeCwgXCJBdXRvbWF0aW9uSW5zdHJ1bWVudC5cIiArIGV4dGVuc2lvbnNbMV0sIHBhdGhTdWZmaXgpXG4gIF07XG5cbiAgaWYgKGF3YWl0IGZpbGVFeGlzdHMoYXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoc1swXSkpIHtcbiAgICByZXR1cm4gYXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoc1swXTtcbiAgfVxuXG4gIGlmIChhd2FpdCBmaWxlRXhpc3RzKGF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aHNbMV0pKSB7XG4gICAgcmV0dXJuIGF1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aHNbMV07XG4gIH1cblxuICBjb25zdCBtc2cgPSBcIkNvdWxkIG5vdCBmaW5kIEF1dG9tYXRpb24udHJhY2V0ZW1wbGF0ZSBpbiBhbnkgb2YgdGhlIGZvbGxvd2luZ1wiICtcbiAgICAgICAgICAgICAgYGxvY2F0aW9ucyAke2F1dG9tYXRpb25UcmFjZVRlbXBsYXRlUGF0aHMudG9TdHJpbmcoKX1gO1xuICBsb2cuZXJyb3IobXNnKTtcbiAgdGhyb3cgbmV3IEVycm9yKG1zZyk7XG5cbn1cblxuY29uc3QgZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoID0gXy5tZW1vaXplKFxuICBmdW5jdGlvbiAocmV0cmllcyA9IERFRkFVTFRfTlVNQkVSX09GX1JFVFJJRVMpIHtcbiAgICByZXR1cm4gcmV0cnkocmV0cmllcywgZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoV2l0aG91dFJldHJ5KTtcbiAgfVxuKTtcblxuYXN5bmMgZnVuY3Rpb24gZ2V0TWF4SU9TU0RLV2l0aG91dFJldHJ5ICgpIHtcblxuICBjb25zdCB2ZXJzaW9uID0gYXdhaXQgZ2V0VmVyc2lvbigpO1xuXG4gIGlmICh2ZXJzaW9uWzBdID09PSAnNCcpIHtcbiAgICByZXR1cm4gJzYuMSc7XG4gIH1cblxuICBjb25zdCBjbWQgPSBgeGNydW4gLS1zZGsgaXBob25lc2ltdWxhdG9yIC0tc2hvdy1zZGstdmVyc2lvbmA7XG4gIGNvbnN0IFtzdGRvdXRdID0gYXdhaXQgZXhlYyhjbWQsIHttYXhCdWZmZXI6IDUyNDI4OCwgdGltZW91dDogWENPREVfU0VMRUNUX1RJTUVPVVR9KTtcblxuICBjb25zdCBzZGtWZXJzaW9uID0gc3Rkb3V0LnRyaW0oKTtcbiAgY29uc3QgbWF0Y2ggPSAvXFxkLlxcZC8uZXhlYyhzdGRvdXQpO1xuXG4gIGlmICghbWF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHhjcnVuIHJldHVybmVkIGEgbm9uLW51bWVyaWMgaU9TIFNESyB2ZXJzaW9uOiAke3Nka1ZlcnNpb259YCk7XG4gIH1cblxuICByZXR1cm4gc2RrVmVyc2lvbjtcbn1cblxuY29uc3QgZ2V0TWF4SU9TU0RLID0gXy5tZW1vaXplKFxuICBmdW5jdGlvbiAocmV0cmllcyA9IERFRkFVTFRfTlVNQkVSX09GX1JFVFJJRVMpIHtcbiAgICByZXR1cm4gcmV0cnkocmV0cmllcywgZ2V0TWF4SU9TU0RLV2l0aG91dFJldHJ5KTtcbiAgfVxuKTtcblxuYXN5bmMgZnVuY3Rpb24gZ2V0Q29ubmVjdGVkRGV2aWNlcyAoKSB7XG5cbiAgbGV0IFtzdGRvdXRdID0gYXdhaXQgZXhlYygnL3Vzci9zYmluL3N5c3RlbV9wcm9maWxlciAteG1sIFNQVVNCRGF0YVR5cGUnLFxuICAgIHttYXhCdWZmZXI6IDUyNDI4OCwgdGltZW91dDogWENPREVfU0VMRUNUX1RJTUVPVVR9KTtcbiAgbGV0IHBsaXN0Q29udGVudCA9IHBsaXN0LnBhcnNlKHN0ZG91dCk7XG5cbiAgbGV0IGRldmljZXNGb3VuZCA9IFtdO1xuICBsZXQgZW50cmllc1RvU2VhcmNoID0gW3BsaXN0Q29udGVudFswXV07XG4gIHdoaWxlIChlbnRyaWVzVG9TZWFyY2gubGVuZ3RoID4gMCkge1xuICAgIGxldCBjdXJyZW50RW50cnkgPSBlbnRyaWVzVG9TZWFyY2gucG9wKCk7XG4gICAgaWYgKGN1cnJlbnRFbnRyeSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICBlbnRyaWVzVG9TZWFyY2ggPSBlbnRyaWVzVG9TZWFyY2guY29uY2F0KGN1cnJlbnRFbnRyeSk7XG4gICAgfSBlbHNlIGlmICgoY3VycmVudEVudHJ5Ll9uYW1lICYmXG4gICAgICAgICAgICAgICAgY3VycmVudEVudHJ5Ll9uYW1lLnN1YnN0cmluZygwLCA0KSA9PT0gXCJpUGFkXCIpIHx8XG4gICAgICAgICAgICAgICAoY3VycmVudEVudHJ5Ll9uYW1lICYmXG4gICAgICAgICAgICAgICAgY3VycmVudEVudHJ5Ll9uYW1lLnN1YnN0cmluZygwLCA2KSA9PT0gXCJpUGhvbmVcIikpIHtcbiAgICAgIGxldCBkZXZpY2VJbmZvID0ge1xuICAgICAgICBuYW1lOiBjdXJyZW50RW50cnkuX25hbWUsXG4gICAgICAgIHVkaWQ6IGN1cnJlbnRFbnRyeS5zZXJpYWxfbnVtLFxuICAgICAgICBwcm9kdWN0SWQ6IGN1cnJlbnRFbnRyeS5wcm9kdWN0X2lkLFxuICAgICAgICBkZXZpY2VWZXJzaW9uOiBjdXJyZW50RW50cnkuYmNkX2RldmljZVxuICAgICAgfTtcbiAgICAgIGRldmljZXNGb3VuZC5wdXNoKGRldmljZUluZm8pO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudEVudHJ5Ll9pdGVtcykge1xuICAgICAgZW50cmllc1RvU2VhcmNoID0gZW50cmllc1RvU2VhcmNoLmNvbmNhdChjdXJyZW50RW50cnkuX2l0ZW1zKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGRldmljZXNGb3VuZDtcbn1cblxuZnVuY3Rpb24gY2xlYXJJbnRlcm5hbENhY2hlICgpIHtcblxuICAvLyBtZW1vaXplZCBmdW5jdGlvbnNcbiAgY29uc3QgbWVtb2l6ZWQgPSBbZ2V0UGF0aCwgZ2V0VmVyc2lvbiwgZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoLFxuICAgICAgICAgICAgICAgICAgICBnZXRNYXhJT1NTREtdO1xuXG4gIG1lbW9pemVkLmZvckVhY2goKGYpID0+IHtcbiAgICBpZiAoZi5jYWNoZSkge1xuICAgICAgZi5jYWNoZSA9IG5ldyBfLm1lbW9pemUuQ2FjaGUoKTtcbiAgICB9XG4gIH0pO1xuXG5cbn1cblxuZXhwb3J0IHsgZ2V0UGF0aCwgZ2V0VmVyc2lvbiwgZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoLCBnZXRNYXhJT1NTREssXG4gICAgICAgICBnZXRBdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGhXaXRob3V0UmV0cnksIGdldE1heElPU1NES1dpdGhvdXRSZXRyeSxcbiAgICAgICAgIGdldENvbm5lY3RlZERldmljZXMsIGNsZWFySW50ZXJuYWxDYWNoZSB9O1xuIl19 |
@@ -206,3 +206,24 @@ 'use strict'; | ||
}); | ||
it('should get a list of iOS devices', function callee$1$6() { | ||
var devices; | ||
return _regeneratorRuntime.async(function callee$1$6$(context$2$0) { | ||
while (1) switch (context$2$0.prev = context$2$0.next) { | ||
case 0: | ||
context$2$0.next = 2; | ||
return xcode.getConnectedDevices(); | ||
case 2: | ||
devices = context$2$0.sent; | ||
should.exist(devices); | ||
(typeof devices).should.equal('object'); | ||
case 5: | ||
case 'end': | ||
return context$2$0.stop(); | ||
} | ||
}, null, _this); | ||
}); | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,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SUFBSSxJQUFJLEVBQUU7O0FBQ3RCLFdBQUMsS0FBSyxHQUFDLE1BQU0sQ0FBQSxDQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Ozs7OztHQUV0QyxDQUFDLENBQUM7O0FBRUgsSUFBRSxDQUFDLDJDQUEyQyxFQUFFO1FBQzFDLElBQUksRUFJSixNQUFNOzs7OztpQkFKTyxLQUFLLENBQUMsOEJBQThCLEVBQUU7OztBQUFuRCxjQUFJOztBQUVSLGdCQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ25CLG9CQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFFBQUssQ0FBQztBQUN2QyxnQkFBTSxHQUFHLGdCQUFnQjs7QUFDN0IsY0FBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzs7Ozs7O0dBQ2pELENBQUMsQ0FBQzs7QUFFSCxJQUFFLENBQUMsZ0NBQWdDLEVBQUU7UUFDL0IsT0FBTzs7Ozs7aUJBQVMsS0FBSyxDQUFDLFlBQVksRUFBRTs7O0FBQXBDLGlCQUFPOztBQUVYLGdCQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3RCLFdBQUMsT0FBTyxPQUFPLENBQUEsQ0FBRSxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3hDLFdBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFDLEdBQUcsQ0FBQSxDQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Ozs7OztHQUNqRCxDQUFDLENBQUM7Q0FFSixDQUFDLENBQUMiLCJmaWxlIjoidGVzdC94Y29kZS1zcGVjcy5qcyIsInNvdXJjZXNDb250ZW50IjpbInJlcXVpcmUoJ3NvdXJjZS1tYXAtc3VwcG9ydCcpLmluc3RhbGwoKTtcblxuaW1wb3J0ICogYXMgeGNvZGUgZnJvbSAnLi4vbGliL3hjb2RlJztcbmltcG9ydCBjaGFpIGZyb20gJ2NoYWknO1xuaW1wb3J0IGNoYWlBc1Byb21pc2VkIGZyb20gJ2NoYWktYXMtcHJvbWlzZWQnO1xuaW1wb3J0ICdtb2NoYXdhaXQnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCBkZW5vZGVpZnkgZnJvbSAnZGVub2RlaWZ5JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cbmxldCBzaG91bGQgPSBjaGFpLnNob3VsZCgpO1xuY2hhaS51c2UoY2hhaUFzUHJvbWlzZWQpO1xuXG5sZXQgZmlsZUV4aXN0cyA9IGRlbm9kZWlmeShmcy5zdGF0KTtcblxuZGVzY3JpYmUoJ3hjb2RlIEBza2lwLWxpbnV4JywgKCkgPT4ge1xuXG4gIGl0KCdzaG91bGQgZ2V0IHRoZSBwYXRoIHRvIHhjb2RlIGV4ZWN1dGFibGUnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG5cbiAgICBsZXQgcGF0aCA9IGF3YWl0IHhjb2RlLmdldFBhdGgoKTtcbiAgICBzaG91bGQuZXhpc3QocGF0aCk7XG4gICAgYXdhaXQgZmlsZUV4aXN0cyhwYXRoKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIGdldCB0aGUgdmVyc2lvbiBvZiB4Y29kZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcblxuICAgIGxldCB2ZXJzaW9uID0gYXdhaXQgeGNvZGUuZ2V0VmVyc2lvbigpO1xuICAgIHNob3VsZC5leGlzdCh2ZXJzaW9uKTtcbiAgICBfLmlzU3RyaW5nKHZlcnNpb24pLnNob3VsZC5iZS50cnVlO1xuICAgIC9cXGRcXC5cXGRcXC4qXFxkKi8udGVzdCh2ZXJzaW9uKS5zaG91bGQuYmUudHJ1ZTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBnZXQgdGhlIHBhdGggYW5kIHZlcnNpb24gYWdhaW4sIHRoZXNlIHZhbHVlcyBhcmUgY2FjaGVkJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuXG4gICAgYXdhaXQgeGNvZGUuZ2V0UGF0aCgpO1xuICAgIGF3YWl0IHhjb2RlLmdldFZlcnNpb24oKTtcblxuICAgIGxldCBiZWZvcmUgPSBuZXcgRGF0ZSgpO1xuICAgIGxldCBwYXRoID0gYXdhaXQgeGNvZGUuZ2V0UGF0aCgpO1xuICAgIGxldCBhZnRlciA9IG5ldyBEYXRlKCk7XG5cbiAgICBzaG91bGQuZXhpc3QocGF0aCk7XG4gICAgYXdhaXQgZmlsZUV4aXN0cyhwYXRoKTtcbiAgICAoYWZ0ZXItYmVmb3JlKS5zaG91bGQuYmUuYXQubW9zdCgyKTtcblxuICAgIGJlZm9yZSA9IG5ldyBEYXRlKCk7XG4gICAgbGV0IHZlcnNpb24gPSBhd2FpdCB4Y29kZS5nZXRWZXJzaW9uKCk7XG4gICAgYWZ0ZXIgPSBuZXcgRGF0ZSgpO1xuXG4gICAgc2hvdWxkLmV4aXN0KHZlcnNpb24pO1xuICAgIF8uaXNTdHJpbmcodmVyc2lvbikuc2hvdWxkLmJlLnRydWU7XG4gICAgL1xcZFxcLlxcZFxcLipcXGQqLy50ZXN0KHZlcnNpb24pLnNob3VsZC5iZS50cnVlO1xuICAgIChhZnRlci1iZWZvcmUpLnNob3VsZC5iZS5hdC5tb3N0KDIpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY2xlYXIgdGhlIGNhY2hlIGlmIGFza2VkIHRvJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuXG4gICAgeGNvZGUuY2xlYXJJbnRlcm5hbENhY2hlKCk7XG5cbiAgICBsZXQgYmVmb3JlID0gbmV3IERhdGUoKTtcbiAgICBhd2FpdCB4Y29kZS5nZXRQYXRoKCk7XG4gICAgbGV0IGFmdGVyID0gbmV3IERhdGUoKTtcbiAgICAoYWZ0ZXItYmVmb3JlKS5zaG91bGQuYmUuYXQubGVhc3QoNyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBmaW5kIHRoZSBhdXRvbWF0aW9uIHRyYWNlIHRlbXBsYXRlJywgYXN5bmMgKCkgPT4ge1xuICAgIGxldCBwYXRoID0gYXdhaXQgeGNvZGUuZ2V0QXV0b21hdGlvblRyYWNlVGVtcGxhdGVQYXRoKCk7XG5cbiAgICBzaG91bGQuZXhpc3QocGF0aCk7XG4gICAgZmlsZUV4aXN0cyhwYXRoKS5zaG91bGQuZXZlbnR1YWxseS5iZS50cnVlO1xuICAgIGxldCBzdWZmaXggPSBcIi50cmFjZXRlbXBsYXRlXCI7XG4gICAgcGF0aC5zbGljZSgtc3VmZml4Lmxlbmd0aCkuc2hvdWxkLmVxdWFsKHN1ZmZpeCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZ2V0IG1heCBpT1MgU0RLIHZlcnNpb24nLCBhc3luYygpID0+IHtcbiAgICBsZXQgdmVyc2lvbiA9IGF3YWl0IHhjb2RlLmdldE1heElPU1NESygpO1xuXG4gICAgc2hvdWxkLmV4aXN0KHZlcnNpb24pO1xuICAgICh0eXBlb2YgdmVyc2lvbikuc2hvdWxkLmVxdWFsKCdzdHJpbmcnKTtcbiAgICAocGFyc2VGbG9hdCh2ZXJzaW9uKS02LjEpLnNob3VsZC5iZS5hdC5sZWFzdCgwKTtcbiAgfSk7XG5cbn0pO1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,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LE9BQU8sQ0FBQyxDQUFDO0FBQ3RCLFdBQUMsT0FBTyxPQUFPLENBQUEsQ0FBRSxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7Ozs7O0dBQ3pDLENBQUMsQ0FBQztDQUVKLENBQUMsQ0FBQyIsImZpbGUiOiJ0ZXN0L3hjb2RlLXNwZWNzLmpzIiwic291cmNlc0NvbnRlbnQiOlsicmVxdWlyZSgnc291cmNlLW1hcC1zdXBwb3J0JykuaW5zdGFsbCgpO1xuXG5pbXBvcnQgKiBhcyB4Y29kZSBmcm9tICcuLi9saWIveGNvZGUnO1xuaW1wb3J0IGNoYWkgZnJvbSAnY2hhaSc7XG5pbXBvcnQgY2hhaUFzUHJvbWlzZWQgZnJvbSAnY2hhaS1hcy1wcm9taXNlZCc7XG5pbXBvcnQgJ21vY2hhd2FpdCc7XG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGRlbm9kZWlmeSBmcm9tICdkZW5vZGVpZnknO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxubGV0IHNob3VsZCA9IGNoYWkuc2hvdWxkKCk7XG5jaGFpLnVzZShjaGFpQXNQcm9taXNlZCk7XG5cbmxldCBmaWxlRXhpc3RzID0gZGVub2RlaWZ5KGZzLnN0YXQpO1xuXG5kZXNjcmliZSgneGNvZGUgQHNraXAtbGludXgnLCAoKSA9PiB7XG5cbiAgaXQoJ3Nob3VsZCBnZXQgdGhlIHBhdGggdG8geGNvZGUgZXhlY3V0YWJsZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcblxuICAgIGxldCBwYXRoID0gYXdhaXQgeGNvZGUuZ2V0UGF0aCgpO1xuICAgIHNob3VsZC5leGlzdChwYXRoKTtcbiAgICBhd2FpdCBmaWxlRXhpc3RzKHBhdGgpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZ2V0IHRoZSB2ZXJzaW9uIG9mIHhjb2RlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuXG4gICAgbGV0IHZlcnNpb24gPSBhd2FpdCB4Y29kZS5nZXRWZXJzaW9uKCk7XG4gICAgc2hvdWxkLmV4aXN0KHZlcnNpb24pO1xuICAgIF8uaXNTdHJpbmcodmVyc2lvbikuc2hvdWxkLmJlLnRydWU7XG4gICAgL1xcZFxcLlxcZFxcLipcXGQqLy50ZXN0KHZlcnNpb24pLnNob3VsZC5iZS50cnVlO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGdldCB0aGUgcGF0aCBhbmQgdmVyc2lvbiBhZ2FpbiwgdGhlc2UgdmFsdWVzIGFyZSBjYWNoZWQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG5cbiAgICBhd2FpdCB4Y29kZS5nZXRQYXRoKCk7XG4gICAgYXdhaXQgeGNvZGUuZ2V0VmVyc2lvbigpO1xuXG4gICAgbGV0IGJlZm9yZSA9IG5ldyBEYXRlKCk7XG4gICAgbGV0IHBhdGggPSBhd2FpdCB4Y29kZS5nZXRQYXRoKCk7XG4gICAgbGV0IGFmdGVyID0gbmV3IERhdGUoKTtcblxuICAgIHNob3VsZC5leGlzdChwYXRoKTtcbiAgICBhd2FpdCBmaWxlRXhpc3RzKHBhdGgpO1xuICAgIChhZnRlci1iZWZvcmUpLnNob3VsZC5iZS5hdC5tb3N0KDIpO1xuXG4gICAgYmVmb3JlID0gbmV3IERhdGUoKTtcbiAgICBsZXQgdmVyc2lvbiA9IGF3YWl0IHhjb2RlLmdldFZlcnNpb24oKTtcbiAgICBhZnRlciA9IG5ldyBEYXRlKCk7XG5cbiAgICBzaG91bGQuZXhpc3QodmVyc2lvbik7XG4gICAgXy5pc1N0cmluZyh2ZXJzaW9uKS5zaG91bGQuYmUudHJ1ZTtcbiAgICAvXFxkXFwuXFxkXFwuKlxcZCovLnRlc3QodmVyc2lvbikuc2hvdWxkLmJlLnRydWU7XG4gICAgKGFmdGVyLWJlZm9yZSkuc2hvdWxkLmJlLmF0Lm1vc3QoMik7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBjbGVhciB0aGUgY2FjaGUgaWYgYXNrZWQgdG8nLCBhc3luYyBmdW5jdGlvbiAoKSB7XG5cbiAgICB4Y29kZS5jbGVhckludGVybmFsQ2FjaGUoKTtcblxuICAgIGxldCBiZWZvcmUgPSBuZXcgRGF0ZSgpO1xuICAgIGF3YWl0IHhjb2RlLmdldFBhdGgoKTtcbiAgICBsZXQgYWZ0ZXIgPSBuZXcgRGF0ZSgpO1xuICAgIChhZnRlci1iZWZvcmUpLnNob3VsZC5iZS5hdC5sZWFzdCg3KTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIGZpbmQgdGhlIGF1dG9tYXRpb24gdHJhY2UgdGVtcGxhdGUnLCBhc3luYyAoKSA9PiB7XG4gICAgbGV0IHBhdGggPSBhd2FpdCB4Y29kZS5nZXRBdXRvbWF0aW9uVHJhY2VUZW1wbGF0ZVBhdGgoKTtcblxuICAgIHNob3VsZC5leGlzdChwYXRoKTtcbiAgICBmaWxlRXhpc3RzKHBhdGgpLnNob3VsZC5ldmVudHVhbGx5LmJlLnRydWU7XG4gICAgbGV0IHN1ZmZpeCA9IFwiLnRyYWNldGVtcGxhdGVcIjtcbiAgICBwYXRoLnNsaWNlKC1zdWZmaXgubGVuZ3RoKS5zaG91bGQuZXF1YWwoc3VmZml4KTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBnZXQgbWF4IGlPUyBTREsgdmVyc2lvbicsIGFzeW5jKCkgPT4ge1xuICAgIGxldCB2ZXJzaW9uID0gYXdhaXQgeGNvZGUuZ2V0TWF4SU9TU0RLKCk7XG5cbiAgICBzaG91bGQuZXhpc3QodmVyc2lvbik7XG4gICAgKHR5cGVvZiB2ZXJzaW9uKS5zaG91bGQuZXF1YWwoJ3N0cmluZycpO1xuICAgIChwYXJzZUZsb2F0KHZlcnNpb24pLTYuMSkuc2hvdWxkLmJlLmF0LmxlYXN0KDApO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGdldCBhIGxpc3Qgb2YgaU9TIGRldmljZXMnLCBhc3luYygpID0+IHtcbiAgICBsZXQgZGV2aWNlcyA9IGF3YWl0IHhjb2RlLmdldENvbm5lY3RlZERldmljZXMoKTtcbiAgICBzaG91bGQuZXhpc3QoZGV2aWNlcyk7XG4gICAgKHR5cGVvZiBkZXZpY2VzKS5zaG91bGQuZXF1YWwoJ29iamVjdCcpO1xuICB9KTtcblxufSk7XG4iXX0= |
@@ -8,2 +8,3 @@ import npmlog from 'npmlog'; | ||
import _ from 'lodash'; | ||
import plist from 'plist'; | ||
@@ -173,4 +174,2 @@ const exec = support.core.exec; | ||
// TODO remove this function. should really just be using 'getVersion()' everywhere. | ||
// This was added for tech-debt backwards compatibility | ||
async function getMaxIOSSDKWithoutRetry () { | ||
@@ -203,2 +202,32 @@ | ||
async function getConnectedDevices () { | ||
let [stdout] = await exec('/usr/sbin/system_profiler -xml SPUSBDataType', | ||
{maxBuffer: 524288, timeout: XCODE_SELECT_TIMEOUT}); | ||
let plistContent = plist.parse(stdout); | ||
let devicesFound = []; | ||
let entriesToSearch = [plistContent[0]]; | ||
while (entriesToSearch.length > 0) { | ||
let currentEntry = entriesToSearch.pop(); | ||
if (currentEntry instanceof Array) { | ||
entriesToSearch = entriesToSearch.concat(currentEntry); | ||
} else if ((currentEntry._name && | ||
currentEntry._name.substring(0, 4) === "iPad") || | ||
(currentEntry._name && | ||
currentEntry._name.substring(0, 6) === "iPhone")) { | ||
let deviceInfo = { | ||
name: currentEntry._name, | ||
udid: currentEntry.serial_num, | ||
productId: currentEntry.product_id, | ||
deviceVersion: currentEntry.bcd_device | ||
}; | ||
devicesFound.push(deviceInfo); | ||
} else if (currentEntry._items) { | ||
entriesToSearch = entriesToSearch.concat(currentEntry._items); | ||
} | ||
} | ||
return devicesFound; | ||
} | ||
function clearInternalCache () { | ||
@@ -221,2 +250,2 @@ | ||
getAutomationTraceTemplatePathWithoutRetry, getMaxIOSSDKWithoutRetry, | ||
clearInternalCache }; | ||
getConnectedDevices, clearInternalCache }; |
@@ -7,3 +7,3 @@ { | ||
], | ||
"version": "2.0.2", | ||
"version": "2.0.3", | ||
"author": "appium", | ||
@@ -33,2 +33,3 @@ "license": "Apache License 2.0", | ||
"npmlog": "^1.2.0", | ||
"plist": "^1.1.0", | ||
"q": "^1.2.0", | ||
@@ -35,0 +36,0 @@ "source-map-support": "^0.2.10" |
appium-xcode | ||
=================== | ||
Work in progress, stay tuned! | ||
ES7 module for interacting with Xcode and Xcode-related functions. | ||
Used by [Appium](github.com/appium/appium) | ||
API | ||
=== | ||
All functions are `async`, meaning they return promises which can be awaited via `await`. | ||
Most functions are memoized, so after they are called once, they will simply return the same value. Remember that calling `require()` multiple times returns the same instantiation of a module if it has already been instantiated, so the memoization will be preserved across multiple files in the same project. | ||
Some functions have an auto-retry built into them, they will retry silently a number of times. This is because the Xcode commands sometimes just flake and return bad values (or don't return). | ||
To clear the memoized values, call `clearInternalCache` | ||
### getPath() | ||
*memoized* | ||
gets path to Xcode | ||
### getVersion([num_retries]) | ||
*memoized*, *retry* | ||
returns the version of Xcode. Returns strings like `'6.3.1'` | ||
### getAutomationTraceTemplatePath([num_retries]) | ||
*memoized, *retry* | ||
returns a path to the default AutomationTraceTemplate | ||
### getAutomationTraceTemplatePathWithoutRetry() | ||
same as `getAutomationTraceTemplatePath()` but without retry or memoization. | ||
### getMaxIOSSDK([num_retries]) | ||
*memoized*, *retry* | ||
returns largest IOS SDK version supported by Xcode. | ||
eg: `'8.3'` | ||
### getMaxIOSSDKWithoutRetry() | ||
same as `getMaxIOSDK()` but without retry or memoization | ||
### clearInternalCache() | ||
clears the internal cache used for memoizing functions. | ||
Develop | ||
======= | ||
## Watch | ||
@@ -7,0 +54,0 @@ |
@@ -86,2 +86,8 @@ // transpile:mocha | ||
it('should get a list of iOS devices', async() => { | ||
let devices = await xcode.getConnectedDevices(); | ||
should.exist(devices); | ||
(typeof devices).should.equal('object'); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
135458
783
64
9
+ Addedplist@^1.1.0
+ Addedbase64-js@0.0.8(transitive)
+ Addedplist@1.2.0(transitive)
+ Addedxmlbuilder@4.0.0(transitive)
+ Addedxmldom@0.1.31(transitive)