Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@interactjs/core

Package Overview
Dependencies
Maintainers
2
Versions
137
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@interactjs/core - npm Package Compare versions

Comparing version 1.4.0-rc.6 to 1.4.0-rc.7

6

package.json
{
"name": "@interactjs/core",
"version": "1.4.0-rc.6",
"version": "1.4.0-rc.7",
"peerDependencies": {
"@interactjs/dev-tools": "1.4.0-rc.6",
"@interactjs/utils": "1.4.0-rc.6"
"@interactjs/dev-tools": "1.4.0-rc.7",
"@interactjs/utils": "1.4.0-rc.7"
},

@@ -8,0 +8,0 @@ "publishConfig": {

@@ -172,3 +172,3 @@ import * as utils from '@interactjs/utils';

events.init(window);
interactions.install(scope);
scope.usePlugin(interactions);
scope.document = window.document;

@@ -178,2 +178,2 @@ scope.window = window;

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzY29wZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssS0FBSyxNQUFNLG1CQUFtQixDQUFBO0FBQzFDLE9BQU8sVUFBVSxNQUFNLDhCQUE4QixDQUFBO0FBQ3JELE9BQU8sUUFBUSxNQUFNLGtCQUFrQixDQUFBO0FBQ3ZDLE9BQU8sU0FBUyxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLGdCQUFnQixNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFBO0FBQzNDLE9BQU8sWUFBWSxNQUFNLGdCQUFnQixDQUFBO0FBRXpDLE1BQU0sRUFDSixHQUFHLEVBQ0gsT0FBTyxFQUNQLEdBQUcsRUFDSCxPQUFPLEVBQ1AsTUFBTSxHQUNQLEdBQUcsS0FBSyxDQUFBO0FBRVQsTUFBTSxDQUFOLElBQVksVUFDWDtBQURELFdBQVksVUFBVTtBQUN0QixDQUFDLEVBRFcsVUFBVSxLQUFWLFVBQVUsUUFDckI7QUFRRCxNQUFNLFVBQVUsV0FBVztJQUN6QixPQUFPLElBQUksS0FBSyxFQUFFLENBQUE7QUFDcEIsQ0FBQztBQVVELE1BQU0sT0FBTyxLQUFLO0lBaUNoQjtRQWhDQSxnQkFBZ0I7UUFDaEIsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7UUFDdkIsWUFBTyxHQUFHLE9BQU8sQ0FBQTtRQUNqQixXQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ2YsVUFBSyxHQUFHLEtBQUssQ0FBQTtRQUNiLGFBQVEsR0FBYSxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBYSxDQUFBO1FBQ3RELGNBQVMsR0FBRyxTQUFTLENBQUE7UUFDckIsWUFBTyxHQUFZO1lBQ2pCLEtBQUssRUFBRSxFQUFFO1lBQ1QsVUFBVSxFQUFFLEVBQUU7WUFDZCxVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUE7UUFFRCxrQkFBYSxHQUFHLGFBQWEsQ0FBQTtRQUU3QixrQkFB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OlsiaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnQGludGVyYWN0anMvdXRpbHMnXG5pbXBvcnQgZG9tT2JqZWN0cyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9kb21PYmplY3RzJ1xuaW1wb3J0IGRlZmF1bHRzIGZyb20gJy4vZGVmYXVsdE9wdGlvbnMnXG5pbXBvcnQgRXZlbnRhYmxlIGZyb20gJy4vRXZlbnRhYmxlJ1xuaW1wb3J0IEludGVyYWN0YWJsZUJhc2UgZnJvbSAnLi9JbnRlcmFjdGFibGUnXG5pbXBvcnQgSW50ZXJhY3RFdmVudCBmcm9tICcuL0ludGVyYWN0RXZlbnQnXG5pbXBvcnQgaW50ZXJhY3Rpb25zIGZyb20gJy4vaW50ZXJhY3Rpb25zJ1xuXG5jb25zdCB7XG4gIHdpbixcbiAgYnJvd3NlcixcbiAgcmFmLFxuICBTaWduYWxzLFxuICBldmVudHMsXG59ID0gdXRpbHNcblxuZXhwb3J0IGVudW0gQWN0aW9uTmFtZSB7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9ucyB7XG4gIG5hbWVzOiBBY3Rpb25OYW1lW11cbiAgbWV0aG9kRGljdDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuICBldmVudFR5cGVzOiBzdHJpbmdbXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2NvcGUgKCkge1xuICByZXR1cm4gbmV3IFNjb3BlKClcbn1cblxuZXhwb3J0IHR5cGUgRGVmYXVsdHMgPSB0eXBlb2YgZGVmYXVsdHNcblxuZXhwb3J0IGludGVyZmFjZSBQbHVnaW4ge1xuICBpZD86IHN0cmluZ1xuICBpbnN0YWxsIChzY29wZTogU2NvcGUsIG9wdGlvbnM/OiBhbnkpOiB2b2lkXG4gIFtrZXk6IHN0cmluZ106IGFueVxufVxuXG5leHBvcnQgY2xhc3MgU2NvcGUge1xuICAvLyBGSVhNRSBTaWduYWxzXG4gIHNpZ25hbHMgPSBuZXcgU2lnbmFscygpXG4gIGJyb3dzZXIgPSBicm93c2VyXG4gIGV2ZW50cyA9IGV2ZW50c1xuICB1dGlscyA9IHV0aWxzXG4gIGRlZmF1bHRzOiBEZWZhdWx0cyA9IHV0aWxzLmNsb25lKGRlZmF1bHRzKSBhcyBEZWZhdWx0c1xuICBFdmVudGFibGUgPSBFdmVudGFibGVcbiAgYWN0aW9uczogQWN0aW9ucyA9IHtcbiAgICBuYW1lczogW10sXG4gICAgbWV0aG9kRGljdDoge30sXG4gICAgZXZlbnRUeXBlczogW10sXG4gIH1cblxuICBJbnRlcmFjdEV2ZW50ID0gSW50ZXJhY3RFdmVudFxuICBJbnRlcmFjdGFibGUhOiB0eXBlb2YgSW50ZXJhY3RhYmxlQmFzZVxuICBpbnRlcmFjdGFibGVzID0gbmV3IEludGVyYWN0YWJsZVNldCh0aGlzKVxuXG4gIC8vIG1haW4gd2luZG93XG4gIF93aW4hOiBXaW5kb3dcblxuICAvLyBtYWluIGRvY3VtZW50XG4gIGRvY3VtZW50ITogRG9jdW1lbnRcblxuICAvLyBtYWluIHdpbmRvd1xuICB3aW5kb3chOiBXaW5kb3dcblxuICAvLyBhbGwgZG9jdW1lbnRzIGJlaW5nIGxpc3RlbmVkIHRvXG4gIGRvY3VtZW50czogQXJyYXk8eyBkb2M6IERvY3VtZW50LCBvcHRpb25zOiBhbnkgfT4gPSBbXVxuXG4gIF9wbHVnaW5zOiBQbHVnaW5bXSA9IFtdXG4gIF9wbHVnaW5NYXA6IHsgW2lkOiBzdHJpbmddOiBQbHVnaW4gfSA9IHt9XG5cbiAgY29uc3RydWN0b3IgKCkge1xuICAgIGNvbnN0IHNjb3BlID0gdGhpcyBhcyBTY29wZTtcblxuICAgICh0aGlzIGFzIHsgSW50ZXJhY3RhYmxlOiB0eXBlb2YgSW50ZXJhY3RhYmxlQmFzZSB9KS5JbnRlcmFjdGFibGUgPSBjbGFzcyBJbnRlcmFjdGFibGUgZXh0ZW5kcyBJbnRlcmFjdGFibGVCYXNlIGltcGxlbWVudHMgSW50ZXJhY3RhYmxlQmFzZSB7XG4gICAgICBnZXQgX2RlZmF1bHRzICgpIHsgcmV0dXJuIHNjb3BlLmRlZmF1bHRzIH1cblxuICAgICAgc2V0IChvcHRpb25zOiBhbnkpIHtcbiAgICAgICAgc3VwZXIuc2V0KG9wdGlvbnMpXG5cbiAgICAgICAgc2NvcGUuaW50ZXJhY3RhYmxlcy5zaWduYWxzLmZpcmUoJ3NldCcsIHtcbiAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgIGludGVyYWN0YWJsZTogdGhpcyxcbiAgICAgICAgfSlcblxuICAgICAgICByZXR1cm4gdGhpc1xuICAgICAgfVxuXG4gICAgICB1bnNldCAoKSB7XG4gICAgICAgIHN1cGVyLnVuc2V0KClcbiAgICAgICAgc2NvcGUuaW50ZXJhY3RhYmxlcy5zaWduYWxzLmZpcmUoJ3Vuc2V0JywgeyBpbnRlcmFjdGFibGU6IHRoaXMgfSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbldpbmRvd1VubG9hZCA9IChldmVudDogQmVmb3JlVW5sb2FkRXZlbnQpID0+IHRoaXMucmVtb3ZlRG9jdW1lbnQoZXZlbnQudGFyZ2V0IGFzIERvY3VtZW50KVxuXG4gIGluaXQgKHdpbmRvdzogV2luZG93KSB7XG4gICAgcmV0dXJuIGluaXRTY29wZSh0aGlzLCB3aW5kb3cpXG4gIH1cblxuICBwbHVnaW5Jc0luc3RhbGxlZCAocGx1Z2luOiBQbHVnaW4pIHtcbiAgICByZXR1cm4gdGhpcy5fcGx1Z2luTWFwW3BsdWdpbi5pZF0gfHwgdGhpcy5fcGx1Z2lucy5pbmRleE9mKHBsdWdpbikgIT09IC0xXG4gIH1cblxuICB1c2VQbHVnaW4gKHBsdWdpbjogUGx1Z2luLCBvcHRpb25zPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgIGlmICh0aGlzLnBsdWdpbklzSW5zdGFsbGVkKHBsdWdpbikpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKHBsdWdpbi5pZCkgeyB0aGlzLl9wbHVnaW5NYXBbcGx1Z2luLmlkXSA9IHBsdWdpbiB9XG5cbiAgICBwbHVnaW4uaW5zdGFsbCh0aGlzLCBvcHRpb25zKVxuICAgIHRoaXMuX3BsdWdpbnMucHVzaChwbHVnaW4pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgYWRkRG9jdW1lbnQgKGRvYzogRG9jdW1lbnQsIG9wdGlvbnM/OiBhbnkpOiB2b2lkIHwgZmFsc2Uge1xuICAgIC8vIGRvIG5vdGhpbmcgaWYgZG9jdW1lbnQgaXMgYWxyZWFkeSBrbm93blxuICAgIGlmICh0aGlzLmdldERvY0luZGV4KGRvYykgIT09IC0xKSB7IHJldHVybiBmYWxzZSB9XG5cbiAgICBjb25zdCB3aW5kb3cgPSB3aW4uZ2V0V2luZG93KGRvYylcblxuICAgIG9wdGlvbnMgPSBvcHRpb25zID8gdXRpbHMuZXh0ZW5kKHt9LCBvcHRpb25zKSA6IHt9XG5cbiAgICB0aGlzLmRvY3VtZW50cy5wdXNoKHsgZG9jLCBvcHRpb25zIH0pXG4gICAgZXZlbnRzLmRvY3VtZW50cy5wdXNoKGRvYylcblxuICAgIC8vIGRvbid0IGFkZCBhbiB1bmxvYWQgZXZlbnQgZm9yIHRoZSBtYWluIGRvY3VtZW50XG4gICAgLy8gc28gdGhhdCB0aGUgcGFnZSBtYXkgYmUgY2FjaGVkIGluIGJyb3dzZXIgaGlzdG9yeVxuICAgIGlmIChkb2MgIT09IHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgIGV2ZW50cy5hZGQod2luZG93LCAndW5sb2FkJywgdGhpcy5vbldpbmRvd1VubG9hZClcbiAgICB9XG5cbiAgICB0aGlzLnNpZ25hbHMuZmlyZSgnYWRkLWRvY3VtZW50JywgeyBkb2MsIHdpbmRvdywgc2NvcGU6IHRoaXMsIG9wdGlvbnMgfSlcbiAgfVxuXG4gIHJlbW92ZURvY3VtZW50IChkb2M6IERvY3VtZW50KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmdldERvY0luZGV4KGRvYylcblxuICAgIGNvbnN0IHdpbmRvdyA9IHdpbi5nZXRXaW5kb3coZG9jKVxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmRvY3VtZW50c1tpbmRleF0ub3B0aW9uc1xuXG4gICAgZXZlbnRzLnJlbW92ZSh3aW5kb3csICd1bmxvYWQnLCB0aGlzLm9uV2luZG93VW5sb2FkKVxuXG4gICAgdGhpcy5kb2N1bWVudHMuc3BsaWNlKGluZGV4LCAxKVxuICAgIGV2ZW50cy5kb2N1bWVudHMuc3BsaWNlKGluZGV4LCAxKVxuXG4gICAgdGhpcy5zaWduYWxzLmZpcmUoJ3JlbW92ZS1kb2N1bWVudCcsIHsgZG9jLCB3aW5kb3csIHNjb3BlOiB0aGlzLCBvcHRpb25zIH0pXG4gIH1cblxuICBnZXREb2NJbmRleCAoZG9jOiBEb2N1bWVudCkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5kb2N1bWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmRvY3VtZW50c1tpXS5kb2MgPT09IGRvYykge1xuICAgICAgICByZXR1cm4gaVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAtMVxuICB9XG5cbiAgZ2V0RG9jT3B0aW9ucyAoZG9jOiBEb2N1bWVudCkge1xuICAgIGNvbnN0IGRvY0luZGV4ID0gdGhpcy5nZXREb2NJbmRleChkb2MpXG5cbiAgICByZXR1cm4gZG9jSW5kZXggPT09IC0xID8gbnVsbCA6IHRoaXMuZG9jdW1lbnRzW2RvY0luZGV4XS5vcHRpb25zXG4gIH1cblxuICBub3cgKCkge1xuICAgIHJldHVybiAoKHRoaXMud2luZG93IGFzIGFueSkuRGF0ZSBhcyB0eXBlb2YgRGF0ZSB8fCBEYXRlKS5ub3coKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGFibGVTZXQge1xuICBzaWduYWxzID0gbmV3IHV0aWxzLlNpZ25hbHMoKVxuXG4gIC8vIGFsbCBzZXQgaW50ZXJhY3RhYmxlc1xuICBsaXN0OiBJbnRlcmFjdGFibGVCYXNlW10gPSBbXVxuXG4gIGNvbnN0cnVjdG9yIChwcm90ZWN0ZWQgc2NvcGU6IFNjb3BlKSB7fVxuXG4gIG5ldyAodGFyZ2V0OiBJbnRlcmFjdC5UYXJnZXQsIG9wdGlvbnM/OiBhbnkpOiBJbnRlcmFjdGFibGVCYXNlIHtcbiAgICBvcHRpb25zID0gdXRpbHMuZXh0ZW5kKG9wdGlvbnMgfHwge30sIHtcbiAgICAgIGFjdGlvbnM6IHRoaXMuc2NvcGUuYWN0aW9ucyxcbiAgICB9KVxuICAgIGNvbnN0IGludGVyYWN0YWJsZSA9IG5ldyB0aGlzLnNjb3BlLkludGVyYWN0YWJsZSh0YXJnZXQsIG9wdGlvbnMsIHRoaXMuc2NvcGUuZG9jdW1lbnQpXG5cbiAgICB0aGlzLnNjb3BlLmFkZERvY3VtZW50KGludGVyYWN0YWJsZS5fZG9jKVxuICAgIHRoaXMubGlzdC5wdXNoKGludGVyYWN0YWJsZSlcblxuICAgIHRoaXMuc2lnbmFscy5maXJlKCduZXcnLCB7XG4gICAgICB0YXJnZXQsXG4gICAgICBvcHRpb25zLFxuICAgICAgaW50ZXJhY3RhYmxlLFxuICAgICAgd2luOiB0aGlzLnNjb3BlLl93aW4sXG4gICAgfSlcblxuICAgIHJldHVybiBpbnRlcmFjdGFibGVcbiAgfVxuXG4gIGluZGV4T2ZFbGVtZW50ICh0YXJnZXQ6IEludGVyYWN0LlRhcmdldCwgY29udGV4dDogRG9jdW1lbnQgfCBFbGVtZW50KSB7XG4gICAgY29udGV4dCA9IGNvbnRleHQgfHwgdGhpcy5zY29wZS5kb2N1bWVudFxuXG4gICAgY29uc3QgbGlzdCA9IHRoaXMubGlzdFxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBpbnRlcmFjdGFibGUgPSBsaXN0W2ldXG5cbiAgICAgIGlmIChpbnRlcmFjdGFibGUudGFyZ2V0ID09PSB0YXJnZXQgJiYgaW50ZXJhY3RhYmxlLl9jb250ZXh0ID09PSBjb250ZXh0KSB7XG4gICAgICAgIHJldHVybiBpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIC0xXG4gIH1cblxuICBnZXQgKGVsZW1lbnQ6IEludGVyYWN0LlRhcmdldCwgb3B0aW9ucywgZG9udENoZWNrSW5Db250ZXh0PzogYm9vbGVhbikge1xuICAgIGNvbnN0IHJldCA9IHRoaXMubGlzdFt0aGlzLmluZGV4T2ZFbGVtZW50KGVsZW1lbnQsIG9wdGlvbnMgJiYgb3B0aW9ucy5jb250ZXh0KV1cblxuICAgIHJldHVybiByZXQgJiYgKHV0aWxzLmlzLnN0cmluZyhlbGVtZW50KSB8fCBkb250Q2hlY2tJbkNvbnRleHQgfHwgcmV0LmluQ29udGV4dChlbGVtZW50KSkgPyByZXQgOiBudWxsXG4gIH1cblxuICBmb3JFYWNoTWF0Y2ggKGVsZW1lbnQ6IERvY3VtZW50IHwgRWxlbWVudCwgY2FsbGJhY2s6IChpbnRlcmFjdGFibGU6IGFueSkgPT4gYW55KSB7XG4gICAgZm9yIChjb25zdCBpbnRlcmFjdGFibGUgb2YgdGhpcy5saXN0KSB7XG4gICAgICBsZXQgcmV0XG5cbiAgICAgIGlmICgodXRpbHMuaXMuc3RyaW5nKGludGVyYWN0YWJsZS50YXJnZXQpXG4gICAgICAvLyB0YXJnZXQgaXMgYSBzZWxlY3RvciBhbmQgdGhlIGVsZW1lbnQgbWF0Y2hlc1xuICAgICAgICA/ICh1dGlscy5pcy5lbGVtZW50KGVsZW1lbnQpICYmIHV0aWxzLmRvbS5tYXRjaGVzU2VsZWN0b3IoZWxlbWVudCwgaW50ZXJhY3RhYmxlLnRhcmdldCkpXG4gICAgICAgIC8vIHRhcmdldCBpcyB0aGUgZWxlbWVudFxuICAgICAgICA6IGVsZW1lbnQgPT09IGludGVyYWN0YWJsZS50YXJnZXQpICYmXG4gICAgICAgIC8vIHRoZSBlbGVtZW50IGlzIGluIGNvbnRleHRcbiAgICAgICAgKGludGVyYWN0YWJsZS5pbkNvbnRleHQoZWxlbWVudCkpKSB7XG4gICAgICAgIHJldCA9IGNhbGxiYWNrKGludGVyYWN0YWJsZSlcbiAgICAgIH1cblxuICAgICAgaWYgKHJldCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiByZXRcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRTY29wZSAoc2NvcGU6IFNjb3BlLCB3aW5kb3c6IFdpbmRvdykge1xuICB3aW4uaW5pdCh3aW5kb3cpXG4gIGRvbU9iamVjdHMuaW5pdCh3aW5kb3cpXG4gIGJyb3dzZXIuaW5pdCh3aW5kb3cpXG4gIHJhZi5pbml0KHdpbmRvdylcbiAgZXZlbnRzLmluaXQod2luZG93KVxuXG4gIGludGVyYWN0aW9ucy5pbnN0YWxsKHNjb3BlKVxuICBzY29wZS5kb2N1bWVudCA9IHdpbmRvdy5kb2N1bWVudFxuICBzY29wZS53aW5kb3cgPSB3aW5kb3dcblxuICByZXR1cm4gc2NvcGVcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzY29wZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssS0FBSyxNQUFNLG1CQUFtQixDQUFBO0FBQzFDLE9BQU8sVUFBVSxNQUFNLDhCQUE4QixDQUFBO0FBQ3JELE9BQU8sUUFBUSxNQUFNLGtCQUFrQixDQUFBO0FBQ3ZDLE9BQU8sU0FBUyxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLGdCQUFnQixNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFBO0FBQzNDLE9BQU8sWUFBWSxNQUFNLGdCQUFnQixDQUFBO0FBRXpDLE1BQU0sRUFDSixHQUFHLEVBQ0gsT0FBTyxFQUNQLEdBQUcsRUFDSCxPQUFPLEVBQ1AsTUFBTSxHQUNQLEdBQUcsS0FBSyxDQUFBO0FBRVQsTUFBTSxDQUFOLElBQVksVUFDWDtBQURELFdBQVksVUFBVTtBQUN0QixDQUFDLEVBRFcsVUFBVSxLQUFWLFVBQVUsUUFDckI7QUFRRCxNQUFNLFVBQVUsV0FBVztJQUN6QixPQUFPLElBQUksS0FBSyxFQUFFLENBQUE7QUFDcEIsQ0FBQztBQVVELE1BQU0sT0FBTyxLQUFLO0lBaUNoQjtRQWhDQSxnQkFBZ0I7UUFDaEIsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7UUFDdkIsWUFBTyxHQUFHLE9BQU8sQ0FBQTtRQUNqQixXQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ2YsVUFBSyxHQUFHLEtBQUssQ0FBQTtRQUNiLGFBQVEsR0FBYSxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBYSxDQUFBO1FBQ3RELGNBQVMsR0FBRyxTQUFTLENBQUE7UUFDckIsWUFBTyxHQUFZO1lBQ2pCLEtBQUssRUFBRSxFQUFFO1lBQ1QsVUFBVSxFQUFFLEVBQUU7WUFDZCxVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUE7UUFFRCxrQkFBYSxHQUFHLGFBQWEsQ0FBQTtRQUU3QixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBV3pDLGtDQUFrQztRQUNsQyxjQUFTLEdBQTJDLEVBQUUsQ0FBQTtRQUV0RCxhQUFRLEdBQWEsRUFBRSxDQUFBO1FBQ3ZCLGVBQVUsR0FBNkIsRUFBRSxDQUFBO1FBMEJ6QyxtQkFBYyxHQUFHLENBQUMsS0FBd0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsTUFBa0IsQ0FBQyxDQUFBO1FBdkIxRixNQUFNLEtBQUssR0FBRyxJQUFhLENBQUM7UUFFM0IsSUFBa0QsQ0FBQyxZQUFZLEdBQUcsTUFBTSxZQUFhLFNBQVEsZ0JBQWdCO1lBQzVHLElBQUksU0FBUyxLQUFNLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQSxDQUFDLENBQUM7WUFFMUMsR0FBRyxDQUFFLE9BQVk7Z0JBQ2YsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQkFFbEIsS0FBSyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDdEMsT0FBTztvQkFDUCxZQUFZLEVBQUUsSUFBSTtpQkFDbkIsQ0FBQyxDQUFBO2dCQUVGLE9BQU8sSUFBSSxDQUFBO1lBQ2IsQ0FBQztZQUVELEtBQUs7Z0JBQ0gsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFBO2dCQUNiLEtBQUssQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUNuRSxDQUFDO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFJRCxJQUFJLENBQUUsTUFBYztRQUNsQixPQUFPLFNBQVMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQUVELGlCQUFpQixDQUFFLE1BQWM7UUFDL0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsU0FBUyxDQUFFLE1BQWMsRUFBRSxPQUFnQztRQUN6RCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQyxPQUFPLElBQUksQ0FBQTtTQUNaO1FBRUQsSUFBSSxNQUFNLENBQUMsRUFBRSxFQUFFO1lBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFBO1NBQUU7UUFFdEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFMUIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsV0FBVyxDQUFFLEdBQWEsRUFBRSxPQUFhO1FBQ3ZDLDBDQUEwQztRQUMxQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFBRSxPQUFPLEtBQUssQ0FBQTtTQUFFO1FBRWxELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFakMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtRQUVsRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFBO1FBQ3JDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRTFCLGtEQUFrRDtRQUNsRCxvREFBb0Q7UUFDcEQsSUFBSSxHQUFHLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN6QixNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1NBQ2xEO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUE7SUFDMUUsQ0FBQztJQUVELGNBQWMsQ0FBRSxHQUFhO1FBQzNCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFbkMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNqQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQTtRQUU3QyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBRXBELElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUMvQixNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUM3RSxDQUFDO0lBRUQsV0FBVyxDQUFFLEdBQWE7UUFDeEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzlDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFO2dCQUNqQyxPQUFPLENBQUMsQ0FBQTthQUNUO1NBQ0Y7UUFFRCxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBQ1gsQ0FBQztJQUVELGFBQWEsQ0FBRSxHQUFhO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFdEMsT0FBTyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUE7SUFDbEUsQ0FBQztJQUVELEdBQUc7UUFDRCxPQUFPLENBQUUsSUFBSSxDQUFDLE1BQWMsQ0FBQyxJQUFtQixJQUFJLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFBO0lBQ2pFLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxlQUFlO0lBTTFCLFlBQXVCLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBTG5DLFlBQU8sR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUU3Qix3QkFBd0I7UUFDeEIsU0FBSSxHQUF1QixFQUFFLENBQUE7SUFFUyxDQUFDO0lBRXZDLEdBQUcsQ0FBRSxNQUF1QixFQUFFLE9BQWE7UUFDekMsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRTtZQUNwQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO1NBQzVCLENBQUMsQ0FBQTtRQUNGLE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRXRGLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUU1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdkIsTUFBTTtZQUNOLE9BQU87WUFDUCxZQUFZO1lBQ1osR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSTtTQUNyQixDQUFDLENBQUE7UUFFRixPQUFPLFlBQVksQ0FBQTtJQUNyQixDQUFDO0lBRUQsY0FBYyxDQUFFLE1BQXVCLEVBQUUsT0FBMkI7UUFDbEUsT0FBTyxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQTtRQUV4QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFBO1FBRXRCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUU1QixJQUFJLFlBQVksQ0FBQyxNQUFNLEtBQUssTUFBTSxJQUFJLFlBQVksQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFO2dCQUN2RSxPQUFPLENBQUMsQ0FBQTthQUNUO1NBQ0Y7UUFFRCxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBQ1gsQ0FBQztJQUVELEdBQUcsQ0FBRSxPQUF3QixFQUFFLE9BQU8sRUFBRSxrQkFBNEI7UUFDbEUsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFFL0UsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxrQkFBa0IsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFBO0lBQ3ZHLENBQUM7SUFFRCxZQUFZLENBQUUsT0FBMkIsRUFBRSxRQUFvQztRQUM3RSxLQUFLLE1BQU0sWUFBWSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDcEMsSUFBSSxHQUFHLENBQUE7WUFFUCxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQztnQkFDekMsK0NBQStDO2dCQUM3QyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4Rix3QkFBd0I7Z0JBQ3hCLENBQUMsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLE1BQU0sQ0FBQztnQkFDbEMsNEJBQTRCO2dCQUM1QixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRTtnQkFDbkMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQTthQUM3QjtZQUVELElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtnQkFDckIsT0FBTyxHQUFHLENBQUE7YUFDWDtTQUNGO0lBQ0gsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FBRSxLQUFZLEVBQUUsTUFBYztJQUNyRCxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNwQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFbkIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUM3QixLQUFLLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUE7SUFDaEMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7SUFFckIsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnQGludGVyYWN0anMvdXRpbHMnXG5pbXBvcnQgZG9tT2JqZWN0cyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9kb21PYmplY3RzJ1xuaW1wb3J0IGRlZmF1bHRzIGZyb20gJy4vZGVmYXVsdE9wdGlvbnMnXG5pbXBvcnQgRXZlbnRhYmxlIGZyb20gJy4vRXZlbnRhYmxlJ1xuaW1wb3J0IEludGVyYWN0YWJsZUJhc2UgZnJvbSAnLi9JbnRlcmFjdGFibGUnXG5pbXBvcnQgSW50ZXJhY3RFdmVudCBmcm9tICcuL0ludGVyYWN0RXZlbnQnXG5pbXBvcnQgaW50ZXJhY3Rpb25zIGZyb20gJy4vaW50ZXJhY3Rpb25zJ1xuXG5jb25zdCB7XG4gIHdpbixcbiAgYnJvd3NlcixcbiAgcmFmLFxuICBTaWduYWxzLFxuICBldmVudHMsXG59ID0gdXRpbHNcblxuZXhwb3J0IGVudW0gQWN0aW9uTmFtZSB7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9ucyB7XG4gIG5hbWVzOiBBY3Rpb25OYW1lW11cbiAgbWV0aG9kRGljdDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuICBldmVudFR5cGVzOiBzdHJpbmdbXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2NvcGUgKCkge1xuICByZXR1cm4gbmV3IFNjb3BlKClcbn1cblxuZXhwb3J0IHR5cGUgRGVmYXVsdHMgPSB0eXBlb2YgZGVmYXVsdHNcblxuZXhwb3J0IGludGVyZmFjZSBQbHVnaW4ge1xuICBpZD86IHN0cmluZ1xuICBpbnN0YWxsIChzY29wZTogU2NvcGUsIG9wdGlvbnM/OiBhbnkpOiB2b2lkXG4gIFtrZXk6IHN0cmluZ106IGFueVxufVxuXG5leHBvcnQgY2xhc3MgU2NvcGUge1xuICAvLyBGSVhNRSBTaWduYWxzXG4gIHNpZ25hbHMgPSBuZXcgU2lnbmFscygpXG4gIGJyb3dzZXIgPSBicm93c2VyXG4gIGV2ZW50cyA9IGV2ZW50c1xuICB1dGlscyA9IHV0aWxzXG4gIGRlZmF1bHRzOiBEZWZhdWx0cyA9IHV0aWxzLmNsb25lKGRlZmF1bHRzKSBhcyBEZWZhdWx0c1xuICBFdmVudGFibGUgPSBFdmVudGFibGVcbiAgYWN0aW9uczogQWN0aW9ucyA9IHtcbiAgICBuYW1lczogW10sXG4gICAgbWV0aG9kRGljdDoge30sXG4gICAgZXZlbnRUeXBlczogW10sXG4gIH1cblxuICBJbnRlcmFjdEV2ZW50ID0gSW50ZXJhY3RFdmVudFxuICBJbnRlcmFjdGFibGUhOiB0eXBlb2YgSW50ZXJhY3RhYmxlQmFzZVxuICBpbnRlcmFjdGFibGVzID0gbmV3IEludGVyYWN0YWJsZVNldCh0aGlzKVxuXG4gIC8vIG1haW4gd2luZG93XG4gIF93aW4hOiBXaW5kb3dcblxuICAvLyBtYWluIGRvY3VtZW50XG4gIGRvY3VtZW50ITogRG9jdW1lbnRcblxuICAvLyBtYWluIHdpbmRvd1xuICB3aW5kb3chOiBXaW5kb3dcblxuICAvLyBhbGwgZG9jdW1lbnRzIGJlaW5nIGxpc3RlbmVkIHRvXG4gIGRvY3VtZW50czogQXJyYXk8eyBkb2M6IERvY3VtZW50LCBvcHRpb25zOiBhbnkgfT4gPSBbXVxuXG4gIF9wbHVnaW5zOiBQbHVnaW5bXSA9IFtdXG4gIF9wbHVnaW5NYXA6IHsgW2lkOiBzdHJpbmddOiBQbHVnaW4gfSA9IHt9XG5cbiAgY29uc3RydWN0b3IgKCkge1xuICAgIGNvbnN0IHNjb3BlID0gdGhpcyBhcyBTY29wZTtcblxuICAgICh0aGlzIGFzIHsgSW50ZXJhY3RhYmxlOiB0eXBlb2YgSW50ZXJhY3RhYmxlQmFzZSB9KS5JbnRlcmFjdGFibGUgPSBjbGFzcyBJbnRlcmFjdGFibGUgZXh0ZW5kcyBJbnRlcmFjdGFibGVCYXNlIGltcGxlbWVudHMgSW50ZXJhY3RhYmxlQmFzZSB7XG4gICAgICBnZXQgX2RlZmF1bHRzICgpIHsgcmV0dXJuIHNjb3BlLmRlZmF1bHRzIH1cblxuICAgICAgc2V0IChvcHRpb25zOiBhbnkpIHtcbiAgICAgICAgc3VwZXIuc2V0KG9wdGlvbnMpXG5cbiAgICAgICAgc2NvcGUuaW50ZXJhY3RhYmxlcy5zaWduYWxzLmZpcmUoJ3NldCcsIHtcbiAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgIGludGVyYWN0YWJsZTogdGhpcyxcbiAgICAgICAgfSlcblxuICAgICAgICByZXR1cm4gdGhpc1xuICAgICAgfVxuXG4gICAgICB1bnNldCAoKSB7XG4gICAgICAgIHN1cGVyLnVuc2V0KClcbiAgICAgICAgc2NvcGUuaW50ZXJhY3RhYmxlcy5zaWduYWxzLmZpcmUoJ3Vuc2V0JywgeyBpbnRlcmFjdGFibGU6IHRoaXMgfSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbldpbmRvd1VubG9hZCA9IChldmVudDogQmVmb3JlVW5sb2FkRXZlbnQpID0+IHRoaXMucmVtb3ZlRG9jdW1lbnQoZXZlbnQudGFyZ2V0IGFzIERvY3VtZW50KVxuXG4gIGluaXQgKHdpbmRvdzogV2luZG93KSB7XG4gICAgcmV0dXJuIGluaXRTY29wZSh0aGlzLCB3aW5kb3cpXG4gIH1cblxuICBwbHVnaW5Jc0luc3RhbGxlZCAocGx1Z2luOiBQbHVnaW4pIHtcbiAgICByZXR1cm4gdGhpcy5fcGx1Z2luTWFwW3BsdWdpbi5pZF0gfHwgdGhpcy5fcGx1Z2lucy5pbmRleE9mKHBsdWdpbikgIT09IC0xXG4gIH1cblxuICB1c2VQbHVnaW4gKHBsdWdpbjogUGx1Z2luLCBvcHRpb25zPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgIGlmICh0aGlzLnBsdWdpbklzSW5zdGFsbGVkKHBsdWdpbikpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKHBsdWdpbi5pZCkgeyB0aGlzLl9wbHVnaW5NYXBbcGx1Z2luLmlkXSA9IHBsdWdpbiB9XG5cbiAgICBwbHVnaW4uaW5zdGFsbCh0aGlzLCBvcHRpb25zKVxuICAgIHRoaXMuX3BsdWdpbnMucHVzaChwbHVnaW4pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgYWRkRG9jdW1lbnQgKGRvYzogRG9jdW1lbnQsIG9wdGlvbnM/OiBhbnkpOiB2b2lkIHwgZmFsc2Uge1xuICAgIC8vIGRvIG5vdGhpbmcgaWYgZG9jdW1lbnQgaXMgYWxyZWFkeSBrbm93blxuICAgIGlmICh0aGlzLmdldERvY0luZGV4KGRvYykgIT09IC0xKSB7IHJldHVybiBmYWxzZSB9XG5cbiAgICBjb25zdCB3aW5kb3cgPSB3aW4uZ2V0V2luZG93KGRvYylcblxuICAgIG9wdGlvbnMgPSBvcHRpb25zID8gdXRpbHMuZXh0ZW5kKHt9LCBvcHRpb25zKSA6IHt9XG5cbiAgICB0aGlzLmRvY3VtZW50cy5wdXNoKHsgZG9jLCBvcHRpb25zIH0pXG4gICAgZXZlbnRzLmRvY3VtZW50cy5wdXNoKGRvYylcblxuICAgIC8vIGRvbid0IGFkZCBhbiB1bmxvYWQgZXZlbnQgZm9yIHRoZSBtYWluIGRvY3VtZW50XG4gICAgLy8gc28gdGhhdCB0aGUgcGFnZSBtYXkgYmUgY2FjaGVkIGluIGJyb3dzZXIgaGlzdG9yeVxuICAgIGlmIChkb2MgIT09IHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgIGV2ZW50cy5hZGQod2luZG93LCAndW5sb2FkJywgdGhpcy5vbldpbmRvd1VubG9hZClcbiAgICB9XG5cbiAgICB0aGlzLnNpZ25hbHMuZmlyZSgnYWRkLWRvY3VtZW50JywgeyBkb2MsIHdpbmRvdywgc2NvcGU6IHRoaXMsIG9wdGlvbnMgfSlcbiAgfVxuXG4gIHJlbW92ZURvY3VtZW50IChkb2M6IERvY3VtZW50KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmdldERvY0luZGV4KGRvYylcblxuICAgIGNvbnN0IHdpbmRvdyA9IHdpbi5nZXRXaW5kb3coZG9jKVxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmRvY3VtZW50c1tpbmRleF0ub3B0aW9uc1xuXG4gICAgZXZlbnRzLnJlbW92ZSh3aW5kb3csICd1bmxvYWQnLCB0aGlzLm9uV2luZG93VW5sb2FkKVxuXG4gICAgdGhpcy5kb2N1bWVudHMuc3BsaWNlKGluZGV4LCAxKVxuICAgIGV2ZW50cy5kb2N1bWVudHMuc3BsaWNlKGluZGV4LCAxKVxuXG4gICAgdGhpcy5zaWduYWxzLmZpcmUoJ3JlbW92ZS1kb2N1bWVudCcsIHsgZG9jLCB3aW5kb3csIHNjb3BlOiB0aGlzLCBvcHRpb25zIH0pXG4gIH1cblxuICBnZXREb2NJbmRleCAoZG9jOiBEb2N1bWVudCkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5kb2N1bWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmRvY3VtZW50c1tpXS5kb2MgPT09IGRvYykge1xuICAgICAgICByZXR1cm4gaVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAtMVxuICB9XG5cbiAgZ2V0RG9jT3B0aW9ucyAoZG9jOiBEb2N1bWVudCkge1xuICAgIGNvbnN0IGRvY0luZGV4ID0gdGhpcy5nZXREb2NJbmRleChkb2MpXG5cbiAgICByZXR1cm4gZG9jSW5kZXggPT09IC0xID8gbnVsbCA6IHRoaXMuZG9jdW1lbnRzW2RvY0luZGV4XS5vcHRpb25zXG4gIH1cblxuICBub3cgKCkge1xuICAgIHJldHVybiAoKHRoaXMud2luZG93IGFzIGFueSkuRGF0ZSBhcyB0eXBlb2YgRGF0ZSB8fCBEYXRlKS5ub3coKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGFibGVTZXQge1xuICBzaWduYWxzID0gbmV3IHV0aWxzLlNpZ25hbHMoKVxuXG4gIC8vIGFsbCBzZXQgaW50ZXJhY3RhYmxlc1xuICBsaXN0OiBJbnRlcmFjdGFibGVCYXNlW10gPSBbXVxuXG4gIGNvbnN0cnVjdG9yIChwcm90ZWN0ZWQgc2NvcGU6IFNjb3BlKSB7fVxuXG4gIG5ldyAodGFyZ2V0OiBJbnRlcmFjdC5UYXJnZXQsIG9wdGlvbnM/OiBhbnkpOiBJbnRlcmFjdGFibGVCYXNlIHtcbiAgICBvcHRpb25zID0gdXRpbHMuZXh0ZW5kKG9wdGlvbnMgfHwge30sIHtcbiAgICAgIGFjdGlvbnM6IHRoaXMuc2NvcGUuYWN0aW9ucyxcbiAgICB9KVxuICAgIGNvbnN0IGludGVyYWN0YWJsZSA9IG5ldyB0aGlzLnNjb3BlLkludGVyYWN0YWJsZSh0YXJnZXQsIG9wdGlvbnMsIHRoaXMuc2NvcGUuZG9jdW1lbnQpXG5cbiAgICB0aGlzLnNjb3BlLmFkZERvY3VtZW50KGludGVyYWN0YWJsZS5fZG9jKVxuICAgIHRoaXMubGlzdC5wdXNoKGludGVyYWN0YWJsZSlcblxuICAgIHRoaXMuc2lnbmFscy5maXJlKCduZXcnLCB7XG4gICAgICB0YXJnZXQsXG4gICAgICBvcHRpb25zLFxuICAgICAgaW50ZXJhY3RhYmxlLFxuICAgICAgd2luOiB0aGlzLnNjb3BlLl93aW4sXG4gICAgfSlcblxuICAgIHJldHVybiBpbnRlcmFjdGFibGVcbiAgfVxuXG4gIGluZGV4T2ZFbGVtZW50ICh0YXJnZXQ6IEludGVyYWN0LlRhcmdldCwgY29udGV4dDogRG9jdW1lbnQgfCBFbGVtZW50KSB7XG4gICAgY29udGV4dCA9IGNvbnRleHQgfHwgdGhpcy5zY29wZS5kb2N1bWVudFxuXG4gICAgY29uc3QgbGlzdCA9IHRoaXMubGlzdFxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBpbnRlcmFjdGFibGUgPSBsaXN0W2ldXG5cbiAgICAgIGlmIChpbnRlcmFjdGFibGUudGFyZ2V0ID09PSB0YXJnZXQgJiYgaW50ZXJhY3RhYmxlLl9jb250ZXh0ID09PSBjb250ZXh0KSB7XG4gICAgICAgIHJldHVybiBpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIC0xXG4gIH1cblxuICBnZXQgKGVsZW1lbnQ6IEludGVyYWN0LlRhcmdldCwgb3B0aW9ucywgZG9udENoZWNrSW5Db250ZXh0PzogYm9vbGVhbikge1xuICAgIGNvbnN0IHJldCA9IHRoaXMubGlzdFt0aGlzLmluZGV4T2ZFbGVtZW50KGVsZW1lbnQsIG9wdGlvbnMgJiYgb3B0aW9ucy5jb250ZXh0KV1cblxuICAgIHJldHVybiByZXQgJiYgKHV0aWxzLmlzLnN0cmluZyhlbGVtZW50KSB8fCBkb250Q2hlY2tJbkNvbnRleHQgfHwgcmV0LmluQ29udGV4dChlbGVtZW50KSkgPyByZXQgOiBudWxsXG4gIH1cblxuICBmb3JFYWNoTWF0Y2ggKGVsZW1lbnQ6IERvY3VtZW50IHwgRWxlbWVudCwgY2FsbGJhY2s6IChpbnRlcmFjdGFibGU6IGFueSkgPT4gYW55KSB7XG4gICAgZm9yIChjb25zdCBpbnRlcmFjdGFibGUgb2YgdGhpcy5saXN0KSB7XG4gICAgICBsZXQgcmV0XG5cbiAgICAgIGlmICgodXRpbHMuaXMuc3RyaW5nKGludGVyYWN0YWJsZS50YXJnZXQpXG4gICAgICAvLyB0YXJnZXQgaXMgYSBzZWxlY3RvciBhbmQgdGhlIGVsZW1lbnQgbWF0Y2hlc1xuICAgICAgICA/ICh1dGlscy5pcy5lbGVtZW50KGVsZW1lbnQpICYmIHV0aWxzLmRvbS5tYXRjaGVzU2VsZWN0b3IoZWxlbWVudCwgaW50ZXJhY3RhYmxlLnRhcmdldCkpXG4gICAgICAgIC8vIHRhcmdldCBpcyB0aGUgZWxlbWVudFxuICAgICAgICA6IGVsZW1lbnQgPT09IGludGVyYWN0YWJsZS50YXJnZXQpICYmXG4gICAgICAgIC8vIHRoZSBlbGVtZW50IGlzIGluIGNvbnRleHRcbiAgICAgICAgKGludGVyYWN0YWJsZS5pbkNvbnRleHQoZWxlbWVudCkpKSB7XG4gICAgICAgIHJldCA9IGNhbGxiYWNrKGludGVyYWN0YWJsZSlcbiAgICAgIH1cblxuICAgICAgaWYgKHJldCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiByZXRcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRTY29wZSAoc2NvcGU6IFNjb3BlLCB3aW5kb3c6IFdpbmRvdykge1xuICB3aW4uaW5pdCh3aW5kb3cpXG4gIGRvbU9iamVjdHMuaW5pdCh3aW5kb3cpXG4gIGJyb3dzZXIuaW5pdCh3aW5kb3cpXG4gIHJhZi5pbml0KHdpbmRvdylcbiAgZXZlbnRzLmluaXQod2luZG93KVxuXG4gIHNjb3BlLnVzZVBsdWdpbihpbnRlcmFjdGlvbnMpXG4gIHNjb3BlLmRvY3VtZW50ID0gd2luZG93LmRvY3VtZW50XG4gIHNjb3BlLndpbmRvdyA9IHdpbmRvd1xuXG4gIHJldHVybiBzY29wZVxufVxuIl19
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