foundation-rails 6.4.1.0 → 6.4.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/Rakefile +5 -6
  4. data/lib/foundation/rails/version.rb +1 -1
  5. data/vendor/assets/js/foundation.abide.js +781 -0
  6. data/vendor/assets/js/foundation.accordion.js +511 -0
  7. data/vendor/assets/js/foundation.accordionMenu.js +527 -0
  8. data/vendor/assets/js/foundation.core.js +860 -0
  9. data/vendor/assets/js/foundation.drilldown.js +759 -0
  10. data/vendor/assets/js/foundation.dropdown.js +1131 -0
  11. data/vendor/assets/js/foundation.dropdownMenu.js +678 -0
  12. data/vendor/assets/js/foundation.equalizer.js +542 -0
  13. data/vendor/assets/js/foundation.interchange.js +399 -0
  14. data/vendor/assets/js/{foundation.js.es6 → foundation.js} +11 -12
  15. data/vendor/assets/js/foundation.magellan.js +449 -0
  16. data/vendor/assets/js/foundation.offcanvas.js +1052 -0
  17. data/vendor/assets/js/foundation.orbit.js +767 -0
  18. data/vendor/assets/js/foundation.responsiveAccordionTabs.js +440 -0
  19. data/vendor/assets/js/foundation.responsiveMenu.js +362 -0
  20. data/vendor/assets/js/foundation.responsiveToggle.js +336 -0
  21. data/vendor/assets/js/foundation.reveal.js +1066 -0
  22. data/vendor/assets/js/foundation.slider.js +1236 -0
  23. data/vendor/assets/js/foundation.smoothScroll.js +303 -0
  24. data/vendor/assets/js/foundation.sticky.js +1001 -0
  25. data/vendor/assets/js/foundation.tabs.js +678 -0
  26. data/vendor/assets/js/foundation.toggler.js +602 -0
  27. data/vendor/assets/js/foundation.tooltip.js +1195 -0
  28. data/vendor/assets/js/{foundation.util.box.js.es6 → foundation.util.box.js} +154 -41
  29. data/vendor/assets/js/foundation.util.imageLoader.js +163 -0
  30. data/vendor/assets/js/foundation.util.keyboard.js +298 -0
  31. data/vendor/assets/js/foundation.util.mediaQuery.js +353 -0
  32. data/vendor/assets/js/foundation.util.motion.js +231 -0
  33. data/vendor/assets/js/foundation.util.nest.js +181 -0
  34. data/vendor/assets/js/foundation.util.timer.js +170 -0
  35. data/vendor/assets/js/foundation.util.timerAndImageLoader.js +90 -0
  36. data/vendor/assets/js/foundation.util.touch.js +275 -0
  37. data/vendor/assets/js/foundation.util.triggers.js +399 -0
  38. data/vendor/assets/js/foundation.zf.responsiveAccordionTabs.js +262 -0
  39. metadata +37 -71
  40. data/vendor/assets/js/entries/foundation-plugins.js +0 -25
  41. data/vendor/assets/js/entries/foundation.js +0 -101
  42. data/vendor/assets/js/entries/plugins/foundation.abide.js +0 -4
  43. data/vendor/assets/js/entries/plugins/foundation.accordion.js +0 -4
  44. data/vendor/assets/js/entries/plugins/foundation.accordionMenu.js +0 -5
  45. data/vendor/assets/js/entries/plugins/foundation.core.js +0 -21
  46. data/vendor/assets/js/entries/plugins/foundation.drilldown.js +0 -4
  47. data/vendor/assets/js/entries/plugins/foundation.dropdown.js +0 -5
  48. data/vendor/assets/js/entries/plugins/foundation.dropdownMenu.js +0 -4
  49. data/vendor/assets/js/entries/plugins/foundation.equalizer.js +0 -4
  50. data/vendor/assets/js/entries/plugins/foundation.interchange.js +0 -4
  51. data/vendor/assets/js/entries/plugins/foundation.magellan.js +0 -4
  52. data/vendor/assets/js/entries/plugins/foundation.offcanvas.js +0 -4
  53. data/vendor/assets/js/entries/plugins/foundation.orbit.js +0 -5
  54. data/vendor/assets/js/entries/plugins/foundation.responsiveAccordionTabs.js +0 -5
  55. data/vendor/assets/js/entries/plugins/foundation.responsiveMenu.js +0 -5
  56. data/vendor/assets/js/entries/plugins/foundation.responsiveToggle.js +0 -5
  57. data/vendor/assets/js/entries/plugins/foundation.reveal.js +0 -4
  58. data/vendor/assets/js/entries/plugins/foundation.slider.js +0 -5
  59. data/vendor/assets/js/entries/plugins/foundation.smoothScroll.js +0 -5
  60. data/vendor/assets/js/entries/plugins/foundation.sticky.js +0 -5
  61. data/vendor/assets/js/entries/plugins/foundation.tabs.js +0 -5
  62. data/vendor/assets/js/entries/plugins/foundation.toggler.js +0 -5
  63. data/vendor/assets/js/entries/plugins/foundation.tooltip.js +0 -4
  64. data/vendor/assets/js/entries/plugins/foundation.util.box.js +0 -4
  65. data/vendor/assets/js/entries/plugins/foundation.util.imageLoader.js +0 -5
  66. data/vendor/assets/js/entries/plugins/foundation.util.keyboard.js +0 -4
  67. data/vendor/assets/js/entries/plugins/foundation.util.mediaQuery.js +0 -4
  68. data/vendor/assets/js/entries/plugins/foundation.util.motion.js +0 -5
  69. data/vendor/assets/js/entries/plugins/foundation.util.nest.js +0 -5
  70. data/vendor/assets/js/entries/plugins/foundation.util.timer.js +0 -5
  71. data/vendor/assets/js/entries/plugins/foundation.util.touch.js +0 -7
  72. data/vendor/assets/js/entries/plugins/foundation.util.triggers.js +0 -5
  73. data/vendor/assets/js/foundation.abide.js.es6 +0 -587
  74. data/vendor/assets/js/foundation.accordion.js.es6 +0 -329
  75. data/vendor/assets/js/foundation.accordionMenu.js.es6 +0 -328
  76. data/vendor/assets/js/foundation.core.js.es6 +0 -337
  77. data/vendor/assets/js/foundation.drilldown.js.es6 +0 -536
  78. data/vendor/assets/js/foundation.dropdown.js.es6 +0 -394
  79. data/vendor/assets/js/foundation.dropdownMenu.js.es6 +0 -458
  80. data/vendor/assets/js/foundation.equalizer.js.es6 +0 -318
  81. data/vendor/assets/js/foundation.interchange.js.es6 +0 -210
  82. data/vendor/assets/js/foundation.magellan.js.es6 +0 -257
  83. data/vendor/assets/js/foundation.offcanvas.js.es6 +0 -546
  84. data/vendor/assets/js/foundation.orbit.js.es6 +0 -531
  85. data/vendor/assets/js/foundation.plugin.js.es6 +0 -54
  86. data/vendor/assets/js/foundation.positionable.js.es6 +0 -206
  87. data/vendor/assets/js/foundation.responsiveAccordionTabs.js.es6 +0 -243
  88. data/vendor/assets/js/foundation.responsiveMenu.js.es6 +0 -155
  89. data/vendor/assets/js/foundation.responsiveToggle.js.es6 +0 -156
  90. data/vendor/assets/js/foundation.reveal.js.es6 +0 -585
  91. data/vendor/assets/js/foundation.slider.js.es6 +0 -712
  92. data/vendor/assets/js/foundation.smoothScroll.js.es6 +0 -135
  93. data/vendor/assets/js/foundation.sticky.js.es6 +0 -507
  94. data/vendor/assets/js/foundation.tabs.js.es6 +0 -498
  95. data/vendor/assets/js/foundation.toggler.js.es6 +0 -150
  96. data/vendor/assets/js/foundation.tooltip.js.es6 +0 -462
  97. data/vendor/assets/js/foundation.util.core.js.es6 +0 -52
  98. data/vendor/assets/js/foundation.util.imageLoader.js.es6 +0 -45
  99. data/vendor/assets/js/foundation.util.keyboard.js.es6 +0 -162
  100. data/vendor/assets/js/foundation.util.mediaQuery.js.es6 +0 -234
  101. data/vendor/assets/js/foundation.util.motion.js.es6 +0 -104
  102. data/vendor/assets/js/foundation.util.nest.js.es6 +0 -67
  103. data/vendor/assets/js/foundation.util.timer.js.es6 +0 -48
  104. data/vendor/assets/js/foundation.util.touch.js.es6 +0 -149
  105. data/vendor/assets/js/foundation.util.triggers.js.es6 +0 -268
