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.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/js/entries/plugins/foundation.slider.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.slider.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.util.triggers.js"],"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_motion__","__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__","__WEBPACK_EXTERNAL_MODULE_jquery__","installedModules","__webpack_require__","m","r","__webpack_exports__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","d","_foundation_slider__WEBPACK_IMPORTED_MODULE_1__","Foundation","plugin","Slider","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__","clearTimeout","element","options","this","$element","$","extend","defaults","data","className","Touch","init","Triggers","_init","Keyboard","register","ltr","ARROW_RIGHT","ARROW_UP","ARROW_DOWN","ARROW_LEFT","SHIFT_ARROW_RIGHT","SHIFT_ARROW_UP","SHIFT_ARROW_DOWN","SHIFT_ARROW_LEFT","HOME","END","rtl","inputs","find","handles","$handle","eq","$input","length","concat","attr","$fill","css","vertical","disabled","disabledClass","add","binding","doubleSided","$handle2","$input2","isDbl","_setInitAttr","setHandles","key","_this2","val","_setHandlePos","pctOfBar","percent","_logTransform","positionValueFunction","toFixed","_powTransform","value","parseFloat","end","start","absPosition","Math","abs","position","base","$hndl","location","index","h2Val","step","h1Val","_this","vert","hOrW","getBoundingClientRect","lOrT","_pctOfBar","pxToMove","elemDim","handleDim","decimal","dim","handlePct","isLeftHndl","movement","style","cb","handlePos","isNaN","initialStart","one","moveTime","timeout","setTimeout","idx","Object","initVal","id","max","min","role","aria-controls","aria-valuemax","aria-valuemin","aria-valuenow","aria-orientation","tabindex","_adjustValue","e","preventDefault","param","pageY","pageX","direction","eventOffset","scrollTop","scrollLeft","barDim","elemOffset","windowScroll","barXY","eventFromBar","_value","offsetPct","hasVal","prev_val","left","next_val","div","_eventsForHandle","curHandle","off","on","keyCode","handleChangeEvent","call","clickSelect","target","is","_handleEvent","draggable","addTouch","$body","removeClass","_$handle","handleKey","decrease","oldValue","decrease_fast","increase","increase_fast","handled","newValue","dir","clickPos","frac","num","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_typeof","obj","Symbol","iterator","constructor","prototype","el","type","split","forEach","MutationObserver","prefixes","i","Listeners","Basic","timer","args","Array","slice","arguments","debounce","Global","openListener","Initializers","closeListener","toggleListener","trigger","closeableListener","stopPropagation","animation","Motion","animateOut","toggleFocusListener","fadeOut","triggerHandler","$elem","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","$nodes","resizeListener","each","scrollListener","not","pluginId","closeMeListener","plugins","addClosemeListener","pluginName","plugNames","console","push","error","listeners","map","name","addResizeListener","debounceGlobalListener","addScrollListener","listeningElementsMutation","mutationRecordsList","$target","attributeName","closest","observe","attributes","childList","characterData","elementObserver","addSimpleListeners","$document","document","addOpenListener","addMutationEventsListener","addGlobalListeners","triggersInitialized","onLoad","c","getter","o","defineProperty","enumerable","get","toStringTag","t","mode","__esModule","ns","create","bind","object","property","hasOwnProperty","p","s","moduleId","l","modules"],"mappings":"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","file":"foundation.slider.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.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.keyboard\", \"./foundation.util.motion\", \"./foundation.util.touch\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.slider\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.slider\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__, __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 = 15);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;","import { Foundation } from './foundation.core';\n\nimport { Slider } from '../../foundation.slider';\nFoundation.plugin(Slider, 'Slider');\n\nexport { Foundation, Slider };\n","'use strict';\n\nimport $ from 'jquery';\nimport { Keyboard } from './foundation.util.keyboard';\nimport { Move } from './foundation.util.motion';\nimport { GetYoDigits, rtl as Rtl } from './foundation.core.utils';\n\nimport { Plugin } from './foundation.core.plugin';\n\nimport { Touch } from './foundation.util.touch';\n\nimport { Triggers } from './foundation.util.triggers';\n/**\n * Slider module.\n * @module foundation.slider\n * @requires foundation.util.motion\n * @requires foundation.util.triggers\n * @requires foundation.util.keyboard\n * @requires foundation.util.touch\n */\n\nclass Slider extends Plugin {\n /**\n * Creates a new instance of a slider control.\n * @class\n * @name Slider\n * @param {jQuery} element - jQuery object to make into a slider control.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n _setup(element, options) {\n this.$element = element;\n this.options = $.extend({}, Slider.defaults, this.$element.data(), options);\n this.className = 'Slider'; // ie9 back compat\n\n // Touch and Triggers inits are idempotent, we just need to make sure it's initialied.\n Touch.init($);\n Triggers.init($);\n\n this._init();\n\n Keyboard.register('Slider', {\n 'ltr': {\n 'ARROW_RIGHT': 'increase',\n 'ARROW_UP': 'increase',\n 'ARROW_DOWN': 'decrease',\n 'ARROW_LEFT': 'decrease',\n 'SHIFT_ARROW_RIGHT': 'increase_fast',\n 'SHIFT_ARROW_UP': 'increase_fast',\n 'SHIFT_ARROW_DOWN': 'decrease_fast',\n 'SHIFT_ARROW_LEFT': 'decrease_fast',\n 'HOME': 'min',\n 'END': 'max'\n },\n 'rtl': {\n 'ARROW_LEFT': 'increase',\n 'ARROW_RIGHT': 'decrease',\n 'SHIFT_ARROW_LEFT': 'increase_fast',\n 'SHIFT_ARROW_RIGHT': 'decrease_fast'\n }\n });\n }\n\n /**\n * Initilizes the plugin by reading/setting attributes, creating collections and setting the initial position of the handle(s).\n * @function\n * @private\n */\n _init() {\n this.inputs = this.$element.find('input');\n this.handles = this.$element.find('[data-slider-handle]');\n\n this.$handle = this.handles.eq(0);\n this.$input = this.inputs.length ? this.inputs.eq(0) : $(`#${this.$handle.attr('aria-controls')}`);\n this.$fill = this.$element.find('[data-slider-fill]').css(this.options.vertical ? 'height' : 'width', 0);\n\n var isDbl = false,\n _this = this;\n if (this.options.disabled || this.$element.hasClass(this.options.disabledClass)) {\n this.options.disabled = true;\n this.$element.addClass(this.options.disabledClass);\n }\n if (!this.inputs.length) {\n this.inputs = $().add(this.$input);\n this.options.binding = true;\n }\n\n this._setInitAttr(0);\n\n if (this.handles[1]) {\n this.options.doubleSided = true;\n this.$handle2 = this.handles.eq(1);\n this.$input2 = this.inputs.length > 1 ? this.inputs.eq(1) : $(`#${this.$handle2.attr('aria-controls')}`);\n\n if (!this.inputs[1]) {\n this.inputs = this.inputs.add(this.$input2);\n }\n isDbl = true;\n\n // this.$handle.triggerHandler('click.zf.slider');\n this._setInitAttr(1);\n }\n\n // Set handle positions\n this.setHandles();\n\n this._events();\n }\n\n setHandles() {\n if(this.handles[1]) {\n this._setHandlePos(this.$handle, this.inputs.eq(0).val(), () => {\n this._setHandlePos(this.$handle2, this.inputs.eq(1).val());\n });\n } else {\n this._setHandlePos(this.$handle, this.inputs.eq(0).val());\n }\n }\n\n _reflow() {\n this.setHandles();\n }\n /**\n * @function\n * @private\n * @param {Number} value - floating point (the value) to be transformed using to a relative position on the slider (the inverse of _value)\n */\n _pctOfBar(value) {\n var pctOfBar = percent(value - this.options.start, this.options.end - this.options.start)\n\n switch(this.options.positionValueFunction) {\n case \"pow\":\n pctOfBar = this._logTransform(pctOfBar);\n break;\n case \"log\":\n pctOfBar = this._powTransform(pctOfBar);\n break;\n }\n\n return pctOfBar.toFixed(2)\n }\n\n /**\n * @function\n * @private\n * @param {Number} pctOfBar - floating point, the relative position of the slider (typically between 0-1) to be transformed to a value\n */\n _value(pctOfBar) {\n switch(this.options.positionValueFunction) {\n case \"pow\":\n pctOfBar = this._powTransform(pctOfBar);\n break;\n case \"log\":\n pctOfBar = this._logTransform(pctOfBar);\n break;\n }\n\n var value\n if (this.options.vertical) {\n // linear interpolation which is working with negative values for start\n // https://math.stackexchange.com/a/1019084\n value = parseFloat(this.options.end) + pctOfBar * (this.options.start - this.options.end)\n } else {\n value = (this.options.end - this.options.start) * pctOfBar + parseFloat(this.options.start);\n }\n\n return value\n }\n\n /**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the log function\n */\n _logTransform(value) {\n return baseLog(this.options.nonLinearBase, ((value*(this.options.nonLinearBase-1))+1))\n }\n\n /**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the power function\n */\n _powTransform(value) {\n return (Math.pow(this.options.nonLinearBase, value) - 1) / (this.options.nonLinearBase - 1)\n }\n\n /**\n * Sets the position of the selected handle and fill bar.\n * @function\n * @private\n * @param {jQuery} $hndl - the selected handle to move.\n * @param {Number} location - floating point between the start and end values of the slider bar.\n * @param {Function} cb - callback function to fire on completion.\n * @fires Slider#moved\n * @fires Slider#changed\n */\n _setHandlePos($hndl, location, cb) {\n // don't move if the slider has been disabled since its initialization\n if (this.$element.hasClass(this.options.disabledClass)) {\n return;\n }\n //might need to alter that slightly for bars that will have odd number selections.\n location = parseFloat(location);//on input change events, convert string to number...grumble.\n\n // prevent slider from running out of bounds, if value exceeds the limits set through options, override the value to min/max\n if (location < this.options.start) { location = this.options.start; }\n else if (location > this.options.end) { location = this.options.end; }\n\n var isDbl = this.options.doubleSided;\n\n if (isDbl) { //this block is to prevent 2 handles from crossing eachother. Could/should be improved.\n if (this.handles.index($hndl) === 0) {\n var h2Val = parseFloat(this.$handle2.attr('aria-valuenow'));\n location = location >= h2Val ? h2Val - this.options.step : location;\n } else {\n var h1Val = parseFloat(this.$handle.attr('aria-valuenow'));\n location = location <= h1Val ? h1Val + this.options.step : location;\n }\n }\n\n var _this = this,\n vert = this.options.vertical,\n hOrW = vert ? 'height' : 'width',\n lOrT = vert ? 'top' : 'left',\n handleDim = $hndl[0].getBoundingClientRect()[hOrW],\n elemDim = this.$element[0].getBoundingClientRect()[hOrW],\n //percentage of bar min/max value based on click or drag point\n pctOfBar = this._pctOfBar(location),\n //number of actual pixels to shift the handle, based on the percentage obtained above\n pxToMove = (elemDim - handleDim) * pctOfBar,\n //percentage of bar to shift the handle\n movement = (percent(pxToMove, elemDim) * 100).toFixed(this.options.decimal);\n //fixing the decimal value for the location number, is passed to other methods as a fixed floating-point value\n location = parseFloat(location.toFixed(this.options.decimal));\n // declare empty object for css adjustments, only used with 2 handled-sliders\n var css = {};\n\n this._setValues($hndl, location);\n\n // TODO update to calculate based on values set to respective inputs??\n if (isDbl) {\n var isLeftHndl = this.handles.index($hndl) === 0,\n //empty variable, will be used for min-height/width for fill bar\n dim,\n //percentage w/h of the handle compared to the slider bar\n handlePct = ~~(percent(handleDim, elemDim) * 100);\n //if left handle, the math is slightly different than if it's the right handle, and the left/top property needs to be changed for the fill bar\n if (isLeftHndl) {\n //left or top percentage value to apply to the fill bar.\n css[lOrT] = `${movement}%`;\n //calculate the new min-height/width for the fill bar.\n dim = parseFloat(this.$handle2[0].style[lOrT]) - movement + handlePct;\n //this callback is necessary to prevent errors and allow the proper placement and initialization of a 2-handled slider\n //plus, it means we don't care if 'dim' isNaN on init, it won't be in the future.\n if (cb && typeof cb === 'function') { cb(); }//this is only needed for the initialization of 2 handled sliders\n } else {\n //just caching the value of the left/bottom handle's left/top property\n var handlePos = parseFloat(this.$handle[0].style[lOrT]);\n //calculate the new min-height/width for the fill bar. Use isNaN to prevent false positives for numbers <= 0\n //based on the percentage of movement of the handle being manipulated, less the opposing handle's left/top position, plus the percentage w/h of the handle itself\n dim = movement - (isNaN(handlePos) ? (this.options.initialStart - this.options.start)/((this.options.end-this.options.start)/100) : handlePos) + handlePct;\n }\n // assign the min-height/width to our css object\n css[`min-${hOrW}`] = `${dim}%`;\n }\n\n this.$element.one('finished.zf.animate', function() {\n /**\n * Fires when the handle is done moving.\n * @event Slider#moved\n */\n _this.$element.trigger('moved.zf.slider', [$hndl]);\n });\n\n //because we don't know exactly how the handle will be moved, check the amount of time it should take to move.\n var moveTime = this.$element.data('dragging') ? 1000/60 : this.options.moveTime;\n\n Move(moveTime, $hndl, function() {\n // adjusting the left/top property of the handle, based on the percentage calculated above\n // if movement isNaN, that is because the slider is hidden and we cannot determine handle width,\n // fall back to next best guess.\n if (isNaN(movement)) {\n $hndl.css(lOrT, `${pctOfBar * 100}%`);\n }\n else {\n $hndl.css(lOrT, `${movement}%`);\n }\n\n if (!_this.options.doubleSided) {\n //if single-handled, a simple method to expand the fill bar\n _this.$fill.css(hOrW, `${pctOfBar * 100}%`);\n } else {\n //otherwise, use the css object we created above\n _this.$fill.css(css);\n }\n });\n\n\n /**\n * Fires when the value has not been change for a given time.\n * @event Slider#changed\n */\n clearTimeout(_this.timeout);\n _this.timeout = setTimeout(function(){\n _this.$element.trigger('changed.zf.slider', [$hndl]);\n }, _this.options.changedDelay);\n }\n\n /**\n * Sets the initial attribute for the slider element.\n * @function\n * @private\n * @param {Number} idx - index of the current handle/input to use.\n */\n _setInitAttr(idx) {\n var initVal = (idx === 0 ? this.options.initialStart : this.options.initialEnd)\n var id = this.inputs.eq(idx).attr('id') || GetYoDigits(6, 'slider');\n this.inputs.eq(idx).attr({\n 'id': id,\n 'max': this.options.end,\n 'min': this.options.start,\n 'step': this.options.step\n });\n this.inputs.eq(idx).val(initVal);\n this.handles.eq(idx).attr({\n 'role': 'slider',\n 'aria-controls': id,\n 'aria-valuemax': this.options.end,\n 'aria-valuemin': this.options.start,\n 'aria-valuenow': initVal,\n 'aria-orientation': this.options.vertical ? 'vertical' : 'horizontal',\n 'tabindex': 0\n });\n }\n\n /**\n * Sets the input and `aria-valuenow` values for the slider element.\n * @function\n * @private\n * @param {jQuery} $handle - the currently selected handle.\n * @param {Number} val - floating point of the new value.\n */\n _setValues($handle, val) {\n var idx = this.options.doubleSided ? this.handles.index($handle) : 0;\n this.inputs.eq(idx).val(val);\n $handle.attr('aria-valuenow', val);\n }\n\n /**\n * Handles events on the slider element.\n * Calculates the new location of the current handle.\n * If there are two handles and the bar was clicked, it determines which handle to move.\n * @function\n * @private\n * @param {Object} e - the `event` object passed from the listener.\n * @param {jQuery} $handle - the current handle to calculate for, if selected.\n * @param {Number} val - floating point number for the new value of the slider.\n * TODO clean this up, there's a lot of repeated code between this and the _setHandlePos fn.\n */\n _handleEvent(e, $handle, val) {\n var value, hasVal;\n if (!val) {//click or drag events\n e.preventDefault();\n var _this = this,\n vertical = this.options.vertical,\n param = vertical ? 'height' : 'width',\n direction = vertical ? 'top' : 'left',\n eventOffset = vertical ? e.pageY : e.pageX,\n halfOfHandle = this.$handle[0].getBoundingClientRect()[param] / 2,\n barDim = this.$element[0].getBoundingClientRect()[param],\n windowScroll = vertical ? $(window).scrollTop() : $(window).scrollLeft();\n\n\n var elemOffset = this.$element.offset()[direction];\n\n // touch events emulated by the touch util give position relative to screen, add window.scroll to event coordinates...\n // best way to guess this is simulated is if clientY == pageY\n if (e.clientY === e.pageY) { eventOffset = eventOffset + windowScroll; }\n var eventFromBar = eventOffset - elemOffset;\n var barXY;\n if (eventFromBar < 0) {\n barXY = 0;\n } else if (eventFromBar > barDim) {\n barXY = barDim;\n } else {\n barXY = eventFromBar;\n }\n var offsetPct = percent(barXY, barDim);\n\n value = this._value(offsetPct);\n\n // turn everything around for RTL, yay math!\n if (Rtl() && !this.options.vertical) {value = this.options.end - value;}\n\n value = _this._adjustValue(null, value);\n //boolean flag for the setHandlePos fn, specifically for vertical sliders\n hasVal = false;\n\n if (!$handle) {//figure out which handle it is, pass it to the next function.\n var firstHndlPos = absPosition(this.$handle, direction, barXY, param),\n secndHndlPos = absPosition(this.$handle2, direction, barXY, param);\n $handle = firstHndlPos <= secndHndlPos ? this.$handle : this.$handle2;\n }\n\n } else {//change event on input\n value = this._adjustValue(null, val);\n hasVal = true;\n }\n\n this._setHandlePos($handle, value);\n }\n\n /**\n * Adjustes value for handle in regard to step value. returns adjusted value\n * @function\n * @private\n * @param {jQuery} $handle - the selected handle.\n * @param {Number} value - value to adjust. used if $handle is falsy\n */\n _adjustValue($handle, value) {\n var val,\n step = this.options.step,\n div = parseFloat(step/2),\n left, prev_val, next_val;\n if (!!$handle) {\n val = parseFloat($handle.attr('aria-valuenow'));\n }\n else {\n val = value;\n }\n if (val >= 0) {\n left = val % step;\n } else {\n left = step + (val % step);\n }\n prev_val = val - left;\n next_val = prev_val + step;\n if (left === 0) {\n return val;\n }\n val = val >= prev_val + div ? next_val : prev_val;\n return val;\n }\n\n /**\n * Adds event listeners to the slider elements.\n * @function\n * @private\n */\n _events() {\n this._eventsForHandle(this.$handle);\n if(this.handles[1]) {\n this._eventsForHandle(this.$handle2);\n }\n }\n\n\n /**\n * Adds event listeners a particular handle\n * @function\n * @private\n * @param {jQuery} $handle - the current handle to apply listeners to.\n */\n _eventsForHandle($handle) {\n var _this = this,\n curHandle,\n timer;\n\n const handleChangeEvent = function(e) {\n const idx = _this.inputs.index($(this));\n _this._handleEvent(e, _this.handles.eq(idx), $(this).val());\n };\n\n // IE only triggers the change event when the input loses focus which strictly follows the HTML specification\n // listen for the enter key and trigger a change\n // @see https://html.spec.whatwg.org/multipage/input.html#common-input-element-events\n this.inputs.off('keyup.zf.slider').on('keyup.zf.slider', function (e) {\n if(e.keyCode == 13) handleChangeEvent.call(this, e);\n });\n\n this.inputs.off('change.zf.slider').on('change.zf.slider', handleChangeEvent);\n\n if (this.options.clickSelect) {\n this.$element.off('click.zf.slider').on('click.zf.slider', function(e) {\n if (_this.$element.data('dragging')) { return false; }\n\n if (!$(e.target).is('[data-slider-handle]')) {\n if (_this.options.doubleSided) {\n _this._handleEvent(e);\n } else {\n _this._handleEvent(e, _this.$handle);\n }\n }\n });\n }\n\n if (this.options.draggable) {\n this.handles.addTouch();\n\n var $body = $('body');\n $handle\n .off('mousedown.zf.slider')\n .on('mousedown.zf.slider', function(e) {\n $handle.addClass('is-dragging');\n _this.$fill.addClass('is-dragging');//\n _this.$element.data('dragging', true);\n\n curHandle = $(e.currentTarget);\n\n $body.on('mousemove.zf.slider', function(e) {\n e.preventDefault();\n _this._handleEvent(e, curHandle);\n\n }).on('mouseup.zf.slider', function(e) {\n _this._handleEvent(e, curHandle);\n\n $handle.removeClass('is-dragging');\n _this.$fill.removeClass('is-dragging');\n _this.$element.data('dragging', false);\n\n $body.off('mousemove.zf.slider mouseup.zf.slider');\n });\n })\n // prevent events triggered by touch\n .on('selectstart.zf.slider touchmove.zf.slider', function(e) {\n e.preventDefault();\n });\n }\n\n $handle.off('keydown.zf.slider').on('keydown.zf.slider', function(e) {\n var _$handle = $(this),\n idx = _this.options.doubleSided ? _this.handles.index(_$handle) : 0,\n oldValue = parseFloat(_this.inputs.eq(idx).val()),\n newValue;\n\n // handle keyboard event with keyboard util\n Keyboard.handleKey(e, 'Slider', {\n decrease: function() {\n newValue = oldValue - _this.options.step;\n },\n increase: function() {\n newValue = oldValue + _this.options.step;\n },\n decrease_fast: function() {\n newValue = oldValue - _this.options.step * 10;\n },\n increase_fast: function() {\n newValue = oldValue + _this.options.step * 10;\n },\n min: function() {\n newValue = _this.options.start;\n },\n max: function() {\n newValue = _this.options.end;\n },\n handled: function() { // only set handle pos when event was handled specially\n e.preventDefault();\n _this._setHandlePos(_$handle, newValue);\n }\n });\n /*if (newValue) { // if pressed key has special function, update value\n e.preventDefault();\n _this._setHandlePos(_$handle, newValue);\n }*/\n });\n }\n\n /**\n * Destroys the slider plugin.\n */\n _destroy() {\n this.handles.off('.zf.slider');\n this.inputs.off('.zf.slider');\n this.$element.off('.zf.slider');\n\n clearTimeout(this.timeout);\n }\n}\n\nSlider.defaults = {\n /**\n * Minimum value for the slider scale.\n * @option\n * @type {number}\n * @default 0\n */\n start: 0,\n /**\n * Maximum value for the slider scale.\n * @option\n * @type {number}\n * @default 100\n */\n end: 100,\n /**\n * Minimum value change per change event.\n * @option\n * @type {number}\n * @default 1\n */\n step: 1,\n /**\n * Value at which the handle/input *(left handle/first input)* should be set to on initialization.\n * @option\n * @type {number}\n * @default 0\n */\n initialStart: 0,\n /**\n * Value at which the right handle/second input should be set to on initialization.\n * @option\n * @type {number}\n * @default 100\n */\n initialEnd: 100,\n /**\n * Allows the input to be located outside the container and visible. Set to by the JS\n * @option\n * @type {boolean}\n * @default false\n */\n binding: false,\n /**\n * Allows the user to click/tap on the slider bar to select a value.\n * @option\n * @type {boolean}\n * @default true\n */\n clickSelect: true,\n /**\n * Set to true and use the `vertical` class to change alignment to vertical.\n * @option\n * @type {boolean}\n * @default false\n */\n vertical: false,\n /**\n * Allows the user to drag the slider handle(s) to select a value.\n * @option\n * @type {boolean}\n * @default true\n */\n draggable: true,\n /**\n * Disables the slider and prevents event listeners from being applied. Double checked by JS with `disabledClass`.\n * @option\n * @type {boolean}\n * @default false\n */\n disabled: false,\n /**\n * Allows the use of two handles. Double checked by the JS. Changes some logic handling.\n * @option\n * @type {boolean}\n * @default false\n */\n doubleSided: false,\n /**\n * Potential future feature.\n */\n // steps: 100,\n /**\n * Number of decimal places the plugin should go to for floating point precision.\n * @option\n * @type {number}\n * @default 2\n */\n decimal: 2,\n /**\n * Time delay for dragged elements.\n */\n // dragDelay: 0,\n /**\n * Time, in ms, to animate the movement of a slider handle if user clicks/taps on the bar. Needs to be manually set if updating the transition time in the Sass settings.\n * @option\n * @type {number}\n * @default 200\n */\n moveTime: 200,//update this if changing the transition time in the sass\n /**\n * Class applied to disabled sliders.\n * @option\n * @type {string}\n * @default 'disabled'\n */\n disabledClass: 'disabled',\n /**\n * Will invert the default layout for a vertical<span data-tooltip title=\"who would do this???\"> </span>slider.\n * @option\n * @type {boolean}\n * @default false\n */\n invertVertical: false,\n /**\n * Milliseconds before the `changed.zf-slider` event is triggered after value change.\n * @option\n * @type {number}\n * @default 500\n */\n changedDelay: 500,\n /**\n * Basevalue for non-linear sliders\n * @option\n * @type {number}\n * @default 5\n */\n nonLinearBase: 5,\n /**\n * Basevalue for non-linear sliders, possible values are: `'linear'`, `'pow'` & `'log'`. Pow and Log use the nonLinearBase setting.\n * @option\n * @type {string}\n * @default 'linear'\n */\n positionValueFunction: 'linear',\n};\n\nfunction percent(frac, num) {\n return (frac / num);\n}\nfunction absPosition($handle, dir, clickPos, param) {\n return Math.abs(($handle.position()[dir] + ($handle[param]() / 2)) - clickPos);\n}\nfunction baseLog(base, value) {\n return Math.log(value)/Math.log(base)\n}\n\nexport {Slider};\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"]}
1
+ {"version":3,"file":"foundation.slider.min.js","sources":["foundation.slider.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.motion\"), require(\"./foundation.util.touch\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\", \"./foundation.util.keyboard\", \"./foundation.util.motion\", \"./foundation.util.touch\"], 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.motion\"), require(\"./foundation.util.touch\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.slider\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.slider.js\":\n/*!*********************************!*\\\n !*** ./js/foundation.slider.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 */ Slider: function() { return /* binding */ Slider; }\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_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__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__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.touch */ \"./foundation.util.touch\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__ = __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 * Slider module.\n * @module foundation.slider\n * @requires foundation.util.motion\n * @requires foundation.util.triggers\n * @requires foundation.util.keyboard\n * @requires foundation.util.touch\n */\nvar Slider = /*#__PURE__*/function (_Plugin) {\n function Slider() {\n _classCallCheck(this, Slider);\n return _callSuper(this, Slider, arguments);\n }\n _inherits(Slider, _Plugin);\n return _createClass(Slider, [{\n key: \"_setup\",\n value:\n /**\n * Creates a new instance of a slider control.\n * @class\n * @name Slider\n * @param {jQuery} element - jQuery object to make into a slider control.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({}, Slider.defaults, this.$element.data(), options);\n this.className = 'Slider'; // ie9 back compat\n this.initialized = false;\n\n // Touch and Triggers inits are idempotent, we just need to make sure it's initialied.\n _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__.Touch.init((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__.Triggers.init((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n this._init();\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard.register('Slider', {\n 'ltr': {\n 'ARROW_RIGHT': 'increase',\n 'ARROW_UP': 'increase',\n 'ARROW_DOWN': 'decrease',\n 'ARROW_LEFT': 'decrease',\n 'SHIFT_ARROW_RIGHT': 'increaseFast',\n 'SHIFT_ARROW_UP': 'increaseFast',\n 'SHIFT_ARROW_DOWN': 'decreaseFast',\n 'SHIFT_ARROW_LEFT': 'decreaseFast',\n 'HOME': 'min',\n 'END': 'max'\n },\n 'rtl': {\n 'ARROW_LEFT': 'increase',\n 'ARROW_RIGHT': 'decrease',\n 'SHIFT_ARROW_LEFT': 'increaseFast',\n 'SHIFT_ARROW_RIGHT': 'decreaseFast'\n }\n });\n }\n\n /**\n * Initilizes the plugin by reading/setting attributes, creating collections and setting the initial position of the handle(s).\n * @function\n * @private\n */\n }, {\n key: \"_init\",\n value: function _init() {\n this.inputs = this.$element.find('input');\n this.handles = this.$element.find('[data-slider-handle]');\n this.$handle = this.handles.eq(0);\n this.$input = this.inputs.length ? this.inputs.eq(0) : jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(this.$handle.attr('aria-controls')));\n this.$fill = this.$element.find('[data-slider-fill]').css(this.options.vertical ? 'height' : 'width', 0);\n if (this.options.disabled || this.$element.hasClass(this.options.disabledClass)) {\n this.options.disabled = true;\n this.$element.addClass(this.options.disabledClass);\n }\n if (!this.inputs.length) {\n this.inputs = jquery__WEBPACK_IMPORTED_MODULE_0___default()().add(this.$input);\n this.options.binding = true;\n }\n this._setInitAttr(0);\n if (this.handles[1]) {\n this.options.doubleSided = true;\n this.$handle2 = this.handles.eq(1);\n this.$input2 = this.inputs.length > 1 ? this.inputs.eq(1) : jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(this.$handle2.attr('aria-controls')));\n if (!this.inputs[1]) {\n this.inputs = this.inputs.add(this.$input2);\n }\n\n // this.$handle.triggerHandler('click.zf.slider');\n this._setInitAttr(1);\n }\n\n // Set handle positions\n this.setHandles();\n this._events();\n this.initialized = true;\n }\n }, {\n key: \"setHandles\",\n value: function setHandles() {\n var _this2 = this;\n if (this.handles[1]) {\n this._setHandlePos(this.$handle, this.inputs.eq(0).val(), function () {\n _this2._setHandlePos(_this2.$handle2, _this2.inputs.eq(1).val());\n });\n } else {\n this._setHandlePos(this.$handle, this.inputs.eq(0).val());\n }\n }\n }, {\n key: \"_reflow\",\n value: function _reflow() {\n this.setHandles();\n }\n /**\n * @function\n * @private\n * @param {Number} value - floating point (the value) to be transformed using to a relative position on the slider (the inverse of _value)\n */\n }, {\n key: \"_pctOfBar\",\n value: function _pctOfBar(value) {\n var pctOfBar = percent(value - this.options.start, this.options.end - this.options.start);\n switch (this.options.positionValueFunction) {\n case \"pow\":\n pctOfBar = this._logTransform(pctOfBar);\n break;\n case \"log\":\n pctOfBar = this._powTransform(pctOfBar);\n break;\n }\n return pctOfBar.toFixed(2);\n }\n\n /**\n * @function\n * @private\n * @param {Number} pctOfBar - floating point, the relative position of the slider (typically between 0-1) to be transformed to a value\n */\n }, {\n key: \"_value\",\n value: function _value(pctOfBar) {\n switch (this.options.positionValueFunction) {\n case \"pow\":\n pctOfBar = this._powTransform(pctOfBar);\n break;\n case \"log\":\n pctOfBar = this._logTransform(pctOfBar);\n break;\n }\n var value;\n if (this.options.vertical) {\n // linear interpolation which is working with negative values for start\n // https://math.stackexchange.com/a/1019084\n value = parseFloat(this.options.end) + pctOfBar * (this.options.start - this.options.end);\n } else {\n value = (this.options.end - this.options.start) * pctOfBar + parseFloat(this.options.start);\n }\n return value;\n }\n\n /**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the log function\n */\n }, {\n key: \"_logTransform\",\n value: function _logTransform(value) {\n return baseLog(this.options.nonLinearBase, value * (this.options.nonLinearBase - 1) + 1);\n }\n\n /**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the power function\n */\n }, {\n key: \"_powTransform\",\n value: function _powTransform(value) {\n return (Math.pow(this.options.nonLinearBase, value) - 1) / (this.options.nonLinearBase - 1);\n }\n\n /**\n * Sets the position of the selected handle and fill bar.\n * @function\n * @private\n * @param {jQuery} $hndl - the selected handle to move.\n * @param {Number} location - floating point between the start and end values of the slider bar.\n * @param {Function} cb - callback function to fire on completion.\n * @fires Slider#moved\n * @fires Slider#changed\n */\n }, {\n key: \"_setHandlePos\",\n value: function _setHandlePos($hndl, location, cb) {\n // don't move if the slider has been disabled since its initialization\n if (this.$element.hasClass(this.options.disabledClass)) {\n return;\n }\n //might need to alter that slightly for bars that will have odd number selections.\n location = parseFloat(location); //on input change events, convert string to number...grumble.\n\n // prevent slider from running out of bounds, if value exceeds the limits set through options, override the value to min/max\n if (location < this.options.start) {\n location = this.options.start;\n } else if (location > this.options.end) {\n location = this.options.end;\n }\n var isDbl = this.options.doubleSided;\n if (isDbl) {\n //this block is to prevent 2 handles from crossing eachother. Could/should be improved.\n if (this.handles.index($hndl) === 0) {\n var h2Val = parseFloat(this.$handle2.attr('aria-valuenow'));\n location = location >= h2Val ? h2Val - this.options.step : location;\n } else {\n var h1Val = parseFloat(this.$handle.attr('aria-valuenow'));\n location = location <= h1Val ? h1Val + this.options.step : location;\n }\n }\n var _this = this,\n vert = this.options.vertical,\n hOrW = vert ? 'height' : 'width',\n lOrT = vert ? 'top' : 'left',\n handleDim = $hndl[0].getBoundingClientRect()[hOrW],\n elemDim = this.$element[0].getBoundingClientRect()[hOrW],\n //percentage of bar min/max value based on click or drag point\n pctOfBar = this._pctOfBar(location),\n //number of actual pixels to shift the handle, based on the percentage obtained above\n pxToMove = (elemDim - handleDim) * pctOfBar,\n //percentage of bar to shift the handle\n movement = (percent(pxToMove, elemDim) * 100).toFixed(this.options.decimal);\n //fixing the decimal value for the location number, is passed to other methods as a fixed floating-point value\n location = parseFloat(location.toFixed(this.options.decimal));\n // declare empty object for css adjustments, only used with 2 handled-sliders\n var css = {};\n this._setValues($hndl, location);\n\n // TODO update to calculate based on values set to respective inputs??\n if (isDbl) {\n var isLeftHndl = this.handles.index($hndl) === 0,\n //empty variable, will be used for min-height/width for fill bar\n dim,\n //percentage w/h of the handle compared to the slider bar\n handlePct = Math.floor(percent(handleDim, elemDim) * 100);\n //if left handle, the math is slightly different than if it's the right handle, and the left/top property needs to be changed for the fill bar\n if (isLeftHndl) {\n //left or top percentage value to apply to the fill bar.\n css[lOrT] = \"\".concat(movement, \"%\");\n //calculate the new min-height/width for the fill bar.\n dim = parseFloat(this.$handle2[0].style[lOrT]) - movement + handlePct;\n //this callback is necessary to prevent errors and allow the proper placement and initialization of a 2-handled slider\n //plus, it means we don't care if 'dim' isNaN on init, it won't be in the future.\n if (cb && typeof cb === 'function') {\n cb();\n } //this is only needed for the initialization of 2 handled sliders\n } else {\n //just caching the value of the left/bottom handle's left/top property\n var handlePos = parseFloat(this.$handle[0].style[lOrT]);\n //calculate the new min-height/width for the fill bar. Use isNaN to prevent false positives for numbers <= 0\n //based on the percentage of movement of the handle being manipulated, less the opposing handle's left/top position, plus the percentage w/h of the handle itself\n dim = movement - (isNaN(handlePos) ? (this.options.initialStart - this.options.start) / ((this.options.end - this.options.start) / 100) : handlePos) + handlePct;\n }\n // assign the min-height/width to our css object\n css[\"min-\".concat(hOrW)] = \"\".concat(dim, \"%\");\n }\n\n //because we don't know exactly how the handle will be moved, check the amount of time it should take to move.\n var moveTime = this.$element.data('dragging') ? 1000 / 60 : this.options.moveTime;\n (0,_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__.Move)(moveTime, $hndl, function () {\n // adjusting the left/top property of the handle, based on the percentage calculated above\n // if movement isNaN, that is because the slider is hidden and we cannot determine handle width,\n // fall back to next best guess.\n if (isNaN(movement)) {\n $hndl.css(lOrT, \"\".concat(pctOfBar * 100, \"%\"));\n } else {\n $hndl.css(lOrT, \"\".concat(movement, \"%\"));\n }\n if (!_this.options.doubleSided) {\n //if single-handled, a simple method to expand the fill bar\n _this.$fill.css(hOrW, \"\".concat(pctOfBar * 100, \"%\"));\n } else {\n //otherwise, use the css object we created above\n _this.$fill.css(css);\n }\n });\n if (this.initialized) {\n this.$element.one('finished.zf.animate', function () {\n /**\n * Fires when the handle is done moving.\n * @event Slider#moved\n */\n _this.$element.trigger('moved.zf.slider', [$hndl]);\n });\n /**\n * Fires when the value has not been change for a given time.\n * @event Slider#changed\n */\n clearTimeout(_this.timeout);\n _this.timeout = setTimeout(function () {\n _this.$element.trigger('changed.zf.slider', [$hndl]);\n }, _this.options.changedDelay);\n }\n }\n\n /**\n * Sets the initial attribute for the slider element.\n * @function\n * @private\n * @param {Number} idx - index of the current handle/input to use.\n */\n }, {\n key: \"_setInitAttr\",\n value: function _setInitAttr(idx) {\n var initVal = idx === 0 ? this.options.initialStart : this.options.initialEnd;\n var id = this.inputs.eq(idx).attr('id') || (0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.GetYoDigits)(6, 'slider');\n this.inputs.eq(idx).attr({\n 'id': id,\n 'max': this.options.end,\n 'min': this.options.start,\n 'step': this.options.step\n });\n this.inputs.eq(idx).val(initVal);\n this.handles.eq(idx).attr({\n 'role': 'slider',\n 'aria-controls': id,\n 'aria-valuemax': this.options.end,\n 'aria-valuemin': this.options.start,\n 'aria-valuenow': initVal,\n 'aria-orientation': this.options.vertical ? 'vertical' : 'horizontal',\n 'tabindex': 0\n });\n }\n\n /**\n * Sets the input and `aria-valuenow` values for the slider element.\n * @function\n * @private\n * @param {jQuery} $handle - the currently selected handle.\n * @param {Number} val - floating point of the new value.\n */\n }, {\n key: \"_setValues\",\n value: function _setValues($handle, val) {\n var idx = this.options.doubleSided ? this.handles.index($handle) : 0;\n this.inputs.eq(idx).val(val);\n $handle.attr('aria-valuenow', val);\n }\n\n /**\n * Handles events on the slider element.\n * Calculates the new location of the current handle.\n * If there are two handles and the bar was clicked, it determines which handle to move.\n * @function\n * @private\n * @param {Object} e - the `event` object passed from the listener.\n * @param {jQuery} $handle - the current handle to calculate for, if selected.\n * @param {Number} val - floating point number for the new value of the slider.\n * TODO clean this up, there's a lot of repeated code between this and the _setHandlePos fn.\n */\n }, {\n key: \"_handleEvent\",\n value: function _handleEvent(e, $handle, val) {\n var value;\n if (!val) {\n //click or drag events\n e.preventDefault();\n var _this = this,\n vertical = this.options.vertical,\n param = vertical ? 'height' : 'width',\n direction = vertical ? 'top' : 'left',\n eventOffset = vertical ? e.pageY : e.pageX,\n barDim = this.$element[0].getBoundingClientRect()[param],\n windowScroll = vertical ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop() : jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollLeft();\n var elemOffset = this.$element.offset()[direction];\n\n // touch events emulated by the touch util give position relative to screen, add window.scroll to event coordinates...\n // best way to guess this is simulated is if clientY == pageY\n if (e.clientY === e.pageY) {\n eventOffset = eventOffset + windowScroll;\n }\n var eventFromBar = eventOffset - elemOffset;\n var barXY;\n if (eventFromBar < 0) {\n barXY = 0;\n } else if (eventFromBar > barDim) {\n barXY = barDim;\n } else {\n barXY = eventFromBar;\n }\n var offsetPct = percent(barXY, barDim);\n value = this._value(offsetPct);\n\n // turn everything around for RTL, yay math!\n if ((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.rtl)() && !this.options.vertical) {\n value = this.options.end - value;\n }\n value = _this._adjustValue(null, value);\n if (!$handle) {\n //figure out which handle it is, pass it to the next function.\n var firstHndlPos = absPosition(this.$handle, direction, barXY, param),\n secndHndlPos = absPosition(this.$handle2, direction, barXY, param);\n $handle = firstHndlPos <= secndHndlPos ? this.$handle : this.$handle2;\n }\n } else {\n //change event on input\n value = this._adjustValue(null, val);\n }\n this._setHandlePos($handle, value);\n }\n\n /**\n * Adjustes value for handle in regard to step value. returns adjusted value\n * @function\n * @private\n * @param {jQuery} $handle - the selected handle.\n * @param {Number} value - value to adjust. used if $handle is falsy\n */\n }, {\n key: \"_adjustValue\",\n value: function _adjustValue($handle, value) {\n var val,\n step = this.options.step,\n div = parseFloat(step / 2),\n left,\n previousVal,\n nextVal;\n if (!!$handle) {\n val = parseFloat($handle.attr('aria-valuenow'));\n } else {\n val = value;\n }\n if (val >= 0) {\n left = val % step;\n } else {\n left = step + val % step;\n }\n previousVal = val - left;\n nextVal = previousVal + step;\n if (left === 0) {\n return val;\n }\n val = val >= previousVal + div ? nextVal : previousVal;\n return val;\n }\n\n /**\n * Adds event listeners to the slider elements.\n * @function\n * @private\n */\n }, {\n key: \"_events\",\n value: function _events() {\n this._eventsForHandle(this.$handle);\n if (this.handles[1]) {\n this._eventsForHandle(this.$handle2);\n }\n }\n\n /**\n * Adds event listeners a particular handle\n * @function\n * @private\n * @param {jQuery} $handle - the current handle to apply listeners to.\n */\n }, {\n key: \"_eventsForHandle\",\n value: function _eventsForHandle($handle) {\n var _this = this,\n curHandle;\n var handleChangeEvent = function handleChangeEvent(e) {\n var idx = _this.inputs.index(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n _this._handleEvent(e, _this.handles.eq(idx), jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).val());\n };\n\n // IE only triggers the change event when the input loses focus which strictly follows the HTML specification\n // listen for the enter key and trigger a change\n // @see https://html.spec.whatwg.org/multipage/input.html#common-input-element-events\n this.inputs.off('keyup.zf.slider').on('keyup.zf.slider', function (e) {\n if (e.keyCode === 13) handleChangeEvent.call(this, e);\n });\n this.inputs.off('change.zf.slider').on('change.zf.slider', handleChangeEvent);\n if (this.options.clickSelect) {\n this.$element.off('click.zf.slider').on('click.zf.slider', function (e) {\n if (_this.$element.data('dragging')) {\n return false;\n }\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).is('[data-slider-handle]')) {\n if (_this.options.doubleSided) {\n _this._handleEvent(e);\n } else {\n _this._handleEvent(e, _this.$handle);\n }\n }\n });\n }\n if (this.options.draggable) {\n this.handles.addTouch();\n var $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()('body');\n $handle.off('mousedown.zf.slider').on('mousedown.zf.slider', function (e) {\n $handle.addClass('is-dragging');\n _this.$fill.addClass('is-dragging'); //\n _this.$element.data('dragging', true);\n curHandle = jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.currentTarget);\n $body.on('mousemove.zf.slider', function (ev) {\n ev.preventDefault();\n _this._handleEvent(ev, curHandle);\n }).on('mouseup.zf.slider', function (ev) {\n _this._handleEvent(ev, curHandle);\n $handle.removeClass('is-dragging');\n _this.$fill.removeClass('is-dragging');\n _this.$element.data('dragging', false);\n $body.off('mousemove.zf.slider mouseup.zf.slider');\n });\n })\n // prevent events triggered by touch\n .on('selectstart.zf.slider touchmove.zf.slider', function (e) {\n e.preventDefault();\n });\n }\n $handle.off('keydown.zf.slider').on('keydown.zf.slider', function (e) {\n var _$handle = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n idx = _this.options.doubleSided ? _this.handles.index(_$handle) : 0,\n oldValue = parseFloat($handle.attr('aria-valuenow')),\n newValue;\n\n // handle keyboard event with keyboard util\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard.handleKey(e, 'Slider', {\n decrease: function decrease() {\n newValue = oldValue - _this.options.step;\n },\n increase: function increase() {\n newValue = oldValue + _this.options.step;\n },\n decreaseFast: function decreaseFast() {\n newValue = oldValue - _this.options.step * 10;\n },\n increaseFast: function increaseFast() {\n newValue = oldValue + _this.options.step * 10;\n },\n min: function min() {\n newValue = _this.options.start;\n },\n max: function max() {\n newValue = _this.options.end;\n },\n handled: function handled() {\n // only set handle pos when event was handled specially\n e.preventDefault();\n _this._setHandlePos(_$handle, newValue);\n }\n });\n /*if (newValue) { // if pressed key has special function, update value\n e.preventDefault();\n _this._setHandlePos(_$handle, newValue);\n }*/\n });\n }\n\n /**\n * Destroys the slider plugin.\n */\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.handles.off('.zf.slider');\n this.inputs.off('.zf.slider');\n this.$element.off('.zf.slider');\n clearTimeout(this.timeout);\n }\n }]);\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.Plugin);\nSlider.defaults = {\n /**\n * Minimum value for the slider scale.\n * @option\n * @type {number}\n * @default 0\n */\n start: 0,\n /**\n * Maximum value for the slider scale.\n * @option\n * @type {number}\n * @default 100\n */\n end: 100,\n /**\n * Minimum value change per change event.\n * @option\n * @type {number}\n * @default 1\n */\n step: 1,\n /**\n * Value at which the handle/input *(left handle/first input)* should be set to on initialization.\n * @option\n * @type {number}\n * @default 0\n */\n initialStart: 0,\n /**\n * Value at which the right handle/second input should be set to on initialization.\n * @option\n * @type {number}\n * @default 100\n */\n initialEnd: 100,\n /**\n * Allows the input to be located outside the container and visible. Set to by the JS\n * @option\n * @type {boolean}\n * @default false\n */\n binding: false,\n /**\n * Allows the user to click/tap on the slider bar to select a value.\n * @option\n * @type {boolean}\n * @default true\n */\n clickSelect: true,\n /**\n * Set to true and use the `vertical` class to change alignment to vertical.\n * @option\n * @type {boolean}\n * @default false\n */\n vertical: false,\n /**\n * Allows the user to drag the slider handle(s) to select a value.\n * @option\n * @type {boolean}\n * @default true\n */\n draggable: true,\n /**\n * Disables the slider and prevents event listeners from being applied. Double checked by JS with `disabledClass`.\n * @option\n * @type {boolean}\n * @default false\n */\n disabled: false,\n /**\n * Allows the use of two handles. Double checked by the JS. Changes some logic handling.\n * @option\n * @type {boolean}\n * @default false\n */\n doubleSided: false,\n /**\n * Potential future feature.\n */\n // steps: 100,\n /**\n * Number of decimal places the plugin should go to for floating point precision.\n * @option\n * @type {number}\n * @default 2\n */\n decimal: 2,\n /**\n * Time delay for dragged elements.\n */\n // dragDelay: 0,\n /**\n * Time, in ms, to animate the movement of a slider handle if user clicks/taps on the bar. Needs to be manually set if updating the transition time in the Sass settings.\n * @option\n * @type {number}\n * @default 200\n */\n moveTime: 200,\n //update this if changing the transition time in the sass\n /**\n * Class applied to disabled sliders.\n * @option\n * @type {string}\n * @default 'disabled'\n */\n disabledClass: 'disabled',\n /**\n * Will invert the default layout for a vertical<span data-tooltip title=\"who would do this???\"> </span>slider.\n * @option\n * @type {boolean}\n * @default false\n */\n invertVertical: false,\n /**\n * Milliseconds before the `changed.zf-slider` event is triggered after value change.\n * @option\n * @type {number}\n * @default 500\n */\n changedDelay: 500,\n /**\n * Basevalue for non-linear sliders\n * @option\n * @type {number}\n * @default 5\n */\n nonLinearBase: 5,\n /**\n * Basevalue for non-linear sliders, possible values are: `'linear'`, `'pow'` & `'log'`. Pow and Log use the nonLinearBase setting.\n * @option\n * @type {string}\n * @default 'linear'\n */\n positionValueFunction: 'linear'\n};\nfunction percent(frac, num) {\n return frac / num;\n}\nfunction absPosition($handle, dir, clickPos, param) {\n return Math.abs($handle.position()[dir] + $handle[param]() / 2 - clickPos);\n}\nfunction baseLog(base, value) {\n return Math.log(value) / Math.log(base);\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.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/***/ \"./foundation.util.touch\":\n/*!****************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****************************************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;\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.slider.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 */ Slider: function() { return /* reexport safe */ _foundation_slider__WEBPACK_IMPORTED_MODULE_1__.Slider; }\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_slider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.slider */ \"./js/foundation.slider.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_slider__WEBPACK_IMPORTED_MODULE_1__.Slider, 'Slider');\n\n}();\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=foundation.slider.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_motion__","__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__","__webpack_modules__","./js/foundation.slider.js","__unused_webpack_module","__webpack_exports__","__webpack_require__","r","d","Slider","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__","_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","$element","extend","defaults","data","className","initialized","Touch","init","Triggers","_init","Keyboard","register","ltr","ARROW_RIGHT","ARROW_UP","ARROW_DOWN","ARROW_LEFT","SHIFT_ARROW_RIGHT","SHIFT_ARROW_UP","SHIFT_ARROW_DOWN","SHIFT_ARROW_LEFT","HOME","END","rtl","inputs","find","handles","$handle","eq","$input","concat","attr","$fill","css","vertical","disabled","hasClass","disabledClass","addClass","add","binding","_setInitAttr","doubleSided","$handle2","$input2","setHandles","_events","_this2","_setHandlePos","val","pctOfBar","percent","start","end","positionValueFunction","_logTransform","_powTransform","toFixed","parseFloat","base","nonLinearBase","Math","log","pow","$hndl","location","cb","_this","hOrW","lOrT","movement","handlePct","handlePos","dim","moveTime","isDbl","index","h2Val","step","h1Val","vert","handleDim","getBoundingClientRect","elemDim","_pctOfBar","decimal","_setValues","isLeftHndl","floor","style","isNaN","initialStart","Move","one","trigger","clearTimeout","timeout","setTimeout","changedDelay","idx","initVal","initialEnd","id","GetYoDigits","max","min","role","aria-controls","aria-valuemax","aria-valuemin","aria-valuenow","aria-orientation","tabindex","param","direction","eventOffset","barDim","elemOffset","_adjustValue","preventDefault","pageY","pageX","windowScroll","window","scrollTop","scrollLeft","offset","clientY","_value","barXY","eventFromBar","absPosition","div","left","previousVal","_eventsForHandle","handleChangeEvent","_handleEvent","curHandle","$body","off","on","keyCode","clickSelect","target","is","draggable","addTouch","currentTarget","ev","removeClass","newValue","_$handle","oldValue","handleKey","decrease","increase","decreaseFast","increaseFast","handled","Plugin","frac","num","dir","clickPos","abs","position","invertVertical","./js/foundation.util.triggers.js","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","triggers","el","type","split","forEach","MutationObserver","prefixes","Listeners","Basic","Global","Initializers","debounceGlobalListener","debounce","listener","timer","args","Array","slice","openListener","closeListener","toggleListener","closeableListener","animation","stopPropagation","Motion","animateOut","fadeOut","toggleFocusListener","triggerHandler","addOpenListener","$elem","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","resizeListener","$nodes","each","scrollListener","closeMeListener","pluginId","plugin","namespace","not","addClosemeListener","pluginName","yetiBoxes","plugNames","push","console","error","listeners","map","name","join","addResizeListener","addScrollListener","addMutationEventsListener","listeningElementsMutation","mutationRecordsList","$target","attributeName","pageYOffset","closest","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","document","addGlobalListeners","__","Foundation","onLoad","IHearYou","./foundation.core","./foundation.util.keyboard","./foundation.util.motion","./foundation.util.touch","jquery","__webpack_module_cache__","getter","__esModule","definition","get","obj","prop","hasOwnProperty","toStringTag","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_slider__WEBPACK_IMPORTED_MODULE_1__","moduleId","cachedModule","undefined"],"mappings":"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"}