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

react-modal-promise

Package Overview
Dependencies
Maintainers
1
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-modal-promise - npm Package Compare versions

Comparing version 0.7.2 to 0.7.3

44

lib/index.es.js

@@ -1,2 +0,2 @@

import React, { forwardRef, useState, useCallback, useImperativeHandle, useEffect, useMemo } from 'react';
import React, { forwardRef, useState, useCallback, useRef, useEffect, useImperativeHandle, useMemo } from 'react';

@@ -62,3 +62,2 @@ /*! *****************************************************************************

var SCOPE_KEY = 'factoryStack';
var scopeStorage = {};
if (typeof window !== 'undefined') {

@@ -68,17 +67,16 @@ if (!window[SCOPE_KEY]) {

}
scopeStorage = window[SCOPE_KEY];
}
var registerContainer = function (scope, ref) {
scopeStorage[scope] = ref;
window[SCOPE_KEY][scope] = ref;
return ref;
};
var unregisterContainer = function (scope) {
delete scopeStorage[scope];
delete window[SCOPE_KEY][scope];
};
var getContainer = function (scope) {
return scopeStorage[scope || DEFAULT_SCOPE];
return window[SCOPE_KEY][scope || DEFAULT_SCOPE];
};
var InstanceContainer = function (props, ref) {
var _a = props || {}, _b = _a.scope, scope = _b === void 0 ? DEFAULT_SCOPE : _b, enterTimeout = _a.enterTimeout, exitTimeout = _a.exitTimeout, isAppendIntances = _a.isAppendIntances, onOpen = _a.onOpen, onRemove = _a.onRemove, onResolve = _a.onResolve, onReject = _a.onReject;
var _a = props || {}, _b = _a.scope, scope = _b === void 0 ? DEFAULT_SCOPE : _b, enterTimeout = _a.enterTimeout, exitTimeout = _a.exitTimeout, isAppendIntances = _a.isAppendIntances, onResolve = _a.onResolve, onReject = _a.onReject;
var _c = useState({}), instances = _c[0], setInstances = _c[1];

@@ -96,3 +94,4 @@ var _d = useState([]), hashStack = _d[0], setHashStack = _d[1];

]);
var remove = useCallback(function (hash, options) {
var remove = function (hash, options) {
var _a;
setHashStack(function (stack) { return stack.filter(function (s) { return s !== hash; }); });

@@ -104,17 +103,21 @@ setTimeout(function () {

});
onRemove === null || onRemove === void 0 ? void 0 : onRemove(hash);
}, options === null || options === void 0 ? void 0 : options.exitTimeout);
}, [onRemove]);
var create = useCallback(function (Component, options, props) {
(_a = props.onRemove) === null || _a === void 0 ? void 0 : _a.call(props, hash);
};
var removeRef = useRef(remove);
useEffect(function () {
removeRef.current = remove;
});
var create = function (Component, options, instanceProps) {
if (options === void 0) { options = {}; }
return new Promise(function (res, rej) {
var hash = (props === null || props === void 0 ? void 0 : props.instanceId) || hexGen();
var hash = (instanceProps === null || instanceProps === void 0 ? void 0 : instanceProps.instanceId) || hexGen();
var instanceOptions = __assign({ enterTimeout: enterTimeout,
exitTimeout: exitTimeout, instanceId: hash }, options);
var instance = __assign({ Component: Component, props: __assign(__assign({}, instanceOptions), props), resolve: function (v) {
remove(hash, instanceOptions);
var instance = __assign({ Component: Component, props: __assign(__assign({}, instanceOptions), instanceProps), resolve: function (v) {
removeRef.current(hash, instanceOptions);
res(v);
onResolve === null || onResolve === void 0 ? void 0 : onResolve(v, hash);
}, reject: function (r) {
remove(hash, instanceOptions);
removeRef.current(hash, instanceOptions);
rej(r);

@@ -128,6 +131,9 @@ onReject === null || onReject === void 0 ? void 0 : onReject(r, hash);

});
setTimeout(function () { return setHashStack(function (stack) { return __spreadArray(__spreadArray([], stack), [hash]); }); }, instanceOptions.enterTimeout);
onOpen === null || onOpen === void 0 ? void 0 : onOpen(hash, instance);
setTimeout(function () {
var _a;
setHashStack(function (stack) { return __spreadArray(__spreadArray([], stack), [hash]); });
(_a = props.onOpen) === null || _a === void 0 ? void 0 : _a.call(props, hash, instance);
}, instanceOptions.enterTimeout);
});
}, [enterTimeout, exitTimeout, onOpen, onResolve, onReject, isAppendIntances]);
};
useImperativeHandle(ref, function () { return ({

@@ -184,2 +190,2 @@ create: create,

export { Container, DEFAULT_SCOPE, SCOPE_KEY, create, createModal, getContainer, hexGen, registerContainer, unregisterContainer };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy9oZXgtZ2VuLnRzIiwiLi4vc3JjL3V0aWxzL3JlZ2lzdGVyLXNjb3BlLnRzIiwiLi4vc3JjL0NvbnRhaW5lci50c3giLCIuLi9zcmMvY3JlYXRlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIZXggPSBzdHJpbmdcblxuZXhwb3J0IGNvbnN0IGhleEdlbiA9IChsZW46IG51bWJlciA9IDEyKTogSGV4ID0+IHtcbiAgY29uc3QgbWF4bGVuID0gOFxuICBjb25zdCBtaW4gPSBNYXRoLnBvdygxNiwgTWF0aC5taW4obGVuLCBtYXhsZW4pIC0gMSlcbiAgY29uc3QgbWF4ID0gTWF0aC5wb3coMTYsIE1hdGgubWluKGxlbiwgbWF4bGVuKSkgLSAxXG4gIGNvbnN0IG4gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkpICsgbWluXG4gIGxldCByID0gbi50b1N0cmluZygxNilcbiAgd2hpbGUgKHIubGVuZ3RoIDwgbGVuKSB7XG4gICAgciA9IHIgKyBoZXhHZW4obGVuIC0gbWF4bGVuKVxuICB9XG4gIHJldHVybiByXG59XG4iLCJpbXBvcnQgeyBTY29wZSwgU2NvcGVNb2RlbCwgQ29udGFpbmVyUmVmIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NDT1BFID0gJ3N0YWNrJ1xuZXhwb3J0IGNvbnN0IFNDT1BFX0tFWSA9ICdmYWN0b3J5U3RhY2snXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIFtTQ09QRV9LRVldOiBTY29wZU1vZGVsXG4gIH1cbn1cblxubGV0IHNjb3BlU3RvcmFnZTogU2NvcGVNb2RlbCA9IHt9XG5cbmlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICBpZiAoIXdpbmRvd1tTQ09QRV9LRVldKSB7XG4gICAgd2luZG93W1NDT1BFX0tFWV0gPSB7fVxuICB9XG5cbiAgc2NvcGVTdG9yYWdlID0gd2luZG93W1NDT1BFX0tFWV1cbn1cblxuZXhwb3J0IGNvbnN0IHJlZ2lzdGVyQ29udGFpbmVyID0gKHNjb3BlOiBTY29wZSwgcmVmOiBDb250YWluZXJSZWYpID0+IHtcbiAgc2NvcGVTdG9yYWdlW3Njb3BlXSA9IHJlZlxuXG4gIHJldHVybiByZWZcbn1cblxuZXhwb3J0IGNvbnN0IHVucmVnaXN0ZXJDb250YWluZXIgPSAoc2NvcGU6IFNjb3BlKSA9PiB7XG4gIGRlbGV0ZSBzY29wZVN0b3JhZ2Vbc2NvcGVdXG59XG5cbmV4cG9ydCBjb25zdCBnZXRDb250YWluZXIgPSAoc2NvcGU/OiBTY29wZSkgPT5cbiAgc2NvcGVTdG9yYWdlW3Njb3BlIHx8IERFRkFVTFRfU0NPUEVdXG4iLCJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgZm9yd2FyZFJlZixcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQge1xuICBoZXhHZW4sXG4gIEhleCxcbiAgcmVnaXN0ZXJDb250YWluZXIsXG4gIHVucmVnaXN0ZXJDb250YWluZXIsXG4gIERFRkFVTFRfU0NPUEUsXG59IGZyb20gJy4vdXRpbHMnXG5cbmltcG9ydCB7XG4gIENvbnRhaW5lclJlZixcbiAgQ29udGFpbmVyUHJvcHMsXG4gIEluc3RhbmNlLFxuICBJbnN0YW5jZUlkLFxuICBJbnN0YW5jZUNyZWF0b3IsXG4gIEluc3RhbmNlT3B0aW9ucyxcbn0gZnJvbSAnLi90eXBlcydcblxuY29uc3QgSW5zdGFuY2VDb250YWluZXI6IFJlYWN0LkZvcndhcmRSZWZSZW5kZXJGdW5jdGlvbjxcbiAgQ29udGFpbmVyUmVmLFxuICBDb250YWluZXJQcm9wc1xuPiA9IChwcm9wcywgcmVmKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBzY29wZSA9IERFRkFVTFRfU0NPUEUsXG4gICAgZW50ZXJUaW1lb3V0LFxuICAgIGV4aXRUaW1lb3V0LFxuICAgIGlzQXBwZW5kSW50YW5jZXMsXG4gICAgb25PcGVuLFxuICAgIG9uUmVtb3ZlLFxuICAgIG9uUmVzb2x2ZSxcbiAgICBvblJlamVjdCxcbiAgfSA9IHByb3BzIHx8IHt9XG5cbiAgY29uc3QgW2luc3RhbmNlcywgc2V0SW5zdGFuY2VzXSA9IHVzZVN0YXRlPHsgW2tleTogc3RyaW5nXTogSW5zdGFuY2UgfT4oe30pXG4gIGNvbnN0IFtoYXNoU3RhY2ssIHNldEhhc2hTdGFja10gPSB1c2VTdGF0ZTxIZXhbXT4oW10pXG5cbiAgY29uc3QgcmVzb2x2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChoYXNoOiBJbnN0YW5jZUlkLCB2KSA9PiBpbnN0YW5jZXM/LltoYXNoXT8ucmVzb2x2ZSh2KSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG4gIGNvbnN0IHJlc29sdmVBbGwgPSB1c2VDYWxsYmFjayhcbiAgICB2ID0+IE9iamVjdC52YWx1ZXMoaW5zdGFuY2VzKS5mb3JFYWNoKGkgPT4gaS5yZXNvbHZlKHYpKSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG5cbiAgY29uc3QgcmVqZWN0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGhhc2g6IEluc3RhbmNlSWQsIHIpID0+IGluc3RhbmNlcz8uW2hhc2hdPy5yZWplY3QociksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuICBjb25zdCByZWplY3RBbGwgPSB1c2VDYWxsYmFjayhcbiAgICByID0+IE9iamVjdC52YWx1ZXMoaW5zdGFuY2VzKS5mb3JFYWNoKGkgPT4gaS5yZWplY3QocikpLFxuICAgIFtpbnN0YW5jZXNdXG4gIClcbiAgY29uc3QgaGFzSW5zdGFuY2UgPSB1c2VDYWxsYmFjaygoaGFzaDogSW5zdGFuY2VJZCkgPT4gISFpbnN0YW5jZXM/LltoYXNoXSwgW1xuICAgIGluc3RhbmNlcyxcbiAgXSlcbiAgY29uc3QgZ2V0SW5zdGFuY2UgPSB1c2VDYWxsYmFjaygoaGFzaDogSW5zdGFuY2VJZCkgPT4gaW5zdGFuY2VzPy5baGFzaF0sIFtcbiAgICBpbnN0YW5jZXMsXG4gIF0pXG5cbiAgY29uc3QgcmVtb3ZlID0gdXNlQ2FsbGJhY2soXG4gICAgKGhhc2g6IEluc3RhbmNlSWQsIG9wdGlvbnM6IEluc3RhbmNlT3B0aW9ucyk6IHZvaWQgPT4ge1xuICAgICAgc2V0SGFzaFN0YWNrKHN0YWNrID0+IHN0YWNrLmZpbHRlcihzID0+IHMgIT09IGhhc2gpKVxuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0SW5zdGFuY2VzKGluc3RhbmNlcyA9PiB7XG4gICAgICAgICAgY29uc3QgeyBbaGFzaF06IF8sIC4uLm9taXRIYXNoIH0gPSBpbnN0YW5jZXNcblxuICAgICAgICAgIHJldHVybiBvbWl0SGFzaFxuICAgICAgICB9KVxuICAgICAgICBvblJlbW92ZT8uKGhhc2gpXG4gICAgICB9LCBvcHRpb25zPy5leGl0VGltZW91dClcbiAgICB9LFxuICAgIFtvblJlbW92ZV1cbiAgKVxuXG4gIGNvbnN0IGNyZWF0ZTogSW5zdGFuY2VDcmVhdG9yID0gdXNlQ2FsbGJhY2soXG4gICAgKENvbXBvbmVudCwgb3B0aW9ucyA9IHt9LCBwcm9wcykgPT5cbiAgICAgIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgICAgICBjb25zdCBoYXNoID0gcHJvcHM/Lmluc3RhbmNlSWQgfHwgaGV4R2VuKClcblxuICAgICAgICBjb25zdCBpbnN0YW5jZU9wdGlvbnMgPSB7XG4gICAgICAgICAgZW50ZXJUaW1lb3V0LFxuICAgICAgICAgIGV4aXRUaW1lb3V0LFxuICAgICAgICAgIGluc3RhbmNlSWQ6IGhhc2gsXG4gICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluc3RhbmNlOiBJbnN0YW5jZSA9IHtcbiAgICAgICAgICBDb21wb25lbnQsXG4gICAgICAgICAgcHJvcHM6IHsgLi4uaW5zdGFuY2VPcHRpb25zLCAuLi5wcm9wcyB9LFxuICAgICAgICAgIHJlc29sdmU6IHYgPT4ge1xuICAgICAgICAgICAgcmVtb3ZlKGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICAgIHJlcyh2KVxuICAgICAgICAgICAgb25SZXNvbHZlPy4odiwgaGFzaClcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlamVjdDogciA9PiB7XG4gICAgICAgICAgICByZW1vdmUoaGFzaCwgaW5zdGFuY2VPcHRpb25zKVxuICAgICAgICAgICAgcmVqKHIpXG4gICAgICAgICAgICBvblJlamVjdD8uKHIsIGhhc2gpXG4gICAgICAgICAgfSxcbiAgICAgICAgICAuLi5pbnN0YW5jZU9wdGlvbnMsXG4gICAgICAgIH1cblxuICAgICAgICBzZXRJbnN0YW5jZXMoaW5zdGFuY2VzID0+XG4gICAgICAgICAgaXNBcHBlbmRJbnRhbmNlc1xuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgICAgIFtoYXNoXTogaW5zdGFuY2UsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgIFtoYXNoXTogaW5zdGFuY2UsXG4gICAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgICB9XG4gICAgICAgIClcblxuICAgICAgICBzZXRUaW1lb3V0KFxuICAgICAgICAgICgpID0+IHNldEhhc2hTdGFjayhzdGFjayA9PiBbLi4uc3RhY2ssIGhhc2hdKSxcbiAgICAgICAgICBpbnN0YW5jZU9wdGlvbnMuZW50ZXJUaW1lb3V0XG4gICAgICAgIClcblxuICAgICAgICBvbk9wZW4/LihoYXNoLCBpbnN0YW5jZSlcbiAgICAgIH0pLFxuICAgIFtlbnRlclRpbWVvdXQsIGV4aXRUaW1lb3V0LCBvbk9wZW4sIG9uUmVzb2x2ZSwgb25SZWplY3QsIGlzQXBwZW5kSW50YW5jZXNdXG4gIClcblxuICB1c2VJbXBlcmF0aXZlSGFuZGxlKHJlZiwgKCkgPT4gKHtcbiAgICBjcmVhdGUsXG4gICAgcmVzb2x2ZSxcbiAgICByZWplY3QsXG4gICAgcmVzb2x2ZUFsbCxcbiAgICByZWplY3RBbGwsXG4gICAgaGFzSW5zdGFuY2UsXG4gICAgZ2V0SW5zdGFuY2UsXG4gIH0pKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVnaXN0ZXJDb250YWluZXIoc2NvcGUsIHtcbiAgICAgIGNyZWF0ZSxcbiAgICAgIHJlc29sdmUsXG4gICAgICByZWplY3QsXG4gICAgICByZXNvbHZlQWxsLFxuICAgICAgcmVqZWN0QWxsLFxuICAgICAgaGFzSW5zdGFuY2UsXG4gICAgICBnZXRJbnN0YW5jZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuICgpID0+IHVucmVnaXN0ZXJDb250YWluZXIoc2NvcGUpXG4gIH0sIFtzY29wZV0pXG5cbiAgY29uc3QgbWFwS2V5cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhpbnN0YW5jZXMpXG5cbiAgICByZXR1cm4ga2V5cy5tYXAoa2V5ID0+IHtcbiAgICAgIGNvbnN0IHsgQ29tcG9uZW50LCBwcm9wcywgcmVzb2x2ZSwgcmVqZWN0IH0gPSBpbnN0YW5jZXNba2V5XVxuXG4gICAgICBjb25zdCBpc09wZW4gPSAhIWhhc2hTdGFjay5maW5kKGggPT4gaCA9PT0ga2V5KVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Q29tcG9uZW50XG4gICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgIGtleT17a2V5fVxuICAgICAgICAgIGlzT3Blbj17aXNPcGVufVxuICAgICAgICAgIG9uUmVqZWN0PXtyZWplY3R9XG4gICAgICAgICAgb25SZXNvbHZlPXtyZXNvbHZlfVxuICAgICAgICAgIC8qKiBAZGVwcmVjYXRlZCAqKi9cbiAgICAgICAgICBjbG9zZT17cmVzb2x2ZX1cbiAgICAgICAgICAvKiogQGRlcHJlY2F0ZWQgKiovXG4gICAgICAgICAgb3Blbj17aXNPcGVufVxuICAgICAgICAvPlxuICAgICAgKVxuICAgIH0pXG4gIH0sIFtpbnN0YW5jZXMsIGhhc2hTdGFja10pXG5cbiAgcmV0dXJuIDw+e21hcEtleXN9PC8+XG59XG5cbmV4cG9ydCBjb25zdCBDb250YWluZXIgPSBmb3J3YXJkUmVmKEluc3RhbmNlQ29udGFpbmVyKVxuXG5Db250YWluZXIuZGVmYXVsdFByb3BzID0ge1xuICBleGl0VGltZW91dDogNTAwLFxuICBlbnRlclRpbWVvdXQ6IDUwLFxufVxuIiwiaW1wb3J0IHsgZ2V0Q29udGFpbmVyIH0gZnJvbSAnLi91dGlscydcbmltcG9ydCB7IENyZWF0ZUluc3RhbmNlIH0gZnJvbSAnLi90eXBlcydcblxuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgY29uc3QgY3JlYXRlTW9kYWw6IENyZWF0ZUluc3RhbmNlID0gKENvbXBvbmVudCwgb3B0aW9ucykgPT4gcHJvcHMgPT5cbiAgZ2V0Q29udGFpbmVyKG9wdGlvbnM/LnNjb3BlKS5jcmVhdGUoQ29tcG9uZW50LCBvcHRpb25zLCBwcm9wcylcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlSW5zdGFuY2UgPSAoQ29tcG9uZW50LCBvcHRpb25zKSA9PiBwcm9wcyA9PlxuICBnZXRDb250YWluZXIob3B0aW9ucz8uc2NvcGUpLmNyZWF0ZShDb21wb25lbnQsIG9wdGlvbnMsIHByb3BzKVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFYSxNQUFNLEdBQUcsVUFBQyxHQUFnQjtJQUFoQixvQkFBQSxFQUFBLFFBQWdCO0lBQ3JDLElBQU0sTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNoQixJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUNuRCxJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNuRCxJQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFBO0lBQzNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDdEIsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtRQUNyQixDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUE7S0FDN0I7SUFDRCxPQUFPLENBQUMsQ0FBQTtBQUNWOztJQ1ZhLGFBQWEsR0FBRyxRQUFPO0lBQ3ZCLFNBQVMsR0FBRyxlQUFjO0FBT3ZDLElBQUksWUFBWSxHQUFlLEVBQUUsQ0FBQTtBQUVqQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtJQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ3RCLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUE7S0FDdkI7SUFFRCxZQUFZLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0NBQ2pDO0lBRVksaUJBQWlCLEdBQUcsVUFBQyxLQUFZLEVBQUUsR0FBaUI7SUFDL0QsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQTtJQUV6QixPQUFPLEdBQUcsQ0FBQTtBQUNaLEVBQUM7SUFFWSxtQkFBbUIsR0FBRyxVQUFDLEtBQVk7SUFDOUMsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUE7QUFDNUIsRUFBQztJQUVZLFlBQVksR0FBRyxVQUFDLEtBQWE7SUFDeEMsT0FBQSxZQUFZLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FBQztBQUFwQzs7QUNMRixJQUFNLGlCQUFpQixHQUduQixVQUFDLEtBQUssRUFBRSxHQUFHO0lBQ1AsSUFBQSxLQVNGLEtBQUssSUFBSSxFQUFFLEVBUmIsYUFBcUIsRUFBckIsS0FBSyxtQkFBRyxhQUFhLEtBQUEsRUFDckIsWUFBWSxrQkFBQSxFQUNaLFdBQVcsaUJBQUEsRUFDWCxnQkFBZ0Isc0JBQUEsRUFDaEIsTUFBTSxZQUFBLEVBQ04sUUFBUSxjQUFBLEVBQ1IsU0FBUyxlQUFBLEVBQ1QsUUFBUSxjQUNLLENBQUE7SUFFVCxJQUFBLEtBQTRCLFFBQVEsQ0FBOEIsRUFBRSxDQUFDLEVBQXBFLFNBQVMsUUFBQSxFQUFFLFlBQVksUUFBNkMsQ0FBQTtJQUNyRSxJQUFBLEtBQTRCLFFBQVEsQ0FBUSxFQUFFLENBQUMsRUFBOUMsU0FBUyxRQUFBLEVBQUUsWUFBWSxRQUF1QixDQUFBO0lBRXJELElBQU0sT0FBTyxHQUFHLFdBQVcsQ0FDekIsVUFBQyxJQUFnQixFQUFFLENBQUMsWUFBSyxPQUFBLE1BQUEsU0FBUyxhQUFULFNBQVMsdUJBQVQsU0FBUyxDQUFHLElBQUksQ0FBQywwQ0FBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUEsRUFBQSxFQUN0RCxDQUFDLFNBQVMsQ0FBQyxDQUNaLENBQUE7SUFDRCxJQUFNLFVBQVUsR0FBRyxXQUFXLENBQzVCLFVBQUEsQ0FBQyxJQUFJLE9BQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFBLENBQUMsR0FBQSxFQUN4RCxDQUFDLFNBQVMsQ0FBQyxDQUNaLENBQUE7SUFFRCxJQUFNLE1BQU0sR0FBRyxXQUFXLENBQ3hCLFVBQUMsSUFBZ0IsRUFBRSxDQUFDLFlBQUssT0FBQSxNQUFBLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRyxJQUFJLENBQUMsMENBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBLEVBQUEsRUFDckQsQ0FBQyxTQUFTLENBQUMsQ0FDWixDQUFBO0lBQ0QsSUFBTSxTQUFTLEdBQUcsV0FBVyxDQUMzQixVQUFBLENBQUMsSUFBSSxPQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBQSxDQUFDLEdBQUEsRUFDdkQsQ0FBQyxTQUFTLENBQUMsQ0FDWixDQUFBO0lBQ0QsSUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLFVBQUMsSUFBZ0IsSUFBSyxPQUFBLENBQUMsRUFBQyxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUcsSUFBSSxDQUFDLENBQUEsR0FBQSxFQUFFO1FBQ3pFLFNBQVM7S0FDVixDQUFDLENBQUE7SUFDRixJQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsVUFBQyxJQUFnQixJQUFLLE9BQUEsU0FBUyxhQUFULFNBQVMsdUJBQVQsU0FBUyxDQUFHLElBQUksQ0FBQyxHQUFBLEVBQUU7UUFDdkUsU0FBUztLQUNWLENBQUMsQ0FBQTtJQUVGLElBQU0sTUFBTSxHQUFHLFdBQVcsQ0FDeEIsVUFBQyxJQUFnQixFQUFFLE9BQXdCO1FBQ3pDLFlBQVksQ0FBQyxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLEtBQUssSUFBSSxHQUFBLENBQUMsR0FBQSxDQUFDLENBQUE7UUFFcEQsVUFBVSxDQUFDO1lBQ1QsWUFBWSxDQUFDLFVBQUEsU0FBUztvQkFDZSxLQUFBLFNBQVMsRUFBcEMsS0FBQyxJQUFLLFFBQUcsTUFBSyxRQUFRLGNBQXhCLHVDQUEwQixFQUFZO2dCQUU1QyxPQUFPLFFBQVEsQ0FBQTthQUNoQixDQUFDLENBQUE7WUFDRixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUcsSUFBSSxDQUFDLENBQUE7U0FDakIsRUFBRSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsV0FBVyxDQUFDLENBQUE7S0FDekIsRUFDRCxDQUFDLFFBQVEsQ0FBQyxDQUNYLENBQUE7SUFFRCxJQUFNLE1BQU0sR0FBb0IsV0FBVyxDQUN6QyxVQUFDLFNBQVMsRUFBRSxPQUFZLEVBQUUsS0FBSztRQUFuQix3QkFBQSxFQUFBLFlBQVk7UUFDdEIsT0FBQSxJQUFJLE9BQU8sQ0FBQyxVQUFDLEdBQUcsRUFBRSxHQUFHO1lBQ25CLElBQU0sSUFBSSxHQUFHLENBQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFVBQVUsS0FBSSxNQUFNLEVBQUUsQ0FBQTtZQUUxQyxJQUFNLGVBQWUsY0FDbkIsWUFBWSxjQUFBO2dCQUNaLFdBQVcsYUFBQSxFQUNYLFVBQVUsRUFBRSxJQUFJLElBQ2IsT0FBTyxDQUNYLENBQUE7WUFFRCxJQUFNLFFBQVEsY0FDWixTQUFTLFdBQUEsRUFDVCxLQUFLLHdCQUFPLGVBQWUsR0FBSyxLQUFLLEdBQ3JDLE9BQU8sRUFBRSxVQUFBLENBQUM7b0JBQ1IsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQTtvQkFDN0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO29CQUNOLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7aUJBQ3JCLEVBQ0QsTUFBTSxFQUFFLFVBQUEsQ0FBQztvQkFDUCxNQUFNLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFBO29CQUM3QixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQ04sUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtpQkFDcEIsSUFDRSxlQUFlLENBQ25CLENBQUE7WUFFRCxZQUFZLENBQUMsVUFBQSxTQUFTOztnQkFDcEIsT0FBQSxnQkFBZ0I7NENBRVAsU0FBUyxnQkFDWCxJQUFJLElBQUcsUUFBUSwrQkFHZixJQUFJLElBQUcsUUFBUSxPQUNiLFNBQVMsQ0FDYjthQUFBLENBQ04sQ0FBQTtZQUVELFVBQVUsQ0FDUixjQUFNLE9BQUEsWUFBWSxDQUFDLFVBQUEsS0FBSyxJQUFJLHVDQUFJLEtBQUssSUFBRSxJQUFJLEtBQUMsQ0FBQyxHQUFBLEVBQzdDLGVBQWUsQ0FBQyxZQUFZLENBQzdCLENBQUE7WUFFRCxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUcsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1NBQ3pCLENBQUM7S0FBQSxFQUNKLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUMzRSxDQUFBO0lBRUQsbUJBQW1CLENBQUMsR0FBRyxFQUFFLGNBQU0sUUFBQztRQUM5QixNQUFNLFFBQUE7UUFDTixPQUFPLFNBQUE7UUFDUCxNQUFNLFFBQUE7UUFDTixVQUFVLFlBQUE7UUFDVixTQUFTLFdBQUE7UUFDVCxXQUFXLGFBQUE7UUFDWCxXQUFXLGFBQUE7S0FDWixJQUFDLENBQUMsQ0FBQTtJQUVILFNBQVMsQ0FBQztRQUNSLGlCQUFpQixDQUFDLEtBQUssRUFBRTtZQUN2QixNQUFNLFFBQUE7WUFDTixPQUFPLFNBQUE7WUFDUCxNQUFNLFFBQUE7WUFDTixVQUFVLFlBQUE7WUFDVixTQUFTLFdBQUE7WUFDVCxXQUFXLGFBQUE7WUFDWCxXQUFXLGFBQUE7U0FDWixDQUFDLENBQUE7UUFFRixPQUFPLGNBQU0sT0FBQSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsR0FBQSxDQUFBO0tBQ3hDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBRVgsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3RCLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFFbkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQUEsR0FBRztZQUNYLElBQUEsS0FBd0MsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFwRCxTQUFTLGVBQUEsRUFBRSxLQUFLLFdBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSxNQUFNLFlBQW1CLENBQUE7WUFFNUQsSUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLEtBQUssR0FBRyxHQUFBLENBQUMsQ0FBQTtZQUUvQyxRQUNFLG9CQUFDLFNBQVMsZUFDSixLQUFLLElBQ1QsR0FBRyxFQUFFLEdBQUcsRUFDUixNQUFNLEVBQUUsTUFBTSxFQUNkLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLFNBQVMsRUFBRSxPQUFPOztnQkFFbEIsS0FBSyxFQUFFLE9BQU87O2dCQUVkLElBQUksRUFBRSxNQUFNLElBQ1osRUFDSDtTQUNGLENBQUMsQ0FBQTtLQUNILEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUUxQixPQUFPLDBDQUFHLE9BQU8sQ0FBSSxDQUFBO0FBQ3ZCLENBQUMsQ0FBQTtJQUVZLFNBQVMsR0FBRyxVQUFVLENBQUMsaUJBQWlCLEVBQUM7QUFFdEQsU0FBUyxDQUFDLFlBQVksR0FBRztJQUN2QixXQUFXLEVBQUUsR0FBRztJQUNoQixZQUFZLEVBQUUsRUFBRTtDQUNqQjs7QUMzTEQ7SUFDYSxXQUFXLEdBQW1CLFVBQUMsU0FBUyxFQUFFLE9BQU8sSUFBSyxPQUFBLFVBQUEsS0FBSztJQUN0RSxPQUFBLFlBQVksQ0FBQyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDO0FBQTlELENBQThELElBQUE7SUFFbkQsTUFBTSxHQUFtQixVQUFDLFNBQVMsRUFBRSxPQUFPLElBQUssT0FBQSxVQUFBLEtBQUs7SUFDakUsT0FBQSxZQUFZLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQztBQUE5RCxDQUE4RDs7Ozs7In0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy9oZXgtZ2VuLnRzIiwiLi4vc3JjL3V0aWxzL3JlZ2lzdGVyLXNjb3BlLnRzIiwiLi4vc3JjL0NvbnRhaW5lci50c3giLCIuLi9zcmMvY3JlYXRlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIZXggPSBzdHJpbmdcblxuZXhwb3J0IGNvbnN0IGhleEdlbiA9IChsZW46IG51bWJlciA9IDEyKTogSGV4ID0+IHtcbiAgY29uc3QgbWF4bGVuID0gOFxuICBjb25zdCBtaW4gPSBNYXRoLnBvdygxNiwgTWF0aC5taW4obGVuLCBtYXhsZW4pIC0gMSlcbiAgY29uc3QgbWF4ID0gTWF0aC5wb3coMTYsIE1hdGgubWluKGxlbiwgbWF4bGVuKSkgLSAxXG4gIGNvbnN0IG4gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkpICsgbWluXG4gIGxldCByID0gbi50b1N0cmluZygxNilcbiAgd2hpbGUgKHIubGVuZ3RoIDwgbGVuKSB7XG4gICAgciA9IHIgKyBoZXhHZW4obGVuIC0gbWF4bGVuKVxuICB9XG4gIHJldHVybiByXG59XG4iLCJpbXBvcnQgeyBTY29wZSwgU2NvcGVNb2RlbCwgQ29udGFpbmVyUmVmIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NDT1BFID0gJ3N0YWNrJ1xuZXhwb3J0IGNvbnN0IFNDT1BFX0tFWSA9ICdmYWN0b3J5U3RhY2snXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIFtTQ09QRV9LRVldOiBTY29wZU1vZGVsXG4gIH1cbn1cblxuaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gIGlmICghd2luZG93W1NDT1BFX0tFWV0pIHtcbiAgICB3aW5kb3dbU0NPUEVfS0VZXSA9IHt9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHJlZ2lzdGVyQ29udGFpbmVyID0gKHNjb3BlOiBTY29wZSwgcmVmOiBDb250YWluZXJSZWYpID0+IHtcbiAgd2luZG93W1NDT1BFX0tFWV1bc2NvcGVdID0gcmVmXG5cbiAgcmV0dXJuIHJlZlxufVxuXG5leHBvcnQgY29uc3QgdW5yZWdpc3RlckNvbnRhaW5lciA9IChzY29wZTogU2NvcGUpID0+IHtcbiAgZGVsZXRlIHdpbmRvd1tTQ09QRV9LRVldW3Njb3BlXVxufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29udGFpbmVyID0gKHNjb3BlPzogU2NvcGUpID0+XG4gIHdpbmRvd1tTQ09QRV9LRVldW3Njb3BlIHx8IERFRkFVTFRfU0NPUEVdXG4iLCJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlUmVmLFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICBmb3J3YXJkUmVmLFxuICB1c2VTdGF0ZSxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VDYWxsYmFjayxcbn0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7XG4gIGhleEdlbixcbiAgSGV4LFxuICByZWdpc3RlckNvbnRhaW5lcixcbiAgdW5yZWdpc3RlckNvbnRhaW5lcixcbiAgREVGQVVMVF9TQ09QRSxcbn0gZnJvbSAnLi91dGlscydcblxuaW1wb3J0IHtcbiAgQ29udGFpbmVyUmVmLFxuICBDb250YWluZXJQcm9wcyxcbiAgSW5zdGFuY2UsXG4gIEluc3RhbmNlSWQsXG4gIEluc3RhbmNlQ3JlYXRvcixcbiAgSW5zdGFuY2VPcHRpb25zLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBJbnN0YW5jZUNvbnRhaW5lcjogUmVhY3QuRm9yd2FyZFJlZlJlbmRlckZ1bmN0aW9uPFxuICBDb250YWluZXJSZWYsXG4gIENvbnRhaW5lclByb3BzXG4+ID0gKHByb3BzLCByZWYpID0+IHtcbiAgY29uc3Qge1xuICAgIHNjb3BlID0gREVGQVVMVF9TQ09QRSxcbiAgICBlbnRlclRpbWVvdXQsXG4gICAgZXhpdFRpbWVvdXQsXG4gICAgaXNBcHBlbmRJbnRhbmNlcyxcbiAgICBvblJlc29sdmUsXG4gICAgb25SZWplY3QsXG4gIH0gPSBwcm9wcyB8fCB7fVxuXG4gIGNvbnN0IFtpbnN0YW5jZXMsIHNldEluc3RhbmNlc10gPSB1c2VTdGF0ZTx7IFtrZXk6IHN0cmluZ106IEluc3RhbmNlIH0+KHt9KVxuICBjb25zdCBbaGFzaFN0YWNrLCBzZXRIYXNoU3RhY2tdID0gdXNlU3RhdGU8SGV4W10+KFtdKVxuXG4gIGNvbnN0IHJlc29sdmUgPSB1c2VDYWxsYmFjayhcbiAgICAoaGFzaDogSW5zdGFuY2VJZCwgdikgPT4gaW5zdGFuY2VzPy5baGFzaF0/LnJlc29sdmUodiksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuICBjb25zdCByZXNvbHZlQWxsID0gdXNlQ2FsbGJhY2soXG4gICAgdiA9PiBPYmplY3QudmFsdWVzKGluc3RhbmNlcykuZm9yRWFjaChpID0+IGkucmVzb2x2ZSh2KSksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuXG4gIGNvbnN0IHJlamVjdCA9IHVzZUNhbGxiYWNrKFxuICAgIChoYXNoOiBJbnN0YW5jZUlkLCByKSA9PiBpbnN0YW5jZXM/LltoYXNoXT8ucmVqZWN0KHIpLFxuICAgIFtpbnN0YW5jZXNdXG4gIClcbiAgY29uc3QgcmVqZWN0QWxsID0gdXNlQ2FsbGJhY2soXG4gICAgciA9PiBPYmplY3QudmFsdWVzKGluc3RhbmNlcykuZm9yRWFjaChpID0+IGkucmVqZWN0KHIpKSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG4gIGNvbnN0IGhhc0luc3RhbmNlID0gdXNlQ2FsbGJhY2soKGhhc2g6IEluc3RhbmNlSWQpID0+ICEhaW5zdGFuY2VzPy5baGFzaF0sIFtcbiAgICBpbnN0YW5jZXMsXG4gIF0pXG4gIGNvbnN0IGdldEluc3RhbmNlID0gdXNlQ2FsbGJhY2soKGhhc2g6IEluc3RhbmNlSWQpID0+IGluc3RhbmNlcz8uW2hhc2hdLCBbXG4gICAgaW5zdGFuY2VzLFxuICBdKVxuXG4gIGNvbnN0IHJlbW92ZSA9IChoYXNoOiBJbnN0YW5jZUlkLCBvcHRpb25zOiBJbnN0YW5jZU9wdGlvbnMpOiB2b2lkID0+IHtcbiAgICBzZXRIYXNoU3RhY2soc3RhY2sgPT4gc3RhY2suZmlsdGVyKHMgPT4gcyAhPT0gaGFzaCkpXG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldEluc3RhbmNlcyhpbnN0YW5jZXMgPT4ge1xuICAgICAgICBjb25zdCB7IFtoYXNoXTogXywgLi4ub21pdEhhc2ggfSA9IGluc3RhbmNlc1xuXG4gICAgICAgIHJldHVybiBvbWl0SGFzaFxuICAgICAgfSlcbiAgICB9LCBvcHRpb25zPy5leGl0VGltZW91dClcblxuICAgIHByb3BzLm9uUmVtb3ZlPy4oaGFzaClcbiAgfVxuXG4gIGNvbnN0IHJlbW92ZVJlZiA9IHVzZVJlZihyZW1vdmUpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZW1vdmVSZWYuY3VycmVudCA9IHJlbW92ZVxuICB9KVxuXG4gIGNvbnN0IGNyZWF0ZTogSW5zdGFuY2VDcmVhdG9yID0gKENvbXBvbmVudCwgb3B0aW9ucyA9IHt9LCBpbnN0YW5jZVByb3BzKSA9PlxuICAgIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgICAgY29uc3QgaGFzaCA9IGluc3RhbmNlUHJvcHM/Lmluc3RhbmNlSWQgfHwgaGV4R2VuKClcblxuICAgICAgY29uc3QgaW5zdGFuY2VPcHRpb25zID0ge1xuICAgICAgICBlbnRlclRpbWVvdXQsXG4gICAgICAgIGV4aXRUaW1lb3V0LFxuICAgICAgICBpbnN0YW5jZUlkOiBoYXNoLFxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgfVxuXG4gICAgICBjb25zdCBpbnN0YW5jZTogSW5zdGFuY2UgPSB7XG4gICAgICAgIENvbXBvbmVudCxcbiAgICAgICAgcHJvcHM6IHsgLi4uaW5zdGFuY2VPcHRpb25zLCAuLi5pbnN0YW5jZVByb3BzIH0sXG4gICAgICAgIHJlc29sdmU6IHYgPT4ge1xuICAgICAgICAgIHJlbW92ZVJlZi5jdXJyZW50KGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICByZXModilcbiAgICAgICAgICBvblJlc29sdmU/Lih2LCBoYXNoKVxuICAgICAgICB9LFxuICAgICAgICByZWplY3Q6IHIgPT4ge1xuICAgICAgICAgIHJlbW92ZVJlZi5jdXJyZW50KGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICByZWoocilcbiAgICAgICAgICBvblJlamVjdD8uKHIsIGhhc2gpXG4gICAgICAgIH0sXG4gICAgICAgIC4uLmluc3RhbmNlT3B0aW9ucyxcbiAgICAgIH1cblxuICAgICAgc2V0SW5zdGFuY2VzKGluc3RhbmNlcyA9PlxuICAgICAgICBpc0FwcGVuZEludGFuY2VzXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIC4uLmluc3RhbmNlcyxcbiAgICAgICAgICAgICAgW2hhc2hdOiBpbnN0YW5jZSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgW2hhc2hdOiBpbnN0YW5jZSxcbiAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgfVxuICAgICAgKVxuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0SGFzaFN0YWNrKHN0YWNrID0+IFsuLi5zdGFjaywgaGFzaF0pXG4gICAgICAgIHByb3BzLm9uT3Blbj8uKGhhc2gsIGluc3RhbmNlKVxuICAgICAgfSwgaW5zdGFuY2VPcHRpb25zLmVudGVyVGltZW91dClcbiAgICB9KVxuXG4gIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiAoe1xuICAgIGNyZWF0ZSxcbiAgICByZXNvbHZlLFxuICAgIHJlamVjdCxcbiAgICByZXNvbHZlQWxsLFxuICAgIHJlamVjdEFsbCxcbiAgICBoYXNJbnN0YW5jZSxcbiAgICBnZXRJbnN0YW5jZSxcbiAgfSkpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZWdpc3RlckNvbnRhaW5lcihzY29wZSwge1xuICAgICAgY3JlYXRlLFxuICAgICAgcmVzb2x2ZSxcbiAgICAgIHJlamVjdCxcbiAgICAgIHJlc29sdmVBbGwsXG4gICAgICByZWplY3RBbGwsXG4gICAgICBoYXNJbnN0YW5jZSxcbiAgICAgIGdldEluc3RhbmNlLFxuICAgIH0pXG5cbiAgICByZXR1cm4gKCkgPT4gdW5yZWdpc3RlckNvbnRhaW5lcihzY29wZSlcbiAgfSwgW3Njb3BlXSlcblxuICBjb25zdCBtYXBLZXlzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluc3RhbmNlcylcblxuICAgIHJldHVybiBrZXlzLm1hcChrZXkgPT4ge1xuICAgICAgY29uc3QgeyBDb21wb25lbnQsIHByb3BzLCByZXNvbHZlLCByZWplY3QgfSA9IGluc3RhbmNlc1trZXldXG5cbiAgICAgIGNvbnN0IGlzT3BlbiA9ICEhaGFzaFN0YWNrLmZpbmQoaCA9PiBoID09PSBrZXkpXG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDb21wb25lbnRcbiAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAga2V5PXtrZXl9XG4gICAgICAgICAgaXNPcGVuPXtpc09wZW59XG4gICAgICAgICAgb25SZWplY3Q9e3JlamVjdH1cbiAgICAgICAgICBvblJlc29sdmU9e3Jlc29sdmV9XG4gICAgICAgICAgLyoqIEBkZXByZWNhdGVkICoqL1xuICAgICAgICAgIGNsb3NlPXtyZXNvbHZlfVxuICAgICAgICAgIC8qKiBAZGVwcmVjYXRlZCAqKi9cbiAgICAgICAgICBvcGVuPXtpc09wZW59XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgfSlcbiAgfSwgW2luc3RhbmNlcywgaGFzaFN0YWNrXSlcblxuICByZXR1cm4gPD57bWFwS2V5c308Lz5cbn1cblxuZXhwb3J0IGNvbnN0IENvbnRhaW5lciA9IGZvcndhcmRSZWYoSW5zdGFuY2VDb250YWluZXIpXG5cbkNvbnRhaW5lci5kZWZhdWx0UHJvcHMgPSB7XG4gIGV4aXRUaW1lb3V0OiA1MDAsXG4gIGVudGVyVGltZW91dDogNTAsXG59XG4iLCJpbXBvcnQgeyBnZXRDb250YWluZXIgfSBmcm9tICcuL3V0aWxzJ1xuaW1wb3J0IHsgQ3JlYXRlSW5zdGFuY2UgfSBmcm9tICcuL3R5cGVzJ1xuXG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVNb2RhbDogQ3JlYXRlSW5zdGFuY2UgPSAoQ29tcG9uZW50LCBvcHRpb25zKSA9PiBwcm9wcyA9PlxuICBnZXRDb250YWluZXIob3B0aW9ucz8uc2NvcGUpLmNyZWF0ZShDb21wb25lbnQsIG9wdGlvbnMsIHByb3BzKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlOiBDcmVhdGVJbnN0YW5jZSA9IChDb21wb25lbnQsIG9wdGlvbnMpID0+IHByb3BzID0+XG4gIGdldENvbnRhaW5lcihvcHRpb25zPy5zY29wZSkuY3JlYXRlKENvbXBvbmVudCwgb3B0aW9ucywgcHJvcHMpXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUVhLE1BQU0sR0FBRyxVQUFDLEdBQWdCO0lBQWhCLG9CQUFBLEVBQUEsUUFBZ0I7SUFDckMsSUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLElBQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ25ELElBQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ25ELElBQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUE7SUFDM0QsSUFBSSxD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

@@ -70,3 +70,2 @@ 'use strict';

var SCOPE_KEY = 'factoryStack';
var scopeStorage = {};
if (typeof window !== 'undefined') {

@@ -76,17 +75,16 @@ if (!window[SCOPE_KEY]) {

}
scopeStorage = window[SCOPE_KEY];
}
var registerContainer = function (scope, ref) {
scopeStorage[scope] = ref;
window[SCOPE_KEY][scope] = ref;
return ref;
};
var unregisterContainer = function (scope) {
delete scopeStorage[scope];
delete window[SCOPE_KEY][scope];
};
var getContainer = function (scope) {
return scopeStorage[scope || DEFAULT_SCOPE];
return window[SCOPE_KEY][scope || DEFAULT_SCOPE];
};
var InstanceContainer = function (props, ref) {
var _a = props || {}, _b = _a.scope, scope = _b === void 0 ? DEFAULT_SCOPE : _b, enterTimeout = _a.enterTimeout, exitTimeout = _a.exitTimeout, isAppendIntances = _a.isAppendIntances, onOpen = _a.onOpen, onRemove = _a.onRemove, onResolve = _a.onResolve, onReject = _a.onReject;
var _a = props || {}, _b = _a.scope, scope = _b === void 0 ? DEFAULT_SCOPE : _b, enterTimeout = _a.enterTimeout, exitTimeout = _a.exitTimeout, isAppendIntances = _a.isAppendIntances, onResolve = _a.onResolve, onReject = _a.onReject;
var _c = React.useState({}), instances = _c[0], setInstances = _c[1];

@@ -104,3 +102,4 @@ var _d = React.useState([]), hashStack = _d[0], setHashStack = _d[1];

]);
var remove = React.useCallback(function (hash, options) {
var remove = function (hash, options) {
var _a;
setHashStack(function (stack) { return stack.filter(function (s) { return s !== hash; }); });

@@ -112,17 +111,21 @@ setTimeout(function () {

});
onRemove === null || onRemove === void 0 ? void 0 : onRemove(hash);
}, options === null || options === void 0 ? void 0 : options.exitTimeout);
}, [onRemove]);
var create = React.useCallback(function (Component, options, props) {
(_a = props.onRemove) === null || _a === void 0 ? void 0 : _a.call(props, hash);
};
var removeRef = React.useRef(remove);
React.useEffect(function () {
removeRef.current = remove;
});
var create = function (Component, options, instanceProps) {
if (options === void 0) { options = {}; }
return new Promise(function (res, rej) {
var hash = (props === null || props === void 0 ? void 0 : props.instanceId) || hexGen();
var hash = (instanceProps === null || instanceProps === void 0 ? void 0 : instanceProps.instanceId) || hexGen();
var instanceOptions = __assign({ enterTimeout: enterTimeout,
exitTimeout: exitTimeout, instanceId: hash }, options);
var instance = __assign({ Component: Component, props: __assign(__assign({}, instanceOptions), props), resolve: function (v) {
remove(hash, instanceOptions);
var instance = __assign({ Component: Component, props: __assign(__assign({}, instanceOptions), instanceProps), resolve: function (v) {
removeRef.current(hash, instanceOptions);
res(v);
onResolve === null || onResolve === void 0 ? void 0 : onResolve(v, hash);
}, reject: function (r) {
remove(hash, instanceOptions);
removeRef.current(hash, instanceOptions);
rej(r);

@@ -136,6 +139,9 @@ onReject === null || onReject === void 0 ? void 0 : onReject(r, hash);

});
setTimeout(function () { return setHashStack(function (stack) { return __spreadArray(__spreadArray([], stack), [hash]); }); }, instanceOptions.enterTimeout);
onOpen === null || onOpen === void 0 ? void 0 : onOpen(hash, instance);
setTimeout(function () {
var _a;
setHashStack(function (stack) { return __spreadArray(__spreadArray([], stack), [hash]); });
(_a = props.onOpen) === null || _a === void 0 ? void 0 : _a.call(props, hash, instance);
}, instanceOptions.enterTimeout);
});
}, [enterTimeout, exitTimeout, onOpen, onResolve, onReject, isAppendIntances]);
};
React.useImperativeHandle(ref, function () { return ({

@@ -200,2 +206,2 @@ create: create,

exports.unregisterContainer = unregisterContainer;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy9oZXgtZ2VuLnRzIiwiLi4vc3JjL3V0aWxzL3JlZ2lzdGVyLXNjb3BlLnRzIiwiLi4vc3JjL0NvbnRhaW5lci50c3giLCIuLi9zcmMvY3JlYXRlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIZXggPSBzdHJpbmdcblxuZXhwb3J0IGNvbnN0IGhleEdlbiA9IChsZW46IG51bWJlciA9IDEyKTogSGV4ID0+IHtcbiAgY29uc3QgbWF4bGVuID0gOFxuICBjb25zdCBtaW4gPSBNYXRoLnBvdygxNiwgTWF0aC5taW4obGVuLCBtYXhsZW4pIC0gMSlcbiAgY29uc3QgbWF4ID0gTWF0aC5wb3coMTYsIE1hdGgubWluKGxlbiwgbWF4bGVuKSkgLSAxXG4gIGNvbnN0IG4gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkpICsgbWluXG4gIGxldCByID0gbi50b1N0cmluZygxNilcbiAgd2hpbGUgKHIubGVuZ3RoIDwgbGVuKSB7XG4gICAgciA9IHIgKyBoZXhHZW4obGVuIC0gbWF4bGVuKVxuICB9XG4gIHJldHVybiByXG59XG4iLCJpbXBvcnQgeyBTY29wZSwgU2NvcGVNb2RlbCwgQ29udGFpbmVyUmVmIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NDT1BFID0gJ3N0YWNrJ1xuZXhwb3J0IGNvbnN0IFNDT1BFX0tFWSA9ICdmYWN0b3J5U3RhY2snXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIFtTQ09QRV9LRVldOiBTY29wZU1vZGVsXG4gIH1cbn1cblxubGV0IHNjb3BlU3RvcmFnZTogU2NvcGVNb2RlbCA9IHt9XG5cbmlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICBpZiAoIXdpbmRvd1tTQ09QRV9LRVldKSB7XG4gICAgd2luZG93W1NDT1BFX0tFWV0gPSB7fVxuICB9XG5cbiAgc2NvcGVTdG9yYWdlID0gd2luZG93W1NDT1BFX0tFWV1cbn1cblxuZXhwb3J0IGNvbnN0IHJlZ2lzdGVyQ29udGFpbmVyID0gKHNjb3BlOiBTY29wZSwgcmVmOiBDb250YWluZXJSZWYpID0+IHtcbiAgc2NvcGVTdG9yYWdlW3Njb3BlXSA9IHJlZlxuXG4gIHJldHVybiByZWZcbn1cblxuZXhwb3J0IGNvbnN0IHVucmVnaXN0ZXJDb250YWluZXIgPSAoc2NvcGU6IFNjb3BlKSA9PiB7XG4gIGRlbGV0ZSBzY29wZVN0b3JhZ2Vbc2NvcGVdXG59XG5cbmV4cG9ydCBjb25zdCBnZXRDb250YWluZXIgPSAoc2NvcGU/OiBTY29wZSkgPT5cbiAgc2NvcGVTdG9yYWdlW3Njb3BlIHx8IERFRkFVTFRfU0NPUEVdXG4iLCJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgZm9yd2FyZFJlZixcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQge1xuICBoZXhHZW4sXG4gIEhleCxcbiAgcmVnaXN0ZXJDb250YWluZXIsXG4gIHVucmVnaXN0ZXJDb250YWluZXIsXG4gIERFRkFVTFRfU0NPUEUsXG59IGZyb20gJy4vdXRpbHMnXG5cbmltcG9ydCB7XG4gIENvbnRhaW5lclJlZixcbiAgQ29udGFpbmVyUHJvcHMsXG4gIEluc3RhbmNlLFxuICBJbnN0YW5jZUlkLFxuICBJbnN0YW5jZUNyZWF0b3IsXG4gIEluc3RhbmNlT3B0aW9ucyxcbn0gZnJvbSAnLi90eXBlcydcblxuY29uc3QgSW5zdGFuY2VDb250YWluZXI6IFJlYWN0LkZvcndhcmRSZWZSZW5kZXJGdW5jdGlvbjxcbiAgQ29udGFpbmVyUmVmLFxuICBDb250YWluZXJQcm9wc1xuPiA9IChwcm9wcywgcmVmKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBzY29wZSA9IERFRkFVTFRfU0NPUEUsXG4gICAgZW50ZXJUaW1lb3V0LFxuICAgIGV4aXRUaW1lb3V0LFxuICAgIGlzQXBwZW5kSW50YW5jZXMsXG4gICAgb25PcGVuLFxuICAgIG9uUmVtb3ZlLFxuICAgIG9uUmVzb2x2ZSxcbiAgICBvblJlamVjdCxcbiAgfSA9IHByb3BzIHx8IHt9XG5cbiAgY29uc3QgW2luc3RhbmNlcywgc2V0SW5zdGFuY2VzXSA9IHVzZVN0YXRlPHsgW2tleTogc3RyaW5nXTogSW5zdGFuY2UgfT4oe30pXG4gIGNvbnN0IFtoYXNoU3RhY2ssIHNldEhhc2hTdGFja10gPSB1c2VTdGF0ZTxIZXhbXT4oW10pXG5cbiAgY29uc3QgcmVzb2x2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChoYXNoOiBJbnN0YW5jZUlkLCB2KSA9PiBpbnN0YW5jZXM/LltoYXNoXT8ucmVzb2x2ZSh2KSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG4gIGNvbnN0IHJlc29sdmVBbGwgPSB1c2VDYWxsYmFjayhcbiAgICB2ID0+IE9iamVjdC52YWx1ZXMoaW5zdGFuY2VzKS5mb3JFYWNoKGkgPT4gaS5yZXNvbHZlKHYpKSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG5cbiAgY29uc3QgcmVqZWN0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGhhc2g6IEluc3RhbmNlSWQsIHIpID0+IGluc3RhbmNlcz8uW2hhc2hdPy5yZWplY3QociksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuICBjb25zdCByZWplY3RBbGwgPSB1c2VDYWxsYmFjayhcbiAgICByID0+IE9iamVjdC52YWx1ZXMoaW5zdGFuY2VzKS5mb3JFYWNoKGkgPT4gaS5yZWplY3QocikpLFxuICAgIFtpbnN0YW5jZXNdXG4gIClcbiAgY29uc3QgaGFzSW5zdGFuY2UgPSB1c2VDYWxsYmFjaygoaGFzaDogSW5zdGFuY2VJZCkgPT4gISFpbnN0YW5jZXM/LltoYXNoXSwgW1xuICAgIGluc3RhbmNlcyxcbiAgXSlcbiAgY29uc3QgZ2V0SW5zdGFuY2UgPSB1c2VDYWxsYmFjaygoaGFzaDogSW5zdGFuY2VJZCkgPT4gaW5zdGFuY2VzPy5baGFzaF0sIFtcbiAgICBpbnN0YW5jZXMsXG4gIF0pXG5cbiAgY29uc3QgcmVtb3ZlID0gdXNlQ2FsbGJhY2soXG4gICAgKGhhc2g6IEluc3RhbmNlSWQsIG9wdGlvbnM6IEluc3RhbmNlT3B0aW9ucyk6IHZvaWQgPT4ge1xuICAgICAgc2V0SGFzaFN0YWNrKHN0YWNrID0+IHN0YWNrLmZpbHRlcihzID0+IHMgIT09IGhhc2gpKVxuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0SW5zdGFuY2VzKGluc3RhbmNlcyA9PiB7XG4gICAgICAgICAgY29uc3QgeyBbaGFzaF06IF8sIC4uLm9taXRIYXNoIH0gPSBpbnN0YW5jZXNcblxuICAgICAgICAgIHJldHVybiBvbWl0SGFzaFxuICAgICAgICB9KVxuICAgICAgICBvblJlbW92ZT8uKGhhc2gpXG4gICAgICB9LCBvcHRpb25zPy5leGl0VGltZW91dClcbiAgICB9LFxuICAgIFtvblJlbW92ZV1cbiAgKVxuXG4gIGNvbnN0IGNyZWF0ZTogSW5zdGFuY2VDcmVhdG9yID0gdXNlQ2FsbGJhY2soXG4gICAgKENvbXBvbmVudCwgb3B0aW9ucyA9IHt9LCBwcm9wcykgPT5cbiAgICAgIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgICAgICBjb25zdCBoYXNoID0gcHJvcHM/Lmluc3RhbmNlSWQgfHwgaGV4R2VuKClcblxuICAgICAgICBjb25zdCBpbnN0YW5jZU9wdGlvbnMgPSB7XG4gICAgICAgICAgZW50ZXJUaW1lb3V0LFxuICAgICAgICAgIGV4aXRUaW1lb3V0LFxuICAgICAgICAgIGluc3RhbmNlSWQ6IGhhc2gsXG4gICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluc3RhbmNlOiBJbnN0YW5jZSA9IHtcbiAgICAgICAgICBDb21wb25lbnQsXG4gICAgICAgICAgcHJvcHM6IHsgLi4uaW5zdGFuY2VPcHRpb25zLCAuLi5wcm9wcyB9LFxuICAgICAgICAgIHJlc29sdmU6IHYgPT4ge1xuICAgICAgICAgICAgcmVtb3ZlKGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICAgIHJlcyh2KVxuICAgICAgICAgICAgb25SZXNvbHZlPy4odiwgaGFzaClcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlamVjdDogciA9PiB7XG4gICAgICAgICAgICByZW1vdmUoaGFzaCwgaW5zdGFuY2VPcHRpb25zKVxuICAgICAgICAgICAgcmVqKHIpXG4gICAgICAgICAgICBvblJlamVjdD8uKHIsIGhhc2gpXG4gICAgICAgICAgfSxcbiAgICAgICAgICAuLi5pbnN0YW5jZU9wdGlvbnMsXG4gICAgICAgIH1cblxuICAgICAgICBzZXRJbnN0YW5jZXMoaW5zdGFuY2VzID0+XG4gICAgICAgICAgaXNBcHBlbmRJbnRhbmNlc1xuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgICAgIFtoYXNoXTogaW5zdGFuY2UsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgIFtoYXNoXTogaW5zdGFuY2UsXG4gICAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgICB9XG4gICAgICAgIClcblxuICAgICAgICBzZXRUaW1lb3V0KFxuICAgICAgICAgICgpID0+IHNldEhhc2hTdGFjayhzdGFjayA9PiBbLi4uc3RhY2ssIGhhc2hdKSxcbiAgICAgICAgICBpbnN0YW5jZU9wdGlvbnMuZW50ZXJUaW1lb3V0XG4gICAgICAgIClcblxuICAgICAgICBvbk9wZW4/LihoYXNoLCBpbnN0YW5jZSlcbiAgICAgIH0pLFxuICAgIFtlbnRlclRpbWVvdXQsIGV4aXRUaW1lb3V0LCBvbk9wZW4sIG9uUmVzb2x2ZSwgb25SZWplY3QsIGlzQXBwZW5kSW50YW5jZXNdXG4gIClcblxuICB1c2VJbXBlcmF0aXZlSGFuZGxlKHJlZiwgKCkgPT4gKHtcbiAgICBjcmVhdGUsXG4gICAgcmVzb2x2ZSxcbiAgICByZWplY3QsXG4gICAgcmVzb2x2ZUFsbCxcbiAgICByZWplY3RBbGwsXG4gICAgaGFzSW5zdGFuY2UsXG4gICAgZ2V0SW5zdGFuY2UsXG4gIH0pKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVnaXN0ZXJDb250YWluZXIoc2NvcGUsIHtcbiAgICAgIGNyZWF0ZSxcbiAgICAgIHJlc29sdmUsXG4gICAgICByZWplY3QsXG4gICAgICByZXNvbHZlQWxsLFxuICAgICAgcmVqZWN0QWxsLFxuICAgICAgaGFzSW5zdGFuY2UsXG4gICAgICBnZXRJbnN0YW5jZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuICgpID0+IHVucmVnaXN0ZXJDb250YWluZXIoc2NvcGUpXG4gIH0sIFtzY29wZV0pXG5cbiAgY29uc3QgbWFwS2V5cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhpbnN0YW5jZXMpXG5cbiAgICByZXR1cm4ga2V5cy5tYXAoa2V5ID0+IHtcbiAgICAgIGNvbnN0IHsgQ29tcG9uZW50LCBwcm9wcywgcmVzb2x2ZSwgcmVqZWN0IH0gPSBpbnN0YW5jZXNba2V5XVxuXG4gICAgICBjb25zdCBpc09wZW4gPSAhIWhhc2hTdGFjay5maW5kKGggPT4gaCA9PT0ga2V5KVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Q29tcG9uZW50XG4gICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgIGtleT17a2V5fVxuICAgICAgICAgIGlzT3Blbj17aXNPcGVufVxuICAgICAgICAgIG9uUmVqZWN0PXtyZWplY3R9XG4gICAgICAgICAgb25SZXNvbHZlPXtyZXNvbHZlfVxuICAgICAgICAgIC8qKiBAZGVwcmVjYXRlZCAqKi9cbiAgICAgICAgICBjbG9zZT17cmVzb2x2ZX1cbiAgICAgICAgICAvKiogQGRlcHJlY2F0ZWQgKiovXG4gICAgICAgICAgb3Blbj17aXNPcGVufVxuICAgICAgICAvPlxuICAgICAgKVxuICAgIH0pXG4gIH0sIFtpbnN0YW5jZXMsIGhhc2hTdGFja10pXG5cbiAgcmV0dXJuIDw+e21hcEtleXN9PC8+XG59XG5cbmV4cG9ydCBjb25zdCBDb250YWluZXIgPSBmb3J3YXJkUmVmKEluc3RhbmNlQ29udGFpbmVyKVxuXG5Db250YWluZXIuZGVmYXVsdFByb3BzID0ge1xuICBleGl0VGltZW91dDogNTAwLFxuICBlbnRlclRpbWVvdXQ6IDUwLFxufVxuIiwiaW1wb3J0IHsgZ2V0Q29udGFpbmVyIH0gZnJvbSAnLi91dGlscydcbmltcG9ydCB7IENyZWF0ZUluc3RhbmNlIH0gZnJvbSAnLi90eXBlcydcblxuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgY29uc3QgY3JlYXRlTW9kYWw6IENyZWF0ZUluc3RhbmNlID0gKENvbXBvbmVudCwgb3B0aW9ucykgPT4gcHJvcHMgPT5cbiAgZ2V0Q29udGFpbmVyKG9wdGlvbnM/LnNjb3BlKS5jcmVhdGUoQ29tcG9uZW50LCBvcHRpb25zLCBwcm9wcylcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlSW5zdGFuY2UgPSAoQ29tcG9uZW50LCBvcHRpb25zKSA9PiBwcm9wcyA9PlxuICBnZXRDb250YWluZXIob3B0aW9ucz8uc2NvcGUpLmNyZWF0ZShDb21wb25lbnQsIG9wdGlvbnMsIHByb3BzKVxuIl0sIm5hbWVzIjpbInVzZVN0YXRlIiwidXNlQ2FsbGJhY2siLCJ1c2VJbXBlcmF0aXZlSGFuZGxlIiwidXNlRWZmZWN0IiwidXNlTWVtbyIsIlJlYWN0IiwiZm9yd2FyZFJlZiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBRWEsTUFBTSxHQUFHLFVBQUMsR0FBZ0I7SUFBaEIsb0JBQUEsRUFBQSxRQUFnQjtJQUNyQyxJQUFNLE1BQU0sR0FBRyxDQUFDLENBQUE7SUFDaEIsSUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxD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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy9oZXgtZ2VuLnRzIiwiLi4vc3JjL3V0aWxzL3JlZ2lzdGVyLXNjb3BlLnRzIiwiLi4vc3JjL0NvbnRhaW5lci50c3giLCIuLi9zcmMvY3JlYXRlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIZXggPSBzdHJpbmdcblxuZXhwb3J0IGNvbnN0IGhleEdlbiA9IChsZW46IG51bWJlciA9IDEyKTogSGV4ID0+IHtcbiAgY29uc3QgbWF4bGVuID0gOFxuICBjb25zdCBtaW4gPSBNYXRoLnBvdygxNiwgTWF0aC5taW4obGVuLCBtYXhsZW4pIC0gMSlcbiAgY29uc3QgbWF4ID0gTWF0aC5wb3coMTYsIE1hdGgubWluKGxlbiwgbWF4bGVuKSkgLSAxXG4gIGNvbnN0IG4gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkpICsgbWluXG4gIGxldCByID0gbi50b1N0cmluZygxNilcbiAgd2hpbGUgKHIubGVuZ3RoIDwgbGVuKSB7XG4gICAgciA9IHIgKyBoZXhHZW4obGVuIC0gbWF4bGVuKVxuICB9XG4gIHJldHVybiByXG59XG4iLCJpbXBvcnQgeyBTY29wZSwgU2NvcGVNb2RlbCwgQ29udGFpbmVyUmVmIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NDT1BFID0gJ3N0YWNrJ1xuZXhwb3J0IGNvbnN0IFNDT1BFX0tFWSA9ICdmYWN0b3J5U3RhY2snXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIFtTQ09QRV9LRVldOiBTY29wZU1vZGVsXG4gIH1cbn1cblxuaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gIGlmICghd2luZG93W1NDT1BFX0tFWV0pIHtcbiAgICB3aW5kb3dbU0NPUEVfS0VZXSA9IHt9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHJlZ2lzdGVyQ29udGFpbmVyID0gKHNjb3BlOiBTY29wZSwgcmVmOiBDb250YWluZXJSZWYpID0+IHtcbiAgd2luZG93W1NDT1BFX0tFWV1bc2NvcGVdID0gcmVmXG5cbiAgcmV0dXJuIHJlZlxufVxuXG5leHBvcnQgY29uc3QgdW5yZWdpc3RlckNvbnRhaW5lciA9IChzY29wZTogU2NvcGUpID0+IHtcbiAgZGVsZXRlIHdpbmRvd1tTQ09QRV9LRVldW3Njb3BlXVxufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29udGFpbmVyID0gKHNjb3BlPzogU2NvcGUpID0+XG4gIHdpbmRvd1tTQ09QRV9LRVldW3Njb3BlIHx8IERFRkFVTFRfU0NPUEVdXG4iLCJpbXBvcnQgUmVhY3QsIHtcbiAgdXNlUmVmLFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICBmb3J3YXJkUmVmLFxuICB1c2VTdGF0ZSxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VDYWxsYmFjayxcbn0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7XG4gIGhleEdlbixcbiAgSGV4LFxuICByZWdpc3RlckNvbnRhaW5lcixcbiAgdW5yZWdpc3RlckNvbnRhaW5lcixcbiAgREVGQVVMVF9TQ09QRSxcbn0gZnJvbSAnLi91dGlscydcblxuaW1wb3J0IHtcbiAgQ29udGFpbmVyUmVmLFxuICBDb250YWluZXJQcm9wcyxcbiAgSW5zdGFuY2UsXG4gIEluc3RhbmNlSWQsXG4gIEluc3RhbmNlQ3JlYXRvcixcbiAgSW5zdGFuY2VPcHRpb25zLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBJbnN0YW5jZUNvbnRhaW5lcjogUmVhY3QuRm9yd2FyZFJlZlJlbmRlckZ1bmN0aW9uPFxuICBDb250YWluZXJSZWYsXG4gIENvbnRhaW5lclByb3BzXG4+ID0gKHByb3BzLCByZWYpID0+IHtcbiAgY29uc3Qge1xuICAgIHNjb3BlID0gREVGQVVMVF9TQ09QRSxcbiAgICBlbnRlclRpbWVvdXQsXG4gICAgZXhpdFRpbWVvdXQsXG4gICAgaXNBcHBlbmRJbnRhbmNlcyxcbiAgICBvblJlc29sdmUsXG4gICAgb25SZWplY3QsXG4gIH0gPSBwcm9wcyB8fCB7fVxuXG4gIGNvbnN0IFtpbnN0YW5jZXMsIHNldEluc3RhbmNlc10gPSB1c2VTdGF0ZTx7IFtrZXk6IHN0cmluZ106IEluc3RhbmNlIH0+KHt9KVxuICBjb25zdCBbaGFzaFN0YWNrLCBzZXRIYXNoU3RhY2tdID0gdXNlU3RhdGU8SGV4W10+KFtdKVxuXG4gIGNvbnN0IHJlc29sdmUgPSB1c2VDYWxsYmFjayhcbiAgICAoaGFzaDogSW5zdGFuY2VJZCwgdikgPT4gaW5zdGFuY2VzPy5baGFzaF0/LnJlc29sdmUodiksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuICBjb25zdCByZXNvbHZlQWxsID0gdXNlQ2FsbGJhY2soXG4gICAgdiA9PiBPYmplY3QudmFsdWVzKGluc3RhbmNlcykuZm9yRWFjaChpID0+IGkucmVzb2x2ZSh2KSksXG4gICAgW2luc3RhbmNlc11cbiAgKVxuXG4gIGNvbnN0IHJlamVjdCA9IHVzZUNhbGxiYWNrKFxuICAgIChoYXNoOiBJbnN0YW5jZUlkLCByKSA9PiBpbnN0YW5jZXM/LltoYXNoXT8ucmVqZWN0KHIpLFxuICAgIFtpbnN0YW5jZXNdXG4gIClcbiAgY29uc3QgcmVqZWN0QWxsID0gdXNlQ2FsbGJhY2soXG4gICAgciA9PiBPYmplY3QudmFsdWVzKGluc3RhbmNlcykuZm9yRWFjaChpID0+IGkucmVqZWN0KHIpKSxcbiAgICBbaW5zdGFuY2VzXVxuICApXG4gIGNvbnN0IGhhc0luc3RhbmNlID0gdXNlQ2FsbGJhY2soKGhhc2g6IEluc3RhbmNlSWQpID0+ICEhaW5zdGFuY2VzPy5baGFzaF0sIFtcbiAgICBpbnN0YW5jZXMsXG4gIF0pXG4gIGNvbnN0IGdldEluc3RhbmNlID0gdXNlQ2FsbGJhY2soKGhhc2g6IEluc3RhbmNlSWQpID0+IGluc3RhbmNlcz8uW2hhc2hdLCBbXG4gICAgaW5zdGFuY2VzLFxuICBdKVxuXG4gIGNvbnN0IHJlbW92ZSA9IChoYXNoOiBJbnN0YW5jZUlkLCBvcHRpb25zOiBJbnN0YW5jZU9wdGlvbnMpOiB2b2lkID0+IHtcbiAgICBzZXRIYXNoU3RhY2soc3RhY2sgPT4gc3RhY2suZmlsdGVyKHMgPT4gcyAhPT0gaGFzaCkpXG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldEluc3RhbmNlcyhpbnN0YW5jZXMgPT4ge1xuICAgICAgICBjb25zdCB7IFtoYXNoXTogXywgLi4ub21pdEhhc2ggfSA9IGluc3RhbmNlc1xuXG4gICAgICAgIHJldHVybiBvbWl0SGFzaFxuICAgICAgfSlcbiAgICB9LCBvcHRpb25zPy5leGl0VGltZW91dClcblxuICAgIHByb3BzLm9uUmVtb3ZlPy4oaGFzaClcbiAgfVxuXG4gIGNvbnN0IHJlbW92ZVJlZiA9IHVzZVJlZihyZW1vdmUpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZW1vdmVSZWYuY3VycmVudCA9IHJlbW92ZVxuICB9KVxuXG4gIGNvbnN0IGNyZWF0ZTogSW5zdGFuY2VDcmVhdG9yID0gKENvbXBvbmVudCwgb3B0aW9ucyA9IHt9LCBpbnN0YW5jZVByb3BzKSA9PlxuICAgIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgICAgY29uc3QgaGFzaCA9IGluc3RhbmNlUHJvcHM/Lmluc3RhbmNlSWQgfHwgaGV4R2VuKClcblxuICAgICAgY29uc3QgaW5zdGFuY2VPcHRpb25zID0ge1xuICAgICAgICBlbnRlclRpbWVvdXQsXG4gICAgICAgIGV4aXRUaW1lb3V0LFxuICAgICAgICBpbnN0YW5jZUlkOiBoYXNoLFxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgfVxuXG4gICAgICBjb25zdCBpbnN0YW5jZTogSW5zdGFuY2UgPSB7XG4gICAgICAgIENvbXBvbmVudCxcbiAgICAgICAgcHJvcHM6IHsgLi4uaW5zdGFuY2VPcHRpb25zLCAuLi5pbnN0YW5jZVByb3BzIH0sXG4gICAgICAgIHJlc29sdmU6IHYgPT4ge1xuICAgICAgICAgIHJlbW92ZVJlZi5jdXJyZW50KGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICByZXModilcbiAgICAgICAgICBvblJlc29sdmU/Lih2LCBoYXNoKVxuICAgICAgICB9LFxuICAgICAgICByZWplY3Q6IHIgPT4ge1xuICAgICAgICAgIHJlbW92ZVJlZi5jdXJyZW50KGhhc2gsIGluc3RhbmNlT3B0aW9ucylcbiAgICAgICAgICByZWoocilcbiAgICAgICAgICBvblJlamVjdD8uKHIsIGhhc2gpXG4gICAgICAgIH0sXG4gICAgICAgIC4uLmluc3RhbmNlT3B0aW9ucyxcbiAgICAgIH1cblxuICAgICAgc2V0SW5zdGFuY2VzKGluc3RhbmNlcyA9PlxuICAgICAgICBpc0FwcGVuZEludGFuY2VzXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIC4uLmluc3RhbmNlcyxcbiAgICAgICAgICAgICAgW2hhc2hdOiBpbnN0YW5jZSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgW2hhc2hdOiBpbnN0YW5jZSxcbiAgICAgICAgICAgICAgLi4uaW5zdGFuY2VzLFxuICAgICAgICAgICAgfVxuICAgICAgKVxuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0SGFzaFN0YWNrKHN0YWNrID0+IFsuLi5zdGFjaywgaGFzaF0pXG4gICAgICAgIHByb3BzLm9uT3Blbj8uKGhhc2gsIGluc3RhbmNlKVxuICAgICAgfSwgaW5zdGFuY2VPcHRpb25zLmVudGVyVGltZW91dClcbiAgICB9KVxuXG4gIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiAoe1xuICAgIGNyZWF0ZSxcbiAgICByZXNvbHZlLFxuICAgIHJlamVjdCxcbiAgICByZXNvbHZlQWxsLFxuICAgIHJlamVjdEFsbCxcbiAgICBoYXNJbnN0YW5jZSxcbiAgICBnZXRJbnN0YW5jZSxcbiAgfSkpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZWdpc3RlckNvbnRhaW5lcihzY29wZSwge1xuICAgICAgY3JlYXRlLFxuICAgICAgcmVzb2x2ZSxcbiAgICAgIHJlamVjdCxcbiAgICAgIHJlc29sdmVBbGwsXG4gICAgICByZWplY3RBbGwsXG4gICAgICBoYXNJbnN0YW5jZSxcbiAgICAgIGdldEluc3RhbmNlLFxuICAgIH0pXG5cbiAgICByZXR1cm4gKCkgPT4gdW5yZWdpc3RlckNvbnRhaW5lcihzY29wZSlcbiAgfSwgW3Njb3BlXSlcblxuICBjb25zdCBtYXBLZXlzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluc3RhbmNlcylcblxuICAgIHJldHVybiBrZXlzLm1hcChrZXkgPT4ge1xuICAgICAgY29uc3QgeyBDb21wb25lbnQsIHByb3BzLCByZXNvbHZlLCByZWplY3QgfSA9IGluc3RhbmNlc1trZXldXG5cbiAgICAgIGNvbnN0IGlzT3BlbiA9ICEhaGFzaFN0YWNrLmZpbmQoaCA9PiBoID09PSBrZXkpXG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDb21wb25lbnRcbiAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAga2V5PXtrZXl9XG4gICAgICAgICAgaXNPcGVuPXtpc09wZW59XG4gICAgICAgICAgb25SZWplY3Q9e3JlamVjdH1cbiAgICAgICAgICBvblJlc29sdmU9e3Jlc29sdmV9XG4gICAgICAgICAgLyoqIEBkZXByZWNhdGVkICoqL1xuICAgICAgICAgIGNsb3NlPXtyZXNvbHZlfVxuICAgICAgICAgIC8qKiBAZGVwcmVjYXRlZCAqKi9cbiAgICAgICAgICBvcGVuPXtpc09wZW59XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgfSlcbiAgfSwgW2luc3RhbmNlcywgaGFzaFN0YWNrXSlcblxuICByZXR1cm4gPD57bWFwS2V5c308Lz5cbn1cblxuZXhwb3J0IGNvbnN0IENvbnRhaW5lciA9IGZvcndhcmRSZWYoSW5zdGFuY2VDb250YWluZXIpXG5cbkNvbnRhaW5lci5kZWZhdWx0UHJvcHMgPSB7XG4gIGV4aXRUaW1lb3V0OiA1MDAsXG4gIGVudGVyVGltZW91dDogNTAsXG59XG4iLCJpbXBvcnQgeyBnZXRDb250YWluZXIgfSBmcm9tICcuL3V0aWxzJ1xuaW1wb3J0IHsgQ3JlYXRlSW5zdGFuY2UgfSBmcm9tICcuL3R5cGVzJ1xuXG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVNb2RhbDogQ3JlYXRlSW5zdGFuY2UgPSAoQ29tcG9uZW50LCBvcHRpb25zKSA9PiBwcm9wcyA9PlxuICBnZXRDb250YWluZXIob3B0aW9ucz8uc2NvcGUpLmNyZWF0ZShDb21wb25lbnQsIG9wdGlvbnMsIHByb3BzKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlOiBDcmVhdGVJbnN0YW5jZSA9IChDb21wb25lbnQsIG9wdGlvbnMpID0+IHByb3BzID0+XG4gIGdldENvbnRhaW5lcihvcHRpb25zPy5zY29wZSkuY3JlYXRlKENvbXBvbmVudCwgb3B0aW9ucywgcHJvcHMpXG4iXSwibmFtZXMiOlsidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsInVzZVJlZiIsInVzZUVmZmVjdCIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJ1c2VNZW1vIiwiUmVhY3QiLCJmb3J3YXJkUmVmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFYSxNQUFNLEdBQUcsVUFBQyxHQUFnQjtJQUFoQixvQkFBQSxFQUFBLFFBQWdCO0lBQ3JDLElBQU0sTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUNoQixJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUNuRCxJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNuRCxJQUFNLENBQUMsR0FBRyxJQUFJ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

@@ -25,3 +25,3 @@ /// <reference types="react" />

/** @deprecated **/
close: (result: Result) => void;
close: (result?: Result) => void;
}

@@ -28,0 +28,0 @@ export interface Instance extends InstanceOptions {

{
"name": "react-modal-promise",
"version": "0.7.2",
"version": "0.7.3",
"description": "Promise wrapper for React components",

@@ -5,0 +5,0 @@ "keywords": [

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