@@ -0,0 +1,542 @@
1
+ /******/ (function(modules) { // webpackBootstrap
2
+ /******/ // The module cache
3
+ /******/ var installedModules = {};
4
+ /******/
5
+ /******/ // The require function
6
+ /******/ function __webpack_require__(moduleId) {
7
+ /******/
8
+ /******/ // Check if module is in cache
9
+ /******/ if(installedModules[moduleId]) {
10
+ /******/ return installedModules[moduleId].exports;
11
+ /******/ }
12
+ /******/ // Create a new module (and put it into the cache)
13
+ /******/ var module = installedModules[moduleId] = {
14
+ /******/ i: moduleId,
15
+ /******/ l: false,
16
+ /******/ exports: {}
17
+ /******/ };
18
+ /******/
19
+ /******/ // Execute the module function
20
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
+ /******/
22
+ /******/ // Flag the module as loaded
23
+ /******/ module.l = true;
24
+ /******/
25
+ /******/ // Return the exports of the module
26
+ /******/ return module.exports;
27
+ /******/ }
28
+ /******/
29
+ /******/
30
+ /******/ // expose the modules object (__webpack_modules__)
31
+ /******/ __webpack_require__.m = modules;
32
+ /******/
33
+ /******/ // expose the module cache
34
+ /******/ __webpack_require__.c = installedModules;
35
+ /******/
36
+ /******/ // identity function for calling harmony imports with the correct context
37
+ /******/ __webpack_require__.i = function(value) { return value; };
38
+ /******/
39
+ /******/ // define getter function for harmony exports
40
+ /******/ __webpack_require__.d = function(exports, name, getter) {
41
+ /******/ if(!__webpack_require__.o(exports, name)) {
42
+ /******/ Object.defineProperty(exports, name, {
43
+ /******/ configurable: false,
44
+ /******/ enumerable: true,
45
+ /******/ get: getter
46
+ /******/ });
47
+ /******/ }
48
+ /******/ };
49
+ /******/
50
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
51
+ /******/ __webpack_require__.n = function(module) {
52
+ /******/ var getter = module && module.__esModule ?
53
+ /******/ function getDefault() { return module['default']; } :
54
+ /******/ function getModuleExports() { return module; };
55
+ /******/ __webpack_require__.d(getter, 'a', getter);
56
+ /******/ return getter;
57
+ /******/ };
58
+ /******/
59
+ /******/ // Object.prototype.hasOwnProperty.call
60
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
61
+ /******/
62
+ /******/ // __webpack_public_path__
63
+ /******/ __webpack_require__.p = "";
64
+ /******/
65
+ /******/ // Load entry module and return exports
66
+ /******/ return __webpack_require__(__webpack_require__.s = 85);
67
+ /******/ })
68
+ /************************************************************************/
69
+ /******/ ({
70
+
71
+ /***/ 0:
72
+ /***/ (function(module, exports) {
73
+
74
+ module.exports = jQuery;
75
+
76
+ /***/ }),
77
+
78
+ /***/ 1:
79
+ /***/ (function(module, exports) {
80
+
81
+ module.exports = {Foundation: window.Foundation};
82
+
83
+ /***/ }),
84
+
85
+ /***/ 10:
86
+ /***/ (function(module, exports) {
87
+
88
+ module.exports = {onImagesLoaded: window.Foundation.onImagesLoaded};
89
+
90
+ /***/ }),
91
+
92
+ /***/ 19:
93
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
94
+
95
+ "use strict";
96
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
97
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);
98
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);
99
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_equalizer__ = __webpack_require__(49);
100
+
101
+
102
+
103
+ __WEBPACK_IMPORTED_MODULE_0__foundation_core__["Foundation"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_equalizer__["a" /* Equalizer */], 'Equalizer');
104
+
105
+ /***/ }),
106
+
107
+ /***/ 2:
108
+ /***/ (function(module, exports) {
109
+
110
+ module.exports = {Plugin: window.Foundation.Plugin};
111
+
112
+ /***/ }),
113
+
114
+ /***/ 3:
115
+ /***/ (function(module, exports) {
116
+
117
+ module.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};
118
+
119
+ /***/ }),
120
+
121
+ /***/ 49:
122
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
123
+
124
+ "use strict";
125
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Equalizer; });
126
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);
127
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);
128
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__ = __webpack_require__(6);
129
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__);
130
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__ = __webpack_require__(10);
131
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__);
132
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core__ = __webpack_require__(3);
133
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__);
134
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin__ = __webpack_require__(2);
135
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__);
136
+
137
+
138
+ 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; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
139
+
140
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
141
+
142
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
143
+
144
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+ /**
153
+ * Equalizer module.
154
+ * @module foundation.equalizer
155
+ * @requires foundation.util.mediaQuery
156
+ * @requires foundation.util.imageLoader if equalizer contains images
157
+ */
158
+
159
+ var Equalizer = function (_Plugin) {
160
+ _inherits(Equalizer, _Plugin);
161
+
162
+ function Equalizer() {
163
+ _classCallCheck(this, Equalizer);
164
+
165
+ return _possibleConstructorReturn(this, (Equalizer.__proto__ || Object.getPrototypeOf(Equalizer)).apply(this, arguments));
166
+ }
167
+
168
+ _createClass(Equalizer, [{
169
+ key: '_setup',
170
+
171
+ /**
172
+ * Creates a new instance of Equalizer.
173
+ * @class
174
+ * @name Equalizer
175
+ * @fires Equalizer#init
176
+ * @param {Object} element - jQuery object to add the trigger to.
177
+ * @param {Object} options - Overrides to the default plugin settings.
178
+ */
179
+ value: function _setup(element, options) {
180
+ this.$element = element;
181
+ this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, Equalizer.defaults, this.$element.data(), options);
182
+ this.className = 'Equalizer'; // ie9 back compat
183
+
184
+ this._init();
185
+ }
186
+
187
+ /**
188
+ * Initializes the Equalizer plugin and calls functions to get equalizer functioning on load.
189
+ * @private
190
+ */
191
+
192
+ }, {
193
+ key: '_init',
194
+ value: function _init() {
195
+ var eqId = this.$element.attr('data-equalizer') || '';
196
+ var $watched = this.$element.find('[data-equalizer-watch="' + eqId + '"]');
197
+
198
+ __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__["MediaQuery"]._init();
199
+
200
+ this.$watched = $watched.length ? $watched : this.$element.find('[data-equalizer-watch]');
201
+ this.$element.attr('data-resize', eqId || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__["GetYoDigits"])(6, 'eq'));
202
+ this.$element.attr('data-mutate', eqId || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__["GetYoDigits"])(6, 'eq'));
203
+
204
+ this.hasNested = this.$element.find('[data-equalizer]').length > 0;
205
+ this.isNested = this.$element.parentsUntil(document.body, '[data-equalizer]').length > 0;
206
+ this.isOn = false;
207
+ this._bindHandler = {
208
+ onResizeMeBound: this._onResizeMe.bind(this),
209
+ onPostEqualizedBound: this._onPostEqualized.bind(this)
210
+ };
211
+
212
+ var imgs = this.$element.find('img');
213
+ var tooSmall;
214
+ if (this.options.equalizeOn) {
215
+ tooSmall = this._checkMQ();
216
+ __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('changed.zf.mediaquery', this._checkMQ.bind(this));
217
+ } else {
218
+ this._events();
219
+ }
220
+ if (tooSmall !== undefined && tooSmall === false || tooSmall === undefined) {
221
+ if (imgs.length) {
222
+ __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__["onImagesLoaded"])(imgs, this._reflow.bind(this));
223
+ } else {
224
+ this._reflow();
225
+ }
226
+ }
227
+ }
228
+
229
+ /**
230
+ * Removes event listeners if the breakpoint is too small.
231
+ * @private
232
+ */
233
+
234
+ }, {
235
+ key: '_pauseEvents',
236
+ value: function _pauseEvents() {
237
+ this.isOn = false;
238
+ this.$element.off({
239
+ '.zf.equalizer': this._bindHandler.onPostEqualizedBound,
240
+ 'resizeme.zf.trigger': this._bindHandler.onResizeMeBound,
241
+ 'mutateme.zf.trigger': this._bindHandler.onResizeMeBound
242
+ });
243
+ }
244
+
245
+ /**
246
+ * function to handle $elements resizeme.zf.trigger, with bound this on _bindHandler.onResizeMeBound
247
+ * @private
248
+ */
249
+
250
+ }, {
251
+ key: '_onResizeMe',
252
+ value: function _onResizeMe(e) {
253
+ this._reflow();
254
+ }
255
+
256
+ /**
257
+ * function to handle $elements postequalized.zf.equalizer, with bound this on _bindHandler.onPostEqualizedBound
258
+ * @private
259
+ */
260
+
261
+ }, {
262
+ key: '_onPostEqualized',
263
+ value: function _onPostEqualized(e) {
264
+ if (e.target !== this.$element[0]) {
265
+ this._reflow();
266
+ }
267
+ }
268
+
269
+ /**
270
+ * Initializes events for Equalizer.
271
+ * @private
272
+ */
273
+
274
+ }, {
275
+ key: '_events',
276
+ value: function _events() {
277
+ var _this = this;
278
+ this._pauseEvents();
279
+ if (this.hasNested) {
280
+ this.$element.on('postequalized.zf.equalizer', this._bindHandler.onPostEqualizedBound);
281
+ } else {
282
+ this.$element.on('resizeme.zf.trigger', this._bindHandler.onResizeMeBound);
283
+ this.$element.on('mutateme.zf.trigger', this._bindHandler.onResizeMeBound);
284
+ }
285
+ this.isOn = true;
286
+ }
287
+
288
+ /**
289
+ * Checks the current breakpoint to the minimum required size.
290
+ * @private
291
+ */
292
+
293
+ }, {
294
+ key: '_checkMQ',
295
+ value: function _checkMQ() {
296
+ var tooSmall = !__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__["MediaQuery"].is(this.options.equalizeOn);
297
+ if (tooSmall) {
298
+ if (this.isOn) {
299
+ this._pauseEvents();
300
+ this.$watched.css('height', 'auto');
301
+ }
302
+ } else {
303
+ if (!this.isOn) {
304
+ this._events();
305
+ }
306
+ }
307
+ return tooSmall;
308
+ }
309
+
310
+ /**
311
+ * A noop version for the plugin
312
+ * @private
313
+ */
314
+
315
+ }, {
316
+ key: '_killswitch',
317
+ value: function _killswitch() {
318
+ return;
319
+ }
320
+
321
+ /**
322
+ * Calls necessary functions to update Equalizer upon DOM change
323
+ * @private
324
+ */
325
+
326
+ }, {
327
+ key: '_reflow',
328
+ value: function _reflow() {
329
+ if (!this.options.equalizeOnStack) {
330
+ if (this._isStacked()) {
331
+ this.$watched.css('height', 'auto');
332
+ return false;
333
+ }
334
+ }
335
+ if (this.options.equalizeByRow) {
336
+ this.getHeightsByRow(this.applyHeightByRow.bind(this));
337
+ } else {
338
+ this.getHeights(this.applyHeight.bind(this));
339
+ }
340
+ }
341
+
342
+ /**
343
+ * Manually determines if the first 2 elements are *NOT* stacked.
344
+ * @private
345
+ */
346
+
347
+ }, {
348
+ key: '_isStacked',
349
+ value: function _isStacked() {
350
+ if (!this.$watched[0] || !this.$watched[1]) {
351
+ return true;
352
+ }
353
+ return this.$watched[0].getBoundingClientRect().top !== this.$watched[1].getBoundingClientRect().top;
354
+ }
355
+
356
+ /**
357
+ * Finds the outer heights of children contained within an Equalizer parent and returns them in an array
358
+ * @param {Function} cb - A non-optional callback to return the heights array to.
359
+ * @returns {Array} heights - An array of heights of children within Equalizer container
360
+ */
361
+
362
+ }, {
363
+ key: 'getHeights',
364
+ value: function getHeights(cb) {
365
+ var heights = [];
366
+ for (var i = 0, len = this.$watched.length; i < len; i++) {
367
+ this.$watched[i].style.height = 'auto';
368
+ heights.push(this.$watched[i].offsetHeight);
369
+ }
370
+ cb(heights);
371
+ }
372
+
373
+ /**
374
+ * Finds the outer heights of children contained within an Equalizer parent and returns them in an array
375
+ * @param {Function} cb - A non-optional callback to return the heights array to.
376
+ * @returns {Array} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child
377
+ */
378
+
379
+ }, {
380
+ key: 'getHeightsByRow',
381
+ value: function getHeightsByRow(cb) {
382
+ var lastElTopOffset = this.$watched.length ? this.$watched.first().offset().top : 0,
383
+ groups = [],
384
+ group = 0;
385
+ //group by Row
386
+ groups[group] = [];
387
+ for (var i = 0, len = this.$watched.length; i < len; i++) {
388
+ this.$watched[i].style.height = 'auto';
389
+ //maybe could use this.$watched[i].offsetTop
390
+ var elOffsetTop = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.$watched[i]).offset().top;
391
+ if (elOffsetTop != lastElTopOffset) {
392
+ group++;
393
+ groups[group] = [];
394
+ lastElTopOffset = elOffsetTop;
395
+ }
396
+ groups[group].push([this.$watched[i], this.$watched[i].offsetHeight]);
397
+ }
398
+
399
+ for (var j = 0, ln = groups.length; j < ln; j++) {
400
+ var heights = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[j]).map(function () {
401
+ return this[1];
402
+ }).get();
403
+ var max = Math.max.apply(null, heights);
404
+ groups[j].push(max);
405
+ }
406
+ cb(groups);
407
+ }
408
+
409
+ /**
410
+ * Changes the CSS height property of each child in an Equalizer parent to match the tallest
411
+ * @param {array} heights - An array of heights of children within Equalizer container
412
+ * @fires Equalizer#preequalized
413
+ * @fires Equalizer#postequalized
414
+ */
415
+
416
+ }, {
417
+ key: 'applyHeight',
418
+ value: function applyHeight(heights) {
419
+ var max = Math.max.apply(null, heights);
420
+ /**
421
+ * Fires before the heights are applied
422
+ * @event Equalizer#preequalized
423
+ */
424
+ this.$element.trigger('preequalized.zf.equalizer');
425
+
426
+ this.$watched.css('height', max);
427
+
428
+ /**
429
+ * Fires when the heights have been applied
430
+ * @event Equalizer#postequalized
431
+ */
432
+ this.$element.trigger('postequalized.zf.equalizer');
433
+ }
434
+
435
+ /**
436
+ * Changes the CSS height property of each child in an Equalizer parent to match the tallest by row
437
+ * @param {array} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child
438
+ * @fires Equalizer#preequalized
439
+ * @fires Equalizer#preequalizedrow
440
+ * @fires Equalizer#postequalizedrow
441
+ * @fires Equalizer#postequalized
442
+ */
443
+
444
+ }, {
445
+ key: 'applyHeightByRow',
446
+ value: function applyHeightByRow(groups) {
447
+ /**
448
+ * Fires before the heights are applied
449
+ */
450
+ this.$element.trigger('preequalized.zf.equalizer');
451
+ for (var i = 0, len = groups.length; i < len; i++) {
452
+ var groupsILength = groups[i].length,
453
+ max = groups[i][groupsILength - 1];
454
+ if (groupsILength <= 2) {
455
+ __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[i][0][0]).css({ 'height': 'auto' });
456
+ continue;
457
+ }
458
+ /**
459
+ * Fires before the heights per row are applied
460
+ * @event Equalizer#preequalizedrow
461
+ */
462
+ this.$element.trigger('preequalizedrow.zf.equalizer');
463
+ for (var j = 0, lenJ = groupsILength - 1; j < lenJ; j++) {
464
+ __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[i][j][0]).css({ 'height': max });
465
+ }
466
+ /**
467
+ * Fires when the heights per row have been applied
468
+ * @event Equalizer#postequalizedrow
469
+ */
470
+ this.$element.trigger('postequalizedrow.zf.equalizer');
471
+ }
472
+ /**
473
+ * Fires when the heights have been applied
474
+ */
475
+ this.$element.trigger('postequalized.zf.equalizer');
476
+ }
477
+
478
+ /**
479
+ * Destroys an instance of Equalizer.
480
+ * @function
481
+ */
482
+
483
+ }, {
484
+ key: '_destroy',
485
+ value: function _destroy() {
486
+ this._pauseEvents();
487
+ this.$watched.css('height', 'auto');
488
+ }
489
+ }]);
490
+
491
+ return Equalizer;
492
+ }(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__["Plugin"]);
493
+
494
+ /**
495
+ * Default settings for plugin
496
+ */
497
+
498
+
499
+ Equalizer.defaults = {
500
+ /**
501
+ * Enable height equalization when stacked on smaller screens.
502
+ * @option
503
+ * @type {boolean}
504
+ * @default false
505
+ */
506
+ equalizeOnStack: false,
507
+ /**
508
+ * Enable height equalization row by row.
509
+ * @option
510
+ * @type {boolean}
511
+ * @default false
512
+ */
513
+ equalizeByRow: false,
514
+ /**
515
+ * String representing the minimum breakpoint size the plugin should equalize heights on.
516
+ * @option
517
+ * @type {string}
518
+ * @default ''
519
+ */
520
+ equalizeOn: ''
521
+ };
522
+
523
+
524
+
525
+ /***/ }),
526
+
527
+ /***/ 6:
528
+ /***/ (function(module, exports) {
529
+
530
+ module.exports = {MediaQuery: window.Foundation.MediaQuery};
531
+
532
+ /***/ }),
533
+
534
+ /***/ 85:
535
+ /***/ (function(module, exports, __webpack_require__) {
536
+
537
+ module.exports = __webpack_require__(19);
538
+
539
+
540
+ /***/ })
541
+
542
+ /******/ });