foundation-rails 6.4.3.0 → 6.5.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (268) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -1
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +14 -3
  5. data/Appraisals +19 -0
  6. data/Gemfile +5 -2
  7. data/Gemfile.lock +193 -0
  8. data/README.md +53 -24
  9. data/Rakefile +11 -12
  10. data/bower.json +3 -3
  11. data/foundation-rails.gemspec +5 -5
  12. data/gemfiles/rails_4.1.gemfile +10 -0
  13. data/gemfiles/rails_4.1.gemfile.lock +178 -0
  14. data/gemfiles/rails_4.2.gemfile +10 -0
  15. data/gemfiles/rails_4.2.gemfile.lock +178 -0
  16. data/gemfiles/rails_5.0.gemfile +10 -0
  17. data/gemfiles/rails_5.0.gemfile.lock +193 -0
  18. data/gemfiles/rails_5.1.gemfile +10 -0
  19. data/gemfiles/rails_5.1.gemfile.lock +193 -0
  20. data/gemfiles/rails_5.2.gemfile +10 -0
  21. data/gemfiles/rails_5.2.gemfile.lock +193 -0
  22. data/lib/foundation/rails/version.rb +1 -1
  23. data/lib/generators/foundation/install_generator.rb +1 -1
  24. data/lib/generators/foundation/templates/_settings.scss +5 -5
  25. data/spec/support/helpers.rb +1 -1
  26. data/vendor/assets/js/foundation.cjs.js +11795 -0
  27. data/vendor/assets/js/foundation.cjs.js.map +1 -0
  28. data/vendor/assets/js/foundation.es6.js +10361 -0
  29. data/vendor/assets/js/foundation.es6.js.map +1 -0
  30. data/vendor/assets/js/foundation.esm.js +11756 -0
  31. data/vendor/assets/js/foundation.esm.js.map +1 -0
  32. data/vendor/assets/js/foundation.js +13214 -31
  33. data/vendor/assets/js/foundation.js.map +1 -0
  34. data/vendor/assets/js/foundation.min.js +2 -0
  35. data/vendor/assets/js/foundation.min.js.map +1 -0
  36. data/vendor/assets/js/foundation.sprockets.js +38 -0
  37. data/vendor/assets/js/{foundation.abide.js → plugins/foundation.abide.js} +317 -138
  38. data/vendor/assets/js/plugins/foundation.abide.js.map +1 -0
  39. data/vendor/assets/js/plugins/foundation.abide.min.js +2 -0
  40. data/vendor/assets/js/plugins/foundation.abide.min.js.map +1 -0
  41. data/vendor/assets/js/plugins/foundation.accordion.js +676 -0
  42. data/vendor/assets/js/plugins/foundation.accordion.js.map +1 -0
  43. data/vendor/assets/js/plugins/foundation.accordion.min.js +2 -0
  44. data/vendor/assets/js/plugins/foundation.accordion.min.js.map +1 -0
  45. data/vendor/assets/js/plugins/foundation.accordionMenu.js +637 -0
  46. data/vendor/assets/js/plugins/foundation.accordionMenu.js.map +1 -0
  47. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js +2 -0
  48. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js.map +1 -0
  49. data/vendor/assets/js/plugins/foundation.core.js +1072 -0
  50. data/vendor/assets/js/plugins/foundation.core.js.map +1 -0
  51. data/vendor/assets/js/plugins/foundation.core.min.js +2 -0
  52. data/vendor/assets/js/plugins/foundation.core.min.js.map +1 -0
  53. data/vendor/assets/js/plugins/foundation.drilldown.js +982 -0
  54. data/vendor/assets/js/plugins/foundation.drilldown.js.map +1 -0
  55. data/vendor/assets/js/plugins/foundation.drilldown.min.js +2 -0
  56. data/vendor/assets/js/plugins/foundation.drilldown.min.js.map +1 -0
  57. data/vendor/assets/js/plugins/foundation.dropdown.js +1324 -0
  58. data/vendor/assets/js/plugins/foundation.dropdown.js.map +1 -0
  59. data/vendor/assets/js/plugins/foundation.dropdown.min.js +2 -0
  60. data/vendor/assets/js/plugins/foundation.dropdown.min.js.map +1 -0
  61. data/vendor/assets/js/plugins/foundation.dropdownMenu.js +792 -0
  62. data/vendor/assets/js/plugins/foundation.dropdownMenu.js.map +1 -0
  63. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js +2 -0
  64. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js.map +1 -0
  65. data/vendor/assets/js/plugins/foundation.equalizer.js +638 -0
  66. data/vendor/assets/js/plugins/foundation.equalizer.js.map +1 -0
  67. data/vendor/assets/js/plugins/foundation.equalizer.min.js +2 -0
  68. data/vendor/assets/js/plugins/foundation.equalizer.min.js.map +1 -0
  69. data/vendor/assets/js/plugins/foundation.interchange.js +471 -0
  70. data/vendor/assets/js/plugins/foundation.interchange.js.map +1 -0
  71. data/vendor/assets/js/plugins/foundation.interchange.min.js +2 -0
  72. data/vendor/assets/js/plugins/foundation.interchange.min.js.map +1 -0
  73. data/vendor/assets/js/plugins/foundation.magellan.js +551 -0
  74. data/vendor/assets/js/plugins/foundation.magellan.js.map +1 -0
  75. data/vendor/assets/js/plugins/foundation.magellan.min.js +2 -0
  76. data/vendor/assets/js/plugins/foundation.magellan.min.js.map +1 -0
  77. data/vendor/assets/js/plugins/foundation.offcanvas.js +1164 -0
  78. data/vendor/assets/js/plugins/foundation.offcanvas.js.map +1 -0
  79. data/vendor/assets/js/plugins/foundation.offcanvas.min.js +2 -0
  80. data/vendor/assets/js/plugins/foundation.offcanvas.min.js.map +1 -0
  81. data/vendor/assets/js/plugins/foundation.orbit.js +883 -0
  82. data/vendor/assets/js/plugins/foundation.orbit.js.map +1 -0
  83. data/vendor/assets/js/plugins/foundation.orbit.min.js +2 -0
  84. data/vendor/assets/js/plugins/foundation.orbit.min.js.map +1 -0
  85. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js +546 -0
  86. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js.map +1 -0
  87. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js +2 -0
  88. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js.map +1 -0
  89. data/vendor/assets/js/plugins/foundation.responsiveMenu.js +437 -0
  90. data/vendor/assets/js/plugins/foundation.responsiveMenu.js.map +1 -0
  91. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js +2 -0
  92. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js.map +1 -0
  93. data/vendor/assets/js/plugins/foundation.responsiveToggle.js +405 -0
  94. data/vendor/assets/js/plugins/foundation.responsiveToggle.js.map +1 -0
  95. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js +2 -0
  96. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js.map +1 -0
  97. data/vendor/assets/js/plugins/foundation.reveal.js +1278 -0
  98. data/vendor/assets/js/plugins/foundation.reveal.js.map +1 -0
  99. data/vendor/assets/js/plugins/foundation.reveal.min.js +2 -0
  100. data/vendor/assets/js/plugins/foundation.reveal.min.js.map +1 -0
  101. data/vendor/assets/js/{foundation.slider.js → plugins/foundation.slider.js} +405 -271
  102. data/vendor/assets/js/plugins/foundation.slider.js.map +1 -0
  103. data/vendor/assets/js/plugins/foundation.slider.min.js +2 -0
  104. data/vendor/assets/js/plugins/foundation.slider.min.js.map +1 -0
  105. data/vendor/assets/js/plugins/foundation.smoothScroll.js +382 -0
  106. data/vendor/assets/js/plugins/foundation.smoothScroll.js.map +1 -0
  107. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js +2 -0
  108. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js.map +1 -0
  109. data/vendor/assets/js/{foundation.sticky.js → plugins/foundation.sticky.js} +325 -203
  110. data/vendor/assets/js/plugins/foundation.sticky.js.map +1 -0
  111. data/vendor/assets/js/plugins/foundation.sticky.min.js +2 -0
  112. data/vendor/assets/js/plugins/foundation.sticky.min.js.map +1 -0
  113. data/vendor/assets/js/plugins/foundation.tabs.js +813 -0
  114. data/vendor/assets/js/plugins/foundation.tabs.js.map +1 -0
  115. data/vendor/assets/js/plugins/foundation.tabs.min.js +2 -0
  116. data/vendor/assets/js/plugins/foundation.tabs.min.js.map +1 -0
  117. data/vendor/assets/js/plugins/foundation.toggler.js +713 -0
  118. data/vendor/assets/js/plugins/foundation.toggler.js.map +1 -0
  119. data/vendor/assets/js/plugins/foundation.toggler.min.js +2 -0
  120. data/vendor/assets/js/plugins/foundation.toggler.min.js.map +1 -0
  121. data/vendor/assets/js/plugins/foundation.tooltip.js +1346 -0
  122. data/vendor/assets/js/plugins/foundation.tooltip.js.map +1 -0
  123. data/vendor/assets/js/plugins/foundation.tooltip.min.js +2 -0
  124. data/vendor/assets/js/plugins/foundation.tooltip.min.js.map +1 -0
  125. data/vendor/assets/js/{foundation.util.box.js → plugins/foundation.util.box.js} +136 -54
  126. data/vendor/assets/js/plugins/foundation.util.box.js.map +1 -0
  127. data/vendor/assets/js/plugins/foundation.util.box.min.js +2 -0
  128. data/vendor/assets/js/plugins/foundation.util.box.min.js.map +1 -0
  129. data/vendor/assets/js/plugins/foundation.util.imageLoader.js +218 -0
  130. data/vendor/assets/js/plugins/foundation.util.imageLoader.js.map +1 -0
  131. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js +2 -0
  132. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js.map +1 -0
  133. data/vendor/assets/js/plugins/foundation.util.keyboard.js +351 -0
  134. data/vendor/assets/js/plugins/foundation.util.keyboard.js.map +1 -0
  135. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js +2 -0
  136. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js.map +1 -0
  137. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js +405 -0
  138. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js.map +1 -0
  139. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js +2 -0
  140. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js.map +1 -0
  141. data/vendor/assets/js/plugins/foundation.util.motion.js +282 -0
  142. data/vendor/assets/js/plugins/foundation.util.motion.js.map +1 -0
  143. data/vendor/assets/js/plugins/foundation.util.motion.min.js +2 -0
  144. data/vendor/assets/js/plugins/foundation.util.motion.min.js.map +1 -0
  145. data/vendor/assets/js/plugins/foundation.util.nest.js +240 -0
  146. data/vendor/assets/js/plugins/foundation.util.nest.js.map +1 -0
  147. data/vendor/assets/js/plugins/foundation.util.nest.min.js +2 -0
  148. data/vendor/assets/js/plugins/foundation.util.nest.min.js.map +1 -0
  149. data/vendor/assets/js/plugins/foundation.util.timer.js +226 -0
  150. data/vendor/assets/js/plugins/foundation.util.timer.js.map +1 -0
  151. data/vendor/assets/js/plugins/foundation.util.timer.min.js +2 -0
  152. data/vendor/assets/js/plugins/foundation.util.timer.min.js.map +1 -0
  153. data/vendor/assets/js/plugins/foundation.util.touch.js +365 -0
  154. data/vendor/assets/js/plugins/foundation.util.touch.js.map +1 -0
  155. data/vendor/assets/js/plugins/foundation.util.touch.min.js +2 -0
  156. data/vendor/assets/js/plugins/foundation.util.touch.min.js.map +1 -0
  157. data/vendor/assets/js/plugins/foundation.util.triggers.js +480 -0
  158. data/vendor/assets/js/plugins/foundation.util.triggers.js.map +1 -0
  159. data/vendor/assets/js/plugins/foundation.util.triggers.min.js +2 -0
  160. data/vendor/assets/js/plugins/foundation.util.triggers.min.js.map +1 -0
  161. data/vendor/assets/scss/_global.scss +10 -15
  162. data/vendor/assets/scss/components/_accordion-menu.scss +6 -3
  163. data/vendor/assets/scss/components/_accordion.scss +1 -0
  164. data/vendor/assets/scss/components/_breadcrumbs.scss +8 -6
  165. data/vendor/assets/scss/components/_button-group.scss +27 -8
  166. data/vendor/assets/scss/components/_button.scss +36 -8
  167. data/vendor/assets/scss/components/_card.scss +2 -2
  168. data/vendor/assets/scss/components/_drilldown.scss +5 -6
  169. data/vendor/assets/scss/components/_dropdown-menu.scss +15 -10
  170. data/vendor/assets/scss/components/_dropdown.scss +7 -4
  171. data/vendor/assets/scss/components/_flex.scss +6 -4
  172. data/vendor/assets/scss/components/_media-object.scss +33 -33
  173. data/vendor/assets/scss/components/_menu.scss +0 -4
  174. data/vendor/assets/scss/components/_off-canvas.scss +4 -4
  175. data/vendor/assets/scss/components/_orbit.scss +1 -0
  176. data/vendor/assets/scss/components/_responsive-embed.scss +0 -13
  177. data/vendor/assets/scss/components/_reveal.scss +19 -14
  178. data/vendor/assets/scss/components/_table.scss +3 -6
  179. data/vendor/assets/scss/components/_tabs.scss +1 -4
  180. data/vendor/assets/scss/components/_thumbnail.scss +1 -1
  181. data/vendor/assets/scss/components/_visibility.scss +5 -2
  182. data/vendor/assets/scss/forms/_error.scss +1 -0
  183. data/vendor/assets/scss/forms/_input-group.scss +10 -10
  184. data/vendor/assets/scss/forms/_meter.scss +5 -5
  185. data/vendor/assets/scss/forms/_progress.scss +6 -6
  186. data/vendor/assets/scss/forms/_range.scss +5 -5
  187. data/vendor/assets/scss/forms/_text.scss +7 -7
  188. data/vendor/assets/scss/foundation.scss +74 -57
  189. data/vendor/assets/scss/grid/_column.scss +2 -6
  190. data/vendor/assets/scss/grid/_flex-grid.scss +1 -0
  191. data/vendor/assets/scss/grid/_gutter.scss +0 -15
  192. data/vendor/assets/scss/grid/_position.scss +28 -4
  193. data/vendor/assets/scss/motion-ui/_settings.scss +1 -0
  194. data/vendor/assets/scss/motion-ui/effects/_fade.scss +1 -4
  195. data/vendor/assets/scss/motion-ui/effects/_hinge.scss +4 -3
  196. data/vendor/assets/scss/motion-ui/effects/_shake.scss +1 -1
  197. data/vendor/assets/scss/motion-ui/effects/_slide.scss +4 -3
  198. data/vendor/assets/scss/motion-ui/effects/_spin.scss +4 -3
  199. data/vendor/assets/scss/motion-ui/effects/_wiggle.scss +1 -1
  200. data/vendor/assets/scss/motion-ui/effects/_zoom.scss +2 -2
  201. data/vendor/assets/scss/motion-ui/motion-ui.scss +2 -0
  202. data/vendor/assets/scss/motion-ui/transitions/_fade.scss +6 -4
  203. data/vendor/assets/scss/motion-ui/transitions/_hinge.scss +3 -2
  204. data/vendor/assets/scss/motion-ui/transitions/_slide.scss +3 -2
  205. data/vendor/assets/scss/motion-ui/transitions/_spin.scss +2 -1
  206. data/vendor/assets/scss/motion-ui/transitions/_zoom.scss +6 -4
  207. data/vendor/assets/scss/motion-ui/util/_animation.scss +1 -1
  208. data/vendor/assets/scss/motion-ui/util/_args.scss +2 -2
  209. data/vendor/assets/scss/motion-ui/util/_function.scss +94 -0
  210. data/vendor/assets/scss/motion-ui/util/_keyframe.scss +5 -5
  211. data/vendor/assets/scss/motion-ui/util/_series.scss +20 -17
  212. data/vendor/assets/scss/motion-ui/util/_string.scss +36 -0
  213. data/vendor/assets/scss/prototype/_relation.scss +1 -1
  214. data/vendor/assets/scss/prototype/_rounded.scss +3 -0
  215. data/vendor/assets/scss/prototype/_spacing.scss +94 -121
  216. data/vendor/assets/scss/settings/_settings.scss +5 -5
  217. data/vendor/assets/scss/typography/_base.scss +2 -2
  218. data/vendor/assets/scss/typography/_helpers.scss +1 -1
  219. data/vendor/assets/scss/typography/_print.scss +4 -0
  220. data/vendor/assets/scss/util/_breakpoint.scss +22 -10
  221. data/vendor/assets/scss/util/_color.scss +11 -1
  222. data/vendor/assets/scss/util/_direction.scss +1 -1
  223. data/vendor/assets/scss/util/_flex.scss +12 -7
  224. data/vendor/assets/scss/util/_mixins.scss +7 -3
  225. data/vendor/assets/scss/util/_unit.scss +3 -3
  226. data/vendor/assets/scss/vendor/normalize.scss +281 -0
  227. data/vendor/assets/scss/xy-grid/_cell.scss +33 -17
  228. data/vendor/assets/scss/xy-grid/_classes.scss +31 -11
  229. data/vendor/assets/scss/xy-grid/_collapse.scss +2 -1
  230. data/vendor/assets/scss/xy-grid/_frame.scss +2 -1
  231. data/vendor/assets/scss/xy-grid/_grid.scss +1 -0
  232. data/vendor/assets/scss/xy-grid/_gutters.scss +1 -1
  233. data/vendor/assets/scss/xy-grid/_layout.scss +2 -1
  234. data/vendor/assets/scss/xy-grid/_position.scss +5 -1
  235. metadata +172 -80
  236. data/vendor/assets/_vendor/normalize-scss/sass/_normalize.scss +0 -3
  237. data/vendor/assets/_vendor/normalize-scss/sass/normalize/_import-now.scss +0 -11
  238. data/vendor/assets/_vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +0 -676
  239. data/vendor/assets/_vendor/normalize-scss/sass/normalize/_variables.scss +0 -36
  240. data/vendor/assets/_vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +0 -61
  241. data/vendor/assets/js/foundation.accordion.js +0 -511
  242. data/vendor/assets/js/foundation.accordionMenu.js +0 -527
  243. data/vendor/assets/js/foundation.core.js +0 -860
  244. data/vendor/assets/js/foundation.drilldown.js +0 -759
  245. data/vendor/assets/js/foundation.dropdown.js +0 -1151
  246. data/vendor/assets/js/foundation.dropdownMenu.js +0 -677
  247. data/vendor/assets/js/foundation.equalizer.js +0 -542
  248. data/vendor/assets/js/foundation.interchange.js +0 -399
  249. data/vendor/assets/js/foundation.magellan.js +0 -449
  250. data/vendor/assets/js/foundation.offcanvas.js +0 -1054
  251. data/vendor/assets/js/foundation.orbit.js +0 -767
  252. data/vendor/assets/js/foundation.responsiveAccordionTabs.js +0 -440
  253. data/vendor/assets/js/foundation.responsiveMenu.js +0 -362
  254. data/vendor/assets/js/foundation.responsiveToggle.js +0 -336
  255. data/vendor/assets/js/foundation.reveal.js +0 -1065
  256. data/vendor/assets/js/foundation.smoothScroll.js +0 -303
  257. data/vendor/assets/js/foundation.tabs.js +0 -678
  258. data/vendor/assets/js/foundation.toggler.js +0 -601
  259. data/vendor/assets/js/foundation.tooltip.js +0 -1194
  260. data/vendor/assets/js/foundation.util.imageLoader.js +0 -163
  261. data/vendor/assets/js/foundation.util.keyboard.js +0 -298
  262. data/vendor/assets/js/foundation.util.mediaQuery.js +0 -354
  263. data/vendor/assets/js/foundation.util.motion.js +0 -231
  264. data/vendor/assets/js/foundation.util.nest.js +0 -181
  265. data/vendor/assets/js/foundation.util.timer.js +0 -170
  266. data/vendor/assets/js/foundation.util.touch.js +0 -275
  267. data/vendor/assets/js/foundation.util.triggers.js +0 -398
  268. data/vendor/assets/scss/prototype/_typescale.scss +0 -20
