foundation-rails 6.6.2.0 → 6.9.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (217) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.travis.yml +2 -0
  4. data/Appraisals +4 -0
  5. data/Gemfile +1 -1
  6. data/Gemfile.lock +198 -145
  7. data/bower.json +3 -3
  8. data/foundation-rails.gemspec +4 -4
  9. data/gemfiles/rails_7.1.gemfile +10 -0
  10. data/gemfiles/rails_7.1.gemfile.lock +261 -0
  11. data/lib/foundation/rails/version.rb +1 -1
  12. data/lib/generators/foundation/templates/_settings.scss +32 -28
  13. data/vendor/assets/js/foundation.cjs.js +1996 -3162
  14. data/vendor/assets/js/foundation.cjs.js.map +1 -1
  15. data/vendor/assets/js/foundation.es6.js +385 -292
  16. data/vendor/assets/js/foundation.es6.js.map +1 -1
  17. data/vendor/assets/js/foundation.esm.js +1663 -2832
  18. data/vendor/assets/js/foundation.esm.js.map +1 -1
  19. data/vendor/assets/js/foundation.js +2440 -3870
  20. data/vendor/assets/js/foundation.js.map +1 -1
  21. data/vendor/assets/js/foundation.min.js +1 -1
  22. data/vendor/assets/js/foundation.min.js.map +1 -1
  23. data/vendor/assets/js/plugins/foundation.abide.js +238 -344
  24. data/vendor/assets/js/plugins/foundation.abide.js.map +1 -1
  25. data/vendor/assets/js/plugins/foundation.abide.min.js +1 -1
  26. data/vendor/assets/js/plugins/foundation.abide.min.js.map +1 -1
  27. data/vendor/assets/js/plugins/foundation.accordion.js +197 -275
  28. data/vendor/assets/js/plugins/foundation.accordion.js.map +1 -1
  29. data/vendor/assets/js/plugins/foundation.accordion.min.js +1 -1
  30. data/vendor/assets/js/plugins/foundation.accordion.min.js.map +1 -1
  31. data/vendor/assets/js/plugins/foundation.accordionMenu.js +174 -260
  32. data/vendor/assets/js/plugins/foundation.accordionMenu.js.map +1 -1
  33. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js +1 -1
  34. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js.map +1 -1
  35. data/vendor/assets/js/plugins/foundation.core.js +308 -447
  36. data/vendor/assets/js/plugins/foundation.core.js.map +1 -1
  37. data/vendor/assets/js/plugins/foundation.core.min.js +1 -1
  38. data/vendor/assets/js/plugins/foundation.core.min.js.map +1 -1
  39. data/vendor/assets/js/plugins/foundation.drilldown.js +258 -358
  40. data/vendor/assets/js/plugins/foundation.drilldown.js.map +1 -1
  41. data/vendor/assets/js/plugins/foundation.drilldown.min.js +1 -1
  42. data/vendor/assets/js/plugins/foundation.drilldown.min.js.map +1 -1
  43. data/vendor/assets/js/plugins/foundation.dropdown.js +289 -457
  44. data/vendor/assets/js/plugins/foundation.dropdown.js.map +1 -1
  45. data/vendor/assets/js/plugins/foundation.dropdown.min.js +1 -1
  46. data/vendor/assets/js/plugins/foundation.dropdown.min.js.map +1 -1
  47. data/vendor/assets/js/plugins/foundation.dropdownMenu.js +246 -346
  48. data/vendor/assets/js/plugins/foundation.dropdownMenu.js.map +1 -1
  49. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js +1 -1
  50. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js.map +1 -1
  51. data/vendor/assets/js/plugins/foundation.equalizer.js +178 -261
  52. data/vendor/assets/js/plugins/foundation.equalizer.js.map +1 -1
  53. data/vendor/assets/js/plugins/foundation.equalizer.min.js +1 -1
  54. data/vendor/assets/js/plugins/foundation.equalizer.min.js.map +1 -1
  55. data/vendor/assets/js/plugins/foundation.interchange.js +227 -326
  56. data/vendor/assets/js/plugins/foundation.interchange.js.map +1 -1
  57. data/vendor/assets/js/plugins/foundation.interchange.min.js +1 -1
  58. data/vendor/assets/js/plugins/foundation.interchange.min.js.map +1 -1
  59. data/vendor/assets/js/plugins/foundation.magellan.js +225 -336
  60. data/vendor/assets/js/plugins/foundation.magellan.js.map +1 -1
  61. data/vendor/assets/js/plugins/foundation.magellan.min.js +1 -1
  62. data/vendor/assets/js/plugins/foundation.magellan.min.js.map +1 -1
  63. data/vendor/assets/js/plugins/foundation.offcanvas.js +326 -471
  64. data/vendor/assets/js/plugins/foundation.offcanvas.js.map +1 -1
  65. data/vendor/assets/js/plugins/foundation.offcanvas.min.js +1 -1
  66. data/vendor/assets/js/plugins/foundation.offcanvas.min.js.map +1 -1
  67. data/vendor/assets/js/plugins/foundation.orbit.js +244 -347
  68. data/vendor/assets/js/plugins/foundation.orbit.js.map +1 -1
  69. data/vendor/assets/js/plugins/foundation.orbit.min.js +1 -1
  70. data/vendor/assets/js/plugins/foundation.orbit.min.js.map +1 -1
  71. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js +203 -278
  72. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js.map +1 -1
  73. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js +1 -1
  74. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js.map +1 -1
  75. data/vendor/assets/js/plugins/foundation.responsiveMenu.js +205 -255
  76. data/vendor/assets/js/plugins/foundation.responsiveMenu.js.map +1 -1
  77. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js +1 -1
  78. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js.map +1 -1
  79. data/vendor/assets/js/plugins/foundation.responsiveToggle.js +170 -226
  80. data/vendor/assets/js/plugins/foundation.responsiveToggle.js.map +1 -1
  81. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js +1 -1
  82. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js.map +1 -1
  83. data/vendor/assets/js/plugins/foundation.reveal.js +284 -444
  84. data/vendor/assets/js/plugins/foundation.reveal.js.map +1 -1
  85. data/vendor/assets/js/plugins/foundation.reveal.min.js +1 -1
  86. data/vendor/assets/js/plugins/foundation.reveal.min.js.map +1 -1
  87. data/vendor/assets/js/plugins/foundation.slider.js +322 -483
  88. data/vendor/assets/js/plugins/foundation.slider.js.map +1 -1
  89. data/vendor/assets/js/plugins/foundation.slider.min.js +1 -1
  90. data/vendor/assets/js/plugins/foundation.slider.min.js.map +1 -1
  91. data/vendor/assets/js/plugins/foundation.smoothScroll.js +138 -188
  92. data/vendor/assets/js/plugins/foundation.smoothScroll.js.map +1 -1
  93. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js +1 -1
  94. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js.map +1 -1
  95. data/vendor/assets/js/plugins/foundation.sticky.js +253 -394
  96. data/vendor/assets/js/plugins/foundation.sticky.js.map +1 -1
  97. data/vendor/assets/js/plugins/foundation.sticky.min.js +1 -1
  98. data/vendor/assets/js/plugins/foundation.sticky.min.js.map +1 -1
  99. data/vendor/assets/js/plugins/foundation.tabs.js +228 -317
  100. data/vendor/assets/js/plugins/foundation.tabs.js.map +1 -1
  101. data/vendor/assets/js/plugins/foundation.tabs.min.js +1 -1
  102. data/vendor/assets/js/plugins/foundation.tabs.min.js.map +1 -1
  103. data/vendor/assets/js/plugins/foundation.toggler.js +207 -294
  104. data/vendor/assets/js/plugins/foundation.toggler.js.map +1 -1
  105. data/vendor/assets/js/plugins/foundation.toggler.min.js +1 -1
  106. data/vendor/assets/js/plugins/foundation.toggler.min.js.map +1 -1
  107. data/vendor/assets/js/plugins/foundation.tooltip.js +275 -434
  108. data/vendor/assets/js/plugins/foundation.tooltip.js.map +1 -1
  109. data/vendor/assets/js/plugins/foundation.tooltip.min.js +1 -1
  110. data/vendor/assets/js/plugins/foundation.tooltip.min.js.map +1 -1
  111. data/vendor/assets/js/plugins/foundation.util.box.js +130 -186
  112. data/vendor/assets/js/plugins/foundation.util.box.js.map +1 -1
  113. data/vendor/assets/js/plugins/foundation.util.box.min.js +1 -1
  114. data/vendor/assets/js/plugins/foundation.util.box.min.js.map +1 -1
  115. data/vendor/assets/js/plugins/foundation.util.imageLoader.js +110 -150
  116. data/vendor/assets/js/plugins/foundation.util.imageLoader.js.map +1 -1
  117. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js +1 -1
  118. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js.map +1 -1
  119. data/vendor/assets/js/plugins/foundation.util.keyboard.js +157 -172
  120. data/vendor/assets/js/plugins/foundation.util.keyboard.js.map +1 -1
  121. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js +1 -1
  122. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js.map +1 -1
  123. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js +167 -233
  124. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js.map +1 -1
  125. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js +1 -1
  126. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js.map +1 -1
  127. data/vendor/assets/js/plugins/foundation.util.motion.js +123 -161
  128. data/vendor/assets/js/plugins/foundation.util.motion.js.map +1 -1
  129. data/vendor/assets/js/plugins/foundation.util.motion.min.js +1 -1
  130. data/vendor/assets/js/plugins/foundation.util.motion.min.js.map +1 -1
  131. data/vendor/assets/js/plugins/foundation.util.nest.js +123 -160
  132. data/vendor/assets/js/plugins/foundation.util.nest.js.map +1 -1
  133. data/vendor/assets/js/plugins/foundation.util.nest.min.js +1 -1
  134. data/vendor/assets/js/plugins/foundation.util.nest.min.js.map +1 -1
  135. data/vendor/assets/js/plugins/foundation.util.timer.js +116 -171
  136. data/vendor/assets/js/plugins/foundation.util.timer.js.map +1 -1
  137. data/vendor/assets/js/plugins/foundation.util.timer.min.js +1 -1
  138. data/vendor/assets/js/plugins/foundation.util.timer.min.js.map +1 -1
  139. data/vendor/assets/js/plugins/foundation.util.touch.js +172 -228
  140. data/vendor/assets/js/plugins/foundation.util.touch.js.map +1 -1
  141. data/vendor/assets/js/plugins/foundation.util.touch.min.js +1 -1
  142. data/vendor/assets/js/plugins/foundation.util.touch.min.js.map +1 -1
  143. data/vendor/assets/js/plugins/foundation.util.triggers.js +158 -222
  144. data/vendor/assets/js/plugins/foundation.util.triggers.js.map +1 -1
  145. data/vendor/assets/js/plugins/foundation.util.triggers.min.js +1 -1
  146. data/vendor/assets/js/plugins/foundation.util.triggers.min.js.map +1 -1
  147. data/vendor/assets/scss/_global.scss +18 -5
  148. data/vendor/assets/scss/components/_accordion-menu.scss +2 -2
  149. data/vendor/assets/scss/components/_badge.scss +1 -1
  150. data/vendor/assets/scss/components/_breadcrumbs.scss +2 -1
  151. data/vendor/assets/scss/components/_button-group.scss +13 -8
  152. data/vendor/assets/scss/components/_button.scss +13 -13
  153. data/vendor/assets/scss/components/_callout.scss +2 -2
  154. data/vendor/assets/scss/components/_close-button.scss +5 -4
  155. data/vendor/assets/scss/components/_dropdown-menu.scss +1 -1
  156. data/vendor/assets/scss/components/_label.scss +1 -1
  157. data/vendor/assets/scss/components/_menu.scss +54 -19
  158. data/vendor/assets/scss/components/_off-canvas.scss +18 -16
  159. data/vendor/assets/scss/components/_orbit.scss +3 -3
  160. data/vendor/assets/scss/components/_pagination.scss +1 -1
  161. data/vendor/assets/scss/components/_progress-bar.scss +1 -1
  162. data/vendor/assets/scss/components/_responsive-embed.scss +1 -1
  163. data/vendor/assets/scss/components/_reveal.scss +8 -3
  164. data/vendor/assets/scss/components/_slider.scss +5 -2
  165. data/vendor/assets/scss/components/_switch.scss +25 -2
  166. data/vendor/assets/scss/components/_table.scss +8 -7
  167. data/vendor/assets/scss/components/_tabs.scss +2 -2
  168. data/vendor/assets/scss/components/_top-bar.scss +7 -5
  169. data/vendor/assets/scss/components/_visibility.scss +45 -2
  170. data/vendor/assets/scss/forms/_label.scss +2 -1
  171. data/vendor/assets/scss/forms/_progress.scss +1 -1
  172. data/vendor/assets/scss/forms/_range.scss +1 -1
  173. data/vendor/assets/scss/forms/_select.scss +5 -4
  174. data/vendor/assets/scss/forms/_text.scss +2 -2
  175. data/vendor/assets/scss/foundation.scss +1 -1
  176. data/vendor/assets/scss/grid/_classes.scss +1 -1
  177. data/vendor/assets/scss/grid/_column.scss +3 -2
  178. data/vendor/assets/scss/grid/_flex-grid.scss +7 -6
  179. data/vendor/assets/scss/grid/_gutter.scss +1 -1
  180. data/vendor/assets/scss/grid/_layout.scss +5 -5
  181. data/vendor/assets/scss/grid/_position.scss +4 -4
  182. data/vendor/assets/scss/grid/_row.scss +1 -1
  183. data/vendor/assets/scss/motion-ui/util/_animation.scss +1 -1
  184. data/vendor/assets/scss/motion-ui/util/_series.scss +1 -1
  185. data/vendor/assets/scss/motion-ui/util/_unit.scss +54 -1
  186. data/vendor/assets/scss/prototype/_border-none.scss +1 -1
  187. data/vendor/assets/scss/prototype/_font-styling.scss +2 -2
  188. data/vendor/assets/scss/prototype/_overflow.scss +9 -0
  189. data/vendor/assets/scss/prototype/_rotate.scss +7 -5
  190. data/vendor/assets/scss/prototype/_separator.scss +5 -5
  191. data/vendor/assets/scss/prototype/_shadow.scss +1 -2
  192. data/vendor/assets/scss/prototype/_spacing.scss +33 -33
  193. data/vendor/assets/scss/prototype/_text-transformation.scss +3 -3
  194. data/vendor/assets/scss/settings/_settings.scss +32 -28
  195. data/vendor/assets/scss/typography/_base.scss +6 -6
  196. data/vendor/assets/scss/typography/_helpers.scss +10 -2
  197. data/vendor/assets/scss/typography/_print.scss +2 -2
  198. data/vendor/assets/scss/util/_breakpoint.scss +21 -18
  199. data/vendor/assets/scss/util/_color.scss +20 -8
  200. data/vendor/assets/scss/util/_direction.scss +1 -1
  201. data/vendor/assets/scss/util/_flex.scss +1 -1
  202. data/vendor/assets/scss/util/_math.scss +61 -9
  203. data/vendor/assets/scss/util/_mixins.scss +18 -14
  204. data/vendor/assets/scss/util/_selector.scss +1 -15
  205. data/vendor/assets/scss/util/_typography.scss +6 -6
  206. data/vendor/assets/scss/util/_unit.scss +14 -8
  207. data/vendor/assets/scss/util/_value.scss +3 -18
  208. data/vendor/assets/scss/vendor/normalize.scss +19 -2
  209. data/vendor/assets/scss/xy-grid/_cell.scss +16 -5
  210. data/vendor/assets/scss/xy-grid/_classes.scss +8 -8
  211. data/vendor/assets/scss/xy-grid/_frame.scss +12 -0
  212. data/vendor/assets/scss/xy-grid/_grid.scss +2 -2
  213. data/vendor/assets/scss/xy-grid/_gutters.scss +2 -2
  214. data/vendor/assets/scss/xy-grid/_layout.scss +1 -1
  215. data/vendor/assets/scss/xy-grid/_position.scss +12 -7
  216. data/vendor/assets/scss/xy-grid/_xy-grid.scss +2 -2
  217. metadata +21 -19
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/universalModuleDefinition","webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/bootstrap","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/js/entries/plugins/foundation.offcanvas.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.offcanvas.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.util.triggers.js","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["root","factory","exports","module","require","define","amd","window","__WEBPACK_EXTERNAL_MODULE__foundation_core__","__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__","__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__","__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__","__WEBPACK_EXTERNAL_MODULE_jquery__","installedModules","__webpack_require__","m","r","__webpack_exports__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","d","_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__","Foundation","plugin","OffCanvas","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__","Plugin","element","options","_this2","this","className","$element","$","extend","defaults","data","contentClasses","base","reveal","$lastTrigger","$triggers","position","$content","nested","$sticky","isInCanvas","each","index","val","push","Triggers","init","MediaQuery","_init","_events","Keyboard","register","ESCAPE","id","attr","contentId","siblings","length","first","closest","console","warn","transition","removeClass","addClass","concat","document","find","is","match","contentOverlay","overlay","createElement","overlayPosition","css","setAttribute","$overlay","insertAfter","append","revealOnClass","RegExp","RegExpEscape","revealClass","exec","isRevealed","revealOn","_setMQChecker","transitionTime","contentScroll","inCanvasFor","inCanvasOn","_checkInCanvas","_removeContentClasses","_this3","off","on","open.zf.trigger","open","bind","close.zf.trigger","close","toggle.zf.trigger","toggle","keydown.zf.offCanvas","_handleKeyboard","closeOnClick","click.zf.offCanvas","_this","onLoadListener","onLoad","atLeast","hasReveal","join","_","el","$el","topVal","parseInt","top","absoluteTopVal","scrollTop","width","stickyData","_typeof","_addContentClasses","event","elem","scrollHeight","clientHeight","allowUp","allowDown","lastY","originalEvent","pageY","parent","up","down","stopPropagation","hasAttribute","preventDefault","trigger","_this4","hasClass","forceTo","scrollTo","body","_stopScrolling","_recordScrollable","_stopScrollPropagation","autoFocus","one","transitionend","canvasFocus","eq","focus","trapFocus","_fixStickyElements","cb","_this5","e","_unfixStickyElements","removeAttr","releaseFocus","_this6","handleKey","handled","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__","triggers","type","split","forEach","MutationObserver","prefixes","i","Listeners","Basic","Global","Initializers","debounceGlobalListener","debounce","listener","timer","args","Array","prototype","slice","call","arguments","clearTimeout","setTimeout","apply","openListener","closeListener","toggleListener","closeableListener","animation","Motion","animateOut","fadeOut","toggleFocusListener","triggerHandler","addOpenListener","$elem","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","resizeListener","$nodes","scrollListener","closeMeListener","pluginId","namespace","not","addClosemeListener","pluginName","yetiBoxes","plugNames","error","listeners","map","name","addResizeListener","addScrollListener","addMutationEventsListener","listeningElementsMutation","mutationRecordsList","$target","target","attributeName","pageYOffset","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","triggersInitialized","IHearYou","c","getter","o","Object","defineProperty","enumerable","get","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","object","property","hasOwnProperty","p","s","moduleId","l","modules"],"mappings":"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","file":"foundation.offcanvas.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.keyboard\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.offcanvas\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.offcanvas\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 9);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;","import { Foundation } from './foundation.core';\n\nimport { OffCanvas } from '../../foundation.offcanvas';\nFoundation.plugin(OffCanvas, 'OffCanvas');\n\nexport { Foundation, OffCanvas };\n","'use strict';\n\nimport $ from 'jquery';\nimport { Plugin } from './foundation.core.plugin';\nimport { onLoad, transitionend, RegExpEscape } from './foundation.core.utils';\nimport { Keyboard } from './foundation.util.keyboard';\nimport { MediaQuery } from './foundation.util.mediaQuery';\n\nimport { Triggers } from './foundation.util.triggers';\n\n/**\n * OffCanvas module.\n * @module foundation.offCanvas\n * @requires foundation.util.keyboard\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.triggers\n */\n\nclass OffCanvas extends Plugin {\n /**\n * Creates a new instance of an off-canvas wrapper.\n * @class\n * @name OffCanvas\n * @fires OffCanvas#init\n * @param {Object} element - jQuery object to initialize.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n _setup(element, options) {\n this.className = 'OffCanvas'; // ie9 back compat\n this.$element = element;\n this.options = $.extend({}, OffCanvas.defaults, this.$element.data(), options);\n this.contentClasses = { base: [], reveal: [] };\n this.$lastTrigger = $();\n this.$triggers = $();\n this.position = 'left';\n this.$content = $();\n this.nested = !!(this.options.nested);\n this.$sticky = $();\n this.isInCanvas = false;\n\n // Defines the CSS transition/position classes of the off-canvas content container.\n $(['push', 'overlap']).each((index, val) => {\n this.contentClasses.base.push('has-transition-'+val);\n });\n $(['left', 'right', 'top', 'bottom']).each((index, val) => {\n this.contentClasses.base.push('has-position-'+val);\n this.contentClasses.reveal.push('has-reveal-'+val);\n });\n\n // Triggers init is idempotent, just need to make sure it is initialized\n Triggers.init($);\n MediaQuery._init();\n\n this._init();\n this._events();\n\n Keyboard.register('OffCanvas', {\n 'ESCAPE': 'close'\n });\n\n }\n\n /**\n * Initializes the off-canvas wrapper by adding the exit overlay (if needed).\n * @function\n * @private\n */\n _init() {\n var id = this.$element.attr('id');\n\n this.$element.attr('aria-hidden', 'true');\n\n // Find off-canvas content, either by ID (if specified), by siblings or by closest selector (fallback)\n if (this.options.contentId) {\n this.$content = $('#'+this.options.contentId);\n } else if (this.$element.siblings('[data-off-canvas-content]').length) {\n this.$content = this.$element.siblings('[data-off-canvas-content]').first();\n } else {\n this.$content = this.$element.closest('[data-off-canvas-content]').first();\n }\n\n if (!this.options.contentId) {\n // Assume that the off-canvas element is nested if it isn't a sibling of the content\n this.nested = this.$element.siblings('[data-off-canvas-content]').length === 0;\n\n } else if (this.options.contentId && this.options.nested === null) {\n // Warning if using content ID without setting the nested option\n // Once the element is nested it is required to work properly in this case\n console.warn('Remember to use the nested option if using the content ID option!');\n }\n\n if (this.nested === true) {\n // Force transition overlap if nested\n this.options.transition = 'overlap';\n // Remove appropriate classes if already assigned in markup\n this.$element.removeClass('is-transition-push');\n }\n\n this.$element.addClass(`is-transition-${this.options.transition} is-closed`);\n\n // Find triggers that affect this element and add aria-expanded to them\n this.$triggers = $(document)\n .find('[data-open=\"'+id+'\"], [data-close=\"'+id+'\"], [data-toggle=\"'+id+'\"]')\n .attr('aria-expanded', 'false')\n .attr('aria-controls', id);\n\n // Get position by checking for related CSS class\n this.position = this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\\-(left|top|right|bottom)/)[1] : this.position;\n\n // Add an overlay over the content if necessary\n if (this.options.contentOverlay === true) {\n var overlay = document.createElement('div');\n var overlayPosition = $(this.$element).css(\"position\") === 'fixed' ? 'is-overlay-fixed' : 'is-overlay-absolute';\n overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);\n this.$overlay = $(overlay);\n if(overlayPosition === 'is-overlay-fixed') {\n $(this.$overlay).insertAfter(this.$element);\n } else {\n this.$content.append(this.$overlay);\n }\n }\n\n // Get the revealOn option from the class.\n var revealOnRegExp = new RegExp(RegExpEscape(this.options.revealClass) + '([^\\\\s]+)', 'g');\n var revealOnClass = revealOnRegExp.exec(this.$element[0].className);\n if (revealOnClass) {\n this.options.isRevealed = true;\n this.options.revealOn = this.options.revealOn || revealOnClass[1];\n }\n\n // Ensure the `reveal-on-*` class is set.\n if (this.options.isRevealed === true && this.options.revealOn) {\n this.$element.first().addClass(`${this.options.revealClass}${this.options.revealOn}`);\n this._setMQChecker();\n }\n\n if (this.options.transitionTime) {\n this.$element.css('transition-duration', this.options.transitionTime);\n }\n\n // Find fixed elements that should stay fixed while off-canvas is opened\n this.$sticky = this.$content.find('[data-off-canvas-sticky]');\n if (this.$sticky.length > 0 && this.options.transition === 'push') {\n // If there's at least one match force contentScroll:false because the absolute top value doesn't get recalculated on scroll\n // Limit to push transition since there's no transform scope for overlap\n this.options.contentScroll = false;\n }\n\n let inCanvasFor = this.$element.attr('class').match(/\\bin-canvas-for-(\\w+)/);\n if (inCanvasFor && inCanvasFor.length === 2) {\n // Set `inCanvasOn` option if found in-canvas-for-[BREAKPONT] CSS class\n this.options.inCanvasOn = inCanvasFor[1];\n } else if (this.options.inCanvasOn) {\n // Ensure the CSS class is set\n this.$element.addClass(`in-canvas-for-${this.options.inCanvasOn}`);\n }\n\n if (this.options.inCanvasOn) {\n this._checkInCanvas();\n }\n\n // Initally remove all transition/position CSS classes from off-canvas content container.\n this._removeContentClasses();\n }\n\n /**\n * Adds event handlers to the off-canvas wrapper and the exit overlay.\n * @function\n * @private\n */\n _events() {\n this.$element.off('.zf.trigger .zf.offCanvas').on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': this.close.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'keydown.zf.offCanvas': this._handleKeyboard.bind(this)\n });\n\n if (this.options.closeOnClick === true) {\n var $target = this.options.contentOverlay ? this.$overlay : this.$content;\n $target.on({'click.zf.offCanvas': this.close.bind(this)});\n }\n\n if (this.options.inCanvasOn) {\n $(window).on('changed.zf.mediaquery', () => {\n this._checkInCanvas();\n });\n }\n\n }\n\n /**\n * Applies event listener for elements that will reveal at certain breakpoints.\n * @private\n */\n _setMQChecker() {\n var _this = this;\n\n this.onLoadListener = onLoad($(window), function () {\n if (MediaQuery.atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n }\n });\n\n $(window).on('changed.zf.mediaquery', function () {\n if (MediaQuery.atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n } else {\n _this.reveal(false);\n }\n });\n }\n\n /**\n * Checks if InCanvas on current breakpoint and adjust off-canvas accordingly\n * @private\n */\n _checkInCanvas() {\n this.isInCanvas = MediaQuery.atLeast(this.options.inCanvasOn);\n if (this.isInCanvas === true) {\n this.close();\n }\n }\n\n /**\n * Removes the CSS transition/position classes of the off-canvas content container.\n * Removing the classes is important when another off-canvas gets opened that uses the same content container.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n _removeContentClasses(hasReveal) {\n if (typeof hasReveal !== 'boolean') {\n this.$content.removeClass(this.contentClasses.base.join(' '));\n } else if (hasReveal === false) {\n this.$content.removeClass(`has-reveal-${this.position}`);\n }\n }\n\n /**\n * Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.\n * Beforehand any transition/position class gets removed.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n _addContentClasses(hasReveal) {\n this._removeContentClasses(hasReveal);\n if (typeof hasReveal !== 'boolean') {\n this.$content.addClass(`has-transition-${this.options.transition} has-position-${this.position}`);\n } else if (hasReveal === true) {\n this.$content.addClass(`has-reveal-${this.position}`);\n }\n }\n\n /**\n * Preserves the fixed behavior of sticky elements on opening an off-canvas with push transition.\n * Since the off-canvas container has got a transform scope in such a case, it is done by calculating position absolute values.\n * @private\n */\n _fixStickyElements() {\n this.$sticky.each((_, el) => {\n const $el = $(el);\n\n // If sticky element is currently fixed, adjust its top value to match absolute position due to transform scope\n // Limit to push transition because postion:fixed works without problems for overlap (no transform scope)\n if ($el.css('position') === 'fixed') {\n\n // Save current inline styling to restore it if undoing the absolute fixing\n let topVal = parseInt($el.css('top'), 10);\n $el.data('offCanvasSticky', { top: topVal });\n\n let absoluteTopVal = $(document).scrollTop() + topVal;\n $el.css({ top: `${absoluteTopVal}px`, width: '100%', transition: 'none' });\n }\n });\n }\n\n /**\n * Restores the original fixed styling of sticky elements after having closed an off-canvas that got pseudo fixed beforehand.\n * This reverts the changes of _fixStickyElements()\n * @private\n */\n _unfixStickyElements() {\n this.$sticky.each((_, el) => {\n const $el = $(el);\n let stickyData = $el.data('offCanvasSticky');\n\n // If sticky element has got data object with prior values (meaning it was originally fixed) restore these values once off-canvas is closed\n if (typeof stickyData === 'object') {\n $el.css({ top: `${stickyData.top}px`, width: '', transition: '' })\n $el.data('offCanvasSticky', '');\n }\n });\n }\n\n /**\n * Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.\n * @param {Boolean} isRevealed - true if element should be revealed.\n * @function\n */\n reveal(isRevealed) {\n if (isRevealed) {\n this.close();\n this.isRevealed = true;\n this.$element.attr('aria-hidden', 'false');\n this.$element.off('open.zf.trigger toggle.zf.trigger');\n this.$element.removeClass('is-closed');\n } else {\n this.isRevealed = false;\n this.$element.attr('aria-hidden', 'true');\n this.$element.off('open.zf.trigger toggle.zf.trigger').on({\n 'open.zf.trigger': this.open.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this)\n });\n this.$element.addClass('is-closed');\n }\n this._addContentClasses(isRevealed);\n }\n\n /**\n * Stops scrolling of the body when OffCanvas is open on mobile Safari and other troublesome browsers.\n * @function\n * @private\n */\n _stopScrolling(event) {\n return false;\n }\n\n /**\n * Tag the element given as context whether it can be scrolled up and down.\n * Used to allow or prevent it to scroll. See `_stopScrollPropagation`.\n *\n * Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios\n * Only really works for y, not sure how to extend to x or if we need to.\n *\n * @function\n * @private\n */\n _recordScrollable(event) {\n let elem = this; // called from event handler context with this as elem\n\n // If the element is scrollable (content overflows), then...\n if (elem.scrollHeight !== elem.clientHeight) {\n // If we're at the top, scroll down one pixel to allow scrolling up\n if (elem.scrollTop === 0) {\n elem.scrollTop = 1;\n }\n // If we're at the bottom, scroll up one pixel to allow scrolling down\n if (elem.scrollTop === elem.scrollHeight - elem.clientHeight) {\n elem.scrollTop = elem.scrollHeight - elem.clientHeight - 1;\n }\n }\n elem.allowUp = elem.scrollTop > 0;\n elem.allowDown = elem.scrollTop < (elem.scrollHeight - elem.clientHeight);\n elem.lastY = event.originalEvent.pageY;\n }\n\n /**\n * Prevent the given event propagation if the element given as context can scroll.\n * Used to preserve the element scrolling on mobile (`touchmove`) when the document\n * scrolling is prevented. See https://git.io/zf-9707.\n * @function\n * @private\n */\n _stopScrollPropagation(event) {\n let elem = this; // called from event handler context with this as elem\n let parent; // off-canvas elem if called from inner scrollbox\n let up = event.pageY < elem.lastY;\n let down = !up;\n elem.lastY = event.pageY;\n\n if((up && elem.allowUp) || (down && elem.allowDown)) {\n // It is not recommended to stop event propagation (the user cannot watch it),\n // but in this case this is the only solution we have.\n event.stopPropagation();\n\n // If elem is inner scrollbox we are scrolling the outer off-canvas down/up once the box end has been reached\n // This lets the user continue to touch move the off-canvas without the need to place the finger outside the scrollbox\n if (elem.hasAttribute('data-off-canvas-scrollbox')) {\n parent = elem.closest('[data-off-canvas], [data-off-canvas-scrollbox-outer]');\n if (elem.scrollTop <= 1 && parent.scrollTop > 0) {\n parent.scrollTop--;\n } else if (elem.scrollTop >= elem.scrollHeight - elem.clientHeight - 1 && parent.scrollTop < parent.scrollHeight - parent.clientHeight) {\n parent.scrollTop++;\n }\n }\n\n } else {\n event.preventDefault();\n }\n }\n\n /**\n * Opens the off-canvas menu.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n * @fires OffCanvas#opened\n * @todo also trigger 'open' event?\n */\n open(event, trigger) {\n if (this.$element.hasClass('is-open') || this.isRevealed || this.isInCanvas) { return; }\n var _this = this;\n\n if (trigger) {\n this.$lastTrigger = trigger;\n }\n\n if (this.options.forceTo === 'top') {\n window.scrollTo(0, 0);\n } else if (this.options.forceTo === 'bottom') {\n window.scrollTo(0,document.body.scrollHeight);\n }\n\n if (this.options.transitionTime && this.options.transition !== 'overlap') {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);\n } else {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');\n }\n\n this.$element.addClass('is-open').removeClass('is-closed');\n\n this.$triggers.attr('aria-expanded', 'true');\n this.$element.attr('aria-hidden', 'false');\n\n this.$content.addClass('is-open-' + this.position);\n\n // If `contentScroll` is set to false, add class and disable scrolling on touch devices.\n if (this.options.contentScroll === false) {\n $('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);\n this.$element.on('touchstart', this._recordScrollable);\n this.$element.on('touchmove', this._stopScrollPropagation);\n this.$element.on('touchstart', '[data-off-canvas-scrollbox]', this._recordScrollable);\n this.$element.on('touchmove', '[data-off-canvas-scrollbox]', this._stopScrollPropagation);\n }\n\n if (this.options.contentOverlay === true) {\n this.$overlay.addClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.addClass('is-closable');\n }\n\n if (this.options.autoFocus === true) {\n this.$element.one(transitionend(this.$element), function() {\n if (!_this.$element.hasClass('is-open')) {\n return; // exit if prematurely closed\n }\n var canvasFocus = _this.$element.find('[data-autofocus]');\n if (canvasFocus.length) {\n canvasFocus.eq(0).focus();\n } else {\n _this.$element.find('a, button').eq(0).focus();\n }\n });\n }\n\n if (this.options.trapFocus === true) {\n this.$content.attr('tabindex', '-1');\n Keyboard.trapFocus(this.$element);\n }\n\n if (this.options.transition === 'push') {\n this._fixStickyElements();\n }\n\n this._addContentClasses();\n\n /**\n * Fires when the off-canvas menu opens.\n * @event OffCanvas#opened\n */\n this.$element.trigger('opened.zf.offCanvas');\n\n /**\n * Fires when the off-canvas menu open transition is done.\n * @event OffCanvas#openedEnd\n */\n this.$element.one(transitionend(this.$element), () => {\n this.$element.trigger('openedEnd.zf.offCanvas');\n });\n }\n\n /**\n * Closes the off-canvas menu.\n * @function\n * @param {Function} cb - optional cb to fire after closure.\n * @fires OffCanvas#close\n * @fires OffCanvas#closed\n */\n close(cb) {\n if (!this.$element.hasClass('is-open') || this.isRevealed) { return; }\n\n /**\n * Fires when the off-canvas menu closes.\n * @event OffCanvas#close\n */\n this.$element.trigger('close.zf.offCanvas');\n\n var _this = this;\n\n this.$element.removeClass('is-open');\n\n this.$element.attr('aria-hidden', 'true');\n\n this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom');\n\n if (this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-closable');\n }\n\n this.$triggers.attr('aria-expanded', 'false');\n\n\n // Listen to transitionEnd: add class, re-enable scrolling and release focus when done.\n this.$element.one(transitionend(this.$element), (e) => {\n\n this.$element.addClass('is-closed');\n this._removeContentClasses();\n\n if (this.options.transition === 'push') {\n this._unfixStickyElements();\n }\n\n // If `contentScroll` is set to false, remove class and re-enable scrolling on touch devices.\n if (this.options.contentScroll === false) {\n $('body').removeClass('is-off-canvas-open').off('touchmove', this._stopScrolling);\n this.$element.off('touchstart', this._recordScrollable);\n this.$element.off('touchmove', this._stopScrollPropagation);\n this.$element.off('touchstart', '[data-off-canvas-scrollbox]', this._recordScrollable);\n this.$element.off('touchmove', '[data-off-canvas-scrollbox]', this._stopScrollPropagation);\n }\n\n if (this.options.trapFocus === true) {\n this.$content.removeAttr('tabindex');\n Keyboard.releaseFocus(this.$element);\n }\n\n /**\n * Fires when the off-canvas menu close transition is done.\n * @event OffCanvas#closed\n */\n this.$element.trigger('closed.zf.offCanvas');\n });\n }\n\n /**\n * Toggles the off-canvas menu open or closed.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n */\n toggle(event, trigger) {\n if (this.$element.hasClass('is-open')) {\n this.close(event, trigger);\n }\n else {\n this.open(event, trigger);\n }\n }\n\n /**\n * Handles keyboard input when detected. When the escape key is pressed, the off-canvas menu closes, and focus is restored to the element that opened the menu.\n * @function\n * @private\n */\n _handleKeyboard(e) {\n Keyboard.handleKey(e, 'OffCanvas', {\n close: () => {\n this.close();\n this.$lastTrigger.focus();\n return true;\n },\n handled: () => {\n e.preventDefault();\n }\n });\n }\n\n /**\n * Destroys the OffCanvas plugin.\n * @function\n */\n _destroy() {\n this.close();\n this.$element.off('.zf.trigger .zf.offCanvas');\n this.$overlay.off('.zf.offCanvas');\n if (this.onLoadListener) $(window).off(this.onLoadListener);\n }\n}\n\nOffCanvas.defaults = {\n /**\n * Allow the user to click outside of the menu to close it.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n\n /**\n * Adds an overlay on top of `[data-off-canvas-content]`.\n * @option\n * @type {boolean}\n * @default true\n */\n contentOverlay: true,\n\n /**\n * Target an off-canvas content container by ID that may be placed anywhere. If null the closest content container will be taken.\n * @option\n * @type {?string}\n * @default null\n */\n contentId: null,\n\n /**\n * Define the off-canvas element is nested in an off-canvas content. This is required when using the contentId option for a nested element.\n * @option\n * @type {boolean}\n * @default null\n */\n nested: null,\n\n /**\n * Enable/disable scrolling of the main content when an off canvas panel is open.\n * @option\n * @type {boolean}\n * @default true\n */\n contentScroll: true,\n\n /**\n * Amount of time the open and close transition requires, including the appropriate milliseconds (`ms`) or seconds (`s`) unit (e.g. `500ms`, `.75s`) If none selected, pulls from body style.\n * @option\n * @type {string}\n * @default null\n */\n transitionTime: null,\n\n /**\n * Type of transition for the OffCanvas menu. Options are 'push', 'detached' or 'slide'.\n * @option\n * @type {string}\n * @default push\n */\n transition: 'push',\n\n /**\n * Force the page to scroll to top or bottom on open.\n * @option\n * @type {?string}\n * @default null\n */\n forceTo: null,\n\n /**\n * Allow the OffCanvas to remain open for certain breakpoints.\n * @option\n * @type {boolean}\n * @default false\n */\n isRevealed: false,\n\n /**\n * Breakpoint at which to reveal. JS will use a RegExp to target standard classes, if changing classnames, pass your class with the `revealClass` option.\n * @option\n * @type {?string}\n * @default null\n */\n revealOn: null,\n\n /**\n * Breakpoint at which the off-canvas gets moved into canvas content and acts as regular page element.\n * @option\n * @type {?string}\n * @default null\n */\n inCanvasOn: null,\n\n /**\n * Force focus to the offcanvas on open. If true, will focus the opening trigger on close.\n * @option\n * @type {boolean}\n * @default true\n */\n autoFocus: true,\n\n /**\n * Class used to force an OffCanvas to remain open. Foundation defaults for this are `reveal-for-large` & `reveal-for-medium`.\n * @option\n * @type {string}\n * @default reveal-for-\n * @todo improve the regex testing for this.\n */\n revealClass: 'reveal-for-',\n\n /**\n * Triggers optional focus trapping when opening an OffCanvas. Sets tabindex of [data-off-canvas-content] to -1 for accessibility purposes.\n * @option\n * @type {boolean}\n * @default false\n */\n trapFocus: false\n}\n\nexport {OffCanvas};\n","'use strict';\n\nimport $ from 'jquery';\nimport { onLoad } from './foundation.core.utils';\nimport { Motion } from './foundation.util.motion';\n\nconst MutationObserver = (function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n for (var i=0; i < prefixes.length; i++) {\n if (`${prefixes[i]}MutationObserver` in window) {\n return window[`${prefixes[i]}MutationObserver`];\n }\n }\n return false;\n}());\n\nconst triggers = (el, type) => {\n el.data(type).split(' ').forEach(id => {\n $(`#${id}`)[ type === 'close' ? 'trigger' : 'triggerHandler'](`${type}.zf.trigger`, [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n}\n\nTriggers.Listeners.Basic = {\n openListener: function() {\n triggers($(this), 'open');\n },\n closeListener: function() {\n let id = $(this).data('close');\n if (id) {\n triggers($(this), 'close');\n }\n else {\n $(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function() {\n let id = $(this).data('toggle');\n if (id) {\n triggers($(this), 'toggle');\n } else {\n $(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function(e) {\n let animation = $(this).data('closable');\n\n // Only close the first closable element. See https://git.io/zf-7833\n e.stopPropagation();\n\n if(animation !== ''){\n Motion.animateOut($(this), animation, function() {\n $(this).trigger('closed.zf');\n });\n }else{\n $(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function() {\n let id = $(this).data('toggle-focus');\n $(`#${id}`).triggerHandler('toggle.zf.trigger', [$(this)]);\n }\n};\n\n// Elements with [data-open] will reveal a plugin that supports it when clicked.\nTriggers.Initializers.addOpenListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}\n\n// Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\nTriggers.Initializers.addCloseListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}\n\n// Elements with [data-toggle] will toggle a plugin that supports it when clicked.\nTriggers.Initializers.addToggleListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}\n\n// Elements with [data-closable] will respond to close.zf.trigger events.\nTriggers.Initializers.addCloseableListener = ($elem) => {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}\n\n// Elements with [data-toggle-focus] will respond to coming in and out of focus\nTriggers.Initializers.addToggleFocusListener = ($elem) => {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}\n\n\n\n// More Global/complex listeners and triggers\nTriggers.Listeners.Global = {\n resizeListener: function($nodes) {\n if(!MutationObserver){//fallback for IE 9\n $nodes.each(function(){\n $(this).triggerHandler('resizeme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a resize event\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function($nodes) {\n if(!MutationObserver){//fallback for IE 9\n $nodes.each(function(){\n $(this).triggerHandler('scrollme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a scroll event\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function(e, pluginId){\n let plugin = e.namespace.split('.')[0];\n let plugins = $(`[data-${plugin}]`).not(`[data-yeti-box=\"${pluginId}\"]`);\n\n plugins.each(function(){\n let _this = $(this);\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n }\n}\n\n// Global, parses whole document.\nTriggers.Initializers.addClosemeListener = function(pluginName) {\n var yetiBoxes = $('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if(pluginName){\n if(typeof pluginName === 'string'){\n plugNames.push(pluginName);\n }else if(typeof pluginName === 'object' && typeof pluginName[0] === 'string'){\n plugNames = plugNames.concat(pluginName);\n }else{\n console.error('Plugin names must be strings');\n }\n }\n if(yetiBoxes.length){\n let listeners = plugNames.map((name) => {\n return `closeme.zf.${name}`;\n }).join(' ');\n\n $(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n}\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n let timer, args = Array.prototype.slice.call(arguments, 3);\n $(window).off(trigger).on(trigger, function(e) {\n if (timer) { clearTimeout(timer); }\n timer = setTimeout(function(){\n listener.apply(null, args);\n }, debounce || 10);//default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function(debounce){\n let $nodes = $('[data-resize]');\n if($nodes.length){\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n}\n\nTriggers.Initializers.addScrollListener = function(debounce){\n let $nodes = $('[data-scroll]');\n if($nodes.length){\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n}\n\nTriggers.Initializers.addMutationEventsListener = function($elem) {\n if(!MutationObserver){ return false; }\n let $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');\n\n //element callback\n var listeningElementsMutation = function (mutationRecordsList) {\n var $target = $(mutationRecordsList[0].target);\n\n //trigger the event handler for the element depending on type\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\",\"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\",\"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], { attributes: true, childList: true, characterData: false, subtree: true, attributeFilter: [\"data-events\", \"style\"] });\n }\n }\n}\n\nTriggers.Initializers.addSimpleListeners = function() {\n let $document = $(document);\n\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n\n}\n\nTriggers.Initializers.addGlobalListeners = function() {\n let $document = $(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n}\n\n\nTriggers.init = function ($, Foundation) {\n onLoad($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if(Foundation) {\n Foundation.Triggers = Triggers;\n // Legacy included to be backwards compatible for now.\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners\n }\n}\n\nexport {Triggers};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"]}
1
+ {"version":3,"file":"foundation.offcanvas.min.js","sources":["foundation.offcanvas.min.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\", \"./foundation.util.keyboard\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"__FOUNDATION_EXTERNAL__\"] = factory(require(\"./foundation.core\"), require(\"jquery\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.offcanvas\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.offcanvas.js\":\n/*!************************************!*\\\n !*** ./js/foundation.offcanvas.js ***!\n \\************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OffCanvas: function() { return /* binding */ OffCanvas; }\n/* harmony export */ });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\nfunction _possibleConstructorReturn(t, e) { if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e; if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\"); return _assertThisInitialized(t); }\nfunction _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); return e; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }\nfunction _inherits(t, e) { if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, \"prototype\", { writable: !1 }), e && _setPrototypeOf(t, e); }\nfunction _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }\n\n\n\n\n\n\n\n/**\n * OffCanvas module.\n * @module foundation.offCanvas\n * @requires foundation.util.keyboard\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.triggers\n */\nvar OffCanvas = /*#__PURE__*/function (_Plugin) {\n function OffCanvas() {\n _classCallCheck(this, OffCanvas);\n return _callSuper(this, OffCanvas, arguments);\n }\n _inherits(OffCanvas, _Plugin);\n return _createClass(OffCanvas, [{\n key: \"_setup\",\n value:\n /**\n * Creates a new instance of an off-canvas wrapper.\n * @class\n * @name OffCanvas\n * @fires OffCanvas#init\n * @param {Object} element - jQuery object to initialize.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n function _setup(element, options) {\n var _this2 = this;\n this.className = 'OffCanvas'; // ie9 back compat\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({}, OffCanvas.defaults, this.$element.data(), options);\n this.contentClasses = {\n base: [],\n reveal: []\n };\n this.$lastTrigger = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.position = 'left';\n this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.nested = !!this.options.nested;\n this.$sticky = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.isInCanvas = false;\n\n // Defines the CSS transition/position classes of the off-canvas content container.\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(['push', 'overlap']).each(function (index, val) {\n _this2.contentClasses.base.push('has-transition-' + val);\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(['left', 'right', 'top', 'bottom']).each(function (index, val) {\n _this2.contentClasses.base.push('has-position-' + val);\n _this2.contentClasses.reveal.push('has-reveal-' + val);\n });\n\n // Triggers init is idempotent, just need to make sure it is initialized\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__.Triggers.init((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__.MediaQuery._init();\n this._init();\n this._events();\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__.Keyboard.register('OffCanvas', {\n 'ESCAPE': 'close'\n });\n }\n\n /**\n * Initializes the off-canvas wrapper by adding the exit overlay (if needed).\n * @function\n * @private\n */\n }, {\n key: \"_init\",\n value: function _init() {\n var id = this.$element.attr('id');\n this.$element.attr('aria-hidden', 'true');\n\n // Find off-canvas content, either by ID (if specified), by siblings or by closest selector (fallback)\n if (this.options.contentId) {\n this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()('#' + this.options.contentId);\n } else if (this.$element.siblings('[data-off-canvas-content]').length) {\n this.$content = this.$element.siblings('[data-off-canvas-content]').first();\n } else {\n this.$content = this.$element.closest('[data-off-canvas-content]').first();\n }\n if (!this.options.contentId) {\n // Assume that the off-canvas element is nested if it isn't a sibling of the content\n this.nested = this.$element.siblings('[data-off-canvas-content]').length === 0;\n } else if (this.options.contentId && this.options.nested === null) {\n // Warning if using content ID without setting the nested option\n // Once the element is nested it is required to work properly in this case\n console.warn('Remember to use the nested option if using the content ID option!');\n }\n if (this.nested === true) {\n // Force transition overlap if nested\n this.options.transition = 'overlap';\n // Remove appropriate classes if already assigned in markup\n this.$element.removeClass('is-transition-push');\n }\n this.$element.addClass(\"is-transition-\".concat(this.options.transition, \" is-closed\"));\n\n // Find triggers that affect this element and add aria-expanded to them\n this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).find('[data-open=\"' + id + '\"], [data-close=\"' + id + '\"], [data-toggle=\"' + id + '\"]').attr('aria-expanded', 'false').attr('aria-controls', id);\n\n // Get position by checking for related CSS class\n this.position = this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\\-(left|top|right|bottom)/)[1] : this.position;\n\n // Add an overlay over the content if necessary\n if (this.options.contentOverlay === true) {\n var overlay = document.createElement('div');\n var overlayPosition = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$element).css(\"position\") === 'fixed' ? 'is-overlay-fixed' : 'is-overlay-absolute';\n overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);\n this.$overlay = jquery__WEBPACK_IMPORTED_MODULE_0___default()(overlay);\n if (overlayPosition === 'is-overlay-fixed') {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$overlay).insertAfter(this.$element);\n } else {\n this.$content.append(this.$overlay);\n }\n }\n\n // Get the revealOn option from the class.\n var revealOnRegExp = new RegExp((0,_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.RegExpEscape)(this.options.revealClass) + '([^\\\\s]+)', 'g');\n var revealOnClass = revealOnRegExp.exec(this.$element[0].className);\n if (revealOnClass) {\n this.options.isRevealed = true;\n this.options.revealOn = this.options.revealOn || revealOnClass[1];\n }\n\n // Ensure the `reveal-on-*` class is set.\n if (this.options.isRevealed === true && this.options.revealOn) {\n this.$element.first().addClass(\"\".concat(this.options.revealClass).concat(this.options.revealOn));\n this._setMQChecker();\n }\n if (this.options.transitionTime) {\n this.$element.css('transition-duration', this.options.transitionTime);\n }\n\n // Find fixed elements that should stay fixed while off-canvas is opened\n this.$sticky = this.$content.find('[data-off-canvas-sticky]');\n if (this.$sticky.length > 0 && this.options.transition === 'push') {\n // If there's at least one match force contentScroll:false because the absolute top value doesn't get recalculated on scroll\n // Limit to push transition since there's no transform scope for overlap\n this.options.contentScroll = false;\n }\n var inCanvasFor = this.$element.attr('class').match(/\\bin-canvas-for-(\\w+)/);\n if (inCanvasFor && inCanvasFor.length === 2) {\n // Set `inCanvasOn` option if found in-canvas-for-[BREAKPONT] CSS class\n this.options.inCanvasOn = inCanvasFor[1];\n } else if (this.options.inCanvasOn) {\n // Ensure the CSS class is set\n this.$element.addClass(\"in-canvas-for-\".concat(this.options.inCanvasOn));\n }\n if (this.options.inCanvasOn) {\n this._checkInCanvas();\n }\n\n // Initally remove all transition/position CSS classes from off-canvas content container.\n this._removeContentClasses();\n }\n\n /**\n * Adds event handlers to the off-canvas wrapper and the exit overlay.\n * @function\n * @private\n */\n }, {\n key: \"_events\",\n value: function _events() {\n var _this3 = this;\n this.$element.off('.zf.trigger .zf.offCanvas').on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': this.close.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'keydown.zf.offCanvas': this._handleKeyboard.bind(this)\n });\n if (this.options.closeOnClick === true) {\n var $target = this.options.contentOverlay ? this.$overlay : this.$content;\n $target.on({\n 'click.zf.offCanvas': this.close.bind(this)\n });\n }\n if (this.options.inCanvasOn) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {\n _this3._checkInCanvas();\n });\n }\n }\n\n /**\n * Applies event listener for elements that will reveal at certain breakpoints.\n * @private\n */\n }, {\n key: \"_setMQChecker\",\n value: function _setMQChecker() {\n var _this = this;\n this.onLoadListener = (0,_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.onLoad)(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__.MediaQuery.atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n }\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__.MediaQuery.atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n } else {\n _this.reveal(false);\n }\n });\n }\n\n /**\n * Checks if InCanvas on current breakpoint and adjust off-canvas accordingly\n * @private\n */\n }, {\n key: \"_checkInCanvas\",\n value: function _checkInCanvas() {\n this.isInCanvas = _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__.MediaQuery.atLeast(this.options.inCanvasOn);\n if (this.isInCanvas === true) {\n this.close();\n }\n }\n\n /**\n * Removes the CSS transition/position classes of the off-canvas content container.\n * Removing the classes is important when another off-canvas gets opened that uses the same content container.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n }, {\n key: \"_removeContentClasses\",\n value: function _removeContentClasses(hasReveal) {\n if (typeof hasReveal !== 'boolean') {\n this.$content.removeClass(this.contentClasses.base.join(' '));\n } else if (hasReveal === false) {\n this.$content.removeClass(\"has-reveal-\".concat(this.position));\n }\n }\n\n /**\n * Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.\n * Beforehand any transition/position class gets removed.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n }, {\n key: \"_addContentClasses\",\n value: function _addContentClasses(hasReveal) {\n this._removeContentClasses(hasReveal);\n if (typeof hasReveal !== 'boolean') {\n this.$content.addClass(\"has-transition-\".concat(this.options.transition, \" has-position-\").concat(this.position));\n } else if (hasReveal === true) {\n this.$content.addClass(\"has-reveal-\".concat(this.position));\n }\n }\n\n /**\n * Preserves the fixed behavior of sticky elements on opening an off-canvas with push transition.\n * Since the off-canvas container has got a transform scope in such a case, it is done by calculating position absolute values.\n * @private\n */\n }, {\n key: \"_fixStickyElements\",\n value: function _fixStickyElements() {\n this.$sticky.each(function (_, el) {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);\n\n // If sticky element is currently fixed, adjust its top value to match absolute position due to transform scope\n // Limit to push transition because postion:fixed works without problems for overlap (no transform scope)\n if ($el.css('position') === 'fixed') {\n // Save current inline styling to restore it if undoing the absolute fixing\n var topVal = parseInt($el.css('top'), 10);\n $el.data('offCanvasSticky', {\n top: topVal\n });\n var absoluteTopVal = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).scrollTop() + topVal;\n $el.css({\n top: \"\".concat(absoluteTopVal, \"px\"),\n width: '100%',\n transition: 'none'\n });\n }\n });\n }\n\n /**\n * Restores the original fixed styling of sticky elements after having closed an off-canvas that got pseudo fixed beforehand.\n * This reverts the changes of _fixStickyElements()\n * @private\n */\n }, {\n key: \"_unfixStickyElements\",\n value: function _unfixStickyElements() {\n this.$sticky.each(function (_, el) {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);\n var stickyData = $el.data('offCanvasSticky');\n\n // If sticky element has got data object with prior values (meaning it was originally fixed) restore these values once off-canvas is closed\n if (_typeof(stickyData) === 'object') {\n $el.css({\n top: \"\".concat(stickyData.top, \"px\"),\n width: '',\n transition: ''\n });\n $el.data('offCanvasSticky', '');\n }\n });\n }\n\n /**\n * Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.\n * @param {Boolean} isRevealed - true if element should be revealed.\n * @function\n */\n }, {\n key: \"reveal\",\n value: function reveal(isRevealed) {\n if (isRevealed) {\n this.close();\n this.isRevealed = true;\n this.$element.attr('aria-hidden', 'false');\n this.$element.off('open.zf.trigger toggle.zf.trigger');\n this.$element.removeClass('is-closed');\n } else {\n this.isRevealed = false;\n this.$element.attr('aria-hidden', 'true');\n this.$element.off('open.zf.trigger toggle.zf.trigger').on({\n 'open.zf.trigger': this.open.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this)\n });\n this.$element.addClass('is-closed');\n }\n this._addContentClasses(isRevealed);\n }\n\n /**\n * Stops scrolling of the body when OffCanvas is open on mobile Safari and other troublesome browsers.\n * @function\n * @private\n */\n }, {\n key: \"_stopScrolling\",\n value: function _stopScrolling() {\n return false;\n }\n\n /**\n * Save current finger y-position\n * @param event\n * @private\n */\n }, {\n key: \"_recordScrollable\",\n value: function _recordScrollable(event) {\n var elem = this;\n elem.lastY = event.touches[0].pageY;\n }\n\n /**\n * Prevent further scrolling when it hits the edges\n * @param event\n * @private\n */\n }, {\n key: \"_preventDefaultAtEdges\",\n value: function _preventDefaultAtEdges(event) {\n var elem = this;\n var _this = event.data;\n var delta = elem.lastY - event.touches[0].pageY;\n elem.lastY = event.touches[0].pageY;\n if (!_this._canScroll(delta, elem)) {\n event.preventDefault();\n }\n }\n\n /**\n * Handle continuous scrolling of scrollbox\n * Don't bubble up to _preventDefaultAtEdges\n * @param event\n * @private\n */\n }, {\n key: \"_scrollboxTouchMoved\",\n value: function _scrollboxTouchMoved(event) {\n var elem = this;\n var _this = event.data;\n var parent = elem.closest('[data-off-canvas], [data-off-canvas-scrollbox-outer]');\n var delta = elem.lastY - event.touches[0].pageY;\n parent.lastY = elem.lastY = event.touches[0].pageY;\n event.stopPropagation();\n if (!_this._canScroll(delta, elem)) {\n if (!_this._canScroll(delta, parent)) {\n event.preventDefault();\n } else {\n parent.scrollTop += delta;\n }\n }\n }\n\n /**\n * Detect possibility of scrolling\n * @param delta\n * @param elem\n * @returns boolean\n * @private\n */\n }, {\n key: \"_canScroll\",\n value: function _canScroll(delta, elem) {\n var up = delta < 0;\n var down = delta > 0;\n var allowUp = elem.scrollTop > 0;\n var allowDown = elem.scrollTop < elem.scrollHeight - elem.clientHeight;\n return up && allowUp || down && allowDown;\n }\n\n /**\n * Opens the off-canvas menu.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n * @fires OffCanvas#opened\n * @todo also trigger 'open' event?\n */\n }, {\n key: \"open\",\n value: function open(event, trigger) {\n var _this4 = this;\n if (this.$element.hasClass('is-open') || this.isRevealed || this.isInCanvas) {\n return;\n }\n var _this = this;\n if (trigger) {\n this.$lastTrigger = trigger;\n }\n if (this.options.forceTo === 'top') {\n window.scrollTo(0, 0);\n } else if (this.options.forceTo === 'bottom') {\n window.scrollTo(0, document.body.scrollHeight);\n }\n if (this.options.transitionTime && this.options.transition !== 'overlap') {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);\n } else {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');\n }\n this.$element.addClass('is-open').removeClass('is-closed');\n this.$triggers.attr('aria-expanded', 'true');\n this.$element.attr('aria-hidden', 'false');\n this.$content.addClass('is-open-' + this.position);\n\n // If `contentScroll` is set to false, add class and disable scrolling on touch devices.\n if (this.options.contentScroll === false) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);\n this.$element.on('touchstart', this._recordScrollable);\n this.$element.on('touchmove', this, this._preventDefaultAtEdges);\n this.$element.on('touchstart', '[data-off-canvas-scrollbox]', this._recordScrollable);\n this.$element.on('touchmove', '[data-off-canvas-scrollbox]', this, this._scrollboxTouchMoved);\n }\n if (this.options.contentOverlay === true) {\n this.$overlay.addClass('is-visible');\n }\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.addClass('is-closable');\n }\n if (this.options.autoFocus === true) {\n this.$element.one((0,_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.transitionend)(this.$element), function () {\n if (!_this.$element.hasClass('is-open')) {\n return; // exit if prematurely closed\n }\n var canvasFocus = _this.$element.find('[data-autofocus]');\n if (canvasFocus.length) {\n canvasFocus.eq(0).focus();\n } else {\n _this.$element.find('a, button').eq(0).focus();\n }\n });\n }\n if (this.options.trapFocus === true) {\n this.$content.attr('tabindex', '-1');\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__.Keyboard.trapFocus(this.$element);\n }\n if (this.options.transition === 'push') {\n this._fixStickyElements();\n }\n this._addContentClasses();\n\n /**\n * Fires when the off-canvas menu opens.\n * @event OffCanvas#opened\n */\n this.$element.trigger('opened.zf.offCanvas');\n\n /**\n * Fires when the off-canvas menu open transition is done.\n * @event OffCanvas#openedEnd\n */\n this.$element.one((0,_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.transitionend)(this.$element), function () {\n _this4.$element.trigger('openedEnd.zf.offCanvas');\n });\n }\n\n /**\n * Closes the off-canvas menu.\n * @function\n * @param {Function} cb - optional cb to fire after closure.\n * @fires OffCanvas#close\n * @fires OffCanvas#closed\n */\n }, {\n key: \"close\",\n value: function close() {\n var _this5 = this;\n if (!this.$element.hasClass('is-open') || this.isRevealed) {\n return;\n }\n\n /**\n * Fires when the off-canvas menu closes.\n * @event OffCanvas#close\n */\n this.$element.trigger('close.zf.offCanvas');\n this.$element.removeClass('is-open');\n this.$element.attr('aria-hidden', 'true');\n this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom');\n if (this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-visible');\n }\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-closable');\n }\n this.$triggers.attr('aria-expanded', 'false');\n\n // Listen to transitionEnd: add class, re-enable scrolling and release focus when done.\n this.$element.one((0,_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.transitionend)(this.$element), function () {\n _this5.$element.addClass('is-closed');\n _this5._removeContentClasses();\n if (_this5.options.transition === 'push') {\n _this5._unfixStickyElements();\n }\n\n // If `contentScroll` is set to false, remove class and re-enable scrolling on touch devices.\n if (_this5.options.contentScroll === false) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').removeClass('is-off-canvas-open').off('touchmove', _this5._stopScrolling);\n _this5.$element.off('touchstart', _this5._recordScrollable);\n _this5.$element.off('touchmove', _this5._preventDefaultAtEdges);\n _this5.$element.off('touchstart', '[data-off-canvas-scrollbox]', _this5._recordScrollable);\n _this5.$element.off('touchmove', '[data-off-canvas-scrollbox]', _this5._scrollboxTouchMoved);\n }\n if (_this5.options.trapFocus === true) {\n _this5.$content.removeAttr('tabindex');\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__.Keyboard.releaseFocus(_this5.$element);\n }\n\n /**\n * Fires when the off-canvas menu close transition is done.\n * @event OffCanvas#closed\n */\n _this5.$element.trigger('closed.zf.offCanvas');\n });\n }\n\n /**\n * Toggles the off-canvas menu open or closed.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n */\n }, {\n key: \"toggle\",\n value: function toggle(event, trigger) {\n if (this.$element.hasClass('is-open')) {\n this.close(event, trigger);\n } else {\n this.open(event, trigger);\n }\n }\n\n /**\n * Handles keyboard input when detected. When the escape key is pressed, the off-canvas menu closes, and focus is restored to the element that opened the menu.\n * @function\n * @private\n */\n }, {\n key: \"_handleKeyboard\",\n value: function _handleKeyboard(e) {\n var _this6 = this;\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__.Keyboard.handleKey(e, 'OffCanvas', {\n close: function close() {\n _this6.close();\n _this6.$lastTrigger.focus();\n return true;\n },\n handled: function handled() {\n e.preventDefault();\n }\n });\n }\n\n /**\n * Destroys the OffCanvas plugin.\n * @function\n */\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.close();\n this.$element.off('.zf.trigger .zf.offCanvas');\n this.$overlay.off('.zf.offCanvas');\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n }\n }]);\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__.Plugin);\nOffCanvas.defaults = {\n /**\n * Allow the user to click outside of the menu to close it.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n /**\n * Adds an overlay on top of `[data-off-canvas-content]`.\n * @option\n * @type {boolean}\n * @default true\n */\n contentOverlay: true,\n /**\n * Target an off-canvas content container by ID that may be placed anywhere. If null the closest content container will be taken.\n * @option\n * @type {?string}\n * @default null\n */\n contentId: null,\n /**\n * Define the off-canvas element is nested in an off-canvas content. This is required when using the contentId option for a nested element.\n * @option\n * @type {boolean}\n * @default null\n */\n nested: null,\n /**\n * Enable/disable scrolling of the main content when an off canvas panel is open.\n * @option\n * @type {boolean}\n * @default true\n */\n contentScroll: true,\n /**\n * Amount of time the open and close transition requires, including the appropriate milliseconds (`ms`) or seconds (`s`) unit (e.g. `500ms`, `.75s`) If none selected, pulls from body style.\n * @option\n * @type {string}\n * @default null\n */\n transitionTime: null,\n /**\n * Type of transition for the OffCanvas menu. Options are 'push', 'detached' or 'slide'.\n * @option\n * @type {string}\n * @default push\n */\n transition: 'push',\n /**\n * Force the page to scroll to top or bottom on open.\n * @option\n * @type {?string}\n * @default null\n */\n forceTo: null,\n /**\n * Allow the OffCanvas to remain open for certain breakpoints.\n * @option\n * @type {boolean}\n * @default false\n */\n isRevealed: false,\n /**\n * Breakpoint at which to reveal. JS will use a RegExp to target standard classes, if changing classnames, pass your class with the `revealClass` option.\n * @option\n * @type {?string}\n * @default null\n */\n revealOn: null,\n /**\n * Breakpoint at which the off-canvas gets moved into canvas content and acts as regular page element.\n * @option\n * @type {?string}\n * @default null\n */\n inCanvasOn: null,\n /**\n * Force focus to the offcanvas on open. If true, will focus the opening trigger on close.\n * @option\n * @type {boolean}\n * @default true\n */\n autoFocus: true,\n /**\n * Class used to force an OffCanvas to remain open. Foundation defaults for this are `reveal-for-large` & `reveal-for-medium`.\n * @option\n * @type {string}\n * @default reveal-for-\n * @todo improve the regex testing for this.\n */\n revealClass: 'reveal-for-',\n /**\n * Triggers optional focus trapping when opening an OffCanvas. Sets tabindex of [data-off-canvas-content] to -1 for accessibility purposes.\n * @option\n * @type {boolean}\n * @default false\n */\n trapFocus: false\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!****************************************!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\****************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Triggers: function() { return /* binding */ Triggers; }\n/* harmony export */ });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n return false;\n}();\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable');\n\n // Only close the first closable element. See https://git.io/zf-7833\n e.stopPropagation();\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__.Motion.animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n};\n\n// Elements with [data-open] will reveal a plugin that supports it when clicked.\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n};\n\n// Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n};\n\n// Elements with [data-toggle] will toggle a plugin that supports it when clicked.\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n};\n\n// Elements with [data-closable] will respond to close.zf.trigger events.\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n};\n\n// Elements with [data-toggle-focus] will respond to coming in and out of focus\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n};\n\n// More Global/complex listeners and triggers\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a resize event\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a scroll event\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n }\n};\n\n// Global, parses whole document.\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on(trigger, function () {\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');\n\n //element callback\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target);\n\n //trigger the event handler for the element depending on type\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n break;\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n default:\n return false;\n //nothing\n }\n };\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener(250);\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\nTriggers.init = function (__, Foundation) {\n (0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__.onLoad)(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n if ((jquery__WEBPACK_IMPORTED_MODULE_0___default().triggersInitialized) !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().triggersInitialized) = true;\n }\n });\n if (Foundation) {\n Foundation.Triggers = Triggers;\n // Legacy included to be backwards compatible for now.\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n/***/ }),\n\n/***/ \"./foundation.core\":\n/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!****************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\****************************************************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!************************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\************************************************************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!********************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\********************************************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!****************************************************!*\\\n !*** ./js/entries/plugins/foundation.offcanvas.js ***!\n \\****************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ OffCanvas: function() { return /* reexport safe */ _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__.OffCanvas; }\n/* harmony export */ });\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.offcanvas */ \"./js/foundation.offcanvas.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__.OffCanvas, 'OffCanvas');\n\n}();\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=foundation.offcanvas.js.map"],"names":["root","factory","exports","module","require","define","amd","self","__WEBPACK_EXTERNAL_MODULE__foundation_core__","__WEBPACK_EXTERNAL_MODULE_jquery__","__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__","__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__","__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__","__webpack_modules__","./js/foundation.offcanvas.js","__unused_webpack_module","__webpack_exports__","__webpack_require__","r","d","OffCanvas","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","t","length","enumerable","configurable","writable","Object","defineProperty","i","toPrimitive","String","Number","call","TypeError","key","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","apply","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_setPrototypeOf","_Plugin","_classCallCheck","a","this","arguments","_inherits","create","value","element","options","_this2","className","$element","extend","defaults","data","contentClasses","base","reveal","$lastTrigger","$triggers","position","$content","nested","$sticky","isInCanvas","each","index","val","push","Triggers","init","MediaQuery","_init","_events","Keyboard","register","ESCAPE","id","attr","contentId","siblings","first","closest","console","warn","transition","removeClass","addClass","concat","document","find","is","match","contentOverlay","overlay","createElement","overlayPosition","css","setAttribute","$overlay","insertAfter","append","revealOnClass","RegExp","RegExpEscape","revealClass","exec","inCanvasFor","isRevealed","revealOn","_setMQChecker","transitionTime","contentScroll","inCanvasOn","_checkInCanvas","_removeContentClasses","_this3","off","on","open.zf.trigger","open","close.zf.trigger","close","toggle.zf.trigger","toggle","keydown.zf.offCanvas","_handleKeyboard","closeOnClick","click.zf.offCanvas","window","_this","onLoadListener","onLoad","atLeast","hasReveal","join","_","el","absoluteTopVal","$el","topVal","parseInt","top","scrollTop","width","stickyData","_addContentClasses","event","lastY","touches","pageY","delta","_canScroll","preventDefault","parent","stopPropagation","elem","allowUp","scrollHeight","clientHeight","trigger","_this4","hasClass","forceTo","scrollTo","body","_stopScrolling","_recordScrollable","_preventDefaultAtEdges","_scrollboxTouchMoved","autoFocus","one","transitionend","canvasFocus","eq","focus","trapFocus","_fixStickyElements","_this5","_unfixStickyElements","removeAttr","releaseFocus","_this6","handleKey","handled","Plugin","./js/foundation.util.triggers.js","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__","triggers","type","split","forEach","MutationObserver","prefixes","Listeners","Basic","Global","Initializers","debounceGlobalListener","debounce","listener","timer","args","Array","slice","clearTimeout","setTimeout","openListener","closeListener","toggleListener","closeableListener","animation","Motion","animateOut","fadeOut","toggleFocusListener","triggerHandler","addOpenListener","$elem","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","resizeListener","$nodes","scrollListener","closeMeListener","pluginId","plugin","namespace","not","addClosemeListener","pluginName","yetiBoxes","plugNames","error","listeners","map","name","addResizeListener","addScrollListener","addMutationEventsListener","listeningElementsMutation","mutationRecordsList","$target","target","attributeName","pageYOffset","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","__","Foundation","IHearYou","./foundation.core","./foundation.util.keyboard","./foundation.util.mediaQuery","./foundation.util.motion","jquery","__webpack_module_cache__","getter","__esModule","definition","get","obj","prop","hasOwnProperty","toStringTag","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__","moduleId","cachedModule","undefined"],"mappings":"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"}