foundation-rails 5.5.3.2 → 6.6.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (369) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +2 -2
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +17 -4
  5. data/Appraisals +19 -0
  6. data/Gemfile +5 -2
  7. data/Gemfile.lock +210 -0
  8. data/LICENSE.txt +1 -1
  9. data/README.md +64 -28
  10. data/Rakefile +30 -0
  11. data/app/views/foundation/rails/styleguide/show.html.erb +10 -13
  12. data/bower.json +3 -2
  13. data/foundation-rails.gemspec +12 -7
  14. data/gemfiles/rails_4.1.gemfile +10 -0
  15. data/gemfiles/rails_4.1.gemfile.lock +181 -0
  16. data/gemfiles/rails_4.2.gemfile +10 -0
  17. data/gemfiles/rails_4.2.gemfile.lock +181 -0
  18. data/gemfiles/rails_5.0.gemfile +10 -0
  19. data/gemfiles/rails_5.0.gemfile.lock +196 -0
  20. data/gemfiles/rails_5.1.gemfile +10 -0
  21. data/gemfiles/rails_5.1.gemfile.lock +196 -0
  22. data/gemfiles/rails_5.2.gemfile +10 -0
  23. data/gemfiles/rails_5.2.gemfile.lock +196 -0
  24. data/lib/foundation/rails/engine.rb +2 -3
  25. data/lib/foundation/rails/version.rb +1 -1
  26. data/lib/foundation-rails.rb +1 -0
  27. data/lib/generators/foundation/install_generator.rb +39 -27
  28. data/lib/generators/foundation/templates/_settings.scss +895 -0
  29. data/lib/generators/foundation/templates/application.html.erb +1 -2
  30. data/lib/generators/foundation/templates/application.html.haml +2 -4
  31. data/lib/generators/foundation/templates/application.html.slim +1 -3
  32. data/lib/generators/foundation/templates/browserslist +4 -0
  33. data/lib/generators/foundation/templates/foundation_and_overrides.scss +56 -0
  34. data/spec/features/generator_spec.rb +1 -1
  35. data/spec/support/helpers.rb +8 -2
  36. data/vendor/assets/_vendor/sassy-lists/stylesheets/functions/_contain.scss +31 -0
  37. data/vendor/assets/_vendor/sassy-lists/stylesheets/functions/_purge.scss +38 -0
  38. data/vendor/assets/_vendor/sassy-lists/stylesheets/functions/_remove.scss +31 -0
  39. data/vendor/assets/_vendor/sassy-lists/stylesheets/functions/_replace.scss +46 -0
  40. data/vendor/assets/_vendor/sassy-lists/stylesheets/functions/_to-list.scss +27 -0
  41. data/vendor/assets/_vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss +25 -0
  42. data/vendor/assets/_vendor/sassy-lists/stylesheets/helpers/_true.scss +13 -0
  43. data/vendor/assets/js/foundation.cjs.js +12529 -0
  44. data/vendor/assets/js/foundation.cjs.js.map +1 -0
  45. data/vendor/assets/js/foundation.es6.js +11006 -0
  46. data/vendor/assets/js/foundation.es6.js.map +1 -0
  47. data/vendor/assets/js/foundation.esm.js +12490 -0
  48. data/vendor/assets/js/foundation.esm.js.map +1 -0
  49. data/vendor/assets/js/foundation.js +13897 -0
  50. data/vendor/assets/js/foundation.js.map +1 -0
  51. data/vendor/assets/js/foundation.min.js +2 -0
  52. data/vendor/assets/js/foundation.min.js.map +1 -0
  53. data/vendor/assets/js/plugins/foundation.abide.js +1142 -0
  54. data/vendor/assets/js/plugins/foundation.abide.js.map +1 -0
  55. data/vendor/assets/js/plugins/foundation.abide.min.js +2 -0
  56. data/vendor/assets/js/plugins/foundation.abide.min.js.map +1 -0
  57. data/vendor/assets/js/plugins/foundation.accordion.js +661 -0
  58. data/vendor/assets/js/plugins/foundation.accordion.js.map +1 -0
  59. data/vendor/assets/js/plugins/foundation.accordion.min.js +2 -0
  60. data/vendor/assets/js/plugins/foundation.accordion.min.js.map +1 -0
  61. data/vendor/assets/js/plugins/foundation.accordionMenu.js +616 -0
  62. data/vendor/assets/js/plugins/foundation.accordionMenu.js.map +1 -0
  63. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js +2 -0
  64. data/vendor/assets/js/plugins/foundation.accordionMenu.min.js.map +1 -0
  65. data/vendor/assets/js/plugins/foundation.core.js +1180 -0
  66. data/vendor/assets/js/plugins/foundation.core.js.map +1 -0
  67. data/vendor/assets/js/plugins/foundation.core.min.js +2 -0
  68. data/vendor/assets/js/plugins/foundation.core.min.js.map +1 -0
  69. data/vendor/assets/js/plugins/foundation.drilldown.js +968 -0
  70. data/vendor/assets/js/plugins/foundation.drilldown.js.map +1 -0
  71. data/vendor/assets/js/plugins/foundation.drilldown.min.js +2 -0
  72. data/vendor/assets/js/plugins/foundation.drilldown.min.js.map +1 -0
  73. data/vendor/assets/js/plugins/foundation.dropdown.js +1328 -0
  74. data/vendor/assets/js/plugins/foundation.dropdown.js.map +1 -0
  75. data/vendor/assets/js/plugins/foundation.dropdown.min.js +2 -0
  76. data/vendor/assets/js/plugins/foundation.dropdown.min.js.map +1 -0
  77. data/vendor/assets/js/plugins/foundation.dropdownMenu.js +799 -0
  78. data/vendor/assets/js/plugins/foundation.dropdownMenu.js.map +1 -0
  79. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js +2 -0
  80. data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js.map +1 -0
  81. data/vendor/assets/js/plugins/foundation.equalizer.js +614 -0
  82. data/vendor/assets/js/plugins/foundation.equalizer.js.map +1 -0
  83. data/vendor/assets/js/plugins/foundation.equalizer.min.js +2 -0
  84. data/vendor/assets/js/plugins/foundation.equalizer.min.js.map +1 -0
  85. data/vendor/assets/js/plugins/foundation.interchange.js +796 -0
  86. data/vendor/assets/js/plugins/foundation.interchange.js.map +1 -0
  87. data/vendor/assets/js/plugins/foundation.interchange.min.js +2 -0
  88. data/vendor/assets/js/plugins/foundation.interchange.min.js.map +1 -0
  89. data/vendor/assets/js/plugins/foundation.magellan.js +850 -0
  90. data/vendor/assets/js/plugins/foundation.magellan.js.map +1 -0
  91. data/vendor/assets/js/plugins/foundation.magellan.min.js +2 -0
  92. data/vendor/assets/js/plugins/foundation.magellan.min.js.map +1 -0
  93. data/vendor/assets/js/plugins/foundation.offcanvas.js +1318 -0
  94. data/vendor/assets/js/plugins/foundation.offcanvas.js.map +1 -0
  95. data/vendor/assets/js/plugins/foundation.offcanvas.min.js +2 -0
  96. data/vendor/assets/js/plugins/foundation.offcanvas.min.js.map +1 -0
  97. data/vendor/assets/js/plugins/foundation.orbit.js +886 -0
  98. data/vendor/assets/js/plugins/foundation.orbit.js.map +1 -0
  99. data/vendor/assets/js/plugins/foundation.orbit.min.js +2 -0
  100. data/vendor/assets/js/plugins/foundation.orbit.min.js.map +1 -0
  101. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js +585 -0
  102. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js.map +1 -0
  103. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js +2 -0
  104. data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js.map +1 -0
  105. data/vendor/assets/js/plugins/foundation.responsiveMenu.js +413 -0
  106. data/vendor/assets/js/plugins/foundation.responsiveMenu.js.map +1 -0
  107. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js +2 -0
  108. data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js.map +1 -0
  109. data/vendor/assets/js/plugins/foundation.responsiveToggle.js +394 -0
  110. data/vendor/assets/js/plugins/foundation.responsiveToggle.js.map +1 -0
  111. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js +2 -0
  112. data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js.map +1 -0
  113. data/vendor/assets/js/plugins/foundation.reveal.js +1275 -0
  114. data/vendor/assets/js/plugins/foundation.reveal.js.map +1 -0
  115. data/vendor/assets/js/plugins/foundation.reveal.min.js +2 -0
  116. data/vendor/assets/js/plugins/foundation.reveal.min.js.map +1 -0
  117. data/vendor/assets/js/plugins/foundation.slider.js +1346 -0
  118. data/vendor/assets/js/plugins/foundation.slider.js.map +1 -0
  119. data/vendor/assets/js/plugins/foundation.slider.min.js +2 -0
  120. data/vendor/assets/js/plugins/foundation.slider.min.js.map +1 -0
  121. data/vendor/assets/js/plugins/foundation.smoothScroll.js +359 -0
  122. data/vendor/assets/js/plugins/foundation.smoothScroll.js.map +1 -0
  123. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js +2 -0
  124. data/vendor/assets/js/plugins/foundation.smoothScroll.min.js.map +1 -0
  125. data/vendor/assets/js/plugins/foundation.sticky.js +1105 -0
  126. data/vendor/assets/js/plugins/foundation.sticky.js.map +1 -0
  127. data/vendor/assets/js/plugins/foundation.sticky.min.js +2 -0
  128. data/vendor/assets/js/plugins/foundation.sticky.min.js.map +1 -0
  129. data/vendor/assets/js/plugins/foundation.tabs.js +792 -0
  130. data/vendor/assets/js/plugins/foundation.tabs.js.map +1 -0
  131. data/vendor/assets/js/plugins/foundation.tabs.min.js +2 -0
  132. data/vendor/assets/js/plugins/foundation.tabs.min.js.map +1 -0
  133. data/vendor/assets/js/plugins/foundation.toggler.js +704 -0
  134. data/vendor/assets/js/plugins/foundation.toggler.js.map +1 -0
  135. data/vendor/assets/js/plugins/foundation.toggler.min.js +2 -0
  136. data/vendor/assets/js/plugins/foundation.toggler.min.js.map +1 -0
  137. data/vendor/assets/js/plugins/foundation.tooltip.js +1333 -0
  138. data/vendor/assets/js/plugins/foundation.tooltip.js.map +1 -0
  139. data/vendor/assets/js/plugins/foundation.tooltip.min.js +2 -0
  140. data/vendor/assets/js/plugins/foundation.tooltip.min.js.map +1 -0
  141. data/vendor/assets/js/plugins/foundation.util.box.js +354 -0
  142. data/vendor/assets/js/plugins/foundation.util.box.js.map +1 -0
  143. data/vendor/assets/js/plugins/foundation.util.box.min.js +2 -0
  144. data/vendor/assets/js/plugins/foundation.util.box.min.js.map +1 -0
  145. data/vendor/assets/js/plugins/foundation.util.imageLoader.js +218 -0
  146. data/vendor/assets/js/plugins/foundation.util.imageLoader.js.map +1 -0
  147. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js +2 -0
  148. data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js.map +1 -0
  149. data/vendor/assets/js/plugins/foundation.util.keyboard.js +341 -0
  150. data/vendor/assets/js/plugins/foundation.util.keyboard.js.map +1 -0
  151. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js +2 -0
  152. data/vendor/assets/js/plugins/foundation.util.keyboard.min.js.map +1 -0
  153. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js +509 -0
  154. data/vendor/assets/js/plugins/foundation.util.mediaQuery.js.map +1 -0
  155. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js +2 -0
  156. data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js.map +1 -0
  157. data/vendor/assets/js/plugins/foundation.util.motion.js +274 -0
  158. data/vendor/assets/js/plugins/foundation.util.motion.js.map +1 -0
  159. data/vendor/assets/js/plugins/foundation.util.motion.min.js +2 -0
  160. data/vendor/assets/js/plugins/foundation.util.motion.min.js.map +1 -0
  161. data/vendor/assets/js/plugins/foundation.util.nest.js +240 -0
  162. data/vendor/assets/js/plugins/foundation.util.nest.js.map +1 -0
  163. data/vendor/assets/js/plugins/foundation.util.nest.min.js +2 -0
  164. data/vendor/assets/js/plugins/foundation.util.nest.min.js.map +1 -0
  165. data/vendor/assets/js/plugins/foundation.util.timer.js +226 -0
  166. data/vendor/assets/js/plugins/foundation.util.timer.js.map +1 -0
  167. data/vendor/assets/js/plugins/foundation.util.timer.min.js +2 -0
  168. data/vendor/assets/js/plugins/foundation.util.timer.min.js.map +1 -0
  169. data/vendor/assets/js/plugins/foundation.util.touch.js +365 -0
  170. data/vendor/assets/js/plugins/foundation.util.touch.js.map +1 -0
  171. data/vendor/assets/js/plugins/foundation.util.touch.min.js +2 -0
  172. data/vendor/assets/js/plugins/foundation.util.touch.min.js.map +1 -0
  173. data/vendor/assets/js/plugins/foundation.util.triggers.js +470 -0
  174. data/vendor/assets/js/plugins/foundation.util.triggers.js.map +1 -0
  175. data/vendor/assets/js/plugins/foundation.util.triggers.min.js +2 -0
  176. data/vendor/assets/js/plugins/foundation.util.triggers.min.js.map +1 -0
  177. data/vendor/assets/scss/_global.scss +244 -0
  178. data/vendor/assets/scss/components/_accordion-menu.scss +174 -0
  179. data/vendor/assets/scss/components/_accordion.scss +164 -0
  180. data/vendor/assets/scss/components/_badge.scss +63 -0
  181. data/vendor/assets/scss/components/_breadcrumbs.scss +119 -0
  182. data/vendor/assets/scss/components/_button-group.scss +304 -0
  183. data/vendor/assets/scss/components/_button.scss +428 -0
  184. data/vendor/assets/scss/components/_callout.scss +108 -0
  185. data/vendor/assets/scss/components/_card.scss +129 -0
  186. data/vendor/assets/scss/components/_close-button.scss +127 -0
  187. data/vendor/assets/scss/components/_drilldown.scss +140 -0
  188. data/vendor/assets/scss/components/_dropdown-menu.scss +279 -0
  189. data/vendor/assets/scss/components/_dropdown.scss +82 -0
  190. data/vendor/assets/scss/components/_flex-video.scss +1 -0
  191. data/vendor/assets/scss/components/_flex.scss +119 -0
  192. data/vendor/assets/scss/components/_float.scss +27 -0
  193. data/vendor/assets/scss/components/_label.scss +64 -0
  194. data/vendor/assets/scss/components/_media-object.scss +114 -0
  195. data/vendor/assets/scss/components/_menu-icon.scss +9 -0
  196. data/vendor/assets/scss/components/_menu.scss +495 -0
  197. data/vendor/assets/scss/components/_off-canvas.scss +511 -0
  198. data/vendor/assets/scss/components/_orbit.scss +197 -0
  199. data/vendor/assets/scss/components/_pagination.scss +201 -0
  200. data/vendor/assets/scss/components/_progress-bar.scss +63 -0
  201. data/vendor/assets/scss/components/_responsive-embed.scss +57 -0
  202. data/vendor/assets/scss/components/_reveal.scss +185 -0
  203. data/vendor/assets/scss/components/_slider.scss +137 -0
  204. data/vendor/assets/scss/components/_sticky.scss +39 -0
  205. data/vendor/assets/scss/components/_switch.scss +261 -0
  206. data/vendor/assets/scss/components/_table.scss +328 -0
  207. data/vendor/assets/scss/components/_tabs.scss +193 -0
  208. data/vendor/assets/scss/components/_thumbnail.scss +67 -0
  209. data/vendor/assets/scss/components/_title-bar.scss +84 -0
  210. data/vendor/assets/scss/components/_tooltip.scss +160 -0
  211. data/vendor/assets/scss/components/_top-bar.scss +175 -0
  212. data/vendor/assets/scss/components/_visibility.scss +135 -0
  213. data/vendor/assets/scss/forms/_checkbox.scss +41 -0
  214. data/vendor/assets/scss/forms/_error.scss +89 -0
  215. data/vendor/assets/scss/forms/_fieldset.scss +53 -0
  216. data/vendor/assets/scss/forms/_forms.scss +34 -0
  217. data/vendor/assets/scss/forms/_help-text.scss +30 -0
  218. data/vendor/assets/scss/forms/_input-group.scss +142 -0
  219. data/vendor/assets/scss/forms/_label.scss +50 -0
  220. data/vendor/assets/scss/forms/_meter.scss +116 -0
  221. data/vendor/assets/scss/forms/_progress.scss +94 -0
  222. data/vendor/assets/scss/forms/_range.scss +149 -0
  223. data/vendor/assets/scss/forms/_select.scss +90 -0
  224. data/vendor/assets/scss/forms/_text.scss +179 -0
  225. data/vendor/assets/scss/foundation.scss +155 -0
  226. data/vendor/assets/scss/grid/_classes.scss +189 -0
  227. data/vendor/assets/scss/grid/_column.scss +78 -0
  228. data/vendor/assets/scss/grid/_flex-grid.scss +260 -0
  229. data/vendor/assets/scss/grid/_grid.scss +48 -0
  230. data/vendor/assets/scss/grid/_gutter.scss +67 -0
  231. data/vendor/assets/scss/grid/_layout.scss +76 -0
  232. data/vendor/assets/scss/grid/_position.scss +100 -0
  233. data/vendor/assets/scss/grid/_row.scss +99 -0
  234. data/vendor/assets/scss/grid/_size.scss +24 -0
  235. data/vendor/assets/scss/motion-ui/_classes.scss +109 -0
  236. data/vendor/assets/scss/motion-ui/_settings.scss +62 -0
  237. data/vendor/assets/scss/motion-ui/effects/_fade.scss +29 -0
  238. data/vendor/assets/scss/motion-ui/effects/_hinge.scss +66 -0
  239. data/vendor/assets/scss/motion-ui/effects/_shake.scss +15 -0
  240. data/vendor/assets/scss/motion-ui/effects/_slide.scss +42 -0
  241. data/vendor/assets/scss/motion-ui/effects/_spin.scss +29 -0
  242. data/vendor/assets/scss/motion-ui/effects/_wiggle.scss +13 -0
  243. data/vendor/assets/scss/motion-ui/effects/_zoom.scss +15 -0
  244. data/vendor/assets/scss/motion-ui/motion-ui.scss +31 -0
  245. data/vendor/assets/scss/motion-ui/transitions/_fade.scss +30 -0
  246. data/vendor/assets/scss/motion-ui/transitions/_hinge.scss +44 -0
  247. data/vendor/assets/scss/motion-ui/transitions/_slide.scss +43 -0
  248. data/vendor/assets/scss/motion-ui/transitions/_spin.scss +40 -0
  249. data/vendor/assets/scss/motion-ui/transitions/_zoom.scss +41 -0
  250. data/vendor/assets/scss/motion-ui/util/_animation.scss +7 -0
  251. data/vendor/assets/scss/motion-ui/util/_args.scss +15 -0
  252. data/vendor/assets/scss/motion-ui/util/_function.scss +94 -0
  253. data/vendor/assets/scss/motion-ui/util/_keyframe.scss +136 -0
  254. data/vendor/assets/scss/motion-ui/util/_selector.scss +23 -0
  255. data/vendor/assets/scss/motion-ui/util/_series.scss +57 -0
  256. data/vendor/assets/scss/motion-ui/util/_string.scss +36 -0
  257. data/vendor/assets/scss/motion-ui/util/_transition.scss +45 -0
  258. data/vendor/assets/scss/motion-ui/util/_unit.scss +7 -0
  259. data/vendor/assets/scss/prototype/_arrow.scss +36 -0
  260. data/vendor/assets/scss/prototype/_border-box.scss +35 -0
  261. data/vendor/assets/scss/prototype/_border-none.scss +35 -0
  262. data/vendor/assets/scss/prototype/_bordered.scss +54 -0
  263. data/vendor/assets/scss/prototype/_box.scss +23 -0
  264. data/vendor/assets/scss/prototype/_display.scss +50 -0
  265. data/vendor/assets/scss/prototype/_font-styling.scss +95 -0
  266. data/vendor/assets/scss/prototype/_list-style-type.scss +95 -0
  267. data/vendor/assets/scss/prototype/_overflow.scss +72 -0
  268. data/vendor/assets/scss/prototype/_position.scss +114 -0
  269. data/vendor/assets/scss/prototype/_prototype.scss +87 -0
  270. data/vendor/assets/scss/prototype/_relation.scss +157 -0
  271. data/vendor/assets/scss/prototype/_rotate.scss +31 -0
  272. data/vendor/assets/scss/prototype/_rounded.scss +61 -0
  273. data/vendor/assets/scss/prototype/_separator.scss +96 -0
  274. data/vendor/assets/scss/prototype/_shadow.scss +43 -0
  275. data/vendor/assets/scss/prototype/_sizing.scss +73 -0
  276. data/vendor/assets/scss/prototype/_spacing.scss +179 -0
  277. data/vendor/assets/scss/prototype/_text-decoration.scss +48 -0
  278. data/vendor/assets/scss/prototype/_text-transformation.scss +48 -0
  279. data/vendor/assets/scss/prototype/_text-utilities.scss +88 -0
  280. data/vendor/assets/scss/settings/_settings.scss +895 -0
  281. data/vendor/assets/scss/typography/_alignment.scss +22 -0
  282. data/vendor/assets/scss/typography/_base.scss +474 -0
  283. data/vendor/assets/scss/typography/_helpers.scss +180 -0
  284. data/vendor/assets/scss/typography/_print.scss +96 -0
  285. data/vendor/assets/scss/typography/_typography.scss +26 -0
  286. data/vendor/assets/scss/util/_breakpoint.scss +435 -0
  287. data/vendor/assets/scss/util/_color.scss +139 -0
  288. data/vendor/assets/scss/util/_direction.scss +31 -0
  289. data/vendor/assets/scss/util/_flex.scss +90 -0
  290. data/vendor/assets/scss/util/_math.scss +147 -0
  291. data/vendor/assets/scss/util/_mixins.scss +373 -0
  292. data/vendor/assets/scss/util/_selector.scss +41 -0
  293. data/vendor/assets/scss/util/_typography.scss +26 -0
  294. data/vendor/assets/scss/util/_unit.scss +152 -0
  295. data/vendor/assets/scss/util/_util.scss +14 -0
  296. data/vendor/assets/scss/util/_value.scss +200 -0
  297. data/vendor/assets/scss/vendor/normalize.scss +281 -0
  298. data/vendor/assets/scss/xy-grid/_cell.scss +272 -0
  299. data/vendor/assets/scss/xy-grid/_classes.scss +493 -0
  300. data/vendor/assets/scss/xy-grid/_collapse.scss +75 -0
  301. data/vendor/assets/scss/xy-grid/_frame.scss +86 -0
  302. data/vendor/assets/scss/xy-grid/_grid.scss +37 -0
  303. data/vendor/assets/scss/xy-grid/_gutters.scss +45 -0
  304. data/vendor/assets/scss/xy-grid/_layout.scss +36 -0
  305. data/vendor/assets/scss/xy-grid/_position.scss +55 -0
  306. data/vendor/assets/scss/xy-grid/_xy-grid.scss +51 -0
  307. metadata +342 -83
  308. data/update-gem.sh +0 -20
  309. data/vendor/assets/javascripts/foundation/foundation.abide.js +0 -426
  310. data/vendor/assets/javascripts/foundation/foundation.accordion.js +0 -125
  311. data/vendor/assets/javascripts/foundation/foundation.alert.js +0 -43
  312. data/vendor/assets/javascripts/foundation/foundation.clearing.js +0 -586
  313. data/vendor/assets/javascripts/foundation/foundation.dropdown.js +0 -468
  314. data/vendor/assets/javascripts/foundation/foundation.equalizer.js +0 -104
  315. data/vendor/assets/javascripts/foundation/foundation.interchange.js +0 -360
  316. data/vendor/assets/javascripts/foundation/foundation.joyride.js +0 -935
  317. data/vendor/assets/javascripts/foundation/foundation.js +0 -732
  318. data/vendor/assets/javascripts/foundation/foundation.magellan.js +0 -214
  319. data/vendor/assets/javascripts/foundation/foundation.offcanvas.js +0 -225
  320. data/vendor/assets/javascripts/foundation/foundation.orbit.js +0 -476
  321. data/vendor/assets/javascripts/foundation/foundation.reveal.js +0 -522
  322. data/vendor/assets/javascripts/foundation/foundation.slider.js +0 -296
  323. data/vendor/assets/javascripts/foundation/foundation.tab.js +0 -247
  324. data/vendor/assets/javascripts/foundation/foundation.tooltip.js +0 -348
  325. data/vendor/assets/javascripts/foundation/foundation.topbar.js +0 -458
  326. data/vendor/assets/javascripts/foundation.js +0 -17
  327. data/vendor/assets/javascripts/vendor/modernizr.js +0 -1406
  328. data/vendor/assets/stylesheets/foundation/_functions.scss +0 -156
  329. data/vendor/assets/stylesheets/foundation/_settings.scss +0 -1489
  330. data/vendor/assets/stylesheets/foundation/components/_accordion.scss +0 -161
  331. data/vendor/assets/stylesheets/foundation/components/_alert-boxes.scss +0 -128
  332. data/vendor/assets/stylesheets/foundation/components/_block-grid.scss +0 -133
  333. data/vendor/assets/stylesheets/foundation/components/_breadcrumbs.scss +0 -132
  334. data/vendor/assets/stylesheets/foundation/components/_button-groups.scss +0 -208
  335. data/vendor/assets/stylesheets/foundation/components/_buttons.scss +0 -261
  336. data/vendor/assets/stylesheets/foundation/components/_clearing.scss +0 -260
  337. data/vendor/assets/stylesheets/foundation/components/_dropdown-buttons.scss +0 -130
  338. data/vendor/assets/stylesheets/foundation/components/_dropdown.scss +0 -269
  339. data/vendor/assets/stylesheets/foundation/components/_flex-video.scss +0 -51
  340. data/vendor/assets/stylesheets/foundation/components/_forms.scss +0 -607
  341. data/vendor/assets/stylesheets/foundation/components/_global.scss +0 -566
  342. data/vendor/assets/stylesheets/foundation/components/_grid.scss +0 -292
  343. data/vendor/assets/stylesheets/foundation/components/_icon-bar.scss +0 -460
  344. data/vendor/assets/stylesheets/foundation/components/_inline-lists.scss +0 -58
  345. data/vendor/assets/stylesheets/foundation/components/_joyride.scss +0 -220
  346. data/vendor/assets/stylesheets/foundation/components/_keystrokes.scss +0 -60
  347. data/vendor/assets/stylesheets/foundation/components/_labels.scss +0 -106
  348. data/vendor/assets/stylesheets/foundation/components/_magellan.scss +0 -34
  349. data/vendor/assets/stylesheets/foundation/components/_offcanvas.scss +0 -606
  350. data/vendor/assets/stylesheets/foundation/components/_orbit.scss +0 -388
  351. data/vendor/assets/stylesheets/foundation/components/_pagination.scss +0 -163
  352. data/vendor/assets/stylesheets/foundation/components/_panels.scss +0 -107
  353. data/vendor/assets/stylesheets/foundation/components/_pricing-tables.scss +0 -150
  354. data/vendor/assets/stylesheets/foundation/components/_progress-bars.scss +0 -85
  355. data/vendor/assets/stylesheets/foundation/components/_range-slider.scss +0 -177
  356. data/vendor/assets/stylesheets/foundation/components/_reveal.scss +0 -212
  357. data/vendor/assets/stylesheets/foundation/components/_side-nav.scss +0 -120
  358. data/vendor/assets/stylesheets/foundation/components/_split-buttons.scss +0 -203
  359. data/vendor/assets/stylesheets/foundation/components/_sub-nav.scss +0 -125
  360. data/vendor/assets/stylesheets/foundation/components/_switches.scss +0 -241
  361. data/vendor/assets/stylesheets/foundation/components/_tables.scss +0 -135
  362. data/vendor/assets/stylesheets/foundation/components/_tabs.scss +0 -142
  363. data/vendor/assets/stylesheets/foundation/components/_thumbs.scss +0 -66
  364. data/vendor/assets/stylesheets/foundation/components/_tooltips.scss +0 -142
  365. data/vendor/assets/stylesheets/foundation/components/_top-bar.scss +0 -745
  366. data/vendor/assets/stylesheets/foundation/components/_type.scss +0 -525
  367. data/vendor/assets/stylesheets/foundation/components/_visibility.scss +0 -425
  368. data/vendor/assets/stylesheets/foundation.scss +0 -42
  369. data/vendor/assets/stylesheets/normalize.scss +0 -424
