Socket
Socket
Sign inDemoInstall

@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-beta.4 to 1.4.0-rc.0

5

Interaction.spec.js

@@ -6,3 +6,2 @@ import test from '@interactjs/_dev/test/test';

import Interaction from './Interaction';
import interactions from './interactions';
import * as helpers from './tests/_helpers';

@@ -272,3 +271,2 @@ const makeInteractionAndSignals = () => new Interaction({ signals: new Signals() });

const scope = helpers.mockScope();
interactions.install(scope);
const interaction = scope.interactions.new({});

@@ -288,3 +286,2 @@ const interactable = helpers.mockInteractable();

const scope = helpers.mockScope();
interactions.install(scope);
const interaction = scope.interactions.new({});

@@ -320,2 +317,2 @@ const interactable = helpers.mockInteractable();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJhY3Rpb24uc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkludGVyYWN0aW9uLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sNEJBQTRCLENBQUE7QUFDN0MsT0FBTyxZQUFZLE1BQU0sZ0NBQWdDLENBQUE7QUFDekQsT0FBTyxPQUFPLE1BQU0sMkJBQTJCLENBQUE7QUFDL0MsT0FBTyxhQUFhLE1BQU0saUJBQWlCLENBQUE7QUFDM0MsT0FBTyxXQUFXLE1BQU0sZUFBZSxDQUFBO0FBQ3ZDLE9BQU8sWUFBWSxNQUFNLGdCQUFnQixDQUFBO0FBQ3pDLE9BQU8sS0FBSyxPQUFPLE1BQU0sa0JBQWtCLENBQUE7QUFFM0MsTUFBTSx5QkFBeUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBRSxFQUFTLENBQUMsQ0FBQTtBQUUxRixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNwQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUE7SUFDdkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUM3QixNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FBQztRQUNsQyxXQUFXLEVBQUUsUUFBUTtRQUNyQixPQUFPO0tBQ1IsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxVQUFVLEdBQUc7UUFDakIsSUFBSSxFQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQ3pCLE1BQU0sRUFBSyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUN6QixTQUFTLEVBQUUsQ0FBQztLQUNiLENBQUE7SUFFRCxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUNuQyx3REFBd0QsQ0FBQyxDQUFBO0lBRTNE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QUU5QixDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQ3hCLDhDQUE4QyxDQUFDLENBQUE7SUFFakQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFDbkMsa0NBQWtDLENBQUMsQ0FBQTtJQUVyQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7QUFDVCxDQUFDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0ZXN0IGZyb20gJ0BpbnRlcmFjdGpzL19kZXYvdGVzdC90ZXN0J1xuaW1wb3J0IHBvaW50ZXJVdGlscyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9wb2ludGVyVXRpbHMnXG5pbXBvcnQgU2lnbmFscyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9TaWduYWxzJ1xuaW1wb3J0IEludGVyYWN0RXZlbnQgZnJvbSAnLi9JbnRlcmFjdEV2ZW50J1xuaW1wb3J0IEludGVyYWN0aW9uIGZyb20gJy4vSW50ZXJhY3Rpb24nXG5pbXBvcnQgaW50ZXJhY3Rpb25zIGZyb20gJy4vaW50ZXJhY3Rpb25zJ1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tICcuL3Rlc3RzL19oZWxwZXJzJ1xuXG5jb25zdCBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzID0gKCkgPT4gbmV3IEludGVyYWN0aW9uKHsgc2lnbmFsczogbmV3IFNpZ25hbHMoKSB9IGFzIGFueSlcblxudGVzdCgnSW50ZXJhY3Rpb24gY29uc3RydWN0b3InLCAodCkgPT4ge1xuICBjb25zdCB0ZXN0VHlwZSA9ICd0ZXN0J1xuICBjb25zdCBzaWduYWxzID0gbmV3IFNpZ25hbHMoKVxuICBjb25zdCBpbnRlcmFjdGlvbiA9IG5ldyBJbnRlcmFjdGlvbih7XG4gICAgcG9pbnRlclR5cGU6IHRlc3RUeXBlLFxuICAgIHNpZ25hbHMsXG4gIH0pXG4gIGNvbnN0IHplcm9Db29yZHMgPSB7XG4gICAgcGFnZSAgICAgOiB7IHg6IDAsIHk6IDAgfSxcbiAgICBjbGllbnQgICA6IHsgeDogMCwgeTogMCB9LFxuICAgIHRpbWVTdGFtcDogMCxcbiAgfVxuXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24uX3NpZ25hbHMsIHNpZ25hbHMsXG4gICAgJ3NpZ25hbHMgb3B0aW9uIGlzIHNldCBhc3NpZ25lZCB0byBpbnRlcmFjdGlvbi5fc2lnbmFscycpXG5cbiAgdC5vayhpbnRlcmFjdGlvbi5wcmVwYXJlZCBpbnN0YW5jZW9mIE9iamVjdCxcbiAgICAnaW50ZXJhY3Rpb24ucHJlcGFyZWQgaXMgYW4gb2JqZWN0JylcbiAgdC5vayhpbnRlcmFjdGlvbi5kb3duUG9pbnRlciBpbnN0YW5jZW9mIE9iamVjdCxcbiAgICAnaW50ZXJhY3Rpb24uZG93blBvaW50ZXIgaXMgYW4gb2JqZWN0JylcblxuICBmb3IgKGNvbnN0IGNvb3JkRmllbGQgaW4gaW50ZXJhY3Rpb24uY29vcmRzKSB7XG4gICAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uY29vcmRzW2Nvb3JkRmllbGRdLCB6ZXJvQ29vcmRzLFxuICAgICAgYG50ZXJhY3Rpb24uY29vcmRzLiR7Y29vcmRGaWVsZH0gc2V0IHRvIHplcm9gKVxuICB9XG5cbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wb2ludGVyVHlwZSwgdGVzdFR5cGUsXG4gICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJUeXBlIGlzIHNldCcpXG5cbiAgLy8gcG9pbnRlckluZm8gcHJvcGVydGllc1xuICB0LmRlZXBFcXVhbChcbiAgICBpbnRlcmFjdGlvbi5wb2ludGVycyxcbiAgICBbXSxcbiAgICAnaW50ZXJhY3Rpb24ucG9pbnRlcnMgaXMgaW5pdGlhbGx5IGFuIGVtcHR5IGFycmF5JylcblxuICAvLyBmYWxzZSBwcm9wZXJ0aWVzXG4gIGZvciAoY29uc3QgcHJvcCBvZiAncG9pbnRlcklzRG93biBwb2ludGVyV2FzTW92ZWQgX2ludGVyYWN0aW5nIG1vdXNlJy5zcGxpdCgnICcpKSB7XG4gICAgdC5ub3RPayhpbnRlcmFjdGlvbltwcm9wXSwgYGludGVyYWN0aW9uLiR7cHJvcH0gaXMgZmFsc2VgKVxuICB9XG5cbiAgdC5lbmQoKVxufSlcblxudGVzdCgnSW50ZXJhY3Rpb24uZ2V0UG9pbnRlckluZGV4JywgKHQpID0+IHtcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcblxuICBpbnRlcmFjdGlvbi5wb2ludGVycyA9IFsyLCA0LCA1LCAwLCAtMV0ubWFwKChpZCkgPT4gKHsgaWQgfSkpIGFzIGFueVxuXG4gIGludGVyYWN0aW9uLnBvaW50ZXJzLmZvckVhY2goKHsgaWQgfSwgaW5kZXgpID0+IHtcbiAgICB0LmVxdWFsKGludGVyYWN0aW9uLmdldFBvaW50ZXJJbmRleCh7IHBvaW50ZXJJZDogaWQgfSksIGluZGV4KVxuICB9KVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ0ludGVyYWN0aW9uLnVwZGF0ZVBvaW50ZXInLCAodCkgPT4ge1xuICB0LnRlc3QoJ25vIGV4aXN0aW5nIHBvaW50ZXJzJywgKHN0KSA9PiB7XG4gICAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcbiAgICBjb25zdCBwb2ludGVyID0geyBwb2ludGVySWQ6IDEwIH0gYXMgYW55XG4gICAgY29uc3QgZXZlbnQgPSB7fSBhcyBhbnlcblxuICAgIGNvbnN0IHJldCA9IGludGVyYWN0aW9uLnVwZGF0ZVBvaW50ZXIocG9pbnRlciwgZXZlbnQsIG51bGwpXG5cbiAgICBzdC5kZWVwRXF1YWwoXG4gICAgICBpbnRlcmFjdGlvbi5wb2ludGVycyxcbiAgICAgIFt7XG4gICAgICAgIGlkOiBwb2ludGVyLnBvaW50ZXJJZCxcbiAgICAgICAgcG9pbnRlcixcbiAgICAgICAgZXZlbnQsXG4gICAgICAgIGRvd25UaW1lOiBudWxsLFxuICAgICAgICBkb3duVGFyZ2V0OiBudWxsLFxuICAgICAgfV0sXG4gICAgICAnaW50ZXJhY3Rpb24ucG9pbnRlcnMgPT0gW3sgcG9pbnRlciwgLi4uIH1dJylcbiAgICBzdC5lcXVhbChyZXQsIDAsICduZXcgcG9pbnRlciBpbmRleCBpcyByZXR1cm5lZCcpXG5cbiAgICBzdC5lbmQoKVxuICB9KVxuXG4gIHQudGVzdCgnbmV3IHBvaW50ZXIgd2l0aCBleGlzaXRpbmcgcG9pbnRlcicsIChzdCkgPT4ge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0gbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscygpXG4gICAgY29uc3QgZXhpc3Rpbmc6IGFueSA9IHsgcG9pbnRlcklkOiAwIH1cbiAgICBjb25zdCBldmVudDogYW55ID0ge31cblxuICAgIGludGVyYWN0aW9uLnVwZGF0ZVBvaW50ZXIoZXhpc3RpbmcsIGV2ZW50LCBudWxsKVxuXG4gICAgY29uc3QgbmV3UG9pbnRlcjogYW55ID0geyBwb2ludGVySWQ6IDEwIH1cbiAgICBjb25zdCByZXQgPSBpbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyKG5ld1BvaW50ZXIsIGV2ZW50LCBudWxsKVxuXG4gICAgc3QuZGVlcEVxdWFsKFxuICAgICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMsIFtcbiAgICAgICAge1xuICAgICAgICAgIGlkOiBleGlzdGluZy5wb2ludGVySWQsXG4gICAgICAgICAgcG9pbnRlcjogZXhpc3RpbmcsXG4gICAgICAgICAgZXZlbnQsXG4gICAgICAgICAgZG93blRpbWU6IG51bGwsXG4gICAgICAgICAgZG93blRhcmdldDogbnVsbCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiBuZXdQb2ludGVyLnBvaW50ZXJJZCxcbiAgICAgICAgICBwb2ludGVyOiBuZXdQb2ludGVyLFxuICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgIGRvd25UaW1lOiBudWxsLFxuICAgICAgICAgIGRvd25UYXJnZXQ6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJzID09IFt7IHBvaW50ZXI6IGV4aXN0aW5nLCAuLi4gfSwgeyBwb2ludGVyOiBuZXdQb2ludGVyLCAuLi4gfV0nKVxuXG4gICAgc3QuZXF1YWwocmV0LCAxLCAnc2Vjb25kIHBvaW50ZXIgaW5kZXggaXMgMScpXG5cbiAgICBzdC5lbmQoKVxuICB9KVxuXG4gIHQudGVzdCgndXBkYXRlIGV4aXN0aW5nIHBvaW50ZXJzJywgKHN0KSA9PiB7XG4gICAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcblxuICAgIGNvbnN0IG9sZFBvaW50ZXJzID0gWy0zLCAxMCwgMl0ubWFwKChwb2ludGVySWQpID0+ICh7IHBvaW50ZXJJZCB9KSlcbiAgICBjb25zdCBuZXdQb2ludGVycyA9IG9sZFBvaW50ZXJzLm1hcCgocG9pbnRlcikgPT4gKHsgLi4ucG9pbnRlciwgbmV3OiB0cnVlIH0pKVxuXG4gICAgb2xkUG9pbnRlcnMuZm9yRWFjaCgocG9pbnRlcjogYW55KSA9PiBpbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyKHBvaW50ZXIsIHBvaW50ZXIsIG51bGwpKVxuICAgIG5ld1BvaW50ZXJzLmZvckVhY2goKHBvaW50ZXI6IGFueSkgPT4gaW50ZXJhY3Rpb24udXBkYXRlUG9pbnRlcihwb2ludGVyLCBwb2ludGVyLCBudWxsKSlcblxuICAgIHN0LmVxdWFsKGludGVyYWN0aW9uLnBvaW50ZXJzLmxlbmd0aCwgb2xkUG9pbnRlcnMubGVuZ3RoLFxuICAgICAgJ251bWJlciBvZiBwb2ludGVycyBpcyB1bmNoYW5nZWQnKVxuXG4gICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMuZm9yRWFjaCgocG9pbnRlckluZm8sIGkpID0+IHtcbiAgICAgIHN0LmVxdWFsKHBvaW50ZXJJbmZvLmlkLCBvbGRQb2ludGVyc1tpXS5wb2ludGVySWQsXG4gICAgICAgIGBwb2ludGVyWyR7aX1dLmlkIGlzIHRoZSBzYW1lYClcbiAgICAgIHN0Lm5vdEVxdWFsKHBvaW50ZXJJbmZvLnBvaW50ZXIsIG9sZFBvaW50ZXJzW2ldLFxuICAgICAgICBgbmV3IHBvaW50ZXIgJHtpfSAhPT0gb2xkIHBvaW50ZXIgb2JqZWN0YClcbiAgICB9KVxuXG4gICAgc3QuZW5kKClcbiAgfSlcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbi5yZW1vdmVQb2ludGVyJywgKHQpID0+IHtcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcbiAgY29uc3QgaWRzID0gWzAsIDEsIDIsIDNdXG4gIGNvbnN0IHJlbW92YWxzID0gW1xuICAgIHsgaWQ6IDAsIHJlbWFpbjogWzEsIDIsIDNdLCBtZXNzYWdlOiAnZmlyc3Qgb2YgNCcgfSxcbiAgICB7IGlkOiAyLCByZW1haW46IFsxLCAgICAzXSwgbWVzc2FnZTogJ21pZGRsZSBvZiAzJyB9LFxuICAgIHsgaWQ6IDMsIHJlbWFpbjogWzEgICAgICBdLCBtZXNzYWdlOiAnbGFzdCBvZiAyJyB9LFxuICAgIHsgaWQ6IDEsIHJlbWFpbjogWyAgICAgICBdLCBtZXNzYWdlOiAnZmluYWwnIH0sXG4gIF1cblxuICBpZHMuZm9yRWFjaCgocG9pbnRlcklkKSA9PiBpbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyKHsgcG9pbnRlcklkIH0gYXMgYW55LCB7fSBhcyBhbnksIG51bGwpKVxuXG4gIGZvciAoY29uc3QgcmVtb3ZhbCBvZiByZW1vdmFscykge1xuICAgIGludGVyYWN0aW9uLnJlbW92ZVBvaW50ZXIoeyBwb2ludGVySWQ6IHJlbW92YWwuaWQgfSwgbnVsbClcblxuICAgIHQuZGVlcEVxdWFsKFxuICAgICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMubWFwKChwKSA9PiBwLmlkKSxcbiAgICAgIHJlbW92YWwucmVtYWluLFxuICAgICAgYCR7cmVtb3ZhbC5tZXNzYWdlfSAtIHJlbWFpbmluZyBpbnRlcmFjdGlvbi5wb2ludGVycyBpcyBjb3JyZWN0YClcbiAgfVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ0ludGVyYWN0aW9uLnBvaW50ZXJ7RG93bixNb3ZlLFVwfSB1cGRhdGVQb2ludGVyJywgKHQpID0+IHtcbiAgY29uc3Qgc2lnbmFscyA9IG5ldyBTaWduYWxzKClcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBuZXcgSW50ZXJhY3Rpb24oeyBzaWduYWxzIH0gYXMgYW55KVxuICBjb25zdCBldmVudFRhcmdldDogYW55ID0ge31cbiAgY29uc3QgcG9pbnRlcjogYW55ID0ge1xuICAgIHRhcmdldDogZXZlbnRUYXJnZXQsXG4gICAgcG9pbnRlcklkOiAwLFxuICB9XG4gIGxldCBpbmZvOiBhbnkgPSB7fVxuXG4gIHNpZ25hbHMub24oJ3VwZGF0ZS1wb2ludGVyJywgKGFyZykgPT4geyBpbmZvLnVwZGF0ZWQgPSBhcmcucG9pbnRlckluZm8gfSlcbiAgc2lnbmFscy5vbigncmVtb3ZlLXBvaW50ZXInLCAoYXJnKSA9PiB7IGluZm8ucmVtb3ZlZCA9IGFyZy5wb2ludGVySW5mbyB9KVxuXG4gIGludGVyYWN0aW9uLmNvb3Jkcy5jdXIudGltZVN0YW1wID0gMFxuICBjb25zdCBjb21tb25Qb2ludGVySW5mbyA9IHtcbiAgICBpZDogMCxcbiAgICBwb2ludGVyLFxuICAgIGV2ZW50OiBwb2ludGVyLFxuICAgIGRvd25UaW1lOiBudWxsLFxuICAgIGRvd25UYXJnZXQ6IG51bGwsXG4gIH1cblxuICBpbnRlcmFjdGlvbi5wb2ludGVyRG93bihwb2ludGVyLCBwb2ludGVyLCBldmVudFRhcmdldClcbiAgdC5kZWVwRXF1YWwoXG4gICAgaW5mby51cGRhdGVkLFxuICAgIHtcbiAgICAgIC4uLmNvbW1vblBvaW50ZXJJbmZvLFxuICAgICAgZG93blRpbWU6IGludGVyYWN0aW9uLmNvb3Jkcy5jdXIudGltZVN0YW1wLFxuICAgICAgZG93blRhcmdldDogZXZlbnRUYXJnZXQsXG4gICAgfSxcbiAgICAnaW50ZXJhY3Rpb24ucG9pbnRlckRvd24gdXBkYXRlcyBwb2ludGVyJ1xuICApXG4gIHQuZXF1YWwoaW5mby5yZW1vdmVkLCB1bmRlZmluZWQsICdpbnRlcmFjdGlvbi5wb2ludGVyRG93biBkb2VzblxcJ3QgcmVtb3ZlIHBvaW50ZXInKVxuICBpbnRlcmFjdGlvbi5yZW1vdmVQb2ludGVyKHBvaW50ZXIsIG51bGwpXG4gIGluZm8gPSB7fVxuXG4gIGludGVyYWN0aW9uLnBvaW50ZXJNb3ZlKHBvaW50ZXIsIHBvaW50ZXIsIGV2ZW50VGFyZ2V0KVxuICB0LmRlZXBFcXVhbChcbiAgICBpbmZvLnVwZGF0ZWQsXG4gICAgY29tbW9uUG9pbnRlckluZm8sXG4gICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJNb3ZlIHVwZGF0ZXMgcG9pbnRlcidcbiAgKVxuICB0LmVxdWFsKGluZm8ucmVtb3ZlZCwgdW5kZWZpbmVkLCAnaW50ZXJhY3Rpb24ucG9pbnRlck1vdmUgZG9lc25cXCd0IHJlbW92ZSBwb2ludGVyJylcbiAgaW5mbyA9IHt9XG5cbiAgaW50ZXJhY3Rpb24ucG9pbnRlclVwKHBvaW50ZXIsIHBvaW50ZXIsIGV2ZW50VGFyZ2V0LCBudWxsKVxuICB0LmVxdWFsKGluZm8udXBkYXRlZCwgdW5kZWZpbmVkLCAnaW50ZXJhY3Rpb24ucG9pbnRlclVwIGRvZXNuXFwndCB1cGRhdGUgZXhpc3RpbmcgcG9pbnRlcicpXG4gIGluZm8gPSB7fVxuXG4gIGludGVyYWN0aW9uLnBvaW50ZXJVcChwb2ludGVyLCBwb2ludGVyLCBldmVudFRhcmdldCwgbnVsbClcbiAgdC5kZWVwRXF1YWwoXG4gICAgaW5mby51cGRhdGVkLFxuICAgIGNvbW1vblBvaW50ZXJJbmZvLFxuICAgICdpbnRlcmFjdGlvbi5wb2ludGVyVXAgdXBkYXRlcyBub24gZXhpc3RpbmcgcG9pbnRlcidcbiAgKVxuICB0LmRlZXBFcXVhbChpbmZvLnJlbW92ZWQsIGNvbW1vblBvaW50ZXJJbmZvLCAnaW50ZXJhY3Rpb24ucG9pbnRlclVwIGFsc28gcmVtb3ZlcyBwb2ludGVyJylcbiAgaW5mbyA9IHt9XG5cbiAgdC5lbmQoKVxufSlcblxudGVzdCgnSW50ZXJhY3Rpb24ucG9pbnRlckRvd24nLCAodCkgPT4ge1xuICBjb25zdCBpbnRlcmFjdGlvbiA9IG1ha2VJbnRlcmFjdGlvbkFuZFNpZ25hbHMoKVxuICBjb25zdCBjb29yZHMgPSBoZWxwZXJzLm5ld0Nvb3Jkc1NldCgpXG4gIGNvbnN0IGV2ZW50VGFyZ2V0ID0ge30gYXMgRWxlbWVudFxuICBjb25zdCBldmVudDogYW55ID0ge1xuICAgIHR5cGU6ICdkb3duJyxcbiAgICB0YXJnZXQ6IGV2ZW50VGFyZ2V0LFxuICB9XG4gIGNvbnN0IHBvaW50ZXI6IGFueSA9IGhlbHBlcnMubmV3UG9pbnRlcigpXG4gIGxldCBzaWduYWxBcmdcblxuICBjb25zdCBzaWduYWxMaXN0ZW5lciA9IChhcmcpID0+IHtcbiAgICBzaWduYWxBcmcgPSBhcmdcbiAgfVxuXG4gIGludGVyYWN0aW9uLl9zaWduYWxzLm9uKCdkb3duJywgc2lnbmFsTGlzdGVuZXIpXG5cbiAgY29uc3QgcG9pbnRlckNvb3JkczogYW55ID0geyBwYWdlOiB7fSwgY2xpZW50OiB7fSB9XG4gIHBvaW50ZXJVdGlscy5zZXRDb29yZHMocG9pbnRlckNvb3JkcywgW3BvaW50ZXJdKVxuXG4gIGZvciAoY29uc3QgcHJvcCBpbiBjb29yZHMpIHtcbiAgICBwb2ludGVyVXRpbHMuY29weUNvb3JkcyhpbnRlcmFjdGlvbi5jb29yZHNbcHJvcF0sIGNvb3Jkc1twcm9wXSlcbiAgfVxuXG4gIC8vIHRlc3Qgd2hpbGUgaW50ZXJhY3RpbmdcbiAgaW50ZXJhY3Rpb24uX2ludGVyYWN0aW5nID0gdHJ1ZVxuICBpbnRlcmFjdGlvbi5wb2ludGVyRG93bihwb2ludGVyLCBldmVudCwgZXZlbnRUYXJnZXQpXG5cbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5kb3duRXZlbnQsIG51bGwsICdkb3duRXZlbnQgaXMgbm90IHVwZGF0ZWQnKVxuICB0LmRlZXBFcXVhbChcbiAgICBpbnRlcmFjdGlvbi5wb2ludGVycyxcbiAgICBbe1xuICAgICAgaWQ6IHBvaW50ZXIucG9pbnRlcklkLFxuICAgICAgcG9pbnRlcixcbiAgICAgIGV2ZW50LFxuICAgICAgZG93blRpbWU6IG51bGwsXG4gICAgICBkb3duVGFyZ2V0OiBudWxsLFxuICAgIH1dLFxuICAgICdwb2ludGVyIGlzIGFkZGVkJ1xuICApXG5cbiAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uZG93blBvaW50ZXIsIHt9IGFzIGFueSwgJ2Rvd25Qb2ludGVyIGlzIG5vdCB1cGRhdGVkJylcblxuICB0LmRlZXBFcXVhbChpbnRlcmFjdGlvbi5jb29yZHMuc3RhcnQsIGNvb3Jkcy5zdGFydCwgJ2Nvb3Jkcy5zdGFydCBhcmUgbm90IG1vZGlmaWVkJylcbiAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uY29vcmRzLmN1ciwgICBjb29yZHMuY3VyLCAgICdjb29yZHMuY3VyICAgYXJlIG5vdCBtb2RpZmllZCcpXG4gIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmNvb3Jkcy5wcmV2LCAgY29vcmRzLnByZXYsICAnY29vcmRzLnByZXYgIGFyZSBub3QgbW9kaWZpZWQnKVxuXG4gIHQub2soaW50ZXJhY3Rpb24ucG9pbnRlcklzRG93biwgJ3BvaW50ZXJJc0Rvd24nKVxuICB0Lm5vdE9rKGludGVyYWN0aW9uLnBvaW50ZXJXYXNNb3ZlZCwgJyFwb2ludGVyV2FzTW92ZWQnKVxuXG4gIHQuZXF1YWwoc2lnbmFsQXJnLnBvaW50ZXIsICAgICAgcG9pbnRlciwgICAgICdwb2ludGVyICAgICAgaW4gZG93biBzaWduYWwgYXJnJylcbiAgdC5lcXVhbChzaWduYWxBcmcuZXZlbnQsICAgICAgICBldmVudCwgICAgICAgJ2V2ZW50ICAgICAgICBpbiBkb3duIHNpZ25hbCBhcmcnKVxuICB0LmVxdWFsKHNpZ25hbEFyZy5ldmVudFRhcmdldCwgIGV2ZW50VGFyZ2V0LCAnZXZlbnRUYXJnZXQgIGluIGRvd24gc2lnbmFsIGFyZycpXG4gIHQuZXF1YWwoc2lnbmFsQXJnLnBvaW50ZXJJbmRleCwgMCwgICAgICAgICAgICdwb2ludGVySW5kZXggaW4gZG93biBzaWduYWwgYXJnJylcblxuICAvLyB0ZXN0IHdoaWxlIG5vdCBpbnRlcmFjdGluZ1xuICBpbnRlcmFjdGlvbi5faW50ZXJhY3RpbmcgPSBmYWxzZVxuICAvLyByZXNldCBwb2ludGVySXNEb3duXG4gIGludGVyYWN0aW9uLnBvaW50ZXJJc0Rvd24gPSBmYWxzZVxuICAvLyBwcmV0ZW5kIHBvaW50ZXIgd2FzIG1vdmVkXG4gIGludGVyYWN0aW9uLnBvaW50ZXJXYXNNb3ZlZCA9IHRydWVcbiAgLy8gcmVzZXQgc2lnbmFsQXJnIG9iamVjdFxuICBzaWduYWxBcmcgPSB1bmRlZmluZWRcblxuICBpbnRlcmFjdGlvbi5yZW1vdmVQb2ludGVyKHBvaW50ZXIsIG51bGwpXG4gIGludGVyYWN0aW9uLnBvaW50ZXJEb3duKHBvaW50ZXIsIGV2ZW50LCBldmVudFRhcmdldClcblxuICAvLyB0aW1lU3RhbXAgaXMgYXNzaWduZWQgd2l0aCBuZXcgRGF0ZS5nZXRUaW1lKClcbiAgLy8gZG9uJ3QgbGV0IGl0IGNhdXNlIGRlZXBFYXVhbCB0byBmYWlsXG4gIHBvaW50ZXJDb29yZHMudGltZVN0YW1wID0gaW50ZXJhY3Rpb24uY29vcmRzLnN0YXJ0LnRpbWVTdGFtcFxuXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24uZG93bkV2ZW50LCBldmVudCwgJ2Rvd25FdmVudCBpcyB1cGRhdGVkJylcblxuICB0LmRlZXBFcXVhbChcbiAgICBpbnRlcmFjdGlvbi5wb2ludGVycyxcbiAgICBbe1xuICAgICAgaWQ6IHBvaW50ZXIucG9pbnRlcklkLFxuICAgICAgcG9pbnRlcixcbiAgICAgIGV2ZW50LFxuICAgICAgZG93blRpbWU6IHBvaW50ZXJDb29yZHMudGltZVN0YW1wLFxuICAgICAgZG93blRhcmdldDogZXZlbnRUYXJnZXQsXG4gICAgfV0sXG4gICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJzIGlzIHVwZGF0ZWQnKVxuXG4gIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmNvb3Jkcy5zdGFydCwgcG9pbnRlckNvb3JkcywgJ2Nvb3Jkcy5zdGFydCBhcmUgc2V0IHRvIHBvaW50ZXInKVxuICB0LmRlZXBFcXVhbChpbnRlcmFjdGlvbi5jb29yZHMuY3VyLCAgIHBvaW50ZXJDb29yZHMsICdjb29yZHMuY3VyICAgYXJlIHNldCB0byBwb2ludGVyJylcbiAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uY29vcmRzLnByZXYsICBwb2ludGVyQ29vcmRzLCAnY29vcmRzLnByZXYgIGFyZSBzZXQgdG8gcG9pbnRlcicpXG5cbiAgdC5lcXVhbCh0eXBlb2Ygc2lnbmFsQXJnLCAnb2JqZWN0JywgJ2Rvd24gc2lnbmFsIHdhcyBmaXJlZCBhZ2FpbicpXG4gIHQub2soaW50ZXJhY3Rpb24ucG9pbnRlcklzRG93biwgJ3BvaW50ZXJJc0Rvd24nKVxuICB0Lm5vdE9rKGludGVyYWN0aW9uLnBvaW50ZXJXYXNNb3ZlZCwgJ3BvaW50ZXJXYXNNb3ZlZCBzaG91bGQgYWx3YXlzIGNoYW5nZSB0byBmYWxzZScpXG5cbiAgdC5lbmQoKVxufSlcblxudGVzdCgnSW50ZXJhY3Rpb24uc3RhcnQnLCAodCkgPT4ge1xuICBjb25zdCBpbnRlcmFjdGlvbiA9IG1ha2VJbnRlcmFjdGlvbkFuZFNpZ25hbHMoKVxuICBjb25zdCBhY3Rpb24gPSB7IG5hbWU6ICdURVNUJyB9XG4gIGNvbnN0IGludGVyYWN0YWJsZSA9IGhlbHBlcnMubW9ja0ludGVyYWN0YWJsZSgpXG4gIGNvbnN0IGVsZW1lbnQ6IGFueSA9IHt9XG4gIGNvbnN0IHBvaW50ZXIgPSBoZWxwZXJzLm5ld1BvaW50ZXIoKVxuICBjb25zdCBldmVudDogYW55ID0ge31cblxuICBpbnRlcmFjdGlvbi5zdGFydChhY3Rpb24sIGludGVyYWN0YWJsZSwgZWxlbWVudClcbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmVwYXJlZC5uYW1lLCBudWxsLCAnZG8gbm90aGluZyBpZiAhcG9pbnRlcklzRG93bicpXG5cbiAgLy8gcG9pbnRlcnMgaXMgc3RpbGwgZW1wdHlcbiAgaW50ZXJhY3Rpb24ucG9pbnRlcklzRG93biA9IHRydWVcbiAgaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCBpbnRlcmFjdGFibGUsIGVsZW1lbnQpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24ucHJlcGFyZWQubmFtZSwgbnVsbCwgJ2RvIG5vdGhpbmcgaWYgdG9vIGZldyBwb2ludGVycyBhcmUgZG93bicpXG5cbiAgaW50ZXJhY3Rpb24ucG9pbnRlckRvd24ocG9pbnRlciwgZXZlbnQsIG51bGwpXG5cbiAgaW50ZXJhY3Rpb24uX2ludGVyYWN0aW5nID0gdHJ1ZVxuICBpbnRlcmFjdGlvbi5zdGFydChhY3Rpb24sIGludGVyYWN0YWJsZSwgZWxlbWVudClcbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmVwYXJlZC5uYW1lLCBudWxsLCAnZG8gbm90aGluZyBpZiBhbHJlYWR5IGludGVyYWN0aW5nJylcblxuICBpbnRlcmFjdGlvbi5faW50ZXJhY3RpbmcgPSBmYWxzZVxuXG4gIGludGVyYWN0YWJsZS5vcHRpb25zW2FjdGlvbi5uYW1lXSA9IHsgZW5hYmxlZDogZmFsc2UgfVxuICBpbnRlcmFjdGlvbi5zdGFydChhY3Rpb24sIGludGVyYWN0YWJsZSwgZWxlbWVudClcbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmVwYXJlZC5uYW1lLCBudWxsLCAnZG8gbm90aGluZyBpZiBhY3Rpb24gaXMgbm90IGVuYWJsZWQnKVxuICBpbnRlcmFjdGFibGUub3B0aW9uc1thY3Rpb24ubmFtZV0gPSB7IGVuYWJsZWQ6IHRydWUgfVxuXG4gIGxldCBzaWduYWxBcmdcbiAgLy8gbGV0IGludGVyYWN0aW5nSW5TdGFydExpc3RlbmVyO1xuICBjb25zdCBzaWduYWxMaXN0ZW5lciA9IChhcmcpID0+IHtcbiAgICBzaWduYWxBcmcgPSBhcmdcbiAgICAvLyBpbnRlcmFjdGluZ0luU3RhcnRMaXN0ZW5lciA9IGFyZy5pbnRlcmFjdGlvbi5pbnRlcmFjdGluZygpO1xuICB9XG5cbiAgaW50ZXJhY3Rpb24uX3NpZ25hbHMub24oJ2FjdGlvbi1zdGFydCcsIHNpZ25hbExpc3RlbmVyKVxuICBpbnRlcmFjdGlvbi5zdGFydChhY3Rpb24sIGludGVyYWN0YWJsZSwgZWxlbWVudClcblxuICB0LmVxdWFsKGludGVyYWN0aW9uLnByZXBhcmVkLm5hbWUsIGFjdGlvbi5uYW1lLCAnYWN0aW9uIGlzIHByZXBhcmVkJylcbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUsIGludGVyYWN0YWJsZSwgJ2ludGVyYWN0aW9uLmludGVyYWN0YWJsZSBpcyB1cGRhdGVkJylcbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5lbGVtZW50LCBlbGVtZW50LCAnaW50ZXJhY3Rpb24uZWxlbWVudCBpcyB1cGRhdGVkJylcblxuICAvLyB0LmFzc2VydChpbnRlcmFjdGluZ0luU3RhcnRMaXN0ZW5lciwgJ2ludGVyYWN0aW9uIGlzIGludGVyYWN0aW5nIGR1cmluZyBhY3Rpb24tc3RhcnQgc2lnbmFsJyk7XG4gIHQuYXNzZXJ0KGludGVyYWN0aW9uLmludGVyYWN0aW5nKCksICdpbnRlcmFjdGlvbiBpcyBpbnRlcmFjdGluZyBhZnRlciBzdGFydCBtZXRob2QnKVxuICB0LmVxdWFsKHNpZ25hbEFyZy5pbnRlcmFjdGlvbiwgaW50ZXJhY3Rpb24sICdpbnRlcmFjdGlvbiBpbiBzaWduYWwgYXJnJylcbiAgdC5lcXVhbChzaWduYWxBcmcuZXZlbnQsIGV2ZW50LCAnZXZlbnQgKGludGVyYWN0aW9uLmRvd25FdmVudCkgaW4gc2lnbmFsIGFyZycpXG5cbiAgaW50ZXJhY3Rpb24uX2ludGVyYWN0aW5nID0gZmFsc2VcblxuICAvLyBpbnRlcmFjdGlvbi5zdGFydChhY3Rpb24sIHRhcmdldCwgZWxlbWVudCk7XG4gIC8vIHQuZGVlcEVxdWFsKHNjb3BlLmludGVyYWN0aW9ucy5saXN0LCBbaW50ZXJhY3Rpb25dLCAnaW50ZXJhY3Rpb24gaXMgYWRkZWQgYmFjayB0byBzY29wZScpO1xuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ3N0b3AgaW50ZXJhY3Rpb24gZnJvbSBzdGFydCBldmVudCcsICh0KSA9PiB7XG4gIGNvbnN0IHNjb3BlID0gaGVscGVycy5tb2NrU2NvcGUoKVxuXG4gIGludGVyYWN0aW9ucy5pbnN0YWxsKHNjb3BlKVxuICBjb25zdCBpbnRlcmFjdGlvbiA9IHNjb3BlLmludGVyYWN0aW9ucy5uZXcoe30pXG4gIGNvbnN0IGludGVyYWN0YWJsZSA9IGhlbHBlcnMubW9ja0ludGVyYWN0YWJsZSgpXG5cbiAgaW50ZXJhY3Rpb24uaW50ZXJhY3RhYmxlID0gaW50ZXJhY3RhYmxlXG4gIGludGVyYWN0aW9uLmVsZW1lbnQgPSBpbnRlcmFjdGFibGUuZWxlbWVudFxuICBpbnRlcmFjdGlvbi5wcmVwYXJlZCA9IHsgbmFtZTogJ1RFU1QnIH1cblxuICBpbnRlcmFjdGFibGUuZXZlbnRzLm9uKCdURVNUc3RhcnQnLCAoZXZlbnQpID0+IHtcbiAgICBldmVudC5pbnRlcmFjdGlvbi5zdG9wKClcbiAgfSlcblxuICBpbnRlcmFjdGlvbi5fc2lnbmFscy5maXJlKCdhY3Rpb24tc3RhcnQnLCB7IGludGVyYWN0aW9uLCBldmVudDoge30gfSlcblxuICB0Lm5vdE9rKGludGVyYWN0aW9uLmludGVyYWN0aW5nKCksICdpbnRlcmFjdGlvbiBjYW4gYmUgc3RvcHBlZCBmcm9tIHN0YXJ0IGV2ZW50IGxpc3RlbmVyJylcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbiBjcmVhdGVQcmVwYXJlZEV2ZW50JywgKHQpID0+IHtcbiAgY29uc3Qgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgaW50ZXJhY3Rpb25zLmluc3RhbGwoc2NvcGUpXG5cbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBzY29wZS5pbnRlcmFjdGlvbnMubmV3KHt9KVxuICBjb25zdCBpbnRlcmFjdGFibGUgPSBoZWxwZXJzLm1vY2tJbnRlcmFjdGFibGUoKVxuICBjb25zdCBhY3Rpb24gPSB7IG5hbWU6ICdyZXNpemUnIH1cbiAgY29uc3QgcGhhc2UgPSAnVEVTVF9QSEFTRSdcblxuICBpbnRlcmFjdGlvbi5wcmVwYXJlZCA9IGFjdGlvblxuICBpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUgPSBpbnRlcmFjdGFibGVcbiAgaW50ZXJhY3Rpb24uZWxlbWVudCA9IGludGVyYWN0YWJsZS5lbGVtZW50XG4gIGludGVyYWN0aW9uLnByZXZFdmVudCA9IHsgcGFnZToge30sIGNsaWVudDoge30sIHZlbG9jaXR5OiB7fSB9XG5cbiAgY29uc3QgaUV2ZW50ID0gaW50ZXJhY3Rpb24uX2NyZWF0ZVByZXBhcmVkRXZlbnQoe30sIHBoYXNlKVxuXG4gIHQub2soaUV2ZW50IGluc3RhbmNlb2YgSW50ZXJhY3RFdmVudCxcbiAgICAnSW50ZXJhY3RFdmVudCBpcyBmaXJlZCcpXG5cbiAgdC5lcXVhbChpRXZlbnQudHlwZSwgYWN0aW9uLm5hbWUgKyBwaGFzZSxcbiAgICAnZXZlbnQgdHlwZScpXG5cbiAgdC5lcXVhbChpRXZlbnQuaW50ZXJhY3RhYmxlLCBpbnRlcmFjdGFibGUsXG4gICAgJ2V2ZW50LmludGVyYWN0YWJsZScpXG5cbiAgdC5lcXVhbChpRXZlbnQudGFyZ2V0LCBpbnRlcmFjdGFibGUuZWxlbWVudCxcbiAgICAnZXZlbnQudGFyZ2V0JylcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbiBmaXJlRXZlbnQnLCAodCkgPT4ge1xuICBjb25zdCBpbnRlcmFjdGlvbiA9IG5ldyBJbnRlcmFjdGlvbih7IHNpZ25hbHM6IGhlbHBlcnMubW9ja1NpZ25hbHMoKSB9KVxuICBjb25zdCBpbnRlcmFjdGFibGUgPSBoZWxwZXJzLm1vY2tJbnRlcmFjdGFibGUoKVxuICBjb25zdCBpRXZlbnQgPSB7fSBhcyBJbnRlcmFjdC5JbnRlcmFjdEV2ZW50XG4gIGxldCBmaXJlZEV2ZW50XG5cbiAgLy8gdGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBmcm9tIGFjdGlvbnMuZmlyZVByZXBhcmVkXG4gIGludGVyYWN0YWJsZS5maXJlID0gKGV2ZW50KSA9PiB7XG4gICAgZmlyZWRFdmVudCA9IGV2ZW50XG4gIH1cblxuICBpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUgPSBpbnRlcmFjdGFibGVcbiAgaW50ZXJhY3Rpb24uX2ZpcmVFdmVudChpRXZlbnQpXG5cbiAgdC5lcXVhbChmaXJlZEV2ZW50LCBpRXZlbnQsXG4gICAgJ3RhcmdldCBpbnRlcmFjdGFibGVcXCdzIGZpcmUgbWV0aG9kIGlzIGNhbGxlZCcpXG5cbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmV2RXZlbnQsIGlFdmVudCxcbiAgICAnaW50ZXJhY3Rpb24ucHJldkV2ZW50IGlzIHVwZGF0ZWQnKVxuXG4gIHQuZW5kKClcbn0pXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJhY3Rpb24uc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkludGVyYWN0aW9uLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sNEJBQTRCLENBQUE7QUFDN0MsT0FBTyxZQUFZLE1BQU0sZ0NBQWdDLENBQUE7QUFDekQsT0FBTyxPQUFPLE1BQU0sMkJBQTJCLENBQUE7QUFDL0MsT0FBTyxhQUFhLE1BQU0saUJBQWlCLENBQUE7QUFDM0MsT0FBTyxXQUFXLE1BQU0sZUFBZSxDQUFBO0FBQ3ZDLE9BQU8sS0FBSyxPQUFPLE1BQU0sa0JBQWtCLENBQUE7QUFFM0MsTUFBTSx5QkFBeUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBRSxFQUFTLENBQUMsQ0FBQTtBQUUxRixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNwQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUE7SUFDdkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUM3QixNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FBQztRQUNsQyxXQUFXLEVBQUUsUUFBUTtRQUNyQixPQUFPO0tBQ1IsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxVQUFVLEdBQUc7UUFDakIsSUFBSSxFQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQ3pCLE1BQU0sRUFBSyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUN6QixTQUFTLEVBQUUsQ0FBQztLQUNiLENBQUE7SUFFRCxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUNuQyx3REFBd0QsQ0FBQyxDQUFBO0lBRTNELENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFFB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QUNuQyxrQ0FBa0MsQ0FBQyxDQUFBO0lBRXJDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtBQUNULENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRlc3QgZnJvbSAnQGludGVyYWN0anMvX2Rldi90ZXN0L3Rlc3QnXG5pbXBvcnQgcG9pbnRlclV0aWxzIGZyb20gJ0BpbnRlcmFjdGpzL3V0aWxzL3BvaW50ZXJVdGlscydcbmltcG9ydCBTaWduYWxzIGZyb20gJ0BpbnRlcmFjdGpzL3V0aWxzL1NpZ25hbHMnXG5pbXBvcnQgSW50ZXJhY3RFdmVudCBmcm9tICcuL0ludGVyYWN0RXZlbnQnXG5pbXBvcnQgSW50ZXJhY3Rpb24gZnJvbSAnLi9JbnRlcmFjdGlvbidcbmltcG9ydCAqIGFzIGhlbHBlcnMgZnJvbSAnLi90ZXN0cy9faGVscGVycydcblxuY29uc3QgbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscyA9ICgpID0+IG5ldyBJbnRlcmFjdGlvbih7IHNpZ25hbHM6IG5ldyBTaWduYWxzKCkgfSBhcyBhbnkpXG5cbnRlc3QoJ0ludGVyYWN0aW9uIGNvbnN0cnVjdG9yJywgKHQpID0+IHtcbiAgY29uc3QgdGVzdFR5cGUgPSAndGVzdCdcbiAgY29uc3Qgc2lnbmFscyA9IG5ldyBTaWduYWxzKClcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBuZXcgSW50ZXJhY3Rpb24oe1xuICAgIHBvaW50ZXJUeXBlOiB0ZXN0VHlwZSxcbiAgICBzaWduYWxzLFxuICB9KVxuICBjb25zdCB6ZXJvQ29vcmRzID0ge1xuICAgIHBhZ2UgICAgIDogeyB4OiAwLCB5OiAwIH0sXG4gICAgY2xpZW50ICAgOiB7IHg6IDAsIHk6IDAgfSxcbiAgICB0aW1lU3RhbXA6IDAsXG4gIH1cblxuICB0LmVxdWFsKGludGVyYWN0aW9uLl9zaWduYWxzLCBzaWduYWxzLFxuICAgICdzaWduYWxzIG9wdGlvbiBpcyBzZXQgYXNzaWduZWQgdG8gaW50ZXJhY3Rpb24uX3NpZ25hbHMnKVxuXG4gIHQub2soaW50ZXJhY3Rpb24ucHJlcGFyZWQgaW5zdGFuY2VvZiBPYmplY3QsXG4gICAgJ2ludGVyYWN0aW9uLnByZXBhcmVkIGlzIGFuIG9iamVjdCcpXG4gIHQub2soaW50ZXJhY3Rpb24uZG93blBvaW50ZXIgaW5zdGFuY2VvZiBPYmplY3QsXG4gICAgJ2ludGVyYWN0aW9uLmRvd25Qb2ludGVyIGlzIGFuIG9iamVjdCcpXG5cbiAgZm9yIChjb25zdCBjb29yZEZpZWxkIGluIGludGVyYWN0aW9uLmNvb3Jkcykge1xuICAgIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmNvb3Jkc1tjb29yZEZpZWxkXSwgemVyb0Nvb3JkcyxcbiAgICAgIGBudGVyYWN0aW9uLmNvb3Jkcy4ke2Nvb3JkRmllbGR9IHNldCB0byB6ZXJvYClcbiAgfVxuXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24ucG9pbnRlclR5cGUsIHRlc3RUeXBlLFxuICAgICdpbnRlcmFjdGlvbi5wb2ludGVyVHlwZSBpcyBzZXQnKVxuXG4gIC8vIHBvaW50ZXJJbmZvIHByb3BlcnRpZXNcbiAgdC5kZWVwRXF1YWwoXG4gICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMsXG4gICAgW10sXG4gICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJzIGlzIGluaXRpYWxseSBhbiBlbXB0eSBhcnJheScpXG5cbiAgLy8gZmFsc2UgcHJvcGVydGllc1xuICBmb3IgKGNvbnN0IHByb3Agb2YgJ3BvaW50ZXJJc0Rvd24gcG9pbnRlcldhc01vdmVkIF9pbnRlcmFjdGluZyBtb3VzZScuc3BsaXQoJyAnKSkge1xuICAgIHQubm90T2soaW50ZXJhY3Rpb25bcHJvcF0sIGBpbnRlcmFjdGlvbi4ke3Byb3B9IGlzIGZhbHNlYClcbiAgfVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ0ludGVyYWN0aW9uLmdldFBvaW50ZXJJbmRleCcsICh0KSA9PiB7XG4gIGNvbnN0IGludGVyYWN0aW9uID0gbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscygpXG5cbiAgaW50ZXJhY3Rpb24ucG9pbnRlcnMgPSBbMiwgNCwgNSwgMCwgLTFdLm1hcCgoaWQpID0+ICh7IGlkIH0pKSBhcyBhbnlcblxuICBpbnRlcmFjdGlvbi5wb2ludGVycy5mb3JFYWNoKCh7IGlkIH0sIGluZGV4KSA9PiB7XG4gICAgdC5lcXVhbChpbnRlcmFjdGlvbi5nZXRQb2ludGVySW5kZXgoeyBwb2ludGVySWQ6IGlkIH0pLCBpbmRleClcbiAgfSlcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyJywgKHQpID0+IHtcbiAgdC50ZXN0KCdubyBleGlzdGluZyBwb2ludGVycycsIChzdCkgPT4ge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0gbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscygpXG4gICAgY29uc3QgcG9pbnRlciA9IHsgcG9pbnRlcklkOiAxMCB9IGFzIGFueVxuICAgIGNvbnN0IGV2ZW50ID0ge30gYXMgYW55XG5cbiAgICBjb25zdCByZXQgPSBpbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyKHBvaW50ZXIsIGV2ZW50LCBudWxsKVxuXG4gICAgc3QuZGVlcEVxdWFsKFxuICAgICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMsXG4gICAgICBbe1xuICAgICAgICBpZDogcG9pbnRlci5wb2ludGVySWQsXG4gICAgICAgIHBvaW50ZXIsXG4gICAgICAgIGV2ZW50LFxuICAgICAgICBkb3duVGltZTogbnVsbCxcbiAgICAgICAgZG93blRhcmdldDogbnVsbCxcbiAgICAgIH1dLFxuICAgICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJzID09IFt7IHBvaW50ZXIsIC4uLiB9XScpXG4gICAgc3QuZXF1YWwocmV0LCAwLCAnbmV3IHBvaW50ZXIgaW5kZXggaXMgcmV0dXJuZWQnKVxuXG4gICAgc3QuZW5kKClcbiAgfSlcblxuICB0LnRlc3QoJ25ldyBwb2ludGVyIHdpdGggZXhpc2l0aW5nIHBvaW50ZXInLCAoc3QpID0+IHtcbiAgICBjb25zdCBpbnRlcmFjdGlvbiA9IG1ha2VJbnRlcmFjdGlvbkFuZFNpZ25hbHMoKVxuICAgIGNvbnN0IGV4aXN0aW5nOiBhbnkgPSB7IHBvaW50ZXJJZDogMCB9XG4gICAgY29uc3QgZXZlbnQ6IGFueSA9IHt9XG5cbiAgICBpbnRlcmFjdGlvbi51cGRhdGVQb2ludGVyKGV4aXN0aW5nLCBldmVudCwgbnVsbClcblxuICAgIGNvbnN0IG5ld1BvaW50ZXI6IGFueSA9IHsgcG9pbnRlcklkOiAxMCB9XG4gICAgY29uc3QgcmV0ID0gaW50ZXJhY3Rpb24udXBkYXRlUG9pbnRlcihuZXdQb2ludGVyLCBldmVudCwgbnVsbClcblxuICAgIHN0LmRlZXBFcXVhbChcbiAgICAgIGludGVyYWN0aW9uLnBvaW50ZXJzLCBbXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogZXhpc3RpbmcucG9pbnRlcklkLFxuICAgICAgICAgIHBvaW50ZXI6IGV4aXN0aW5nLFxuICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgIGRvd25UaW1lOiBudWxsLFxuICAgICAgICAgIGRvd25UYXJnZXQ6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogbmV3UG9pbnRlci5wb2ludGVySWQsXG4gICAgICAgICAgcG9pbnRlcjogbmV3UG9pbnRlcixcbiAgICAgICAgICBldmVudCxcbiAgICAgICAgICBkb3duVGltZTogbnVsbCxcbiAgICAgICAgICBkb3duVGFyZ2V0OiBudWxsLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgICdpbnRlcmFjdGlvbi5wb2ludGVycyA9PSBbeyBwb2ludGVyOiBleGlzdGluZywgLi4uIH0sIHsgcG9pbnRlcjogbmV3UG9pbnRlciwgLi4uIH1dJylcblxuICAgIHN0LmVxdWFsKHJldCwgMSwgJ3NlY29uZCBwb2ludGVyIGluZGV4IGlzIDEnKVxuXG4gICAgc3QuZW5kKClcbiAgfSlcblxuICB0LnRlc3QoJ3VwZGF0ZSBleGlzdGluZyBwb2ludGVycycsIChzdCkgPT4ge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0gbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscygpXG5cbiAgICBjb25zdCBvbGRQb2ludGVycyA9IFstMywgMTAsIDJdLm1hcCgocG9pbnRlcklkKSA9PiAoeyBwb2ludGVySWQgfSkpXG4gICAgY29uc3QgbmV3UG9pbnRlcnMgPSBvbGRQb2ludGVycy5tYXAoKHBvaW50ZXIpID0+ICh7IC4uLnBvaW50ZXIsIG5ldzogdHJ1ZSB9KSlcblxuICAgIG9sZFBvaW50ZXJzLmZvckVhY2goKHBvaW50ZXI6IGFueSkgPT4gaW50ZXJhY3Rpb24udXBkYXRlUG9pbnRlcihwb2ludGVyLCBwb2ludGVyLCBudWxsKSlcbiAgICBuZXdQb2ludGVycy5mb3JFYWNoKChwb2ludGVyOiBhbnkpID0+IGludGVyYWN0aW9uLnVwZGF0ZVBvaW50ZXIocG9pbnRlciwgcG9pbnRlciwgbnVsbCkpXG5cbiAgICBzdC5lcXVhbChpbnRlcmFjdGlvbi5wb2ludGVycy5sZW5ndGgsIG9sZFBvaW50ZXJzLmxlbmd0aCxcbiAgICAgICdudW1iZXIgb2YgcG9pbnRlcnMgaXMgdW5jaGFuZ2VkJylcblxuICAgIGludGVyYWN0aW9uLnBvaW50ZXJzLmZvckVhY2goKHBvaW50ZXJJbmZvLCBpKSA9PiB7XG4gICAgICBzdC5lcXVhbChwb2ludGVySW5mby5pZCwgb2xkUG9pbnRlcnNbaV0ucG9pbnRlcklkLFxuICAgICAgICBgcG9pbnRlclske2l9XS5pZCBpcyB0aGUgc2FtZWApXG4gICAgICBzdC5ub3RFcXVhbChwb2ludGVySW5mby5wb2ludGVyLCBvbGRQb2ludGVyc1tpXSxcbiAgICAgICAgYG5ldyBwb2ludGVyICR7aX0gIT09IG9sZCBwb2ludGVyIG9iamVjdGApXG4gICAgfSlcblxuICAgIHN0LmVuZCgpXG4gIH0pXG5cbiAgdC5lbmQoKVxufSlcblxudGVzdCgnSW50ZXJhY3Rpb24ucmVtb3ZlUG9pbnRlcicsICh0KSA9PiB7XG4gIGNvbnN0IGludGVyYWN0aW9uID0gbWFrZUludGVyYWN0aW9uQW5kU2lnbmFscygpXG4gIGNvbnN0IGlkcyA9IFswLCAxLCAyLCAzXVxuICBjb25zdCByZW1vdmFscyA9IFtcbiAgICB7IGlkOiAwLCByZW1haW46IFsxLCAyLCAzXSwgbWVzc2FnZTogJ2ZpcnN0IG9mIDQnIH0sXG4gICAgeyBpZDogMiwgcmVtYWluOiBbMSwgICAgM10sIG1lc3NhZ2U6ICdtaWRkbGUgb2YgMycgfSxcbiAgICB7IGlkOiAzLCByZW1haW46IFsxICAgICAgXSwgbWVzc2FnZTogJ2xhc3Qgb2YgMicgfSxcbiAgICB7IGlkOiAxLCByZW1haW46IFsgICAgICAgXSwgbWVzc2FnZTogJ2ZpbmFsJyB9LFxuICBdXG5cbiAgaWRzLmZvckVhY2goKHBvaW50ZXJJZCkgPT4gaW50ZXJhY3Rpb24udXBkYXRlUG9pbnRlcih7IHBvaW50ZXJJZCB9IGFzIGFueSwge30gYXMgYW55LCBudWxsKSlcblxuICBmb3IgKGNvbnN0IHJlbW92YWwgb2YgcmVtb3ZhbHMpIHtcbiAgICBpbnRlcmFjdGlvbi5yZW1vdmVQb2ludGVyKHsgcG9pbnRlcklkOiByZW1vdmFsLmlkIH0sIG51bGwpXG5cbiAgICB0LmRlZXBFcXVhbChcbiAgICAgIGludGVyYWN0aW9uLnBvaW50ZXJzLm1hcCgocCkgPT4gcC5pZCksXG4gICAgICByZW1vdmFsLnJlbWFpbixcbiAgICAgIGAke3JlbW92YWwubWVzc2FnZX0gLSByZW1haW5pbmcgaW50ZXJhY3Rpb24ucG9pbnRlcnMgaXMgY29ycmVjdGApXG4gIH1cblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbi5wb2ludGVye0Rvd24sTW92ZSxVcH0gdXBkYXRlUG9pbnRlcicsICh0KSA9PiB7XG4gIGNvbnN0IHNpZ25hbHMgPSBuZXcgU2lnbmFscygpXG4gIGNvbnN0IGludGVyYWN0aW9uID0gbmV3IEludGVyYWN0aW9uKHsgc2lnbmFscyB9IGFzIGFueSlcbiAgY29uc3QgZXZlbnRUYXJnZXQ6IGFueSA9IHt9XG4gIGNvbnN0IHBvaW50ZXI6IGFueSA9IHtcbiAgICB0YXJnZXQ6IGV2ZW50VGFyZ2V0LFxuICAgIHBvaW50ZXJJZDogMCxcbiAgfVxuICBsZXQgaW5mbzogYW55ID0ge31cblxuICBzaWduYWxzLm9uKCd1cGRhdGUtcG9pbnRlcicsIChhcmcpID0+IHsgaW5mby51cGRhdGVkID0gYXJnLnBvaW50ZXJJbmZvIH0pXG4gIHNpZ25hbHMub24oJ3JlbW92ZS1wb2ludGVyJywgKGFyZykgPT4geyBpbmZvLnJlbW92ZWQgPSBhcmcucG9pbnRlckluZm8gfSlcblxuICBpbnRlcmFjdGlvbi5jb29yZHMuY3VyLnRpbWVTdGFtcCA9IDBcbiAgY29uc3QgY29tbW9uUG9pbnRlckluZm8gPSB7XG4gICAgaWQ6IDAsXG4gICAgcG9pbnRlcixcbiAgICBldmVudDogcG9pbnRlcixcbiAgICBkb3duVGltZTogbnVsbCxcbiAgICBkb3duVGFyZ2V0OiBudWxsLFxuICB9XG5cbiAgaW50ZXJhY3Rpb24ucG9pbnRlckRvd24ocG9pbnRlciwgcG9pbnRlciwgZXZlbnRUYXJnZXQpXG4gIHQuZGVlcEVxdWFsKFxuICAgIGluZm8udXBkYXRlZCxcbiAgICB7XG4gICAgICAuLi5jb21tb25Qb2ludGVySW5mbyxcbiAgICAgIGRvd25UaW1lOiBpbnRlcmFjdGlvbi5jb29yZHMuY3VyLnRpbWVTdGFtcCxcbiAgICAgIGRvd25UYXJnZXQ6IGV2ZW50VGFyZ2V0LFxuICAgIH0sXG4gICAgJ2ludGVyYWN0aW9uLnBvaW50ZXJEb3duIHVwZGF0ZXMgcG9pbnRlcidcbiAgKVxuICB0LmVxdWFsKGluZm8ucmVtb3ZlZCwgdW5kZWZpbmVkLCAnaW50ZXJhY3Rpb24ucG9pbnRlckRvd24gZG9lc25cXCd0IHJlbW92ZSBwb2ludGVyJylcbiAgaW50ZXJhY3Rpb24ucmVtb3ZlUG9pbnRlcihwb2ludGVyLCBudWxsKVxuICBpbmZvID0ge31cblxuICBpbnRlcmFjdGlvbi5wb2ludGVyTW92ZShwb2ludGVyLCBwb2ludGVyLCBldmVudFRhcmdldClcbiAgdC5kZWVwRXF1YWwoXG4gICAgaW5mby51cGRhdGVkLFxuICAgIGNvbW1vblBvaW50ZXJJbmZvLFxuICAgICdpbnRlcmFjdGlvbi5wb2ludGVyTW92ZSB1cGRhdGVzIHBvaW50ZXInXG4gIClcbiAgdC5lcXVhbChpbmZvLnJlbW92ZWQsIHVuZGVmaW5lZCwgJ2ludGVyYWN0aW9uLnBvaW50ZXJNb3ZlIGRvZXNuXFwndCByZW1vdmUgcG9pbnRlcicpXG4gIGluZm8gPSB7fVxuXG4gIGludGVyYWN0aW9uLnBvaW50ZXJVcChwb2ludGVyLCBwb2ludGVyLCBldmVudFRhcmdldCwgbnVsbClcbiAgdC5lcXVhbChpbmZvLnVwZGF0ZWQsIHVuZGVmaW5lZCwgJ2ludGVyYWN0aW9uLnBvaW50ZXJVcCBkb2VzblxcJ3QgdXBkYXRlIGV4aXN0aW5nIHBvaW50ZXInKVxuICBpbmZvID0ge31cblxuICBpbnRlcmFjdGlvbi5wb2ludGVyVXAocG9pbnRlciwgcG9pbnRlciwgZXZlbnRUYXJnZXQsIG51bGwpXG4gIHQuZGVlcEVxdWFsKFxuICAgIGluZm8udXBkYXRlZCxcbiAgICBjb21tb25Qb2ludGVySW5mbyxcbiAgICAnaW50ZXJhY3Rpb24ucG9pbnRlclVwIHVwZGF0ZXMgbm9uIGV4aXN0aW5nIHBvaW50ZXInXG4gIClcbiAgdC5kZWVwRXF1YWwoaW5mby5yZW1vdmVkLCBjb21tb25Qb2ludGVySW5mbywgJ2ludGVyYWN0aW9uLnBvaW50ZXJVcCBhbHNvIHJlbW92ZXMgcG9pbnRlcicpXG4gIGluZm8gPSB7fVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ0ludGVyYWN0aW9uLnBvaW50ZXJEb3duJywgKHQpID0+IHtcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcbiAgY29uc3QgY29vcmRzID0gaGVscGVycy5uZXdDb29yZHNTZXQoKVxuICBjb25zdCBldmVudFRhcmdldCA9IHt9IGFzIEVsZW1lbnRcbiAgY29uc3QgZXZlbnQ6IGFueSA9IHtcbiAgICB0eXBlOiAnZG93bicsXG4gICAgdGFyZ2V0OiBldmVudFRhcmdldCxcbiAgfVxuICBjb25zdCBwb2ludGVyOiBhbnkgPSBoZWxwZXJzLm5ld1BvaW50ZXIoKVxuICBsZXQgc2lnbmFsQXJnXG5cbiAgY29uc3Qgc2lnbmFsTGlzdGVuZXIgPSAoYXJnKSA9PiB7XG4gICAgc2lnbmFsQXJnID0gYXJnXG4gIH1cblxuICBpbnRlcmFjdGlvbi5fc2lnbmFscy5vbignZG93bicsIHNpZ25hbExpc3RlbmVyKVxuXG4gIGNvbnN0IHBvaW50ZXJDb29yZHM6IGFueSA9IHsgcGFnZToge30sIGNsaWVudDoge30gfVxuICBwb2ludGVyVXRpbHMuc2V0Q29vcmRzKHBvaW50ZXJDb29yZHMsIFtwb2ludGVyXSlcblxuICBmb3IgKGNvbnN0IHByb3AgaW4gY29vcmRzKSB7XG4gICAgcG9pbnRlclV0aWxzLmNvcHlDb29yZHMoaW50ZXJhY3Rpb24uY29vcmRzW3Byb3BdLCBjb29yZHNbcHJvcF0pXG4gIH1cblxuICAvLyB0ZXN0IHdoaWxlIGludGVyYWN0aW5nXG4gIGludGVyYWN0aW9uLl9pbnRlcmFjdGluZyA9IHRydWVcbiAgaW50ZXJhY3Rpb24ucG9pbnRlckRvd24ocG9pbnRlciwgZXZlbnQsIGV2ZW50VGFyZ2V0KVxuXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24uZG93bkV2ZW50LCBudWxsLCAnZG93bkV2ZW50IGlzIG5vdCB1cGRhdGVkJylcbiAgdC5kZWVwRXF1YWwoXG4gICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMsXG4gICAgW3tcbiAgICAgIGlkOiBwb2ludGVyLnBvaW50ZXJJZCxcbiAgICAgIHBvaW50ZXIsXG4gICAgICBldmVudCxcbiAgICAgIGRvd25UaW1lOiBudWxsLFxuICAgICAgZG93blRhcmdldDogbnVsbCxcbiAgICB9XSxcbiAgICAncG9pbnRlciBpcyBhZGRlZCdcbiAgKVxuXG4gIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmRvd25Qb2ludGVyLCB7fSBhcyBhbnksICdkb3duUG9pbnRlciBpcyBub3QgdXBkYXRlZCcpXG5cbiAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uY29vcmRzLnN0YXJ0LCBjb29yZHMuc3RhcnQsICdjb29yZHMuc3RhcnQgYXJlIG5vdCBtb2RpZmllZCcpXG4gIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmNvb3Jkcy5jdXIsICAgY29vcmRzLmN1ciwgICAnY29vcmRzLmN1ciAgIGFyZSBub3QgbW9kaWZpZWQnKVxuICB0LmRlZXBFcXVhbChpbnRlcmFjdGlvbi5jb29yZHMucHJldiwgIGNvb3Jkcy5wcmV2LCAgJ2Nvb3Jkcy5wcmV2ICBhcmUgbm90IG1vZGlmaWVkJylcblxuICB0Lm9rKGludGVyYWN0aW9uLnBvaW50ZXJJc0Rvd24sICdwb2ludGVySXNEb3duJylcbiAgdC5ub3RPayhpbnRlcmFjdGlvbi5wb2ludGVyV2FzTW92ZWQsICchcG9pbnRlcldhc01vdmVkJylcblxuICB0LmVxdWFsKHNpZ25hbEFyZy5wb2ludGVyLCAgICAgIHBvaW50ZXIsICAgICAncG9pbnRlciAgICAgIGluIGRvd24gc2lnbmFsIGFyZycpXG4gIHQuZXF1YWwoc2lnbmFsQXJnLmV2ZW50LCAgICAgICAgZXZlbnQsICAgICAgICdldmVudCAgICAgICAgaW4gZG93biBzaWduYWwgYXJnJylcbiAgdC5lcXVhbChzaWduYWxBcmcuZXZlbnRUYXJnZXQsICBldmVudFRhcmdldCwgJ2V2ZW50VGFyZ2V0ICBpbiBkb3duIHNpZ25hbCBhcmcnKVxuICB0LmVxdWFsKHNpZ25hbEFyZy5wb2ludGVySW5kZXgsIDAsICAgICAgICAgICAncG9pbnRlckluZGV4IGluIGRvd24gc2lnbmFsIGFyZycpXG5cbiAgLy8gdGVzdCB3aGlsZSBub3QgaW50ZXJhY3RpbmdcbiAgaW50ZXJhY3Rpb24uX2ludGVyYWN0aW5nID0gZmFsc2VcbiAgLy8gcmVzZXQgcG9pbnRlcklzRG93blxuICBpbnRlcmFjdGlvbi5wb2ludGVySXNEb3duID0gZmFsc2VcbiAgLy8gcHJldGVuZCBwb2ludGVyIHdhcyBtb3ZlZFxuICBpbnRlcmFjdGlvbi5wb2ludGVyV2FzTW92ZWQgPSB0cnVlXG4gIC8vIHJlc2V0IHNpZ25hbEFyZyBvYmplY3RcbiAgc2lnbmFsQXJnID0gdW5kZWZpbmVkXG5cbiAgaW50ZXJhY3Rpb24ucmVtb3ZlUG9pbnRlcihwb2ludGVyLCBudWxsKVxuICBpbnRlcmFjdGlvbi5wb2ludGVyRG93bihwb2ludGVyLCBldmVudCwgZXZlbnRUYXJnZXQpXG5cbiAgLy8gdGltZVN0YW1wIGlzIGFzc2lnbmVkIHdpdGggbmV3IERhdGUuZ2V0VGltZSgpXG4gIC8vIGRvbid0IGxldCBpdCBjYXVzZSBkZWVwRWF1YWwgdG8gZmFpbFxuICBwb2ludGVyQ29vcmRzLnRpbWVTdGFtcCA9IGludGVyYWN0aW9uLmNvb3Jkcy5zdGFydC50aW1lU3RhbXBcblxuICB0LmVxdWFsKGludGVyYWN0aW9uLmRvd25FdmVudCwgZXZlbnQsICdkb3duRXZlbnQgaXMgdXBkYXRlZCcpXG5cbiAgdC5kZWVwRXF1YWwoXG4gICAgaW50ZXJhY3Rpb24ucG9pbnRlcnMsXG4gICAgW3tcbiAgICAgIGlkOiBwb2ludGVyLnBvaW50ZXJJZCxcbiAgICAgIHBvaW50ZXIsXG4gICAgICBldmVudCxcbiAgICAgIGRvd25UaW1lOiBwb2ludGVyQ29vcmRzLnRpbWVTdGFtcCxcbiAgICAgIGRvd25UYXJnZXQ6IGV2ZW50VGFyZ2V0LFxuICAgIH1dLFxuICAgICdpbnRlcmFjdGlvbi5wb2ludGVycyBpcyB1cGRhdGVkJylcblxuICB0LmRlZXBFcXVhbChpbnRlcmFjdGlvbi5jb29yZHMuc3RhcnQsIHBvaW50ZXJDb29yZHMsICdjb29yZHMuc3RhcnQgYXJlIHNldCB0byBwb2ludGVyJylcbiAgdC5kZWVwRXF1YWwoaW50ZXJhY3Rpb24uY29vcmRzLmN1ciwgICBwb2ludGVyQ29vcmRzLCAnY29vcmRzLmN1ciAgIGFyZSBzZXQgdG8gcG9pbnRlcicpXG4gIHQuZGVlcEVxdWFsKGludGVyYWN0aW9uLmNvb3Jkcy5wcmV2LCAgcG9pbnRlckNvb3JkcywgJ2Nvb3Jkcy5wcmV2ICBhcmUgc2V0IHRvIHBvaW50ZXInKVxuXG4gIHQuZXF1YWwodHlwZW9mIHNpZ25hbEFyZywgJ29iamVjdCcsICdkb3duIHNpZ25hbCB3YXMgZmlyZWQgYWdhaW4nKVxuICB0Lm9rKGludGVyYWN0aW9uLnBvaW50ZXJJc0Rvd24sICdwb2ludGVySXNEb3duJylcbiAgdC5ub3RPayhpbnRlcmFjdGlvbi5wb2ludGVyV2FzTW92ZWQsICdwb2ludGVyV2FzTW92ZWQgc2hvdWxkIGFsd2F5cyBjaGFuZ2UgdG8gZmFsc2UnKVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ0ludGVyYWN0aW9uLnN0YXJ0JywgKHQpID0+IHtcbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBtYWtlSW50ZXJhY3Rpb25BbmRTaWduYWxzKClcbiAgY29uc3QgYWN0aW9uID0geyBuYW1lOiAnVEVTVCcgfVxuICBjb25zdCBpbnRlcmFjdGFibGUgPSBoZWxwZXJzLm1vY2tJbnRlcmFjdGFibGUoKVxuICBjb25zdCBlbGVtZW50OiBhbnkgPSB7fVxuICBjb25zdCBwb2ludGVyID0gaGVscGVycy5uZXdQb2ludGVyKClcbiAgY29uc3QgZXZlbnQ6IGFueSA9IHt9XG5cbiAgaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCBpbnRlcmFjdGFibGUsIGVsZW1lbnQpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24ucHJlcGFyZWQubmFtZSwgbnVsbCwgJ2RvIG5vdGhpbmcgaWYgIXBvaW50ZXJJc0Rvd24nKVxuXG4gIC8vIHBvaW50ZXJzIGlzIHN0aWxsIGVtcHR5XG4gIGludGVyYWN0aW9uLnBvaW50ZXJJc0Rvd24gPSB0cnVlXG4gIGludGVyYWN0aW9uLnN0YXJ0KGFjdGlvbiwgaW50ZXJhY3RhYmxlLCBlbGVtZW50KVxuICB0LmVxdWFsKGludGVyYWN0aW9uLnByZXBhcmVkLm5hbWUsIG51bGwsICdkbyBub3RoaW5nIGlmIHRvbyBmZXcgcG9pbnRlcnMgYXJlIGRvd24nKVxuXG4gIGludGVyYWN0aW9uLnBvaW50ZXJEb3duKHBvaW50ZXIsIGV2ZW50LCBudWxsKVxuXG4gIGludGVyYWN0aW9uLl9pbnRlcmFjdGluZyA9IHRydWVcbiAgaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCBpbnRlcmFjdGFibGUsIGVsZW1lbnQpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24ucHJlcGFyZWQubmFtZSwgbnVsbCwgJ2RvIG5vdGhpbmcgaWYgYWxyZWFkeSBpbnRlcmFjdGluZycpXG5cbiAgaW50ZXJhY3Rpb24uX2ludGVyYWN0aW5nID0gZmFsc2VcblxuICBpbnRlcmFjdGFibGUub3B0aW9uc1thY3Rpb24ubmFtZV0gPSB7IGVuYWJsZWQ6IGZhbHNlIH1cbiAgaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCBpbnRlcmFjdGFibGUsIGVsZW1lbnQpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24ucHJlcGFyZWQubmFtZSwgbnVsbCwgJ2RvIG5vdGhpbmcgaWYgYWN0aW9uIGlzIG5vdCBlbmFibGVkJylcbiAgaW50ZXJhY3RhYmxlLm9wdGlvbnNbYWN0aW9uLm5hbWVdID0geyBlbmFibGVkOiB0cnVlIH1cblxuICBsZXQgc2lnbmFsQXJnXG4gIC8vIGxldCBpbnRlcmFjdGluZ0luU3RhcnRMaXN0ZW5lcjtcbiAgY29uc3Qgc2lnbmFsTGlzdGVuZXIgPSAoYXJnKSA9PiB7XG4gICAgc2lnbmFsQXJnID0gYXJnXG4gICAgLy8gaW50ZXJhY3RpbmdJblN0YXJ0TGlzdGVuZXIgPSBhcmcuaW50ZXJhY3Rpb24uaW50ZXJhY3RpbmcoKTtcbiAgfVxuXG4gIGludGVyYWN0aW9uLl9zaWduYWxzLm9uKCdhY3Rpb24tc3RhcnQnLCBzaWduYWxMaXN0ZW5lcilcbiAgaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCBpbnRlcmFjdGFibGUsIGVsZW1lbnQpXG5cbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmVwYXJlZC5uYW1lLCBhY3Rpb24ubmFtZSwgJ2FjdGlvbiBpcyBwcmVwYXJlZCcpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24uaW50ZXJhY3RhYmxlLCBpbnRlcmFjdGFibGUsICdpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUgaXMgdXBkYXRlZCcpXG4gIHQuZXF1YWwoaW50ZXJhY3Rpb24uZWxlbWVudCwgZWxlbWVudCwgJ2ludGVyYWN0aW9uLmVsZW1lbnQgaXMgdXBkYXRlZCcpXG5cbiAgLy8gdC5hc3NlcnQoaW50ZXJhY3RpbmdJblN0YXJ0TGlzdGVuZXIsICdpbnRlcmFjdGlvbiBpcyBpbnRlcmFjdGluZyBkdXJpbmcgYWN0aW9uLXN0YXJ0IHNpZ25hbCcpO1xuICB0LmFzc2VydChpbnRlcmFjdGlvbi5pbnRlcmFjdGluZygpLCAnaW50ZXJhY3Rpb24gaXMgaW50ZXJhY3RpbmcgYWZ0ZXIgc3RhcnQgbWV0aG9kJylcbiAgdC5lcXVhbChzaWduYWxBcmcuaW50ZXJhY3Rpb24sIGludGVyYWN0aW9uLCAnaW50ZXJhY3Rpb24gaW4gc2lnbmFsIGFyZycpXG4gIHQuZXF1YWwoc2lnbmFsQXJnLmV2ZW50LCBldmVudCwgJ2V2ZW50IChpbnRlcmFjdGlvbi5kb3duRXZlbnQpIGluIHNpZ25hbCBhcmcnKVxuXG4gIGludGVyYWN0aW9uLl9pbnRlcmFjdGluZyA9IGZhbHNlXG5cbiAgLy8gaW50ZXJhY3Rpb24uc3RhcnQoYWN0aW9uLCB0YXJnZXQsIGVsZW1lbnQpO1xuICAvLyB0LmRlZXBFcXVhbChzY29wZS5pbnRlcmFjdGlvbnMubGlzdCwgW2ludGVyYWN0aW9uXSwgJ2ludGVyYWN0aW9uIGlzIGFkZGVkIGJhY2sgdG8gc2NvcGUnKTtcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdzdG9wIGludGVyYWN0aW9uIGZyb20gc3RhcnQgZXZlbnQnLCAodCkgPT4ge1xuICBjb25zdCBzY29wZSA9IGhlbHBlcnMubW9ja1Njb3BlKClcblxuICBjb25zdCBpbnRlcmFjdGlvbiA9IHNjb3BlLmludGVyYWN0aW9ucy5uZXcoe30pXG4gIGNvbnN0IGludGVyYWN0YWJsZSA9IGhlbHBlcnMubW9ja0ludGVyYWN0YWJsZSgpXG5cbiAgaW50ZXJhY3Rpb24uaW50ZXJhY3RhYmxlID0gaW50ZXJhY3RhYmxlXG4gIGludGVyYWN0aW9uLmVsZW1lbnQgPSBpbnRlcmFjdGFibGUuZWxlbWVudFxuICBpbnRlcmFjdGlvbi5wcmVwYXJlZCA9IHsgbmFtZTogJ1RFU1QnIH1cblxuICBpbnRlcmFjdGFibGUuZXZlbnRzLm9uKCdURVNUc3RhcnQnLCAoZXZlbnQpID0+IHtcbiAgICBldmVudC5pbnRlcmFjdGlvbi5zdG9wKClcbiAgfSlcblxuICBpbnRlcmFjdGlvbi5fc2lnbmFscy5maXJlKCdhY3Rpb24tc3RhcnQnLCB7IGludGVyYWN0aW9uLCBldmVudDoge30gfSlcblxuICB0Lm5vdE9rKGludGVyYWN0aW9uLmludGVyYWN0aW5nKCksICdpbnRlcmFjdGlvbiBjYW4gYmUgc3RvcHBlZCBmcm9tIHN0YXJ0IGV2ZW50IGxpc3RlbmVyJylcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbiBjcmVhdGVQcmVwYXJlZEV2ZW50JywgKHQpID0+IHtcbiAgY29uc3Qgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBzY29wZS5pbnRlcmFjdGlvbnMubmV3KHt9KVxuICBjb25zdCBpbnRlcmFjdGFibGUgPSBoZWxwZXJzLm1vY2tJbnRlcmFjdGFibGUoKVxuICBjb25zdCBhY3Rpb24gPSB7IG5hbWU6ICdyZXNpemUnIH1cbiAgY29uc3QgcGhhc2UgPSAnVEVTVF9QSEFTRSdcblxuICBpbnRlcmFjdGlvbi5wcmVwYXJlZCA9IGFjdGlvblxuICBpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUgPSBpbnRlcmFjdGFibGVcbiAgaW50ZXJhY3Rpb24uZWxlbWVudCA9IGludGVyYWN0YWJsZS5lbGVtZW50XG4gIGludGVyYWN0aW9uLnByZXZFdmVudCA9IHsgcGFnZToge30sIGNsaWVudDoge30sIHZlbG9jaXR5OiB7fSB9XG5cbiAgY29uc3QgaUV2ZW50ID0gaW50ZXJhY3Rpb24uX2NyZWF0ZVByZXBhcmVkRXZlbnQoe30sIHBoYXNlKVxuXG4gIHQub2soaUV2ZW50IGluc3RhbmNlb2YgSW50ZXJhY3RFdmVudCxcbiAgICAnSW50ZXJhY3RFdmVudCBpcyBmaXJlZCcpXG5cbiAgdC5lcXVhbChpRXZlbnQudHlwZSwgYWN0aW9uLm5hbWUgKyBwaGFzZSxcbiAgICAnZXZlbnQgdHlwZScpXG5cbiAgdC5lcXVhbChpRXZlbnQuaW50ZXJhY3RhYmxlLCBpbnRlcmFjdGFibGUsXG4gICAgJ2V2ZW50LmludGVyYWN0YWJsZScpXG5cbiAgdC5lcXVhbChpRXZlbnQudGFyZ2V0LCBpbnRlcmFjdGFibGUuZWxlbWVudCxcbiAgICAnZXZlbnQudGFyZ2V0JylcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdJbnRlcmFjdGlvbiBmaXJlRXZlbnQnLCAodCkgPT4ge1xuICBjb25zdCBpbnRlcmFjdGlvbiA9IG5ldyBJbnRlcmFjdGlvbih7IHNpZ25hbHM6IGhlbHBlcnMubW9ja1NpZ25hbHMoKSB9KVxuICBjb25zdCBpbnRlcmFjdGFibGUgPSBoZWxwZXJzLm1vY2tJbnRlcmFjdGFibGUoKVxuICBjb25zdCBpRXZlbnQgPSB7fSBhcyBJbnRlcmFjdC5JbnRlcmFjdEV2ZW50XG4gIGxldCBmaXJlZEV2ZW50XG5cbiAgLy8gdGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBmcm9tIGFjdGlvbnMuZmlyZVByZXBhcmVkXG4gIGludGVyYWN0YWJsZS5maXJlID0gKGV2ZW50KSA9PiB7XG4gICAgZmlyZWRFdmVudCA9IGV2ZW50XG4gIH1cblxuICBpbnRlcmFjdGlvbi5pbnRlcmFjdGFibGUgPSBpbnRlcmFjdGFibGVcbiAgaW50ZXJhY3Rpb24uX2ZpcmVFdmVudChpRXZlbnQpXG5cbiAgdC5lcXVhbChmaXJlZEV2ZW50LCBpRXZlbnQsXG4gICAgJ3RhcmdldCBpbnRlcmFjdGFibGVcXCdzIGZpcmUgbWV0aG9kIGlzIGNhbGxlZCcpXG5cbiAgdC5lcXVhbChpbnRlcmFjdGlvbi5wcmV2RXZlbnQsIGlFdmVudCxcbiAgICAnaW50ZXJhY3Rpb24ucHJldkV2ZW50IGlzIHVwZGF0ZWQnKVxuXG4gIHQuZW5kKClcbn0pXG4iXX0=

