foundation-rails 6.4.3.0 → 6.5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +0 -1
- data/.ruby-version +1 -1
- data/.travis.yml +14 -3
- data/Appraisals +19 -0
- data/Gemfile +5 -2
- data/Gemfile.lock +193 -0
- data/README.md +53 -24
- data/Rakefile +11 -12
- data/bower.json +3 -3
- data/foundation-rails.gemspec +5 -5
- data/gemfiles/rails_4.1.gemfile +10 -0
- data/gemfiles/rails_4.1.gemfile.lock +178 -0
- data/gemfiles/rails_4.2.gemfile +10 -0
- data/gemfiles/rails_4.2.gemfile.lock +178 -0
- data/gemfiles/rails_5.0.gemfile +10 -0
- data/gemfiles/rails_5.0.gemfile.lock +193 -0
- data/gemfiles/rails_5.1.gemfile +10 -0
- data/gemfiles/rails_5.1.gemfile.lock +193 -0
- data/gemfiles/rails_5.2.gemfile +10 -0
- data/gemfiles/rails_5.2.gemfile.lock +193 -0
- data/lib/foundation/rails/version.rb +1 -1
- data/lib/generators/foundation/install_generator.rb +1 -1
- data/lib/generators/foundation/templates/_settings.scss +5 -5
- data/spec/support/helpers.rb +1 -1
- data/vendor/assets/js/foundation.cjs.js +11795 -0
- data/vendor/assets/js/foundation.cjs.js.map +1 -0
- data/vendor/assets/js/foundation.es6.js +10361 -0
- data/vendor/assets/js/foundation.es6.js.map +1 -0
- data/vendor/assets/js/foundation.esm.js +11756 -0
- data/vendor/assets/js/foundation.esm.js.map +1 -0
- data/vendor/assets/js/foundation.js +13214 -31
- data/vendor/assets/js/foundation.js.map +1 -0
- data/vendor/assets/js/foundation.min.js +2 -0
- data/vendor/assets/js/foundation.min.js.map +1 -0
- data/vendor/assets/js/foundation.sprockets.js +38 -0
- data/vendor/assets/js/{foundation.abide.js → plugins/foundation.abide.js} +317 -138
- data/vendor/assets/js/plugins/foundation.abide.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.abide.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.abide.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.accordion.js +676 -0
- data/vendor/assets/js/plugins/foundation.accordion.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.accordion.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.accordion.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.accordionMenu.js +637 -0
- data/vendor/assets/js/plugins/foundation.accordionMenu.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.accordionMenu.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.accordionMenu.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.core.js +1072 -0
- data/vendor/assets/js/plugins/foundation.core.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.core.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.core.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.drilldown.js +982 -0
- data/vendor/assets/js/plugins/foundation.drilldown.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.drilldown.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.drilldown.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.dropdown.js +1324 -0
- data/vendor/assets/js/plugins/foundation.dropdown.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.dropdown.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.dropdown.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.dropdownMenu.js +792 -0
- data/vendor/assets/js/plugins/foundation.dropdownMenu.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.dropdownMenu.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.equalizer.js +638 -0
- data/vendor/assets/js/plugins/foundation.equalizer.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.equalizer.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.equalizer.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.interchange.js +471 -0
- data/vendor/assets/js/plugins/foundation.interchange.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.interchange.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.interchange.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.magellan.js +551 -0
- data/vendor/assets/js/plugins/foundation.magellan.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.magellan.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.magellan.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.offcanvas.js +1164 -0
- data/vendor/assets/js/plugins/foundation.offcanvas.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.offcanvas.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.offcanvas.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.orbit.js +883 -0
- data/vendor/assets/js/plugins/foundation.orbit.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.orbit.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.orbit.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js +546 -0
- data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.responsiveAccordionTabs.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveMenu.js +437 -0
- data/vendor/assets/js/plugins/foundation.responsiveMenu.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.responsiveMenu.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveToggle.js +405 -0
- data/vendor/assets/js/plugins/foundation.responsiveToggle.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.responsiveToggle.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.reveal.js +1278 -0
- data/vendor/assets/js/plugins/foundation.reveal.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.reveal.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.reveal.min.js.map +1 -0
- data/vendor/assets/js/{foundation.slider.js → plugins/foundation.slider.js} +405 -271
- data/vendor/assets/js/plugins/foundation.slider.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.slider.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.slider.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.smoothScroll.js +382 -0
- data/vendor/assets/js/plugins/foundation.smoothScroll.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.smoothScroll.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.smoothScroll.min.js.map +1 -0
- data/vendor/assets/js/{foundation.sticky.js → plugins/foundation.sticky.js} +325 -203
- data/vendor/assets/js/plugins/foundation.sticky.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.sticky.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.sticky.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.tabs.js +813 -0
- data/vendor/assets/js/plugins/foundation.tabs.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.tabs.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.tabs.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.toggler.js +713 -0
- data/vendor/assets/js/plugins/foundation.toggler.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.toggler.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.toggler.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.tooltip.js +1346 -0
- data/vendor/assets/js/plugins/foundation.tooltip.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.tooltip.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.tooltip.min.js.map +1 -0
- data/vendor/assets/js/{foundation.util.box.js → plugins/foundation.util.box.js} +136 -54
- data/vendor/assets/js/plugins/foundation.util.box.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.box.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.box.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.imageLoader.js +218 -0
- data/vendor/assets/js/plugins/foundation.util.imageLoader.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.imageLoader.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.keyboard.js +351 -0
- data/vendor/assets/js/plugins/foundation.util.keyboard.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.keyboard.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.keyboard.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.mediaQuery.js +405 -0
- data/vendor/assets/js/plugins/foundation.util.mediaQuery.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.mediaQuery.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.motion.js +282 -0
- data/vendor/assets/js/plugins/foundation.util.motion.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.motion.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.motion.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.nest.js +240 -0
- data/vendor/assets/js/plugins/foundation.util.nest.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.nest.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.nest.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.timer.js +226 -0
- data/vendor/assets/js/plugins/foundation.util.timer.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.timer.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.timer.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.touch.js +365 -0
- data/vendor/assets/js/plugins/foundation.util.touch.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.touch.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.touch.min.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.triggers.js +480 -0
- data/vendor/assets/js/plugins/foundation.util.triggers.js.map +1 -0
- data/vendor/assets/js/plugins/foundation.util.triggers.min.js +2 -0
- data/vendor/assets/js/plugins/foundation.util.triggers.min.js.map +1 -0
- data/vendor/assets/scss/_global.scss +10 -15
- data/vendor/assets/scss/components/_accordion-menu.scss +6 -3
- data/vendor/assets/scss/components/_accordion.scss +1 -0
- data/vendor/assets/scss/components/_breadcrumbs.scss +8 -6
- data/vendor/assets/scss/components/_button-group.scss +27 -8
- data/vendor/assets/scss/components/_button.scss +36 -8
- data/vendor/assets/scss/components/_card.scss +2 -2
- data/vendor/assets/scss/components/_drilldown.scss +5 -6
- data/vendor/assets/scss/components/_dropdown-menu.scss +15 -10
- data/vendor/assets/scss/components/_dropdown.scss +7 -4
- data/vendor/assets/scss/components/_flex.scss +6 -4
- data/vendor/assets/scss/components/_media-object.scss +33 -33
- data/vendor/assets/scss/components/_menu.scss +0 -4
- data/vendor/assets/scss/components/_off-canvas.scss +4 -4
- data/vendor/assets/scss/components/_orbit.scss +1 -0
- data/vendor/assets/scss/components/_responsive-embed.scss +0 -13
- data/vendor/assets/scss/components/_reveal.scss +19 -14
- data/vendor/assets/scss/components/_table.scss +3 -6
- data/vendor/assets/scss/components/_tabs.scss +1 -4
- data/vendor/assets/scss/components/_thumbnail.scss +1 -1
- data/vendor/assets/scss/components/_visibility.scss +5 -2
- data/vendor/assets/scss/forms/_error.scss +1 -0
- data/vendor/assets/scss/forms/_input-group.scss +10 -10
- data/vendor/assets/scss/forms/_meter.scss +5 -5
- data/vendor/assets/scss/forms/_progress.scss +6 -6
- data/vendor/assets/scss/forms/_range.scss +5 -5
- data/vendor/assets/scss/forms/_text.scss +7 -7
- data/vendor/assets/scss/foundation.scss +74 -57
- data/vendor/assets/scss/grid/_column.scss +2 -6
- data/vendor/assets/scss/grid/_flex-grid.scss +1 -0
- data/vendor/assets/scss/grid/_gutter.scss +0 -15
- data/vendor/assets/scss/grid/_position.scss +28 -4
- data/vendor/assets/scss/motion-ui/_settings.scss +1 -0
- data/vendor/assets/scss/motion-ui/effects/_fade.scss +1 -4
- data/vendor/assets/scss/motion-ui/effects/_hinge.scss +4 -3
- data/vendor/assets/scss/motion-ui/effects/_shake.scss +1 -1
- data/vendor/assets/scss/motion-ui/effects/_slide.scss +4 -3
- data/vendor/assets/scss/motion-ui/effects/_spin.scss +4 -3
- data/vendor/assets/scss/motion-ui/effects/_wiggle.scss +1 -1
- data/vendor/assets/scss/motion-ui/effects/_zoom.scss +2 -2
- data/vendor/assets/scss/motion-ui/motion-ui.scss +2 -0
- data/vendor/assets/scss/motion-ui/transitions/_fade.scss +6 -4
- data/vendor/assets/scss/motion-ui/transitions/_hinge.scss +3 -2
- data/vendor/assets/scss/motion-ui/transitions/_slide.scss +3 -2
- data/vendor/assets/scss/motion-ui/transitions/_spin.scss +2 -1
- data/vendor/assets/scss/motion-ui/transitions/_zoom.scss +6 -4
- data/vendor/assets/scss/motion-ui/util/_animation.scss +1 -1
- data/vendor/assets/scss/motion-ui/util/_args.scss +2 -2
- data/vendor/assets/scss/motion-ui/util/_function.scss +94 -0
- data/vendor/assets/scss/motion-ui/util/_keyframe.scss +5 -5
- data/vendor/assets/scss/motion-ui/util/_series.scss +20 -17
- data/vendor/assets/scss/motion-ui/util/_string.scss +36 -0
- data/vendor/assets/scss/prototype/_relation.scss +1 -1
- data/vendor/assets/scss/prototype/_rounded.scss +3 -0
- data/vendor/assets/scss/prototype/_spacing.scss +94 -121
- data/vendor/assets/scss/settings/_settings.scss +5 -5
- data/vendor/assets/scss/typography/_base.scss +2 -2
- data/vendor/assets/scss/typography/_helpers.scss +1 -1
- data/vendor/assets/scss/typography/_print.scss +4 -0
- data/vendor/assets/scss/util/_breakpoint.scss +22 -10
- data/vendor/assets/scss/util/_color.scss +11 -1
- data/vendor/assets/scss/util/_direction.scss +1 -1
- data/vendor/assets/scss/util/_flex.scss +12 -7
- data/vendor/assets/scss/util/_mixins.scss +7 -3
- data/vendor/assets/scss/util/_unit.scss +3 -3
- data/vendor/assets/scss/vendor/normalize.scss +281 -0
- data/vendor/assets/scss/xy-grid/_cell.scss +33 -17
- data/vendor/assets/scss/xy-grid/_classes.scss +31 -11
- data/vendor/assets/scss/xy-grid/_collapse.scss +2 -1
- data/vendor/assets/scss/xy-grid/_frame.scss +2 -1
- data/vendor/assets/scss/xy-grid/_grid.scss +1 -0
- data/vendor/assets/scss/xy-grid/_gutters.scss +1 -1
- data/vendor/assets/scss/xy-grid/_layout.scss +2 -1
- data/vendor/assets/scss/xy-grid/_position.scss +5 -1
- metadata +172 -80
- data/vendor/assets/_vendor/normalize-scss/sass/_normalize.scss +0 -3
- data/vendor/assets/_vendor/normalize-scss/sass/normalize/_import-now.scss +0 -11
- data/vendor/assets/_vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +0 -676
- data/vendor/assets/_vendor/normalize-scss/sass/normalize/_variables.scss +0 -36
- data/vendor/assets/_vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +0 -61
- data/vendor/assets/js/foundation.accordion.js +0 -511
- data/vendor/assets/js/foundation.accordionMenu.js +0 -527
- data/vendor/assets/js/foundation.core.js +0 -860
- data/vendor/assets/js/foundation.drilldown.js +0 -759
- data/vendor/assets/js/foundation.dropdown.js +0 -1151
- data/vendor/assets/js/foundation.dropdownMenu.js +0 -677
- data/vendor/assets/js/foundation.equalizer.js +0 -542
- data/vendor/assets/js/foundation.interchange.js +0 -399
- data/vendor/assets/js/foundation.magellan.js +0 -449
- data/vendor/assets/js/foundation.offcanvas.js +0 -1054
- data/vendor/assets/js/foundation.orbit.js +0 -767
- data/vendor/assets/js/foundation.responsiveAccordionTabs.js +0 -440
- data/vendor/assets/js/foundation.responsiveMenu.js +0 -362
- data/vendor/assets/js/foundation.responsiveToggle.js +0 -336
- data/vendor/assets/js/foundation.reveal.js +0 -1065
- data/vendor/assets/js/foundation.smoothScroll.js +0 -303
- data/vendor/assets/js/foundation.tabs.js +0 -678
- data/vendor/assets/js/foundation.toggler.js +0 -601
- data/vendor/assets/js/foundation.tooltip.js +0 -1194
- data/vendor/assets/js/foundation.util.imageLoader.js +0 -163
- data/vendor/assets/js/foundation.util.keyboard.js +0 -298
- data/vendor/assets/js/foundation.util.mediaQuery.js +0 -354
- data/vendor/assets/js/foundation.util.motion.js +0 -231
- data/vendor/assets/js/foundation.util.nest.js +0 -181
- data/vendor/assets/js/foundation.util.timer.js +0 -170
- data/vendor/assets/js/foundation.util.touch.js +0 -275
- data/vendor/assets/js/foundation.util.triggers.js +0 -398
- data/vendor/assets/scss/prototype/_typescale.scss +0 -20
@@ -0,0 +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.core\"],\"amd\":\"./foundation.core.plugin\",\"commonjs\":\"./foundation.core.plugin\",\"commonjs2\":\"./foundation.core.plugin\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core.utils\",\"commonjs\":\"./foundation.core.utils\",\"commonjs2\":\"./foundation.core.utils\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.smoothScroll\"],\"amd\":\"./foundation.smoothScroll\",\"commonjs\":\"./foundation.smoothScroll\",\"commonjs2\":\"./foundation.smoothScroll\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/entries/plugins/foundation.magellan.js","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/foundation.magellan.js","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["Foundation","plugin","Magellan","element","options","$element","$","extend","defaults","data","className","_init","calcPoints","id","GetYoDigits","_this","$targets","$links","find","attr","$active","scrollPos","parseInt","window","pageYOffset","_events","body","document","html","documentElement","points","winHeight","Math","round","max","innerHeight","clientHeight","docHeight","scrollHeight","offsetHeight","each","$tar","pt","offset","top","threshold","targetPoint","push","$body","opts","duration","animationDuration","easing","animationEasing","one","deepLinking","location","hash","scrollToLoc","_updateActive","onLoadListener","onLoad","on","reflow","bind","e","preventDefault","arrival","getAttribute","_deepLinkScroll","loc","_inTransition","SmoothScroll","newScrollPos","isScrollingUp","activeIdx","length","visibleLinks","filter","p","i","$oldActive","activeHash","eq","isNewActive","is","isNewHash","removeClass","activeClass","addClass","history","pushState","url","pathname","search","trigger","off","replace","Plugin"],"mappings":"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","file":"foundation.magellan.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.smoothScroll\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.core.plugin\", \"./foundation.core.utils\", \"./foundation.smoothScroll\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.magellan\"] = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.smoothScroll\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.magellan\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__, __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__, __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__, __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 = 8);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__;","import { Foundation } from './foundation.core';\n\nimport { Magellan } from '../../foundation.magellan';\nFoundation.plugin(Magellan, 'Magellan');\n\nexport { Foundation, Magellan };\n","'use strict';\n\n\nimport $ from 'jquery';\nimport { onLoad, GetYoDigits } from './foundation.core.utils';\nimport { Plugin } from './foundation.core.plugin';\nimport { SmoothScroll } from './foundation.smoothScroll';\n\n/**\n * Magellan module.\n * @module foundation.magellan\n * @requires foundation.smoothScroll\n */\n\nclass Magellan extends Plugin {\n /**\n * Creates a new instance of Magellan.\n * @class\n * @name Magellan\n * @fires Magellan#init\n * @param {Object} element - jQuery object to add the trigger to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n _setup(element, options) {\n this.$element = element;\n this.options = $.extend({}, Magellan.defaults, this.$element.data(), options);\n this.className = 'Magellan'; // ie9 back compat\n\n this._init();\n this.calcPoints();\n }\n\n /**\n * Initializes the Magellan plugin and calls functions to get equalizer functioning on load.\n * @private\n */\n _init() {\n var id = this.$element[0].id || GetYoDigits(6, 'magellan');\n var _this = this;\n this.$targets = $('[data-magellan-target]');\n this.$links = this.$element.find('a');\n this.$element.attr({\n 'data-resize': id,\n 'data-scroll': id,\n 'id': id\n });\n this.$active = $();\n this.scrollPos = parseInt(window.pageYOffset, 10);\n\n this._events();\n }\n\n /**\n * Calculates an array of pixel values that are the demarcation lines between locations on the page.\n * Can be invoked if new elements are added or the size of a location changes.\n * @function\n */\n calcPoints() {\n var _this = this,\n body = document.body,\n html = document.documentElement;\n\n this.points = [];\n this.winHeight = Math.round(Math.max(window.innerHeight, html.clientHeight));\n this.docHeight = Math.round(Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight));\n\n this.$targets.each(function(){\n var $tar = $(this),\n pt = Math.round($tar.offset().top - _this.options.threshold);\n $tar.targetPoint = pt;\n _this.points.push(pt);\n });\n }\n\n /**\n * Initializes events for Magellan.\n * @private\n */\n _events() {\n var _this = this,\n $body = $('html, body'),\n opts = {\n duration: _this.options.animationDuration,\n easing: _this.options.animationEasing\n };\n\n $(window).one('load', function(){\n if(_this.options.deepLinking){\n if(location.hash){\n _this.scrollToLoc(location.hash);\n }\n }\n _this.calcPoints();\n _this._updateActive();\n });\n\n _this.onLoadListener = onLoad($(window), function () {\n _this.$element\n .on({\n 'resizeme.zf.trigger': _this.reflow.bind(_this),\n 'scrollme.zf.trigger': _this._updateActive.bind(_this)\n })\n .on('click.zf.magellan', 'a[href^=\"#\"]', function (e) {\n e.preventDefault();\n var arrival = this.getAttribute('href');\n _this.scrollToLoc(arrival);\n });\n });\n\n this._deepLinkScroll = function(e) {\n if(_this.options.deepLinking) {\n _this.scrollToLoc(window.location.hash);\n }\n };\n\n $(window).on('hashchange', this._deepLinkScroll);\n }\n\n /**\n * Function to scroll to a given location on the page.\n * @param {String} loc - a properly formatted jQuery id selector. Example: '#foo'\n * @function\n */\n scrollToLoc(loc) {\n this._inTransition = true;\n var _this = this;\n\n var options = {\n animationEasing: this.options.animationEasing,\n animationDuration: this.options.animationDuration,\n threshold: this.options.threshold,\n offset: this.options.offset\n };\n\n SmoothScroll.scrollToLoc(loc, options, function() {\n _this._inTransition = false;\n })\n }\n\n /**\n * Calls necessary functions to update Magellan upon DOM change\n * @function\n */\n reflow() {\n this.calcPoints();\n this._updateActive();\n }\n\n /**\n * Updates the visibility of an active location link, and updates the url hash for the page, if deepLinking enabled.\n * @private\n * @function\n * @fires Magellan#update\n */\n _updateActive(/*evt, elem, scrollPos*/) {\n if(this._inTransition) return;\n\n const newScrollPos = parseInt(window.pageYOffset, 10);\n const isScrollingUp = this.scrollPos > newScrollPos;\n this.scrollPos = newScrollPos;\n\n let activeIdx;\n // Before the first point: no link\n if(newScrollPos < this.points[0]){ /* do nothing */ }\n // At the bottom of the page: last link\n else if(newScrollPos + this.winHeight === this.docHeight){ activeIdx = this.points.length - 1; }\n // Otherwhise, use the last visible link\n else{\n const visibleLinks = this.points.filter((p, i) => {\n return (p - this.options.offset - (isScrollingUp ? this.options.threshold : 0)) <= newScrollPos;\n });\n activeIdx = visibleLinks.length ? visibleLinks.length - 1 : 0;\n }\n\n // Get the new active link\n const $oldActive = this.$active;\n let activeHash = '';\n if(typeof activeIdx !== 'undefined'){\n this.$active = this.$links.filter('[href=\"#' + this.$targets.eq(activeIdx).data('magellan-target') + '\"]');\n if (this.$active.length) activeHash = this.$active[0].getAttribute('href');\n }else{\n this.$active = $();\n }\n const isNewActive = !(!this.$active.length && !$oldActive.length) && !this.$active.is($oldActive);\n const isNewHash = activeHash !== window.location.hash;\n\n // Update the active link element\n if(isNewActive) {\n $oldActive.removeClass(this.options.activeClass);\n this.$active.addClass(this.options.activeClass);\n }\n\n // Update the hash (it may have changed with the same active link)\n if(this.options.deepLinking && isNewHash){\n if(window.history.pushState){\n // Set or remove the hash (see: https://stackoverflow.com/a/5298684/4317384\n const url = activeHash ? activeHash : window.location.pathname + window.location.search;\n window.history.pushState(null, null, url);\n }else{\n window.location.hash = activeHash;\n }\n }\n\n if (isNewActive) {\n /**\n * Fires when magellan is finished updating to the new active element.\n * @event Magellan#update\n */\n \tthis.$element.trigger('update.zf.magellan', [this.$active]);\n\t }\n }\n\n /**\n * Destroys an instance of Magellan and resets the url of the window.\n * @function\n */\n _destroy() {\n this.$element.off('.zf.trigger .zf.magellan')\n .find(`.${this.options.activeClass}`).removeClass(this.options.activeClass);\n\n if(this.options.deepLinking){\n var hash = this.$active[0].getAttribute('href');\n window.location.hash.replace(hash, '');\n }\n\n $(window).off('hashchange', this._deepLinkScroll)\n if (this.onLoadListener) $(window).off(this.onLoadListener);\n }\n}\n\n/**\n * Default settings for plugin\n */\nMagellan.defaults = {\n /**\n * Amount of time, in ms, the animated scrolling should take between locations.\n * @option\n * @type {number}\n * @default 500\n */\n animationDuration: 500,\n /**\n * Animation style to use when scrolling between locations. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @default 'linear'\n * @see {@link https://api.jquery.com/animate|Jquery animate}\n */\n animationEasing: 'linear',\n /**\n * Number of pixels to use as a marker for location changes.\n * @option\n * @type {number}\n * @default 50\n */\n threshold: 50,\n /**\n * Class applied to the active locations link on the magellan container.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n activeClass: 'is-active',\n /**\n * Allows the script to manipulate the url of the current page, and if supported, alter the history.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinking: false,\n /**\n * Number of pixels to offset the scroll of the page on item click if using a sticky nav bar.\n * @option\n * @type {number}\n * @default 0\n */\n offset: 0\n}\n\nexport {Magellan};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"],"sourceRoot":""}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n(require("./foundation.core"),require("./foundation.core.plugin"),require("./foundation.core.utils"),require("./foundation.smoothScroll"),require("jquery")):"function"==typeof define&&define.amd?define(["./foundation.core","./foundation.core.plugin","./foundation.core.utils","./foundation.smoothScroll","jquery"],n):"object"==typeof exports?exports["foundation.magellan"]=n(require("./foundation.core"),require("./foundation.core.plugin"),require("./foundation.core.utils"),require("./foundation.smoothScroll"),require("jquery")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__["foundation.magellan"]=n(t.__FOUNDATION_EXTERNAL__["foundation.core"],t.__FOUNDATION_EXTERNAL__["foundation.core"],t.__FOUNDATION_EXTERNAL__["foundation.core"],t.__FOUNDATION_EXTERNAL__["foundation.smoothScroll"],t.jQuery))}(window,function(e,o,i,r,a){return function(e){var o={};function i(t){if(o[t])return o[t].exports;var n=o[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,i),n.l=!0,n.exports}return i.m=e,i.c=o,i.d=function(t,n,e){i.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:e})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(n,t){if(1&t&&(n=i(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var e=Object.create(null);if(i.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var o in n)i.d(e,o,function(t){return n[t]}.bind(null,o));return e},i.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(n,"a",n),n},i.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},i.p="",i(i.s=8)}({"./foundation.core":function(t,n){t.exports=e},"./foundation.core.plugin":function(t,n){t.exports=o},"./foundation.core.utils":function(t,n){t.exports=i},"./foundation.smoothScroll":function(t,n){t.exports=r},"./js/entries/plugins/foundation.magellan.js":function(t,n,e){"use strict";e.r(n);var o=e("./foundation.core");e.d(n,"Foundation",function(){return o.Foundation});var i=e("./js/foundation.magellan.js");e.d(n,"Magellan",function(){return i.Magellan}),o.Foundation.plugin(i.Magellan,"Magellan")},"./js/foundation.magellan.js":function(t,n,e){"use strict";e.r(n),e.d(n,"Magellan",function(){return d});var o=e("jquery"),c=e.n(o),r=e("./foundation.core.utils"),a=e("./foundation.core.plugin"),s=e("./foundation.smoothScroll");function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function u(t,n){return!n||"object"!==i(n)&&"function"!=typeof n?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):n}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,n){return(h=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}var d=function(t){function e(){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),u(this,f(e).apply(this,arguments))}var n,o,i;return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&h(t,n)}(e,a["Plugin"]),n=e,(o=[{key:"_setup",value:function(t,n){this.$element=t,this.options=c.a.extend({},e.defaults,this.$element.data(),n),this.className="Magellan",this._init(),this.calcPoints()}},{key:"_init",value:function(){var t=this.$element[0].id||Object(r.GetYoDigits)(6,"magellan");this.$targets=c()("[data-magellan-target]"),this.$links=this.$element.find("a"),this.$element.attr({"data-resize":t,"data-scroll":t,id:t}),this.$active=c()(),this.scrollPos=parseInt(window.pageYOffset,10),this._events()}},{key:"calcPoints",value:function(){var e=this,t=document.body,n=document.documentElement;this.points=[],this.winHeight=Math.round(Math.max(window.innerHeight,n.clientHeight)),this.docHeight=Math.round(Math.max(t.scrollHeight,t.offsetHeight,n.clientHeight,n.scrollHeight,n.offsetHeight)),this.$targets.each(function(){var t=c()(this),n=Math.round(t.offset().top-e.options.threshold);t.targetPoint=n,e.points.push(n)})}},{key:"_events",value:function(){var e=this;c()("html, body"),e.options.animationDuration,e.options.animationEasing;c()(window).one("load",function(){e.options.deepLinking&&location.hash&&e.scrollToLoc(location.hash),e.calcPoints(),e._updateActive()}),e.onLoadListener=Object(r.onLoad)(c()(window),function(){e.$element.on({"resizeme.zf.trigger":e.reflow.bind(e),"scrollme.zf.trigger":e._updateActive.bind(e)}).on("click.zf.magellan",'a[href^="#"]',function(t){t.preventDefault();var n=this.getAttribute("href");e.scrollToLoc(n)})}),this._deepLinkScroll=function(t){e.options.deepLinking&&e.scrollToLoc(window.location.hash)},c()(window).on("hashchange",this._deepLinkScroll)}},{key:"scrollToLoc",value:function(t){this._inTransition=!0;var n=this,e={animationEasing:this.options.animationEasing,animationDuration:this.options.animationDuration,threshold:this.options.threshold,offset:this.options.offset};s.SmoothScroll.scrollToLoc(t,e,function(){n._inTransition=!1})}},{key:"reflow",value:function(){this.calcPoints(),this._updateActive()}},{key:"_updateActive",value:function(){var e=this;if(!this._inTransition){var t,o=parseInt(window.pageYOffset,10),i=this.scrollPos>o;if((this.scrollPos=o)<this.points[0]);else if(o+this.winHeight===this.docHeight)t=this.points.length-1;else{var n=this.points.filter(function(t,n){return t-e.options.offset-(i?e.options.threshold:0)<=o});t=n.length?n.length-1:0}var r=this.$active,a="";void 0!==t?(this.$active=this.$links.filter('[href="#'+this.$targets.eq(t).data("magellan-target")+'"]'),this.$active.length&&(a=this.$active[0].getAttribute("href"))):this.$active=c()();var s=!(!this.$active.length&&!r.length||this.$active.is(r)),l=a!==window.location.hash;if(s&&(r.removeClass(this.options.activeClass),this.$active.addClass(this.options.activeClass)),this.options.deepLinking&&l)if(window.history.pushState){var u=a||window.location.pathname+window.location.search;window.history.pushState(null,null,u)}else window.location.hash=a;s&&this.$element.trigger("update.zf.magellan",[this.$active])}}},{key:"_destroy",value:function(){if(this.$element.off(".zf.trigger .zf.magellan").find(".".concat(this.options.activeClass)).removeClass(this.options.activeClass),this.options.deepLinking){var t=this.$active[0].getAttribute("href");window.location.hash.replace(t,"")}c()(window).off("hashchange",this._deepLinkScroll),this.onLoadListener&&c()(window).off(this.onLoadListener)}}])&&l(n.prototype,o),i&&l(n,i),e}();d.defaults={animationDuration:500,animationEasing:"linear",threshold:50,activeClass:"is-active",deepLinking:!1,offset:0}},8:function(t,n,e){t.exports=e("./js/entries/plugins/foundation.magellan.js")},jquery:function(t,n){t.exports=a}})});
|
2
|
+
//# sourceMappingURL=foundation.magellan.min.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["foundation.magellan.min.js"],"names":["root","factory","exports","module","require","define","amd","window","__WEBPACK_EXTERNAL_MODULE__foundation_core__","__WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__","__WEBPACK_EXTERNAL_MODULE__foundation_core_utils__","__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__","__WEBPACK_EXTERNAL_MODULE_jquery__","modules","installedModules","__webpack_require__","moduleId","i","l","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","./foundation.core","./foundation.core.plugin","./foundation.core.utils","./foundation.smoothScroll","./js/entries/plugins/foundation.magellan.js","__webpack_exports__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__","plugin","./js/foundation.magellan.js","Magellan","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__","_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_3__","_typeof","obj","iterator","constructor","_defineProperties","target","props","length","descriptor","configurable","writable","_possibleConstructorReturn","self","ReferenceError","_assertThisInitialized","_getPrototypeOf","setPrototypeOf","getPrototypeOf","__proto__","_setPrototypeOf","_Plugin","instance","Constructor","TypeError","_classCallCheck","this","apply","arguments","protoProps","staticProps","subClass","superClass","_inherits","element","options","$element","a","extend","defaults","data","className","_init","calcPoints","id","$targets","$links","find","attr","data-resize","data-scroll","$active","scrollPos","parseInt","pageYOffset","_events","_this","body","document","html","documentElement","points","winHeight","Math","round","max","innerHeight","clientHeight","docHeight","scrollHeight","offsetHeight","each","$tar","pt","offset","top","threshold","targetPoint","push","animationDuration","animationEasing","one","deepLinking","location","hash","scrollToLoc","_updateActive","onLoadListener","on","resizeme.zf.trigger","reflow","scrollme.zf.trigger","e","preventDefault","arrival","getAttribute","_deepLinkScroll","loc","_inTransition","_this2","activeIdx","newScrollPos","isScrollingUp","visibleLinks","filter","$oldActive","activeHash","eq","isNewActive","is","isNewHash","removeClass","activeClass","addClass","history","pushState","url","pathname","search","trigger","off","concat","replace","8","jquery"],"mappings":"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","file":"foundation.magellan.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.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.smoothScroll\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.core.plugin\", \"./foundation.core.utils\", \"./foundation.smoothScroll\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.magellan\"] = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.smoothScroll\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.magellan\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__, __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__, __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \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 = 8);\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/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.core.plugin\":\n/*!*************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core.plugin\",\"commonjs\":\"./foundation.core.plugin\",\"commonjs2\":\"./foundation.core.plugin\"} ***!\n \\*************************************************************************************************************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__;\n\n/***/ }),\n\n/***/ \"./foundation.core.utils\":\n/*!**********************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core.utils\",\"commonjs\":\"./foundation.core.utils\",\"commonjs2\":\"./foundation.core.utils\"} ***!\n \\**********************************************************************************************************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__;\n\n/***/ }),\n\n/***/ \"./foundation.smoothScroll\":\n/*!************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.smoothScroll\"],\"amd\":\"./foundation.smoothScroll\",\"commonjs\":\"./foundation.smoothScroll\",\"commonjs2\":\"./foundation.smoothScroll\"} ***!\n \\************************************************************************************************************************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.magellan.js\":\n/*!***************************************************!*\\\n !*** ./js/entries/plugins/foundation.magellan.js ***!\n \\***************************************************/\n/*! exports provided: Foundation, Magellan */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\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 reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.magellan */ \"./js/foundation.magellan.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Magellan\", function() { return _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"], 'Magellan');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.magellan.js\":\n/*!***********************************!*\\\n !*** ./js/foundation.magellan.js ***!\n \\***********************************/\n/*! exports provided: Magellan */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Magellan\", function() { return Magellan; });\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.utils\");\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_core_plugin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core.plugin\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.smoothScroll */ \"./foundation.smoothScroll\");\n/* harmony import */ var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_3__);\n\n\nfunction _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); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _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); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n/**\n * Magellan module.\n * @module foundation.magellan\n * @requires foundation.smoothScroll\n */\n\nvar Magellan =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Magellan, _Plugin);\n\n function Magellan() {\n _classCallCheck(this, Magellan);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Magellan).apply(this, arguments));\n }\n\n _createClass(Magellan, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of Magellan.\n * @class\n * @name Magellan\n * @fires Magellan#init\n * @param {Object} element - jQuery object to add the trigger to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Magellan.defaults, this.$element.data(), options);\n this.className = 'Magellan'; // ie9 back compat\n\n this._init();\n\n this.calcPoints();\n }\n /**\n * Initializes the Magellan plugin and calls functions to get equalizer functioning on load.\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var id = this.$element[0].id || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, 'magellan');\n\n var _this = this;\n\n this.$targets = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-magellan-target]');\n this.$links = this.$element.find('a');\n this.$element.attr({\n 'data-resize': id,\n 'data-scroll': id,\n 'id': id\n });\n this.$active = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.scrollPos = parseInt(window.pageYOffset, 10);\n\n this._events();\n }\n /**\n * Calculates an array of pixel values that are the demarcation lines between locations on the page.\n * Can be invoked if new elements are added or the size of a location changes.\n * @function\n */\n\n }, {\n key: \"calcPoints\",\n value: function calcPoints() {\n var _this = this,\n body = document.body,\n html = document.documentElement;\n\n this.points = [];\n this.winHeight = Math.round(Math.max(window.innerHeight, html.clientHeight));\n this.docHeight = Math.round(Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight));\n this.$targets.each(function () {\n var $tar = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n pt = Math.round($tar.offset().top - _this.options.threshold);\n $tar.targetPoint = pt;\n\n _this.points.push(pt);\n });\n }\n /**\n * Initializes events for Magellan.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this,\n $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body'),\n opts = {\n duration: _this.options.animationDuration,\n easing: _this.options.animationEasing\n };\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).one('load', function () {\n if (_this.options.deepLinking) {\n if (location.hash) {\n _this.scrollToLoc(location.hash);\n }\n }\n\n _this.calcPoints();\n\n _this._updateActive();\n });\n _this.onLoadListener = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n _this.$element.on({\n 'resizeme.zf.trigger': _this.reflow.bind(_this),\n 'scrollme.zf.trigger': _this._updateActive.bind(_this)\n }).on('click.zf.magellan', 'a[href^=\"#\"]', function (e) {\n e.preventDefault();\n var arrival = this.getAttribute('href');\n\n _this.scrollToLoc(arrival);\n });\n });\n\n this._deepLinkScroll = function (e) {\n if (_this.options.deepLinking) {\n _this.scrollToLoc(window.location.hash);\n }\n };\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('hashchange', this._deepLinkScroll);\n }\n /**\n * Function to scroll to a given location on the page.\n * @param {String} loc - a properly formatted jQuery id selector. Example: '#foo'\n * @function\n */\n\n }, {\n key: \"scrollToLoc\",\n value: function scrollToLoc(loc) {\n this._inTransition = true;\n\n var _this = this;\n\n var options = {\n animationEasing: this.options.animationEasing,\n animationDuration: this.options.animationDuration,\n threshold: this.options.threshold,\n offset: this.options.offset\n };\n _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_3__[\"SmoothScroll\"].scrollToLoc(loc, options, function () {\n _this._inTransition = false;\n });\n }\n /**\n * Calls necessary functions to update Magellan upon DOM change\n * @function\n */\n\n }, {\n key: \"reflow\",\n value: function reflow() {\n this.calcPoints();\n\n this._updateActive();\n }\n /**\n * Updates the visibility of an active location link, and updates the url hash for the page, if deepLinking enabled.\n * @private\n * @function\n * @fires Magellan#update\n */\n\n }, {\n key: \"_updateActive\",\n value: function _updateActive()\n /*evt, elem, scrollPos*/\n {\n var _this2 = this;\n\n if (this._inTransition) return;\n var newScrollPos = parseInt(window.pageYOffset, 10);\n var isScrollingUp = this.scrollPos > newScrollPos;\n this.scrollPos = newScrollPos;\n var activeIdx; // Before the first point: no link\n\n if (newScrollPos < this.points[0]) {}\n /* do nothing */\n // At the bottom of the page: last link\n else if (newScrollPos + this.winHeight === this.docHeight) {\n activeIdx = this.points.length - 1;\n } // Otherwhise, use the last visible link\n else {\n var visibleLinks = this.points.filter(function (p, i) {\n return p - _this2.options.offset - (isScrollingUp ? _this2.options.threshold : 0) <= newScrollPos;\n });\n activeIdx = visibleLinks.length ? visibleLinks.length - 1 : 0;\n } // Get the new active link\n\n\n var $oldActive = this.$active;\n var activeHash = '';\n\n if (typeof activeIdx !== 'undefined') {\n this.$active = this.$links.filter('[href=\"#' + this.$targets.eq(activeIdx).data('magellan-target') + '\"]');\n if (this.$active.length) activeHash = this.$active[0].getAttribute('href');\n } else {\n this.$active = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n }\n\n var isNewActive = !(!this.$active.length && !$oldActive.length) && !this.$active.is($oldActive);\n var isNewHash = activeHash !== window.location.hash; // Update the active link element\n\n if (isNewActive) {\n $oldActive.removeClass(this.options.activeClass);\n this.$active.addClass(this.options.activeClass);\n } // Update the hash (it may have changed with the same active link)\n\n\n if (this.options.deepLinking && isNewHash) {\n if (window.history.pushState) {\n // Set or remove the hash (see: https://stackoverflow.com/a/5298684/4317384\n var url = activeHash ? activeHash : window.location.pathname + window.location.search;\n window.history.pushState(null, null, url);\n } else {\n window.location.hash = activeHash;\n }\n }\n\n if (isNewActive) {\n /**\n * Fires when magellan is finished updating to the new active element.\n * @event Magellan#update\n */\n this.$element.trigger('update.zf.magellan', [this.$active]);\n }\n }\n /**\n * Destroys an instance of Magellan and resets the url of the window.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.off('.zf.trigger .zf.magellan').find(\".\".concat(this.options.activeClass)).removeClass(this.options.activeClass);\n\n if (this.options.deepLinking) {\n var hash = this.$active[0].getAttribute('href');\n window.location.hash.replace(hash, '');\n }\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('hashchange', this._deepLinkScroll);\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n }\n }]);\n\n return Magellan;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]);\n/**\n * Default settings for plugin\n */\n\n\nMagellan.defaults = {\n /**\n * Amount of time, in ms, the animated scrolling should take between locations.\n * @option\n * @type {number}\n * @default 500\n */\n animationDuration: 500,\n\n /**\n * Animation style to use when scrolling between locations. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @default 'linear'\n * @see {@link https://api.jquery.com/animate|Jquery animate}\n */\n animationEasing: 'linear',\n\n /**\n * Number of pixels to use as a marker for location changes.\n * @option\n * @type {number}\n * @default 50\n */\n threshold: 50,\n\n /**\n * Class applied to the active locations link on the magellan container.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n activeClass: 'is-active',\n\n /**\n * Allows the script to manipulate the url of the current page, and if supported, alter the history.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinking: false,\n\n /**\n * Number of pixels to offset the scroll of the page on item click if using a sticky nav bar.\n * @option\n * @type {number}\n * @default 0\n */\n offset: 0\n};\n\n\n/***/ }),\n\n/***/ 8:\n/*!*********************************************************!*\\\n !*** multi ./js/entries/plugins/foundation.magellan.js ***!\n \\*********************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/ncoden/Documents/Documents/Projects/Programmation/Web/2016/Foundation/foundation-sites/js/entries/plugins/foundation.magellan.js */\"./js/entries/plugins/foundation.magellan.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ });\n});\n//# sourceMappingURL=foundation.magellan.js.map"]}
|
@@ -0,0 +1,1164 @@
|
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
2
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
3
|
+
module.exports = factory(require("./foundation.core.utils"), require("./foundation.core"), require("jquery"), require("./foundation.util.keyboard"), require("./foundation.util.mediaQuery"), require("./foundation.core.plugin"), require("./foundation.util.motion"));
|
4
|
+
else if(typeof define === 'function' && define.amd)
|
5
|
+
define(["./foundation.core.utils", "./foundation.core", "jquery", "./foundation.util.keyboard", "./foundation.util.mediaQuery", "./foundation.core.plugin", "./foundation.util.motion"], factory);
|
6
|
+
else if(typeof exports === 'object')
|
7
|
+
exports["foundation.offcanvas"] = factory(require("./foundation.core.utils"), require("./foundation.core"), require("jquery"), require("./foundation.util.keyboard"), require("./foundation.util.mediaQuery"), require("./foundation.core.plugin"), require("./foundation.util.motion"));
|
8
|
+
else
|
9
|
+
root["__FOUNDATION_EXTERNAL__"] = root["__FOUNDATION_EXTERNAL__"] || {}, root["__FOUNDATION_EXTERNAL__"]["foundation.offcanvas"] = factory(root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["jQuery"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.keyboard"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.mediaQuery"], root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.motion"]);
|
10
|
+
})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core_utils__, __WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__) {
|
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 = 9);
|
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.core.plugin":
|
111
|
+
/*!*************************************************************************************************************************************************************************************!*\
|
112
|
+
!*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.core"],"amd":"./foundation.core.plugin","commonjs":"./foundation.core.plugin","commonjs2":"./foundation.core.plugin"} ***!
|
113
|
+
\*************************************************************************************************************************************************************************************/
|
114
|
+
/*! no static exports found */
|
115
|
+
/***/ (function(module, exports) {
|
116
|
+
|
117
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__;
|
118
|
+
|
119
|
+
/***/ }),
|
120
|
+
|
121
|
+
/***/ "./foundation.core.utils":
|
122
|
+
/*!**********************************************************************************************************************************************************************************!*\
|
123
|
+
!*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.core"],"amd":"./foundation.core.utils","commonjs":"./foundation.core.utils","commonjs2":"./foundation.core.utils"} ***!
|
124
|
+
\**********************************************************************************************************************************************************************************/
|
125
|
+
/*! no static exports found */
|
126
|
+
/***/ (function(module, exports) {
|
127
|
+
|
128
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__;
|
129
|
+
|
130
|
+
/***/ }),
|
131
|
+
|
132
|
+
/***/ "./foundation.util.keyboard":
|
133
|
+
/*!****************************************************************************************************************************************************************************************************!*\
|
134
|
+
!*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.keyboard"],"amd":"./foundation.util.keyboard","commonjs":"./foundation.util.keyboard","commonjs2":"./foundation.util.keyboard"} ***!
|
135
|
+
\****************************************************************************************************************************************************************************************************/
|
136
|
+
/*! no static exports found */
|
137
|
+
/***/ (function(module, exports) {
|
138
|
+
|
139
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;
|
140
|
+
|
141
|
+
/***/ }),
|
142
|
+
|
143
|
+
/***/ "./foundation.util.mediaQuery":
|
144
|
+
/*!************************************************************************************************************************************************************************************************************!*\
|
145
|
+
!*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.mediaQuery"],"amd":"./foundation.util.mediaQuery","commonjs":"./foundation.util.mediaQuery","commonjs2":"./foundation.util.mediaQuery"} ***!
|
146
|
+
\************************************************************************************************************************************************************************************************************/
|
147
|
+
/*! no static exports found */
|
148
|
+
/***/ (function(module, exports) {
|
149
|
+
|
150
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;
|
151
|
+
|
152
|
+
/***/ }),
|
153
|
+
|
154
|
+
/***/ "./foundation.util.motion":
|
155
|
+
/*!********************************************************************************************************************************************************************************************!*\
|
156
|
+
!*** external {"root":["__FOUNDATION_EXTERNAL__","foundation.util.motion"],"amd":"./foundation.util.motion","commonjs":"./foundation.util.motion","commonjs2":"./foundation.util.motion"} ***!
|
157
|
+
\********************************************************************************************************************************************************************************************/
|
158
|
+
/*! no static exports found */
|
159
|
+
/***/ (function(module, exports) {
|
160
|
+
|
161
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;
|
162
|
+
|
163
|
+
/***/ }),
|
164
|
+
|
165
|
+
/***/ "./js/entries/plugins/foundation.offcanvas.js":
|
166
|
+
/*!****************************************************!*\
|
167
|
+
!*** ./js/entries/plugins/foundation.offcanvas.js ***!
|
168
|
+
\****************************************************/
|
169
|
+
/*! exports provided: Foundation, OffCanvas */
|
170
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
171
|
+
|
172
|
+
"use strict";
|
173
|
+
__webpack_require__.r(__webpack_exports__);
|
174
|
+
/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ "./foundation.core");
|
175
|
+
/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);
|
176
|
+
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Foundation", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"]; });
|
177
|
+
|
178
|
+
/* harmony import */ var _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.offcanvas */ "./js/foundation.offcanvas.js");
|
179
|
+
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "OffCanvas", function() { return _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__["OffCanvas"]; });
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
_foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"].plugin(_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__["OffCanvas"], 'OffCanvas');
|
184
|
+
|
185
|
+
|
186
|
+
/***/ }),
|
187
|
+
|
188
|
+
/***/ "./js/foundation.offcanvas.js":
|
189
|
+
/*!************************************!*\
|
190
|
+
!*** ./js/foundation.offcanvas.js ***!
|
191
|
+
\************************************/
|
192
|
+
/*! exports provided: OffCanvas */
|
193
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
194
|
+
|
195
|
+
"use strict";
|
196
|
+
__webpack_require__.r(__webpack_exports__);
|
197
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "OffCanvas", function() { return OffCanvas; });
|
198
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
|
199
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
|
200
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ "./foundation.core.utils");
|
201
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);
|
202
|
+
/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ "./foundation.util.keyboard");
|
203
|
+
/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);
|
204
|
+
/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ "./foundation.util.mediaQuery");
|
205
|
+
/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__);
|
206
|
+
/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.core.plugin */ "./foundation.core.plugin");
|
207
|
+
/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_4__);
|
208
|
+
/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.util.triggers */ "./js/foundation.util.triggers.js");
|
209
|
+
|
210
|
+
|
211
|
+
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); }
|
212
|
+
|
213
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
214
|
+
|
215
|
+
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); } }
|
216
|
+
|
217
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
218
|
+
|
219
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
220
|
+
|
221
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
222
|
+
|
223
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
224
|
+
|
225
|
+
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); }
|
226
|
+
|
227
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
/**
|
236
|
+
* OffCanvas module.
|
237
|
+
* @module foundation.offcanvas
|
238
|
+
* @requires foundation.util.keyboard
|
239
|
+
* @requires foundation.util.mediaQuery
|
240
|
+
* @requires foundation.util.triggers
|
241
|
+
*/
|
242
|
+
|
243
|
+
var OffCanvas =
|
244
|
+
/*#__PURE__*/
|
245
|
+
function (_Plugin) {
|
246
|
+
_inherits(OffCanvas, _Plugin);
|
247
|
+
|
248
|
+
function OffCanvas() {
|
249
|
+
_classCallCheck(this, OffCanvas);
|
250
|
+
|
251
|
+
return _possibleConstructorReturn(this, _getPrototypeOf(OffCanvas).apply(this, arguments));
|
252
|
+
}
|
253
|
+
|
254
|
+
_createClass(OffCanvas, [{
|
255
|
+
key: "_setup",
|
256
|
+
|
257
|
+
/**
|
258
|
+
* Creates a new instance of an off-canvas wrapper.
|
259
|
+
* @class
|
260
|
+
* @name OffCanvas
|
261
|
+
* @fires OffCanvas#init
|
262
|
+
* @param {Object} element - jQuery object to initialize.
|
263
|
+
* @param {Object} options - Overrides to the default plugin settings.
|
264
|
+
*/
|
265
|
+
value: function _setup(element, options) {
|
266
|
+
var _this2 = this;
|
267
|
+
|
268
|
+
this.className = 'OffCanvas'; // ie9 back compat
|
269
|
+
|
270
|
+
this.$element = element;
|
271
|
+
this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, OffCanvas.defaults, this.$element.data(), options);
|
272
|
+
this.contentClasses = {
|
273
|
+
base: [],
|
274
|
+
reveal: []
|
275
|
+
};
|
276
|
+
this.$lastTrigger = jquery__WEBPACK_IMPORTED_MODULE_0___default()();
|
277
|
+
this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()();
|
278
|
+
this.position = 'left';
|
279
|
+
this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()();
|
280
|
+
this.nested = !!this.options.nested; // Defines the CSS transition/position classes of the off-canvas content container.
|
281
|
+
|
282
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(['push', 'overlap']).each(function (index, val) {
|
283
|
+
_this2.contentClasses.base.push('has-transition-' + val);
|
284
|
+
});
|
285
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(['left', 'right', 'top', 'bottom']).each(function (index, val) {
|
286
|
+
_this2.contentClasses.base.push('has-position-' + val);
|
287
|
+
|
288
|
+
_this2.contentClasses.reveal.push('has-reveal-' + val);
|
289
|
+
}); // Triggers init is idempotent, just need to make sure it is initialized
|
290
|
+
|
291
|
+
_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__["Triggers"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);
|
292
|
+
|
293
|
+
_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__["MediaQuery"]._init();
|
294
|
+
|
295
|
+
this._init();
|
296
|
+
|
297
|
+
this._events();
|
298
|
+
|
299
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].register('OffCanvas', {
|
300
|
+
'ESCAPE': 'close'
|
301
|
+
});
|
302
|
+
}
|
303
|
+
/**
|
304
|
+
* Initializes the off-canvas wrapper by adding the exit overlay (if needed).
|
305
|
+
* @function
|
306
|
+
* @private
|
307
|
+
*/
|
308
|
+
|
309
|
+
}, {
|
310
|
+
key: "_init",
|
311
|
+
value: function _init() {
|
312
|
+
var id = this.$element.attr('id');
|
313
|
+
this.$element.attr('aria-hidden', 'true'); // Find off-canvas content, either by ID (if specified), by siblings or by closest selector (fallback)
|
314
|
+
|
315
|
+
if (this.options.contentId) {
|
316
|
+
this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()('#' + this.options.contentId);
|
317
|
+
} else if (this.$element.siblings('[data-off-canvas-content]').length) {
|
318
|
+
this.$content = this.$element.siblings('[data-off-canvas-content]').first();
|
319
|
+
} else {
|
320
|
+
this.$content = this.$element.closest('[data-off-canvas-content]').first();
|
321
|
+
}
|
322
|
+
|
323
|
+
if (!this.options.contentId) {
|
324
|
+
// Assume that the off-canvas element is nested if it isn't a sibling of the content
|
325
|
+
this.nested = this.$element.siblings('[data-off-canvas-content]').length === 0;
|
326
|
+
} else if (this.options.contentId && this.options.nested === null) {
|
327
|
+
// Warning if using content ID without setting the nested option
|
328
|
+
// Once the element is nested it is required to work properly in this case
|
329
|
+
console.warn('Remember to use the nested option if using the content ID option!');
|
330
|
+
}
|
331
|
+
|
332
|
+
if (this.nested === true) {
|
333
|
+
// Force transition overlap if nested
|
334
|
+
this.options.transition = 'overlap'; // Remove appropriate classes if already assigned in markup
|
335
|
+
|
336
|
+
this.$element.removeClass('is-transition-push');
|
337
|
+
}
|
338
|
+
|
339
|
+
this.$element.addClass("is-transition-".concat(this.options.transition, " is-closed")); // Find triggers that affect this element and add aria-expanded to them
|
340
|
+
|
341
|
+
this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).find('[data-open="' + id + '"], [data-close="' + id + '"], [data-toggle="' + id + '"]').attr('aria-expanded', 'false').attr('aria-controls', id); // Get position by checking for related CSS class
|
342
|
+
|
343
|
+
this.position = this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\-(left|top|right|bottom)/)[1] : this.position; // Add an overlay over the content if necessary
|
344
|
+
|
345
|
+
if (this.options.contentOverlay === true) {
|
346
|
+
var overlay = document.createElement('div');
|
347
|
+
var overlayPosition = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$element).css("position") === 'fixed' ? 'is-overlay-fixed' : 'is-overlay-absolute';
|
348
|
+
overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);
|
349
|
+
this.$overlay = jquery__WEBPACK_IMPORTED_MODULE_0___default()(overlay);
|
350
|
+
|
351
|
+
if (overlayPosition === 'is-overlay-fixed') {
|
352
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$overlay).insertAfter(this.$element);
|
353
|
+
} else {
|
354
|
+
this.$content.append(this.$overlay);
|
355
|
+
}
|
356
|
+
} // Get the revealOn option from the class.
|
357
|
+
|
358
|
+
|
359
|
+
var revealOnRegExp = new RegExp(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["RegExpEscape"])(this.options.revealClass) + '([^\\s]+)', 'g');
|
360
|
+
var revealOnClass = revealOnRegExp.exec(this.$element[0].className);
|
361
|
+
|
362
|
+
if (revealOnClass) {
|
363
|
+
this.options.isRevealed = true;
|
364
|
+
this.options.revealOn = this.options.revealOn || revealOnClass[1];
|
365
|
+
} // Ensure the `reveal-on-*` class is set.
|
366
|
+
|
367
|
+
|
368
|
+
if (this.options.isRevealed === true && this.options.revealOn) {
|
369
|
+
this.$element.first().addClass("".concat(this.options.revealClass).concat(this.options.revealOn));
|
370
|
+
|
371
|
+
this._setMQChecker();
|
372
|
+
}
|
373
|
+
|
374
|
+
if (this.options.transitionTime) {
|
375
|
+
this.$element.css('transition-duration', this.options.transitionTime);
|
376
|
+
} // Initally remove all transition/position CSS classes from off-canvas content container.
|
377
|
+
|
378
|
+
|
379
|
+
this._removeContentClasses();
|
380
|
+
}
|
381
|
+
/**
|
382
|
+
* Adds event handlers to the off-canvas wrapper and the exit overlay.
|
383
|
+
* @function
|
384
|
+
* @private
|
385
|
+
*/
|
386
|
+
|
387
|
+
}, {
|
388
|
+
key: "_events",
|
389
|
+
value: function _events() {
|
390
|
+
this.$element.off('.zf.trigger .zf.offcanvas').on({
|
391
|
+
'open.zf.trigger': this.open.bind(this),
|
392
|
+
'close.zf.trigger': this.close.bind(this),
|
393
|
+
'toggle.zf.trigger': this.toggle.bind(this),
|
394
|
+
'keydown.zf.offcanvas': this._handleKeyboard.bind(this)
|
395
|
+
});
|
396
|
+
|
397
|
+
if (this.options.closeOnClick === true) {
|
398
|
+
var $target = this.options.contentOverlay ? this.$overlay : this.$content;
|
399
|
+
$target.on({
|
400
|
+
'click.zf.offcanvas': this.close.bind(this)
|
401
|
+
});
|
402
|
+
}
|
403
|
+
}
|
404
|
+
/**
|
405
|
+
* Applies event listener for elements that will reveal at certain breakpoints.
|
406
|
+
* @private
|
407
|
+
*/
|
408
|
+
|
409
|
+
}, {
|
410
|
+
key: "_setMQChecker",
|
411
|
+
value: function _setMQChecker() {
|
412
|
+
var _this = this;
|
413
|
+
|
414
|
+
this.onLoadListener = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["onLoad"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {
|
415
|
+
if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__["MediaQuery"].atLeast(_this.options.revealOn)) {
|
416
|
+
_this.reveal(true);
|
417
|
+
}
|
418
|
+
});
|
419
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {
|
420
|
+
if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__["MediaQuery"].atLeast(_this.options.revealOn)) {
|
421
|
+
_this.reveal(true);
|
422
|
+
} else {
|
423
|
+
_this.reveal(false);
|
424
|
+
}
|
425
|
+
});
|
426
|
+
}
|
427
|
+
/**
|
428
|
+
* Removes the CSS transition/position classes of the off-canvas content container.
|
429
|
+
* Removing the classes is important when another off-canvas gets opened that uses the same content container.
|
430
|
+
* @param {Boolean} hasReveal - true if related off-canvas element is revealed.
|
431
|
+
* @private
|
432
|
+
*/
|
433
|
+
|
434
|
+
}, {
|
435
|
+
key: "_removeContentClasses",
|
436
|
+
value: function _removeContentClasses(hasReveal) {
|
437
|
+
if (typeof hasReveal !== 'boolean') {
|
438
|
+
this.$content.removeClass(this.contentClasses.base.join(' '));
|
439
|
+
} else if (hasReveal === false) {
|
440
|
+
this.$content.removeClass("has-reveal-".concat(this.position));
|
441
|
+
}
|
442
|
+
}
|
443
|
+
/**
|
444
|
+
* Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.
|
445
|
+
* Beforehand any transition/position class gets removed.
|
446
|
+
* @param {Boolean} hasReveal - true if related off-canvas element is revealed.
|
447
|
+
* @private
|
448
|
+
*/
|
449
|
+
|
450
|
+
}, {
|
451
|
+
key: "_addContentClasses",
|
452
|
+
value: function _addContentClasses(hasReveal) {
|
453
|
+
this._removeContentClasses(hasReveal);
|
454
|
+
|
455
|
+
if (typeof hasReveal !== 'boolean') {
|
456
|
+
this.$content.addClass("has-transition-".concat(this.options.transition, " has-position-").concat(this.position));
|
457
|
+
} else if (hasReveal === true) {
|
458
|
+
this.$content.addClass("has-reveal-".concat(this.position));
|
459
|
+
}
|
460
|
+
}
|
461
|
+
/**
|
462
|
+
* Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.
|
463
|
+
* @param {Boolean} isRevealed - true if element should be revealed.
|
464
|
+
* @function
|
465
|
+
*/
|
466
|
+
|
467
|
+
}, {
|
468
|
+
key: "reveal",
|
469
|
+
value: function reveal(isRevealed) {
|
470
|
+
if (isRevealed) {
|
471
|
+
this.close();
|
472
|
+
this.isRevealed = true;
|
473
|
+
this.$element.attr('aria-hidden', 'false');
|
474
|
+
this.$element.off('open.zf.trigger toggle.zf.trigger');
|
475
|
+
this.$element.removeClass('is-closed');
|
476
|
+
} else {
|
477
|
+
this.isRevealed = false;
|
478
|
+
this.$element.attr('aria-hidden', 'true');
|
479
|
+
this.$element.off('open.zf.trigger toggle.zf.trigger').on({
|
480
|
+
'open.zf.trigger': this.open.bind(this),
|
481
|
+
'toggle.zf.trigger': this.toggle.bind(this)
|
482
|
+
});
|
483
|
+
this.$element.addClass('is-closed');
|
484
|
+
}
|
485
|
+
|
486
|
+
this._addContentClasses(isRevealed);
|
487
|
+
}
|
488
|
+
/**
|
489
|
+
* Stops scrolling of the body when offcanvas is open on mobile Safari and other troublesome browsers.
|
490
|
+
* @private
|
491
|
+
*/
|
492
|
+
|
493
|
+
}, {
|
494
|
+
key: "_stopScrolling",
|
495
|
+
value: function _stopScrolling(event) {
|
496
|
+
return false;
|
497
|
+
} // Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios
|
498
|
+
// Only really works for y, not sure how to extend to x or if we need to.
|
499
|
+
|
500
|
+
}, {
|
501
|
+
key: "_recordScrollable",
|
502
|
+
value: function _recordScrollable(event) {
|
503
|
+
var elem = this; // called from event handler context with this as elem
|
504
|
+
// If the element is scrollable (content overflows), then...
|
505
|
+
|
506
|
+
if (elem.scrollHeight !== elem.clientHeight) {
|
507
|
+
// If we're at the top, scroll down one pixel to allow scrolling up
|
508
|
+
if (elem.scrollTop === 0) {
|
509
|
+
elem.scrollTop = 1;
|
510
|
+
} // If we're at the bottom, scroll up one pixel to allow scrolling down
|
511
|
+
|
512
|
+
|
513
|
+
if (elem.scrollTop === elem.scrollHeight - elem.clientHeight) {
|
514
|
+
elem.scrollTop = elem.scrollHeight - elem.clientHeight - 1;
|
515
|
+
}
|
516
|
+
}
|
517
|
+
|
518
|
+
elem.allowUp = elem.scrollTop > 0;
|
519
|
+
elem.allowDown = elem.scrollTop < elem.scrollHeight - elem.clientHeight;
|
520
|
+
elem.lastY = event.originalEvent.pageY;
|
521
|
+
}
|
522
|
+
}, {
|
523
|
+
key: "_stopScrollPropagation",
|
524
|
+
value: function _stopScrollPropagation(event) {
|
525
|
+
var elem = this; // called from event handler context with this as elem
|
526
|
+
|
527
|
+
var up = event.pageY < elem.lastY;
|
528
|
+
var down = !up;
|
529
|
+
elem.lastY = event.pageY;
|
530
|
+
|
531
|
+
if (up && elem.allowUp || down && elem.allowDown) {
|
532
|
+
event.stopPropagation();
|
533
|
+
} else {
|
534
|
+
event.preventDefault();
|
535
|
+
}
|
536
|
+
}
|
537
|
+
/**
|
538
|
+
* Opens the off-canvas menu.
|
539
|
+
* @function
|
540
|
+
* @param {Object} event - Event object passed from listener.
|
541
|
+
* @param {jQuery} trigger - element that triggered the off-canvas to open.
|
542
|
+
* @fires Offcanvas#opened
|
543
|
+
* @todo also trigger 'open' event?
|
544
|
+
*/
|
545
|
+
|
546
|
+
}, {
|
547
|
+
key: "open",
|
548
|
+
value: function open(event, trigger) {
|
549
|
+
if (this.$element.hasClass('is-open') || this.isRevealed) {
|
550
|
+
return;
|
551
|
+
}
|
552
|
+
|
553
|
+
var _this = this;
|
554
|
+
|
555
|
+
if (trigger) {
|
556
|
+
this.$lastTrigger = trigger;
|
557
|
+
}
|
558
|
+
|
559
|
+
if (this.options.forceTo === 'top') {
|
560
|
+
window.scrollTo(0, 0);
|
561
|
+
} else if (this.options.forceTo === 'bottom') {
|
562
|
+
window.scrollTo(0, document.body.scrollHeight);
|
563
|
+
}
|
564
|
+
|
565
|
+
if (this.options.transitionTime && this.options.transition !== 'overlap') {
|
566
|
+
this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);
|
567
|
+
} else {
|
568
|
+
this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');
|
569
|
+
}
|
570
|
+
|
571
|
+
this.$element.addClass('is-open').removeClass('is-closed');
|
572
|
+
this.$triggers.attr('aria-expanded', 'true');
|
573
|
+
this.$element.attr('aria-hidden', 'false');
|
574
|
+
this.$content.addClass('is-open-' + this.position); // If `contentScroll` is set to false, add class and disable scrolling on touch devices.
|
575
|
+
|
576
|
+
if (this.options.contentScroll === false) {
|
577
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);
|
578
|
+
this.$element.on('touchstart', this._recordScrollable);
|
579
|
+
this.$element.on('touchmove', this._stopScrollPropagation);
|
580
|
+
}
|
581
|
+
|
582
|
+
if (this.options.contentOverlay === true) {
|
583
|
+
this.$overlay.addClass('is-visible');
|
584
|
+
}
|
585
|
+
|
586
|
+
if (this.options.closeOnClick === true && this.options.contentOverlay === true) {
|
587
|
+
this.$overlay.addClass('is-closable');
|
588
|
+
}
|
589
|
+
|
590
|
+
if (this.options.autoFocus === true) {
|
591
|
+
this.$element.one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["transitionend"])(this.$element), function () {
|
592
|
+
if (!_this.$element.hasClass('is-open')) {
|
593
|
+
return; // exit if prematurely closed
|
594
|
+
}
|
595
|
+
|
596
|
+
var canvasFocus = _this.$element.find('[data-autofocus]');
|
597
|
+
|
598
|
+
if (canvasFocus.length) {
|
599
|
+
canvasFocus.eq(0).focus();
|
600
|
+
} else {
|
601
|
+
_this.$element.find('a, button').eq(0).focus();
|
602
|
+
}
|
603
|
+
});
|
604
|
+
}
|
605
|
+
|
606
|
+
if (this.options.trapFocus === true) {
|
607
|
+
this.$content.attr('tabindex', '-1');
|
608
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].trapFocus(this.$element);
|
609
|
+
}
|
610
|
+
|
611
|
+
this._addContentClasses();
|
612
|
+
/**
|
613
|
+
* Fires when the off-canvas menu opens.
|
614
|
+
* @event Offcanvas#opened
|
615
|
+
*/
|
616
|
+
|
617
|
+
|
618
|
+
this.$element.trigger('opened.zf.offcanvas');
|
619
|
+
}
|
620
|
+
/**
|
621
|
+
* Closes the off-canvas menu.
|
622
|
+
* @function
|
623
|
+
* @param {Function} cb - optional cb to fire after closure.
|
624
|
+
* @fires Offcanvas#closed
|
625
|
+
*/
|
626
|
+
|
627
|
+
}, {
|
628
|
+
key: "close",
|
629
|
+
value: function close(cb) {
|
630
|
+
if (!this.$element.hasClass('is-open') || this.isRevealed) {
|
631
|
+
return;
|
632
|
+
}
|
633
|
+
|
634
|
+
var _this = this;
|
635
|
+
|
636
|
+
this.$element.removeClass('is-open');
|
637
|
+
this.$element.attr('aria-hidden', 'true')
|
638
|
+
/**
|
639
|
+
* Fires when the off-canvas menu opens.
|
640
|
+
* @event Offcanvas#closed
|
641
|
+
*/
|
642
|
+
.trigger('closed.zf.offcanvas');
|
643
|
+
this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom'); // If `contentScroll` is set to false, remove class and re-enable scrolling on touch devices.
|
644
|
+
|
645
|
+
if (this.options.contentScroll === false) {
|
646
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').removeClass('is-off-canvas-open').off('touchmove', this._stopScrolling);
|
647
|
+
this.$element.off('touchstart', this._recordScrollable);
|
648
|
+
this.$element.off('touchmove', this._stopScrollPropagation);
|
649
|
+
}
|
650
|
+
|
651
|
+
if (this.options.contentOverlay === true) {
|
652
|
+
this.$overlay.removeClass('is-visible');
|
653
|
+
}
|
654
|
+
|
655
|
+
if (this.options.closeOnClick === true && this.options.contentOverlay === true) {
|
656
|
+
this.$overlay.removeClass('is-closable');
|
657
|
+
}
|
658
|
+
|
659
|
+
this.$triggers.attr('aria-expanded', 'false');
|
660
|
+
|
661
|
+
if (this.options.trapFocus === true) {
|
662
|
+
this.$content.removeAttr('tabindex');
|
663
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].releaseFocus(this.$element);
|
664
|
+
} // Listen to transitionEnd and add class when done.
|
665
|
+
|
666
|
+
|
667
|
+
this.$element.one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["transitionend"])(this.$element), function (e) {
|
668
|
+
_this.$element.addClass('is-closed');
|
669
|
+
|
670
|
+
_this._removeContentClasses();
|
671
|
+
});
|
672
|
+
}
|
673
|
+
/**
|
674
|
+
* Toggles the off-canvas menu open or closed.
|
675
|
+
* @function
|
676
|
+
* @param {Object} event - Event object passed from listener.
|
677
|
+
* @param {jQuery} trigger - element that triggered the off-canvas to open.
|
678
|
+
*/
|
679
|
+
|
680
|
+
}, {
|
681
|
+
key: "toggle",
|
682
|
+
value: function toggle(event, trigger) {
|
683
|
+
if (this.$element.hasClass('is-open')) {
|
684
|
+
this.close(event, trigger);
|
685
|
+
} else {
|
686
|
+
this.open(event, trigger);
|
687
|
+
}
|
688
|
+
}
|
689
|
+
/**
|
690
|
+
* Handles keyboard input when detected. When the escape key is pressed, the off-canvas menu closes, and focus is restored to the element that opened the menu.
|
691
|
+
* @function
|
692
|
+
* @private
|
693
|
+
*/
|
694
|
+
|
695
|
+
}, {
|
696
|
+
key: "_handleKeyboard",
|
697
|
+
value: function _handleKeyboard(e) {
|
698
|
+
var _this3 = this;
|
699
|
+
|
700
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].handleKey(e, 'OffCanvas', {
|
701
|
+
close: function close() {
|
702
|
+
_this3.close();
|
703
|
+
|
704
|
+
_this3.$lastTrigger.focus();
|
705
|
+
|
706
|
+
return true;
|
707
|
+
},
|
708
|
+
handled: function handled() {
|
709
|
+
e.stopPropagation();
|
710
|
+
e.preventDefault();
|
711
|
+
}
|
712
|
+
});
|
713
|
+
}
|
714
|
+
/**
|
715
|
+
* Destroys the offcanvas plugin.
|
716
|
+
* @function
|
717
|
+
*/
|
718
|
+
|
719
|
+
}, {
|
720
|
+
key: "_destroy",
|
721
|
+
value: function _destroy() {
|
722
|
+
this.close();
|
723
|
+
this.$element.off('.zf.trigger .zf.offcanvas');
|
724
|
+
this.$overlay.off('.zf.offcanvas');
|
725
|
+
if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);
|
726
|
+
}
|
727
|
+
}]);
|
728
|
+
|
729
|
+
return OffCanvas;
|
730
|
+
}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_4__["Plugin"]);
|
731
|
+
|
732
|
+
OffCanvas.defaults = {
|
733
|
+
/**
|
734
|
+
* Allow the user to click outside of the menu to close it.
|
735
|
+
* @option
|
736
|
+
* @type {boolean}
|
737
|
+
* @default true
|
738
|
+
*/
|
739
|
+
closeOnClick: true,
|
740
|
+
|
741
|
+
/**
|
742
|
+
* Adds an overlay on top of `[data-off-canvas-content]`.
|
743
|
+
* @option
|
744
|
+
* @type {boolean}
|
745
|
+
* @default true
|
746
|
+
*/
|
747
|
+
contentOverlay: true,
|
748
|
+
|
749
|
+
/**
|
750
|
+
* Target an off-canvas content container by ID that may be placed anywhere. If null the closest content container will be taken.
|
751
|
+
* @option
|
752
|
+
* @type {?string}
|
753
|
+
* @default null
|
754
|
+
*/
|
755
|
+
contentId: null,
|
756
|
+
|
757
|
+
/**
|
758
|
+
* Define the off-canvas element is nested in an off-canvas content. This is required when using the contentId option for a nested element.
|
759
|
+
* @option
|
760
|
+
* @type {boolean}
|
761
|
+
* @default null
|
762
|
+
*/
|
763
|
+
nested: null,
|
764
|
+
|
765
|
+
/**
|
766
|
+
* Enable/disable scrolling of the main content when an off canvas panel is open.
|
767
|
+
* @option
|
768
|
+
* @type {boolean}
|
769
|
+
* @default true
|
770
|
+
*/
|
771
|
+
contentScroll: true,
|
772
|
+
|
773
|
+
/**
|
774
|
+
* Amount of time in ms the open and close transition requires. If none selected, pulls from body style.
|
775
|
+
* @option
|
776
|
+
* @type {number}
|
777
|
+
* @default null
|
778
|
+
*/
|
779
|
+
transitionTime: null,
|
780
|
+
|
781
|
+
/**
|
782
|
+
* Type of transition for the offcanvas menu. Options are 'push', 'detached' or 'slide'.
|
783
|
+
* @option
|
784
|
+
* @type {string}
|
785
|
+
* @default push
|
786
|
+
*/
|
787
|
+
transition: 'push',
|
788
|
+
|
789
|
+
/**
|
790
|
+
* Force the page to scroll to top or bottom on open.
|
791
|
+
* @option
|
792
|
+
* @type {?string}
|
793
|
+
* @default null
|
794
|
+
*/
|
795
|
+
forceTo: null,
|
796
|
+
|
797
|
+
/**
|
798
|
+
* Allow the offcanvas to remain open for certain breakpoints.
|
799
|
+
* @option
|
800
|
+
* @type {boolean}
|
801
|
+
* @default false
|
802
|
+
*/
|
803
|
+
isRevealed: false,
|
804
|
+
|
805
|
+
/**
|
806
|
+
* Breakpoint at which to reveal. JS will use a RegExp to target standard classes, if changing classnames, pass your class with the `revealClass` option.
|
807
|
+
* @option
|
808
|
+
* @type {?string}
|
809
|
+
* @default null
|
810
|
+
*/
|
811
|
+
revealOn: null,
|
812
|
+
|
813
|
+
/**
|
814
|
+
* Force focus to the offcanvas on open. If true, will focus the opening trigger on close.
|
815
|
+
* @option
|
816
|
+
* @type {boolean}
|
817
|
+
* @default true
|
818
|
+
*/
|
819
|
+
autoFocus: true,
|
820
|
+
|
821
|
+
/**
|
822
|
+
* Class used to force an offcanvas to remain open. Foundation defaults for this are `reveal-for-large` & `reveal-for-medium`.
|
823
|
+
* @option
|
824
|
+
* @type {string}
|
825
|
+
* @default reveal-for-
|
826
|
+
* @todo improve the regex testing for this.
|
827
|
+
*/
|
828
|
+
revealClass: 'reveal-for-',
|
829
|
+
|
830
|
+
/**
|
831
|
+
* Triggers optional focus trapping when opening an offcanvas. Sets tabindex of [data-off-canvas-content] to -1 for accessibility purposes.
|
832
|
+
* @option
|
833
|
+
* @type {boolean}
|
834
|
+
* @default false
|
835
|
+
*/
|
836
|
+
trapFocus: false
|
837
|
+
};
|
838
|
+
|
839
|
+
|
840
|
+
/***/ }),
|
841
|
+
|
842
|
+
/***/ "./js/foundation.util.triggers.js":
|
843
|
+
/*!****************************************!*\
|
844
|
+
!*** ./js/foundation.util.triggers.js ***!
|
845
|
+
\****************************************/
|
846
|
+
/*! exports provided: Triggers */
|
847
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
848
|
+
|
849
|
+
"use strict";
|
850
|
+
__webpack_require__.r(__webpack_exports__);
|
851
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Triggers", function() { return Triggers; });
|
852
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
|
853
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
|
854
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ "./foundation.core.utils");
|
855
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);
|
856
|
+
/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ "./foundation.util.motion");
|
857
|
+
/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);
|
858
|
+
|
859
|
+
|
860
|
+
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); }
|
861
|
+
|
862
|
+
|
863
|
+
|
864
|
+
|
865
|
+
|
866
|
+
var MutationObserver = function () {
|
867
|
+
var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];
|
868
|
+
|
869
|
+
for (var i = 0; i < prefixes.length; i++) {
|
870
|
+
if ("".concat(prefixes[i], "MutationObserver") in window) {
|
871
|
+
return window["".concat(prefixes[i], "MutationObserver")];
|
872
|
+
}
|
873
|
+
}
|
874
|
+
|
875
|
+
return false;
|
876
|
+
}();
|
877
|
+
|
878
|
+
var triggers = function triggers(el, type) {
|
879
|
+
el.data(type).split(' ').forEach(function (id) {
|
880
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler']("".concat(type, ".zf.trigger"), [el]);
|
881
|
+
});
|
882
|
+
};
|
883
|
+
|
884
|
+
var Triggers = {
|
885
|
+
Listeners: {
|
886
|
+
Basic: {},
|
887
|
+
Global: {}
|
888
|
+
},
|
889
|
+
Initializers: {}
|
890
|
+
};
|
891
|
+
Triggers.Listeners.Basic = {
|
892
|
+
openListener: function openListener() {
|
893
|
+
triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');
|
894
|
+
},
|
895
|
+
closeListener: function closeListener() {
|
896
|
+
var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');
|
897
|
+
|
898
|
+
if (id) {
|
899
|
+
triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');
|
900
|
+
} else {
|
901
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');
|
902
|
+
}
|
903
|
+
},
|
904
|
+
toggleListener: function toggleListener() {
|
905
|
+
var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');
|
906
|
+
|
907
|
+
if (id) {
|
908
|
+
triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');
|
909
|
+
} else {
|
910
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');
|
911
|
+
}
|
912
|
+
},
|
913
|
+
closeableListener: function closeableListener(e) {
|
914
|
+
e.stopPropagation();
|
915
|
+
var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable');
|
916
|
+
|
917
|
+
if (animation !== '') {
|
918
|
+
_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__["Motion"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {
|
919
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');
|
920
|
+
});
|
921
|
+
} else {
|
922
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');
|
923
|
+
}
|
924
|
+
},
|
925
|
+
toggleFocusListener: function toggleFocusListener() {
|
926
|
+
var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');
|
927
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);
|
928
|
+
}
|
929
|
+
}; // Elements with [data-open] will reveal a plugin that supports it when clicked.
|
930
|
+
|
931
|
+
Triggers.Initializers.addOpenListener = function ($elem) {
|
932
|
+
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);
|
933
|
+
$elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);
|
934
|
+
}; // Elements with [data-close] will close a plugin that supports it when clicked.
|
935
|
+
// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.
|
936
|
+
|
937
|
+
|
938
|
+
Triggers.Initializers.addCloseListener = function ($elem) {
|
939
|
+
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);
|
940
|
+
$elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);
|
941
|
+
}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.
|
942
|
+
|
943
|
+
|
944
|
+
Triggers.Initializers.addToggleListener = function ($elem) {
|
945
|
+
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);
|
946
|
+
$elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);
|
947
|
+
}; // Elements with [data-closable] will respond to close.zf.trigger events.
|
948
|
+
|
949
|
+
|
950
|
+
Triggers.Initializers.addCloseableListener = function ($elem) {
|
951
|
+
$elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);
|
952
|
+
$elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);
|
953
|
+
}; // Elements with [data-toggle-focus] will respond to coming in and out of focus
|
954
|
+
|
955
|
+
|
956
|
+
Triggers.Initializers.addToggleFocusListener = function ($elem) {
|
957
|
+
$elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);
|
958
|
+
$elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);
|
959
|
+
}; // More Global/complex listeners and triggers
|
960
|
+
|
961
|
+
|
962
|
+
Triggers.Listeners.Global = {
|
963
|
+
resizeListener: function resizeListener($nodes) {
|
964
|
+
if (!MutationObserver) {
|
965
|
+
//fallback for IE 9
|
966
|
+
$nodes.each(function () {
|
967
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');
|
968
|
+
});
|
969
|
+
} //trigger all listening elements and signal a resize event
|
970
|
+
|
971
|
+
|
972
|
+
$nodes.attr('data-events', "resize");
|
973
|
+
},
|
974
|
+
scrollListener: function scrollListener($nodes) {
|
975
|
+
if (!MutationObserver) {
|
976
|
+
//fallback for IE 9
|
977
|
+
$nodes.each(function () {
|
978
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');
|
979
|
+
});
|
980
|
+
} //trigger all listening elements and signal a scroll event
|
981
|
+
|
982
|
+
|
983
|
+
$nodes.attr('data-events', "scroll");
|
984
|
+
},
|
985
|
+
closeMeListener: function closeMeListener(e, pluginId) {
|
986
|
+
var plugin = e.namespace.split('.')[0];
|
987
|
+
var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()("[data-".concat(plugin, "]")).not("[data-yeti-box=\"".concat(pluginId, "\"]"));
|
988
|
+
plugins.each(function () {
|
989
|
+
var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);
|
990
|
+
|
991
|
+
_this.triggerHandler('close.zf.trigger', [_this]);
|
992
|
+
});
|
993
|
+
} // Global, parses whole document.
|
994
|
+
|
995
|
+
};
|
996
|
+
|
997
|
+
Triggers.Initializers.addClosemeListener = function (pluginName) {
|
998
|
+
var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),
|
999
|
+
plugNames = ['dropdown', 'tooltip', 'reveal'];
|
1000
|
+
|
1001
|
+
if (pluginName) {
|
1002
|
+
if (typeof pluginName === 'string') {
|
1003
|
+
plugNames.push(pluginName);
|
1004
|
+
} else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {
|
1005
|
+
plugNames.concat(pluginName);
|
1006
|
+
} else {
|
1007
|
+
console.error('Plugin names must be strings');
|
1008
|
+
}
|
1009
|
+
}
|
1010
|
+
|
1011
|
+
if (yetiBoxes.length) {
|
1012
|
+
var listeners = plugNames.map(function (name) {
|
1013
|
+
return "closeme.zf.".concat(name);
|
1014
|
+
}).join(' ');
|
1015
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);
|
1016
|
+
}
|
1017
|
+
};
|
1018
|
+
|
1019
|
+
function debounceGlobalListener(debounce, trigger, listener) {
|
1020
|
+
var timer,
|
1021
|
+
args = Array.prototype.slice.call(arguments, 3);
|
1022
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {
|
1023
|
+
if (timer) {
|
1024
|
+
clearTimeout(timer);
|
1025
|
+
}
|
1026
|
+
|
1027
|
+
timer = setTimeout(function () {
|
1028
|
+
listener.apply(null, args);
|
1029
|
+
}, debounce || 10); //default time to emit scroll event
|
1030
|
+
});
|
1031
|
+
}
|
1032
|
+
|
1033
|
+
Triggers.Initializers.addResizeListener = function (debounce) {
|
1034
|
+
var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');
|
1035
|
+
|
1036
|
+
if ($nodes.length) {
|
1037
|
+
debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);
|
1038
|
+
}
|
1039
|
+
};
|
1040
|
+
|
1041
|
+
Triggers.Initializers.addScrollListener = function (debounce) {
|
1042
|
+
var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');
|
1043
|
+
|
1044
|
+
if ($nodes.length) {
|
1045
|
+
debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);
|
1046
|
+
}
|
1047
|
+
};
|
1048
|
+
|
1049
|
+
Triggers.Initializers.addMutationEventsListener = function ($elem) {
|
1050
|
+
if (!MutationObserver) {
|
1051
|
+
return false;
|
1052
|
+
}
|
1053
|
+
|
1054
|
+
var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback
|
1055
|
+
|
1056
|
+
var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {
|
1057
|
+
var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type
|
1058
|
+
|
1059
|
+
switch (mutationRecordsList[0].type) {
|
1060
|
+
case "attributes":
|
1061
|
+
if ($target.attr("data-events") === "scroll" && mutationRecordsList[0].attributeName === "data-events") {
|
1062
|
+
$target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);
|
1063
|
+
}
|
1064
|
+
|
1065
|
+
if ($target.attr("data-events") === "resize" && mutationRecordsList[0].attributeName === "data-events") {
|
1066
|
+
$target.triggerHandler('resizeme.zf.trigger', [$target]);
|
1067
|
+
}
|
1068
|
+
|
1069
|
+
if (mutationRecordsList[0].attributeName === "style") {
|
1070
|
+
$target.closest("[data-mutate]").attr("data-events", "mutate");
|
1071
|
+
$target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
|
1072
|
+
}
|
1073
|
+
|
1074
|
+
break;
|
1075
|
+
|
1076
|
+
case "childList":
|
1077
|
+
$target.closest("[data-mutate]").attr("data-events", "mutate");
|
1078
|
+
$target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
|
1079
|
+
break;
|
1080
|
+
|
1081
|
+
default:
|
1082
|
+
return false;
|
1083
|
+
//nothing
|
1084
|
+
}
|
1085
|
+
};
|
1086
|
+
|
1087
|
+
if ($nodes.length) {
|
1088
|
+
//for each element that needs to listen for resizing, scrolling, or mutation add a single observer
|
1089
|
+
for (var i = 0; i <= $nodes.length - 1; i++) {
|
1090
|
+
var elementObserver = new MutationObserver(listeningElementsMutation);
|
1091
|
+
elementObserver.observe($nodes[i], {
|
1092
|
+
attributes: true,
|
1093
|
+
childList: true,
|
1094
|
+
characterData: false,
|
1095
|
+
subtree: true,
|
1096
|
+
attributeFilter: ["data-events", "style"]
|
1097
|
+
});
|
1098
|
+
}
|
1099
|
+
}
|
1100
|
+
};
|
1101
|
+
|
1102
|
+
Triggers.Initializers.addSimpleListeners = function () {
|
1103
|
+
var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);
|
1104
|
+
Triggers.Initializers.addOpenListener($document);
|
1105
|
+
Triggers.Initializers.addCloseListener($document);
|
1106
|
+
Triggers.Initializers.addToggleListener($document);
|
1107
|
+
Triggers.Initializers.addCloseableListener($document);
|
1108
|
+
Triggers.Initializers.addToggleFocusListener($document);
|
1109
|
+
};
|
1110
|
+
|
1111
|
+
Triggers.Initializers.addGlobalListeners = function () {
|
1112
|
+
var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);
|
1113
|
+
Triggers.Initializers.addMutationEventsListener($document);
|
1114
|
+
Triggers.Initializers.addResizeListener();
|
1115
|
+
Triggers.Initializers.addScrollListener();
|
1116
|
+
Triggers.Initializers.addClosemeListener();
|
1117
|
+
};
|
1118
|
+
|
1119
|
+
Triggers.init = function ($, Foundation) {
|
1120
|
+
Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["onLoad"])($(window), function () {
|
1121
|
+
if ($.triggersInitialized !== true) {
|
1122
|
+
Triggers.Initializers.addSimpleListeners();
|
1123
|
+
Triggers.Initializers.addGlobalListeners();
|
1124
|
+
$.triggersInitialized = true;
|
1125
|
+
}
|
1126
|
+
});
|
1127
|
+
|
1128
|
+
if (Foundation) {
|
1129
|
+
Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.
|
1130
|
+
|
1131
|
+
Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;
|
1132
|
+
}
|
1133
|
+
};
|
1134
|
+
|
1135
|
+
|
1136
|
+
|
1137
|
+
/***/ }),
|
1138
|
+
|
1139
|
+
/***/ 9:
|
1140
|
+
/*!**********************************************************!*\
|
1141
|
+
!*** multi ./js/entries/plugins/foundation.offcanvas.js ***!
|
1142
|
+
\**********************************************************/
|
1143
|
+
/*! no static exports found */
|
1144
|
+
/***/ (function(module, exports, __webpack_require__) {
|
1145
|
+
|
1146
|
+
module.exports = __webpack_require__(/*! /Users/ncoden/Documents/Documents/Projects/Programmation/Web/2016/Foundation/foundation-sites/js/entries/plugins/foundation.offcanvas.js */"./js/entries/plugins/foundation.offcanvas.js");
|
1147
|
+
|
1148
|
+
|
1149
|
+
/***/ }),
|
1150
|
+
|
1151
|
+
/***/ "jquery":
|
1152
|
+
/*!********************************************************************************************!*\
|
1153
|
+
!*** external {"root":["jQuery"],"amd":"jquery","commonjs":"jquery","commonjs2":"jquery"} ***!
|
1154
|
+
\********************************************************************************************/
|
1155
|
+
/*! no static exports found */
|
1156
|
+
/***/ (function(module, exports) {
|
1157
|
+
|
1158
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;
|
1159
|
+
|
1160
|
+
/***/ })
|
1161
|
+
|
1162
|
+
/******/ });
|
1163
|
+
});
|
1164
|
+
//# sourceMappingURL=foundation.offcanvas.js.map
|