@@ -0,0 +1,1346 @@
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if(typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory(require("./foundation.core"), require("./foundation.util.keyboard"), require("./foundation.util.motion"), require("./foundation.util.touch"), require("jquery"));
4
+ else if(typeof define === 'function' && define.amd)
5
+ define(["./foundation.core", "./foundation.util.keyboard", "./foundation.util.motion", "./foundation.util.touch", "jquery"], factory);
6
+ else if(typeof exports === 'object')
7
+ exports["foundation.slider"] = factory(require("./foundation.core"), require("./foundation.util.keyboard"), require("./foundation.util.motion"), require("./foundation.util.touch"), require("jquery"));
8
+ else
9
+ root["__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"]);
10
+ })(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__) {
11
+ return /******/ (function(modules) { // webpackBootstrap
12
+ /******/ // The module cache
13
+ /******/ var installedModules = {};
14
+ /******/
15
+ /******/ // The require function
16
+ /******/ function __webpack_require__(moduleId) {
17
+ /******/
18
+ /******/ // Check if module is in cache
19
+ /******/ if(installedModules[moduleId]) {
20
+ /******/ return installedModules[moduleId].exports;
21
+ /******/ }
22
+ /******/ // Create a new module (and put it into the cache)
23
+ /******/ var module = installedModules[moduleId] = {
24
+ /******/ i: moduleId,
25
+ /******/ l: false,
26
+ /******/ exports: {}
27
+ /******/ };
28
+ /******/
29
+ /******/ // Execute the module function
30
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
31
+ /******/
32
+ /******/ // Flag the module as loaded
33
+ /******/ module.l = true;
34
+ /******/
35
+ /******/ // Return the exports of the module
36
+ /******/ return module.exports;
37
+ /******/ }
38
+ /******/
39
+ /******/
40
+ /******/ // expose the modules object (__webpack_modules__)
41
+ /******/ __webpack_require__.m = modules;
42
+ /******/
43
+ /******/ // expose the module cache
44
+ /******/ __webpack_require__.c = installedModules;
45
+ /******/
46
+ /******/ // define getter function for harmony exports
47
+ /******/ __webpack_require__.d = function(exports, name, getter) {
48
+ /******/ if(!__webpack_require__.o(exports, name)) {
49
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
50
+ /******/ }
51
+ /******/ };
52
+ /******/
53
+ /******/ // define __esModule on exports
54
+ /******/ __webpack_require__.r = function(exports) {
55
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
56
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
57
+ /******/ }
58
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
59
+ /******/ };
60
+ /******/
61
+ /******/ // create a fake namespace object
62
+ /******/ // mode & 1: value is a module id, require it
63
+ /******/ // mode & 2: merge all properties of value into the ns
64
+ /******/ // mode & 4: return value when already ns object
65
+ /******/ // mode & 8|1: behave like require
66
+ /******/ __webpack_require__.t = function(value, mode) {
67
+ /******/ if(mode & 1) value = __webpack_require__(value);
68
+ /******/ if(mode & 8) return value;
69
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
70
+ /******/ var ns = Object.create(null);
71
+ /******/ __webpack_require__.r(ns);
72
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
73
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
74
+ /******/ return ns;
75
+ /******/ };
76
+ /******/
77
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
78
+ /******/ __webpack_require__.n = function(module) {
79
+ /******/ var getter = module && module.__esModule ?
80
+ /******/ function getDefault() { return module['default']; } :
81
+ /******/ function getModuleExports() { return module; };
82
+ /******/ __webpack_require__.d(getter, 'a', getter);
83
+ /******/ return getter;
84
+ /******/ };
85
+ /******/
86
+ /******/ // Object.prototype.hasOwnProperty.call
87
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
88
+ /******/
89
+ /******/ // __webpack_public_path__
90
+ /******/ __webpack_require__.p = "";
91
+ /******/
92
+ /******/
93
+ /******/ // Load entry module and return exports
94
+ /******/ return __webpack_require__(__webpack_require__.s = 15);
95
+ /******/ })
96
+ /************************************************************************/
97
+ /******/ ({
98
+
99
+ /***/ "./foundation.core":
100
+ /*!****************************************************************************************************************************************************************!*\
101
+ !*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.core"],"amd":"./foundation.core","commonjs":"./foundation.core","commonjs2":"./foundation.core"} ***!
102
+ \****************************************************************************************************************************************************************/
103
+ /*! no static exports found */
104
+ /***/ (function(module, exports) {
105
+
106
+ module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;
107
+
108
+ /***/ }),
109
+
110
+ /***/ "./foundation.util.keyboard":
111
+ /*!****************************************************************************************************************************************************************************************************!*\
112
+ !*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.keyboard"],"amd":"./foundation.util.keyboard","commonjs":"./foundation.util.keyboard","commonjs2":"./foundation.util.keyboard"} ***!
113
+ \****************************************************************************************************************************************************************************************************/
114
+ /*! no static exports found */
115
+ /***/ (function(module, exports) {
116
+
117
+ module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;
118
+
119
+ /***/ }),
120
+
121
+ /***/ "./foundation.util.motion":
122
+ /*!********************************************************************************************************************************************************************************************!*\
123
+ !*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.motion"],"amd":"./foundation.util.motion","commonjs":"./foundation.util.motion","commonjs2":"./foundation.util.motion"} ***!
124
+ \********************************************************************************************************************************************************************************************/
125
+ /*! no static exports found */
126
+ /***/ (function(module, exports) {
127
+
128
+ module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;
129
+
130
+ /***/ }),
131
+
132
+ /***/ "./foundation.util.touch":
133
+ /*!****************************************************************************************************************************************************************************************!*\
134
+ !*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.touch"],"amd":"./foundation.util.touch","commonjs":"./foundation.util.touch","commonjs2":"./foundation.util.touch"} ***!
135
+ \****************************************************************************************************************************************************************************************/
136
+ /*! no static exports found */
137
+ /***/ (function(module, exports) {
138
+
139
+ module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;
140
+
141
+ /***/ }),
142
+
143
+ /***/ "./js/entries/plugins/foundation.slider.js":
144
+ /*!*************************************************!*\
145
+ !*** ./js/entries/plugins/foundation.slider.js ***!
146
+ \*************************************************/
147
+ /*! exports provided: Foundation, Slider */
148
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
149
+
150
+ "use strict";
151
+ __webpack_require__.r(__webpack_exports__);
152
+ /* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ "./foundation.core");
153
+ /* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);
154
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Foundation", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"]; });
155
+
156
+ /* harmony import */ var _foundation_slider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.slider */ "./js/foundation.slider.js");
157
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Slider", function() { return _foundation_slider__WEBPACK_IMPORTED_MODULE_1__["Slider"]; });
158
+
159
+
160
+
161
+ _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"].plugin(_foundation_slider__WEBPACK_IMPORTED_MODULE_1__["Slider"], 'Slider');
162
+
163
+
164
+ /***/ }),
165
+
166
+ /***/ "./js/foundation.slider.js":
167
+ /*!*********************************!*\
168
+ !*** ./js/foundation.slider.js ***!
169
+ \*********************************/
170
+ /*! exports provided: Slider */
171
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
172
+
173
+ "use strict";
174
+ __webpack_require__.r(__webpack_exports__);
175
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Slider", function() { return Slider; });
176
+ /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
177
+ /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
178
+ /* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.keyboard */ "./foundation.util.keyboard");
179
+ /* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__);
180
+ /* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ "./foundation.util.motion");
181
+ /* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);
182
+ /* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.core.utils */ "./foundation.core");
183
+ /* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);
184
+ /* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.touch */ "./foundation.util.touch");
185
+ /* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__);
186
+ /* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.util.triggers */ "./js/foundation.util.triggers.js");
187
+
188
+
189
+ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
190
+
191
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
192
+
193
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
194
+
195
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
196
+
197
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
198
+
199
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
200
+
201
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
202
+
203
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
204
+
205
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+ /**
215
+ * Slider module.
216
+ * @module foundation.slider
217
+ * @requires foundation.util.motion
218
+ * @requires foundation.util.triggers
219
+ * @requires foundation.util.keyboard
220
+ * @requires foundation.util.touch
221
+ */
222
+
223
+ var Slider =
224
+ /*#__PURE__*/
225
+ function (_Plugin) {
226
+ _inherits(Slider, _Plugin);
227
+
228
+ function Slider() {
229
+ _classCallCheck(this, Slider);
230
+
231
+ return _possibleConstructorReturn(this, _getPrototypeOf(Slider).apply(this, arguments));
232
+ }
233
+
234
+ _createClass(Slider, [{
235
+ key: "_setup",
236
+
237
+ /**
238
+ * Creates a new instance of a slider control.
239
+ * @class
240
+ * @name Slider
241
+ * @param {jQuery} element - jQuery object to make into a slider control.
242
+ * @param {Object} options - Overrides to the default plugin settings.
243
+ */
244
+ value: function _setup(element, options) {
245
+ this.$element = element;
246
+ this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Slider.defaults, this.$element.data(), options);
247
+ this.className = 'Slider'; // ie9 back compat
248
+ // Touch and Triggers inits are idempotent, we just need to make sure it's initialied.
249
+
250
+ _foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__["Touch"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);
251
+ _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__["Triggers"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);
252
+
253
+ this._init();
254
+
255
+ _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__["Keyboard"].register('Slider', {
256
+ 'ltr': {
257
+ 'ARROW_RIGHT': 'increase',
258
+ 'ARROW_UP': 'increase',
259
+ 'ARROW_DOWN': 'decrease',
260
+ 'ARROW_LEFT': 'decrease',
261
+ 'SHIFT_ARROW_RIGHT': 'increase_fast',
262
+ 'SHIFT_ARROW_UP': 'increase_fast',
263
+ 'SHIFT_ARROW_DOWN': 'decrease_fast',
264
+ 'SHIFT_ARROW_LEFT': 'decrease_fast',
265
+ 'HOME': 'min',
266
+ 'END': 'max'
267
+ },
268
+ 'rtl': {
269
+ 'ARROW_LEFT': 'increase',
270
+ 'ARROW_RIGHT': 'decrease',
271
+ 'SHIFT_ARROW_LEFT': 'increase_fast',
272
+ 'SHIFT_ARROW_RIGHT': 'decrease_fast'
273
+ }
274
+ });
275
+ }
276
+ /**
277
+ * Initilizes the plugin by reading/setting attributes, creating collections and setting the initial position of the handle(s).
278
+ * @function
279
+ * @private
280
+ */
281
+
282
+ }, {
283
+ key: "_init",
284
+ value: function _init() {
285
+ this.inputs = this.$element.find('input');
286
+ this.handles = this.$element.find('[data-slider-handle]');
287
+ this.$handle = this.handles.eq(0);
288
+ this.$input = this.inputs.length ? this.inputs.eq(0) : jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(this.$handle.attr('aria-controls')));
289
+ this.$fill = this.$element.find('[data-slider-fill]').css(this.options.vertical ? 'height' : 'width', 0);
290
+
291
+ var _this = this;
292
+
293
+ if (this.options.disabled || this.$element.hasClass(this.options.disabledClass)) {
294
+ this.options.disabled = true;
295
+ this.$element.addClass(this.options.disabledClass);
296
+ }
297
+
298
+ if (!this.inputs.length) {
299
+ this.inputs = jquery__WEBPACK_IMPORTED_MODULE_0___default()().add(this.$input);
300
+ this.options.binding = true;
301
+ }
302
+
303
+ this._setInitAttr(0);
304
+
305
+ if (this.handles[1]) {
306
+ this.options.doubleSided = true;
307
+ this.$handle2 = this.handles.eq(1);
308
+ this.$input2 = this.inputs.length > 1 ? this.inputs.eq(1) : jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(this.$handle2.attr('aria-controls')));
309
+
310
+ if (!this.inputs[1]) {
311
+ this.inputs = this.inputs.add(this.$input2);
312
+ } // this.$handle.triggerHandler('click.zf.slider');
313
+
314
+
315
+ this._setInitAttr(1);
316
+ } // Set handle positions
317
+
318
+
319
+ this.setHandles();
320
+
321
+ this._events();
322
+ }
323
+ }, {
324
+ key: "setHandles",
325
+ value: function setHandles() {
326
+ var _this2 = this;
327
+
328
+ if (this.handles[1]) {
329
+ this._setHandlePos(this.$handle, this.inputs.eq(0).val(), function () {
330
+ _this2._setHandlePos(_this2.$handle2, _this2.inputs.eq(1).val());
331
+ });
332
+ } else {
333
+ this._setHandlePos(this.$handle, this.inputs.eq(0).val());
334
+ }
335
+ }
336
+ }, {
337
+ key: "_reflow",
338
+ value: function _reflow() {
339
+ this.setHandles();
340
+ }
341
+ /**
342
+ * @function
343
+ * @private
344
+ * @param {Number} value - floating point (the value) to be transformed using to a relative position on the slider (the inverse of _value)
345
+ */
346
+
347
+ }, {
348
+ key: "_pctOfBar",
349
+ value: function _pctOfBar(value) {
350
+ var pctOfBar = percent(value - this.options.start, this.options.end - this.options.start);
351
+
352
+ switch (this.options.positionValueFunction) {
353
+ case "pow":
354
+ pctOfBar = this._logTransform(pctOfBar);
355
+ break;
356
+
357
+ case "log":
358
+ pctOfBar = this._powTransform(pctOfBar);
359
+ break;
360
+ }
361
+
362
+ return pctOfBar.toFixed(2);
363
+ }
364
+ /**
365
+ * @function
366
+ * @private
367
+ * @param {Number} pctOfBar - floating point, the relative position of the slider (typically between 0-1) to be transformed to a value
368
+ */
369
+
370
+ }, {
371
+ key: "_value",
372
+ value: function _value(pctOfBar) {
373
+ switch (this.options.positionValueFunction) {
374
+ case "pow":
375
+ pctOfBar = this._powTransform(pctOfBar);
376
+ break;
377
+
378
+ case "log":
379
+ pctOfBar = this._logTransform(pctOfBar);
380
+ break;
381
+ }
382
+
383
+ var value;
384
+
385
+ if (this.options.vertical) {
386
+ // linear interpolation which is working with negative values for start
387
+ // https://math.stackexchange.com/a/1019084
388
+ value = parseFloat(this.options.end) + pctOfBar * (this.options.start - this.options.end);
389
+ } else {
390
+ value = (this.options.end - this.options.start) * pctOfBar + parseFloat(this.options.start);
391
+ }
392
+
393
+ return value;
394
+ }
395
+ /**
396
+ * @function
397
+ * @private
398
+ * @param {Number} value - floating point (typically between 0-1) to be transformed using the log function
399
+ */
400
+
401
+ }, {
402
+ key: "_logTransform",
403
+ value: function _logTransform(value) {
404
+ return baseLog(this.options.nonLinearBase, value * (this.options.nonLinearBase - 1) + 1);
405
+ }
406
+ /**
407
+ * @function
408
+ * @private
409
+ * @param {Number} value - floating point (typically between 0-1) to be transformed using the power function
410
+ */
411
+
412
+ }, {
413
+ key: "_powTransform",
414
+ value: function _powTransform(value) {
415
+ return (Math.pow(this.options.nonLinearBase, value) - 1) / (this.options.nonLinearBase - 1);
416
+ }
417
+ /**
418
+ * Sets the position of the selected handle and fill bar.
419
+ * @function
420
+ * @private
421
+ * @param {jQuery} $hndl - the selected handle to move.
422
+ * @param {Number} location - floating point between the start and end values of the slider bar.
423
+ * @param {Function} cb - callback function to fire on completion.
424
+ * @fires Slider#moved
425
+ * @fires Slider#changed
426
+ */
427
+
428
+ }, {
429
+ key: "_setHandlePos",
430
+ value: function _setHandlePos($hndl, location, cb) {
431
+ // don't move if the slider has been disabled since its initialization
432
+ if (this.$element.hasClass(this.options.disabledClass)) {
433
+ return;
434
+ } //might need to alter that slightly for bars that will have odd number selections.
435
+
436
+
437
+ location = parseFloat(location); //on input change events, convert string to number...grumble.
438
+ // prevent slider from running out of bounds, if value exceeds the limits set through options, override the value to min/max
439
+
440
+ if (location < this.options.start) {
441
+ location = this.options.start;
442
+ } else if (location > this.options.end) {
443
+ location = this.options.end;
444
+ }
445
+
446
+ var isDbl = this.options.doubleSided;
447
+
448
+ if (isDbl) {
449
+ //this block is to prevent 2 handles from crossing eachother. Could/should be improved.
450
+ if (this.handles.index($hndl) === 0) {
451
+ var h2Val = parseFloat(this.$handle2.attr('aria-valuenow'));
452
+ location = location >= h2Val ? h2Val - this.options.step : location;
453
+ } else {
454
+ var h1Val = parseFloat(this.$handle.attr('aria-valuenow'));
455
+ location = location <= h1Val ? h1Val + this.options.step : location;
456
+ }
457
+ }
458
+
459
+ var _this = this,
460
+ vert = this.options.vertical,
461
+ hOrW = vert ? 'height' : 'width',
462
+ lOrT = vert ? 'top' : 'left',
463
+ handleDim = $hndl[0].getBoundingClientRect()[hOrW],
464
+ elemDim = this.$element[0].getBoundingClientRect()[hOrW],
465
+ //percentage of bar min/max value based on click or drag point
466
+ pctOfBar = this._pctOfBar(location),
467
+ //number of actual pixels to shift the handle, based on the percentage obtained above
468
+ pxToMove = (elemDim - handleDim) * pctOfBar,
469
+ //percentage of bar to shift the handle
470
+ movement = (percent(pxToMove, elemDim) * 100).toFixed(this.options.decimal); //fixing the decimal value for the location number, is passed to other methods as a fixed floating-point value
471
+
472
+
473
+ location = parseFloat(location.toFixed(this.options.decimal)); // declare empty object for css adjustments, only used with 2 handled-sliders
474
+
475
+ var css = {};
476
+
477
+ this._setValues($hndl, location); // TODO update to calculate based on values set to respective inputs??
478
+
479
+
480
+ if (isDbl) {
481
+ var isLeftHndl = this.handles.index($hndl) === 0,
482
+ //empty variable, will be used for min-height/width for fill bar
483
+ dim,
484
+ //percentage w/h of the handle compared to the slider bar
485
+ handlePct = ~~(percent(handleDim, elemDim) * 100); //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
486
+
487
+ if (isLeftHndl) {
488
+ //left or top percentage value to apply to the fill bar.
489
+ css[lOrT] = "".concat(movement, "%"); //calculate the new min-height/width for the fill bar.
490
+
491
+ dim = parseFloat(this.$handle2[0].style[lOrT]) - movement + handlePct; //this callback is necessary to prevent errors and allow the proper placement and initialization of a 2-handled slider
492
+ //plus, it means we don't care if 'dim' isNaN on init, it won't be in the future.
493
+
494
+ if (cb && typeof cb === 'function') {
495
+ cb();
496
+ } //this is only needed for the initialization of 2 handled sliders
497
+
498
+ } else {
499
+ //just caching the value of the left/bottom handle's left/top property
500
+ var handlePos = parseFloat(this.$handle[0].style[lOrT]); //calculate the new min-height/width for the fill bar. Use isNaN to prevent false positives for numbers <= 0
501
+ //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
502
+
503
+ dim = movement - (isNaN(handlePos) ? (this.options.initialStart - this.options.start) / ((this.options.end - this.options.start) / 100) : handlePos) + handlePct;
504
+ } // assign the min-height/width to our css object
505
+
506
+
507
+ css["min-".concat(hOrW)] = "".concat(dim, "%");
508
+ }
509
+
510
+ this.$element.one('finished.zf.animate', function () {
511
+ /**
512
+ * Fires when the handle is done moving.
513
+ * @event Slider#moved
514
+ */
515
+ _this.$element.trigger('moved.zf.slider', [$hndl]);
516
+ }); //because we don't know exactly how the handle will be moved, check the amount of time it should take to move.
517
+
518
+ var moveTime = this.$element.data('dragging') ? 1000 / 60 : this.options.moveTime;
519
+ Object(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__["Move"])(moveTime, $hndl, function () {
520
+ // adjusting the left/top property of the handle, based on the percentage calculated above
521
+ // if movement isNaN, that is because the slider is hidden and we cannot determine handle width,
522
+ // fall back to next best guess.
523
+ if (isNaN(movement)) {
524
+ $hndl.css(lOrT, "".concat(pctOfBar * 100, "%"));
525
+ } else {
526
+ $hndl.css(lOrT, "".concat(movement, "%"));
527
+ }
528
+
529
+ if (!_this.options.doubleSided) {
530
+ //if single-handled, a simple method to expand the fill bar
531
+ _this.$fill.css(hOrW, "".concat(pctOfBar * 100, "%"));
532
+ } else {
533
+ //otherwise, use the css object we created above
534
+ _this.$fill.css(css);
535
+ }
536
+ });
537
+ /**
538
+ * Fires when the value has not been change for a given time.
539
+ * @event Slider#changed
540
+ */
541
+
542
+ clearTimeout(_this.timeout);
543
+ _this.timeout = setTimeout(function () {
544
+ _this.$element.trigger('changed.zf.slider', [$hndl]);
545
+ }, _this.options.changedDelay);
546
+ }
547
+ /**
548
+ * Sets the initial attribute for the slider element.
549
+ * @function
550
+ * @private
551
+ * @param {Number} idx - index of the current handle/input to use.
552
+ */
553
+
554
+ }, {
555
+ key: "_setInitAttr",
556
+ value: function _setInitAttr(idx) {
557
+ var initVal = idx === 0 ? this.options.initialStart : this.options.initialEnd;
558
+ var id = this.inputs.eq(idx).attr('id') || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["GetYoDigits"])(6, 'slider');
559
+ this.inputs.eq(idx).attr({
560
+ 'id': id,
561
+ 'max': this.options.end,
562
+ 'min': this.options.start,
563
+ 'step': this.options.step
564
+ });
565
+ this.inputs.eq(idx).val(initVal);
566
+ this.handles.eq(idx).attr({
567
+ 'role': 'slider',
568
+ 'aria-controls': id,
569
+ 'aria-valuemax': this.options.end,
570
+ 'aria-valuemin': this.options.start,
571
+ 'aria-valuenow': initVal,
572
+ 'aria-orientation': this.options.vertical ? 'vertical' : 'horizontal',
573
+ 'tabindex': 0
574
+ });
575
+ }
576
+ /**
577
+ * Sets the input and `aria-valuenow` values for the slider element.
578
+ * @function
579
+ * @private
580
+ * @param {jQuery} $handle - the currently selected handle.
581
+ * @param {Number} val - floating point of the new value.
582
+ */
583
+
584
+ }, {
585
+ key: "_setValues",
586
+ value: function _setValues($handle, val) {
587
+ var idx = this.options.doubleSided ? this.handles.index($handle) : 0;
588
+ this.inputs.eq(idx).val(val);
589
+ $handle.attr('aria-valuenow', val);
590
+ }
591
+ /**
592
+ * Handles events on the slider element.
593
+ * Calculates the new location of the current handle.
594
+ * If there are two handles and the bar was clicked, it determines which handle to move.
595
+ * @function
596
+ * @private
597
+ * @param {Object} e - the `event` object passed from the listener.
598
+ * @param {jQuery} $handle - the current handle to calculate for, if selected.
599
+ * @param {Number} val - floating point number for the new value of the slider.
600
+ * TODO clean this up, there's a lot of repeated code between this and the _setHandlePos fn.
601
+ */
602
+
603
+ }, {
604
+ key: "_handleEvent",
605
+ value: function _handleEvent(e, $handle, val) {
606
+ var value, hasVal;
607
+
608
+ if (!val) {
609
+ //click or drag events
610
+ e.preventDefault();
611
+
612
+ var _this = this,
613
+ vertical = this.options.vertical,
614
+ param = vertical ? 'height' : 'width',
615
+ direction = vertical ? 'top' : 'left',
616
+ eventOffset = vertical ? e.pageY : e.pageX,
617
+ barDim = this.$element[0].getBoundingClientRect()[param],
618
+ windowScroll = vertical ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop() : jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollLeft();
619
+
620
+ var elemOffset = this.$element.offset()[direction]; // touch events emulated by the touch util give position relative to screen, add window.scroll to event coordinates...
621
+ // best way to guess this is simulated is if clientY == pageY
622
+
623
+ if (e.clientY === e.pageY) {
624
+ eventOffset = eventOffset + windowScroll;
625
+ }
626
+
627
+ var eventFromBar = eventOffset - elemOffset;
628
+ var barXY;
629
+
630
+ if (eventFromBar < 0) {
631
+ barXY = 0;
632
+ } else if (eventFromBar > barDim) {
633
+ barXY = barDim;
634
+ } else {
635
+ barXY = eventFromBar;
636
+ }
637
+
638
+ var offsetPct = percent(barXY, barDim);
639
+ value = this._value(offsetPct); // turn everything around for RTL, yay math!
640
+
641
+ if (Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["rtl"])() && !this.options.vertical) {
642
+ value = this.options.end - value;
643
+ }
644
+
645
+ value = _this._adjustValue(null, value); //boolean flag for the setHandlePos fn, specifically for vertical sliders
646
+
647
+ hasVal = false;
648
+
649
+ if (!$handle) {
650
+ //figure out which handle it is, pass it to the next function.
651
+ var firstHndlPos = absPosition(this.$handle, direction, barXY, param),
652
+ secndHndlPos = absPosition(this.$handle2, direction, barXY, param);
653
+ $handle = firstHndlPos <= secndHndlPos ? this.$handle : this.$handle2;
654
+ }
655
+ } else {
656
+ //change event on input
657
+ value = this._adjustValue(null, val);
658
+ hasVal = true;
659
+ }
660
+
661
+ this._setHandlePos($handle, value);
662
+ }
663
+ /**
664
+ * Adjustes value for handle in regard to step value. returns adjusted value
665
+ * @function
666
+ * @private
667
+ * @param {jQuery} $handle - the selected handle.
668
+ * @param {Number} value - value to adjust. used if $handle is falsy
669
+ */
670
+
671
+ }, {
672
+ key: "_adjustValue",
673
+ value: function _adjustValue($handle, value) {
674
+ var val,
675
+ step = this.options.step,
676
+ div = parseFloat(step / 2),
677
+ left,
678
+ prev_val,
679
+ next_val;
680
+
681
+ if (!!$handle) {
682
+ val = parseFloat($handle.attr('aria-valuenow'));
683
+ } else {
684
+ val = value;
685
+ }
686
+
687
+ if (val >= 0) {
688
+ left = val % step;
689
+ } else {
690
+ left = step + val % step;
691
+ }
692
+
693
+ prev_val = val - left;
694
+ next_val = prev_val + step;
695
+
696
+ if (left === 0) {
697
+ return val;
698
+ }
699
+
700
+ val = val >= prev_val + div ? next_val : prev_val;
701
+ return val;
702
+ }
703
+ /**
704
+ * Adds event listeners to the slider elements.
705
+ * @function
706
+ * @private
707
+ */
708
+
709
+ }, {
710
+ key: "_events",
711
+ value: function _events() {
712
+ this._eventsForHandle(this.$handle);
713
+
714
+ if (this.handles[1]) {
715
+ this._eventsForHandle(this.$handle2);
716
+ }
717
+ }
718
+ /**
719
+ * Adds event listeners a particular handle
720
+ * @function
721
+ * @private
722
+ * @param {jQuery} $handle - the current handle to apply listeners to.
723
+ */
724
+
725
+ }, {
726
+ key: "_eventsForHandle",
727
+ value: function _eventsForHandle($handle) {
728
+ var _this = this,
729
+ curHandle;
730
+
731
+ var handleChangeEvent = function handleChangeEvent(e) {
732
+ var idx = _this.inputs.index(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));
733
+
734
+ _this._handleEvent(e, _this.handles.eq(idx), jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).val());
735
+ }; // IE only triggers the change event when the input loses focus which strictly follows the HTML specification
736
+ // listen for the enter key and trigger a change
737
+ // @see https://html.spec.whatwg.org/multipage/input.html#common-input-element-events
738
+
739
+
740
+ this.inputs.off('keyup.zf.slider').on('keyup.zf.slider', function (e) {
741
+ if (e.keyCode == 13) handleChangeEvent.call(this, e);
742
+ });
743
+ this.inputs.off('change.zf.slider').on('change.zf.slider', handleChangeEvent);
744
+
745
+ if (this.options.clickSelect) {
746
+ this.$element.off('click.zf.slider').on('click.zf.slider', function (e) {
747
+ if (_this.$element.data('dragging')) {
748
+ return false;
749
+ }
750
+
751
+ if (!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).is('[data-slider-handle]')) {
752
+ if (_this.options.doubleSided) {
753
+ _this._handleEvent(e);
754
+ } else {
755
+ _this._handleEvent(e, _this.$handle);
756
+ }
757
+ }
758
+ });
759
+ }
760
+
761
+ if (this.options.draggable) {
762
+ this.handles.addTouch();
763
+ var $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()('body');
764
+ $handle.off('mousedown.zf.slider').on('mousedown.zf.slider', function (e) {
765
+ $handle.addClass('is-dragging');
766
+
767
+ _this.$fill.addClass('is-dragging'); //
768
+
769
+
770
+ _this.$element.data('dragging', true);
771
+
772
+ curHandle = jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.currentTarget);
773
+ $body.on('mousemove.zf.slider', function (e) {
774
+ e.preventDefault();
775
+
776
+ _this._handleEvent(e, curHandle);
777
+ }).on('mouseup.zf.slider', function (e) {
778
+ _this._handleEvent(e, curHandle);
779
+
780
+ $handle.removeClass('is-dragging');
781
+
782
+ _this.$fill.removeClass('is-dragging');
783
+
784
+ _this.$element.data('dragging', false);
785
+
786
+ $body.off('mousemove.zf.slider mouseup.zf.slider');
787
+ });
788
+ }) // prevent events triggered by touch
789
+ .on('selectstart.zf.slider touchmove.zf.slider', function (e) {
790
+ e.preventDefault();
791
+ });
792
+ }
793
+
794
+ $handle.off('keydown.zf.slider').on('keydown.zf.slider', function (e) {
795
+ var _$handle = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),
796
+ idx = _this.options.doubleSided ? _this.handles.index(_$handle) : 0,
797
+ oldValue = parseFloat(_this.inputs.eq(idx).val()),
798
+ newValue; // handle keyboard event with keyboard util
799
+
800
+
801
+ _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__["Keyboard"].handleKey(e, 'Slider', {
802
+ decrease: function decrease() {
803
+ newValue = oldValue - _this.options.step;
804
+ },
805
+ increase: function increase() {
806
+ newValue = oldValue + _this.options.step;
807
+ },
808
+ decrease_fast: function decrease_fast() {
809
+ newValue = oldValue - _this.options.step * 10;
810
+ },
811
+ increase_fast: function increase_fast() {
812
+ newValue = oldValue + _this.options.step * 10;
813
+ },
814
+ min: function min() {
815
+ newValue = _this.options.start;
816
+ },
817
+ max: function max() {
818
+ newValue = _this.options.end;
819
+ },
820
+ handled: function handled() {
821
+ // only set handle pos when event was handled specially
822
+ e.preventDefault();
823
+
824
+ _this._setHandlePos(_$handle, newValue);
825
+ }
826
+ });
827
+ /*if (newValue) { // if pressed key has special function, update value
828
+ e.preventDefault();
829
+ _this._setHandlePos(_$handle, newValue);
830
+ }*/
831
+ });
832
+ }
833
+ /**
834
+ * Destroys the slider plugin.
835
+ */
836
+
837
+ }, {
838
+ key: "_destroy",
839
+ value: function _destroy() {
840
+ this.handles.off('.zf.slider');
841
+ this.inputs.off('.zf.slider');
842
+ this.$element.off('.zf.slider');
843
+ clearTimeout(this.timeout);
844
+ }
845
+ }]);
846
+
847
+ return Slider;
848
+ }(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__["Plugin"]);
849
+
850
+ Slider.defaults = {
851
+ /**
852
+ * Minimum value for the slider scale.
853
+ * @option
854
+ * @type {number}
855
+ * @default 0
856
+ */
857
+ start: 0,
858
+
859
+ /**
860
+ * Maximum value for the slider scale.
861
+ * @option
862
+ * @type {number}
863
+ * @default 100
864
+ */
865
+ end: 100,
866
+
867
+ /**
868
+ * Minimum value change per change event.
869
+ * @option
870
+ * @type {number}
871
+ * @default 1
872
+ */
873
+ step: 1,
874
+
875
+ /**
876
+ * Value at which the handle/input *(left handle/first input)* should be set to on initialization.
877
+ * @option
878
+ * @type {number}
879
+ * @default 0
880
+ */
881
+ initialStart: 0,
882
+
883
+ /**
884
+ * Value at which the right handle/second input should be set to on initialization.
885
+ * @option
886
+ * @type {number}
887
+ * @default 100
888
+ */
889
+ initialEnd: 100,
890
+
891
+ /**
892
+ * Allows the input to be located outside the container and visible. Set to by the JS
893
+ * @option
894
+ * @type {boolean}
895
+ * @default false
896
+ */
897
+ binding: false,
898
+
899
+ /**
900
+ * Allows the user to click/tap on the slider bar to select a value.
901
+ * @option
902
+ * @type {boolean}
903
+ * @default true
904
+ */
905
+ clickSelect: true,
906
+
907
+ /**
908
+ * Set to true and use the `vertical` class to change alignment to vertical.
909
+ * @option
910
+ * @type {boolean}
911
+ * @default false
912
+ */
913
+ vertical: false,
914
+
915
+ /**
916
+ * Allows the user to drag the slider handle(s) to select a value.
917
+ * @option
918
+ * @type {boolean}
919
+ * @default true
920
+ */
921
+ draggable: true,
922
+
923
+ /**
924
+ * Disables the slider and prevents event listeners from being applied. Double checked by JS with `disabledClass`.
925
+ * @option
926
+ * @type {boolean}
927
+ * @default false
928
+ */
929
+ disabled: false,
930
+
931
+ /**
932
+ * Allows the use of two handles. Double checked by the JS. Changes some logic handling.
933
+ * @option
934
+ * @type {boolean}
935
+ * @default false
936
+ */
937
+ doubleSided: false,
938
+
939
+ /**
940
+ * Potential future feature.
941
+ */
942
+ // steps: 100,
943
+
944
+ /**
945
+ * Number of decimal places the plugin should go to for floating point precision.
946
+ * @option
947
+ * @type {number}
948
+ * @default 2
949
+ */
950
+ decimal: 2,
951
+
952
+ /**
953
+ * Time delay for dragged elements.
954
+ */
955
+ // dragDelay: 0,
956
+
957
+ /**
958
+ * 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.
959
+ * @option
960
+ * @type {number}
961
+ * @default 200
962
+ */
963
+ moveTime: 200,
964
+ //update this if changing the transition time in the sass
965
+
966
+ /**
967
+ * Class applied to disabled sliders.
968
+ * @option
969
+ * @type {string}
970
+ * @default 'disabled'
971
+ */
972
+ disabledClass: 'disabled',
973
+
974
+ /**
975
+ * Will invert the default layout for a vertical<span data-tooltip title="who would do this???"> </span>slider.
976
+ * @option
977
+ * @type {boolean}
978
+ * @default false
979
+ */
980
+ invertVertical: false,
981
+
982
+ /**
983
+ * Milliseconds before the `changed.zf-slider` event is triggered after value change.
984
+ * @option
985
+ * @type {number}
986
+ * @default 500
987
+ */
988
+ changedDelay: 500,
989
+
990
+ /**
991
+ * Basevalue for non-linear sliders
992
+ * @option
993
+ * @type {number}
994
+ * @default 5
995
+ */
996
+ nonLinearBase: 5,
997
+
998
+ /**
999
+ * Basevalue for non-linear sliders, possible values are: `'linear'`, `'pow'` & `'log'`. Pow and Log use the nonLinearBase setting.
1000
+ * @option
1001
+ * @type {string}
1002
+ * @default 'linear'
1003
+ */
1004
+ positionValueFunction: 'linear'
1005
+ };
1006
+
1007
+ function percent(frac, num) {
1008
+ return frac / num;
1009
+ }
1010
+
1011
+ function absPosition($handle, dir, clickPos, param) {
1012
+ return Math.abs($handle.position()[dir] + $handle[param]() / 2 - clickPos);
1013
+ }
1014
+
1015
+ function baseLog(base, value) {
1016
+ return Math.log(value) / Math.log(base);
1017
+ }
1018
+
1019
+
1020
+
1021
+ /***/ }),
1022
+
1023
+ /***/ "./js/foundation.util.triggers.js":
1024
+ /*!****************************************!*\
1025
+ !*** ./js/foundation.util.triggers.js ***!
1026
+ \****************************************/
1027
+ /*! exports provided: Triggers */
1028
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1029
+
1030
+ "use strict";
1031
+ __webpack_require__.r(__webpack_exports__);
1032
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Triggers", function() { return Triggers; });
1033
+ /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
1034
+ /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
1035
+ /* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ "./foundation.core");
1036
+ /* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);
1037
+ /* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ "./foundation.util.motion");
1038
+ /* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);
1039
+
1040
+
1041
+ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1042
+
1043
+
1044
+
1045
+
1046
+
1047
+ var MutationObserver = function () {
1048
+ var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];
1049
+
1050
+ for (var i = 0; i < prefixes.length; i++) {
1051
+ if ("".concat(prefixes[i], "MutationObserver") in window) {
1052
+ return window["".concat(prefixes[i], "MutationObserver")];
1053
+ }
1054
+ }
1055
+
1056
+ return false;
1057
+ }();
1058
+
1059
+ var triggers = function triggers(el, type) {
1060
+ el.data(type).split(' ').forEach(function (id) {
1061
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler']("".concat(type, ".zf.trigger"), [el]);
1062
+ });
1063
+ };
1064
+
1065
+ var Triggers = {
1066
+ Listeners: {
1067
+ Basic: {},
1068
+ Global: {}
1069
+ },
1070
+ Initializers: {}
1071
+ };
1072
+ Triggers.Listeners.Basic = {
1073
+ openListener: function openListener() {
1074
+ triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');
1075
+ },
1076
+ closeListener: function closeListener() {
1077
+ var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');
1078
+
1079
+ if (id) {
1080
+ triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');
1081
+ } else {
1082
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');
1083
+ }
1084
+ },
1085
+ toggleListener: function toggleListener() {
1086
+ var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');
1087
+
1088
+ if (id) {
1089
+ triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');
1090
+ } else {
1091
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');
1092
+ }
1093
+ },
1094
+ closeableListener: function closeableListener(e) {
1095
+ var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833
1096
+
1097
+ e.stopPropagation();
1098
+
1099
+ if (animation !== '') {
1100
+ _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__["Motion"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {
1101
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');
1102
+ });
1103
+ } else {
1104
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');
1105
+ }
1106
+ },
1107
+ toggleFocusListener: function toggleFocusListener() {
1108
+ var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');
1109
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);
1110
+ }
1111
+ }; // Elements with [data-open] will reveal a plugin that supports it when clicked.
1112
+
1113
+ Triggers.Initializers.addOpenListener = function ($elem) {
1114
+ $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);
1115
+ $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);
1116
+ }; // Elements with [data-close] will close a plugin that supports it when clicked.
1117
+ // If used without a value on [data-close], the event will bubble, allowing it to close a parent component.
1118
+
1119
+
1120
+ Triggers.Initializers.addCloseListener = function ($elem) {
1121
+ $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);
1122
+ $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);
1123
+ }; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.
1124
+
1125
+
1126
+ Triggers.Initializers.addToggleListener = function ($elem) {
1127
+ $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);
1128
+ $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);
1129
+ }; // Elements with [data-closable] will respond to close.zf.trigger events.
1130
+
1131
+
1132
+ Triggers.Initializers.addCloseableListener = function ($elem) {
1133
+ $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);
1134
+ $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);
1135
+ }; // Elements with [data-toggle-focus] will respond to coming in and out of focus
1136
+
1137
+
1138
+ Triggers.Initializers.addToggleFocusListener = function ($elem) {
1139
+ $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);
1140
+ $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);
1141
+ }; // More Global/complex listeners and triggers
1142
+
1143
+
1144
+ Triggers.Listeners.Global = {
1145
+ resizeListener: function resizeListener($nodes) {
1146
+ if (!MutationObserver) {
1147
+ //fallback for IE 9
1148
+ $nodes.each(function () {
1149
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');
1150
+ });
1151
+ } //trigger all listening elements and signal a resize event
1152
+
1153
+
1154
+ $nodes.attr('data-events', "resize");
1155
+ },
1156
+ scrollListener: function scrollListener($nodes) {
1157
+ if (!MutationObserver) {
1158
+ //fallback for IE 9
1159
+ $nodes.each(function () {
1160
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');
1161
+ });
1162
+ } //trigger all listening elements and signal a scroll event
1163
+
1164
+
1165
+ $nodes.attr('data-events', "scroll");
1166
+ },
1167
+ closeMeListener: function closeMeListener(e, pluginId) {
1168
+ var plugin = e.namespace.split('.')[0];
1169
+ var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()("[data-".concat(plugin, "]")).not("[data-yeti-box=\"".concat(pluginId, "\"]"));
1170
+ plugins.each(function () {
1171
+ var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);
1172
+
1173
+ _this.triggerHandler('close.zf.trigger', [_this]);
1174
+ });
1175
+ } // Global, parses whole document.
1176
+
1177
+ };
1178
+
1179
+ Triggers.Initializers.addClosemeListener = function (pluginName) {
1180
+ var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),
1181
+ plugNames = ['dropdown', 'tooltip', 'reveal'];
1182
+
1183
+ if (pluginName) {
1184
+ if (typeof pluginName === 'string') {
1185
+ plugNames.push(pluginName);
1186
+ } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {
1187
+ plugNames = plugNames.concat(pluginName);
1188
+ } else {
1189
+ console.error('Plugin names must be strings');
1190
+ }
1191
+ }
1192
+
1193
+ if (yetiBoxes.length) {
1194
+ var listeners = plugNames.map(function (name) {
1195
+ return "closeme.zf.".concat(name);
1196
+ }).join(' ');
1197
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);
1198
+ }
1199
+ };
1200
+
1201
+ function debounceGlobalListener(debounce, trigger, listener) {
1202
+ var timer,
1203
+ args = Array.prototype.slice.call(arguments, 3);
1204
+ jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {
1205
+ if (timer) {
1206
+ clearTimeout(timer);
1207
+ }
1208
+
1209
+ timer = setTimeout(function () {
1210
+ listener.apply(null, args);
1211
+ }, debounce || 10); //default time to emit scroll event
1212
+ });
1213
+ }
1214
+
1215
+ Triggers.Initializers.addResizeListener = function (debounce) {
1216
+ var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');
1217
+
1218
+ if ($nodes.length) {
1219
+ debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);
1220
+ }
1221
+ };
1222
+
1223
+ Triggers.Initializers.addScrollListener = function (debounce) {
1224
+ var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');
1225
+
1226
+ if ($nodes.length) {
1227
+ debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);
1228
+ }
1229
+ };
1230
+
1231
+ Triggers.Initializers.addMutationEventsListener = function ($elem) {
1232
+ if (!MutationObserver) {
1233
+ return false;
1234
+ }
1235
+
1236
+ var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback
1237
+
1238
+ var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {
1239
+ var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type
1240
+
1241
+ switch (mutationRecordsList[0].type) {
1242
+ case "attributes":
1243
+ if ($target.attr("data-events") === "scroll" && mutationRecordsList[0].attributeName === "data-events") {
1244
+ $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);
1245
+ }
1246
+
1247
+ if ($target.attr("data-events") === "resize" && mutationRecordsList[0].attributeName === "data-events") {
1248
+ $target.triggerHandler('resizeme.zf.trigger', [$target]);
1249
+ }
1250
+
1251
+ if (mutationRecordsList[0].attributeName === "style") {
1252
+ $target.closest("[data-mutate]").attr("data-events", "mutate");
1253
+ $target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
1254
+ }
1255
+
1256
+ break;
1257
+
1258
+ case "childList":
1259
+ $target.closest("[data-mutate]").attr("data-events", "mutate");
1260
+ $target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
1261
+ break;
1262
+
1263
+ default:
1264
+ return false;
1265
+ //nothing
1266
+ }
1267
+ };
1268
+
1269
+ if ($nodes.length) {
1270
+ //for each element that needs to listen for resizing, scrolling, or mutation add a single observer
1271
+ for (var i = 0; i <= $nodes.length - 1; i++) {
1272
+ var elementObserver = new MutationObserver(listeningElementsMutation);
1273
+ elementObserver.observe($nodes[i], {
1274
+ attributes: true,
1275
+ childList: true,
1276
+ characterData: false,
1277
+ subtree: true,
1278
+ attributeFilter: ["data-events", "style"]
1279
+ });
1280
+ }
1281
+ }
1282
+ };
1283
+
1284
+ Triggers.Initializers.addSimpleListeners = function () {
1285
+ var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);
1286
+ Triggers.Initializers.addOpenListener($document);
1287
+ Triggers.Initializers.addCloseListener($document);
1288
+ Triggers.Initializers.addToggleListener($document);
1289
+ Triggers.Initializers.addCloseableListener($document);
1290
+ Triggers.Initializers.addToggleFocusListener($document);
1291
+ };
1292
+
1293
+ Triggers.Initializers.addGlobalListeners = function () {
1294
+ var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);
1295
+ Triggers.Initializers.addMutationEventsListener($document);
1296
+ Triggers.Initializers.addResizeListener();
1297
+ Triggers.Initializers.addScrollListener();
1298
+ Triggers.Initializers.addClosemeListener();
1299
+ };
1300
+
1301
+ Triggers.init = function ($, Foundation) {
1302
+ Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["onLoad"])($(window), function () {
1303
+ if ($.triggersInitialized !== true) {
1304
+ Triggers.Initializers.addSimpleListeners();
1305
+ Triggers.Initializers.addGlobalListeners();
1306
+ $.triggersInitialized = true;
1307
+ }
1308
+ });
1309
+
1310
+ if (Foundation) {
1311
+ Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.
1312
+
1313
+ Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;
1314
+ }
1315
+ };
1316
+
1317
+
1318
+
1319
+ /***/ }),
1320
+
1321
+ /***/ 15:
1322
+ /*!*******************************************************!*\
1323
+ !*** multi ./js/entries/plugins/foundation.slider.js ***!
1324
+ \*******************************************************/
1325
+ /*! no static exports found */
1326
+ /***/ (function(module, exports, __webpack_require__) {
1327
+
1328
+ module.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.slider.js */"./js/entries/plugins/foundation.slider.js");
1329
+
1330
+
1331
+ /***/ }),
1332
+
1333
+ /***/ "jquery":
1334
+ /*!********************************************************************************************!*\
1335
+ !*** external {"root":["jQuery"],"amd":"jquery","commonjs":"jquery","commonjs2":"jquery"} ***!
1336
+ \********************************************************************************************/
1337
+ /*! no static exports found */
1338
+ /***/ (function(module, exports) {
1339
+
1340
+ module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;
1341
+
1342
+ /***/ })
1343
+
1344
+ /******/ });
1345
+ });
1346
+ //# sourceMappingURL=foundation.slider.js.map