@@ -8,6 +8,4 @@ import test from '@interactjs/_dev/test/test';

let scope = helpers.mockScope();
interactions.install(scope);
const interaction = interactions.newInteraction({ pointerType: 'TEST' }, scope);
t.equal(scope.interactions.list[0], interaction, 'new Interaction is pushed to scope.interactions');
interactions.install(scope);
t.ok(scope.interactions instanceof Object, 'interactions object added to scope');

@@ -17,3 +15,2 @@ const listeners = scope.interactions.listeners;

scope = helpers.mockScope();
interactions.install(scope);
const newInteraction = scope.interactions.new({});

@@ -43,2 +40,2 @@ t.assert(typeof scope.interactions === 'object');

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb25zLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlcmFjdGlvbnMuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSw0QkFBNEIsQ0FBQTtBQUM3QyxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQTtBQUMvQyxPQUFPLFdBQVcsTUFBTSxlQUFlLENBQUE7QUFDdkMsT0FBTyxZQUFZLE1BQU0sZ0JBQWdCLENBQUE7QUFDekMsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQTtBQUUzQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDekIsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBRS9CLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7SUFFM0IsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FDN0MsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEVBQ3ZCLEtBQUssQ0FDTixDQUFBO0lBRUQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQzdDLGlEQUFpRCxDQUFDLENBQUE7SUFFcEQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUUzQixDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLFlBQVksTUFBTSxFQUFFLG9DQUFvQyxDQUFDLENBQUE7SUFFaEYsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUE7SUFFOUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQy9GLG9DQUFvQyxDQUFDLENBQUE7SUFFdkMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUUzQixZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzNCLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBRWpELENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLENBQUMsWUFBWSxLQUFLLFFBQVEsQ0FBQyxDQUFBO0lBQ2hELENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLFlBQVksT0FBTyxDQUFDLENBQUE7SUFDdkQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxLQUFLLFVBQVUsQ0FBQyxDQUFBO0lBQ3RELENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxZQUFZLFdBQVcsQ0FBQyxDQUFBO0lBQy9DLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRTVELENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDcEMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUV6QyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7QUFDVCxDQUFDLENBQUMsQ0FBQTtBQUVGLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ2hELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUNqQyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFBO0lBRTFCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQTtJQUNoQixLQUFLLENBQUMsT0FBTyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFBO0lBQ2hDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUUzRCxDQUFDLENBQUMsU0FBUyxDQUNULE9BQU8sRUFDUCxFQUFFLEVBQ0Ysb0RBQW9ELENBQUMsQ0FBQTtJQUV2RCxPQUFPLEdBQUcsRUFBRSxDQUFBO0lBRVosS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO0lBQzFCLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUUzRCxDQUFDLENBQUMsU0FBUyxDQUNULE9BQU8sRUFDUCxFQUFFLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUM5QixtREFBbUQsQ0FBQyxDQUFBO0lBRXRELENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtBQUNULENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRlc3QgZnJvbSAnQGludGVyYWN0anMvX2Rldi90ZXN0L3Rlc3QnXG5pbXBvcnQgU2lnbmFscyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9TaWduYWxzJ1xuaW1wb3J0IEludGVyYWN0aW9uIGZyb20gJy4vSW50ZXJhY3Rpb24nXG5pbXBvcnQgaW50ZXJhY3Rpb25zIGZyb20gJy4vaW50ZXJhY3Rpb25zJ1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tICcuL3Rlc3RzL19oZWxwZXJzJ1xuXG50ZXN0KCdpbnRlcmFjdGlvbnMnLCAodCkgPT4ge1xuICBsZXQgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgaW50ZXJhY3Rpb25zLmluc3RhbGwoc2NvcGUpXG5cbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBpbnRlcmFjdGlvbnMubmV3SW50ZXJhY3Rpb24oXG4gICAgeyBwb2ludGVyVHlwZTogJ1RFU1QnIH0sXG4gICAgc2NvcGVcbiAgKVxuXG4gIHQuZXF1YWwoc2NvcGUuaW50ZXJhY3Rpb25zLmxpc3RbMF0sIGludGVyYWN0aW9uLFxuICAgICduZXcgSW50ZXJhY3Rpb24gaXMgcHVzaGVkIHRvIHNjb3BlLmludGVyYWN0aW9ucycpXG5cbiAgaW50ZXJhY3Rpb25zLmluc3RhbGwoc2NvcGUpXG5cbiAgdC5vayhzY29wZS5pbnRlcmFjdGlvbnMgaW5zdGFuY2VvZiBPYmplY3QsICdpbnRlcmFjdGlvbnMgb2JqZWN0IGFkZGVkIHRvIHNjb3BlJylcblxuICBjb25zdCBsaXN0ZW5lcnMgPSBzY29wZS5pbnRlcmFjdGlvbnMubGlzdGVuZXJzXG5cbiAgdC5vayhpbnRlcmFjdGlvbnMubWV0aG9kTmFtZXMucmVkdWNlKChhY2MsIG0pID0+IGFjYyAmJiB0eXBlb2YgbGlzdGVuZXJzW21dID09PSAnZnVuY3Rpb24nLCB0cnVlKSxcbiAgICAnaW50ZXJhY3Rpb25zIG9iamVjdCBhZGRlZCB0byBzY29wZScpXG5cbiAgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgaW50ZXJhY3Rpb25zLmluc3RhbGwoc2NvcGUpXG4gIGNvbnN0IG5ld0ludGVyYWN0aW9uID0gc2NvcGUuaW50ZXJhY3Rpb25zLm5ldyh7fSlcblxuICB0LmFzc2VydCh0eXBlb2Ygc2NvcGUuaW50ZXJhY3Rpb25zID09PSAnb2JqZWN0JylcbiAgdC5hc3NlcnQoc2NvcGUuaW50ZXJhY3Rpb25zLnNpZ25hbHMgaW5zdGFuY2VvZiBTaWduYWxzKVxuICB0LmFzc2VydCh0eXBlb2Ygc2NvcGUuaW50ZXJhY3Rpb25zLm5ldyA9PT0gJ2Z1bmN0aW9uJylcbiAgdC5hc3NlcnQobmV3SW50ZXJhY3Rpb24gaW5zdGFuY2VvZiBJbnRlcmFjdGlvbilcbiAgdC5lcXVhbChuZXdJbnRlcmFjdGlvbi5fc2lnbmFscywgc2NvcGUuaW50ZXJhY3Rpb25zLnNpZ25hbHMpXG5cbiAgdC5hc3NlcnQodHlwZW9mIHNjb3BlLmFjdGlvbnMgPT09ICdvYmplY3QnKVxuICB0LmRlZXBFcXVhbChzY29wZS5hY3Rpb25zLm5hbWVzLCBbXSlcbiAgdC5kZWVwRXF1YWwoc2NvcGUuYWN0aW9ucy5tZXRob2REaWN0LCB7fSlcblxuICB0LmVuZCgpXG59KVxuXG50ZXN0KCdpbnRlcmFjdGlvbnMgZG9jdW1lbnQgZXZlbnQgb3B0aW9ucycsICh0KSA9PiB7XG4gIGNvbnN0IHNjb3BlID0gaGVscGVycy5tb2NrU2NvcGUoKVxuICBjb25zdCBkb2MgPSBzY29wZS5kb2N1bWVudFxuXG4gIGxldCBvcHRpb25zID0ge31cbiAgc2NvcGUuYnJvd3NlciA9IHsgaXNJT1M6IGZhbHNlIH1cbiAgc2NvcGUuc2lnbmFscy5maXJlKCdhZGQtZG9jdW1lbnQnLCB7IGRvYywgc2NvcGUsIG9wdGlvbnMgfSlcblxuICB0LmRlZXBFcXVhbChcbiAgICBvcHRpb25zLFxuICAgIHt9LFxuICAgICdubyBkb2Mgb3B0aW9ucy5ldmVudC5wYXNzaXZlIGlzIGFkZGVkIHdoZW4gbm90IGlPUycpXG5cbiAgb3B0aW9ucyA9IHt9XG5cbiAgc2NvcGUuYnJvd3Nlci5pc0lPUyA9IHRydWVcbiAgc2NvcGUuc2lnbmFscy5maXJlKCdhZGQtZG9jdW1lbnQnLCB7IGRvYywgc2NvcGUsIG9wdGlvbnMgfSlcblxuICB0LmRlZXBFcXVhbChcbiAgICBvcHRpb25zLFxuICAgIHsgZXZlbnRzOiB7IHBhc3NpdmU6IGZhbHNlIH0gfSxcbiAgICAnZG9jIG9wdGlvbnMuZXZlbnQucGFzc2l2ZSBpcyBzZXQgdG8gZmFsc2UgZm9yIGlPUycpXG5cbiAgdC5lbmQoKVxufSlcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb25zLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlcmFjdGlvbnMuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSw0QkFBNEIsQ0FBQTtBQUM3QyxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQTtBQUMvQyxPQUFPLFdBQVcsTUFBTSxlQUFlLENBQUE7QUFDdkMsT0FBTyxZQUFZLE1BQU0sZ0JBQWdCLENBQUE7QUFDekMsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQTtBQUUzQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDekIsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBRS9CLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQzdDLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxFQUN2QixLQUFLLENBQ04sQ0FBQTtJQUVELENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUM3QyxpREFBaUQsQ0FBQyxDQUFBO0lBRXBELENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksWUFBWSxNQUFNLEVBQUUsb0NBQW9DLENBQUMsQ0FBQTtJQUVoRixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQTtJQUU5QyxDQUFDLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLFVBQVUsRUFBRSxJQUFJLENBQUMsRUFDL0Ysb0NBQW9DLENBQUMsQ0FBQTtJQUV2QyxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBRTNCLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBRWpELENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLENBQUMsWUFBWSxLQUFLLFFBQVEsQ0FBQyxDQUFBO0lBQ2hELENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLFlBQVksT0FBTyxDQUFDLENBQUE7SUFDdkQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxLQUFLLFVBQVUsQ0FBQyxDQUFBO0lBQ3RELENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxZQUFZLFdBQVcsQ0FBQyxDQUFBO0lBQy9DLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRTVELENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFBO0lBQzNDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDcEMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUV6QyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7QUFDVCxDQUFDLENBQUMsQ0FBQTtBQUVGLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ2hELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUNqQyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFBO0lBRTFCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQTtJQUNoQixLQUFLLENBQUMsT0FBTyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFBO0lBQ2hDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUUzRCxDQUFDLENBQUMsU0FBUyxDQUNULE9BQU8sRUFDUCxFQUFFLEVBQ0Ysb0RBQW9ELENBQUMsQ0FBQTtJQUV2RCxPQUFPLEdBQUcsRUFBRSxDQUFBO0lBRVosS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO0lBQzFCLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUUzRCxDQUFDLENBQUMsU0FBUyxDQUNULE9BQU8sRUFDUCxFQUFFLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUM5QixtREFBbUQsQ0FBQyxDQUFBO0lBRXRELENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtBQUNULENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRlc3QgZnJvbSAnQGludGVyYWN0anMvX2Rldi90ZXN0L3Rlc3QnXG5pbXBvcnQgU2lnbmFscyBmcm9tICdAaW50ZXJhY3Rqcy91dGlscy9TaWduYWxzJ1xuaW1wb3J0IEludGVyYWN0aW9uIGZyb20gJy4vSW50ZXJhY3Rpb24nXG5pbXBvcnQgaW50ZXJhY3Rpb25zIGZyb20gJy4vaW50ZXJhY3Rpb25zJ1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tICcuL3Rlc3RzL19oZWxwZXJzJ1xuXG50ZXN0KCdpbnRlcmFjdGlvbnMnLCAodCkgPT4ge1xuICBsZXQgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgY29uc3QgaW50ZXJhY3Rpb24gPSBpbnRlcmFjdGlvbnMubmV3SW50ZXJhY3Rpb24oXG4gICAgeyBwb2ludGVyVHlwZTogJ1RFU1QnIH0sXG4gICAgc2NvcGVcbiAgKVxuXG4gIHQuZXF1YWwoc2NvcGUuaW50ZXJhY3Rpb25zLmxpc3RbMF0sIGludGVyYWN0aW9uLFxuICAgICduZXcgSW50ZXJhY3Rpb24gaXMgcHVzaGVkIHRvIHNjb3BlLmludGVyYWN0aW9ucycpXG5cbiAgdC5vayhzY29wZS5pbnRlcmFjdGlvbnMgaW5zdGFuY2VvZiBPYmplY3QsICdpbnRlcmFjdGlvbnMgb2JqZWN0IGFkZGVkIHRvIHNjb3BlJylcblxuICBjb25zdCBsaXN0ZW5lcnMgPSBzY29wZS5pbnRlcmFjdGlvbnMubGlzdGVuZXJzXG5cbiAgdC5vayhpbnRlcmFjdGlvbnMubWV0aG9kTmFtZXMucmVkdWNlKChhY2MsIG0pID0+IGFjYyAmJiB0eXBlb2YgbGlzdGVuZXJzW21dID09PSAnZnVuY3Rpb24nLCB0cnVlKSxcbiAgICAnaW50ZXJhY3Rpb25zIG9iamVjdCBhZGRlZCB0byBzY29wZScpXG5cbiAgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG5cbiAgY29uc3QgbmV3SW50ZXJhY3Rpb24gPSBzY29wZS5pbnRlcmFjdGlvbnMubmV3KHt9KVxuXG4gIHQuYXNzZXJ0KHR5cGVvZiBzY29wZS5pbnRlcmFjdGlvbnMgPT09ICdvYmplY3QnKVxuICB0LmFzc2VydChzY29wZS5pbnRlcmFjdGlvbnMuc2lnbmFscyBpbnN0YW5jZW9mIFNpZ25hbHMpXG4gIHQuYXNzZXJ0KHR5cGVvZiBzY29wZS5pbnRlcmFjdGlvbnMubmV3ID09PSAnZnVuY3Rpb24nKVxuICB0LmFzc2VydChuZXdJbnRlcmFjdGlvbiBpbnN0YW5jZW9mIEludGVyYWN0aW9uKVxuICB0LmVxdWFsKG5ld0ludGVyYWN0aW9uLl9zaWduYWxzLCBzY29wZS5pbnRlcmFjdGlvbnMuc2lnbmFscylcblxuICB0LmFzc2VydCh0eXBlb2Ygc2NvcGUuYWN0aW9ucyA9PT0gJ29iamVjdCcpXG4gIHQuZGVlcEVxdWFsKHNjb3BlLmFjdGlvbnMubmFtZXMsIFtdKVxuICB0LmRlZXBFcXVhbChzY29wZS5hY3Rpb25zLm1ldGhvZERpY3QsIHt9KVxuXG4gIHQuZW5kKClcbn0pXG5cbnRlc3QoJ2ludGVyYWN0aW9ucyBkb2N1bWVudCBldmVudCBvcHRpb25zJywgKHQpID0+IHtcbiAgY29uc3Qgc2NvcGUgPSBoZWxwZXJzLm1vY2tTY29wZSgpXG4gIGNvbnN0IGRvYyA9IHNjb3BlLmRvY3VtZW50XG5cbiAgbGV0IG9wdGlvbnMgPSB7fVxuICBzY29wZS5icm93c2VyID0geyBpc0lPUzogZmFsc2UgfVxuICBzY29wZS5zaWduYWxzLmZpcmUoJ2FkZC1kb2N1bWVudCcsIHsgZG9jLCBzY29wZSwgb3B0aW9ucyB9KVxuXG4gIHQuZGVlcEVxdWFsKFxuICAgIG9wdGlvbnMsXG4gICAge30sXG4gICAgJ25vIGRvYyBvcHRpb25zLmV2ZW50LnBhc3NpdmUgaXMgYWRkZWQgd2hlbiBub3QgaU9TJylcblxuICBvcHRpb25zID0ge31cblxuICBzY29wZS5icm93c2VyLmlzSU9TID0gdHJ1ZVxuICBzY29wZS5zaWduYWxzLmZpcmUoJ2FkZC1kb2N1bWVudCcsIHsgZG9jLCBzY29wZSwgb3B0aW9ucyB9KVxuXG4gIHQuZGVlcEVxdWFsKFxuICAgIG9wdGlvbnMsXG4gICAgeyBldmVudHM6IHsgcGFzc2l2ZTogZmFsc2UgfSB9LFxuICAgICdkb2Mgb3B0aW9ucy5ldmVudC5wYXNzaXZlIGlzIHNldCB0byBmYWxzZSBmb3IgaU9TJylcblxuICB0LmVuZCgpXG59KVxuIl19

10

package.json
{
"name": "@interactjs/core",
"version": "1.4.0-beta.4+sha.d8836bd",
"version": "1.4.0-rc.0+sha.8dd437f",
"peerDependencies": {
"@interactjs/dev-tools": "1.4.0-beta.4+sha.d8836bd",
"@interactjs/utils": "1.4.0-beta.4+sha.d8836bd"
"@interactjs/dev-tools": "1.4.0-rc.0+sha.8dd437f",
"@interactjs/utils": "1.4.0-rc.0+sha.8dd437f"
},
"devDependencies": {
"@interactjs/_dev": "1.4.0-beta.4+sha.d8836bd",
"@interactjs/utils": "1.4.0-beta.4+sha.d8836bd"
"@interactjs/_dev": "1.4.0-rc.0+sha.8dd437f",
"@interactjs/utils": "1.4.0-rc.0+sha.8dd437f"
},

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

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