You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			2753 lines
		
	
	
		
			84 KiB
		
	
	
	
		
			JavaScript
		
	
			
		
		
	
	
			2753 lines
		
	
	
		
			84 KiB
		
	
	
	
		
			JavaScript
		
	
(self["webpackChunk_JUPYTERLAB_CORE_OUTPUT"] = self["webpackChunk_JUPYTERLAB_CORE_OUTPUT"] || []).push([[757,7061],{
 | 
						|
 | 
						|
/***/ 27061:
 | 
						|
/***/ ((module) => {
 | 
						|
 | 
						|
// shim for using process in browser
 | 
						|
var process = module.exports = {};
 | 
						|
 | 
						|
// cached from whatever global is present so that test runners that stub it
 | 
						|
// don't break things.  But we need to wrap it in a try catch in case it is
 | 
						|
// wrapped in strict mode code which doesn't define any globals.  It's inside a
 | 
						|
// function because try/catches deoptimize in certain engines.
 | 
						|
 | 
						|
var cachedSetTimeout;
 | 
						|
var cachedClearTimeout;
 | 
						|
 | 
						|
function defaultSetTimout() {
 | 
						|
    throw new Error('setTimeout has not been defined');
 | 
						|
}
 | 
						|
function defaultClearTimeout () {
 | 
						|
    throw new Error('clearTimeout has not been defined');
 | 
						|
}
 | 
						|
(function () {
 | 
						|
    try {
 | 
						|
        if (typeof setTimeout === 'function') {
 | 
						|
            cachedSetTimeout = setTimeout;
 | 
						|
        } else {
 | 
						|
            cachedSetTimeout = defaultSetTimout;
 | 
						|
        }
 | 
						|
    } catch (e) {
 | 
						|
        cachedSetTimeout = defaultSetTimout;
 | 
						|
    }
 | 
						|
    try {
 | 
						|
        if (typeof clearTimeout === 'function') {
 | 
						|
            cachedClearTimeout = clearTimeout;
 | 
						|
        } else {
 | 
						|
            cachedClearTimeout = defaultClearTimeout;
 | 
						|
        }
 | 
						|
    } catch (e) {
 | 
						|
        cachedClearTimeout = defaultClearTimeout;
 | 
						|
    }
 | 
						|
} ())
 | 
						|
function runTimeout(fun) {
 | 
						|
    if (cachedSetTimeout === setTimeout) {
 | 
						|
        //normal enviroments in sane situations
 | 
						|
        return setTimeout(fun, 0);
 | 
						|
    }
 | 
						|
    // if setTimeout wasn't available but was latter defined
 | 
						|
    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
 | 
						|
        cachedSetTimeout = setTimeout;
 | 
						|
        return setTimeout(fun, 0);
 | 
						|
    }
 | 
						|
    try {
 | 
						|
        // when when somebody has screwed with setTimeout but no I.E. maddness
 | 
						|
        return cachedSetTimeout(fun, 0);
 | 
						|
    } catch(e){
 | 
						|
        try {
 | 
						|
            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
 | 
						|
            return cachedSetTimeout.call(null, fun, 0);
 | 
						|
        } catch(e){
 | 
						|
            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
 | 
						|
            return cachedSetTimeout.call(this, fun, 0);
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
}
 | 
						|
function runClearTimeout(marker) {
 | 
						|
    if (cachedClearTimeout === clearTimeout) {
 | 
						|
        //normal enviroments in sane situations
 | 
						|
        return clearTimeout(marker);
 | 
						|
    }
 | 
						|
    // if clearTimeout wasn't available but was latter defined
 | 
						|
    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
 | 
						|
        cachedClearTimeout = clearTimeout;
 | 
						|
        return clearTimeout(marker);
 | 
						|
    }
 | 
						|
    try {
 | 
						|
        // when when somebody has screwed with setTimeout but no I.E. maddness
 | 
						|
        return cachedClearTimeout(marker);
 | 
						|
    } catch (e){
 | 
						|
        try {
 | 
						|
            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
 | 
						|
            return cachedClearTimeout.call(null, marker);
 | 
						|
        } catch (e){
 | 
						|
            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
 | 
						|
            // Some versions of I.E. have different rules for clearTimeout vs setTimeout
 | 
						|
            return cachedClearTimeout.call(this, marker);
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
 | 
						|
}
 | 
						|
var queue = [];
 | 
						|
var draining = false;
 | 
						|
var currentQueue;
 | 
						|
var queueIndex = -1;
 | 
						|
 | 
						|
function cleanUpNextTick() {
 | 
						|
    if (!draining || !currentQueue) {
 | 
						|
        return;
 | 
						|
    }
 | 
						|
    draining = false;
 | 
						|
    if (currentQueue.length) {
 | 
						|
        queue = currentQueue.concat(queue);
 | 
						|
    } else {
 | 
						|
        queueIndex = -1;
 | 
						|
    }
 | 
						|
    if (queue.length) {
 | 
						|
        drainQueue();
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
function drainQueue() {
 | 
						|
    if (draining) {
 | 
						|
        return;
 | 
						|
    }
 | 
						|
    var timeout = runTimeout(cleanUpNextTick);
 | 
						|
    draining = true;
 | 
						|
 | 
						|
    var len = queue.length;
 | 
						|
    while(len) {
 | 
						|
        currentQueue = queue;
 | 
						|
        queue = [];
 | 
						|
        while (++queueIndex < len) {
 | 
						|
            if (currentQueue) {
 | 
						|
                currentQueue[queueIndex].run();
 | 
						|
            }
 | 
						|
        }
 | 
						|
        queueIndex = -1;
 | 
						|
        len = queue.length;
 | 
						|
    }
 | 
						|
    currentQueue = null;
 | 
						|
    draining = false;
 | 
						|
    runClearTimeout(timeout);
 | 
						|
}
 | 
						|
 | 
						|
process.nextTick = function (fun) {
 | 
						|
    var args = new Array(arguments.length - 1);
 | 
						|
    if (arguments.length > 1) {
 | 
						|
        for (var i = 1; i < arguments.length; i++) {
 | 
						|
            args[i - 1] = arguments[i];
 | 
						|
        }
 | 
						|
    }
 | 
						|
    queue.push(new Item(fun, args));
 | 
						|
    if (queue.length === 1 && !draining) {
 | 
						|
        runTimeout(drainQueue);
 | 
						|
    }
 | 
						|
};
 | 
						|
 | 
						|
// v8 likes predictible objects
 | 
						|
function Item(fun, array) {
 | 
						|
    this.fun = fun;
 | 
						|
    this.array = array;
 | 
						|
}
 | 
						|
Item.prototype.run = function () {
 | 
						|
    this.fun.apply(null, this.array);
 | 
						|
};
 | 
						|
process.title = 'browser';
 | 
						|
process.browser = true;
 | 
						|
process.env = {};
 | 
						|
process.argv = [];
 | 
						|
process.version = ''; // empty string to avoid regexp issues
 | 
						|
process.versions = {};
 | 
						|
 | 
						|
function noop() {}
 | 
						|
 | 
						|
process.on = noop;
 | 
						|
process.addListener = noop;
 | 
						|
process.once = noop;
 | 
						|
process.off = noop;
 | 
						|
process.removeListener = noop;
 | 
						|
process.removeAllListeners = noop;
 | 
						|
process.emit = noop;
 | 
						|
process.prependListener = noop;
 | 
						|
process.prependOnceListener = noop;
 | 
						|
 | 
						|
process.listeners = function (name) { return [] }
 | 
						|
 | 
						|
process.binding = function (name) {
 | 
						|
    throw new Error('process.binding is not supported');
 | 
						|
};
 | 
						|
 | 
						|
process.cwd = function () { return '/' };
 | 
						|
process.chdir = function (dir) {
 | 
						|
    throw new Error('process.chdir is not supported');
 | 
						|
};
 | 
						|
process.umask = function() { return 0; };
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 96389:
 | 
						|
/***/ ((module, exports, __webpack_require__) => {
 | 
						|
 | 
						|
!function(e,a){ true?module.exports=a(__webpack_require__(78156)):0}(__webpack_require__.g,(function(e){return function(e){var a={};function t(r){if(a[r])return a[r].exports;var n=a[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,t),n.l=!0,n.exports}return t.m=e,t.c=a,t.d=function(e,a,r){t.o(e,a)||Object.defineProperty(e,a,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,a){if(1&a&&(e=t(e)),8&a)return e;if(4&a&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&a&&"string"!=typeof e)for(var n in e)t.d(r,n,function(a){return e[a]}.bind(null,n));return r},t.n=function(e){var a=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(a,"a",a),a},t.o=function(e,a){return Object.prototype.hasOwnProperty.call(e,a)},t.p="",t(t.s=4)}([function(e,a,t){e.exports=t(2)()},function(a,t){a.exports=e},function(e,a,t){"use strict";var r=t(3);function n(){}function i(){}i.resetWarningCache=n,e.exports=function(){function e(e,a,t,n,i,o){if(o!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function a(){return e}e.isRequired=e;var t={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:a,element:e,elementType:e,instanceOf:a,node:e,objectOf:a,oneOf:a,oneOfType:a,shape:a,exact:a,checkPropTypes:i,resetWarningCache:n};return t.PropTypes=t,t}},function(e,a,t){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,a,t){"use strict";t.r(a);var r=t(1),n=t.n(r),i=t(0),o=t.n(i);function s(){return(s=Object.assign||function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}var l=function(e){var a=e.pageClassName,t=e.pageLinkClassName,r=e.page,i=e.selected,o=e.activeClassName,l=e.activeLinkClassName,c=e.getEventListener,u=e.pageSelectedHandler,p=e.href,f=e.extraAriaContext,d=e.ariaLabel||"Page "+r+(f?" "+f:""),g=null;return i&&(g="page",d=e.ariaLabel||"Page "+r+" is your current page",a=void 0!==a?a+" "+o:o,void 0!==t?void 0!==l&&(t=t+" "+l):t=l),n.a.createElement("li",{className:a},n.a.createElement("a",s({role:"button",className:t,href:p,tabIndex:"0","aria-label":d,"aria-current":g,onKeyPress:u},c(u)),r))};l.propTypes={pageSelectedHandler:o.a.func.isRequired,selected:o.a.bool.isRequired,pageClassName:o.a.string,pageLinkClassName:o.a.string,activeClassName:o.a.string,activeLinkClassName:o.a.string,extraAriaContext:o.a.string,href:o.a.string,ariaLabel:o.a.string,page:o.a.number.isRequired,getEventListener:o.a.func.isRequired};var c=l;function u(){return(u=Object.assign||function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}!function(){var e="undefined"!=typeof reactHotLoaderGlobal?reactHotLoaderGlobal.default:void 0;if(e){var t=void 0!==a?a:exports;if(t)if("function"!=typeof t){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=void 0;try{n=t[r]}catch(e){continue}e.register(n,r,"/home/adele/workspace/react-paginate/react_components/PageView.js")}}else e.register(t,"module.exports","/home/adele/workspace/react-paginate/react_components/PageView.js")}}();var p=function(e){var a=e.breakLabel,t=e.breakClassName,r=e.breakLinkClassName,i=e.breakHandler,o=e.getEventListener,s=t||"break";return n.a.createElement("li",{className:s},n.a.createElement("a",u({className:r,role:"button",tabIndex:"0",onKeyPress:i},o(i)),a))};p.propTypes={breakLabel:o.a.oneOfType([o.a.string,o.a.node]),breakClassName:o.a.string,breakLinkClassName:o.a.string,breakHandler:o.a.func.isRequired,getEventListener:o.a.func.isRequired};var f=p;function d(e){return(d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function g(){return(g=Object.assign||function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function b(e,a){for(var t=0;t<a.length;t++){var r=a[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function v(e,a){return(v=Object.setPrototypeOf||function(e,a){return e.__proto__=a,e})(e,a)}function m(e){var a=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var t,r=C(e);if(a){var n=C(this).constructor;t=Reflect.construct(r,arguments,n)}else t=r.apply(this,arguments);return h(this,t)}}function h(e,a){return!a||"object"!==d(a)&&"function"!=typeof a?y(e):a}function y(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function C(e){return(C=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function k(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}!function(){var e="undefined"!=typeof reactHotLoaderGlobal?reactHotLoaderGlobal.default:void 0;if(e){var t=void 0!==a?a:exports;if(t)if("function"!=typeof t){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=void 0;try{n=t[r]}catch(e){continue}e.register(n,r,"/home/adele/workspace/react-paginate/react_components/BreakView.js")}}else e.register(t,"module.exports","/home/adele/workspace/react-paginate/react_components/BreakView.js")}}();var P=function(e){!function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(a&&a.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),a&&v(e,a)}(o,e);var a,t,r,i=m(o);function o(e){var a,t;return function(e,a){if(!(e instanceof a))throw new TypeError("Cannot call a class as a function")}(this,o),k(y(a=i.call(this,e)),"handlePreviousPage",(function(e){var t=a.state.selected;e.preventDefault?e.preventDefault():e.returnValue=!1,t>0&&a.handlePageSelected(t-1,e)})),k(y(a),"handleNextPage",(function(e){var t=a.state.selected,r=a.props.pageCount;e.preventDefault?e.preventDefault():e.returnValue=!1,t<r-1&&a.handlePageSelected(t+1,e)})),k(y(a),"handlePageSelected",(function(e,t){t.preventDefault?t.preventDefault():t.returnValue=!1,a.state.selected!==e&&(a.setState({selected:e}),a.callCallback(e))})),k(y(a),"getEventListener",(function(e){return k({},a.props.eventListener,e)})),k(y(a),"handleBreakClick",(function(e,t){t.preventDefault?t.preventDefault():t.returnValue=!1;var r=a.state.selected;a.handlePageSelected(r<e?a.getForwardJump():a.getBackwardJump(),t)})),k(y(a),"callCallback",(function(e){void 0!==a.props.onPageChange&&"function"==typeof a.props.onPageChange&&a.props.onPageChange({selected:e})})),k(y(a),"pagination",(function(){var e=[],t=a.props,r=t.pageRangeDisplayed,i=t.pageCount,o=t.marginPagesDisplayed,s=t.breakLabel,l=t.breakClassName,c=t.breakLinkClassName,u=a.state.selected;if(i<=r)for(var p=0;p<i;p++)e.push(a.getPageElement(p));else{var d,g,b,v=r/2,m=r-v;u>i-r/2?v=r-(m=i-u):u<r/2&&(m=r-(v=u));var h=function(e){return a.getPageElement(e)};for(d=0;d<i;d++)(g=d+1)<=o||g>i-o||d>=u-v&&d<=u+m?e.push(h(d)):s&&e[e.length-1]!==b&&(b=n.a.createElement(f,{key:d,breakLabel:s,breakClassName:l,breakLinkClassName:c,breakHandler:a.handleBreakClick.bind(null,d),getEventListener:a.getEventListener}),e.push(b))}return e})),t=e.initialPage?e.initialPage:e.forcePage?e.forcePage:0,a.state={selected:t},a}return a=o,(t=[{key:"componentDidMount",value:function(){var e=this.props,a=e.initialPage,t=e.disableInitialCallback,r=e.extraAriaContext;void 0===a||t||this.callCallback(a),r&&console.warn("DEPRECATED (react-paginate): The extraAriaContext prop is deprecated. You should now use the ariaLabelBuilder instead.")}},{key:"componentDidUpdate",value:function(e){void 0!==this.props.forcePage&&this.props.forcePage!==e.forcePage&&this.setState({selected:this.props.forcePage})}},{key:"getForwardJump",value:function(){var e=this.state.selected,a=this.props,t=a.pageCount,r=e+a.pageRangeDisplayed;return r>=t?t-1:r}},{key:"getBackwardJump",value:function(){var e=this.state.selected-this.props.pageRangeDisplayed;return e<0?0:e}},{key:"hrefBuilder",value:function(e){var a=this.props,t=a.hrefBuilder,r=a.pageCount;if(t&&e!==this.state.selected&&e>=0&&e<r)return t(e+1)}},{key:"ariaLabelBuilder",value:function(e){var a=e===this.state.selected;if(this.props.ariaLabelBuilder&&e>=0&&e<this.props.pageCount){var t=this.props.ariaLabelBuilder(e+1,a);return this.props.extraAriaContext&&!a&&(t=t+" "+this.props.extraAriaContext),t}}},{key:"getPageElement",value:function(e){var a=this.state.selected,t=this.props,r=t.pageClassName,i=t.pageLinkClassName,o=t.activeClassName,s=t.activeLinkClassName,l=t.extraAriaContext;return n.a.createElement(c,{key:e,pageSelectedHandler:this.handlePageSelected.bind(null,e),selected:a===e,pageClassName:r,pageLinkClassName:i,activeClassName:o,activeLinkClassName:s,extraAriaContext:l,href:this.hrefBuilder(e),ariaLabel:this.ariaLabelBuilder(e),page:e+1,getEventListener:this.getEventListener})}},{key:"render",value:function(){var e=this.props,a=e.disabledClassName,t=e.pageCount,r=e.containerClassName,i=e.previousLabel,o=e.previousClassName,s=e.previousLinkClassName,l=e.previousAriaLabel,c=e.nextLabel,u=e.nextClassName,p=e.nextLinkClassName,f=e.nextAriaLabel,d=this.state.selected,b=o+(0===d?" ".concat(a):""),v=u+(d===t-1?" ".concat(a):""),m=0===d?"true":"false",h=d===t-1?"true":"false";return n.a.createElement("ul",{className:r},n.a.createElement("li",{className:b},n.a.createElement("a",g({className:s,href:this.hrefBuilder(d-1),tabIndex:"0",role:"button",onKeyPress:this.handlePreviousPage,"aria-disabled":m,"aria-label":l},this.getEventListener(this.handlePreviousPage)),i)),this.pagination(),n.a.createElement("li",{className:v},n.a.createElement("a",g({className:p,href:this.hrefBuilder(d+1),tabIndex:"0",role:"button",onKeyPress:this.handleNextPage,"aria-disabled":h,"aria-label":f},this.getEventListener(this.handleNextPage)),c)))}}])&&b(a.prototype,t),r&&b(a,r),o}(r.Component);k(P,"propTypes",{pageCount:o.a.number.isRequired,pageRangeDisplayed:o.a.number.isRequired,marginPagesDisplayed:o.a.number.isRequired,previousLabel:o.a.node,previousAriaLabel:o.a.string,nextLabel:o.a.node,nextAriaLabel:o.a.string,breakLabel:o.a.oneOfType([o.a.string,o.a.node]),hrefBuilder:o.a.func,onPageChange:o.a.func,initialPage:o.a.number,forcePage:o.a.number,disableInitialCallback:o.a.bool,containerClassName:o.a.string,pageClassName:o.a.string,pageLinkClassName:o.a.string,activeClassName:o.a.string,activeLinkClassName:o.a.string,previousClassName:o.a.string,nextClassName:o.a.string,previousLinkClassName:o.a.string,nextLinkClassName:o.a.string,disabledClassName:o.a.string,breakClassName:o.a.string,breakLinkClassName:o.a.string,extraAriaContext:o.a.string,ariaLabelBuilder:o.a.func,eventListener:o.a.string}),k(P,"defaultProps",{pageCount:10,pageRangeDisplayed:2,marginPagesDisplayed:3,activeClassName:"selected",previousLabel:"Previous",previousClassName:"previous",previousAriaLabel:"Previous page",nextLabel:"Next",nextClassName:"next",nextAriaLabel:"Next page",breakLabel:"...",disabledClassName:"disabled",disableInitialCallback:!1,eventListener:"onClick"}),function(){var e="undefined"!=typeof reactHotLoaderGlobal?reactHotLoaderGlobal.default:void 0;if(e){var t=void 0!==a?a:exports;if(t)if("function"!=typeof t){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=void 0;try{n=t[r]}catch(e){continue}e.register(n,r,"/home/adele/workspace/react-paginate/react_components/PaginationBoxView.js")}}else e.register(t,"module.exports","/home/adele/workspace/react-paginate/react_components/PaginationBoxView.js")}}();a.default=P;!function(){var e="undefined"!=typeof reactHotLoaderGlobal?reactHotLoaderGlobal.default:void 0;if(e){var t=void 0!==a?a:exports;if(t)if("function"!=typeof t){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=void 0;try{n=t[r]}catch(e){continue}e.register(n,r,"/home/adele/workspace/react-paginate/react_components/index.js")}}else e.register(t,"module.exports","/home/adele/workspace/react-paginate/react_components/index.js")}}()}])}));
 | 
						|
//# sourceMappingURL=react-paginate.js.map
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 43134:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const ANY = Symbol('SemVer ANY')
 | 
						|
// hoisted class for cyclic dependency
 | 
						|
class Comparator {
 | 
						|
  static get ANY () {
 | 
						|
    return ANY
 | 
						|
  }
 | 
						|
 | 
						|
  constructor (comp, options) {
 | 
						|
    options = parseOptions(options)
 | 
						|
 | 
						|
    if (comp instanceof Comparator) {
 | 
						|
      if (comp.loose === !!options.loose) {
 | 
						|
        return comp
 | 
						|
      } else {
 | 
						|
        comp = comp.value
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    comp = comp.trim().split(/\s+/).join(' ')
 | 
						|
    debug('comparator', comp, options)
 | 
						|
    this.options = options
 | 
						|
    this.loose = !!options.loose
 | 
						|
    this.parse(comp)
 | 
						|
 | 
						|
    if (this.semver === ANY) {
 | 
						|
      this.value = ''
 | 
						|
    } else {
 | 
						|
      this.value = this.operator + this.semver.version
 | 
						|
    }
 | 
						|
 | 
						|
    debug('comp', this)
 | 
						|
  }
 | 
						|
 | 
						|
  parse (comp) {
 | 
						|
    const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
 | 
						|
    const m = comp.match(r)
 | 
						|
 | 
						|
    if (!m) {
 | 
						|
      throw new TypeError(`Invalid comparator: ${comp}`)
 | 
						|
    }
 | 
						|
 | 
						|
    this.operator = m[1] !== undefined ? m[1] : ''
 | 
						|
    if (this.operator === '=') {
 | 
						|
      this.operator = ''
 | 
						|
    }
 | 
						|
 | 
						|
    // if it literally is just '>' or '' then allow anything.
 | 
						|
    if (!m[2]) {
 | 
						|
      this.semver = ANY
 | 
						|
    } else {
 | 
						|
      this.semver = new SemVer(m[2], this.options.loose)
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  toString () {
 | 
						|
    return this.value
 | 
						|
  }
 | 
						|
 | 
						|
  test (version) {
 | 
						|
    debug('Comparator.test', version, this.options.loose)
 | 
						|
 | 
						|
    if (this.semver === ANY || version === ANY) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
 | 
						|
    if (typeof version === 'string') {
 | 
						|
      try {
 | 
						|
        version = new SemVer(version, this.options)
 | 
						|
      } catch (er) {
 | 
						|
        return false
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    return cmp(version, this.operator, this.semver, this.options)
 | 
						|
  }
 | 
						|
 | 
						|
  intersects (comp, options) {
 | 
						|
    if (!(comp instanceof Comparator)) {
 | 
						|
      throw new TypeError('a Comparator is required')
 | 
						|
    }
 | 
						|
 | 
						|
    if (this.operator === '') {
 | 
						|
      if (this.value === '') {
 | 
						|
        return true
 | 
						|
      }
 | 
						|
      return new Range(comp.value, options).test(this.value)
 | 
						|
    } else if (comp.operator === '') {
 | 
						|
      if (comp.value === '') {
 | 
						|
        return true
 | 
						|
      }
 | 
						|
      return new Range(this.value, options).test(comp.semver)
 | 
						|
    }
 | 
						|
 | 
						|
    options = parseOptions(options)
 | 
						|
 | 
						|
    // Special cases where nothing can possibly be lower
 | 
						|
    if (options.includePrerelease &&
 | 
						|
      (this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
    if (!options.includePrerelease &&
 | 
						|
      (this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
 | 
						|
    // Same direction increasing (> or >=)
 | 
						|
    if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
    // Same direction decreasing (< or <=)
 | 
						|
    if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
    // same SemVer and both sides are inclusive (<= or >=)
 | 
						|
    if (
 | 
						|
      (this.semver.version === comp.semver.version) &&
 | 
						|
      this.operator.includes('=') && comp.operator.includes('=')) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
    // opposite directions less than
 | 
						|
    if (cmp(this.semver, '<', comp.semver, options) &&
 | 
						|
      this.operator.startsWith('>') && comp.operator.startsWith('<')) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
    // opposite directions greater than
 | 
						|
    if (cmp(this.semver, '>', comp.semver, options) &&
 | 
						|
      this.operator.startsWith('<') && comp.operator.startsWith('>')) {
 | 
						|
      return true
 | 
						|
    }
 | 
						|
    return false
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = Comparator
 | 
						|
 | 
						|
const parseOptions = __webpack_require__(48716)
 | 
						|
const { safeRe: re, t } = __webpack_require__(19022)
 | 
						|
const cmp = __webpack_require__(35452)
 | 
						|
const debug = __webpack_require__(46830)
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 87374:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SPACE_CHARACTERS = /\s+/g
 | 
						|
 | 
						|
// hoisted class for cyclic dependency
 | 
						|
class Range {
 | 
						|
  constructor (range, options) {
 | 
						|
    options = parseOptions(options)
 | 
						|
 | 
						|
    if (range instanceof Range) {
 | 
						|
      if (
 | 
						|
        range.loose === !!options.loose &&
 | 
						|
        range.includePrerelease === !!options.includePrerelease
 | 
						|
      ) {
 | 
						|
        return range
 | 
						|
      } else {
 | 
						|
        return new Range(range.raw, options)
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    if (range instanceof Comparator) {
 | 
						|
      // just put it in the set and return
 | 
						|
      this.raw = range.value
 | 
						|
      this.set = [[range]]
 | 
						|
      this.formatted = undefined
 | 
						|
      return this
 | 
						|
    }
 | 
						|
 | 
						|
    this.options = options
 | 
						|
    this.loose = !!options.loose
 | 
						|
    this.includePrerelease = !!options.includePrerelease
 | 
						|
 | 
						|
    // First reduce all whitespace as much as possible so we do not have to rely
 | 
						|
    // on potentially slow regexes like \s*. This is then stored and used for
 | 
						|
    // future error messages as well.
 | 
						|
    this.raw = range.trim().replace(SPACE_CHARACTERS, ' ')
 | 
						|
 | 
						|
    // First, split on ||
 | 
						|
    this.set = this.raw
 | 
						|
      .split('||')
 | 
						|
      // map the range to a 2d array of comparators
 | 
						|
      .map(r => this.parseRange(r.trim()))
 | 
						|
      // throw out any comparator lists that are empty
 | 
						|
      // this generally means that it was not a valid range, which is allowed
 | 
						|
      // in loose mode, but will still throw if the WHOLE range is invalid.
 | 
						|
      .filter(c => c.length)
 | 
						|
 | 
						|
    if (!this.set.length) {
 | 
						|
      throw new TypeError(`Invalid SemVer Range: ${this.raw}`)
 | 
						|
    }
 | 
						|
 | 
						|
    // if we have any that are not the null set, throw out null sets.
 | 
						|
    if (this.set.length > 1) {
 | 
						|
      // keep the first one, in case they're all null sets
 | 
						|
      const first = this.set[0]
 | 
						|
      this.set = this.set.filter(c => !isNullSet(c[0]))
 | 
						|
      if (this.set.length === 0) {
 | 
						|
        this.set = [first]
 | 
						|
      } else if (this.set.length > 1) {
 | 
						|
        // if we have any that are *, then the range is just *
 | 
						|
        for (const c of this.set) {
 | 
						|
          if (c.length === 1 && isAny(c[0])) {
 | 
						|
            this.set = [c]
 | 
						|
            break
 | 
						|
          }
 | 
						|
        }
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    this.formatted = undefined
 | 
						|
  }
 | 
						|
 | 
						|
  get range () {
 | 
						|
    if (this.formatted === undefined) {
 | 
						|
      this.formatted = ''
 | 
						|
      for (let i = 0; i < this.set.length; i++) {
 | 
						|
        if (i > 0) {
 | 
						|
          this.formatted += '||'
 | 
						|
        }
 | 
						|
        const comps = this.set[i]
 | 
						|
        for (let k = 0; k < comps.length; k++) {
 | 
						|
          if (k > 0) {
 | 
						|
            this.formatted += ' '
 | 
						|
          }
 | 
						|
          this.formatted += comps[k].toString().trim()
 | 
						|
        }
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return this.formatted
 | 
						|
  }
 | 
						|
 | 
						|
  format () {
 | 
						|
    return this.range
 | 
						|
  }
 | 
						|
 | 
						|
  toString () {
 | 
						|
    return this.range
 | 
						|
  }
 | 
						|
 | 
						|
  parseRange (range) {
 | 
						|
    // memoize range parsing for performance.
 | 
						|
    // this is a very hot path, and fully deterministic.
 | 
						|
    const memoOpts =
 | 
						|
      (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |
 | 
						|
      (this.options.loose && FLAG_LOOSE)
 | 
						|
    const memoKey = memoOpts + ':' + range
 | 
						|
    const cached = cache.get(memoKey)
 | 
						|
    if (cached) {
 | 
						|
      return cached
 | 
						|
    }
 | 
						|
 | 
						|
    const loose = this.options.loose
 | 
						|
    // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
 | 
						|
    const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]
 | 
						|
    range = range.replace(hr, hyphenReplace(this.options.includePrerelease))
 | 
						|
    debug('hyphen replace', range)
 | 
						|
 | 
						|
    // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
 | 
						|
    range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)
 | 
						|
    debug('comparator trim', range)
 | 
						|
 | 
						|
    // `~ 1.2.3` => `~1.2.3`
 | 
						|
    range = range.replace(re[t.TILDETRIM], tildeTrimReplace)
 | 
						|
    debug('tilde trim', range)
 | 
						|
 | 
						|
    // `^ 1.2.3` => `^1.2.3`
 | 
						|
    range = range.replace(re[t.CARETTRIM], caretTrimReplace)
 | 
						|
    debug('caret trim', range)
 | 
						|
 | 
						|
    // At this point, the range is completely trimmed and
 | 
						|
    // ready to be split into comparators.
 | 
						|
 | 
						|
    let rangeList = range
 | 
						|
      .split(' ')
 | 
						|
      .map(comp => parseComparator(comp, this.options))
 | 
						|
      .join(' ')
 | 
						|
      .split(/\s+/)
 | 
						|
      // >=0.0.0 is equivalent to *
 | 
						|
      .map(comp => replaceGTE0(comp, this.options))
 | 
						|
 | 
						|
    if (loose) {
 | 
						|
      // in loose mode, throw out any that are not valid comparators
 | 
						|
      rangeList = rangeList.filter(comp => {
 | 
						|
        debug('loose invalid filter', comp, this.options)
 | 
						|
        return !!comp.match(re[t.COMPARATORLOOSE])
 | 
						|
      })
 | 
						|
    }
 | 
						|
    debug('range list', rangeList)
 | 
						|
 | 
						|
    // if any comparators are the null set, then replace with JUST null set
 | 
						|
    // if more than one comparator, remove any * comparators
 | 
						|
    // also, don't include the same comparator more than once
 | 
						|
    const rangeMap = new Map()
 | 
						|
    const comparators = rangeList.map(comp => new Comparator(comp, this.options))
 | 
						|
    for (const comp of comparators) {
 | 
						|
      if (isNullSet(comp)) {
 | 
						|
        return [comp]
 | 
						|
      }
 | 
						|
      rangeMap.set(comp.value, comp)
 | 
						|
    }
 | 
						|
    if (rangeMap.size > 1 && rangeMap.has('')) {
 | 
						|
      rangeMap.delete('')
 | 
						|
    }
 | 
						|
 | 
						|
    const result = [...rangeMap.values()]
 | 
						|
    cache.set(memoKey, result)
 | 
						|
    return result
 | 
						|
  }
 | 
						|
 | 
						|
  intersects (range, options) {
 | 
						|
    if (!(range instanceof Range)) {
 | 
						|
      throw new TypeError('a Range is required')
 | 
						|
    }
 | 
						|
 | 
						|
    return this.set.some((thisComparators) => {
 | 
						|
      return (
 | 
						|
        isSatisfiable(thisComparators, options) &&
 | 
						|
        range.set.some((rangeComparators) => {
 | 
						|
          return (
 | 
						|
            isSatisfiable(rangeComparators, options) &&
 | 
						|
            thisComparators.every((thisComparator) => {
 | 
						|
              return rangeComparators.every((rangeComparator) => {
 | 
						|
                return thisComparator.intersects(rangeComparator, options)
 | 
						|
              })
 | 
						|
            })
 | 
						|
          )
 | 
						|
        })
 | 
						|
      )
 | 
						|
    })
 | 
						|
  }
 | 
						|
 | 
						|
  // if ANY of the sets match ALL of its comparators, then pass
 | 
						|
  test (version) {
 | 
						|
    if (!version) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
 | 
						|
    if (typeof version === 'string') {
 | 
						|
      try {
 | 
						|
        version = new SemVer(version, this.options)
 | 
						|
      } catch (er) {
 | 
						|
        return false
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    for (let i = 0; i < this.set.length; i++) {
 | 
						|
      if (testSet(this.set[i], version, this.options)) {
 | 
						|
        return true
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return false
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = Range
 | 
						|
 | 
						|
const LRU = __webpack_require__(40203)
 | 
						|
const cache = new LRU()
 | 
						|
 | 
						|
const parseOptions = __webpack_require__(48716)
 | 
						|
const Comparator = __webpack_require__(43134)
 | 
						|
const debug = __webpack_require__(46830)
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const {
 | 
						|
  safeRe: re,
 | 
						|
  t,
 | 
						|
  comparatorTrimReplace,
 | 
						|
  tildeTrimReplace,
 | 
						|
  caretTrimReplace,
 | 
						|
} = __webpack_require__(19022)
 | 
						|
const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __webpack_require__(50039)
 | 
						|
 | 
						|
const isNullSet = c => c.value === '<0.0.0-0'
 | 
						|
const isAny = c => c.value === ''
 | 
						|
 | 
						|
// take a set of comparators and determine whether there
 | 
						|
// exists a version which can satisfy it
 | 
						|
const isSatisfiable = (comparators, options) => {
 | 
						|
  let result = true
 | 
						|
  const remainingComparators = comparators.slice()
 | 
						|
  let testComparator = remainingComparators.pop()
 | 
						|
 | 
						|
  while (result && remainingComparators.length) {
 | 
						|
    result = remainingComparators.every((otherComparator) => {
 | 
						|
      return testComparator.intersects(otherComparator, options)
 | 
						|
    })
 | 
						|
 | 
						|
    testComparator = remainingComparators.pop()
 | 
						|
  }
 | 
						|
 | 
						|
  return result
 | 
						|
}
 | 
						|
 | 
						|
// comprised of xranges, tildes, stars, and gtlt's at this point.
 | 
						|
// already replaced the hyphen ranges
 | 
						|
// turn into a set of JUST comparators.
 | 
						|
const parseComparator = (comp, options) => {
 | 
						|
  debug('comp', comp, options)
 | 
						|
  comp = replaceCarets(comp, options)
 | 
						|
  debug('caret', comp)
 | 
						|
  comp = replaceTildes(comp, options)
 | 
						|
  debug('tildes', comp)
 | 
						|
  comp = replaceXRanges(comp, options)
 | 
						|
  debug('xrange', comp)
 | 
						|
  comp = replaceStars(comp, options)
 | 
						|
  debug('stars', comp)
 | 
						|
  return comp
 | 
						|
}
 | 
						|
 | 
						|
const isX = id => !id || id.toLowerCase() === 'x' || id === '*'
 | 
						|
 | 
						|
// ~, ~> --> * (any, kinda silly)
 | 
						|
// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0
 | 
						|
// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0
 | 
						|
// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0
 | 
						|
// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
 | 
						|
// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
 | 
						|
// ~0.0.1 --> >=0.0.1 <0.1.0-0
 | 
						|
const replaceTildes = (comp, options) => {
 | 
						|
  return comp
 | 
						|
    .trim()
 | 
						|
    .split(/\s+/)
 | 
						|
    .map((c) => replaceTilde(c, options))
 | 
						|
    .join(' ')
 | 
						|
}
 | 
						|
 | 
						|
const replaceTilde = (comp, options) => {
 | 
						|
  const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
 | 
						|
  return comp.replace(r, (_, M, m, p, pr) => {
 | 
						|
    debug('tilde', comp, _, M, m, p, pr)
 | 
						|
    let ret
 | 
						|
 | 
						|
    if (isX(M)) {
 | 
						|
      ret = ''
 | 
						|
    } else if (isX(m)) {
 | 
						|
      ret = `>=${M}.0.0 <${+M + 1}.0.0-0`
 | 
						|
    } else if (isX(p)) {
 | 
						|
      // ~1.2 == >=1.2.0 <1.3.0-0
 | 
						|
      ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`
 | 
						|
    } else if (pr) {
 | 
						|
      debug('replaceTilde pr', pr)
 | 
						|
      ret = `>=${M}.${m}.${p}-${pr
 | 
						|
      } <${M}.${+m + 1}.0-0`
 | 
						|
    } else {
 | 
						|
      // ~1.2.3 == >=1.2.3 <1.3.0-0
 | 
						|
      ret = `>=${M}.${m}.${p
 | 
						|
      } <${M}.${+m + 1}.0-0`
 | 
						|
    }
 | 
						|
 | 
						|
    debug('tilde return', ret)
 | 
						|
    return ret
 | 
						|
  })
 | 
						|
}
 | 
						|
 | 
						|
// ^ --> * (any, kinda silly)
 | 
						|
// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0
 | 
						|
// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0
 | 
						|
// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0
 | 
						|
// ^1.2.3 --> >=1.2.3 <2.0.0-0
 | 
						|
// ^1.2.0 --> >=1.2.0 <2.0.0-0
 | 
						|
// ^0.0.1 --> >=0.0.1 <0.0.2-0
 | 
						|
// ^0.1.0 --> >=0.1.0 <0.2.0-0
 | 
						|
const replaceCarets = (comp, options) => {
 | 
						|
  return comp
 | 
						|
    .trim()
 | 
						|
    .split(/\s+/)
 | 
						|
    .map((c) => replaceCaret(c, options))
 | 
						|
    .join(' ')
 | 
						|
}
 | 
						|
 | 
						|
const replaceCaret = (comp, options) => {
 | 
						|
  debug('caret', comp, options)
 | 
						|
  const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]
 | 
						|
  const z = options.includePrerelease ? '-0' : ''
 | 
						|
  return comp.replace(r, (_, M, m, p, pr) => {
 | 
						|
    debug('caret', comp, _, M, m, p, pr)
 | 
						|
    let ret
 | 
						|
 | 
						|
    if (isX(M)) {
 | 
						|
      ret = ''
 | 
						|
    } else if (isX(m)) {
 | 
						|
      ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`
 | 
						|
    } else if (isX(p)) {
 | 
						|
      if (M === '0') {
 | 
						|
        ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`
 | 
						|
      } else {
 | 
						|
        ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`
 | 
						|
      }
 | 
						|
    } else if (pr) {
 | 
						|
      debug('replaceCaret pr', pr)
 | 
						|
      if (M === '0') {
 | 
						|
        if (m === '0') {
 | 
						|
          ret = `>=${M}.${m}.${p}-${pr
 | 
						|
          } <${M}.${m}.${+p + 1}-0`
 | 
						|
        } else {
 | 
						|
          ret = `>=${M}.${m}.${p}-${pr
 | 
						|
          } <${M}.${+m + 1}.0-0`
 | 
						|
        }
 | 
						|
      } else {
 | 
						|
        ret = `>=${M}.${m}.${p}-${pr
 | 
						|
        } <${+M + 1}.0.0-0`
 | 
						|
      }
 | 
						|
    } else {
 | 
						|
      debug('no pr')
 | 
						|
      if (M === '0') {
 | 
						|
        if (m === '0') {
 | 
						|
          ret = `>=${M}.${m}.${p
 | 
						|
          }${z} <${M}.${m}.${+p + 1}-0`
 | 
						|
        } else {
 | 
						|
          ret = `>=${M}.${m}.${p
 | 
						|
          }${z} <${M}.${+m + 1}.0-0`
 | 
						|
        }
 | 
						|
      } else {
 | 
						|
        ret = `>=${M}.${m}.${p
 | 
						|
        } <${+M + 1}.0.0-0`
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    debug('caret return', ret)
 | 
						|
    return ret
 | 
						|
  })
 | 
						|
}
 | 
						|
 | 
						|
const replaceXRanges = (comp, options) => {
 | 
						|
  debug('replaceXRanges', comp, options)
 | 
						|
  return comp
 | 
						|
    .split(/\s+/)
 | 
						|
    .map((c) => replaceXRange(c, options))
 | 
						|
    .join(' ')
 | 
						|
}
 | 
						|
 | 
						|
const replaceXRange = (comp, options) => {
 | 
						|
  comp = comp.trim()
 | 
						|
  const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]
 | 
						|
  return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
 | 
						|
    debug('xRange', comp, ret, gtlt, M, m, p, pr)
 | 
						|
    const xM = isX(M)
 | 
						|
    const xm = xM || isX(m)
 | 
						|
    const xp = xm || isX(p)
 | 
						|
    const anyX = xp
 | 
						|
 | 
						|
    if (gtlt === '=' && anyX) {
 | 
						|
      gtlt = ''
 | 
						|
    }
 | 
						|
 | 
						|
    // if we're including prereleases in the match, then we need
 | 
						|
    // to fix this to -0, the lowest possible prerelease value
 | 
						|
    pr = options.includePrerelease ? '-0' : ''
 | 
						|
 | 
						|
    if (xM) {
 | 
						|
      if (gtlt === '>' || gtlt === '<') {
 | 
						|
        // nothing is allowed
 | 
						|
        ret = '<0.0.0-0'
 | 
						|
      } else {
 | 
						|
        // nothing is forbidden
 | 
						|
        ret = '*'
 | 
						|
      }
 | 
						|
    } else if (gtlt && anyX) {
 | 
						|
      // we know patch is an x, because we have any x at all.
 | 
						|
      // replace X with 0
 | 
						|
      if (xm) {
 | 
						|
        m = 0
 | 
						|
      }
 | 
						|
      p = 0
 | 
						|
 | 
						|
      if (gtlt === '>') {
 | 
						|
        // >1 => >=2.0.0
 | 
						|
        // >1.2 => >=1.3.0
 | 
						|
        gtlt = '>='
 | 
						|
        if (xm) {
 | 
						|
          M = +M + 1
 | 
						|
          m = 0
 | 
						|
          p = 0
 | 
						|
        } else {
 | 
						|
          m = +m + 1
 | 
						|
          p = 0
 | 
						|
        }
 | 
						|
      } else if (gtlt === '<=') {
 | 
						|
        // <=0.7.x is actually <0.8.0, since any 0.7.x should
 | 
						|
        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
 | 
						|
        gtlt = '<'
 | 
						|
        if (xm) {
 | 
						|
          M = +M + 1
 | 
						|
        } else {
 | 
						|
          m = +m + 1
 | 
						|
        }
 | 
						|
      }
 | 
						|
 | 
						|
      if (gtlt === '<') {
 | 
						|
        pr = '-0'
 | 
						|
      }
 | 
						|
 | 
						|
      ret = `${gtlt + M}.${m}.${p}${pr}`
 | 
						|
    } else if (xm) {
 | 
						|
      ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`
 | 
						|
    } else if (xp) {
 | 
						|
      ret = `>=${M}.${m}.0${pr
 | 
						|
      } <${M}.${+m + 1}.0-0`
 | 
						|
    }
 | 
						|
 | 
						|
    debug('xRange return', ret)
 | 
						|
 | 
						|
    return ret
 | 
						|
  })
 | 
						|
}
 | 
						|
 | 
						|
// Because * is AND-ed with everything else in the comparator,
 | 
						|
// and '' means "any version", just remove the *s entirely.
 | 
						|
const replaceStars = (comp, options) => {
 | 
						|
  debug('replaceStars', comp, options)
 | 
						|
  // Looseness is ignored here.  star is always as loose as it gets!
 | 
						|
  return comp
 | 
						|
    .trim()
 | 
						|
    .replace(re[t.STAR], '')
 | 
						|
}
 | 
						|
 | 
						|
const replaceGTE0 = (comp, options) => {
 | 
						|
  debug('replaceGTE0', comp, options)
 | 
						|
  return comp
 | 
						|
    .trim()
 | 
						|
    .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')
 | 
						|
}
 | 
						|
 | 
						|
// This function is passed to string.replace(re[t.HYPHENRANGE])
 | 
						|
// M, m, patch, prerelease, build
 | 
						|
// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
 | 
						|
// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do
 | 
						|
// 1.2 - 3.4 => >=1.2.0 <3.5.0-0
 | 
						|
// TODO build?
 | 
						|
const hyphenReplace = incPr => ($0,
 | 
						|
  from, fM, fm, fp, fpr, fb,
 | 
						|
  to, tM, tm, tp, tpr) => {
 | 
						|
  if (isX(fM)) {
 | 
						|
    from = ''
 | 
						|
  } else if (isX(fm)) {
 | 
						|
    from = `>=${fM}.0.0${incPr ? '-0' : ''}`
 | 
						|
  } else if (isX(fp)) {
 | 
						|
    from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`
 | 
						|
  } else if (fpr) {
 | 
						|
    from = `>=${from}`
 | 
						|
  } else {
 | 
						|
    from = `>=${from}${incPr ? '-0' : ''}`
 | 
						|
  }
 | 
						|
 | 
						|
  if (isX(tM)) {
 | 
						|
    to = ''
 | 
						|
  } else if (isX(tm)) {
 | 
						|
    to = `<${+tM + 1}.0.0-0`
 | 
						|
  } else if (isX(tp)) {
 | 
						|
    to = `<${tM}.${+tm + 1}.0-0`
 | 
						|
  } else if (tpr) {
 | 
						|
    to = `<=${tM}.${tm}.${tp}-${tpr}`
 | 
						|
  } else if (incPr) {
 | 
						|
    to = `<${tM}.${tm}.${+tp + 1}-0`
 | 
						|
  } else {
 | 
						|
    to = `<=${to}`
 | 
						|
  }
 | 
						|
 | 
						|
  return `${from} ${to}`.trim()
 | 
						|
}
 | 
						|
 | 
						|
const testSet = (set, version, options) => {
 | 
						|
  for (let i = 0; i < set.length; i++) {
 | 
						|
    if (!set[i].test(version)) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  if (version.prerelease.length && !options.includePrerelease) {
 | 
						|
    // Find the set of versions that are allowed to have prereleases
 | 
						|
    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
 | 
						|
    // That should allow `1.2.3-pr.2` to pass.
 | 
						|
    // However, `1.2.4-alpha.notready` should NOT be allowed,
 | 
						|
    // even though it's within the range set by the comparators.
 | 
						|
    for (let i = 0; i < set.length; i++) {
 | 
						|
      debug(set[i].semver)
 | 
						|
      if (set[i].semver === Comparator.ANY) {
 | 
						|
        continue
 | 
						|
      }
 | 
						|
 | 
						|
      if (set[i].semver.prerelease.length > 0) {
 | 
						|
        const allowed = set[i].semver
 | 
						|
        if (allowed.major === version.major &&
 | 
						|
            allowed.minor === version.minor &&
 | 
						|
            allowed.patch === version.patch) {
 | 
						|
          return true
 | 
						|
        }
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    // Version has a -pre, but it's not one of the ones we like.
 | 
						|
    return false
 | 
						|
  }
 | 
						|
 | 
						|
  return true
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 89510:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const debug = __webpack_require__(46830)
 | 
						|
const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(50039)
 | 
						|
const { safeRe: re, t } = __webpack_require__(19022)
 | 
						|
 | 
						|
const parseOptions = __webpack_require__(48716)
 | 
						|
const { compareIdentifiers } = __webpack_require__(8822)
 | 
						|
class SemVer {
 | 
						|
  constructor (version, options) {
 | 
						|
    options = parseOptions(options)
 | 
						|
 | 
						|
    if (version instanceof SemVer) {
 | 
						|
      if (version.loose === !!options.loose &&
 | 
						|
          version.includePrerelease === !!options.includePrerelease) {
 | 
						|
        return version
 | 
						|
      } else {
 | 
						|
        version = version.version
 | 
						|
      }
 | 
						|
    } else if (typeof version !== 'string') {
 | 
						|
      throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version}".`)
 | 
						|
    }
 | 
						|
 | 
						|
    if (version.length > MAX_LENGTH) {
 | 
						|
      throw new TypeError(
 | 
						|
        `version is longer than ${MAX_LENGTH} characters`
 | 
						|
      )
 | 
						|
    }
 | 
						|
 | 
						|
    debug('SemVer', version, options)
 | 
						|
    this.options = options
 | 
						|
    this.loose = !!options.loose
 | 
						|
    // this isn't actually relevant for versions, but keep it so that we
 | 
						|
    // don't run into trouble passing this.options around.
 | 
						|
    this.includePrerelease = !!options.includePrerelease
 | 
						|
 | 
						|
    const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])
 | 
						|
 | 
						|
    if (!m) {
 | 
						|
      throw new TypeError(`Invalid Version: ${version}`)
 | 
						|
    }
 | 
						|
 | 
						|
    this.raw = version
 | 
						|
 | 
						|
    // these are actually numbers
 | 
						|
    this.major = +m[1]
 | 
						|
    this.minor = +m[2]
 | 
						|
    this.patch = +m[3]
 | 
						|
 | 
						|
    if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
 | 
						|
      throw new TypeError('Invalid major version')
 | 
						|
    }
 | 
						|
 | 
						|
    if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
 | 
						|
      throw new TypeError('Invalid minor version')
 | 
						|
    }
 | 
						|
 | 
						|
    if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
 | 
						|
      throw new TypeError('Invalid patch version')
 | 
						|
    }
 | 
						|
 | 
						|
    // numberify any prerelease numeric ids
 | 
						|
    if (!m[4]) {
 | 
						|
      this.prerelease = []
 | 
						|
    } else {
 | 
						|
      this.prerelease = m[4].split('.').map((id) => {
 | 
						|
        if (/^[0-9]+$/.test(id)) {
 | 
						|
          const num = +id
 | 
						|
          if (num >= 0 && num < MAX_SAFE_INTEGER) {
 | 
						|
            return num
 | 
						|
          }
 | 
						|
        }
 | 
						|
        return id
 | 
						|
      })
 | 
						|
    }
 | 
						|
 | 
						|
    this.build = m[5] ? m[5].split('.') : []
 | 
						|
    this.format()
 | 
						|
  }
 | 
						|
 | 
						|
  format () {
 | 
						|
    this.version = `${this.major}.${this.minor}.${this.patch}`
 | 
						|
    if (this.prerelease.length) {
 | 
						|
      this.version += `-${this.prerelease.join('.')}`
 | 
						|
    }
 | 
						|
    return this.version
 | 
						|
  }
 | 
						|
 | 
						|
  toString () {
 | 
						|
    return this.version
 | 
						|
  }
 | 
						|
 | 
						|
  compare (other) {
 | 
						|
    debug('SemVer.compare', this.version, this.options, other)
 | 
						|
    if (!(other instanceof SemVer)) {
 | 
						|
      if (typeof other === 'string' && other === this.version) {
 | 
						|
        return 0
 | 
						|
      }
 | 
						|
      other = new SemVer(other, this.options)
 | 
						|
    }
 | 
						|
 | 
						|
    if (other.version === this.version) {
 | 
						|
      return 0
 | 
						|
    }
 | 
						|
 | 
						|
    return this.compareMain(other) || this.comparePre(other)
 | 
						|
  }
 | 
						|
 | 
						|
  compareMain (other) {
 | 
						|
    if (!(other instanceof SemVer)) {
 | 
						|
      other = new SemVer(other, this.options)
 | 
						|
    }
 | 
						|
 | 
						|
    return (
 | 
						|
      compareIdentifiers(this.major, other.major) ||
 | 
						|
      compareIdentifiers(this.minor, other.minor) ||
 | 
						|
      compareIdentifiers(this.patch, other.patch)
 | 
						|
    )
 | 
						|
  }
 | 
						|
 | 
						|
  comparePre (other) {
 | 
						|
    if (!(other instanceof SemVer)) {
 | 
						|
      other = new SemVer(other, this.options)
 | 
						|
    }
 | 
						|
 | 
						|
    // NOT having a prerelease is > having one
 | 
						|
    if (this.prerelease.length && !other.prerelease.length) {
 | 
						|
      return -1
 | 
						|
    } else if (!this.prerelease.length && other.prerelease.length) {
 | 
						|
      return 1
 | 
						|
    } else if (!this.prerelease.length && !other.prerelease.length) {
 | 
						|
      return 0
 | 
						|
    }
 | 
						|
 | 
						|
    let i = 0
 | 
						|
    do {
 | 
						|
      const a = this.prerelease[i]
 | 
						|
      const b = other.prerelease[i]
 | 
						|
      debug('prerelease compare', i, a, b)
 | 
						|
      if (a === undefined && b === undefined) {
 | 
						|
        return 0
 | 
						|
      } else if (b === undefined) {
 | 
						|
        return 1
 | 
						|
      } else if (a === undefined) {
 | 
						|
        return -1
 | 
						|
      } else if (a === b) {
 | 
						|
        continue
 | 
						|
      } else {
 | 
						|
        return compareIdentifiers(a, b)
 | 
						|
      }
 | 
						|
    } while (++i)
 | 
						|
  }
 | 
						|
 | 
						|
  compareBuild (other) {
 | 
						|
    if (!(other instanceof SemVer)) {
 | 
						|
      other = new SemVer(other, this.options)
 | 
						|
    }
 | 
						|
 | 
						|
    let i = 0
 | 
						|
    do {
 | 
						|
      const a = this.build[i]
 | 
						|
      const b = other.build[i]
 | 
						|
      debug('build compare', i, a, b)
 | 
						|
      if (a === undefined && b === undefined) {
 | 
						|
        return 0
 | 
						|
      } else if (b === undefined) {
 | 
						|
        return 1
 | 
						|
      } else if (a === undefined) {
 | 
						|
        return -1
 | 
						|
      } else if (a === b) {
 | 
						|
        continue
 | 
						|
      } else {
 | 
						|
        return compareIdentifiers(a, b)
 | 
						|
      }
 | 
						|
    } while (++i)
 | 
						|
  }
 | 
						|
 | 
						|
  // preminor will bump the version up to the next minor release, and immediately
 | 
						|
  // down to pre-release. premajor and prepatch work the same way.
 | 
						|
  inc (release, identifier, identifierBase) {
 | 
						|
    switch (release) {
 | 
						|
      case 'premajor':
 | 
						|
        this.prerelease.length = 0
 | 
						|
        this.patch = 0
 | 
						|
        this.minor = 0
 | 
						|
        this.major++
 | 
						|
        this.inc('pre', identifier, identifierBase)
 | 
						|
        break
 | 
						|
      case 'preminor':
 | 
						|
        this.prerelease.length = 0
 | 
						|
        this.patch = 0
 | 
						|
        this.minor++
 | 
						|
        this.inc('pre', identifier, identifierBase)
 | 
						|
        break
 | 
						|
      case 'prepatch':
 | 
						|
        // If this is already a prerelease, it will bump to the next version
 | 
						|
        // drop any prereleases that might already exist, since they are not
 | 
						|
        // relevant at this point.
 | 
						|
        this.prerelease.length = 0
 | 
						|
        this.inc('patch', identifier, identifierBase)
 | 
						|
        this.inc('pre', identifier, identifierBase)
 | 
						|
        break
 | 
						|
      // If the input is a non-prerelease version, this acts the same as
 | 
						|
      // prepatch.
 | 
						|
      case 'prerelease':
 | 
						|
        if (this.prerelease.length === 0) {
 | 
						|
          this.inc('patch', identifier, identifierBase)
 | 
						|
        }
 | 
						|
        this.inc('pre', identifier, identifierBase)
 | 
						|
        break
 | 
						|
 | 
						|
      case 'major':
 | 
						|
        // If this is a pre-major version, bump up to the same major version.
 | 
						|
        // Otherwise increment major.
 | 
						|
        // 1.0.0-5 bumps to 1.0.0
 | 
						|
        // 1.1.0 bumps to 2.0.0
 | 
						|
        if (
 | 
						|
          this.minor !== 0 ||
 | 
						|
          this.patch !== 0 ||
 | 
						|
          this.prerelease.length === 0
 | 
						|
        ) {
 | 
						|
          this.major++
 | 
						|
        }
 | 
						|
        this.minor = 0
 | 
						|
        this.patch = 0
 | 
						|
        this.prerelease = []
 | 
						|
        break
 | 
						|
      case 'minor':
 | 
						|
        // If this is a pre-minor version, bump up to the same minor version.
 | 
						|
        // Otherwise increment minor.
 | 
						|
        // 1.2.0-5 bumps to 1.2.0
 | 
						|
        // 1.2.1 bumps to 1.3.0
 | 
						|
        if (this.patch !== 0 || this.prerelease.length === 0) {
 | 
						|
          this.minor++
 | 
						|
        }
 | 
						|
        this.patch = 0
 | 
						|
        this.prerelease = []
 | 
						|
        break
 | 
						|
      case 'patch':
 | 
						|
        // If this is not a pre-release version, it will increment the patch.
 | 
						|
        // If it is a pre-release it will bump up to the same patch version.
 | 
						|
        // 1.2.0-5 patches to 1.2.0
 | 
						|
        // 1.2.0 patches to 1.2.1
 | 
						|
        if (this.prerelease.length === 0) {
 | 
						|
          this.patch++
 | 
						|
        }
 | 
						|
        this.prerelease = []
 | 
						|
        break
 | 
						|
      // This probably shouldn't be used publicly.
 | 
						|
      // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
 | 
						|
      case 'pre': {
 | 
						|
        const base = Number(identifierBase) ? 1 : 0
 | 
						|
 | 
						|
        if (!identifier && identifierBase === false) {
 | 
						|
          throw new Error('invalid increment argument: identifier is empty')
 | 
						|
        }
 | 
						|
 | 
						|
        if (this.prerelease.length === 0) {
 | 
						|
          this.prerelease = [base]
 | 
						|
        } else {
 | 
						|
          let i = this.prerelease.length
 | 
						|
          while (--i >= 0) {
 | 
						|
            if (typeof this.prerelease[i] === 'number') {
 | 
						|
              this.prerelease[i]++
 | 
						|
              i = -2
 | 
						|
            }
 | 
						|
          }
 | 
						|
          if (i === -1) {
 | 
						|
            // didn't increment anything
 | 
						|
            if (identifier === this.prerelease.join('.') && identifierBase === false) {
 | 
						|
              throw new Error('invalid increment argument: identifier already exists')
 | 
						|
            }
 | 
						|
            this.prerelease.push(base)
 | 
						|
          }
 | 
						|
        }
 | 
						|
        if (identifier) {
 | 
						|
          // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
 | 
						|
          // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
 | 
						|
          let prerelease = [identifier, base]
 | 
						|
          if (identifierBase === false) {
 | 
						|
            prerelease = [identifier]
 | 
						|
          }
 | 
						|
          if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
 | 
						|
            if (isNaN(this.prerelease[1])) {
 | 
						|
              this.prerelease = prerelease
 | 
						|
            }
 | 
						|
          } else {
 | 
						|
            this.prerelease = prerelease
 | 
						|
          }
 | 
						|
        }
 | 
						|
        break
 | 
						|
      }
 | 
						|
      default:
 | 
						|
        throw new Error(`invalid increment argument: ${release}`)
 | 
						|
    }
 | 
						|
    this.raw = this.format()
 | 
						|
    if (this.build.length) {
 | 
						|
      this.raw += `+${this.build.join('.')}`
 | 
						|
    }
 | 
						|
    return this
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = SemVer
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 76457:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
const clean = (version, options) => {
 | 
						|
  const s = parse(version.trim().replace(/^[=v]+/, ''), options)
 | 
						|
  return s ? s.version : null
 | 
						|
}
 | 
						|
module.exports = clean
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 35452:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const eq = __webpack_require__(98565)
 | 
						|
const neq = __webpack_require__(23328)
 | 
						|
const gt = __webpack_require__(82260)
 | 
						|
const gte = __webpack_require__(86579)
 | 
						|
const lt = __webpack_require__(20290)
 | 
						|
const lte = __webpack_require__(5891)
 | 
						|
 | 
						|
const cmp = (a, op, b, loose) => {
 | 
						|
  switch (op) {
 | 
						|
    case '===':
 | 
						|
      if (typeof a === 'object') {
 | 
						|
        a = a.version
 | 
						|
      }
 | 
						|
      if (typeof b === 'object') {
 | 
						|
        b = b.version
 | 
						|
      }
 | 
						|
      return a === b
 | 
						|
 | 
						|
    case '!==':
 | 
						|
      if (typeof a === 'object') {
 | 
						|
        a = a.version
 | 
						|
      }
 | 
						|
      if (typeof b === 'object') {
 | 
						|
        b = b.version
 | 
						|
      }
 | 
						|
      return a !== b
 | 
						|
 | 
						|
    case '':
 | 
						|
    case '=':
 | 
						|
    case '==':
 | 
						|
      return eq(a, b, loose)
 | 
						|
 | 
						|
    case '!=':
 | 
						|
      return neq(a, b, loose)
 | 
						|
 | 
						|
    case '>':
 | 
						|
      return gt(a, b, loose)
 | 
						|
 | 
						|
    case '>=':
 | 
						|
      return gte(a, b, loose)
 | 
						|
 | 
						|
    case '<':
 | 
						|
      return lt(a, b, loose)
 | 
						|
 | 
						|
    case '<=':
 | 
						|
      return lte(a, b, loose)
 | 
						|
 | 
						|
    default:
 | 
						|
      throw new TypeError(`Invalid operator: ${op}`)
 | 
						|
  }
 | 
						|
}
 | 
						|
module.exports = cmp
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 99469:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
const { safeRe: re, t } = __webpack_require__(19022)
 | 
						|
 | 
						|
const coerce = (version, options) => {
 | 
						|
  if (version instanceof SemVer) {
 | 
						|
    return version
 | 
						|
  }
 | 
						|
 | 
						|
  if (typeof version === 'number') {
 | 
						|
    version = String(version)
 | 
						|
  }
 | 
						|
 | 
						|
  if (typeof version !== 'string') {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
 | 
						|
  options = options || {}
 | 
						|
 | 
						|
  let match = null
 | 
						|
  if (!options.rtl) {
 | 
						|
    match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE])
 | 
						|
  } else {
 | 
						|
    // Find the right-most coercible string that does not share
 | 
						|
    // a terminus with a more left-ward coercible string.
 | 
						|
    // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'
 | 
						|
    // With includePrerelease option set, '1.2.3.4-rc' wants to coerce '2.3.4-rc', not '2.3.4'
 | 
						|
    //
 | 
						|
    // Walk through the string checking with a /g regexp
 | 
						|
    // Manually set the index so as to pick up overlapping matches.
 | 
						|
    // Stop when we get a match that ends at the string end, since no
 | 
						|
    // coercible string can be more right-ward without the same terminus.
 | 
						|
    const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]
 | 
						|
    let next
 | 
						|
    while ((next = coerceRtlRegex.exec(version)) &&
 | 
						|
        (!match || match.index + match[0].length !== version.length)
 | 
						|
    ) {
 | 
						|
      if (!match ||
 | 
						|
            next.index + next[0].length !== match.index + match[0].length) {
 | 
						|
        match = next
 | 
						|
      }
 | 
						|
      coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length
 | 
						|
    }
 | 
						|
    // leave it in a clean state
 | 
						|
    coerceRtlRegex.lastIndex = -1
 | 
						|
  }
 | 
						|
 | 
						|
  if (match === null) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
 | 
						|
  const major = match[2]
 | 
						|
  const minor = match[3] || '0'
 | 
						|
  const patch = match[4] || '0'
 | 
						|
  const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ''
 | 
						|
  const build = options.includePrerelease && match[6] ? `+${match[6]}` : ''
 | 
						|
 | 
						|
  return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options)
 | 
						|
}
 | 
						|
module.exports = coerce
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 51868:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const compareBuild = (a, b, loose) => {
 | 
						|
  const versionA = new SemVer(a, loose)
 | 
						|
  const versionB = new SemVer(b, loose)
 | 
						|
  return versionA.compare(versionB) || versionA.compareBuild(versionB)
 | 
						|
}
 | 
						|
module.exports = compareBuild
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 5919:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const compareLoose = (a, b) => compare(a, b, true)
 | 
						|
module.exports = compareLoose
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 43992:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const compare = (a, b, loose) =>
 | 
						|
  new SemVer(a, loose).compare(new SemVer(b, loose))
 | 
						|
 | 
						|
module.exports = compare
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 41007:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
 | 
						|
const diff = (version1, version2) => {
 | 
						|
  const v1 = parse(version1, null, true)
 | 
						|
  const v2 = parse(version2, null, true)
 | 
						|
  const comparison = v1.compare(v2)
 | 
						|
 | 
						|
  if (comparison === 0) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
 | 
						|
  const v1Higher = comparison > 0
 | 
						|
  const highVersion = v1Higher ? v1 : v2
 | 
						|
  const lowVersion = v1Higher ? v2 : v1
 | 
						|
  const highHasPre = !!highVersion.prerelease.length
 | 
						|
  const lowHasPre = !!lowVersion.prerelease.length
 | 
						|
 | 
						|
  if (lowHasPre && !highHasPre) {
 | 
						|
    // Going from prerelease -> no prerelease requires some special casing
 | 
						|
 | 
						|
    // If the low version has only a major, then it will always be a major
 | 
						|
    // Some examples:
 | 
						|
    // 1.0.0-1 -> 1.0.0
 | 
						|
    // 1.0.0-1 -> 1.1.1
 | 
						|
    // 1.0.0-1 -> 2.0.0
 | 
						|
    if (!lowVersion.patch && !lowVersion.minor) {
 | 
						|
      return 'major'
 | 
						|
    }
 | 
						|
 | 
						|
    // Otherwise it can be determined by checking the high version
 | 
						|
 | 
						|
    if (highVersion.patch) {
 | 
						|
      // anything higher than a patch bump would result in the wrong version
 | 
						|
      return 'patch'
 | 
						|
    }
 | 
						|
 | 
						|
    if (highVersion.minor) {
 | 
						|
      // anything higher than a minor bump would result in the wrong version
 | 
						|
      return 'minor'
 | 
						|
    }
 | 
						|
 | 
						|
    // bumping major/minor/patch all have same result
 | 
						|
    return 'major'
 | 
						|
  }
 | 
						|
 | 
						|
  // add the `pre` prefix if we are going to a prerelease version
 | 
						|
  const prefix = highHasPre ? 'pre' : ''
 | 
						|
 | 
						|
  if (v1.major !== v2.major) {
 | 
						|
    return prefix + 'major'
 | 
						|
  }
 | 
						|
 | 
						|
  if (v1.minor !== v2.minor) {
 | 
						|
    return prefix + 'minor'
 | 
						|
  }
 | 
						|
 | 
						|
  if (v1.patch !== v2.patch) {
 | 
						|
    return prefix + 'patch'
 | 
						|
  }
 | 
						|
 | 
						|
  // high and low are preleases
 | 
						|
  return 'prerelease'
 | 
						|
}
 | 
						|
 | 
						|
module.exports = diff
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 98565:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const eq = (a, b, loose) => compare(a, b, loose) === 0
 | 
						|
module.exports = eq
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 82260:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const gt = (a, b, loose) => compare(a, b, loose) > 0
 | 
						|
module.exports = gt
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 86579:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const gte = (a, b, loose) => compare(a, b, loose) >= 0
 | 
						|
module.exports = gte
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 30515:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
 | 
						|
const inc = (version, release, options, identifier, identifierBase) => {
 | 
						|
  if (typeof (options) === 'string') {
 | 
						|
    identifierBase = identifier
 | 
						|
    identifier = options
 | 
						|
    options = undefined
 | 
						|
  }
 | 
						|
 | 
						|
  try {
 | 
						|
    return new SemVer(
 | 
						|
      version instanceof SemVer ? version.version : version,
 | 
						|
      options
 | 
						|
    ).inc(release, identifier, identifierBase).version
 | 
						|
  } catch (er) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
}
 | 
						|
module.exports = inc
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 20290:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const lt = (a, b, loose) => compare(a, b, loose) < 0
 | 
						|
module.exports = lt
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 5891:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const lte = (a, b, loose) => compare(a, b, loose) <= 0
 | 
						|
module.exports = lte
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 62611:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const major = (a, loose) => new SemVer(a, loose).major
 | 
						|
module.exports = major
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 76319:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const minor = (a, loose) => new SemVer(a, loose).minor
 | 
						|
module.exports = minor
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 23328:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const neq = (a, b, loose) => compare(a, b, loose) !== 0
 | 
						|
module.exports = neq
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 95692:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const parse = (version, options, throwErrors = false) => {
 | 
						|
  if (version instanceof SemVer) {
 | 
						|
    return version
 | 
						|
  }
 | 
						|
  try {
 | 
						|
    return new SemVer(version, options)
 | 
						|
  } catch (er) {
 | 
						|
    if (!throwErrors) {
 | 
						|
      return null
 | 
						|
    }
 | 
						|
    throw er
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = parse
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 7368:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const patch = (a, loose) => new SemVer(a, loose).patch
 | 
						|
module.exports = patch
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 97794:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
const prerelease = (version, options) => {
 | 
						|
  const parsed = parse(version, options)
 | 
						|
  return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
 | 
						|
}
 | 
						|
module.exports = prerelease
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 19114:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const rcompare = (a, b, loose) => compare(b, a, loose)
 | 
						|
module.exports = rcompare
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 3843:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compareBuild = __webpack_require__(51868)
 | 
						|
const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
 | 
						|
module.exports = rsort
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 99845:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const satisfies = (version, range, options) => {
 | 
						|
  try {
 | 
						|
    range = new Range(range, options)
 | 
						|
  } catch (er) {
 | 
						|
    return false
 | 
						|
  }
 | 
						|
  return range.test(version)
 | 
						|
}
 | 
						|
module.exports = satisfies
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 58753:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const compareBuild = __webpack_require__(51868)
 | 
						|
const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
 | 
						|
module.exports = sort
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 30398:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
const valid = (version, options) => {
 | 
						|
  const v = parse(version, options)
 | 
						|
  return v ? v.version : null
 | 
						|
}
 | 
						|
module.exports = valid
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 38873:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
// just pre-load all the stuff that index.js lazily exports
 | 
						|
const internalRe = __webpack_require__(19022)
 | 
						|
const constants = __webpack_require__(50039)
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const identifiers = __webpack_require__(8822)
 | 
						|
const parse = __webpack_require__(95692)
 | 
						|
const valid = __webpack_require__(30398)
 | 
						|
const clean = __webpack_require__(76457)
 | 
						|
const inc = __webpack_require__(30515)
 | 
						|
const diff = __webpack_require__(41007)
 | 
						|
const major = __webpack_require__(62611)
 | 
						|
const minor = __webpack_require__(76319)
 | 
						|
const patch = __webpack_require__(7368)
 | 
						|
const prerelease = __webpack_require__(97794)
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
const rcompare = __webpack_require__(19114)
 | 
						|
const compareLoose = __webpack_require__(5919)
 | 
						|
const compareBuild = __webpack_require__(51868)
 | 
						|
const sort = __webpack_require__(58753)
 | 
						|
const rsort = __webpack_require__(3843)
 | 
						|
const gt = __webpack_require__(82260)
 | 
						|
const lt = __webpack_require__(20290)
 | 
						|
const eq = __webpack_require__(98565)
 | 
						|
const neq = __webpack_require__(23328)
 | 
						|
const gte = __webpack_require__(86579)
 | 
						|
const lte = __webpack_require__(5891)
 | 
						|
const cmp = __webpack_require__(35452)
 | 
						|
const coerce = __webpack_require__(99469)
 | 
						|
const Comparator = __webpack_require__(43134)
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const satisfies = __webpack_require__(99845)
 | 
						|
const toComparators = __webpack_require__(98384)
 | 
						|
const maxSatisfying = __webpack_require__(86369)
 | 
						|
const minSatisfying = __webpack_require__(2663)
 | 
						|
const minVersion = __webpack_require__(20075)
 | 
						|
const validRange = __webpack_require__(19178)
 | 
						|
const outside = __webpack_require__(19434)
 | 
						|
const gtr = __webpack_require__(48237)
 | 
						|
const ltr = __webpack_require__(89860)
 | 
						|
const intersects = __webpack_require__(88258)
 | 
						|
const simplifyRange = __webpack_require__(53607)
 | 
						|
const subset = __webpack_require__(42199)
 | 
						|
module.exports = {
 | 
						|
  parse,
 | 
						|
  valid,
 | 
						|
  clean,
 | 
						|
  inc,
 | 
						|
  diff,
 | 
						|
  major,
 | 
						|
  minor,
 | 
						|
  patch,
 | 
						|
  prerelease,
 | 
						|
  compare,
 | 
						|
  rcompare,
 | 
						|
  compareLoose,
 | 
						|
  compareBuild,
 | 
						|
  sort,
 | 
						|
  rsort,
 | 
						|
  gt,
 | 
						|
  lt,
 | 
						|
  eq,
 | 
						|
  neq,
 | 
						|
  gte,
 | 
						|
  lte,
 | 
						|
  cmp,
 | 
						|
  coerce,
 | 
						|
  Comparator,
 | 
						|
  Range,
 | 
						|
  satisfies,
 | 
						|
  toComparators,
 | 
						|
  maxSatisfying,
 | 
						|
  minSatisfying,
 | 
						|
  minVersion,
 | 
						|
  validRange,
 | 
						|
  outside,
 | 
						|
  gtr,
 | 
						|
  ltr,
 | 
						|
  intersects,
 | 
						|
  simplifyRange,
 | 
						|
  subset,
 | 
						|
  SemVer,
 | 
						|
  re: internalRe.re,
 | 
						|
  src: internalRe.src,
 | 
						|
  tokens: internalRe.t,
 | 
						|
  SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,
 | 
						|
  RELEASE_TYPES: constants.RELEASE_TYPES,
 | 
						|
  compareIdentifiers: identifiers.compareIdentifiers,
 | 
						|
  rcompareIdentifiers: identifiers.rcompareIdentifiers,
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 50039:
 | 
						|
/***/ ((module) => {
 | 
						|
 | 
						|
// Note: this is the semver.org version of the spec that it implements
 | 
						|
// Not necessarily the package version of this code.
 | 
						|
const SEMVER_SPEC_VERSION = '2.0.0'
 | 
						|
 | 
						|
const MAX_LENGTH = 256
 | 
						|
const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
 | 
						|
/* istanbul ignore next */ 9007199254740991
 | 
						|
 | 
						|
// Max safe segment length for coercion.
 | 
						|
const MAX_SAFE_COMPONENT_LENGTH = 16
 | 
						|
 | 
						|
// Max safe length for a build identifier. The max length minus 6 characters for
 | 
						|
// the shortest version with a build 0.0.0+BUILD.
 | 
						|
const MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6
 | 
						|
 | 
						|
const RELEASE_TYPES = [
 | 
						|
  'major',
 | 
						|
  'premajor',
 | 
						|
  'minor',
 | 
						|
  'preminor',
 | 
						|
  'patch',
 | 
						|
  'prepatch',
 | 
						|
  'prerelease',
 | 
						|
]
 | 
						|
 | 
						|
module.exports = {
 | 
						|
  MAX_LENGTH,
 | 
						|
  MAX_SAFE_COMPONENT_LENGTH,
 | 
						|
  MAX_SAFE_BUILD_LENGTH,
 | 
						|
  MAX_SAFE_INTEGER,
 | 
						|
  RELEASE_TYPES,
 | 
						|
  SEMVER_SPEC_VERSION,
 | 
						|
  FLAG_INCLUDE_PRERELEASE: 0b001,
 | 
						|
  FLAG_LOOSE: 0b010,
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 46830:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
/* provided dependency */ var process = __webpack_require__(27061);
 | 
						|
const debug = (
 | 
						|
  typeof process === 'object' &&
 | 
						|
  process.env &&
 | 
						|
  process.env.NODE_DEBUG &&
 | 
						|
  /\bsemver\b/i.test(process.env.NODE_DEBUG)
 | 
						|
) ? (...args) => console.error('SEMVER', ...args)
 | 
						|
  : () => {}
 | 
						|
 | 
						|
module.exports = debug
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 8822:
 | 
						|
/***/ ((module) => {
 | 
						|
 | 
						|
const numeric = /^[0-9]+$/
 | 
						|
const compareIdentifiers = (a, b) => {
 | 
						|
  const anum = numeric.test(a)
 | 
						|
  const bnum = numeric.test(b)
 | 
						|
 | 
						|
  if (anum && bnum) {
 | 
						|
    a = +a
 | 
						|
    b = +b
 | 
						|
  }
 | 
						|
 | 
						|
  return a === b ? 0
 | 
						|
    : (anum && !bnum) ? -1
 | 
						|
    : (bnum && !anum) ? 1
 | 
						|
    : a < b ? -1
 | 
						|
    : 1
 | 
						|
}
 | 
						|
 | 
						|
const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)
 | 
						|
 | 
						|
module.exports = {
 | 
						|
  compareIdentifiers,
 | 
						|
  rcompareIdentifiers,
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 40203:
 | 
						|
/***/ ((module) => {
 | 
						|
 | 
						|
class LRUCache {
 | 
						|
  constructor () {
 | 
						|
    this.max = 1000
 | 
						|
    this.map = new Map()
 | 
						|
  }
 | 
						|
 | 
						|
  get (key) {
 | 
						|
    const value = this.map.get(key)
 | 
						|
    if (value === undefined) {
 | 
						|
      return undefined
 | 
						|
    } else {
 | 
						|
      // Remove the key from the map and add it to the end
 | 
						|
      this.map.delete(key)
 | 
						|
      this.map.set(key, value)
 | 
						|
      return value
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  delete (key) {
 | 
						|
    return this.map.delete(key)
 | 
						|
  }
 | 
						|
 | 
						|
  set (key, value) {
 | 
						|
    const deleted = this.delete(key)
 | 
						|
 | 
						|
    if (!deleted && value !== undefined) {
 | 
						|
      // If cache is full, delete the least recently used item
 | 
						|
      if (this.map.size >= this.max) {
 | 
						|
        const firstKey = this.map.keys().next().value
 | 
						|
        this.delete(firstKey)
 | 
						|
      }
 | 
						|
 | 
						|
      this.map.set(key, value)
 | 
						|
    }
 | 
						|
 | 
						|
    return this
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = LRUCache
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 48716:
 | 
						|
/***/ ((module) => {
 | 
						|
 | 
						|
// parse out just the options we care about
 | 
						|
const looseOption = Object.freeze({ loose: true })
 | 
						|
const emptyOpts = Object.freeze({ })
 | 
						|
const parseOptions = options => {
 | 
						|
  if (!options) {
 | 
						|
    return emptyOpts
 | 
						|
  }
 | 
						|
 | 
						|
  if (typeof options !== 'object') {
 | 
						|
    return looseOption
 | 
						|
  }
 | 
						|
 | 
						|
  return options
 | 
						|
}
 | 
						|
module.exports = parseOptions
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 19022:
 | 
						|
/***/ ((module, exports, __webpack_require__) => {
 | 
						|
 | 
						|
const {
 | 
						|
  MAX_SAFE_COMPONENT_LENGTH,
 | 
						|
  MAX_SAFE_BUILD_LENGTH,
 | 
						|
  MAX_LENGTH,
 | 
						|
} = __webpack_require__(50039)
 | 
						|
const debug = __webpack_require__(46830)
 | 
						|
exports = module.exports = {}
 | 
						|
 | 
						|
// The actual regexps go on exports.re
 | 
						|
const re = exports.re = []
 | 
						|
const safeRe = exports.safeRe = []
 | 
						|
const src = exports.src = []
 | 
						|
const t = exports.t = {}
 | 
						|
let R = 0
 | 
						|
 | 
						|
const LETTERDASHNUMBER = '[a-zA-Z0-9-]'
 | 
						|
 | 
						|
// Replace some greedy regex tokens to prevent regex dos issues. These regex are
 | 
						|
// used internally via the safeRe object since all inputs in this library get
 | 
						|
// normalized first to trim and collapse all extra whitespace. The original
 | 
						|
// regexes are exported for userland consumption and lower level usage. A
 | 
						|
// future breaking change could export the safer regex only with a note that
 | 
						|
// all input should have extra whitespace removed.
 | 
						|
const safeRegexReplacements = [
 | 
						|
  ['\\s', 1],
 | 
						|
  ['\\d', MAX_LENGTH],
 | 
						|
  [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],
 | 
						|
]
 | 
						|
 | 
						|
const makeSafeRegex = (value) => {
 | 
						|
  for (const [token, max] of safeRegexReplacements) {
 | 
						|
    value = value
 | 
						|
      .split(`${token}*`).join(`${token}{0,${max}}`)
 | 
						|
      .split(`${token}+`).join(`${token}{1,${max}}`)
 | 
						|
  }
 | 
						|
  return value
 | 
						|
}
 | 
						|
 | 
						|
const createToken = (name, value, isGlobal) => {
 | 
						|
  const safe = makeSafeRegex(value)
 | 
						|
  const index = R++
 | 
						|
  debug(name, index, value)
 | 
						|
  t[name] = index
 | 
						|
  src[index] = value
 | 
						|
  re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
 | 
						|
  safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)
 | 
						|
}
 | 
						|
 | 
						|
// The following Regular Expressions can be used for tokenizing,
 | 
						|
// validating, and parsing SemVer version strings.
 | 
						|
 | 
						|
// ## Numeric Identifier
 | 
						|
// A single `0`, or a non-zero digit followed by zero or more digits.
 | 
						|
 | 
						|
createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*')
 | 
						|
createToken('NUMERICIDENTIFIERLOOSE', '\\d+')
 | 
						|
 | 
						|
// ## Non-numeric Identifier
 | 
						|
// Zero or more digits, followed by a letter or hyphen, and then zero or
 | 
						|
// more letters, digits, or hyphens.
 | 
						|
 | 
						|
createToken('NONNUMERICIDENTIFIER', `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)
 | 
						|
 | 
						|
// ## Main Version
 | 
						|
// Three dot-separated numeric identifiers.
 | 
						|
 | 
						|
createToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\.` +
 | 
						|
                   `(${src[t.NUMERICIDENTIFIER]})\\.` +
 | 
						|
                   `(${src[t.NUMERICIDENTIFIER]})`)
 | 
						|
 | 
						|
createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
 | 
						|
                        `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
 | 
						|
                        `(${src[t.NUMERICIDENTIFIERLOOSE]})`)
 | 
						|
 | 
						|
// ## Pre-release Version Identifier
 | 
						|
// A numeric identifier, or a non-numeric identifier.
 | 
						|
 | 
						|
createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]
 | 
						|
}|${src[t.NONNUMERICIDENTIFIER]})`)
 | 
						|
 | 
						|
createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]
 | 
						|
}|${src[t.NONNUMERICIDENTIFIER]})`)
 | 
						|
 | 
						|
// ## Pre-release Version
 | 
						|
// Hyphen, followed by one or more dot-separated pre-release version
 | 
						|
// identifiers.
 | 
						|
 | 
						|
createToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]
 | 
						|
}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`)
 | 
						|
 | 
						|
createToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]
 | 
						|
}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)
 | 
						|
 | 
						|
// ## Build Metadata Identifier
 | 
						|
// Any combination of digits, letters, or hyphens.
 | 
						|
 | 
						|
createToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)
 | 
						|
 | 
						|
// ## Build Metadata
 | 
						|
// Plus sign, followed by one or more period-separated build metadata
 | 
						|
// identifiers.
 | 
						|
 | 
						|
createToken('BUILD', `(?:\\+(${src[t.BUILDIDENTIFIER]
 | 
						|
}(?:\\.${src[t.BUILDIDENTIFIER]})*))`)
 | 
						|
 | 
						|
// ## Full Version String
 | 
						|
// A main version, followed optionally by a pre-release version and
 | 
						|
// build metadata.
 | 
						|
 | 
						|
// Note that the only major, minor, patch, and pre-release sections of
 | 
						|
// the version string are capturing groups.  The build metadata is not a
 | 
						|
// capturing group, because it should not ever be used in version
 | 
						|
// comparison.
 | 
						|
 | 
						|
createToken('FULLPLAIN', `v?${src[t.MAINVERSION]
 | 
						|
}${src[t.PRERELEASE]}?${
 | 
						|
  src[t.BUILD]}?`)
 | 
						|
 | 
						|
createToken('FULL', `^${src[t.FULLPLAIN]}$`)
 | 
						|
 | 
						|
// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
 | 
						|
// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
 | 
						|
// common in the npm registry.
 | 
						|
createToken('LOOSEPLAIN', `[v=\\s]*${src[t.MAINVERSIONLOOSE]
 | 
						|
}${src[t.PRERELEASELOOSE]}?${
 | 
						|
  src[t.BUILD]}?`)
 | 
						|
 | 
						|
createToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)
 | 
						|
 | 
						|
createToken('GTLT', '((?:<|>)?=?)')
 | 
						|
 | 
						|
// Something like "2.*" or "1.2.x".
 | 
						|
// Note that "x.x" is a valid xRange identifer, meaning "any version"
 | 
						|
// Only the first item is strictly required.
 | 
						|
createToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`)
 | 
						|
createToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`)
 | 
						|
 | 
						|
createToken('XRANGEPLAIN', `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` +
 | 
						|
                   `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
 | 
						|
                   `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
 | 
						|
                   `(?:${src[t.PRERELEASE]})?${
 | 
						|
                     src[t.BUILD]}?` +
 | 
						|
                   `)?)?`)
 | 
						|
 | 
						|
createToken('XRANGEPLAINLOOSE', `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +
 | 
						|
                        `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
 | 
						|
                        `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
 | 
						|
                        `(?:${src[t.PRERELEASELOOSE]})?${
 | 
						|
                          src[t.BUILD]}?` +
 | 
						|
                        `)?)?`)
 | 
						|
 | 
						|
createToken('XRANGE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`)
 | 
						|
createToken('XRANGELOOSE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`)
 | 
						|
 | 
						|
// Coercion.
 | 
						|
// Extract anything that could conceivably be a part of a valid semver
 | 
						|
createToken('COERCEPLAIN', `${'(^|[^\\d])' +
 | 
						|
              '(\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +
 | 
						|
              `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +
 | 
						|
              `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`)
 | 
						|
createToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\d])`)
 | 
						|
createToken('COERCEFULL', src[t.COERCEPLAIN] +
 | 
						|
              `(?:${src[t.PRERELEASE]})?` +
 | 
						|
              `(?:${src[t.BUILD]})?` +
 | 
						|
              `(?:$|[^\\d])`)
 | 
						|
createToken('COERCERTL', src[t.COERCE], true)
 | 
						|
createToken('COERCERTLFULL', src[t.COERCEFULL], true)
 | 
						|
 | 
						|
// Tilde ranges.
 | 
						|
// Meaning is "reasonably at or greater than"
 | 
						|
createToken('LONETILDE', '(?:~>?)')
 | 
						|
 | 
						|
createToken('TILDETRIM', `(\\s*)${src[t.LONETILDE]}\\s+`, true)
 | 
						|
exports.tildeTrimReplace = '$1~'
 | 
						|
 | 
						|
createToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)
 | 
						|
createToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)
 | 
						|
 | 
						|
// Caret ranges.
 | 
						|
// Meaning is "at least and backwards compatible with"
 | 
						|
createToken('LONECARET', '(?:\\^)')
 | 
						|
 | 
						|
createToken('CARETTRIM', `(\\s*)${src[t.LONECARET]}\\s+`, true)
 | 
						|
exports.caretTrimReplace = '$1^'
 | 
						|
 | 
						|
createToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)
 | 
						|
createToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)
 | 
						|
 | 
						|
// A simple gt/lt/eq thing, or just "" to indicate "any version"
 | 
						|
createToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`)
 | 
						|
createToken('COMPARATOR', `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`)
 | 
						|
 | 
						|
// An expression to strip any whitespace between the gtlt and the thing
 | 
						|
// it modifies, so that `> 1.2.3` ==> `>1.2.3`
 | 
						|
createToken('COMPARATORTRIM', `(\\s*)${src[t.GTLT]
 | 
						|
}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)
 | 
						|
exports.comparatorTrimReplace = '$1$2$3'
 | 
						|
 | 
						|
// Something like `1.2.3 - 1.2.4`
 | 
						|
// Note that these all use the loose form, because they'll be
 | 
						|
// checked against either the strict or loose comparator form
 | 
						|
// later.
 | 
						|
createToken('HYPHENRANGE', `^\\s*(${src[t.XRANGEPLAIN]})` +
 | 
						|
                   `\\s+-\\s+` +
 | 
						|
                   `(${src[t.XRANGEPLAIN]})` +
 | 
						|
                   `\\s*$`)
 | 
						|
 | 
						|
createToken('HYPHENRANGELOOSE', `^\\s*(${src[t.XRANGEPLAINLOOSE]})` +
 | 
						|
                        `\\s+-\\s+` +
 | 
						|
                        `(${src[t.XRANGEPLAINLOOSE]})` +
 | 
						|
                        `\\s*$`)
 | 
						|
 | 
						|
// Star ranges basically just allow anything at all.
 | 
						|
createToken('STAR', '(<|>)?=?\\s*\\*')
 | 
						|
// >=0.0.0 is like a star
 | 
						|
createToken('GTE0', '^\\s*>=\\s*0\\.0\\.0\\s*$')
 | 
						|
createToken('GTE0PRE', '^\\s*>=\\s*0\\.0\\.0-0\\s*$')
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 48237:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
// Determine if version is greater than all the versions possible in the range.
 | 
						|
const outside = __webpack_require__(19434)
 | 
						|
const gtr = (version, range, options) => outside(version, range, '>', options)
 | 
						|
module.exports = gtr
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 88258:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const intersects = (r1, r2, options) => {
 | 
						|
  r1 = new Range(r1, options)
 | 
						|
  r2 = new Range(r2, options)
 | 
						|
  return r1.intersects(r2, options)
 | 
						|
}
 | 
						|
module.exports = intersects
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 89860:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const outside = __webpack_require__(19434)
 | 
						|
// Determine if version is less than all the versions possible in the range
 | 
						|
const ltr = (version, range, options) => outside(version, range, '<', options)
 | 
						|
module.exports = ltr
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 86369:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
 | 
						|
const maxSatisfying = (versions, range, options) => {
 | 
						|
  let max = null
 | 
						|
  let maxSV = null
 | 
						|
  let rangeObj = null
 | 
						|
  try {
 | 
						|
    rangeObj = new Range(range, options)
 | 
						|
  } catch (er) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
  versions.forEach((v) => {
 | 
						|
    if (rangeObj.test(v)) {
 | 
						|
      // satisfies(v, range, options)
 | 
						|
      if (!max || maxSV.compare(v) === -1) {
 | 
						|
        // compare(max, v, true)
 | 
						|
        max = v
 | 
						|
        maxSV = new SemVer(max, options)
 | 
						|
      }
 | 
						|
    }
 | 
						|
  })
 | 
						|
  return max
 | 
						|
}
 | 
						|
module.exports = maxSatisfying
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 2663:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const minSatisfying = (versions, range, options) => {
 | 
						|
  let min = null
 | 
						|
  let minSV = null
 | 
						|
  let rangeObj = null
 | 
						|
  try {
 | 
						|
    rangeObj = new Range(range, options)
 | 
						|
  } catch (er) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
  versions.forEach((v) => {
 | 
						|
    if (rangeObj.test(v)) {
 | 
						|
      // satisfies(v, range, options)
 | 
						|
      if (!min || minSV.compare(v) === 1) {
 | 
						|
        // compare(min, v, true)
 | 
						|
        min = v
 | 
						|
        minSV = new SemVer(min, options)
 | 
						|
      }
 | 
						|
    }
 | 
						|
  })
 | 
						|
  return min
 | 
						|
}
 | 
						|
module.exports = minSatisfying
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 20075:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const gt = __webpack_require__(82260)
 | 
						|
 | 
						|
const minVersion = (range, loose) => {
 | 
						|
  range = new Range(range, loose)
 | 
						|
 | 
						|
  let minver = new SemVer('0.0.0')
 | 
						|
  if (range.test(minver)) {
 | 
						|
    return minver
 | 
						|
  }
 | 
						|
 | 
						|
  minver = new SemVer('0.0.0-0')
 | 
						|
  if (range.test(minver)) {
 | 
						|
    return minver
 | 
						|
  }
 | 
						|
 | 
						|
  minver = null
 | 
						|
  for (let i = 0; i < range.set.length; ++i) {
 | 
						|
    const comparators = range.set[i]
 | 
						|
 | 
						|
    let setMin = null
 | 
						|
    comparators.forEach((comparator) => {
 | 
						|
      // Clone to avoid manipulating the comparator's semver object.
 | 
						|
      const compver = new SemVer(comparator.semver.version)
 | 
						|
      switch (comparator.operator) {
 | 
						|
        case '>':
 | 
						|
          if (compver.prerelease.length === 0) {
 | 
						|
            compver.patch++
 | 
						|
          } else {
 | 
						|
            compver.prerelease.push(0)
 | 
						|
          }
 | 
						|
          compver.raw = compver.format()
 | 
						|
          /* fallthrough */
 | 
						|
        case '':
 | 
						|
        case '>=':
 | 
						|
          if (!setMin || gt(compver, setMin)) {
 | 
						|
            setMin = compver
 | 
						|
          }
 | 
						|
          break
 | 
						|
        case '<':
 | 
						|
        case '<=':
 | 
						|
          /* Ignore maximum versions */
 | 
						|
          break
 | 
						|
        /* istanbul ignore next */
 | 
						|
        default:
 | 
						|
          throw new Error(`Unexpected operation: ${comparator.operator}`)
 | 
						|
      }
 | 
						|
    })
 | 
						|
    if (setMin && (!minver || gt(minver, setMin))) {
 | 
						|
      minver = setMin
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  if (minver && range.test(minver)) {
 | 
						|
    return minver
 | 
						|
  }
 | 
						|
 | 
						|
  return null
 | 
						|
}
 | 
						|
module.exports = minVersion
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 19434:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const SemVer = __webpack_require__(89510)
 | 
						|
const Comparator = __webpack_require__(43134)
 | 
						|
const { ANY } = Comparator
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const satisfies = __webpack_require__(99845)
 | 
						|
const gt = __webpack_require__(82260)
 | 
						|
const lt = __webpack_require__(20290)
 | 
						|
const lte = __webpack_require__(5891)
 | 
						|
const gte = __webpack_require__(86579)
 | 
						|
 | 
						|
const outside = (version, range, hilo, options) => {
 | 
						|
  version = new SemVer(version, options)
 | 
						|
  range = new Range(range, options)
 | 
						|
 | 
						|
  let gtfn, ltefn, ltfn, comp, ecomp
 | 
						|
  switch (hilo) {
 | 
						|
    case '>':
 | 
						|
      gtfn = gt
 | 
						|
      ltefn = lte
 | 
						|
      ltfn = lt
 | 
						|
      comp = '>'
 | 
						|
      ecomp = '>='
 | 
						|
      break
 | 
						|
    case '<':
 | 
						|
      gtfn = lt
 | 
						|
      ltefn = gte
 | 
						|
      ltfn = gt
 | 
						|
      comp = '<'
 | 
						|
      ecomp = '<='
 | 
						|
      break
 | 
						|
    default:
 | 
						|
      throw new TypeError('Must provide a hilo val of "<" or ">"')
 | 
						|
  }
 | 
						|
 | 
						|
  // If it satisfies the range it is not outside
 | 
						|
  if (satisfies(version, range, options)) {
 | 
						|
    return false
 | 
						|
  }
 | 
						|
 | 
						|
  // From now on, variable terms are as if we're in "gtr" mode.
 | 
						|
  // but note that everything is flipped for the "ltr" function.
 | 
						|
 | 
						|
  for (let i = 0; i < range.set.length; ++i) {
 | 
						|
    const comparators = range.set[i]
 | 
						|
 | 
						|
    let high = null
 | 
						|
    let low = null
 | 
						|
 | 
						|
    comparators.forEach((comparator) => {
 | 
						|
      if (comparator.semver === ANY) {
 | 
						|
        comparator = new Comparator('>=0.0.0')
 | 
						|
      }
 | 
						|
      high = high || comparator
 | 
						|
      low = low || comparator
 | 
						|
      if (gtfn(comparator.semver, high.semver, options)) {
 | 
						|
        high = comparator
 | 
						|
      } else if (ltfn(comparator.semver, low.semver, options)) {
 | 
						|
        low = comparator
 | 
						|
      }
 | 
						|
    })
 | 
						|
 | 
						|
    // If the edge version comparator has a operator then our version
 | 
						|
    // isn't outside it
 | 
						|
    if (high.operator === comp || high.operator === ecomp) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
 | 
						|
    // If the lowest version comparator has an operator and our version
 | 
						|
    // is less than it then it isn't higher than the range
 | 
						|
    if ((!low.operator || low.operator === comp) &&
 | 
						|
        ltefn(version, low.semver)) {
 | 
						|
      return false
 | 
						|
    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
  }
 | 
						|
  return true
 | 
						|
}
 | 
						|
 | 
						|
module.exports = outside
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 53607:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
// given a set of versions and a range, create a "simplified" range
 | 
						|
// that includes the same versions that the original range does
 | 
						|
// If the original range is shorter than the simplified one, return that.
 | 
						|
const satisfies = __webpack_require__(99845)
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
module.exports = (versions, range, options) => {
 | 
						|
  const set = []
 | 
						|
  let first = null
 | 
						|
  let prev = null
 | 
						|
  const v = versions.sort((a, b) => compare(a, b, options))
 | 
						|
  for (const version of v) {
 | 
						|
    const included = satisfies(version, range, options)
 | 
						|
    if (included) {
 | 
						|
      prev = version
 | 
						|
      if (!first) {
 | 
						|
        first = version
 | 
						|
      }
 | 
						|
    } else {
 | 
						|
      if (prev) {
 | 
						|
        set.push([first, prev])
 | 
						|
      }
 | 
						|
      prev = null
 | 
						|
      first = null
 | 
						|
    }
 | 
						|
  }
 | 
						|
  if (first) {
 | 
						|
    set.push([first, null])
 | 
						|
  }
 | 
						|
 | 
						|
  const ranges = []
 | 
						|
  for (const [min, max] of set) {
 | 
						|
    if (min === max) {
 | 
						|
      ranges.push(min)
 | 
						|
    } else if (!max && min === v[0]) {
 | 
						|
      ranges.push('*')
 | 
						|
    } else if (!max) {
 | 
						|
      ranges.push(`>=${min}`)
 | 
						|
    } else if (min === v[0]) {
 | 
						|
      ranges.push(`<=${max}`)
 | 
						|
    } else {
 | 
						|
      ranges.push(`${min} - ${max}`)
 | 
						|
    }
 | 
						|
  }
 | 
						|
  const simplified = ranges.join(' || ')
 | 
						|
  const original = typeof range.raw === 'string' ? range.raw : String(range)
 | 
						|
  return simplified.length < original.length ? simplified : range
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 42199:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const Comparator = __webpack_require__(43134)
 | 
						|
const { ANY } = Comparator
 | 
						|
const satisfies = __webpack_require__(99845)
 | 
						|
const compare = __webpack_require__(43992)
 | 
						|
 | 
						|
// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:
 | 
						|
// - Every simple range `r1, r2, ...` is a null set, OR
 | 
						|
// - Every simple range `r1, r2, ...` which is not a null set is a subset of
 | 
						|
//   some `R1, R2, ...`
 | 
						|
//
 | 
						|
// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:
 | 
						|
// - If c is only the ANY comparator
 | 
						|
//   - If C is only the ANY comparator, return true
 | 
						|
//   - Else if in prerelease mode, return false
 | 
						|
//   - else replace c with `[>=0.0.0]`
 | 
						|
// - If C is only the ANY comparator
 | 
						|
//   - if in prerelease mode, return true
 | 
						|
//   - else replace C with `[>=0.0.0]`
 | 
						|
// - Let EQ be the set of = comparators in c
 | 
						|
// - If EQ is more than one, return true (null set)
 | 
						|
// - Let GT be the highest > or >= comparator in c
 | 
						|
// - Let LT be the lowest < or <= comparator in c
 | 
						|
// - If GT and LT, and GT.semver > LT.semver, return true (null set)
 | 
						|
// - If any C is a = range, and GT or LT are set, return false
 | 
						|
// - If EQ
 | 
						|
//   - If GT, and EQ does not satisfy GT, return true (null set)
 | 
						|
//   - If LT, and EQ does not satisfy LT, return true (null set)
 | 
						|
//   - If EQ satisfies every C, return true
 | 
						|
//   - Else return false
 | 
						|
// - If GT
 | 
						|
//   - If GT.semver is lower than any > or >= comp in C, return false
 | 
						|
//   - If GT is >=, and GT.semver does not satisfy every C, return false
 | 
						|
//   - If GT.semver has a prerelease, and not in prerelease mode
 | 
						|
//     - If no C has a prerelease and the GT.semver tuple, return false
 | 
						|
// - If LT
 | 
						|
//   - If LT.semver is greater than any < or <= comp in C, return false
 | 
						|
//   - If LT is <=, and LT.semver does not satisfy every C, return false
 | 
						|
//   - If GT.semver has a prerelease, and not in prerelease mode
 | 
						|
//     - If no C has a prerelease and the LT.semver tuple, return false
 | 
						|
// - Else return true
 | 
						|
 | 
						|
const subset = (sub, dom, options = {}) => {
 | 
						|
  if (sub === dom) {
 | 
						|
    return true
 | 
						|
  }
 | 
						|
 | 
						|
  sub = new Range(sub, options)
 | 
						|
  dom = new Range(dom, options)
 | 
						|
  let sawNonNull = false
 | 
						|
 | 
						|
  OUTER: for (const simpleSub of sub.set) {
 | 
						|
    for (const simpleDom of dom.set) {
 | 
						|
      const isSub = simpleSubset(simpleSub, simpleDom, options)
 | 
						|
      sawNonNull = sawNonNull || isSub !== null
 | 
						|
      if (isSub) {
 | 
						|
        continue OUTER
 | 
						|
      }
 | 
						|
    }
 | 
						|
    // the null set is a subset of everything, but null simple ranges in
 | 
						|
    // a complex range should be ignored.  so if we saw a non-null range,
 | 
						|
    // then we know this isn't a subset, but if EVERY simple range was null,
 | 
						|
    // then it is a subset.
 | 
						|
    if (sawNonNull) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
  }
 | 
						|
  return true
 | 
						|
}
 | 
						|
 | 
						|
const minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]
 | 
						|
const minimumVersion = [new Comparator('>=0.0.0')]
 | 
						|
 | 
						|
const simpleSubset = (sub, dom, options) => {
 | 
						|
  if (sub === dom) {
 | 
						|
    return true
 | 
						|
  }
 | 
						|
 | 
						|
  if (sub.length === 1 && sub[0].semver === ANY) {
 | 
						|
    if (dom.length === 1 && dom[0].semver === ANY) {
 | 
						|
      return true
 | 
						|
    } else if (options.includePrerelease) {
 | 
						|
      sub = minimumVersionWithPreRelease
 | 
						|
    } else {
 | 
						|
      sub = minimumVersion
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  if (dom.length === 1 && dom[0].semver === ANY) {
 | 
						|
    if (options.includePrerelease) {
 | 
						|
      return true
 | 
						|
    } else {
 | 
						|
      dom = minimumVersion
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  const eqSet = new Set()
 | 
						|
  let gt, lt
 | 
						|
  for (const c of sub) {
 | 
						|
    if (c.operator === '>' || c.operator === '>=') {
 | 
						|
      gt = higherGT(gt, c, options)
 | 
						|
    } else if (c.operator === '<' || c.operator === '<=') {
 | 
						|
      lt = lowerLT(lt, c, options)
 | 
						|
    } else {
 | 
						|
      eqSet.add(c.semver)
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  if (eqSet.size > 1) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
 | 
						|
  let gtltComp
 | 
						|
  if (gt && lt) {
 | 
						|
    gtltComp = compare(gt.semver, lt.semver, options)
 | 
						|
    if (gtltComp > 0) {
 | 
						|
      return null
 | 
						|
    } else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) {
 | 
						|
      return null
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  // will iterate one or zero times
 | 
						|
  for (const eq of eqSet) {
 | 
						|
    if (gt && !satisfies(eq, String(gt), options)) {
 | 
						|
      return null
 | 
						|
    }
 | 
						|
 | 
						|
    if (lt && !satisfies(eq, String(lt), options)) {
 | 
						|
      return null
 | 
						|
    }
 | 
						|
 | 
						|
    for (const c of dom) {
 | 
						|
      if (!satisfies(eq, String(c), options)) {
 | 
						|
        return false
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    return true
 | 
						|
  }
 | 
						|
 | 
						|
  let higher, lower
 | 
						|
  let hasDomLT, hasDomGT
 | 
						|
  // if the subset has a prerelease, we need a comparator in the superset
 | 
						|
  // with the same tuple and a prerelease, or it's not a subset
 | 
						|
  let needDomLTPre = lt &&
 | 
						|
    !options.includePrerelease &&
 | 
						|
    lt.semver.prerelease.length ? lt.semver : false
 | 
						|
  let needDomGTPre = gt &&
 | 
						|
    !options.includePrerelease &&
 | 
						|
    gt.semver.prerelease.length ? gt.semver : false
 | 
						|
  // exception: <1.2.3-0 is the same as <1.2.3
 | 
						|
  if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&
 | 
						|
      lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {
 | 
						|
    needDomLTPre = false
 | 
						|
  }
 | 
						|
 | 
						|
  for (const c of dom) {
 | 
						|
    hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='
 | 
						|
    hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='
 | 
						|
    if (gt) {
 | 
						|
      if (needDomGTPre) {
 | 
						|
        if (c.semver.prerelease && c.semver.prerelease.length &&
 | 
						|
            c.semver.major === needDomGTPre.major &&
 | 
						|
            c.semver.minor === needDomGTPre.minor &&
 | 
						|
            c.semver.patch === needDomGTPre.patch) {
 | 
						|
          needDomGTPre = false
 | 
						|
        }
 | 
						|
      }
 | 
						|
      if (c.operator === '>' || c.operator === '>=') {
 | 
						|
        higher = higherGT(gt, c, options)
 | 
						|
        if (higher === c && higher !== gt) {
 | 
						|
          return false
 | 
						|
        }
 | 
						|
      } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) {
 | 
						|
        return false
 | 
						|
      }
 | 
						|
    }
 | 
						|
    if (lt) {
 | 
						|
      if (needDomLTPre) {
 | 
						|
        if (c.semver.prerelease && c.semver.prerelease.length &&
 | 
						|
            c.semver.major === needDomLTPre.major &&
 | 
						|
            c.semver.minor === needDomLTPre.minor &&
 | 
						|
            c.semver.patch === needDomLTPre.patch) {
 | 
						|
          needDomLTPre = false
 | 
						|
        }
 | 
						|
      }
 | 
						|
      if (c.operator === '<' || c.operator === '<=') {
 | 
						|
        lower = lowerLT(lt, c, options)
 | 
						|
        if (lower === c && lower !== lt) {
 | 
						|
          return false
 | 
						|
        }
 | 
						|
      } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) {
 | 
						|
        return false
 | 
						|
      }
 | 
						|
    }
 | 
						|
    if (!c.operator && (lt || gt) && gtltComp !== 0) {
 | 
						|
      return false
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  // if there was a < or >, and nothing in the dom, then must be false
 | 
						|
  // UNLESS it was limited by another range in the other direction.
 | 
						|
  // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0
 | 
						|
  if (gt && hasDomLT && !lt && gtltComp !== 0) {
 | 
						|
    return false
 | 
						|
  }
 | 
						|
 | 
						|
  if (lt && hasDomGT && !gt && gtltComp !== 0) {
 | 
						|
    return false
 | 
						|
  }
 | 
						|
 | 
						|
  // we needed a prerelease range in a specific tuple, but didn't get one
 | 
						|
  // then this isn't a subset.  eg >=1.2.3-pre is not a subset of >=1.0.0,
 | 
						|
  // because it includes prereleases in the 1.2.3 tuple
 | 
						|
  if (needDomGTPre || needDomLTPre) {
 | 
						|
    return false
 | 
						|
  }
 | 
						|
 | 
						|
  return true
 | 
						|
}
 | 
						|
 | 
						|
// >=1.2.3 is lower than >1.2.3
 | 
						|
const higherGT = (a, b, options) => {
 | 
						|
  if (!a) {
 | 
						|
    return b
 | 
						|
  }
 | 
						|
  const comp = compare(a.semver, b.semver, options)
 | 
						|
  return comp > 0 ? a
 | 
						|
    : comp < 0 ? b
 | 
						|
    : b.operator === '>' && a.operator === '>=' ? b
 | 
						|
    : a
 | 
						|
}
 | 
						|
 | 
						|
// <=1.2.3 is higher than <1.2.3
 | 
						|
const lowerLT = (a, b, options) => {
 | 
						|
  if (!a) {
 | 
						|
    return b
 | 
						|
  }
 | 
						|
  const comp = compare(a.semver, b.semver, options)
 | 
						|
  return comp < 0 ? a
 | 
						|
    : comp > 0 ? b
 | 
						|
    : b.operator === '<' && a.operator === '<=' ? b
 | 
						|
    : a
 | 
						|
}
 | 
						|
 | 
						|
module.exports = subset
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 98384:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
 | 
						|
// Mostly just for testing and legacy API reasons
 | 
						|
const toComparators = (range, options) =>
 | 
						|
  new Range(range, options).set
 | 
						|
    .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
 | 
						|
 | 
						|
module.exports = toComparators
 | 
						|
 | 
						|
 | 
						|
/***/ }),
 | 
						|
 | 
						|
/***/ 19178:
 | 
						|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 | 
						|
 | 
						|
const Range = __webpack_require__(87374)
 | 
						|
const validRange = (range, options) => {
 | 
						|
  try {
 | 
						|
    // Return '*' instead of '' so that truthiness works.
 | 
						|
    // This will throw if it's invalid anyway
 | 
						|
    return new Range(range, options).range || '*'
 | 
						|
  } catch (er) {
 | 
						|
    return null
 | 
						|
  }
 | 
						|
}
 | 
						|
module.exports = validRange
 | 
						|
 | 
						|
 | 
						|
/***/ })
 | 
						|
 | 
						|
}]);
 | 
						|
//# sourceMappingURL=757.86f80ac05f38c4f4be68.js.map?v=86f80ac05f38c4f4be68
 |