infamous
Version:
A CSS3D/WebGL UI library.
1,643 lines (1,350 loc) • 1.48 MB
JavaScript
var infamous =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 152);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _exportNames = {
version: true,
instanceOf: true
};
Object.defineProperty(exports, "instanceOf", {
enumerable: true,
get: function () {
return _instanceOf.default;
}
});
exports.version = exports.default = void 0;
var _Class = _interopRequireDefault(__webpack_require__(82));
Object.keys(_Class).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _Class[key];
}
});
});
var _Mixin = __webpack_require__(47);
Object.keys(_Mixin).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _Mixin[key];
}
});
});
var _instanceOf = _interopRequireDefault(__webpack_require__(83));
var _native = __webpack_require__(6);
Object.keys(_native).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _native[key];
}
});
});
var _utils = __webpack_require__(18);
Object.keys(_utils).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _utils[key];
}
});
});
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// the bread and butter
var _default = _Class.default; // mix and match your classes!
exports.default = _default;
const version = '4.7.0';
exports.version = version;
/***/ }),
/* 1 */
/***/ (function(module, exports) {
var core = module.exports = { version: '2.6.9' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {
var store = __webpack_require__(37)('wks');
var uid = __webpack_require__(26);
var Symbol = __webpack_require__(4).Symbol;
var USE_SYMBOL = typeof Symbol == 'function';
var $exports = module.exports = function (name) {
return store[name] || (store[name] =
USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};
$exports.store = store;
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(13)(function () {
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});
/***/ }),
/* 4 */
/***/ (function(module, exports) {
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
? window : typeof self != 'undefined' && self.Math == Math ? self
// eslint-disable-next-line no-new-func
: Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
/***/ }),
/* 5 */
/***/ (function(module, exports, __webpack_require__) {
var anObject = __webpack_require__(14);
var IE8_DOM_DEFINE = __webpack_require__(55);
var toPrimitive = __webpack_require__(35);
var dP = Object.defineProperty;
exports.f = __webpack_require__(3) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
anObject(O);
P = toPrimitive(P, true);
anObject(Attributes);
if (IE8_DOM_DEFINE) try {
return dP(O, P, Attributes);
} catch (e) { /* empty */ }
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
if ('value' in Attributes) O[P] = Attributes.value;
return O;
};
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.native = newless;
exports.default = void 0;
var _utils = __webpack_require__(18);
// borrowed from (and slightly modified) https://github.com/Mr0grog/newless
// The newless license is BSD 3:
/*
* Copyright (c) 2013-2016, Rob Brackett
* Copyright (c) 2018, Joseph Orbegoso Pea
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
var _default = newless;
exports.default = _default;
var supportsSpread = isSyntaxSupported("Object(...[{}])");
var supportsClass = isSyntaxSupported("class Test {}");
var supportsNewTarget = isSyntaxSupported("new.target"); // Used to track the original wrapped constructor on a newless instance
var TRUE_CONSTRUCTOR = Symbol ? Symbol("trueConstructor") : "__newlessTrueConstructor__"; // Polyfills for get/set prototype
var getPrototype = Object.getPrototypeOf || function getPrototype(object) {
return object.__proto__ || object.constructor && object.constructor.prototype || Object.prototype;
};
var setPrototype = Object.setPrototypeOf || function setPrototypeOf(object, newPrototype) {
object.__proto__ = newPrototype;
}; // Polyfill for Reflect.construct
var construct = Reflect && Reflect.construct || function () {
if (supportsClass) {
return Function("constructor, args, target", `
'use strict';
if (arguments.length === 3 && typeof target !== 'function')
throw new TypeError(target + ' is not a constructor');
target = target || constructor;
// extend target so the right prototype is constructed (or nearly the
// right one; ideally we'd do instantiator.prototype = target.prototype,
// but a class's prototype property is not writable)
class instantiator extends target {};
// but ensure the *logic* is 'constructor' for ES2015-compliant engines
Object.setPrototypeOf(instantiator, constructor);
// ...and for Safari 9
instantiator.prototype.constructor = constructor;
// The spread operator is *dramatically faster, so use it if we can:
// http://jsperf.com/new-via-spread-vs-dynamic-function/4
${supportsSpread ? `
var value = new instantiator(...([].slice.call(args)));
` : `
// otherwise, create a dynamic function in order to use 'new'
// Note using 'function.bind' would be simpler, but is much slower:
// http://jsperf.com/new-operator-with-dynamic-function-vs-bind
var argList = '';
for (var i = 0, len = args.length; i < len; i++) {
if (i > 0) argList += ',';
argList += 'args[' + i + ']';
}
var constructCall = Function('constructor, args',
'return new constructor( ' + argList + ' );'
);
var value = constructCall(constructor, args);
args = Array.prototype.slice.call(args);
args = [null].concat(args);
var value = new constructor.bind.apply(constructor, args);
`}
// fix up the prototype so it matches the intended one, not one who's
// prototype is the intended one :P
Object.setPrototypeOf(value, target.prototype);
return value;
`); //return Function("constructor, args, newTarget", `
// 'use strict';
// if (arguments.length === 3 && typeof newTarget === undefined)
// throw new TypeError('undefined is not a constructor');
// newTarget = newTarget || constructor;
// ${ supportsSpread ? `
// var value = new constructor(...([].slice.call(args)));
// `:`
// args = Array.prototype.slice.call(args);
// args = [null].concat(args);
// var value = new constructor.bind.apply(constructor, args);
// `}
// Object.setPrototypeOf(value, newTarget.prototype);
// return value;
//`);
} else {
var instantiator = function () {};
return function construct(constructor, args, target) {
if (arguments.length === 3 && typeof target !== 'function') throw new TypeError(target + ' is not a constructor');
instantiator.prototype = (target || constructor).prototype;
var instance = new instantiator();
var value = constructor.apply(instance, args);
if (typeof value === "object" && value) {
// we can do better if __proto__ is available (in some ES5 environments)
value.__proto__ = (target || constructor).prototype;
return value;
}
return instance;
};
}
}(); // ES2015 class methods are non-enumerable; we need a helper for copying them.
var SKIP_PROPERTIES = ["arguments", "caller", "length", "name", "prototype"];
function copyProperties(source, destination) {
if (Object.getOwnPropertyNames && Object.defineProperty) {
var properties = Object.getOwnPropertyNames(source);
if (Object.getOwnPropertySymbols) {
properties = properties.concat(Object.getOwnPropertySymbols(source));
}
for (var i = properties.length - 1; i >= 0; i--) {
if (SKIP_PROPERTIES.indexOf(properties[i]) === -1) {
Object.defineProperty(destination, properties[i], Object.getOwnPropertyDescriptor(source, properties[i]));
}
}
} else {
for (var property in source) {
destination[property] = source[property];
}
}
}
function newless(constructor) {
var name = constructor.name; // V8 and newer versions of JSCore return the full class declaration from
// `toString()`, which lets us be a little smarter and more performant
// about what to do, since we know we are dealing with a "class". Note,
// however, not all engines do this. This could be false and the constructor
// might still use class syntax.
var usesClassSyntax = constructor.toString().substr(0, 5) === "class";
var requiresNew = usesClassSyntax ? true : null;
var newlessConstructor = (() => function () {
// If called with an already valid 'this', preserve that 'this' value
// in the super-type's constructor whenever possible. With function
// constructors (as opposed to class constructors), it's possible to
// alter the instance before calling the super constructor--so it's
// important to preserve that instance if at all possible.
if (!requiresNew && this instanceof newlessConstructor) {
// requiresNew = 'false' indicates we know the 'new' operator isn't
// necessary for this constructor, but 'null' indicates uncertainty,
// so the call needs to handle potential errors the first time in
// order to determine whether 'new' is definitely required.
if (requiresNew === false) {
var returnValue = constructor.apply(this, arguments);
return typeof returnValue === 'object' && returnValue || this;
}
try {
requiresNew = false;
var returnValue = constructor.apply(this, arguments);
return typeof returnValue === 'object' && returnValue || this;
} catch (error) {
// Do our best to only capture errors triggred by class syntax.
// Unfortunately, there's no special error type for this and the
// message is non-standard, so this is the best check we can do.
if (error instanceof TypeError && (/class constructor/i.test(error.message) || /use the 'new' operator/i.test(error.message) // Custom Elements in Chrome
// TODO: there might be other error messages we need to catch,
// depending on engine and use case. We need to test in all browsers
)) {
// mark this constructor as requiring 'new' for next time
requiresNew = true;
} else {
if (/Illegal constructor/i.test(error.message) && Object.create(constructor.prototype) instanceof Node) {
console.error(`
The following error can happen if a Custom Element is called
with 'new' before being defined. The constructor was ${constructor.name}:
`, constructor);
}
throw error;
}
}
} // make a reasonably good replacement for 'new.target' which is a
// syntax error in older engines
var newTarget;
var hasNewTarget = false;
if (supportsNewTarget) {
eval('newTarget = new.target');
if (newTarget) hasNewTarget = true;
}
if (!supportsNewTarget || !hasNewTarget) {
newTarget = this instanceof newlessConstructor ? this.constructor : constructor;
}
var returnValue = construct(constructor, arguments, newTarget); // best effort to make things easy for functions inheriting from classes
if (this instanceof newlessConstructor) {
setPrototype(this, returnValue);
}
return returnValue;
})();
if (name) {
const code = (0, _utils.getFunctionBody)(newlessConstructor);
newlessConstructor = Function("constructor, construct, setPrototype, requiresNew, supportsNewTarget", `
var newlessConstructor = function ${name}() { ${code} };
return newlessConstructor
`)(constructor, construct, setPrototype, requiresNew, supportsNewTarget);
} // copy the `.length` value to the newless constructor
if (constructor.length) {
// length is not writable, only configurable, therefore the value
// has to be set with a descriptor update
(0, _utils.setDescriptor)(newlessConstructor, 'length', {
value: constructor.length
});
}
newlessConstructor.prototype = Object.create(constructor.prototype);
newlessConstructor.prototype.constructor = newlessConstructor; // NOTE: *usually* the below will already be true, but we ensure it here.
// Safari 9 requires this for the 'super' keyword to work. Newer versions
// of WebKit and other engines do not. Instead, they use the constructor's
// prototype chain (which is correct by ES2015 spec) (see below).
constructor.prototype.constructor = constructor; // for ES2015 classes, we need to make sure the constructor's prototype
// is the super class's constructor. Further, optimize performance by
// pointing at the actual constructor implementation instead of the
// newless wrapper (in the case that it is wrapped by newless).
newlessConstructor[TRUE_CONSTRUCTOR] = constructor;
copyProperties(constructor, newlessConstructor);
setPrototype(newlessConstructor, constructor);
return newlessConstructor;
}
; // Test whether a given syntax is supported
function isSyntaxSupported(example, useStrict = true) {
try {
return !!Function("", (useStrict ? "'use strict';" : "") + example);
} catch (error) {
return false;
}
}
/***/ }),
/* 7 */
/***/ (function(module, exports) {
module.exports = function (it) {
return typeof it === 'object' ? it !== null : typeof it === 'function';
};
/***/ }),
/* 8 */
/***/ (function(module, exports, __webpack_require__) {
var global = __webpack_require__(4);
var core = __webpack_require__(1);
var ctx = __webpack_require__(16);
var hide = __webpack_require__(10);
var has = __webpack_require__(9);
var PROTOTYPE = 'prototype';
var $export = function (type, name, source) {
var IS_FORCED = type & $export.F;
var IS_GLOBAL = type & $export.G;
var IS_STATIC = type & $export.S;
var IS_PROTO = type & $export.P;
var IS_BIND = type & $export.B;
var IS_WRAP = type & $export.W;
var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
var expProto = exports[PROTOTYPE];
var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
var key, own, out;
if (IS_GLOBAL) source = name;
for (key in source) {
// contains in native
own = !IS_FORCED && target && target[key] !== undefined;
if (own && has(exports, key)) continue;
// export native or passed
out = own ? target[key] : source[key];
// prevent global pollution for namespaces
exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
// bind timers to global for call from export context
: IS_BIND && own ? ctx(out, global)
// wrap global constructors for prevent change them in library
: IS_WRAP && target[key] == out ? (function (C) {
var F = function (a, b, c) {
if (this instanceof C) {
switch (arguments.length) {
case 0: return new C();
case 1: return new C(a);
case 2: return new C(a, b);
} return new C(a, b, c);
} return C.apply(this, arguments);
};
F[PROTOTYPE] = C[PROTOTYPE];
return F;
// make static versions for prototype methods
})(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
// export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
if (IS_PROTO) {
(exports.virtual || (exports.virtual = {}))[key] = out;
// export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
}
}
};
// type bitmap
$export.F = 1; // forced
$export.G = 2; // global
$export.S = 4; // static
$export.P = 8; // proto
$export.B = 16; // bind
$export.W = 32; // wrap
$export.U = 64; // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;
/***/ }),
/* 9 */
/***/ (function(module, exports) {
var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
return hasOwnProperty.call(it, key);
};
/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {
var dP = __webpack_require__(5);
var createDesc = __webpack_require__(19);
module.exports = __webpack_require__(3) ? function (object, key, value) {
return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
object[key] = value;
return object;
};
/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(global) {
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.clone = clone;
exports.isEmptyObject = isEmptyObject;
exports.toCSS = toCSS;
var stringify = JSON.stringify;
var parse = JSON.parse;
/**
* Deeply clone object using serialization.
* Expects object to be plain and without cyclic dependencies.
*
* http://jsperf.com/lodash-deepclone-vs-jquery-extend-deep/6
*
* @type {Object} obj
* @return {Object}
*/
function clone(obj) {
return parse(stringify(obj));
}
/**
* Determine whether an object is empty or not.
* More performant than a `Object.keys(obj).length > 0`
*
* @type {Object} obj
* @return {Boolean}
*/
function isEmptyObject(obj) {
for (var key in obj) {
return false;
} // eslint-disable-line no-unused-vars
return true;
}
/**
* Simple very fast UID generation based on a global counter.
*/
var uid = exports.uid = function () {
var globalReference = typeof window == 'undefined' ? global : window;
var namespace = '__JSS_VERSION_COUNTER__';
if (globalReference[namespace] == null) globalReference[namespace] = 0;
// In case we have more than one jss version.
var versionCounter = globalReference[namespace]++;
var ruleCounter = 0;
/**
* Returns a uid.
* Ensures uniqueness if more than 1 jss version is used.
*
* @api public
* @return {String}
*/
function get() {
return 'jss-' + versionCounter + '-' + ruleCounter++;
}
/**
* Resets the counter.
*
* @api public
*/
function reset() {
ruleCounter = 0;
}
return { get: get, reset: reset };
}();
/**
* Indent a string.
*
* http://jsperf.com/array-join-vs-for
*
* @param {Number} level
* @param {String} str
* @return {String}
*/
function indent(level, str) {
var indentStr = '';
for (var index = 0; index < level; index++) {
indentStr += ' ';
}return indentStr + str;
}
/**
* Converts a Rule to CSS string.
*
* Options:
* - `selector` use `false` to get a rule without selector
* - `indentationLevel` level of indentation
*
* @param {String} selector
* @param {Object} style
* @param {Object} options
* @return {String}
*/
function toCSS(selector, style) {
var options = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];
var indentationLevel = options.indentationLevel || 0;
var str = '';
if (options.selector !== false) {
str += indent(indentationLevel, selector + ' {');
indentationLevel++;
}
for (var prop in style) {
var value = style[prop];
// We want to generate multiple style with identical property names.
if (Array.isArray(value)) {
for (var index = 0; index < value.length; index++) {
str += '\n' + indent(indentationLevel, prop + ': ' + value[index] + ';');
}
} else str += '\n' + indent(indentationLevel, prop + ': ' + value + ';');
}
if (options.selector !== false) str += '\n' + indent(--indentationLevel, '}');
return str;
}
/**
* Get class names from a selector.
*
* @param {String} selector
* @return {String}
*/
var findClassNames = exports.findClassNames = function () {
var dotsRegExp = /[.]/g;
var classesRegExp = /[.][^ ,]+/g;
return function (selector) {
var classes = selector.match(classesRegExp);
if (!classes) return '';
return classes.join(' ').replace(dotsRegExp, '');
};
}();
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(86)))
/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {
// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(32);
var defined = __webpack_require__(34);
module.exports = function (it) {
return IObject(defined(it));
};
/***/ }),
/* 13 */
/***/ (function(module, exports) {
module.exports = function (exec) {
try {
return !!exec();
} catch (e) {
return true;
}
};
/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(7);
module.exports = function (it) {
if (!isObject(it)) throw TypeError(it + ' is not an object!');
return it;
};
/***/ }),
/* 15 */
/***/ (function(module, exports) {
/**
* Await for this to run code after the DOM has been parsed and loaded (but not
* sub-resources like images, scripts, etc).
*
* The _passThrough arg is not for public use, it's for making data pass
* through in promise chains.
*/
function documentReady( _passThrough ) {
if ( document.readyState === 'loading' ) {
return new Promise( resolve => {
document.addEventListener( 'DOMContentLoaded', () => resolve( _passThrough ) )
} )
}
return Promise.resolve( _passThrough )
}
documentReady.default = documentReady
module.exports = documentReady
/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {
// optional / simple context binding
var aFunction = __webpack_require__(58);
module.exports = function (fn, that, length) {
aFunction(fn);
if (that === undefined) return fn;
switch (length) {
case 1: return function (a) {
return fn.call(that, a);
};
case 2: return function (a, b) {
return fn.call(that, a, b);
};
case 3: return function (a, b, c) {
return fn.call(that, a, b, c);
};
}
return function (/* ...args */) {
return fn.apply(that, arguments);
};
};
/***/ }),
/* 17 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.13 ToObject(argument)
var defined = __webpack_require__(34);
module.exports = function (it) {
return Object(defined(it));
};
/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getFunctionBody = getFunctionBody;
exports.setDescriptor = setDescriptor;
exports.setDescriptors = setDescriptors;
exports.propertyIsAccessor = propertyIsAccessor;
exports.getInheritedDescriptor = getInheritedDescriptor;
exports.getInheritedPropertyNames = getInheritedPropertyNames;
exports.Constructor = Constructor;
exports.WeakTwoWayMap = void 0;
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function (key) {
_defineProperty(target, key, source[key]);
});
}
return target;
}
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
class WeakTwoWayMap {
constructor() {
this.m = new WeakMap();
}
set(a, b) {
this.m.set(a, b);
this.m.set(b, a);
}
get(item) {
return this.m.get(item);
}
has(item) {
return this.m.has(item);
}
}
exports.WeakTwoWayMap = WeakTwoWayMap;
// assumes the function opening, body, and closing are on separate lines
function getFunctionBody(fn) {
const code = fn.toString().split("\n");
code.shift(); // remove opening line (function() {)
code.pop(); // remove closing line (})
return code.join("\n");
}
const descriptorDefaults = {
enumerable: true,
configurable: true // makes it easier and less verbose to work with descriptors
};
function setDescriptor(obj, key, newDescriptor, inherited = false) {
let currentDescriptor = inherited ? getInheritedDescriptor(obj, key) : Object.getOwnPropertyDescriptor(obj, key);
newDescriptor = overrideDescriptor(currentDescriptor, newDescriptor);
Object.defineProperty(obj, key, newDescriptor);
}
function setDescriptors(obj, newDescriptors) {
let newDescriptor;
let currentDescriptor;
const currentDescriptors = Object.getOwnPropertyDescriptors(obj);
for (const key in newDescriptors) {
newDescriptor = newDescriptors[key];
currentDescriptor = currentDescriptors[key];
newDescriptors[key] = overrideDescriptor(currentDescriptor, newDescriptor);
}
Object.defineProperties(obj, newDescriptors);
}
function overrideDescriptor(oldDescriptor, newDescriptor) {
if (('get' in newDescriptor || 'set' in newDescriptor) && ('value' in newDescriptor || 'writable' in newDescriptor)) {
throw new TypeError('cannot specify both accessors and a value or writable attribute');
}
if (oldDescriptor) {
if ('get' in newDescriptor || 'set' in newDescriptor) {
delete oldDescriptor.value;
delete oldDescriptor.writable;
} else if ('value' in newDescriptor || 'writable' in newDescriptor) {
delete oldDescriptor.get;
delete oldDescriptor.set;
}
}
return _objectSpread({}, descriptorDefaults, oldDescriptor, newDescriptor);
}
function propertyIsAccessor(obj, key, inherited = true) {
let result = false;
let descriptor;
if (arguments.length === 1) {
descriptor = obj;
} else {
descriptor = inherited ? getInheritedDescriptor(obj, key) : Object.getOwnPropertyDescriptor(obj, key);
}
if (descriptor && (descriptor.get || descriptor.set)) result = true;
return result;
}
function getInheritedDescriptor(obj, key) {
let currentProto = obj;
let descriptor;
while (currentProto) {
descriptor = Object.getOwnPropertyDescriptor(currentProto, key);
if (descriptor) {
descriptor.owner = currentProto;
return descriptor;
}
currentProto = currentProto.__proto__;
}
}
function getInheritedPropertyNames(obj) {
let currentProto = obj;
let keys = [];
while (currentProto) {
keys = keys.concat(Object.getOwnPropertyNames(currentProto));
currentProto = currentProto.__proto__;
} // remove duplicates
keys = Array.from(new Set(keys));
return keys;
} // this is used for type casting in special cases, see the declaration file
function Constructor(Ctor) {
return Ctor;
}
/***/ }),
/* 19 */
/***/ (function(module, exports) {
module.exports = function (bitmap, value) {
return {
enumerable: !(bitmap & 1),
configurable: !(bitmap & 2),
writable: !(bitmap & 4),
value: value
};
};
/***/ }),
/* 20 */
/***/ (function(module, exports, __webpack_require__) {
var META = __webpack_require__(26)('meta');
var isObject = __webpack_require__(7);
var has = __webpack_require__(9);
var setDesc = __webpack_require__(5).f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
return true;
};
var FREEZE = !__webpack_require__(13)(function () {
return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
setDesc(it, META, { value: {
i: 'O' + ++id, // object ID
w: {} // weak collections IDs
} });
};
var fastKey = function (it, create) {
// return primitive with prefix
if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
if (!has(it, META)) {
// can't set metadata to uncaught frozen object
if (!isExtensible(it)) return 'F';
// not necessary to add metadata
if (!create) return 'E';
// add missing metadata
setMeta(it);
// return object ID
} return it[META].i;
};
var getWeak = function (it, create) {
if (!has(it, META)) {
// can't set metadata to uncaught frozen object
if (!isExtensible(it)) return true;
// not necessary to add metadata
if (!create) return false;
// add missing metadata
setMeta(it);
// return hash weak collections IDs
} return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
return it;
};
var meta = module.exports = {
KEY: META,
NEED: false,
fastKey: fastKey,
getWeak: getWeak,
onFreeze: onFreeze
};
/***/ }),
/* 21 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(60);
var enumBugKeys = __webpack_require__(40);
module.exports = Object.keys || function keys(O) {
return $keys(O, enumBugKeys);
};
/***/ }),
/* 22 */
/***/ (function(module, exports) {
module.exports = {};
/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {
var ctx = __webpack_require__(16);
var call = __webpack_require__(65);
var isArrayIter = __webpack_require__(66);
var anObject = __webpack_require__(14);
var toLength = __webpack_require__(29);
var getIterFn = __webpack_require__(67);
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
var f = ctx(fn, that, entries ? 2 : 1);
var index = 0;
var length, step, iterator, result;
if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
// fast case for arrays with default iterator
if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
if (result === BREAK || result === RETURN) return result;
} else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
result = call(iterator, f, step.value, entries);
if (result === BREAK || result === RETURN) return result;
}
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;
/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(7);
module.exports = function (it, TYPE) {
if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
return it;
};
/***/ }),
/* 25 */
/***/ (function(module, exports) {
exports.f = {}.propertyIsEnumerable;
/***/ }),
/* 26 */
/***/ (function(module, exports) {
var id = 0;
var px = Math.random();
module.exports = function (key) {
return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};
/***/ }),
/* 27 */
/***/ (function(module, exports) {
module.exports = true;
/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {
var def = __webpack_require__(5).f;
var has = __webpack_require__(9);
var TAG = __webpack_require__(2)('toStringTag');
module.exports = function (it, tag, stat) {
if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};
/***/ }),
/* 29 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.15 ToLength
var toInteger = __webpack_require__(38);
var min = Math.min;
module.exports = function (it) {
return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};
/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _isInBrowser = __webpack_require__(31);
var _isInBrowser2 = _interopRequireDefault(_isInBrowser);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var js = ''; /**
* Export javascript style and css style vendor prefixes.
* Based on "transform" support test.
*/
var css = '';
// We should not do anything if required serverside.
if (_isInBrowser2['default']) {
// Order matters. We need to check Webkit the last one because
// other vendors use to add Webkit prefixes to some properties
var jsCssMap = {
Moz: '-moz-',
// IE did it wrong again ...
ms: '-ms-',
O: '-o-',
Webkit: '-webkit-'
};
var style = document.createElement('p').style;
var testProp = 'Transform';
for (var key in jsCssMap) {
if (key + testProp in style) {
js = key;
css = jsCssMap[key];
break;
}
}
}
/**
* Vendor prefix string for the current browser.
*
* @type {{js: String, css: String}}
* @api public
*/
exports['default'] = { js: js, css: css };
/***/ }),
/* 31 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isBrowser", function() { return isBrowser; });
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof(document)) === 'object' && document.nodeType === 9;
/* harmony default export */ __webpack_exports__["default"] = (isBrowser);
/***/ }),
/* 32 */
/***/ (function(module, exports, __webpack_require__) {
// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(33);
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
return cof(it) == 'String' ? it.split('') : Object(it);
};
/***/ }),
/* 33 */
/***/ (function(module, exports) {
var toString = {}.toString;
module.exports = function (it) {
return toString.call(it).slice(8, -1);
};
/***/ }),
/* 34 */
/***/ (function(module, exports) {
// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
if (it == undefined) throw TypeError("Can't call method on " + it);
return it;
};
/***/ }),
/* 35 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(7);
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
if (!isObject(it)) return it;
var fn, val;
if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
throw TypeError("Can't convert object to primitive value");
};
/***/ }),
/* 36 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(10);
/***/ }),
/* 37 */
/***/ (function(module, exports, __webpack_require__) {
var core = __webpack_require__(1);
var global = __webpack_require__(4);
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});
(module.exports = function (key, value) {
return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
version: core.version,
mode: __webpack_require__(27) ? 'pure' : 'global',
copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
});
/***/ }),
/* 38 */
/***/ (function(module, exports) {
// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};
/***/ }),
/* 39 */
/***/ (function(module, exports, __webpack_require__) {
var shared = __webpack_require__(37)('keys');
var uid = __webpack_require__(26);
module.exports = function (key) {
return shared[key] || (shared[key] = uid(key));
};
/***/ }),
/* 40 */
/***/ (function(module, exports) {
// IE 8- don't enum bug keys
module.exports = (
'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');
/***/ }),
/* 41 */
/***/ (function(module, exports) {
exports.f = Object.getOwnPropertySymbols;
/***/ }),
/* 42 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(14);
var dPs = __webpack_require__(114);
var enumBugKeys = __webpack_require__(40);
var IE_PROTO = __webpack_require__(39)('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';
// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
// Thrash, waste and sodomy: IE GC bug
var iframe = __webpack_require__(56)('iframe');
var i = enumBugKeys.length;
var lt = '<';
var gt = '>';
var iframeDocument;
iframe.style.display = 'none';
__webpack_require__(115).appendChild(iframe);
iframe.src = 'javascript:'; // eslint-disable-line no-script-url
// createDict = iframe.contentWindow.Object;
// html.removeChild(iframe);
iframeDocument = iframe.contentWindow.document;
iframeDocument.open();
iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
iframeDocument.close();
createDict = iframeDocument.F;
while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
return createDict();
};
module.exports = Object.create || function create(O, Properties) {
var result;
if (O !== null) {
Empty[PROTOTYPE] = anObject(O);
result = new Empty();
Empty[PROTOTYPE] = null;
// add "__proto__" for Object.getPrototypeOf polyfill
result[IE_PROTO] = O;
} else result = createDict();
return Properties === undefined ? result : dPs(result, Properties);
};
/***/ }),
/* 43 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var LIBRARY = __webpack_require__(27);
var $export = __webpack_require__(8);
var redefine = __webpack_require__(36);
var hide = __webpack_require__(10);
var Iterators = __webpack_require__(22);
var $iterCreate = __webpack_require__(126);
var setToStringTag = __webpack_require__(28);
var getPrototypeOf = __webpack_require__(127);
var ITERATOR = __webpack_require__(2)('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';
var returnThis = function () { return this; };
module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
$iterCreate(Constructor, NAME, next);
var getMethod = function (kind) {
if (!BUGGY && kind in proto) return proto[kind];
switch (kind) {
case KEYS: return function keys() { return new Constructor(this, kind); };
case VALUES: return function values() { return new Constructor(this, kind); };
} return function entries() { return new Constructor(this, kind); };
};
var TAG = NAME + ' Iterator';
var DEF_VALUES = DEFAULT == VALUES;
var VALUES_BUG = false;
var proto = Base.prototype;
var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
var $default = $native || getMethod(DEFAULT);
var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
var methods, key, IteratorPrototype;
// Fix native
if ($anyNative) {
IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
// Set @@toStringTag to native iterators
setToStringTag(IteratorPrototype, TAG, true);
// fix for some old engines
if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
}
}
// fix Array#{values, @@iterator}.name in V8 / FF
if (DEF_VALUES && $native && $native.name !== VALUES) {
VALUES_BUG = true;
$default = function values() { return $native.call(this); };
}
// Define iterator
if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
hide(proto, ITERATOR, $default);
}
// Plug for library
Iterators[NAME] = $default;
Iterators[TAG] = returnThis;
if (DEFAULT) {
methods = {
values: DEF_VALUES ? $default : getMethod(VALUES),
keys: IS_SET ? $default : getMethod(KEYS),
entries: $entries
};
if (FORCED) for (key in methods) {
if (!(key in proto)) redefine(proto, key, methods[key]);
} else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
}
return methods;
};
/***/ }),
/* 44 */
/***/ (function(module, exports, __webpack_require__) {
var hide = __webpack_require__(10);
module.exports = function (target, src, safe) {
for (var key in src) {
if (safe && target[key]) target[key] = src[key];
else hide(target, key, src[key]);
} return target;
};
/***/ }),
/* 45 */
/***/ (function(module, exports) {
module.exports = function (it, Constructor, name, forbiddenField) {
if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
throw TypeError(name + ': incorrect invocation!');
} return it;
};
/***/ }),
/* 46 */
/***/ (function(module, exports, __webpack_require__) {
// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(16);
var IObject = __webpack_require__(32);
var toObject = __webpack_require__(17);
var toLength = __webpack_require__(29);
var asc = __webpack_require__(138);
module.exports = function (TYPE, $create) {
var IS_MAP = TYPE == 1;
var IS_FILTER = TYPE == 2;
var IS_SOME = TYPE == 3;
var IS_EVERY = TYPE == 4;
var IS_FIND_INDEX = TYPE == 6;
var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
var create = $create || asc;
return function ($this, callbackfn, that) {
var O = toObject($this);
var self = IObject(O);
var f = ctx(callbackfn, that, 3);
var length = toLength(self.length);
var index = 0;
var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
var val, res;
for (;length > index; index++) if (NO_HOLES || index in self) {
val = self[index];
res = f(val, index, O);
if (TYPE) {
if (IS_MAP) result[index] = res; // map
else if (res) switch (TYPE) {
case 3: return true; // some
case 5: return val; // find
case 6: return index; // findIndex
case 2: result.push(val); // filter
} else if (IS_EVERY) return false; // every
}
}
return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
};
};
/***/ }),
/* 47 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Mixin = exports.default = Mixin;
exports.WithDefault = WithDefault;
exports.Cached = Cached;
exports.HasInstance = HasInstance;
exports.ApplyDefault = ApplyDefault;
exports.Dedupe = Dedupe;
var _ = _interopRequireDefault(__webpack_require__(0));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i+