123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614 |
- (function webpackUniversalModuleDefinition(root, factory) {
- if(typeof exports === 'object' && typeof module === 'object')
- module.exports = factory(require("./foundation.core"), require("./foundation.util.imageLoader"), require("./foundation.util.mediaQuery"), require("jquery"));
- else if(typeof define === 'function' && define.amd)
- define(["./foundation.core", "./foundation.util.imageLoader", "./foundation.util.mediaQuery", "jquery"], factory);
- else if(typeof exports === 'object')
- exports["foundation.equalizer"] = factory(require("./foundation.core"), require("./foundation.util.imageLoader"), require("./foundation.util.mediaQuery"), require("jquery"));
- else
- root["__FOUNDATION_EXTERNAL__"] = root["__FOUNDATION_EXTERNAL__"] || {}, root["__FOUNDATION_EXTERNAL__"]["foundation.equalizer"] = factory(root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.imageLoader"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.mediaQuery"], root["jQuery"]);
- })(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE_jquery__) {
- return (function(modules) {
-
- var installedModules = {};
-
- function __webpack_require__(moduleId) {
-
- if(installedModules[moduleId]) {
- return installedModules[moduleId].exports;
- }
-
- var module = installedModules[moduleId] = {
- i: moduleId,
- l: false,
- exports: {}
- };
-
- modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-
- module.l = true;
-
- return module.exports;
- }
-
- __webpack_require__.m = modules;
-
- __webpack_require__.c = installedModules;
-
- __webpack_require__.d = function(exports, name, getter) {
- if(!__webpack_require__.o(exports, name)) {
- Object.defineProperty(exports, name, { enumerable: true, get: getter });
- }
- };
-
- __webpack_require__.r = function(exports) {
- if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
- }
- Object.defineProperty(exports, '__esModule', { value: true });
- };
-
-
-
-
-
- __webpack_require__.t = function(value, mode) {
- if(mode & 1) value = __webpack_require__(value);
- if(mode & 8) return value;
- if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
- var ns = Object.create(null);
- __webpack_require__.r(ns);
- Object.defineProperty(ns, 'default', { enumerable: true, value: value });
- if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
- return ns;
- };
-
- __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;
- };
-
- __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
-
- __webpack_require__.p = "";
-
- return __webpack_require__(__webpack_require__.s = 6);
- })
- ({
- "./foundation.core":
- (function(module, exports) {
- module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;
- }),
- "./foundation.util.imageLoader":
- (function(module, exports) {
- module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__;
- }),
- "./foundation.util.mediaQuery":
- (function(module, exports) {
- module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;
- }),
- "./js/entries/plugins/foundation.equalizer.js":
- (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__( "./foundation.core");
- var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = __webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);
- __webpack_require__.d(__webpack_exports__, "Foundation", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"]; });
- var _foundation_equalizer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__( "./js/foundation.equalizer.js");
- __webpack_require__.d(__webpack_exports__, "Equalizer", function() { return _foundation_equalizer__WEBPACK_IMPORTED_MODULE_1__["Equalizer"]; });
- _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"].plugin(_foundation_equalizer__WEBPACK_IMPORTED_MODULE_1__["Equalizer"], 'Equalizer');
- }),
- "./js/foundation.equalizer.js":
- (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- __webpack_require__.d(__webpack_exports__, "Equalizer", function() { return Equalizer; });
- var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__( "jquery");
- var jquery__WEBPACK_IMPORTED_MODULE_0___default = __webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
- var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__( "./foundation.util.mediaQuery");
- var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default = __webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);
- var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__( "./foundation.util.imageLoader");
- var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2___default = __webpack_require__.n(_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__);
- var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__( "./foundation.core");
- var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default = __webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a 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; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- var Equalizer =
- function (_Plugin) {
- _inherits(Equalizer, _Plugin);
- function Equalizer() {
- _classCallCheck(this, Equalizer);
- return _possibleConstructorReturn(this, _getPrototypeOf(Equalizer).apply(this, arguments));
- }
- _createClass(Equalizer, [{
- key: "_setup",
-
- value: function _setup(element, options) {
- this.$element = element;
- this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Equalizer.defaults, this.$element.data(), options);
- this.className = 'Equalizer';
- this._init();
- }
-
- }, {
- key: "_init",
- value: function _init() {
- var eqId = this.$element.attr('data-equalizer') || '';
- var $watched = this.$element.find("[data-equalizer-watch=\"".concat(eqId, "\"]"));
- _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__["MediaQuery"]._init();
- this.$watched = $watched.length ? $watched : this.$element.find('[data-equalizer-watch]');
- this.$element.attr('data-resize', eqId || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["GetYoDigits"])(6, 'eq'));
- this.$element.attr('data-mutate', eqId || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["GetYoDigits"])(6, 'eq'));
- this.hasNested = this.$element.find('[data-equalizer]').length > 0;
- this.isNested = this.$element.parentsUntil(document.body, '[data-equalizer]').length > 0;
- this.isOn = false;
- this._bindHandler = {
- onResizeMeBound: this._onResizeMe.bind(this),
- onPostEqualizedBound: this._onPostEqualized.bind(this)
- };
- var imgs = this.$element.find('img');
- var tooSmall;
- if (this.options.equalizeOn) {
- tooSmall = this._checkMQ();
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', this._checkMQ.bind(this));
- } else {
- this._events();
- }
- if (typeof tooSmall !== 'undefined' && tooSmall === false || typeof tooSmall === 'undefined') {
- if (imgs.length) {
- Object(_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__["onImagesLoaded"])(imgs, this._reflow.bind(this));
- } else {
- this._reflow();
- }
- }
- }
-
- }, {
- key: "_pauseEvents",
- value: function _pauseEvents() {
- this.isOn = false;
- this.$element.off({
- '.zf.equalizer': this._bindHandler.onPostEqualizedBound,
- 'resizeme.zf.trigger': this._bindHandler.onResizeMeBound,
- 'mutateme.zf.trigger': this._bindHandler.onResizeMeBound
- });
- }
-
- }, {
- key: "_onResizeMe",
- value: function _onResizeMe(e) {
- this._reflow();
- }
-
- }, {
- key: "_onPostEqualized",
- value: function _onPostEqualized(e) {
- if (e.target !== this.$element[0]) {
- this._reflow();
- }
- }
-
- }, {
- key: "_events",
- value: function _events() {
- var _this = this;
- this._pauseEvents();
- if (this.hasNested) {
- this.$element.on('postequalized.zf.equalizer', this._bindHandler.onPostEqualizedBound);
- } else {
- this.$element.on('resizeme.zf.trigger', this._bindHandler.onResizeMeBound);
- this.$element.on('mutateme.zf.trigger', this._bindHandler.onResizeMeBound);
- }
- this.isOn = true;
- }
-
- }, {
- key: "_checkMQ",
- value: function _checkMQ() {
- var tooSmall = !_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__["MediaQuery"].is(this.options.equalizeOn);
- if (tooSmall) {
- if (this.isOn) {
- this._pauseEvents();
- this.$watched.css('height', 'auto');
- }
- } else {
- if (!this.isOn) {
- this._events();
- }
- }
- return tooSmall;
- }
-
- }, {
- key: "_killswitch",
- value: function _killswitch() {
- return;
- }
-
- }, {
- key: "_reflow",
- value: function _reflow() {
- if (!this.options.equalizeOnStack) {
- if (this._isStacked()) {
- this.$watched.css('height', 'auto');
- return false;
- }
- }
- if (this.options.equalizeByRow) {
- this.getHeightsByRow(this.applyHeightByRow.bind(this));
- } else {
- this.getHeights(this.applyHeight.bind(this));
- }
- }
-
- }, {
- key: "_isStacked",
- value: function _isStacked() {
- if (!this.$watched[0] || !this.$watched[1]) {
- return true;
- }
- return this.$watched[0].getBoundingClientRect().top !== this.$watched[1].getBoundingClientRect().top;
- }
-
- }, {
- key: "getHeights",
- value: function getHeights(cb) {
- var heights = [];
- for (var i = 0, len = this.$watched.length; i < len; i++) {
- this.$watched[i].style.height = 'auto';
- heights.push(this.$watched[i].offsetHeight);
- }
- cb(heights);
- }
-
- }, {
- key: "getHeightsByRow",
- value: function getHeightsByRow(cb) {
- var lastElTopOffset = this.$watched.length ? this.$watched.first().offset().top : 0,
- groups = [],
- group = 0;
- groups[group] = [];
- for (var i = 0, len = this.$watched.length; i < len; i++) {
- this.$watched[i].style.height = 'auto';
- var elOffsetTop = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$watched[i]).offset().top;
- if (elOffsetTop != lastElTopOffset) {
- group++;
- groups[group] = [];
- lastElTopOffset = elOffsetTop;
- }
- groups[group].push([this.$watched[i], this.$watched[i].offsetHeight]);
- }
- for (var j = 0, ln = groups.length; j < ln; j++) {
- var heights = jquery__WEBPACK_IMPORTED_MODULE_0___default()(groups[j]).map(function () {
- return this[1];
- }).get();
- var max = Math.max.apply(null, heights);
- groups[j].push(max);
- }
- cb(groups);
- }
-
- }, {
- key: "applyHeight",
- value: function applyHeight(heights) {
- var max = Math.max.apply(null, heights);
-
- this.$element.trigger('preequalized.zf.equalizer');
- this.$watched.css('height', max);
-
- this.$element.trigger('postequalized.zf.equalizer');
- }
-
- }, {
- key: "applyHeightByRow",
- value: function applyHeightByRow(groups) {
-
- this.$element.trigger('preequalized.zf.equalizer');
- for (var i = 0, len = groups.length; i < len; i++) {
- var groupsILength = groups[i].length,
- max = groups[i][groupsILength - 1];
- if (groupsILength <= 2) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(groups[i][0][0]).css({
- 'height': 'auto'
- });
- continue;
- }
-
- this.$element.trigger('preequalizedrow.zf.equalizer');
- for (var j = 0, lenJ = groupsILength - 1; j < lenJ; j++) {
- jquery__WEBPACK_IMPORTED_MODULE_0___default()(groups[i][j][0]).css({
- 'height': max
- });
- }
-
- this.$element.trigger('postequalizedrow.zf.equalizer');
- }
-
- this.$element.trigger('postequalized.zf.equalizer');
- }
-
- }, {
- key: "_destroy",
- value: function _destroy() {
- this._pauseEvents();
- this.$watched.css('height', 'auto');
- }
- }]);
- return Equalizer;
- }(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["Plugin"]);
- Equalizer.defaults = {
-
- equalizeOnStack: false,
-
- equalizeByRow: false,
-
- equalizeOn: ''
- };
- }),
- 6:
- (function(module, exports, __webpack_require__) {
- module.exports = __webpack_require__("./js/entries/plugins/foundation.equalizer.js");
- }),
- "jquery":
- (function(module, exports) {
- module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;
- })
- });
- });
|