{"version":3,"sources":["jarallax-element.js"],"names":["modules","installedModules","__webpack_require__","moduleId","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_liteReady2","_interopRequireDefault","obj","default","jarallax","document","querySelectorAll","callback","readyState","attachEvent","addEventListener","arguments","length","undefined","_global2","Jarallax","constructor","forEach","def","self","this","args","$item","getAttribute","options","type","pureOptions","speed","apply","threshold","speedArr","split","speedY","parseFloat","speedX","thresholdArr","thresholdY","thresholdX","defTransform","css","transform","rect","getBoundingClientRect","itemData","width","height","y","top","getWindowData","x","left","wnd","centerPercent","moveY","moveX","my","mx","_global","global","win","window","g","_typeof","iterator","Function","eval","e"],"mappings":"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","file":"jarallax-element.min.js","sourcesContent":["/*!\n * Name : Elements Extension for Jarallax\n * Version : 1.0.0\n * Author : nK \n * GitHub : https://github.com/nk-o/jarallax\n */\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(1);\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _liteReady = __webpack_require__(2);\n\nvar _liteReady2 = _interopRequireDefault(_liteReady);\n\nvar _jarallaxElement = __webpack_require__(3);\n\nvar _jarallaxElement2 = _interopRequireDefault(_jarallaxElement);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n(0, _jarallaxElement2.default)();\n\n// data-jarallax-element initialization\n(0, _liteReady2.default)(function () {\n if (typeof jarallax !== 'undefined') {\n jarallax(document.querySelectorAll('[data-jarallax-element]'));\n }\n});\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nmodule.exports = function (callback) {\n\n\tif (document.readyState === 'complete' || document.readyState === 'interactive') {\n\t\t// Already ready or interactive, execute callback\n\t\tcallback.call();\n\t} else if (document.attachEvent) {\n\t\t// Old browsers\n\t\tdocument.attachEvent('onreadystatechange', function () {\n\t\t\tif (document.readyState === 'interactive') callback.call();\n\t\t});\n\t} else if (document.addEventListener) {\n\t\t// Modern browsers\n\t\tdocument.addEventListener('DOMContentLoaded', callback);\n\t}\n};\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = jarallaxElement;\n\nvar _global = __webpack_require__(4);\n\nvar _global2 = _interopRequireDefault(_global);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction jarallaxElement() {\n var jarallax = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _global2.default.jarallax;\n\n if (typeof jarallax === 'undefined') {\n return;\n }\n\n var Jarallax = jarallax.constructor;\n\n // redefine default methods\n ['initImg', 'canInitParallax', 'init', 'destroy', 'clipContainer', 'coverImage', 'isVisible', 'onScroll', 'onResize'].forEach(function (key) {\n var def = Jarallax.prototype[key];\n Jarallax.prototype[key] = function () {\n var self = this;\n var args = arguments || [];\n\n if (key === 'initImg' && self.$item.getAttribute('data-jarallax-element') !== null) {\n self.options.type = 'element';\n self.pureOptions.speed = self.$item.getAttribute('data-jarallax-element') || self.pureOptions.speed;\n }\n if (self.options.type !== 'element') {\n return def.apply(self, args);\n }\n\n self.pureOptions.threshold = self.$item.getAttribute('data-threshold') || '';\n\n switch (key) {\n case 'init':\n var speedArr = self.pureOptions.speed.split(' ');\n self.options.speed = self.pureOptions.speed || 0;\n self.options.speedY = speedArr[0] ? parseFloat(speedArr[0]) : 0;\n self.options.speedX = speedArr[1] ? parseFloat(speedArr[1]) : 0;\n\n var thresholdArr = self.pureOptions.threshold.split(' ');\n self.options.thresholdY = thresholdArr[0] ? parseFloat(thresholdArr[0]) : null;\n self.options.thresholdX = thresholdArr[1] ? parseFloat(thresholdArr[1]) : null;\n break;\n case 'onResize':\n var defTransform = self.css(self.$item, 'transform');\n self.css(self.$item, { transform: '' });\n var rect = self.$item.getBoundingClientRect();\n self.itemData = {\n width: rect.width,\n height: rect.height,\n y: rect.top + self.getWindowData().y,\n x: rect.left\n };\n self.css(self.$item, { transform: defTransform });\n break;\n case 'onScroll':\n var wnd = self.getWindowData();\n var centerPercent = (wnd.y + wnd.height / 2 - self.itemData.y - self.itemData.height / 2) / (wnd.height / 2);\n var moveY = centerPercent * self.options.speedY;\n var moveX = centerPercent * self.options.speedX;\n var my = moveY;\n var mx = moveX;\n if (self.options.thresholdY !== null && moveY > self.options.thresholdY) my = 0;\n if (self.options.thresholdX !== null && moveX > self.options.thresholdX) mx = 0;\n self.css(self.$item, { transform: 'translate3d(' + mx + 'px,' + my + 'px,0)' });\n break;\n case 'initImg':\n case 'isVisible':\n case 'clipContainer':\n case 'coverImage':\n return true;\n // no default\n }\n return def.apply(self, args);\n };\n });\n} /* eslint no-case-declarations: \"off\" */\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\n\nvar win;\n\nif (typeof window !== \"undefined\") {\n win = window;\n} else if (typeof global !== \"undefined\") {\n win = global;\n} else if (typeof self !== \"undefined\") {\n win = self;\n} else {\n win = {};\n}\n\nmodule.exports = win;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(5)))\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar g;\n\n// This works in non-strict mode\ng = function () {\n\treturn this;\n}();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\n} catch (e) {\n\t// This works if the window reference is available\n\tif ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n\n/***/ })\n/******/ ]);"]}