@@ -1,336 +0,0 @@
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 = 92);
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
- /***/ 2:
86
- /***/ (function(module, exports) {
87
-
88
- module.exports = {Plugin: window.Foundation.Plugin};
89
-
90
- /***/ }),
91
-
92
- /***/ 26:
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_responsiveToggle__ = __webpack_require__(56);
100
-
101
-
102
-
103
- __WEBPACK_IMPORTED_MODULE_0__foundation_core__["Foundation"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_responsiveToggle__["a" /* ResponsiveToggle */], 'ResponsiveToggle');
104
-
105
- /***/ }),
106
-
107
- /***/ 4:
108
- /***/ (function(module, exports) {
109
-
110
- module.exports = {Motion: window.Foundation.Motion, Move: window.Foundation.Move};
111
-
112
- /***/ }),
113
-
114
- /***/ 56:
115
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
116
-
117
- "use strict";
118
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ResponsiveToggle; });
119
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);
120
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);
121
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__ = __webpack_require__(6);
122
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__);
123
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_motion__ = __webpack_require__(4);
124
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_motion___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_motion__);
125
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_plugin__ = __webpack_require__(2);
126
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_plugin__);
127
-
128
-
129
- 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; }; }();
130
-
131
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
132
-
133
- 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; }
134
-
135
- 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; }
136
-
137
-
138
-
139
-
140
-
141
-
142
-
143
- /**
144
- * ResponsiveToggle module.
145
- * @module foundation.responsiveToggle
146
- * @requires foundation.util.mediaQuery
147
- * @requires foundation.util.motion
148
- */
149
-
150
- var ResponsiveToggle = function (_Plugin) {
151
- _inherits(ResponsiveToggle, _Plugin);
152
-
153
- function ResponsiveToggle() {
154
- _classCallCheck(this, ResponsiveToggle);
155
-
156
- return _possibleConstructorReturn(this, (ResponsiveToggle.__proto__ || Object.getPrototypeOf(ResponsiveToggle)).apply(this, arguments));
157
- }
158
-
159
- _createClass(ResponsiveToggle, [{
160
- key: '_setup',
161
-
162
- /**
163
- * Creates a new instance of Tab Bar.
164
- * @class
165
- * @name ResponsiveToggle
166
- * @fires ResponsiveToggle#init
167
- * @param {jQuery} element - jQuery object to attach tab bar functionality to.
168
- * @param {Object} options - Overrides to the default plugin settings.
169
- */
170
- value: function _setup(element, options) {
171
- this.$element = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(element);
172
- this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, ResponsiveToggle.defaults, this.$element.data(), options);
173
- this.className = 'ResponsiveToggle'; // ie9 back compat
174
-
175
- this._init();
176
- this._events();
177
- }
178
-
179
- /**
180
- * Initializes the tab bar by finding the target element, toggling element, and running update().
181
- * @function
182
- * @private
183
- */
184
-
185
- }, {
186
- key: '_init',
187
- value: function _init() {
188
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__["MediaQuery"]._init();
189
- var targetID = this.$element.data('responsive-toggle');
190
- if (!targetID) {
191
- console.error('Your tab bar needs an ID of a Menu as the value of data-tab-bar.');
192
- }
193
-
194
- this.$targetMenu = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + targetID);
195
- this.$toggler = this.$element.find('[data-toggle]').filter(function () {
196
- var target = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle');
197
- return target === targetID || target === "";
198
- });
199
- this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, this.options, this.$targetMenu.data());
200
-
201
- // If they were set, parse the animation classes
202
- if (this.options.animate) {
203
- var input = this.options.animate.split(' ');
204
-
205
- this.animationIn = input[0];
206
- this.animationOut = input[1] || null;
207
- }
208
-
209
- this._update();
210
- }
211
-
212
- /**
213
- * Adds necessary event handlers for the tab bar to work.
214
- * @function
215
- * @private
216
- */
217
-
218
- }, {
219
- key: '_events',
220
- value: function _events() {
221
- var _this = this;
222
-
223
- this._updateMqHandler = this._update.bind(this);
224
-
225
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('changed.zf.mediaquery', this._updateMqHandler);
226
-
227
- this.$toggler.on('click.zf.responsiveToggle', this.toggleMenu.bind(this));
228
- }
229
-
230
- /**
231
- * Checks the current media query to determine if the tab bar should be visible or hidden.
232
- * @function
233
- * @private
234
- */
235
-
236
- }, {
237
- key: '_update',
238
- value: function _update() {
239
- // Mobile
240
- if (!__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__["MediaQuery"].atLeast(this.options.hideFor)) {
241
- this.$element.show();
242
- this.$targetMenu.hide();
243
- }
244
-
245
- // Desktop
246
- else {
247
- this.$element.hide();
248
- this.$targetMenu.show();
249
- }
250
- }
251
-
252
- /**
253
- * Toggles the element attached to the tab bar. The toggle only happens if the screen is small enough to allow it.
254
- * @function
255
- * @fires ResponsiveToggle#toggled
256
- */
257
-
258
- }, {
259
- key: 'toggleMenu',
260
- value: function toggleMenu() {
261
- var _this3 = this;
262
-
263
- if (!__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__["MediaQuery"].atLeast(this.options.hideFor)) {
264
- /**
265
- * Fires when the element attached to the tab bar toggles.
266
- * @event ResponsiveToggle#toggled
267
- */
268
- if (this.options.animate) {
269
- if (this.$targetMenu.is(':hidden')) {
270
- __WEBPACK_IMPORTED_MODULE_2__foundation_util_motion__["Motion"].animateIn(this.$targetMenu, this.animationIn, function () {
271
- _this3.$element.trigger('toggled.zf.responsiveToggle');
272
- _this3.$targetMenu.find('[data-mutate]').triggerHandler('mutateme.zf.trigger');
273
- });
274
- } else {
275
- __WEBPACK_IMPORTED_MODULE_2__foundation_util_motion__["Motion"].animateOut(this.$targetMenu, this.animationOut, function () {
276
- _this3.$element.trigger('toggled.zf.responsiveToggle');
277
- });
278
- }
279
- } else {
280
- this.$targetMenu.toggle(0);
281
- this.$targetMenu.find('[data-mutate]').trigger('mutateme.zf.trigger');
282
- this.$element.trigger('toggled.zf.responsiveToggle');
283
- }
284
- }
285
- }
286
- }, {
287
- key: '_destroy',
288
- value: function _destroy() {
289
- this.$element.off('.zf.responsiveToggle');
290
- this.$toggler.off('.zf.responsiveToggle');
291
-
292
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('changed.zf.mediaquery', this._updateMqHandler);
293
- }
294
- }]);
295
-
296
- return ResponsiveToggle;
297
- }(__WEBPACK_IMPORTED_MODULE_3__foundation_plugin__["Plugin"]);
298
-
299
- ResponsiveToggle.defaults = {
300
- /**
301
- * The breakpoint after which the menu is always shown, and the tab bar is hidden.
302
- * @option
303
- * @type {string}
304
- * @default 'medium'
305
- */
306
- hideFor: 'medium',
307
-
308
- /**
309
- * To decide if the toggle should be animated or not.
310
- * @option
311
- * @type {boolean}
312
- * @default false
313
- */
314
- animate: false
315
- };
316
-
317
-
318
-
319
- /***/ }),
320
-
321
- /***/ 6:
322
- /***/ (function(module, exports) {
323
-
324
- module.exports = {MediaQuery: window.Foundation.MediaQuery};
325
-
326
- /***/ }),
327
-
328
- /***/ 92:
329
- /***/ (function(module, exports, __webpack_require__) {
330
-
331
- module.exports = __webpack_require__(26);
332
-
333
-
334
- /***/ })
335
-
336
- /******/ });
@@ -1,1065 +0,0 @@
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 = 93);
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
- /***/ 2:
86
- /***/ (function(module, exports) {
87
-
88
- module.exports = {Plugin: window.Foundation.Plugin};
89
-
90
- /***/ }),
91
-
92
- /***/ 27:
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_reveal__ = __webpack_require__(57);
100
-
101
-
102
-
103
- __WEBPACK_IMPORTED_MODULE_0__foundation_core__["Foundation"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_reveal__["a" /* Reveal */], 'Reveal');
104
-
105
- /***/ }),
106
-
107
- /***/ 4:
108
- /***/ (function(module, exports) {
109
-
110
- module.exports = {Motion: window.Foundation.Motion, Move: window.Foundation.Move};
111
-
112
- /***/ }),
113
-
114
- /***/ 5:
115
- /***/ (function(module, exports) {
116
-
117
- module.exports = {Keyboard: window.Foundation.Keyboard};
118
-
119
- /***/ }),
120
-
121
- /***/ 57:
122
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
123
-
124
- "use strict";
125
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Reveal; });
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_keyboard__ = __webpack_require__(5);
129
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__);
130
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__ = __webpack_require__(6);
131
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__);
132
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__ = __webpack_require__(4);
133
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__);
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
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__foundation_util_triggers__ = __webpack_require__(7);
137
-
138
-
139
- 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; }; }();
140
-
141
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
142
-
143
- 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; }
144
-
145
- 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; }
146
-
147
-
148
-
149
-
150
-
151
-
152
-
153
-
154
- /**
155
- * Reveal module.
156
- * @module foundation.reveal
157
- * @requires foundation.util.keyboard
158
- * @requires foundation.util.triggers
159
- * @requires foundation.util.mediaQuery
160
- * @requires foundation.util.motion if using animations
161
- */
162
-
163
- var Reveal = function (_Plugin) {
164
- _inherits(Reveal, _Plugin);
165
-
166
- function Reveal() {
167
- _classCallCheck(this, Reveal);
168
-
169
- return _possibleConstructorReturn(this, (Reveal.__proto__ || Object.getPrototypeOf(Reveal)).apply(this, arguments));
170
- }
171
-
172
- _createClass(Reveal, [{
173
- key: '_setup',
174
-
175
- /**
176
- * Creates a new instance of Reveal.
177
- * @class
178
- * @name Reveal
179
- * @param {jQuery} element - jQuery object to use for the modal.
180
- * @param {Object} options - optional parameters.
181
- */
182
- value: function _setup(element, options) {
183
- this.$element = element;
184
- this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, Reveal.defaults, this.$element.data(), options);
185
- this.className = 'Reveal'; // ie9 back compat
186
- this._init();
187
-
188
- // Triggers init is idempotent, just need to make sure it is initialized
189
- __WEBPACK_IMPORTED_MODULE_5__foundation_util_triggers__["a" /* Triggers */].init(__WEBPACK_IMPORTED_MODULE_0_jquery___default.a);
190
-
191
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].register('Reveal', {
192
- 'ESCAPE': 'close'
193
- });
194
- }
195
-
196
- /**
197
- * Initializes the modal by adding the overlay and close buttons, (if selected).
198
- * @private
199
- */
200
-
201
- }, {
202
- key: '_init',
203
- value: function _init() {
204
- __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__["MediaQuery"]._init();
205
- this.id = this.$element.attr('id');
206
- this.isActive = false;
207
- this.cached = { mq: __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__["MediaQuery"].current };
208
- this.isMobile = mobileSniff();
209
-
210
- this.$anchor = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-open="' + this.id + '"]').length ? __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-open="' + this.id + '"]') : __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-toggle="' + this.id + '"]');
211
- this.$anchor.attr({
212
- 'aria-controls': this.id,
213
- 'aria-haspopup': true,
214
- 'tabindex': 0
215
- });
216
-
217
- if (this.options.fullScreen || this.$element.hasClass('full')) {
218
- this.options.fullScreen = true;
219
- this.options.overlay = false;
220
- }
221
- if (this.options.overlay && !this.$overlay) {
222
- this.$overlay = this._makeOverlay(this.id);
223
- }
224
-
225
- this.$element.attr({
226
- 'role': 'dialog',
227
- 'aria-hidden': true,
228
- 'data-yeti-box': this.id,
229
- 'data-resize': this.id
230
- });
231
-
232
- if (this.$overlay) {
233
- this.$element.detach().appendTo(this.$overlay);
234
- } else {
235
- this.$element.detach().appendTo(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.options.appendTo));
236
- this.$element.addClass('without-overlay');
237
- }
238
- this._events();
239
- if (this.options.deepLink && window.location.hash === '#' + this.id) {
240
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).one('load.zf.reveal', this.open.bind(this));
241
- }
242
- }
243
-
244
- /**
245
- * Creates an overlay div to display behind the modal.
246
- * @private
247
- */
248
-
249
- }, {
250
- key: '_makeOverlay',
251
- value: function _makeOverlay() {
252
- var additionalOverlayClasses = '';
253
-
254
- if (this.options.additionalOverlayClasses) {
255
- additionalOverlayClasses = ' ' + this.options.additionalOverlayClasses;
256
- }
257
-
258
- return __WEBPACK_IMPORTED_MODULE_0_jquery___default()('<div></div>').addClass('reveal-overlay' + additionalOverlayClasses).appendTo(this.options.appendTo);
259
- }
260
-
261
- /**
262
- * Updates position of modal
263
- * TODO: Figure out if we actually need to cache these values or if it doesn't matter
264
- * @private
265
- */
266
-
267
- }, {
268
- key: '_updatePosition',
269
- value: function _updatePosition() {
270
- var width = this.$element.outerWidth();
271
- var outerWidth = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).width();
272
- var height = this.$element.outerHeight();
273
- var outerHeight = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).height();
274
- var left, top;
275
- if (this.options.hOffset === 'auto') {
276
- left = parseInt((outerWidth - width) / 2, 10);
277
- } else {
278
- left = parseInt(this.options.hOffset, 10);
279
- }
280
- if (this.options.vOffset === 'auto') {
281
- if (height > outerHeight) {
282
- top = parseInt(Math.min(100, outerHeight / 10), 10);
283
- } else {
284
- top = parseInt((outerHeight - height) / 4, 10);
285
- }
286
- } else {
287
- top = parseInt(this.options.vOffset, 10);
288
- }
289
- this.$element.css({ top: top + 'px' });
290
- // only worry about left if we don't have an overlay or we havea horizontal offset,
291
- // otherwise we're perfectly in the middle
292
- if (!this.$overlay || this.options.hOffset !== 'auto') {
293
- this.$element.css({ left: left + 'px' });
294
- this.$element.css({ margin: '0px' });
295
- }
296
- }
297
-
298
- /**
299
- * Adds event handlers for the modal.
300
- * @private
301
- */
302
-
303
- }, {
304
- key: '_events',
305
- value: function _events() {
306
- var _this3 = this;
307
-
308
- var _this = this;
309
-
310
- this.$element.on({
311
- 'open.zf.trigger': this.open.bind(this),
312
- 'close.zf.trigger': function (event, $element) {
313
- if (event.target === _this.$element[0] || __WEBPACK_IMPORTED_MODULE_0_jquery___default()(event.target).parents('[data-closable]')[0] === $element) {
314
- // only close reveal when it's explicitly called
315
- return _this3.close.apply(_this3);
316
- }
317
- },
318
- 'toggle.zf.trigger': this.toggle.bind(this),
319
- 'resizeme.zf.trigger': function () {
320
- _this._updatePosition();
321
- }
322
- });
323
-
324
- if (this.options.closeOnClick && this.options.overlay) {
325
- this.$overlay.off('.zf.reveal').on('click.zf.reveal', function (e) {
326
- if (e.target === _this.$element[0] || __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.contains(_this.$element[0], e.target) || !__WEBPACK_IMPORTED_MODULE_0_jquery___default.a.contains(document, e.target)) {
327
- return;
328
- }
329
- _this.close();
330
- });
331
- }
332
- if (this.options.deepLink) {
333
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('popstate.zf.reveal:' + this.id, this._handleState.bind(this));
334
- }
335
- }
336
-
337
- /**
338
- * Handles modal methods on back/forward button clicks or any other event that triggers popstate.
339
- * @private
340
- */
341
-
342
- }, {
343
- key: '_handleState',
344
- value: function _handleState(e) {
345
- if (window.location.hash === '#' + this.id && !this.isActive) {
346
- this.open();
347
- } else {
348
- this.close();
349
- }
350
- }
351
-
352
- /**
353
- * Opens the modal controlled by `this.$anchor`, and closes all others by default.
354
- * @function
355
- * @fires Reveal#closeme
356
- * @fires Reveal#open
357
- */
358
-
359
- }, {
360
- key: 'open',
361
- value: function open() {
362
- var _this4 = this;
363
-
364
- // either update or replace browser history
365
- if (this.options.deepLink) {
366
- var hash = '#' + this.id;
367
-
368
- if (window.history.pushState) {
369
- if (this.options.updateHistory) {
370
- window.history.pushState({}, '', hash);
371
- } else {
372
- window.history.replaceState({}, '', hash);
373
- }
374
- } else {
375
- window.location.hash = hash;
376
- }
377
- }
378
-
379
- this.isActive = true;
380
-
381
- // Make elements invisible, but remove display: none so we can get size and positioning
382
- this.$element.css({ 'visibility': 'hidden' }).show().scrollTop(0);
383
- if (this.options.overlay) {
384
- this.$overlay.css({ 'visibility': 'hidden' }).show();
385
- }
386
-
387
- this._updatePosition();
388
-
389
- this.$element.hide().css({ 'visibility': '' });
390
-
391
- if (this.$overlay) {
392
- this.$overlay.css({ 'visibility': '' }).hide();
393
- if (this.$element.hasClass('fast')) {
394
- this.$overlay.addClass('fast');
395
- } else if (this.$element.hasClass('slow')) {
396
- this.$overlay.addClass('slow');
397
- }
398
- }
399
-
400
- if (!this.options.multipleOpened) {
401
- /**
402
- * Fires immediately before the modal opens.
403
- * Closes any other modals that are currently open
404
- * @event Reveal#closeme
405
- */
406
- this.$element.trigger('closeme.zf.reveal', this.id);
407
- }
408
-
409
- var _this = this;
410
-
411
- function addRevealOpenClasses() {
412
- if (_this.isMobile) {
413
- if (!_this.originalScrollPos) {
414
- _this.originalScrollPos = window.pageYOffset;
415
- }
416
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('html, body').addClass('is-reveal-open');
417
- } else {
418
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').addClass('is-reveal-open');
419
- }
420
- }
421
- // Motion UI method of reveal
422
- if (this.options.animationIn) {
423
- var afterAnimation = function () {
424
- _this.$element.attr({
425
- 'aria-hidden': false,
426
- 'tabindex': -1
427
- }).focus();
428
- addRevealOpenClasses();
429
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].trapFocus(_this.$element);
430
- };
431
-
432
- if (this.options.overlay) {
433
- __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__["Motion"].animateIn(this.$overlay, 'fade-in');
434
- }
435
- __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__["Motion"].animateIn(this.$element, this.options.animationIn, function () {
436
- if (_this4.$element) {
437
- // protect against object having been removed
438
- _this4.focusableElements = __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].findFocusable(_this4.$element);
439
- afterAnimation();
440
- }
441
- });
442
- }
443
- // jQuery method of reveal
444
- else {
445
- if (this.options.overlay) {
446
- this.$overlay.show(0);
447
- }
448
- this.$element.show(this.options.showDelay);
449
- }
450
-
451
- // handle accessibility
452
- this.$element.attr({
453
- 'aria-hidden': false,
454
- 'tabindex': -1
455
- }).focus();
456
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].trapFocus(this.$element);
457
-
458
- addRevealOpenClasses();
459
-
460
- this._extraHandlers();
461
-
462
- /**
463
- * Fires when the modal has successfully opened.
464
- * @event Reveal#open
465
- */
466
- this.$element.trigger('open.zf.reveal');
467
- }
468
-
469
- /**
470
- * Adds extra event handlers for the body and window if necessary.
471
- * @private
472
- */
473
-
474
- }, {
475
- key: '_extraHandlers',
476
- value: function _extraHandlers() {
477
- var _this = this;
478
- if (!this.$element) {
479
- return;
480
- } // If we're in the middle of cleanup, don't freak out
481
- this.focusableElements = __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].findFocusable(this.$element);
482
-
483
- if (!this.options.overlay && this.options.closeOnClick && !this.options.fullScreen) {
484
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').on('click.zf.reveal', function (e) {
485
- if (e.target === _this.$element[0] || __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.contains(_this.$element[0], e.target) || !__WEBPACK_IMPORTED_MODULE_0_jquery___default.a.contains(document, e.target)) {
486
- return;
487
- }
488
- _this.close();
489
- });
490
- }
491
-
492
- if (this.options.closeOnEsc) {
493
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('keydown.zf.reveal', function (e) {
494
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].handleKey(e, 'Reveal', {
495
- close: function () {
496
- if (_this.options.closeOnEsc) {
497
- _this.close();
498
- }
499
- }
500
- });
501
- });
502
- }
503
- }
504
-
505
- /**
506
- * Closes the modal.
507
- * @function
508
- * @fires Reveal#closed
509
- */
510
-
511
- }, {
512
- key: 'close',
513
- value: function close() {
514
- if (!this.isActive || !this.$element.is(':visible')) {
515
- return false;
516
- }
517
- var _this = this;
518
-
519
- // Motion UI method of hiding
520
- if (this.options.animationOut) {
521
- if (this.options.overlay) {
522
- __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__["Motion"].animateOut(this.$overlay, 'fade-out');
523
- }
524
-
525
- __WEBPACK_IMPORTED_MODULE_3__foundation_util_motion__["Motion"].animateOut(this.$element, this.options.animationOut, finishUp);
526
- }
527
- // jQuery method of hiding
528
- else {
529
- this.$element.hide(this.options.hideDelay);
530
-
531
- if (this.options.overlay) {
532
- this.$overlay.hide(0, finishUp);
533
- } else {
534
- finishUp();
535
- }
536
- }
537
-
538
- // Conditionals to remove extra event listeners added on open
539
- if (this.options.closeOnEsc) {
540
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('keydown.zf.reveal');
541
- }
542
-
543
- if (!this.options.overlay && this.options.closeOnClick) {
544
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').off('click.zf.reveal');
545
- }
546
-
547
- this.$element.off('keydown.zf.reveal');
548
-
549
- function finishUp() {
550
- if (_this.isMobile) {
551
- if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()('.reveal:visible').length === 0) {
552
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('html, body').removeClass('is-reveal-open');
553
- }
554
- if (_this.originalScrollPos) {
555
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').scrollTop(_this.originalScrollPos);
556
- _this.originalScrollPos = null;
557
- }
558
- } else {
559
- if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()('.reveal:visible').length === 0) {
560
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').removeClass('is-reveal-open');
561
- }
562
- }
563
-
564
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__["Keyboard"].releaseFocus(_this.$element);
565
-
566
- _this.$element.attr('aria-hidden', true);
567
-
568
- /**
569
- * Fires when the modal is done closing.
570
- * @event Reveal#closed
571
- */
572
- _this.$element.trigger('closed.zf.reveal');
573
- }
574
-
575
- /**
576
- * Resets the modal content
577
- * This prevents a running video to keep going in the background
578
- */
579
- if (this.options.resetOnClose) {
580
- this.$element.html(this.$element.html());
581
- }
582
-
583
- this.isActive = false;
584
- if (_this.options.deepLink) {
585
- if (window.history.replaceState) {
586
- window.history.replaceState('', document.title, window.location.href.replace('#' + this.id, ''));
587
- } else {
588
- window.location.hash = '';
589
- }
590
- }
591
-
592
- this.$anchor.focus();
593
- }
594
-
595
- /**
596
- * Toggles the open/closed state of a modal.
597
- * @function
598
- */
599
-
600
- }, {
601
- key: 'toggle',
602
- value: function toggle() {
603
- if (this.isActive) {
604
- this.close();
605
- } else {
606
- this.open();
607
- }
608
- }
609
- }, {
610
- key: '_destroy',
611
-
612
-
613
- /**
614
- * Destroys an instance of a modal.
615
- * @function
616
- */
617
- value: function _destroy() {
618
- if (this.options.overlay) {
619
- this.$element.appendTo(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.options.appendTo)); // move $element outside of $overlay to prevent error unregisterPlugin()
620
- this.$overlay.hide().off().remove();
621
- }
622
- this.$element.hide().off();
623
- this.$anchor.off('.zf');
624
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('.zf.reveal:' + this.id);
625
- }
626
- }]);
627
-
628
- return Reveal;
629
- }(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__["Plugin"]);
630
-
631
- Reveal.defaults = {
632
- /**
633
- * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
634
- * @option
635
- * @type {string}
636
- * @default ''
637
- */
638
- animationIn: '',
639
- /**
640
- * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
641
- * @option
642
- * @type {string}
643
- * @default ''
644
- */
645
- animationOut: '',
646
- /**
647
- * Time, in ms, to delay the opening of a modal after a click if no animation used.
648
- * @option
649
- * @type {number}
650
- * @default 0
651
- */
652
- showDelay: 0,
653
- /**
654
- * Time, in ms, to delay the closing of a modal after a click if no animation used.
655
- * @option
656
- * @type {number}
657
- * @default 0
658
- */
659
- hideDelay: 0,
660
- /**
661
- * Allows a click on the body/overlay to close the modal.
662
- * @option
663
- * @type {boolean}
664
- * @default true
665
- */
666
- closeOnClick: true,
667
- /**
668
- * Allows the modal to close if the user presses the `ESCAPE` key.
669
- * @option
670
- * @type {boolean}
671
- * @default true
672
- */
673
- closeOnEsc: true,
674
- /**
675
- * If true, allows multiple modals to be displayed at once.
676
- * @option
677
- * @type {boolean}
678
- * @default false
679
- */
680
- multipleOpened: false,
681
- /**
682
- * Distance, in pixels, the modal should push down from the top of the screen.
683
- * @option
684
- * @type {number|string}
685
- * @default auto
686
- */
687
- vOffset: 'auto',
688
- /**
689
- * Distance, in pixels, the modal should push in from the side of the screen.
690
- * @option
691
- * @type {number|string}
692
- * @default auto
693
- */
694
- hOffset: 'auto',
695
- /**
696
- * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.
697
- * @option
698
- * @type {boolean}
699
- * @default false
700
- */
701
- fullScreen: false,
702
- /**
703
- * Percentage of screen height the modal should push up from the bottom of the view.
704
- * @option
705
- * @type {number}
706
- * @default 10
707
- */
708
- btmOffsetPct: 10,
709
- /**
710
- * Allows the modal to generate an overlay div, which will cover the view when modal opens.
711
- * @option
712
- * @type {boolean}
713
- * @default true
714
- */
715
- overlay: true,
716
- /**
717
- * Allows the modal to remove and reinject markup on close. Should be true if using video elements w/o using provider's api, otherwise, videos will continue to play in the background.
718
- * @option
719
- * @type {boolean}
720
- * @default false
721
- */
722
- resetOnClose: false,
723
- /**
724
- * Allows the modal to alter the url on open/close, and allows the use of the `back` button to close modals. ALSO, allows a modal to auto-maniacally open on page load IF the hash === the modal's user-set id.
725
- * @option
726
- * @type {boolean}
727
- * @default false
728
- */
729
- deepLink: false,
730
- /**
731
- * Update the browser history with the open modal
732
- * @option
733
- * @default false
734
- */
735
- updateHistory: false,
736
- /**
737
- * Allows the modal to append to custom div.
738
- * @option
739
- * @type {string}
740
- * @default "body"
741
- */
742
- appendTo: "body",
743
- /**
744
- * Allows adding additional class names to the reveal overlay.
745
- * @option
746
- * @type {string}
747
- * @default ''
748
- */
749
- additionalOverlayClasses: ''
750
- };
751
-
752
- function iPhoneSniff() {
753
- return (/iP(ad|hone|od).*OS/.test(window.navigator.userAgent)
754
- );
755
- }
756
-
757
- function androidSniff() {
758
- return (/Android/.test(window.navigator.userAgent)
759
- );
760
- }
761
-
762
- function mobileSniff() {
763
- return iPhoneSniff() || androidSniff();
764
- }
765
-
766
-
767
-
768
- /***/ }),
769
-
770
- /***/ 6:
771
- /***/ (function(module, exports) {
772
-
773
- module.exports = {MediaQuery: window.Foundation.MediaQuery};
774
-
775
- /***/ }),
776
-
777
- /***/ 7:
778
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
779
-
780
- "use strict";
781
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Triggers; });
782
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);
783
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);
784
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__ = __webpack_require__(4);
785
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__);
786
-
787
-
788
-
789
-
790
-
791
- var MutationObserver = function () {
792
- var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];
793
- for (var i = 0; i < prefixes.length; i++) {
794
- if (prefixes[i] + 'MutationObserver' in window) {
795
- return window[prefixes[i] + 'MutationObserver'];
796
- }
797
- }
798
- return false;
799
- }();
800
-
801
- var triggers = function (el, type) {
802
- el.data(type).split(' ').forEach(function (id) {
803
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id)[type === 'close' ? 'trigger' : 'triggerHandler'](type + '.zf.trigger', [el]);
804
- });
805
- };
806
-
807
- var Triggers = {
808
- Listeners: {
809
- Basic: {},
810
- Global: {}
811
- },
812
- Initializers: {}
813
- };
814
-
815
- Triggers.Listeners.Basic = {
816
- openListener: function () {
817
- triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'open');
818
- },
819
- closeListener: function () {
820
- var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('close');
821
- if (id) {
822
- triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'close');
823
- } else {
824
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('close.zf.trigger');
825
- }
826
- },
827
- toggleListener: function () {
828
- var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle');
829
- if (id) {
830
- triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'toggle');
831
- } else {
832
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('toggle.zf.trigger');
833
- }
834
- },
835
- closeableListener: function (e) {
836
- e.stopPropagation();
837
- var animation = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('closable');
838
-
839
- if (animation !== '') {
840
- __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__["Motion"].animateOut(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), animation, function () {
841
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('closed.zf');
842
- });
843
- } else {
844
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).fadeOut().trigger('closed.zf');
845
- }
846
- },
847
- toggleFocusListener: function () {
848
- var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle-focus');
849
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id).triggerHandler('toggle.zf.trigger', [__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this)]);
850
- }
851
- };
852
-
853
- // Elements with [data-open] will reveal a plugin that supports it when clicked.
854
- Triggers.Initializers.addOpenListener = function ($elem) {
855
- $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);
856
- $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);
857
- };
858
-
859
- // Elements with [data-close] will close a plugin that supports it when clicked.
860
- // If used without a value on [data-close], the event will bubble, allowing it to close a parent component.
861
- Triggers.Initializers.addCloseListener = function ($elem) {
862
- $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);
863
- $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);
864
- };
865
-
866
- // Elements with [data-toggle] will toggle a plugin that supports it when clicked.
867
- Triggers.Initializers.addToggleListener = function ($elem) {
868
- $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);
869
- $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);
870
- };
871
-
872
- // Elements with [data-closable] will respond to close.zf.trigger events.
873
- Triggers.Initializers.addCloseableListener = function ($elem) {
874
- $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);
875
- $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);
876
- };
877
-
878
- // Elements with [data-toggle-focus] will respond to coming in and out of focus
879
- Triggers.Initializers.addToggleFocusListener = function ($elem) {
880
- $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);
881
- $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);
882
- };
883
-
884
- // More Global/complex listeners and triggers
885
- Triggers.Listeners.Global = {
886
- resizeListener: function ($nodes) {
887
- if (!MutationObserver) {
888
- //fallback for IE 9
889
- $nodes.each(function () {
890
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('resizeme.zf.trigger');
891
- });
892
- }
893
- //trigger all listening elements and signal a resize event
894
- $nodes.attr('data-events', "resize");
895
- },
896
- scrollListener: function ($nodes) {
897
- if (!MutationObserver) {
898
- //fallback for IE 9
899
- $nodes.each(function () {
900
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('scrollme.zf.trigger');
901
- });
902
- }
903
- //trigger all listening elements and signal a scroll event
904
- $nodes.attr('data-events', "scroll");
905
- },
906
- closeMeListener: function (e, pluginId) {
907
- var plugin = e.namespace.split('.')[0];
908
- var plugins = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-' + plugin + ']').not('[data-yeti-box="' + pluginId + '"]');
909
-
910
- plugins.each(function () {
911
- var _this = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this);
912
- _this.triggerHandler('close.zf.trigger', [_this]);
913
- });
914
- }
915
-
916
- // Global, parses whole document.
917
- };Triggers.Initializers.addClosemeListener = function (pluginName) {
918
- var yetiBoxes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-yeti-box]'),
919
- plugNames = ['dropdown', 'tooltip', 'reveal'];
920
-
921
- if (pluginName) {
922
- if (typeof pluginName === 'string') {
923
- plugNames.push(pluginName);
924
- } else if (typeof pluginName === 'object' && typeof pluginName[0] === 'string') {
925
- plugNames.concat(pluginName);
926
- } else {
927
- console.error('Plugin names must be strings');
928
- }
929
- }
930
- if (yetiBoxes.length) {
931
- var listeners = plugNames.map(function (name) {
932
- return 'closeme.zf.' + name;
933
- }).join(' ');
934
-
935
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);
936
- }
937
- };
938
-
939
- function debounceGlobalListener(debounce, trigger, listener) {
940
- var timer = void 0,
941
- args = Array.prototype.slice.call(arguments, 3);
942
- __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(trigger).on(trigger, function (e) {
943
- if (timer) {
944
- clearTimeout(timer);
945
- }
946
- timer = setTimeout(function () {
947
- listener.apply(null, args);
948
- }, debounce || 10); //default time to emit scroll event
949
- });
950
- }
951
-
952
- Triggers.Initializers.addResizeListener = function (debounce) {
953
- var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-resize]');
954
- if ($nodes.length) {
955
- debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);
956
- }
957
- };
958
-
959
- Triggers.Initializers.addScrollListener = function (debounce) {
960
- var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-scroll]');
961
- if ($nodes.length) {
962
- debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);
963
- }
964
- };
965
-
966
- Triggers.Initializers.addMutationEventsListener = function ($elem) {
967
- if (!MutationObserver) {
968
- return false;
969
- }
970
- var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');
971
-
972
- //element callback
973
- var listeningElementsMutation = function (mutationRecordsList) {
974
- var $target = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(mutationRecordsList[0].target);
975
-
976
- //trigger the event handler for the element depending on type
977
- switch (mutationRecordsList[0].type) {
978
- case "attributes":
979
- if ($target.attr("data-events") === "scroll" && mutationRecordsList[0].attributeName === "data-events") {
980
- $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);
981
- }
982
- if ($target.attr("data-events") === "resize" && mutationRecordsList[0].attributeName === "data-events") {
983
- $target.triggerHandler('resizeme.zf.trigger', [$target]);
984
- }
985
- if (mutationRecordsList[0].attributeName === "style") {
986
- $target.closest("[data-mutate]").attr("data-events", "mutate");
987
- $target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
988
- }
989
- break;
990
-
991
- case "childList":
992
- $target.closest("[data-mutate]").attr("data-events", "mutate");
993
- $target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
994
- break;
995
-
996
- default:
997
- return false;
998
- //nothing
999
- }
1000
- };
1001
-
1002
- if ($nodes.length) {
1003
- //for each element that needs to listen for resizing, scrolling, or mutation add a single observer
1004
- for (var i = 0; i <= $nodes.length - 1; i++) {
1005
- var elementObserver = new MutationObserver(listeningElementsMutation);
1006
- elementObserver.observe($nodes[i], { attributes: true, childList: true, characterData: false, subtree: true, attributeFilter: ["data-events", "style"] });
1007
- }
1008
- }
1009
- };
1010
-
1011
- Triggers.Initializers.addSimpleListeners = function () {
1012
- var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);
1013
-
1014
- Triggers.Initializers.addOpenListener($document);
1015
- Triggers.Initializers.addCloseListener($document);
1016
- Triggers.Initializers.addToggleListener($document);
1017
- Triggers.Initializers.addCloseableListener($document);
1018
- Triggers.Initializers.addToggleFocusListener($document);
1019
- };
1020
-
1021
- Triggers.Initializers.addGlobalListeners = function () {
1022
- var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);
1023
- Triggers.Initializers.addMutationEventsListener($document);
1024
- Triggers.Initializers.addResizeListener();
1025
- Triggers.Initializers.addScrollListener();
1026
- Triggers.Initializers.addClosemeListener();
1027
- };
1028
-
1029
- Triggers.init = function ($, Foundation) {
1030
- if (typeof $.triggersInitialized === 'undefined') {
1031
- var $document = $(document);
1032
-
1033
- if (document.readyState === "complete") {
1034
- Triggers.Initializers.addSimpleListeners();
1035
- Triggers.Initializers.addGlobalListeners();
1036
- } else {
1037
- $(window).on('load', function () {
1038
- Triggers.Initializers.addSimpleListeners();
1039
- Triggers.Initializers.addGlobalListeners();
1040
- });
1041
- }
1042
-
1043
- $.triggersInitialized = true;
1044
- }
1045
-
1046
- if (Foundation) {
1047
- Foundation.Triggers = Triggers;
1048
- // Legacy included to be backwards compatible for now.
1049
- Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;
1050
- }
1051
- };
1052
-
1053
-
1054
-
1055
- /***/ }),
1056
-
1057
- /***/ 93:
1058
- /***/ (function(module, exports, __webpack_require__) {
1059
-
1060
- module.exports = __webpack_require__(27);
1061
-
1062
-
1063
- /***/ })
1064
-
1065
- /******/ });