v-calendar
Version:
A clean and extendable plugin for building simple attributed calendars in Vue.js.
1,684 lines (1,333 loc) • 646 kB
JavaScript
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("vue"));
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["v-calendar"] = factory(require("vue"));
else
root["v-calendar"] = factory(root["Vue"]);
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {
return /******/ (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 = "fb15");
/******/ })
/************************************************************************/
/******/ ({
/***/ "00fd":
/***/ (function(module, exports, __webpack_require__) {
var Symbol = __webpack_require__("9e69");
/** Used for built-in method references. */
var objectProto = Object.prototype;
/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;
/**
* Used to resolve the
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
* of values.
*/
var nativeObjectToString = objectProto.toString;
/** Built-in value references. */
var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
/**
* A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
*
* @private
* @param {*} value The value to query.
* @returns {string} Returns the raw `toStringTag`.
*/
function getRawTag(value) {
var isOwn = hasOwnProperty.call(value, symToStringTag),
tag = value[symToStringTag];
try {
value[symToStringTag] = undefined;
var unmasked = true;
} catch (e) {}
var result = nativeObjectToString.call(value);
if (unmasked) {
if (isOwn) {
value[symToStringTag] = tag;
} else {
delete value[symToStringTag];
}
}
return result;
}
module.exports = getRawTag;
/***/ }),
/***/ "03dd":
/***/ (function(module, exports, __webpack_require__) {
var isPrototype = __webpack_require__("eac5"),
nativeKeys = __webpack_require__("57a5");
/** Used for built-in method references. */
var objectProto = Object.prototype;
/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;
/**
* The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
*
* @private
* @param {Object} object The object to query.
* @returns {Array} Returns the array of property names.
*/
function baseKeys(object) {
if (!isPrototype(object)) {
return nativeKeys(object);
}
var result = [];
for (var key in Object(object)) {
if (hasOwnProperty.call(object, key) && key != 'constructor') {
result.push(key);
}
}
return result;
}
module.exports = baseKeys;
/***/ }),
/***/ "0621":
/***/ (function(module, exports, __webpack_require__) {
var Symbol = __webpack_require__("9e69"),
isArguments = __webpack_require__("d370"),
isArray = __webpack_require__("6747");
/** Built-in value references. */
var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
/**
* Checks if `value` is a flattenable `arguments` object or array.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
*/
function isFlattenable(value) {
return isArray(value) || isArguments(value) ||
!!(spreadableSymbol && value && value[spreadableSymbol]);
}
module.exports = isFlattenable;
/***/ }),
/***/ "06cf":
/***/ (function(module, exports, __webpack_require__) {
var DESCRIPTORS = __webpack_require__("83ab");
var propertyIsEnumerableModule = __webpack_require__("d1e7");
var createPropertyDescriptor = __webpack_require__("5c6c");
var toIndexedObject = __webpack_require__("fc6a");
var toPrimitive = __webpack_require__("c04e");
var has = __webpack_require__("5135");
var IE8_DOM_DEFINE = __webpack_require__("0cfb");
var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// `Object.getOwnPropertyDescriptor` method
// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor
exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
O = toIndexedObject(O);
P = toPrimitive(P, true);
if (IE8_DOM_DEFINE) try {
return nativeGetOwnPropertyDescriptor(O, P);
} catch (error) { /* empty */ }
if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
};
/***/ }),
/***/ "0733":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return addTapOrClickHandler; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addHorizontalSwipeHandler; });
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2fa3");
/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("9404");
// This function detects taps or clicks
// Can't just rely on 'click' event because of oddities in mobile Safari
const addTapOrClickHandler = function (element, handler) {
if (!element || !element.addEventListener || !Object(___WEBPACK_IMPORTED_MODULE_1__[/* isFunction */ "k"])(handler)) {
return null;
} // State variables
let tap = false;
let disableClick = false;
const touchstart = function () {
return tap = true;
};
const touchmove = function () {
return tap = false;
};
const touchend = function (event) {
if (tap) {
// Reset state
tap = false; // Disable click so we don't call handler twice
disableClick = true;
handler(event);
return;
} // Make sure tap event hasn't disabled click
if (event.type === 'click' && !disableClick) {
handler(event);
} // Reset state
disableClick = false;
}; // Add event handlers
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'touchstart', touchstart, {
passive: true
});
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'touchmove', touchmove, {
passive: true
});
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'click', touchend, {
passive: true
});
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'touchend', touchend, {
passive: true
}); // Return function that removes event handlers
return function () {
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'touchstart', touchstart);
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'touchmove', touchmove);
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'click', touchend);
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'touchend', touchend);
};
};
const addHorizontalSwipeHandler = function (element, handler, {
maxSwipeTime,
minHorizontalSwipeDistance,
maxVerticalSwipeDistance
}) {
if (!element || !element.addEventListener || !Object(___WEBPACK_IMPORTED_MODULE_1__[/* isFunction */ "k"])(handler)) {
return null;
} // State variables
let startX = 0;
let startY = 0;
let startTime = null;
let isSwiping = false; // Touch start handler
function touchStart(e) {
const t = e.changedTouches[0];
startX = t.screenX;
startY = t.screenY;
startTime = new Date().getTime();
isSwiping = true;
} // Touch end handler
function touchEnd(e) {
if (!isSwiping) return;
isSwiping = false;
const t = e.changedTouches[0];
const deltaX = t.screenX - startX;
const deltaY = t.screenY - startY;
const deltaTime = new Date().getTime() - startTime;
if (deltaTime < maxSwipeTime) {
if (Math.abs(deltaX) >= minHorizontalSwipeDistance && Math.abs(deltaY) <= maxVerticalSwipeDistance) {
const arg = {
toLeft: false,
toRight: false
};
if (deltaX < 0) {
// Swipe to the left
arg.toLeft = true;
} else {
// Swipe to the right
arg.toRight = true;
}
handler(arg);
}
}
} // Add event handlers
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'touchstart', touchStart, {
passive: true
}); // on(element, 'touchmove', touchmove);
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* on */ "k"])(element, 'touchend', touchEnd, {
passive: true
}); // Return function that removes event handlers
return function () {
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'touchstart', touchStart); // off(element, 'touchmove', touchmove);
Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[/* off */ "j"])(element, 'touchend', touchEnd);
};
};
/***/ }),
/***/ "07c7":
/***/ (function(module, exports) {
/**
* This method returns `false`.
*
* @static
* @memberOf _
* @since 4.13.0
* @category Util
* @returns {boolean} Returns `false`.
* @example
*
* _.times(2, _.stubFalse);
* // => [false, false]
*/
function stubFalse() {
return false;
}
module.exports = stubFalse;
/***/ }),
/***/ "087d":
/***/ (function(module, exports) {
/**
* Appends the elements of `values` to `array`.
*
* @private
* @param {Array} array The array to modify.
* @param {Array} values The values to append.
* @returns {Array} Returns `array`.
*/
function arrayPush(array, values) {
var index = -1,
length = values.length,
offset = array.length;
while (++index < length) {
array[offset + index] = values[index];
}
return array;
}
module.exports = arrayPush;
/***/ }),
/***/ "08cc":
/***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__("1a8c");
/**
* Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` if suitable for strict
* equality comparisons, else `false`.
*/
function isStrictComparable(value) {
return value === value && !isObject(value);
}
module.exports = isStrictComparable;
/***/ }),
/***/ "08de":
/***/ (function(module, exports, __webpack_require__) {
// style-loader: Adds some css to the DOM by adding a <style> tag
// load the styles
var content = __webpack_require__("d2e1");
if(typeof content === 'string') content = [[module.i, content, '']];
if(content.locals) module.exports = content.locals;
// add the styles to the DOM
var add = __webpack_require__("499e").default
var update = add("1921c65a", content, true, {"sourceMap":false,"shadowMode":false});
/***/ }),
/***/ "0b07":
/***/ (function(module, exports, __webpack_require__) {
var baseIsNative = __webpack_require__("34ac"),
getValue = __webpack_require__("3698");
/**
* Gets the native function at `key` of `object`.
*
* @private
* @param {Object} object The object to query.
* @param {string} key The key of the method to get.
* @returns {*} Returns the function if it's native, else `undefined`.
*/
function getNative(object, key) {
var value = getValue(object, key);
return baseIsNative(value) ? value : undefined;
}
module.exports = getNative;
/***/ }),
/***/ "0cfb":
/***/ (function(module, exports, __webpack_require__) {
var DESCRIPTORS = __webpack_require__("83ab");
var fails = __webpack_require__("d039");
var createElement = __webpack_require__("cc12");
// Thank's IE8 for his funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
return Object.defineProperty(createElement('div'), 'a', {
get: function () { return 7; }
}).a != 7;
});
/***/ }),
/***/ "0d24":
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__("2b3e"),
stubFalse = __webpack_require__("07c7");
/** Detect free variable `exports`. */
var freeExports = true && exports && !exports.nodeType && exports;
/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;
/** Built-in value references. */
var Buffer = moduleExports ? root.Buffer : undefined;
/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
/**
* Checks if `value` is a buffer.
*
* @static
* @memberOf _
* @since 4.3.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
* @example
*
* _.isBuffer(new Buffer(2));
* // => true
*
* _.isBuffer(new Uint8Array(2));
* // => false
*/
var isBuffer = nativeIsBuffer || stubFalse;
module.exports = isBuffer;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("62e4")(module)))
/***/ }),
/***/ "0da5":
/***/ (function(module, exports, __webpack_require__) {
// Imports
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__("24fb");
exports = ___CSS_LOADER_API_IMPORT___(false);
// Module
exports.push([module.i, ".vc-nav-header{display:flex;justify-content:space-between}.vc-nav-arrow{display:flex;justify-content:center;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:var(--leading-snug);border-width:2px;border-style:solid;border-color:transparent;border-radius:var(--rounded)}.vc-nav-arrow.is-left{margin-right:auto}.vc-nav-arrow.is-right{margin-left:auto}.vc-nav-arrow.is-disabled{opacity:.25;pointer-events:none;cursor:not-allowed}.vc-nav-arrow:hover{background-color:var(--gray-900)}.vc-nav-arrow:focus{border-color:var(--accent-600)}.vc-nav-title{color:var(--accent-100);font-weight:var(--font-bold);line-height:var(--leading-snug);padding:4px 8px;border-radius:var(--rounded);border-width:2px;border-style:solid;border-color:transparent;-webkit-user-select:none;user-select:none}.vc-nav-title:hover{background-color:var(--gray-900)}.vc-nav-title:focus{border-color:var(--accent-600)}.vc-nav-items{display:grid;grid-template-columns:repeat(3,1fr);grid-row-gap:2px;grid-column-gap:5px}.vc-nav-item{width:48px;text-align:center;line-height:var(--leading-snug);font-weight:var(--font-semibold);padding:4px 0;cursor:pointer;border-color:transparent;border-width:2px;border-style:solid;border-radius:var(--rounded);-webkit-user-select:none;user-select:none}.vc-nav-item:hover{color:var(--white);background-color:var(--gray-900);box-shadow:var(--shadow-inner)}.vc-nav-item.is-active{color:var(--accent-900);background:var(--accent-100);font-weight:var(--font-bold);box-shadow:var(--shadow)}.vc-nav-item.is-current{color:var(--accent-100);font-weight:var(--bold);border-color:var(--accent-100)}.vc-nav-item:focus{border-color:var(--accent-600)}.vc-nav-item.is-disabled{opacity:.25;pointer-events:none}.vc-is-dark .vc-nav-title{color:var(--gray-900)}.vc-is-dark .vc-nav-title:hover{background-color:var(--gray-200)}.vc-is-dark .vc-nav-title:focus{border-color:var(--accent-400)}.vc-is-dark .vc-nav-arrow:hover{background-color:var(--gray-200)}.vc-is-dark .vc-nav-arrow:focus{border-color:var(--accent-400)}.vc-is-dark .vc-nav-item:hover{color:var(--gray-900);background-color:var(--gray-200);box-shadow:none}.vc-is-dark .vc-nav-item.is-active{color:var(--white);background:var(--accent-500)}.vc-is-dark .vc-nav-item.is-current{color:var(--accent-600);border-color:var(--accent-500)}.vc-is-dark .vc-nav-item:focus{border-color:var(--accent-400)}", ""]);
// Exports
module.exports = exports;
/***/ }),
/***/ "0f0f":
/***/ (function(module, exports, __webpack_require__) {
var copyObject = __webpack_require__("8eeb"),
keysIn = __webpack_require__("9934");
/**
* The base implementation of `_.assignIn` without support for multiple sources
* or `customizer` functions.
*
* @private
* @param {Object} object The destination object.
* @param {Object} source The source object.
* @returns {Object} Returns `object`.
*/
function baseAssignIn(object, source) {
return object && copyObject(source, keysIn(source), object);
}
module.exports = baseAssignIn;
/***/ }),
/***/ "0f5c":
/***/ (function(module, exports, __webpack_require__) {
var baseSet = __webpack_require__("159a");
/**
* Sets the value at `path` of `object`. If a portion of `path` doesn't exist,
* it's created. Arrays are created for missing index properties while objects
* are created for all other missing properties. Use `_.setWith` to customize
* `path` creation.
*
* **Note:** This method mutates `object`.
*
* @static
* @memberOf _
* @since 3.7.0
* @category Object
* @param {Object} object The object to modify.
* @param {Array|string} path The path of the property to set.
* @param {*} value The value to set.
* @returns {Object} Returns `object`.
* @example
*
* var object = { 'a': [{ 'b': { 'c': 3 } }] };
*
* _.set(object, 'a[0].b.c', 4);
* console.log(object.a[0].b.c);
* // => 4
*
* _.set(object, ['x', '0', 'y', 'z'], 5);
* console.log(object.x[0].y.z);
* // => 5
*/
function set(object, path, value) {
return object == null ? object : baseSet(object, path, value);
}
module.exports = set;
/***/ }),
/***/ "100e":
/***/ (function(module, exports, __webpack_require__) {
var identity = __webpack_require__("cd9d"),
overRest = __webpack_require__("2286"),
setToString = __webpack_require__("c1c9");
/**
* The base implementation of `_.rest` which doesn't validate or coerce arguments.
*
* @private
* @param {Function} func The function to apply a rest parameter to.
* @param {number} [start=func.length-1] The start position of the rest parameter.
* @returns {Function} Returns the new function.
*/
function baseRest(func, start) {
return setToString(overRest(func, start, identity), func + '');
}
module.exports = baseRest;
/***/ }),
/***/ "1041":
/***/ (function(module, exports, __webpack_require__) {
var copyObject = __webpack_require__("8eeb"),
getSymbolsIn = __webpack_require__("a029");
/**
* Copies own and inherited symbols of `source` to `object`.
*
* @private
* @param {Object} source The object to copy symbols from.
* @param {Object} [object={}] The object to copy symbols to.
* @returns {Object} Returns `object`.
*/
function copySymbolsIn(source, object) {
return copyObject(source, getSymbolsIn(source), object);
}
module.exports = copySymbolsIn;
/***/ }),
/***/ "1290":
/***/ (function(module, exports) {
/**
* Checks if `value` is suitable for use as unique object key.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is suitable, else `false`.
*/
function isKeyable(value) {
var type = typeof value;
return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
? (value !== '__proto__')
: (value === null);
}
module.exports = isKeyable;
/***/ }),
/***/ "1310":
/***/ (function(module, exports) {
/**
* Checks if `value` is object-like. A value is object-like if it's not `null`
* and has a `typeof` result of "object".
*
* @static
* @memberOf _
* @since 4.0.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
* @example
*
* _.isObjectLike({});
* // => true
*
* _.isObjectLike([1, 2, 3]);
* // => true
*
* _.isObjectLike(_.noop);
* // => false
*
* _.isObjectLike(null);
* // => false
*/
function isObjectLike(value) {
return value != null && typeof value == 'object';
}
module.exports = isObjectLike;
/***/ }),
/***/ "1315":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ setupScreens; });
// EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"}
var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf");
var external_commonjs_vue_commonjs2_vue_root_Vue_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_vue_commonjs2_vue_root_Vue_);
// EXTERNAL MODULE: ./src/utils/_.js
var _ = __webpack_require__("9404");
// CONCATENATED MODULE: ./src/utils/buildMediaQuery.js
// This function gratuitously borrowed from TailwindCSS
// https://github.com/tailwindcss/tailwindcss/blob/master/src/util/buildMediaQuery.js
function buildMediaQuery(screens) {
// Default min width
if (Object(_["n" /* isString */])(screens)) {
screens = {
min: screens
};
} // Wrap in array
if (!Object(_["h" /* isArray */])(screens)) {
screens = [screens];
}
return screens.map(function (screen) {
if (Object(_["e" /* has */])(screen, 'raw')) {
return screen.raw;
}
return Object(_["q" /* map */])(screen, function (value, feature) {
feature = Object(_["d" /* get */])({
min: 'min-width',
max: 'max-width'
}, feature, feature);
return `(${feature}: ${value})`;
}).join(' and ');
}).join(', ');
}
// EXTERNAL MODULE: ./src/utils/defaults/screens.json
var defaults_screens = __webpack_require__("85a9");
// CONCATENATED MODULE: ./src/utils/screens.js
// Vue won't get included in bundle as it is externalized
// https://cli.vuejs.org/guide/build-targets.html#library
let isSettingUp = false;
let shouldRefreshQueries = false;
let screensComp = null;
function setupScreens(screens = defaults_screens, forceSetup) {
if (screensComp && !forceSetup || isSettingUp) {
return;
}
isSettingUp = true;
shouldRefreshQueries = true; // Use a private Vue component to store reactive screen matches
screensComp = new external_commonjs_vue_commonjs2_vue_root_Vue_default.a({
data() {
return {
matches: [],
queries: []
};
},
methods: {
refreshQueries() {
var _this = this;
if (!window || !window.matchMedia) return;
this.queries = Object(_["r" /* mapValues */])(screens, function (v) {
const query = window.matchMedia(buildMediaQuery(v));
if (Object(_["k" /* isFunction */])(query.addEventListener)) {
query.addEventListener('change', _this.refreshMatches);
} else {
// Deprecated 'MediaQueryList' API, <Safari 14, <Edge 16
query.addListener(_this.refreshMatches);
}
return query;
});
this.refreshMatches();
},
refreshMatches() {
this.matches = Object(_["w" /* toPairs */])(this.queries).filter(function (p) {
return p[1].matches;
}).map(function (p) {
return p[0];
});
}
}
});
isSettingUp = false;
} // Global mixin that provides responsive '$screens' utility method
// that refreshes any time the screen matches update
external_commonjs_vue_commonjs2_vue_root_Vue_default.a.mixin({
beforeCreate() {
if (!isSettingUp) {
setupScreens();
}
},
mounted() {
if (shouldRefreshQueries && screensComp) {
screensComp.refreshQueries();
shouldRefreshQueries = false;
}
},
computed: {
$screens() {
return function (config, def) {
return screensComp.matches.reduce(function (prev, curr) {
return Object(_["e" /* has */])(config, curr) ? config[curr] : prev;
}, Object(_["o" /* isUndefined */])(def) ? config.default : def);
};
}
}
});
/***/ }),
/***/ "1368":
/***/ (function(module, exports, __webpack_require__) {
var coreJsData = __webpack_require__("da03");
/** Used to detect methods masquerading as native. */
var maskSrcKey = (function() {
var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
return uid ? ('Symbol(src)_1.' + uid) : '';
}());
/**
* Checks if `func` has its source masked.
*
* @private
* @param {Function} func The function to check.
* @returns {boolean} Returns `true` if `func` is masked, else `false`.
*/
function isMasked(func) {
return !!maskSrcKey && (maskSrcKey in func);
}
module.exports = isMasked;
/***/ }),
/***/ "1497":
/***/ (function(module, exports, __webpack_require__) {
// Imports
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__("24fb");
exports = ___CSS_LOADER_API_IMPORT___(false);
// Module
exports.push([module.i, ".vc-svg-icon[data-v-19b6cf78]{display:inline-block;stroke:currentColor;stroke-width:0}.vc-svg-icon path[data-v-19b6cf78]{fill:currentColor}", ""]);
// Exports
module.exports = exports;
/***/ }),
/***/ "14c3":
/***/ (function(module, exports, __webpack_require__) {
var classof = __webpack_require__("c6b6");
var regexpExec = __webpack_require__("9263");
// `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
var exec = R.exec;
if (typeof exec === 'function') {
var result = exec.call(R, S);
if (typeof result !== 'object') {
throw TypeError('RegExp exec method returned something other than an Object or null');
}
return result;
}
if (classof(R) !== 'RegExp') {
throw TypeError('RegExp#exec called on incompatible receiver');
}
return regexpExec.call(R, S);
};
/***/ }),
/***/ "159a":
/***/ (function(module, exports, __webpack_require__) {
var assignValue = __webpack_require__("32b3"),
castPath = __webpack_require__("e2e4"),
isIndex = __webpack_require__("c098"),
isObject = __webpack_require__("1a8c"),
toKey = __webpack_require__("f4d6");
/**
* The base implementation of `_.set`.
*
* @private
* @param {Object} object The object to modify.
* @param {Array|string} path The path of the property to set.
* @param {*} value The value to set.
* @param {Function} [customizer] The function to customize path creation.
* @returns {Object} Returns `object`.
*/
function baseSet(object, path, value, customizer) {
if (!isObject(object)) {
return object;
}
path = castPath(path, object);
var index = -1,
length = path.length,
lastIndex = length - 1,
nested = object;
while (nested != null && ++index < length) {
var key = toKey(path[index]),
newValue = value;
if (key === '__proto__' || key === 'constructor' || key === 'prototype') {
return object;
}
if (index != lastIndex) {
var objValue = nested[key];
newValue = customizer ? customizer(objValue, key, nested) : undefined;
if (newValue === undefined) {
newValue = isObject(objValue)
? objValue
: (isIndex(path[index + 1]) ? [] : {});
}
}
assignValue(nested, key, newValue);
nested = nested[key];
}
return object;
}
module.exports = baseSet;
/***/ }),
/***/ "15f3":
/***/ (function(module, exports, __webpack_require__) {
var basePickBy = __webpack_require__("89d9"),
hasIn = __webpack_require__("8604");
/**
* The base implementation of `_.pick` without support for individual
* property identifiers.
*
* @private
* @param {Object} object The source object.
* @param {string[]} paths The property paths to pick.
* @returns {Object} Returns the new object.
*/
function basePick(object, paths) {
return basePickBy(object, paths, function(value, path) {
return hasIn(object, path);
});
}
module.exports = basePick;
/***/ }),
/***/ "16c7":
/***/ (function(module, exports, __webpack_require__) {
// Imports
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__("24fb");
exports = ___CSS_LOADER_API_IMPORT___(false);
// Module
exports.push([module.i, ".vc-select[data-v-d1c68c60]{position:relative}.vc-select select[data-v-d1c68c60]{flex-grow:1;display:block;-webkit-appearance:none;appearance:none;width:52px;height:30px;font-size:var(--text-base);font-weight:var(--font-medium);text-align:left;background-color:var(--gray-200);border:2px solid;border-color:var(--gray-200);color:var(--gray-900);padding:0 20px 0 8px;border-radius:var(--rounded);line-height:var(--leading-tight);text-indent:0;cursor:pointer;-moz-padding-start:3px}.vc-select select[data-v-d1c68c60]:hover{color:var(--gray-600)}.vc-select select[data-v-d1c68c60]:focus{outline:0;border-color:var(--accent-400);background-color:var(--white)}.vc-select-arrow[data-v-d1c68c60]{display:flex;align-items:center;pointer-events:none;position:absolute;top:0;bottom:0;right:0;padding:0 4px 0 0;color:var(--gray-500)}.vc-select-arrow svg[data-v-d1c68c60]{width:16px;height:16px;fill:currentColor}.vc-is-dark select[data-v-d1c68c60]{background:var(--gray-700);color:var(--gray-100);border-color:var(--gray-700)}.vc-is-dark select[data-v-d1c68c60]:hover{color:var(--gray-400)}.vc-is-dark select[data-v-d1c68c60]:focus{border-color:var(--accent-500);background-color:var(--gray-800)}", ""]);
// Exports
module.exports = exports;
/***/ }),
/***/ "1838":
/***/ (function(module, exports, __webpack_require__) {
var baseIsEqual = __webpack_require__("c05f"),
get = __webpack_require__("9b02"),
hasIn = __webpack_require__("8604"),
isKey = __webpack_require__("f608"),
isStrictComparable = __webpack_require__("08cc"),
matchesStrictComparable = __webpack_require__("20ec"),
toKey = __webpack_require__("f4d6");
/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
COMPARE_UNORDERED_FLAG = 2;
/**
* The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
*
* @private
* @param {string} path The path of the property to get.
* @param {*} srcValue The value to match.
* @returns {Function} Returns the new spec function.
*/
function baseMatchesProperty(path, srcValue) {
if (isKey(path) && isStrictComparable(srcValue)) {
return matchesStrictComparable(toKey(path), srcValue);
}
return function(object) {
var objValue = get(object, path);
return (objValue === undefined && objValue === srcValue)
? hasIn(object, path)
: baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
};
}
module.exports = baseMatchesProperty;
/***/ }),
/***/ "18d8":
/***/ (function(module, exports, __webpack_require__) {
var memoizeCapped = __webpack_require__("234d");
/** Used to match property names within property paths. */
var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
/** Used to match backslashes in property paths. */
var reEscapeChar = /\\(\\)?/g;
/**
* Converts `string` to a property path array.
*
* @private
* @param {string} string The string to convert.
* @returns {Array} Returns the property path array.
*/
var stringToPath = memoizeCapped(function(string) {
var result = [];
if (string.charCodeAt(0) === 46 /* . */) {
result.push('');
}
string.replace(rePropName, function(match, number, quote, subString) {
result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
});
return result;
});
module.exports = stringToPath;
/***/ }),
/***/ "1a2d":
/***/ (function(module, exports, __webpack_require__) {
var getTag = __webpack_require__("42a2"),
isObjectLike = __webpack_require__("1310");
/** `Object#toString` result references. */
var mapTag = '[object Map]';
/**
* The base implementation of `_.isMap` without Node.js optimizations.
*
* @private
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is a map, else `false`.
*/
function baseIsMap(value) {
return isObjectLike(value) && getTag(value) == mapTag;
}
module.exports = baseIsMap;
/***/ }),
/***/ "1a8c":
/***/ (function(module, exports) {
/**
* Checks if `value` is the
* [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
* of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
*
* @static
* @memberOf _
* @since 0.1.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is an object, else `false`.
* @example
*
* _.isObject({});
* // => true
*
* _.isObject([1, 2, 3]);
* // => true
*
* _.isObject(_.noop);
* // => true
*
* _.isObject(null);
* // => false
*/
function isObject(value) {
var type = typeof value;
return value != null && (type == 'object' || type == 'function');
}
module.exports = isObject;
/***/ }),
/***/ "1bac":
/***/ (function(module, exports, __webpack_require__) {
var baseGetAllKeys = __webpack_require__("7d1f"),
getSymbolsIn = __webpack_require__("a029"),
keysIn = __webpack_require__("9934");
/**
* Creates an array of own and inherited enumerable property names and
* symbols of `object`.
*
* @private
* @param {Object} object The object to query.
* @returns {Array} Returns the array of property names and symbols.
*/
function getAllKeysIn(object) {
return baseGetAllKeys(object, keysIn, getSymbolsIn);
}
module.exports = getAllKeysIn;
/***/ }),
/***/ "1be4":
/***/ (function(module, exports, __webpack_require__) {
var getBuiltIn = __webpack_require__("d066");
module.exports = getBuiltIn('document', 'documentElement');
/***/ }),
/***/ "1c3c":
/***/ (function(module, exports, __webpack_require__) {
var Symbol = __webpack_require__("9e69"),
Uint8Array = __webpack_require__("2474"),
eq = __webpack_require__("9638"),
equalArrays = __webpack_require__("a2be"),
mapToArray = __webpack_require__("edfa"),
setToArray = __webpack_require__("ac41");
/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
COMPARE_UNORDERED_FLAG = 2;
/** `Object#toString` result references. */
var boolTag = '[object Boolean]',
dateTag = '[object Date]',
errorTag = '[object Error]',
mapTag = '[object Map]',
numberTag = '[object Number]',
regexpTag = '[object RegExp]',
setTag = '[object Set]',
stringTag = '[object String]',
symbolTag = '[object Symbol]';
var arrayBufferTag = '[object ArrayBuffer]',
dataViewTag = '[object DataView]';
/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
/**
* A specialized version of `baseIsEqualDeep` for comparing objects of
* the same `toStringTag`.
*
* **Note:** This function only supports comparing values with tags of
* `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
*
* @private
* @param {Object} object The object to compare.
* @param {Object} other The other object to compare.
* @param {string} tag The `toStringTag` of the objects to compare.
* @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
* @param {Function} customizer The function to customize comparisons.
* @param {Function} equalFunc The function to determine equivalents of values.
* @param {Object} stack Tracks traversed `object` and `other` objects.
* @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
*/
function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
switch (tag) {
case dataViewTag:
if ((object.byteLength != other.byteLength) ||
(object.byteOffset != other.byteOffset)) {
return false;
}
object = object.buffer;
other = other.buffer;
case arrayBufferTag:
if ((object.byteLength != other.byteLength) ||
!equalFunc(new Uint8Array(object), new Uint8Array(other))) {
return false;
}
return true;
case boolTag:
case dateTag:
case numberTag:
// Coerce booleans to `1` or `0` and dates to milliseconds.
// Invalid dates are coerced to `NaN`.
return eq(+object, +other);
case errorTag:
return object.name == other.name && object.message == other.message;
case regexpTag:
case stringTag:
// Coerce regexes to strings and treat strings, primitives and objects,
// as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
// for more details.
return object == (other + '');
case mapTag:
var convert = mapToArray;
case setTag:
var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
convert || (convert = setToArray);
if (object.size != other.size && !isPartial) {
return false;
}
// Assume cyclic values are equal.
var stacked = stack.get(object);
if (stacked) {
return stacked == other;
}
bitmask |= COMPARE_UNORDERED_FLAG;
// Recursively compare objects (susceptible to call stack limits).
stack.set(object, other);
var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
stack['delete'](object);
return result;
case symbolTag:
if (symbolValueOf) {
return symbolValueOf.call(object) == symbolValueOf.call(other);
}
}
return false;
}
module.exports = equalByTag;
/***/ }),
/***/ "1cec":
/***/ (function(module, exports, __webpack_require__) {
var getNative = __webpack_require__("0b07"),
root = __webpack_require__("2b3e");
/* Built-in method references that are verified to be native. */
var Promise = getNative(root, 'Promise');
module.exports = Promise;
/***/ }),
/***/ "1d80":
/***/ (function(module, exports) {
// `RequireObjectCoercible` abstract operation
// https://tc39.github.io/ecma262/#sec-requireobjectcoercible
module.exports = function (it) {
if (it == undefined) throw TypeError("Can't call method on " + it);
return it;
};
/***/ }),
/***/ "1efc":
/***/ (function(module, exports) {
/**
* Removes `key` and its value from the hash.
*
* @private
* @name delete
* @memberOf Hash
* @param {Object} hash The hash to modify.
* @param {string} key The key of the value to remove.
* @returns {boolean} Returns `true` if the entry was removed, else `false`.
*/
function hashDelete(key) {
var result = this.has(key) && delete this.__data__[key];
this.size -= result ? 1 : 0;
return result;
}
module.exports = hashDelete;
/***/ }),
/***/ "1fc8":
/***/ (function(module, exports, __webpack_require__) {
var getMapData = __webpack_require__("4245");
/**
* Sets the map `key` to `value`.
*
* @private
* @name set
* @memberOf MapCache
* @param {string} key The key of the value to set.
* @param {*} value The value to set.
* @returns {Object} Returns the map cache instance.
*/
function mapCacheSet(key, value) {
var data = getMapData(this, key),
size = data.size;
data.set(key, value);
this.size += data.size == size ? 0 : 1;
return this;
}
module.exports = mapCacheSet;
/***/ }),
/***/ "20ec":
/***/ (function(module, exports) {
/**
* A specialized version of `matchesProperty` for source values suitable
* for strict equality comparisons, i.e. `===`.
*
* @private
* @param {string} key The key of the property to get.
* @param {*} srcValue The value to match.
* @returns {Function} Returns the new spec function.
*/
function matchesStrictComparable(key, srcValue) {
return function(object) {
if (object == null) {
return false;
}
return object[key] === srcValue &&
(srcValue !== undefined || (key in Object(object)));
};
}
module.exports = matchesStrictComparable;
/***/ }),
/***/ "2286":
/***/ (function(module, exports, __webpack_require__) {
var apply = __webpack_require__("85e3");
/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;
/**
* A specialized version of `baseRest` which transforms the rest array.
*
* @private
* @param {Function} func The function to apply a rest parameter to.
* @param {number} [start=func.length-1] The start position of the rest parameter.
* @param {Function} transform The rest array transform.
* @returns {Function} Returns the new function.
*/
function overRest(func, start, transform) {
start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
return function() {
var args = arguments,
index = -1,
length = nativeMax(args.length - start, 0),
array = Array(length);
while (++index < length) {
array[index] = args[start + index];
}
index = -1;
var otherArgs = Array(start + 1);
while (++index < start) {
otherArgs[index] = args[index];
}
otherArgs[start] = transform(array);
return apply(func, this, otherArgs);
};
}
module.exports = overRest;
/***/ }),
/***/ "22f3":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Attribute; });
/* harmony import */ var _dateInfo__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("cfe5");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("2fa3");
/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("9404");
class Attribute {
constructor({
key,
hashcode,
highlight,
content,
dot,
bar,
popover,
dates,
excludeDates,
excludeMode,
customData,
order,
pinPage
}, theme, locale) {
this.key = Object(___WEBPACK_IMPORTED_MODULE_2__[/* isUndefined */ "o"])(key) ? Object(_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createGuid */ "c"])() : key;
this.hashcode = hashcode;
this.customData = customData;
this.order = order || 0;
this.dateOpts = {
order,
locale
};
this.pinPage = pinPage; // Normalize attribute types
if (highlight) {
this.highlight = theme.normalizeHighlight(highlight);
}
if (content) {
this.content = theme.normalizeContent(content);
}
if (dot) {
this.dot = theme.normalizeDot(dot);
}
if (bar) {
this.bar = theme.normalizeBar(bar);
}
if (popover) {
this.popover = popover;
} // Assign dates
this.dates = locale.normalizeDates(dates, this.dateOpts);
this.hasDates = !!Object(_helpers__WEBPACK_IMPORTED_MODULE_1__[/* arrayHasItems */ "b"])(this.dates); // Assign exclude dates
this.excludeDates = locale.normalizeDates(excludeDates, this.dateOpts);
this.hasExcludeDates = !!Object(_helpers__WEBPACK_IMPORTED_MODULE_1__[/* arrayHasItems */ "b"])(this.excludeDates);
this.excludeMode = excludeMode || 'intersects'; // Add infinite date range if excluded dates exist
if (this.hasExcludeDates && !this.hasDates) {
this.dates.push(new _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"]({}, this.dateOpts));
this.hasDates = true;
}
this.isComplex = Object(___WEBPACK_IMPORTED_MODULE_2__[/* some */ "v"])(this.dates, function (d) {
return d.isComplex;
});
} // Accepts: Date or date range object
// Returns: First date that partially intersects the given date
intersectsDate(date) {
date = date instanceof _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"] ? date : new _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"](date, this.dateOpts);
return !this.excludesDate(date) && (this.dates.find(function (d) {
return d.intersectsDate(date);
}) || false);
} // Accepts: Date or date range object
// Returns: First date that completely includes the given date
includesDate(date) {
date = date instanceof _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"] ? date : new _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"](date, this.dateOpts);
return !this.excludesDate(date) && (this.dates.find(function (d) {
return d.includesDate(date);
}) || false);
}
excludesDate(date) {
var _this = this;
date = date instanceof _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"] ? date : new _dateInfo__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"](date, this.dateOpts);
return this.hasExcludeDates && this.excludeDates.find(function (ed) {
return _this.excludeMode === 'intersects' && ed.intersectsDate(date) || _this.excludeMode === 'includes' && ed.includesDate(date);
});
} // Accepts: Day object
// Returns: First attribute date info that occurs on given day.
intersectsDay(day) {
return !this.excludesDay(day) && (this.dates.find(function (d) {
return d.intersectsDay(day);
}) || false);
}
excludesDay(day) {
return this.hasExcludeDates && this.excludeDates.find(function (ed) {
return ed.intersectsDay(day);
});
}
}
/***/ }),
/***/ "234d":
/***/ (function(module, exports, __webpack_require__) {
var memoize = __webpack_require__("e380");
/** Used as the maximum memoize cache size. */
var MAX_MEMOIZE_SIZE = 500;
/**
* A specialized version of `_.memoize` which clears the memoized function's
* cache when it exceeds `MAX_MEMOIZE_SIZE`.
*
* @private
* @param {Function} func The function to have its output memoized.
* @returns {Function} Returns the new memoized function.
*/
function memoizeCapped(func) {
var result = memoize(func, function(key) {
if (cache.size === MAX_MEMOIZE_SIZE) {
cache.clear();
}
return key;
});
var cache = result.cache;
return result;
}
module.exports = memoizeCapped;
/***/ }),
/***/ "23a5":
/***/ (function(module) {
module.exports = JSON.parse("{\"maxSwipeTime\":300,\"minHorizontalSwipeDistance\":60,\"maxVerticalSwipeDistance\":80}");
/***/ }),
/***/ "23cb":
/***/ (function(module, exports, __webpack_require__) {
var toInteger = __webpack_require__("a691");
var max = Math.max;
var min = Math.min;
// Helper for a popular repeating case of the spec:
// Let integer be ? ToInteger(index).
// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
module.exports = function (index, length) {
var integer = toInteger(index);
return integer < 0 ? max(integer + length, 0) : min(integer, length);
};
/***/ }),
/***/ "23e7":
/***/ (function(module, exports, __webpack_require__) {
var global = __webpack_require__("da84");
var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
var createNonEnumerableProperty = __webpack_require__("9112");
var redefine = __webpack_require__("6eeb");
var setGlobal = __webpack_require__("ce4e");
var copyConstructorProperties = __webpack_require__("e893");
var isForced = __webpack_require__("94ca");
/*
options.target - name of the target object
options.global - target is the global object
options.stat - export as static methods of target
options.proto - export as prototype methods of target
options.real - real prototype method for the `pure` version
op