/*!
* Cachu Slider v0.7.0 * Copyright (c) 2018 Mystro Ken <mystroken@gmail.com> * MIT License */
Cachu = /******/ (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, { /******/ configurable: false, /******/ enumerable: true, /******/ get: getter /******/ }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // 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 = 109); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (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
/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {
var store = __webpack_require__(50)('wks'); var uid = __webpack_require__(24); var Symbol = __webpack_require__(0).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;
/***/ }),
/* 2 */
/***/ (function(module, exports) {
var core = module.exports = { version: '2.5.7' }; if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
var global = __webpack_require__(0); var core = __webpack_require__(2); var ctx = __webpack_require__(10); var hide = __webpack_require__(9); var has = __webpack_require__(15); 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;
/***/ }),
/* 4 */
/***/ (function(module, exports) {
module.exports = function (it) {
return typeof it === 'object' ? it !== null : typeof it === 'function';
};
/***/ }),
/* 5 */
/***/ (function(module, exports, __webpack_require__) {
// Thank's IE8 for his funny defineProperty module.exports = !__webpack_require__(16)(function () {
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
var anObject = __webpack_require__(8); var IE8_DOM_DEFINE = __webpack_require__(106); var toPrimitive = __webpack_require__(105); var dP = Object.defineProperty;
exports.f = __webpack_require__(5) ? 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;
};
/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = { "default": __webpack_require__(108), __esModule: true };
/***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(4); module.exports = function (it) {
if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it;
};
/***/ }),
/* 9 */
/***/ (function(module, exports, __webpack_require__) {
var dP = __webpack_require__(6); var createDesc = __webpack_require__(55); module.exports = __webpack_require__(5) ? function (object, key, value) {
return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
object[key] = value; return object;
};
/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {
// optional / simple context binding var aFunction = __webpack_require__(17); 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); };
};
/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
}); exports.whichTransitionEvent = whichTransitionEvent; exports.whichAnimationEvent = whichAnimationEvent; exports.getSectionsMaxHeight = getSectionsMaxHeight; exports.addClass = addClass; // Constants var CACHU_MODE_FULL_PAGE = exports.CACHU_MODE_FULL_PAGE = "fullpage"; var CACHU_MODE_CONTENT_FIT = exports.CACHU_MODE_CONTENT_FIT = "content-fit";
// Function from David Walsh: http://davidwalsh.name/css-animation-callback function whichTransitionEvent() {
var t, el = document.createElement("fakeelement");
var transitions = { "transition": "transitionend", "OTransition": "oTransitionEnd", "MozTransition": "transitionend", "WebkitTransition": "webkitTransitionEnd" };
for (t in transitions) { if (el.style[t] !== undefined) { return transitions[t]; } }
}
function whichAnimationEvent() {
var t, el = document.createElement("fakeelement");
var animations = { "animation": "animationend", "OAnimation": "oAnimationEnd", "MozAnimation": "animationend", "WebkitAnimation": "webkitAnimationEnd" };
for (t in animations) { if (el.style[t] !== undefined) { return animations[t]; } }
}
/**
* * @param {NodeList} sections */
function getSectionsMaxHeight(sections) {
var maxHeight = 0;
for (var i = 0; i < sections.length; i++) { var section = sections[i]; var height = getOuterHeight(section); if (height > maxHeight) maxHeight = height; }
return maxHeight;
}
/**
* @param {NodeList} sections * @param {int} height */
var setSectionsHeight = exports.setSectionsHeight = function setSectionsHeight(sections, height) {
for (var i = 0; i < sections.length; i++) { var section = sections[i]; section.style.height = height + "px"; }
};
/**
* @param {NodeList} sections * @param {int} width */
var setSectionsWidth = exports.setSectionsWidth = function setSectionsWidth(sections, width) {
for (var i = 0; i < sections.length; i++) { var section = sections[i]; section.style.width = width + "px"; }
};
/**
* Adds a classname to an element. * * @param {HTMLElement} el * @param {string} className */
function addClass(el, className) {
if (el.classList) el.classList.add(className);else el.className += ' ' + className; return el;
}
/**
* Removes a classname from an element. * * @param {HTMLElement} el * @param {string} className */
var removeClass = exports.removeClass = function removeClass(el, className) {
//console.log(el); if (el.classList) el.classList.remove(className);else el.className = el.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' '); return el;
};
/**
* Checks if an elements has a specific classname. * * @param {HTMLElement} el * @param {string} className */
var hasClass = exports.hasClass = function hasClass(el, className) {
return el.classList ? el.classList.contains(className) : new RegExp('(^| )' + className + '( |$)', 'gi').test(el.className);
};
/**
* Returns the outer height of an element. * * @param {HTMLElement} el */
var getOuterHeight = exports.getOuterHeight = function getOuterHeight(el) {
var height = el.offsetHeight; var style = getComputedStyle(el);
height += parseInt(style.marginTop) + parseInt(style.marginBottom); return height;
};
/**
* @param {HTMLElement} el */
var getOuterWidth = exports.getOuterWidth = function getOuterWidth(el) {
var width = el.offsetWidth; var style = getComputedStyle(el);
width += parseInt(style.marginLeft) + parseInt(style.marginRight); return width;
};
/***/ }), /* 12 */ /***/ (function(module, exports, __webpack_require__) {
var ctx = __webpack_require__(10); var call = __webpack_require__(92); var isArrayIter = __webpack_require__(91); var anObject = __webpack_require__(8); var toLength = __webpack_require__(26); var getIterFn = __webpack_require__(90); 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;
/***/ }),
/* 13 */
/***/ (function(module, exports) {
var toString = {}.toString;
module.exports = function (it) {
return toString.call(it).slice(8, -1);
};
/***/ }),
/* 14 */
/***/ (function(module, exports) {
module.exports = {};
/***/ }),
/* 15 */
/***/ (function(module, exports) {
var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) {
return hasOwnProperty.call(it, key);
};
/***/ }),
/* 16 */
/***/ (function(module, exports) {
module.exports = function (exec) {
try { return !!exec(); } catch (e) { return true; }
};
/***/ }),
/* 17 */
/***/ (function(module, exports) {
module.exports = function (it) {
if (typeof it != 'function') throw TypeError(it + ' is not a function!'); return it;
};
/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {
var def = __webpack_require__(6).f; var has = __webpack_require__(15); var TAG = __webpack_require__(1)('toStringTag');
module.exports = function (it, tag, stat) {
if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};
/***/ }),
/* 19 */
/***/ (function(module, exports, __webpack_require__) {
var hide = __webpack_require__(9); 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;
};
/***/ }),
/* 20 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// 25.4.1.5 NewPromiseCapability(C) var aFunction = __webpack_require__(17);
function PromiseCapability(C) {
var resolve, reject; this.promise = new C(function ($$resolve, $$reject) { if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); resolve = $$resolve; reject = $$reject; }); this.resolve = aFunction(resolve); this.reject = aFunction(reject);
}
module.exports.f = function (C) {
return new PromiseCapability(C);
};
/***/ }),
/* 21 */
/***/ (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;
};
/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {
// getting tag from 19.1.3.6 Object.prototype.toString() var cof = __webpack_require__(13); var TAG = __webpack_require__(1)('toStringTag'); // ES3 wrong here var ARG = cof(function () { return arguments; }()) == 'Arguments';
// fallback for IE11 Script Access Denied error var tryGet = function (it, key) {
try { return it[key]; } catch (e) { /* empty */ }
};
module.exports = function (it) {
var O, T, B; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T // builtinTag case : ARG ? cof(O) // ES3 arguments fallback : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};
/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.13 ToObject(argument) var defined = __webpack_require__(31); module.exports = function (it) {
return Object(defined(it));
};
/***/ }),
/* 24 */
/***/ (function(module, exports) {
var id = 0; var px = Math.random(); module.exports = function (key) {
return 'Symbol('.concat(key === undefined ? : key, ')_', (++id + px).toString(36));
};
/***/ }),
/* 25 */
/***/ (function(module, exports, __webpack_require__) {
var shared = __webpack_require__(50)('keys'); var uid = __webpack_require__(24); module.exports = function (key) {
return shared[key] || (shared[key] = uid(key));
};
/***/ }),
/* 26 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.15 ToLength var toInteger = __webpack_require__(32); var min = Math.min; module.exports = function (it) {
return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};
/***/ }),
/* 27 */
/***/ (function(module, exports, __webpack_require__) {
// fallback for non-array-like ES3 and non-enumerable old V8 strings var cof = __webpack_require__(13); // eslint-disable-next-line no-prototype-builtins module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
return cof(it) == 'String' ? it.split() : Object(it);
};
/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {
// to indexed object, toObject with fallback for non-array-like ES3 strings var IObject = __webpack_require__(27); var defined = __webpack_require__(31); module.exports = function (it) {
return IObject(defined(it));
};
/***/ }),
/* 29 */
/***/ (function(module, exports) {
module.exports = true;
/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var LIBRARY = __webpack_require__(29); var $export = __webpack_require__(3); var redefine = __webpack_require__(102); var hide = __webpack_require__(9); var Iterators = __webpack_require__(14); var $iterCreate = __webpack_require__(101); var setToStringTag = __webpack_require__(18); var getPrototypeOf = __webpack_require__(96); var ITERATOR = __webpack_require__(1)('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;
};
/***/ }),
/* 31 */
/***/ (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;
};
/***/ }),
/* 32 */
/***/ (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);
};
/***/ }),
/* 33 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = { "default": __webpack_require__(104), __esModule: true };
/***/ }), /* 34 */ /***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(4); var document = __webpack_require__(0).document; // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) {
return is ? document.createElement(it) : {};
};
/***/ }),
/* 35 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _helpers = __webpack_require__(11);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuNavigationItem = function () { function CachuNavigationItem() { var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
_classCallCheck(this, CachuNavigationItem);
this.index = index;
/**
* Setting up the state */
this.state = { isInitialize: false };
/**
* Manipulated DOM Elements. */
this.elements = { container: document.createElement("li"), anchor: document.createElement("a"), span: document.createElement("span"), tooltip: document.createElement("span") };
// Init the stuff this.initialize(); }
_createClass(CachuNavigationItem, [{ key: "initialize", value: function initialize() { // Initializes the Tooltip. (0, _helpers.addClass)(this.elements.tooltip, "cachu__nav__tooltip");
// Initializes the span. // Nothing to do for the moment.
// Initializes the anchor. (0, _helpers.addClass)(this.elements.anchor, "cachu__nav__button"); //this.elements.anchor.appendChild(this.elements.span);
// Initalizes the list item element. (0, _helpers.addClass)(this.elements.container, "cachu__nav__item"); // Append tooltip if it exists. this.elements.container.appendChild(this.elements.tooltip); this.elements.container.appendChild(this.elements.anchor); }
/**
* @returns {Node} */
}, { key: "getNodeElement", value: function getNodeElement() { return this.elements.container; }
/**
* Adds a text to the tooltip. * * @param {string} text */
}, { key: "setTooltip", value: function setTooltip(text) { this.elements.tooltip.innerText = text; } }, { key: "activate", value: function activate() { (0, _helpers.addClass)(this.elements.container, "active"); } }, { key: "deactivate", value: function deactivate() { (0, _helpers.removeClass)(this.elements.container, "active"); } }]);
return CachuNavigationItem; }();
exports.default = CachuNavigationItem;
/***/ }), /* 36 */ /***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(4); module.exports = function (it, TYPE) {
if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); return it;
};
/***/ }),
/* 37 */
/***/ (function(module, exports, __webpack_require__) {
var META = __webpack_require__(24)('meta'); var isObject = __webpack_require__(4); var has = __webpack_require__(15); var setDesc = __webpack_require__(6).f; var id = 0; var isExtensible = Object.isExtensible || function () {
return true;
}; var FREEZE = !__webpack_require__(16)(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
};
/***/ }),
/* 38 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuSlideListItem = function () { /**
* * @param {CachuSlide} slide */
function CachuSlideListItem(slide) { var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
_classCallCheck(this, CachuSlideListItem);
this.index = index; this.slide = slide; this.next = null; this.prev = null; }
_createClass(CachuSlideListItem, [{ key: "enter", value: function enter() { var _this = this;
this.slide.navigationItem.activate();
var promise = // Trigger the before enter event this.slide.events.before.enter.trigger("!!!Trigger before entering!!!") // Manage the entering .then(function () { return _this.slide._enter(); }) // Trigger the after enter event .then(function () { return _this.slide.events.after.enter.trigger("!!!Trigger after entering!!!"); });
return promise; } }, { key: "leave", value: function leave() { var _this2 = this;
this.slide.navigationItem.deactivate();
var promise = // Trigger the before enter event this.slide.events.before.leave.trigger("!!!Trigger before leaving!!!") // Manage the entering of the slide .then(function () { return _this2.slide._leave(); }) // Trigger the after enter event .then(function () { return _this2.slide.events.after.leave.trigger("!!!Trigger after leaving!!!"); });
return promise; } }, { key: "setIndex", value: function setIndex(index) { this.index = index; this.slide.index = index; this.slide.navigationItem.index = index; } }]);
return CachuSlideListItem; }();
exports.default = CachuSlideListItem;
/***/ }), /* 39 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _promise = __webpack_require__(33);
var _promise2 = _interopRequireDefault(_promise);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuEvent = function () { function CachuEvent() { _classCallCheck(this, CachuEvent);
this.handlers = []; // Observers }
/**
* Adds an event handler. * * @param {function} fn */
_createClass(CachuEvent, [{
key: "addListener",
value: function addListener(fn) {
this.handlers.push(fn);
return this;
}
/**
* Removes an event handler. * * @param {function} fn */
}, { key: "removeListener", value: function removeListener(fn) { this.handlers = this.handlers.filter(function (handler) { if (handler !== fn) { return handler; } });
return this; }
/**
* Triggers the event and calls * all the handlers. * * @param {*} o * @param {*} thisObj * @returns {Promise} */
}, { key: "trigger", value: function trigger() { var o = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined; var thisObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
var promise = _promise2.default.all(this.handlers.map(function (promise) { return promise(); })); return promise; } }]);
return CachuEvent; }();
exports.default = CachuEvent;
/***/ }), /* 40 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _promise = __webpack_require__(33);
var _promise2 = _interopRequireDefault(_promise);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _cachuEvent = __webpack_require__(39);
var _cachuEvent2 = _interopRequireDefault(_cachuEvent);
var _helpers = __webpack_require__(11);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuSlide = function () { function CachuSlide(section, slider, navigationItem) { _classCallCheck(this, CachuSlide);
this.index = 0;
/**
* Setting up the state of * the animator */
this.state = { isInitialized: false, isPlaying: false };
this._actions = { enter: new _cachuEvent2.default(), leave: new _cachuEvent2.default() };
this.events = { after: { enter: new _cachuEvent2.default(), leave: new _cachuEvent2.default() }, before: { enter: new _cachuEvent2.default(), leave: new _cachuEvent2.default() } };
/**
* DOM Elements * manipulated by the animator. */
this.elements = { section: section };
/**
* Get the current slider. */
this.slider = slider;
/**
* The attached navigation item. * @property { CachuNavigationItem } */
this.navigationItem = navigationItem;
// Initiailze the slide this._initialize(); }
_createClass(CachuSlide, [{ key: "_enter", value: function _enter() { var _this = this;
return new _promise2.default(function (resolve, reject) {
// Attach the event listener for resolving after // scrolling transition, if it's necessary. if (_this.slider.options.scrollingSpeed > 0) { var transitionEvent = (0, _helpers.whichTransitionEvent)();
_this.slider.elements.container.addEventListener(transitionEvent, function (e) { e = window.event || e; e.cancelBubble = true; e.stopPropagation();
if (e.target === _this.slider.elements.container) { //addClass(this.elements.section, "active"); resolve(); } }, false); }
// Slide the container to the correct viewport. _this.slider.slideContainer(_this.index);
// If the scrolling speed is not // greater than zero, resolve immediatly. if (_this.slider.options.scrollingSpeed <= 0) { resolve(); } }); } }, { key: "_leave", value: function _leave() { var _this2 = this;
return new _promise2.default(function (resolve, reject) { _this2.deactivate(); resolve(); }); } }, { key: "deactivate", value: function deactivate() { //removeClass(this.elements.section, "active"); } }, { key: "_initialize", value: function _initialize() {} }]);
return CachuSlide; }();
exports.default = CachuSlide;
/***/ }), /* 41 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(0); var core = __webpack_require__(2); var dP = __webpack_require__(6); var DESCRIPTORS = __webpack_require__(5); var SPECIES = __webpack_require__(1)('species');
module.exports = function (KEY) {
var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY]; if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { configurable: true, get: function () { return this; } });
};
/***/ }),
/* 42 */
/***/ (function(module, exports, __webpack_require__) {
var anObject = __webpack_require__(8); var isObject = __webpack_require__(4); var newPromiseCapability = __webpack_require__(20);
module.exports = function (C, x) {
anObject(C); if (isObject(x) && x.constructor === C) return x; var promiseCapability = newPromiseCapability.f(C); var resolve = promiseCapability.resolve; resolve(x); return promiseCapability.promise;
};
/***/ }),
/* 43 */
/***/ (function(module, exports) {
module.exports = function (exec) {
try { return { e: false, v: exec() }; } catch (e) { return { e: true, v: e }; }
};
/***/ }),
/* 44 */
/***/ (function(module, exports, __webpack_require__) {
var ctx = __webpack_require__(10); var invoke = __webpack_require__(89); var html = __webpack_require__(48); var cel = __webpack_require__(34); var global = __webpack_require__(0); var process = global.process; var setTask = global.setImmediate; var clearTask = global.clearImmediate; var MessageChannel = global.MessageChannel; var Dispatch = global.Dispatch; var counter = 0; var queue = {}; var ONREADYSTATECHANGE = 'onreadystatechange'; var defer, channel, port; var run = function () {
var id = +this; // eslint-disable-next-line no-prototype-builtins if (queue.hasOwnProperty(id)) { var fn = queue[id]; delete queue[id]; fn(); }
}; var listener = function (event) {
run.call(event.data);
}; // Node.js 0.9+ & IE10+ has setImmediate, otherwise: if (!setTask || !clearTask) {
setTask = function setImmediate(fn) { var args = []; var i = 1; while (arguments.length > i) args.push(arguments[i++]); queue[++counter] = function () { // eslint-disable-next-line no-new-func invoke(typeof fn == 'function' ? fn : Function(fn), args); }; defer(counter); return counter; }; clearTask = function clearImmediate(id) { delete queue[id]; }; // Node.js 0.8- if (__webpack_require__(13)(process) == 'process') { defer = function (id) { process.nextTick(ctx(run, id, 1)); }; // Sphere (JS game engine) Dispatch API } else if (Dispatch && Dispatch.now) { defer = function (id) { Dispatch.now(ctx(run, id, 1)); }; // Browsers with MessageChannel, includes WebWorkers } else if (MessageChannel) { channel = new MessageChannel(); port = channel.port2; channel.port1.onmessage = listener; defer = ctx(port.postMessage, port, 1); // Browsers with postMessage, skip WebWorkers // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { defer = function (id) { global.postMessage(id + , '*'); }; global.addEventListener('message', listener, false); // IE8- } else if (ONREADYSTATECHANGE in cel('script')) { defer = function (id) { html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { html.removeChild(this); run.call(id); }; }; // Rest old browsers } else { defer = function (id) { setTimeout(ctx(run, id, 1), 0); }; }
} module.exports = {
set: setTask, clear: clearTask
};
/***/ }),
/* 45 */
/***/ (function(module, exports, __webpack_require__) {
// 7.3.20 SpeciesConstructor(O, defaultConstructor) var anObject = __webpack_require__(8); var aFunction = __webpack_require__(17); var SPECIES = __webpack_require__(1)('species'); module.exports = function (O, D) {
var C = anObject(O).constructor; var S; return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};
/***/ }),
/* 46 */
/***/ (function(module, exports) {
module.exports = function (done, value) {
return { value: value, done: !!done };
};
/***/ }),
/* 47 */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(95); var global = __webpack_require__(0); var hide = __webpack_require__(9); var Iterators = __webpack_require__(14); var TO_STRING_TAG = __webpack_require__(1)('toStringTag');
var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + 'TextTrackList,TouchList').split(',');
for (var i = 0; i < DOMIterables.length; i++) {
var NAME = DOMIterables[i]; var Collection = global[NAME]; var proto = Collection && Collection.prototype; if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); Iterators[NAME] = Iterators.Array;
}
/***/ }),
/* 48 */
/***/ (function(module, exports, __webpack_require__) {
var document = __webpack_require__(0).document; module.exports = document && document.documentElement;
/***/ }),
/* 49 */
/***/ (function(module, exports) {
// IE 8- don't enum bug keys module.exports = (
'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');
/***/ }),
/* 50 */
/***/ (function(module, exports, __webpack_require__) {
var core = __webpack_require__(2); var global = __webpack_require__(0); 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__(29) ? 'pure' : 'global', copyright: '© 2018 Denis Pushkarev (zloirock.ru)'
});
/***/ }),
/* 51 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.14 / 15.2.3.14 Object.keys(O) var $keys = __webpack_require__(99); var enumBugKeys = __webpack_require__(49);
module.exports = Object.keys || function keys(O) {
return $keys(O, enumBugKeys);
};
/***/ }),
/* 52 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) var anObject = __webpack_require__(8); var dPs = __webpack_require__(100); var enumBugKeys = __webpack_require__(49); var IE_PROTO = __webpack_require__(25)('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__(34)('iframe'); var i = enumBugKeys.length; var lt = '<'; var gt = '>'; var iframeDocument; iframe.style.display = 'none'; __webpack_require__(48).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);
};
/***/ }),
/* 53 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var $at = __webpack_require__(103)(true);
// 21.1.3.27 String.prototype[@@iterator]() __webpack_require__(30)(String, 'String', function (iterated) {
this._t = String(iterated); // target this._i = 0; // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next() }, function () {
var O = this._t; var index = this._i; var point; if (index >= O.length) return { value: undefined, done: true }; point = $at(O, index); this._i += point.length; return { value: point, done: false };
});
/***/ }),
/* 54 */
/***/ (function(module, exports) {
/***/ }), /* 55 */ /***/ (function(module, exports) {
module.exports = function (bitmap, value) {
return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value };
};
/***/ }),
/* 56 */
/***/ (function(module, exports) {
var g;
// This works in non-strict mode g = (function() { return this; })();
try { // This works if eval is allowed (see CSP) g = g || Function("return this")() || (1, eval)("this"); } catch (e) { // This works if the window reference is available if (typeof window === "object") g = window; }
// g can still be undefined, but nothing to do about it... // We return undefined, instead of nothing here, so it's // easier to handle this case. if(!global) { ...}
module.exports = g;
/***/ }),
/* 57 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(global) {/**
* lodash (Custom Build) <https://lodash.com/> * Build: `lodash modularize exports="npm" -o ./` * Copyright jQuery Foundation and other contributors <https://jquery.org/> * Released under MIT license <https://lodash.com/license> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors */
/** Used as the `TypeError` message for "Functions" methods. */ var FUNC_ERROR_TEXT = 'Expected a function';
/** Used as references for various `Number` constants. */ var NAN = 0 / 0;
/** `Object#toString` result references. */ var symbolTag = '[object Symbol]';
/** Used to match leading and trailing whitespace. */ var reTrim = /^\s+|\s+$/g;
/** Used to detect bad signed hexadecimal string values. */ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
/** Used to detect binary string values. */ var reIsBinary = /^0b[01]+$/i;
/** Used to detect octal string values. */ var reIsOctal = /^0o[0-7]+$/i;
/** Built-in method references without a dependency on `root`. */ var freeParseInt = parseInt;
/** Detect free variable `global` from Node.js. */ var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
/** Detect free variable `self`. */ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
/** Used as a reference to the global object. */ var root = freeGlobal || freeSelf || Function('return this')();
/** Used for built-in method references. */ var objectProto = Object.prototype;
/**
* Used to resolve the * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) * of values. */
var objectToString = objectProto.toString;
/* Built-in method references for those with the same name as other `lodash` methods. */ var nativeMax = Math.max,
nativeMin = Math.min;
/**
* Gets the timestamp of the number of milliseconds that have elapsed since * the Unix epoch (1 January 1970 00:00:00 UTC). * * @static * @memberOf _ * @since 2.4.0 * @category Date * @returns {number} Returns the timestamp. * @example * * _.defer(function(stamp) { * console.log(_.now() - stamp); * }, _.now()); * // => Logs the number of milliseconds it took for the deferred invocation. */
var now = function() {
return root.Date.now();
};
/**
* Creates a debounced function that delays invoking `func` until after `wait` * milliseconds have elapsed since the last time the debounced function was * invoked. The debounced function comes with a `cancel` method to cancel * delayed `func` invocations and a `flush` method to immediately invoke them. * Provide `options` to indicate whether `func` should be invoked on the * leading and/or trailing edge of the `wait` timeout. The `func` is invoked * with the last arguments provided to the debounced function. Subsequent * calls to the debounced function return the result of the last `func` * invocation. * * **Note:** If `leading` and `trailing` options are `true`, `func` is * invoked on the trailing edge of the timeout only if the debounced function * is invoked more than once during the `wait` timeout. * * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred * until to the next tick, similar to `setTimeout` with a timeout of `0`. * * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) * for details over the differences between `_.debounce` and `_.throttle`. * * @static * @memberOf _ * @since 0.1.0 * @category Function * @param {Function} func The function to debounce. * @param {number} [wait=0] The number of milliseconds to delay. * @param {Object} [options={}] The options object. * @param {boolean} [options.leading=false] * Specify invoking on the leading edge of the timeout. * @param {number} [options.maxWait] * The maximum time `func` is allowed to be delayed before it's invoked. * @param {boolean} [options.trailing=true] * Specify invoking on the trailing edge of the timeout. * @returns {Function} Returns the new debounced function. * @example * * // Avoid costly calculations while the window size is in flux. * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); * * // Invoke `sendMail` when clicked, debouncing subsequent calls. * jQuery(element).on('click', _.debounce(sendMail, 300, { * 'leading': true, * 'trailing': false * })); * * // Ensure `batchLog` is invoked once after 1 second of debounced calls. * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); * var source = new EventSource('/stream'); * jQuery(source).on('message', debounced); * * // Cancel the trailing debounced invocation. * jQuery(window).on('popstate', debounced.cancel); */
function debounce(func, wait, options) {
var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } wait = toNumber(wait) || 0; if (isObject(options)) { leading = !!options.leading; maxing = 'maxWait' in options; maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; trailing = 'trailing' in options ? !!options.trailing : trailing; }
function invokeFunc(time) { var args = lastArgs, thisArg = lastThis;
lastArgs = lastThis = undefined; lastInvokeTime = time; result = func.apply(thisArg, args); return result; }
function leadingEdge(time) { // Reset any `maxWait` timer. lastInvokeTime = time; // Start the timer for the trailing edge. timerId = setTimeout(timerExpired, wait); // Invoke the leading edge. return leading ? invokeFunc(time) : result; }
function remainingWait(time) { var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, result = wait - timeSinceLastCall;
return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result; }
function shouldInvoke(time) { var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
// Either this is the first call, activity has stopped and we're at the // trailing edge, the system time has gone backwards and we're treating // it as the trailing edge, or we've hit the `maxWait` limit. return (lastCallTime === undefined || (timeSinceLastCall >= wait) || (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); }
function timerExpired() { var time = now(); if (shouldInvoke(time)) { return trailingEdge(time); } // Restart the timer. timerId = setTimeout(timerExpired, remainingWait(time)); }
function trailingEdge(time) { timerId = undefined;
// Only invoke if we have `lastArgs` which means `func` has been // debounced at least once. if (trailing && lastArgs) { return invokeFunc(time); } lastArgs = lastThis = undefined; return result; }
function cancel() { if (timerId !== undefined) { clearTimeout(timerId); } lastInvokeTime = 0; lastArgs = lastCallTime = lastThis = timerId = undefined; }
function flush() { return timerId === undefined ? result : trailingEdge(now()); }
function debounced() { var time = now(), isInvoking = shouldInvoke(time);
lastArgs = arguments; lastThis = this; lastCallTime = time;
if (isInvoking) { if (timerId === undefined) { return leadingEdge(lastCallTime); } if (maxing) { // Handle invocations in a tight loop. timerId = setTimeout(timerExpired, wait); return invokeFunc(lastCallTime); } } if (timerId === undefined) { timerId = setTimeout(timerExpired, wait); } return result; } debounced.cancel = cancel; debounced.flush = flush; return debounced;
}
/**
* 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 && (type == 'object' || type == 'function');
}
/**
* 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 && typeof value == 'object';
}
/**
* Checks if `value` is classified as a `Symbol` primitive or object. * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. * @example * * _.isSymbol(Symbol.iterator); * // => true * * _.isSymbol('abc'); * // => false */
function isSymbol(value) {
return typeof value == 'symbol' || (isObjectLike(value) && objectToString.call(value) == symbolTag);
}
/**
* Converts `value` to a number. * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to process. * @returns {number} Returns the number. * @example * * _.toNumber(3.2); * // => 3.2 * * _.toNumber(Number.MIN_VALUE); * // => 5e-324 * * _.toNumber(Infinity); * // => Infinity * * _.toNumber('3.2'); * // => 3.2 */
function toNumber(value) {
if (typeof value == 'number') { return value; } if (isSymbol(value)) { return NAN; } if (isObject(value)) { var other = typeof value.valueOf == 'function' ? value.valueOf() : value; value = isObject(other) ? (other + ) : other; } if (typeof value != 'string') { return value === 0 ? value : +value; } value = value.replace(reTrim, ); var isBinary = reIsBinary.test(value); return (isBinary || reIsOctal.test(value)) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : (reIsBadHex.test(value) ? NAN : +value);
}
module.exports = debounce;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(56)))
/***/ }), /* 58 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://tc39.github.io/proposal-setmap-offrom/ var $export = __webpack_require__(3); var aFunction = __webpack_require__(17); var ctx = __webpack_require__(10); var forOf = __webpack_require__(12);
module.exports = function (COLLECTION) {
$export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { var mapFn = arguments[1]; var mapping, A, n, cb; aFunction(this); mapping = mapFn !== undefined; if (mapping) aFunction(mapFn); if (source == undefined) return new this(); A = []; if (mapping) { n = 0; cb = ctx(mapFn, arguments[2], 2); forOf(source, false, function (nextItem) { A.push(cb(nextItem, n++)); }); } else { forOf(source, false, A.push, A); } return new this(A); } });
};
/***/ }),
/* 59 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from __webpack_require__(58)('Set');
/***/ }),
/* 60 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://tc39.github.io/proposal-setmap-offrom/ var $export = __webpack_require__(3);
module.exports = function (COLLECTION) {
$export($export.S, COLLECTION, { of: function of() { var length = arguments.length; var A = new Array(length); while (length--) A[length] = arguments[length]; return new this(A); } });
};
/***/ }),
/* 61 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of __webpack_require__(60)('Set');
/***/ }),
/* 62 */
/***/ (function(module, exports, __webpack_require__) {
var forOf = __webpack_require__(12);
module.exports = function (iter, ITERATOR) {
var result = []; forOf(iter, false, result.push, result, ITERATOR); return result;
};
/***/ }),
/* 63 */
/***/ (function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON var classof = __webpack_require__(22); var from = __webpack_require__(62); module.exports = function (NAME) {
return function toJSON() { if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); return from(this); };
};
/***/ }),
/* 64 */
/***/ (function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON var $export = __webpack_require__(3);
$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(63)('Set') });
/***/ }),
/* 65 */
/***/ (function(module, exports, __webpack_require__) {
// 7.2.2 IsArray(argument) var cof = __webpack_require__(13); module.exports = Array.isArray || function isArray(arg) {
return cof(arg) == 'Array';
};
/***/ }),
/* 66 */
/***/ (function(module, exports, __webpack_require__) {
var isObject = __webpack_require__(4); var isArray = __webpack_require__(65); var SPECIES = __webpack_require__(1)('species');
module.exports = function (original) {
var C; if (isArray(original)) { C = original.constructor; // cross-realm fallback if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; if (isObject(C)) { C = C[SPECIES]; if (C === null) C = undefined; } } return C === undefined ? Array : C;
};
/***/ }),
/* 67 */
/***/ (function(module, exports, __webpack_require__) {
// 9.4.2.3 ArraySpeciesCreate(originalArray, length) var speciesConstructor = __webpack_require__(66);
module.exports = function (original, length) {
return new (speciesConstructor(original))(length);
};
/***/ }),
/* 68 */
/***/ (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__(10); var IObject = __webpack_require__(27); var toObject = __webpack_require__(23); var toLength = __webpack_require__(26); var asc = __webpack_require__(67); 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; };
};
/***/ }),
/* 69 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(0); var $export = __webpack_require__(3); var meta = __webpack_require__(37); var fails = __webpack_require__(16); var hide = __webpack_require__(9); var redefineAll = __webpack_require__(19); var forOf = __webpack_require__(12); var anInstance = __webpack_require__(21); var isObject = __webpack_require__(4); var setToStringTag = __webpack_require__(18); var dP = __webpack_require__(6).f; var each = __webpack_require__(68)(0); var DESCRIPTORS = __webpack_require__(5);
module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
var Base = global[NAME]; var C = Base; var ADDER = IS_MAP ? 'set' : 'add'; var proto = C && C.prototype; var O = {}; if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { new C().entries().next(); }))) { // create collection constructor C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); redefineAll(C.prototype, methods); meta.NEED = true; } else { C = wrapper(function (target, iterable) { anInstance(target, C, NAME, '_c'); target._c = new Base(); if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target); }); each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) { var IS_ADDER = KEY == 'add' || KEY == 'set'; if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) { anInstance(this, C, KEY); if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false; var result = this._c[KEY](a === 0 ? 0 : a, b); return IS_ADDER ? this : result; }); }); IS_WEAK || dP(C.prototype, 'size', { get: function () { return this._c.size; } }); }
setToStringTag(C, NAME);
O[NAME] = C; $export($export.G + $export.W + $export.F, O);
if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);
return C;
};
/***/ }),
/* 70 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var dP = __webpack_require__(6).f; var create = __webpack_require__(52); var redefineAll = __webpack_require__(19); var ctx = __webpack_require__(10); var anInstance = __webpack_require__(21); var forOf = __webpack_require__(12); var $iterDefine = __webpack_require__(30); var step = __webpack_require__(46); var setSpecies = __webpack_require__(41); var DESCRIPTORS = __webpack_require__(5); var fastKey = __webpack_require__(37).fastKey; var validate = __webpack_require__(36); var SIZE = DESCRIPTORS ? '_s' : 'size';
var getEntry = function (that, key) {
// fast case var index = fastKey(key); var entry; if (index !== 'F') return that._i[index]; // frozen object case for (entry = that._f; entry; entry = entry.n) { if (entry.k == key) return entry; }
};
module.exports = {
getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { var C = wrapper(function (that, iterable) { anInstance(that, C, NAME, '_i'); that._t = NAME; // collection type that._i = create(null); // index that._f = undefined; // first entry that._l = undefined; // last entry that[SIZE] = 0; // size if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); }); redefineAll(C.prototype, { // 23.1.3.1 Map.prototype.clear() // 23.2.3.2 Set.prototype.clear() clear: function clear() { for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { entry.r = true; if (entry.p) entry.p = entry.p.n = undefined; delete data[entry.i]; } that._f = that._l = undefined; that[SIZE] = 0; }, // 23.1.3.3 Map.prototype.delete(key) // 23.2.3.4 Set.prototype.delete(value) 'delete': function (key) { var that = validate(this, NAME); var entry = getEntry(that, key); if (entry) { var next = entry.n; var prev = entry.p; delete that._i[entry.i]; entry.r = true; if (prev) prev.n = next; if (next) next.p = prev; if (that._f == entry) that._f = next; if (that._l == entry) that._l = prev; that[SIZE]--; } return !!entry; }, // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) forEach: function forEach(callbackfn /* , that = undefined */) { validate(this, NAME); var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); var entry; while (entry = entry ? entry.n : this._f) { f(entry.v, entry.k, this); // revert to the last existing entry while (entry && entry.r) entry = entry.p; } }, // 23.1.3.7 Map.prototype.has(key) // 23.2.3.7 Set.prototype.has(value) has: function has(key) { return !!getEntry(validate(this, NAME), key); } }); if (DESCRIPTORS) dP(C.prototype, 'size', { get: function () { return validate(this, NAME)[SIZE]; } }); return C; }, def: function (that, key, value) { var entry = getEntry(that, key); var prev, index; // change existing entry if (entry) { entry.v = value; // create new entry } else { that._l = entry = { i: index = fastKey(key, true), // <- index k: key, // <- key v: value, // <- value p: prev = that._l, // <- previous entry n: undefined, // <- next entry r: false // <- removed }; if (!that._f) that._f = entry; if (prev) prev.n = entry; that[SIZE]++; // add to index if (index !== 'F') that._i[index] = entry; } return that; }, getEntry: getEntry, setStrong: function (C, NAME, IS_MAP) { // add .keys, .values, .entries, [@@iterator] // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 $iterDefine(C, NAME, function (iterated, kind) { this._t = validate(iterated, NAME); // target this._k = kind; // kind this._l = undefined; // previous }, function () { var that = this; var kind = that._k; var entry = that._l; // revert to the last existing entry while (entry && entry.r) entry = entry.p; // get next entry if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { // or finish the iteration that._t = undefined; return step(1); } // return step by kind if (kind == 'keys') return step(0, entry.k); if (kind == 'values') return step(0, entry.v); return step(0, [entry.k, entry.v]); }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
// add [@@species], 23.1.2.2, 23.2.2.2 setSpecies(NAME); }
};
/***/ }),
/* 71 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var strong = __webpack_require__(70); var validate = __webpack_require__(36); var SET = 'Set';
// 23.2 Set Objects module.exports = __webpack_require__(69)(SET, function (get) {
return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.2.3.1 Set.prototype.add(value) add: function add(value) { return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); }
}, strong);
/***/ }),
/* 72 */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(54); __webpack_require__(53); __webpack_require__(47); __webpack_require__(71); __webpack_require__(64); __webpack_require__(61); __webpack_require__(59); module.exports = __webpack_require__(2).Set;
/***/ }),
/* 73 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = { "default": __webpack_require__(72), __esModule: true };
/***/ }), /* 74 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _set = __webpack_require__(73);
var _set2 = _interopRequireDefault(_set);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _cachuNavigationItem = __webpack_require__(35);
var _cachuNavigationItem2 = _interopRequireDefault(_cachuNavigationItem);
var _helpers = __webpack_require__(11);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuNavigationList = function () { function CachuNavigationList() { _classCallCheck(this, CachuNavigationList);
/**
* Setting up the state */
this.state = { isInitialize: false };
/**
* Manipulated DOM Elements. */
this.elements = { container: document.createElement("ul") };
/**
* Set of CachuNavigationItems. */
this.items = new _set2.default(); }
_createClass(CachuNavigationList, [{ key: "has", value: function has(item) { return this.items.has(item); } }, { key: "add", value: function add(item) {
if (item instanceof _cachuNavigationItem2.default) { return this.items.add(item); }
return this; } }, { key: "delete", value: function _delete(item) { return this.items.delete(item); } }, { key: "forEach", value: function forEach(fn) { return this.items.forEach(fn); } }, { key: "generateNodeList", value: function generateNodeList() { var _this = this;
(0, _helpers.addClass)(this.elements.container, "cachu__nav__items");
this.items.forEach(function (item) {
_this.elements.container.appendChild(item.elements.container);
item.elements.container.addEventListener('mouseover', function (e) { _this.items.forEach(function (el) { return (0, _helpers.addClass)(el.elements.container, 'dismissed'); }); (0, _helpers.removeClass)(item.elements.container, 'dismissed'); (0, _helpers.addClass)(item.elements.container, 'mouseover'); });
item.elements.container.addEventListener('mouseout', function (e) { (0, _helpers.removeClass)(item.elements.container, 'mouseover'); _this.items.forEach(function (el) { return (0, _helpers.removeClass)(el.elements.container, 'dismissed'); }); }); });
return this.elements.container; } }]);
return CachuNavigationList; }();
exports.default = CachuNavigationList;
/***/ }), /* 75 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _cachuNavigationList = __webpack_require__(74);
var _cachuNavigationList2 = _interopRequireDefault(_cachuNavigationList);
var _helpers = __webpack_require__(11);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuNavigation = function () { function CachuNavigation() { _classCallCheck(this, CachuNavigation);
this.navigationList = new _cachuNavigationList2.default();
/**
* Manipulated DOM Elements. */
this.elements = { container: document.createElement("div") };
// Initializes the navigation. this.initialize(); }
/**
* Initialize the navigation. */
_createClass(CachuNavigation, [{
key: "initialize",
value: function initialize() {
// Set the container this.elements.container.setAttribute("id", "cachu-nav"); (0, _helpers.addClass)(this.elements.container, "cachu__nav"); }
/**
* Insert navigation to the DOM. */
}, { key: "render", value: function render() { var parentNode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var position = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'right';
// Retrieve the Navigation Items from the list. this.elements.container.appendChild(this.navigationList.generateNodeList());
// Set the position of the navigation (0, _helpers.addClass)(this.elements.container, 'cachu__nav--' + position);
// Insert to DOM. if (null === parentNode) document.body.appendChild(this.elements.container);else parentNode.appendChild(this.elements.container); } }]);
return CachuNavigation; }();
exports.default = CachuNavigation;
/***/ }), /* 76 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _slide = __webpack_require__(40);
var _slide2 = _interopRequireDefault(_slide);
var _slideListItem = __webpack_require__(38);
var _slideListItem2 = _interopRequireDefault(_slideListItem);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CachuSlideList = function () { function CachuSlideList() { _classCallCheck(this, CachuSlideList);
this.head = null; this.tail = null; this.length = 0; }
/**
* * @param { CachuSlide } slide */
_createClass(CachuSlideList, [{
key: "push",
value: function push(slide) {
if (!slide) return this;
var newSlide = new _slideListItem2.default(slide); newSlide.prev = this.tail;
if (this.tail) this.tail.next = newSlide;else this.head = newSlide;
this.tail = newSlide; newSlide.setIndex(this.length + 1);
this.length++; return this; }
/**
* @returns { CachuSlide|null } */
}, { key: "pop", value: function pop() { if (!this.tail) return null;
var slide = this.tail.slide; this.tail = this.tail.prev;
if (this.tail) this.tail.next = null;else this.head = null;
return slide; }
/**
* * @param { CachuSlide | int} slide * @returns { CachuSlideListItem } */
}, { key: "find", value: function find(slide) { var thisListItem = this.head; var slideIntVal = parseInt(slide);
while (thisListItem) {
if (slideIntVal > 0) { if (thisListItem.index === slideIntVal) { return thisListItem; } } else { if (thisListItem.slide === slide) { return thisListItem; } }
thisListItem = thisListItem.next; }
return thisListItem; } }]);
return CachuSlideList; }();
exports.default = CachuSlideList;
/***/ }), /* 77 */ /***/ (function(module, exports, __webpack_require__) {
/*
* Hamster.js v1.1.2 * (c) 2013 Monospaced http://monospaced.com * License: MIT */
(function(window, document){ 'use strict';
/**
* Hamster * use this to create instances * @returns {Hamster.Instance} * @constructor */
var Hamster = function(element) {
return new Hamster.Instance(element);
};
// default event name Hamster.SUPPORT = 'wheel';
// default DOM methods Hamster.ADD_EVENT = 'addEventListener'; Hamster.REMOVE_EVENT = 'removeEventListener'; Hamster.PREFIX = ;
// until browser inconsistencies have been fixed... Hamster.READY = false;
Hamster.Instance = function(element){
if (!Hamster.READY) { // fix browser inconsistencies Hamster.normalise.browser();
// Hamster is ready...! Hamster.READY = true; }
this.element = element;
// store attached event handlers this.handlers = [];
// return instance return this;
};
/**
* create new hamster instance * all methods should return the instance itself, so it is chainable. * @param {HTMLElement} element * @returns {Hamster.Instance} * @constructor */
Hamster.Instance.prototype = {
/** * bind events to the instance * @param {Function} handler * @param {Boolean} useCapture * @returns {Hamster.Instance} */ wheel: function onEvent(handler, useCapture){ Hamster.event.add(this, Hamster.SUPPORT, handler, useCapture);
// handle MozMousePixelScroll in older Firefox if (Hamster.SUPPORT === 'DOMMouseScroll') { Hamster.event.add(this, 'MozMousePixelScroll', handler, useCapture); }
return this; },
/** * unbind events to the instance * @param {Function} handler * @param {Boolean} useCapture * @returns {Hamster.Instance} */ unwheel: function offEvent(handler, useCapture){ // if no handler argument, // unbind the last bound handler (if exists) if (handler === undefined && (handler = this.handlers.slice(-1)[0])) { handler = handler.original; }
Hamster.event.remove(this, Hamster.SUPPORT, handler, useCapture);
// handle MozMousePixelScroll in older Firefox if (Hamster.SUPPORT === 'DOMMouseScroll') { Hamster.event.remove(this, 'MozMousePixelScroll', handler, useCapture); }
return this; }
};
Hamster.event = {
/** * cross-browser 'addWheelListener' * @param {Instance} hamster * @param {String} eventName * @param {Function} handler * @param {Boolean} useCapture */ add: function add(hamster, eventName, handler, useCapture){ // store the original handler var originalHandler = handler;
// redefine the handler handler = function(originalEvent){
if (!originalEvent) { originalEvent = window.event; }
// create a normalised event object, // and normalise "deltas" of the mouse wheel var event = Hamster.normalise.event(originalEvent), delta = Hamster.normalise.delta(originalEvent);
// fire the original handler with normalised arguments return originalHandler(event, delta[0], delta[1], delta[2]);
};
// cross-browser addEventListener hamster.element[Hamster.ADD_EVENT](Hamster.PREFIX + eventName, handler, useCapture || false);
// store original and normalised handlers on the instance hamster.handlers.push({ original: originalHandler, normalised: handler }); },
/** * removeWheelListener * @param {Instance} hamster * @param {String} eventName * @param {Function} handler * @param {Boolean} useCapture */ remove: function remove(hamster, eventName, handler, useCapture){ // find the normalised handler on the instance var originalHandler = handler, lookup = {}, handlers; for (var i = 0, len = hamster.handlers.length; i < len; ++i) { lookup[hamster.handlers[i].original] = hamster.handlers[i]; } handlers = lookup[originalHandler]; handler = handlers.normalised;
// cross-browser removeEventListener hamster.element[Hamster.REMOVE_EVENT](Hamster.PREFIX + eventName, handler, useCapture || false);
// remove original and normalised handlers from the instance for (var h in hamster.handlers) { if (hamster.handlers[h] == handlers) { hamster.handlers.splice(h, 1); break; } } }
};
/**
* these hold the lowest deltas, * used to normalise the delta values * @type {Number} */
var lowestDelta,
lowestDeltaXY;
Hamster.normalise = {
/** * fix browser inconsistencies */ browser: function normaliseBrowser(){ // detect deprecated wheel events if (!('onwheel' in document || document.documentMode >= 9)) { Hamster.SUPPORT = document.onmousewheel !== undefined ? 'mousewheel' : // webkit and IE < 9 support at least "mousewheel" 'DOMMouseScroll'; // assume remaining browsers are older Firefox }
// detect deprecated event model if (!window.addEventListener) { // assume IE < 9 Hamster.ADD_EVENT = 'attachEvent'; Hamster.REMOVE_EVENT = 'detachEvent'; Hamster.PREFIX = 'on'; }
},
/** * create a normalised event object * @param {Function} originalEvent * @returns {Object} event */ event: function normaliseEvent(originalEvent){ var event = { // keep a reference to the original event object originalEvent: originalEvent, target: originalEvent.target || originalEvent.srcElement, type: 'wheel', deltaMode: originalEvent.type === 'MozMousePixelScroll' ? 0 : 1, deltaX: 0, deltaZ: 0, preventDefault: function(){ if (originalEvent.preventDefault) { originalEvent.preventDefault(); } else { originalEvent.returnValue = false; } }, stopPropagation: function(){ if (originalEvent.stopPropagation) { originalEvent.stopPropagation(); } else { originalEvent.cancelBubble = false; } } };
// calculate deltaY (and deltaX) according to the event
// 'mousewheel' if (originalEvent.wheelDelta) { event.deltaY = - 1/40 * originalEvent.wheelDelta; } // webkit if (originalEvent.wheelDeltaX) { event.deltaX = - 1/40 * originalEvent.wheelDeltaX; }
// 'DomMouseScroll' if (originalEvent.detail) { event.deltaY = originalEvent.detail; }
return event; },
/** * normalise 'deltas' of the mouse wheel * @param {Function} originalEvent * @returns {Array} deltas */ delta: function normaliseDelta(originalEvent){ var delta = 0, deltaX = 0, deltaY = 0, absDelta = 0, absDeltaXY = 0, fn;
// normalise deltas according to the event
// 'wheel' event if (originalEvent.deltaY) { deltaY = originalEvent.deltaY * -1; delta = deltaY; } if (originalEvent.deltaX) { deltaX = originalEvent.deltaX; delta = deltaX * -1; }
// 'mousewheel' event if (originalEvent.wheelDelta) { delta = originalEvent.wheelDelta; } // webkit if (originalEvent.wheelDeltaY) { deltaY = originalEvent.wheelDeltaY; } if (originalEvent.wheelDeltaX) { deltaX = originalEvent.wheelDeltaX * -1; }
// 'DomMouseScroll' event if (originalEvent.detail) { delta = originalEvent.detail * -1; }
// Don't return NaN if (delta === 0) { return [0, 0, 0]; }
// look for lowest delta to normalize the delta values absDelta = Math.abs(delta); if (!lowestDelta || absDelta < lowestDelta) { lowestDelta = absDelta; } absDeltaXY = Math.max(Math.abs(deltaY), Math.abs(deltaX)); if (!lowestDeltaXY || absDeltaXY < lowestDeltaXY) { lowestDeltaXY = absDeltaXY; }
// convert deltas to whole numbers fn = delta > 0 ? 'floor' : 'ceil'; delta = Math[fn](delta / lowestDelta); deltaX = Math[fn](deltaX / lowestDeltaXY); deltaY = Math[fn](deltaY / lowestDeltaXY);
return [delta, deltaX, deltaY]; }
};
if (typeof window.define === 'function' && window.define.amd) {
// AMD window.define('hamster', [], function(){ return Hamster; });
} else if (true) {
// CommonJS module.exports = Hamster;
} else {}
})(window, window.document);
/***/ }),
/* 78 */
/***/ (function(module, exports) {
exports.f = {}.propertyIsEnumerable;
/***/ }),
/* 79 */
/***/ (function(module, exports) {
exports.f = Object.getOwnPropertySymbols;
/***/ }),
/* 80 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// 19.1.2.1 Object.assign(target, source, ...) var getKeys = __webpack_require__(51); var gOPS = __webpack_require__(79); var pIE = __webpack_require__(78); var toObject = __webpack_require__(23); var IObject = __webpack_require__(27); var $assign = Object.assign;
// should work with symbols and should have deterministic property order (V8 bug) module.exports = !$assign || __webpack_require__(16)(function () {
var A = {}; var B = {}; // eslint-disable-next-line no-undef var S = Symbol(); var K = 'abcdefghijklmnopqrst'; A[S] = 7; K.split().forEach(function (k) { B[k] = k; }); return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join() != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
var T = toObject(target); var aLen = arguments.length; var index = 1; var getSymbols = gOPS.f; var isEnum = pIE.f; while (aLen > index) { var S = IObject(arguments[index++]); var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); var length = keys.length; var j = 0; var key; while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; } return T;
} : $assign;
/***/ }),
/* 81 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.3.1 Object.assign(target, source) var $export = __webpack_require__(3);
$export($export.S + $export.F, 'Object', { assign: __webpack_require__(80) });
/***/ }),
/* 82 */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(81); module.exports = __webpack_require__(2).Object.assign;
/***/ }),
/* 83 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = { "default": __webpack_require__(82), __esModule: true };
/***/ }), /* 84 */ /***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://github.com/tc39/proposal-promise-try var $export = __webpack_require__(3); var newPromiseCapability = __webpack_require__(20); var perform = __webpack_require__(43);
$export($export.S, 'Promise', { 'try': function (callbackfn) {
var promiseCapability = newPromiseCapability.f(this); var result = perform(callbackfn); (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); return promiseCapability.promise;
} });
/***/ }),
/* 85 */
/***/ (function(module, exports, __webpack_require__) {
"use strict"; // https://github.com/tc39/proposal-promise-finally
var $export = __webpack_require__(3); var core = __webpack_require__(2); var global = __webpack_require__(0); var speciesConstructor = __webpack_require__(45); var promiseResolve = __webpack_require__(42);
$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
var C = speciesConstructor(this, core.Promise || global.Promise); var isFunction = typeof onFinally == 'function'; return this.then( isFunction ? function (x) { return promiseResolve(C, onFinally()).then(function () { return x; }); } : onFinally, isFunction ? function (e) { return promiseResolve(C, onFinally()).then(function () { throw e; }); } : onFinally );
} });
/***/ }),
/* 86 */
/***/ (function(module, exports, __webpack_require__) {
var ITERATOR = __webpack_require__(1)('iterator'); var SAFE_CLOSING = false;
try {
var riter = [7][ITERATOR](); riter['return'] = function () { SAFE_CLOSING = true; }; // eslint-disable-next-line no-throw-literal Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }
module.exports = function (exec, skipClosing) {
if (!skipClosing && !SAFE_CLOSING) return false; var safe = false; try { var arr = [7]; var iter = arr[ITERATOR](); iter.next = function () { return { done: safe = true }; }; arr[ITERATOR] = function () { return iter; }; exec(arr); } catch (e) { /* empty */ } return safe;
};
/***/ }),
/* 87 */
/***/ (function(module, exports, __webpack_require__) {
var global = __webpack_require__(0); var navigator = global.navigator;
module.exports = navigator && navigator.userAgent || ;
/***/ }),
/* 88 */
/***/ (function(module, exports, __webpack_require__) {
var global = __webpack_require__(0); var macrotask = __webpack_require__(44).set; var Observer = global.MutationObserver || global.WebKitMutationObserver; var process = global.process; var Promise = global.Promise; var isNode = __webpack_require__(13)(process) == 'process';
module.exports = function () {
var head, last, notify;
var flush = function () { var parent, fn; if (isNode && (parent = process.domain)) parent.exit(); while (head) { fn = head.fn; head = head.next; try { fn(); } catch (e) { if (head) notify(); else last = undefined; throw e; } } last = undefined; if (parent) parent.enter(); };
// Node.js if (isNode) { notify = function () { process.nextTick(flush); }; // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 } else if (Observer && !(global.navigator && global.navigator.standalone)) { var toggle = true; var node = document.createTextNode(); new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new notify = function () { node.data = toggle = !toggle; }; // environments with maybe non-completely correct, but existent Promise } else if (Promise && Promise.resolve) { // Promise.resolve without an argument throws an error in LG WebOS 2 var promise = Promise.resolve(undefined); notify = function () { promise.then(flush); }; // for other environments - macrotask based on: // - setImmediate // - MessageChannel // - window.postMessag // - onreadystatechange // - setTimeout } else { notify = function () { // strange IE + webpack dev server bug - use .call(global) macrotask.call(global, flush); }; }
return function (fn) { var task = { fn: fn, next: undefined }; if (last) last.next = task; if (!head) { head = task; notify(); } last = task; };
};
/***/ }),
/* 89 */
/***/ (function(module, exports) {
// fast apply, http://jsperf.lnkit.com/fast-apply/5 module.exports = function (fn, args, that) {
var un = that === undefined; switch (args.length) { case 0: return un ? fn() : fn.call(that); case 1: return un ? fn(args[0]) : fn.call(that, args[0]); case 2: return un ? fn(args[0], args[1]) : fn.call(that, args[0], args[1]); case 3: return un ? fn(args[0], args[1], args[2]) : fn.call(that, args[0], args[1], args[2]); case 4: return un ? fn(args[0], args[1], args[2], args[3]) : fn.call(that, args[0], args[1], args[2], args[3]); } return fn.apply(that, args);
};
/***/ }),
/* 90 */
/***/ (function(module, exports, __webpack_require__) {
var classof = __webpack_require__(22); var ITERATOR = __webpack_require__(1)('iterator'); var Iterators = __webpack_require__(14); module.exports = __webpack_require__(2).getIteratorMethod = function (it) {
if (it != undefined) return it[ITERATOR] || it['@@iterator'] || Iterators[classof(it)];
};
/***/ }),
/* 91 */
/***/ (function(module, exports, __webpack_require__) {
// check on default Array iterator var Iterators = __webpack_require__(14); var ITERATOR = __webpack_require__(1)('iterator'); var ArrayProto = Array.prototype;
module.exports = function (it) {
return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};
/***/ }),
/* 92 */
/***/ (function(module, exports, __webpack_require__) {
// call something on iterator step with safe closing on error var anObject = __webpack_require__(8); module.exports = function (iterator, fn, value, entries) {
try { return entries ? fn(anObject(value)[0], value[1]) : fn(value); // 7.4.6 IteratorClose(iterator, completion) } catch (e) { var ret = iterator['return']; if (ret !== undefined) anObject(ret.call(iterator)); throw e; }
};
/***/ }),
/* 93 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var LIBRARY = __webpack_require__(29); var global = __webpack_require__(0); var ctx = __webpack_require__(10); var classof = __webpack_require__(22); var $export = __webpack_require__(3); var isObject = __webpack_require__(4); var aFunction = __webpack_require__(17); var anInstance = __webpack_require__(21); var forOf = __webpack_require__(12); var speciesConstructor = __webpack_require__(45); var task = __webpack_require__(44).set; var microtask = __webpack_require__(88)(); var newPromiseCapabilityModule = __webpack_require__(20); var perform = __webpack_require__(43); var userAgent = __webpack_require__(87); var promiseResolve = __webpack_require__(42); var PROMISE = 'Promise'; var TypeError = global.TypeError; var process = global.process; var versions = process && process.versions; var v8 = versions && versions.v8 || ; var $Promise = global[PROMISE]; var isNode = classof(process) == 'process'; var empty = function () { /* empty */ }; var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
var USE_NATIVE = !!function () {
try { // correct subclassing with @@species support var promise = $Promise.resolve(1); var FakePromise = (promise.constructor = {})[__webpack_require__(1)('species')] = function (exec) { exec(empty, empty); }; // unhandled rejections tracking support, NodeJS Promise without it fails @@species test return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 // we can't detect it synchronously, so just check versions && v8.indexOf('6.6') !== 0 && userAgent.indexOf('Chrome/66') === -1; } catch (e) { /* empty */ }
}();
// helpers var isThenable = function (it) {
var then; return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
}; var notify = function (promise, isReject) {
if (promise._n) return; promise._n = true; var chain = promise._c; microtask(function () { var value = promise._v; var ok = promise._s == 1; var i = 0; var run = function (reaction) { var handler = ok ? reaction.ok : reaction.fail; var resolve = reaction.resolve; var reject = reaction.reject; var domain = reaction.domain; var result, then, exited; try { if (handler) { if (!ok) { if (promise._h == 2) onHandleUnhandled(promise); promise._h = 1; } if (handler === true) result = value; else { if (domain) domain.enter(); result = handler(value); // may throw if (domain) { domain.exit(); exited = true; } } if (result === reaction.promise) { reject(TypeError('Promise-chain cycle')); } else if (then = isThenable(result)) { then.call(result, resolve, reject); } else resolve(result); } else reject(value); } catch (e) { if (domain && !exited) domain.exit(); reject(e); } }; while (chain.length > i) run(chain[i++]); // variable length - can't use forEach promise._c = []; promise._n = false; if (isReject && !promise._h) onUnhandled(promise); });
}; var onUnhandled = function (promise) {
task.call(global, function () { var value = promise._v; var unhandled = isUnhandled(promise); var result, handler, console; if (unhandled) { result = perform(function () { if (isNode) { process.emit('unhandledRejection', value, promise); } else if (handler = global.onunhandledrejection) { handler({ promise: promise, reason: value }); } else if ((console = global.console) && console.error) { console.error('Unhandled promise rejection', value); } }); // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should promise._h = isNode || isUnhandled(promise) ? 2 : 1; } promise._a = undefined; if (unhandled && result.e) throw result.v; });
}; var isUnhandled = function (promise) {
return promise._h !== 1 && (promise._a || promise._c).length === 0;
}; var onHandleUnhandled = function (promise) {
task.call(global, function () { var handler; if (isNode) { process.emit('rejectionHandled', promise); } else if (handler = global.onrejectionhandled) { handler({ promise: promise, reason: promise._v }); } });
}; var $reject = function (value) {
var promise = this; if (promise._d) return; promise._d = true; promise = promise._w || promise; // unwrap promise._v = value; promise._s = 2; if (!promise._a) promise._a = promise._c.slice(); notify(promise, true);
}; var $resolve = function (value) {
var promise = this; var then; if (promise._d) return; promise._d = true; promise = promise._w || promise; // unwrap try { if (promise === value) throw TypeError("Promise can't be resolved itself"); if (then = isThenable(value)) { microtask(function () { var wrapper = { _w: promise, _d: false }; // wrap try { then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); } catch (e) { $reject.call(wrapper, e); } }); } else { promise._v = value; promise._s = 1; notify(promise, false); } } catch (e) { $reject.call({ _w: promise, _d: false }, e); // wrap }
};
// constructor polyfill if (!USE_NATIVE) {
// 25.4.3.1 Promise(executor) $Promise = function Promise(executor) { anInstance(this, $Promise, PROMISE, '_h'); aFunction(executor); Internal.call(this); try { executor(ctx($resolve, this, 1), ctx($reject, this, 1)); } catch (err) { $reject.call(this, err); } }; // eslint-disable-next-line no-unused-vars Internal = function Promise(executor) { this._c = []; // <- awaiting reactions this._a = undefined; // <- checked in isUnhandled reactions this._s = 0; // <- state this._d = false; // <- done this._v = undefined; // <- value this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled this._n = false; // <- notify }; Internal.prototype = __webpack_require__(19)($Promise.prototype, { // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) then: function then(onFulfilled, onRejected) { var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; reaction.fail = typeof onRejected == 'function' && onRejected; reaction.domain = isNode ? process.domain : undefined; this._c.push(reaction); if (this._a) this._a.push(reaction); if (this._s) notify(this, false); return reaction.promise; }, // 25.4.5.1 Promise.prototype.catch(onRejected) 'catch': function (onRejected) { return this.then(undefined, onRejected); } }); OwnPromiseCapability = function () { var promise = new Internal(); this.promise = promise; this.resolve = ctx($resolve, promise, 1); this.reject = ctx($reject, promise, 1); }; newPromiseCapabilityModule.f = newPromiseCapability = function (C) { return C === $Promise || C === Wrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C); };
}
$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); __webpack_require__(18)($Promise, PROMISE); __webpack_require__(41)(PROMISE); Wrapper = __webpack_require__(2)[PROMISE];
// statics $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
// 25.4.4.5 Promise.reject(r) reject: function reject(r) { var capability = newPromiseCapability(this); var $$reject = capability.reject; $$reject(r); return capability.promise; }
}); $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
// 25.4.4.6 Promise.resolve(x) resolve: function resolve(x) { return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); }
}); $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(86)(function (iter) {
$Promise.all(iter)['catch'](empty);
})), PROMISE, {
// 25.4.4.1 Promise.all(iterable) all: function all(iterable) { var C = this; var capability = newPromiseCapability(C); var resolve = capability.resolve; var reject = capability.reject; var result = perform(function () { var values = []; var index = 0; var remaining = 1; forOf(iterable, false, function (promise) { var $index = index++; var alreadyCalled = false; values.push(undefined); remaining++; C.resolve(promise).then(function (value) { if (alreadyCalled) return; alreadyCalled = true; values[$index] = value; --remaining || resolve(values); }, reject); }); --remaining || resolve(values); }); if (result.e) reject(result.v); return capability.promise; }, // 25.4.4.4 Promise.race(iterable) race: function race(iterable) { var C = this; var capability = newPromiseCapability(C); var reject = capability.reject; var result = perform(function () { forOf(iterable, false, function (promise) { C.resolve(promise).then(capability.resolve, reject); }); }); if (result.e) reject(result.v); return capability.promise; }
});
/***/ }),
/* 94 */
/***/ (function(module, exports) {
module.exports = function () { /* empty */ };
/***/ }),
/* 95 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var addToUnscopables = __webpack_require__(94); var step = __webpack_require__(46); var Iterators = __webpack_require__(14); var toIObject = __webpack_require__(28);
// 22.1.3.4 Array.prototype.entries() // 22.1.3.13 Array.prototype.keys() // 22.1.3.29 Array.prototype.values() // 22.1.3.30 Array.prototype[@@iterator]() module.exports = __webpack_require__(30)(Array, 'Array', function (iterated, kind) {
this._t = toIObject(iterated); // target this._i = 0; // next index this._k = kind; // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next() }, function () {
var O = this._t; var kind = this._k; var index = this._i++; if (!O || index >= O.length) { this._t = undefined; return step(1); } if (kind == 'keys') return step(0, index); if (kind == 'values') return step(0, O[index]); return step(0, [index, O[index]]);
}, 'values');
// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) Iterators.Arguments = Iterators.Array;
addToUnscopables('keys'); addToUnscopables('values'); addToUnscopables('entries');
/***/ }),
/* 96 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) var has = __webpack_require__(15); var toObject = __webpack_require__(23); var IE_PROTO = __webpack_require__(25)('IE_PROTO'); var ObjectProto = Object.prototype;
module.exports = Object.getPrototypeOf || function (O) {
O = toObject(O); if (has(O, IE_PROTO)) return O[IE_PROTO]; if (typeof O.constructor == 'function' && O instanceof O.constructor) { return O.constructor.prototype; } return O instanceof Object ? ObjectProto : null;
};
/***/ }),
/* 97 */
/***/ (function(module, exports, __webpack_require__) {
var toInteger = __webpack_require__(32); var max = Math.max; var min = Math.min; module.exports = function (index, length) {
index = toInteger(index); return index < 0 ? max(index + length, 0) : min(index, length);
};
/***/ }),
/* 98 */
/***/ (function(module, exports, __webpack_require__) {
// false -> Array#indexOf // true -> Array#includes var toIObject = __webpack_require__(28); var toLength = __webpack_require__(26); var toAbsoluteIndex = __webpack_require__(97); module.exports = function (IS_INCLUDES) {
return function ($this, el, fromIndex) { var O = toIObject($this); var length = toLength(O.length); var index = toAbsoluteIndex(fromIndex, length); var value; // Array#includes uses SameValueZero equality algorithm // eslint-disable-next-line no-self-compare if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; // eslint-disable-next-line no-self-compare if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not } else for (;length > index; index++) if (IS_INCLUDES || index in O) { if (O[index] === el) return IS_INCLUDES || index || 0; } return !IS_INCLUDES && -1; };
};
/***/ }),
/* 99 */
/***/ (function(module, exports, __webpack_require__) {
var has = __webpack_require__(15); var toIObject = __webpack_require__(28); var arrayIndexOf = __webpack_require__(98)(false); var IE_PROTO = __webpack_require__(25)('IE_PROTO');
module.exports = function (object, names) {
var O = toIObject(object); var i = 0; var result = []; var key; for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); // Don't enum bug & hidden keys while (names.length > i) if (has(O, key = names[i++])) { ~arrayIndexOf(result, key) || result.push(key); } return result;
};
/***/ }),
/* 100 */
/***/ (function(module, exports, __webpack_require__) {
var dP = __webpack_require__(6); var anObject = __webpack_require__(8); var getKeys = __webpack_require__(51);
module.exports = __webpack_require__(5) ? Object.defineProperties : function defineProperties(O, Properties) {
anObject(O); var keys = getKeys(Properties); var length = keys.length; var i = 0; var P; while (length > i) dP.f(O, P = keys[i++], Properties[P]); return O;
};
/***/ }),
/* 101 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var create = __webpack_require__(52); var descriptor = __webpack_require__(55); var setToStringTag = __webpack_require__(18); var IteratorPrototype = {};
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() __webpack_require__(9)(IteratorPrototype, __webpack_require__(1)('iterator'), function () { return this; });
module.exports = function (Constructor, NAME, next) {
Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); setToStringTag(Constructor, NAME + ' Iterator');
};
/***/ }),
/* 102 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(9);
/***/ }),
/* 103 */
/***/ (function(module, exports, __webpack_require__) {
var toInteger = __webpack_require__(32); var defined = __webpack_require__(31); // true -> String#at // false -> String#codePointAt module.exports = function (TO_STRING) {
return function (that, pos) { var s = String(defined(that)); var i = toInteger(pos); var l = s.length; var a, b; if (i < 0 || i >= l) return TO_STRING ? : undefined; a = s.charCodeAt(i); return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; };
};
/***/ }),
/* 104 */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(54); __webpack_require__(53); __webpack_require__(47); __webpack_require__(93); __webpack_require__(85); __webpack_require__(84); module.exports = __webpack_require__(2).Promise;
/***/ }),
/* 105 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = __webpack_require__(4); // 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");
};
/***/ }),
/* 106 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = !__webpack_require__(5) && !__webpack_require__(16)(function () {
return Object.defineProperty(__webpack_require__(34)('div'), 'a', { get: function () { return 7; } }).a != 7;
});
/***/ }),
/* 107 */
/***/ (function(module, exports, __webpack_require__) {
var $export = __webpack_require__(3); // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) $export($export.S + $export.F * !__webpack_require__(5), 'Object', { defineProperty: __webpack_require__(6).f });
/***/ }),
/* 108 */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(107); var $Object = __webpack_require__(2).Object; module.exports = function defineProperty(it, key, desc) {
return $Object.defineProperty(it, key, desc);
};
/***/ }),
/* 109 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty = __webpack_require__(7);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
var _promise = __webpack_require__(33);
var _promise2 = _interopRequireDefault(_promise);
var _assign = __webpack_require__(83);
var _assign2 = _interopRequireDefault(_assign);
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _hamsterjs = __webpack_require__(77);
var _hamsterjs2 = _interopRequireDefault(_hamsterjs);
var _slide = __webpack_require__(40);
var _slide2 = _interopRequireDefault(_slide);
var _slideList = __webpack_require__(76);
var _slideList2 = _interopRequireDefault(_slideList);
var _slideListItem = __webpack_require__(38);
var _slideListItem2 = _interopRequireDefault(_slideListItem);
var _cachuEvent = __webpack_require__(39);
var _cachuEvent2 = _interopRequireDefault(_cachuEvent);
var _cachuNavigation = __webpack_require__(75);
var _cachuNavigation2 = _interopRequireDefault(_cachuNavigation);
var _cachuNavigationItem = __webpack_require__(35);
var _cachuNavigationItem2 = _interopRequireDefault(_cachuNavigationItem);
var _helpers = __webpack_require__(11);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var debounce = __webpack_require__(57);
var defaultOptions = {
disableMouseEvents: false, // Disable mousewheel event listening.
scrollingSpeed: 1000, // The speed of the transition.
scrollingLoop: true, // Loop after reaching the end.
scrollingDirection: 'vertical', // Loop after reaching the end.
navigationEnabled: true, // Enable navigation buttons
navigationPosition: 'right' // The Navigation's position
};
var Cachu = function () { function Cachu(wrapper) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
_classCallCheck(this, Cachu);
/**
* Setting up the state of * the animator */
this.state = { mode: _helpers.CACHU_MODE_FULL_PAGE, // Default mode. isInitialized: false, isRendered: false, isPaused: true, isRunning: false, isScrolling: false, wrapperHeight: 0, wrapperWidth: 0 };
/**
* Options */
this.options = (0, _assign2.default)(defaultOptions, options);
this.events = { after: { render: new _cachuEvent2.default() }, before: { render: new _cachuEvent2.default() } };
/**
* @property {CachuSlideList} */
this.slideList = new _slideList2.default();
/**
* DOM Elements * manipulated by the animator. */
this.elements = { wrapper: wrapper, container: wrapper.querySelector('.cachu__sections'), sections: wrapper.querySelectorAll('.cachu__section') };
/**
* The current slider list item. * @property {CachuSlideListItem} */
this.currentSlideItem = null;
/**
* Instantiate the slider navigation. */
this.navigation = new _cachuNavigation2.default(this);
/**
* Initialize the system. */
this.initialize(); }
/**
* Initializes stuffs for the system. * - Instantiating slide items. * - Setting the current slide item. */
_createClass(Cachu, [{
key: "initialize",
value: function initialize() {
if (false === this.state.isInitialized) {
// Set mode this.state.mode = this._detectMode();
for (var i = 0; i < this.elements.sections.length; i++) { var element = this.elements.sections[i];
var navigationItem = new _cachuNavigationItem2.default(); this.navigation.navigationList.add(navigationItem); this.slideList.push(new _slide2.default(element, this, navigationItem)); }
this.currentSlideItem = this.slideList.head;
this.state.isInitialized = true; } }
/**
* Renders the slider. * * @returns { Promise } */
}, { key: "render", value: function render() { var _this = this;
if (false === this.state.isRendered) { var promise = this.events.before.render.trigger().then(function () { return _this._render(); }).then(function () { return _this.events.after.render.trigger(); }); return promise; }
return _promise2.default.resolve(); }
/**
* @returns { Promise } */
}, { key: "_render", value: function _render() { var _this2 = this;
return new _promise2.default(function (resolve, reject) {
// Hydrate the slider wrapper. _this2._hydrateSlider();
_this2.elements.container.style.webkitTransition = "-webkit-transform " + _this2.options.scrollingSpeed + "ms cubic-bezier(.56,.12,.12,.98)"; _this2.elements.container.style.msTransition = "-ms-transform " + _this2.options.scrollingSpeed + "ms cubic-bezier(.56,.12,.12,.98)"; _this2.elements.container.style.transition = "transform " + _this2.options.scrollingSpeed + "ms cubic-bezier(.56,.12,.12,.98)";
// Attach events. if (false === _this2.options.disableMouseEvents) { var hamster = (0, _hamsterjs2.default)(_this2.elements.container); var onMouseWheelDebounced = debounce(function (event, delta) { return _this2._onMouseWheel(delta); }, 0, { "maxWait": 1000 }); hamster.wheel(onMouseWheelDebounced); }
// Hook navigation actions. var cachuSlideListItem = _this2.slideList.head;
var _loop = function _loop() { var slideListItem = cachuSlideListItem; var slide = slideListItem.slide; var slideNavigationItem = slide.navigationItem; var slideNavigationItemAnchor = slideNavigationItem.elements.anchor;
slideNavigationItemAnchor.addEventListener('click', function (event) { event.preventDefault(); //slideNavigationItem.activate(); _this2._scrollTo(slideListItem); return false; });
cachuSlideListItem = cachuSlideListItem.next; };
while (cachuSlideListItem) { _loop(); }
// Render the navigation if (true === _this2.options.navigationEnabled) _this2.navigation.render(_this2.elements.wrapper, _this2.options.navigationPosition);
_this2.elements.container.style.visibility = "visible";
_this2.state.isRendered = true; resolve(_this2); }); } }, { key: "_onMouseWheel", value: function _onMouseWheel(delta) { if (false === this.state.isScrolling) { if (delta > 0) this.prev();else this.next(); } }
/**
* Run the slider. * * @returns { Promise } */
}, { key: "run", value: function run() { var _this3 = this;
if (false === this.state.isRunning) { // Render first the slider. var promise = this.render().then(function () { return _this3._run(); }); return promise; } return _promise2.default.resolve(); }
/**
* @returns { Promise } */
}, { key: "_run", value: function _run() { var _this4 = this;
return new _promise2.default(function (resolve, reject) {
// Run the slider. _this4.currentSlideItem.enter().then(function () { _this4.state.isRunning = true; resolve(); }); }); }
/**
* @returns { Promise } */
}, { key: "prev", value: function prev() { var from = this.currentSlideItem; var to = this.currentSlideItem.prev;
// If scrolling loop enabled, // we've to scroll to the last slide // when the current one is the first. if (null === to && true === this.options.scrollingLoop && this.slideList.length > 1) { to = this.slideList.tail; }
return this._scroll(from, to); }
/**
* @returns { Promise } */
}, { key: "next", value: function next() { var from = this.currentSlideItem; var to = this.currentSlideItem.next;
// If scrolling loop enabled, // we've to scroll to the first slide // when the current one is the last. if (null === to && true === this.options.scrollingLoop && this.slideList.length > 1) { to = this.slideList.head; }
return this._scroll(from, to); } }, { key: "_scrollTo", value: function _scrollTo(slideItem) {
if (slideItem instanceof _slideListItem2.default && this.currentSlideItem != slideItem) { var from = this.currentSlideItem; var to = slideItem; return this._scroll(from, to); }
return _promise2.default.resolve(); }
/**
* * @param { CachuSlideListItem } from * @param { CachuSlideListItem } to * @returns { Promise } */
}, { key: "_scroll", value: function _scroll(from, to) { var _this5 = this;
if (false === this.state.isScrolling && from && to) {
this.state.isScrolling = true; //console.info(`Start leaving Slide ${from.index}...`);
var promise = from.leave().then(function () { //console.info(`Slide ${from.index} leaved!`); //console.info(`Start entering Slide ${to.index}...`); return to.enter(); }).then(function () { //console.info(`Slide ${to.index} entered!`); _this5.currentSlideItem = to; _this5.state.isScrolling = false; }); return promise; } return _promise2.default.resolve(); } }, { key: "_hydrateSlider", value: function _hydrateSlider() { var _this6 = this;
// First, we should find an apropriate // height for the wrapper. // Then we'll force each section to fit that height.
// Get the wrapper width. this.state.wrapperWidth = (0, _helpers.getOuterWidth)(this.elements.container);
// Get the apropriate height of the wrapper. this.state.wrapperHeight = _helpers.CACHU_MODE_CONTENT_FIT === this.state.mode ? (0, _helpers.getSectionsMaxHeight)(this.elements.sections) : (0, _helpers.getOuterHeight)(this.elements.wrapper);
// Fix the wrapper height and hide overflow. this.elements.wrapper.style.height = this.state.wrapperHeight + "px"; this.elements.wrapper.style.overflow = "hidden";
// Fix the height and the width of each section. (0, _helpers.setSectionsHeight)(this.elements.sections, this.state.wrapperHeight); (0, _helpers.setSectionsWidth)(this.elements.sections, this.state.wrapperWidth);
// Set the scrolling direction if (this.options.scrollingDirection === 'vertical') { (0, _helpers.removeClass)(this.elements.container, 'cachu__sections--horizontal'); } else if (this.options.scrollingDirection === 'horizontal') { (0, _helpers.addClass)(this.elements.container, 'cachu__sections--horizontal'); }
window.addEventListener('resize', function (e) { _this6._hydrateSlider(); }); } }, { key: "_dehydrateSlider", value: function _dehydrateSlider() { this.state.wrapperHeight = 0;
// Reset the wrapper attribute. this.elements.wrapper.style.height = "auto"; this.elements.wrapper.style.overflow = "auto"; } }, { key: "_detectMode", value: function _detectMode() { return true === (0, _helpers.hasClass)(this.elements.wrapper, "cachu__container--content-fit") ? _helpers.CACHU_MODE_CONTENT_FIT : _helpers.CACHU_MODE_FULL_PAGE; } }, { key: "slideContainer", value: function slideContainer() { var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
var translateX = 0;
var translateY = 0;
if (this.options.scrollingDirection === 'vertical') { translateY = -1 * this.state.wrapperHeight * (index - 1); } else if (this.options.scrollingDirection === 'horizontal') { translateX = -1 * this.state.wrapperWidth * (index - 1); }
this.elements.container.style.transform = "translate3d(" + translateX + "px," + translateY + "px,0px)"; } }, { key: "destroy", value: function destroy() { this._dehydrateSlider(); } }]);
return Cachu; }();
exports.default = Cachu;
/***/ }) /******/ ])["default"];