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]/./js/entries/plugins/foundation.abide.js","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/foundation.abide.js","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["Foundation","plugin","Abide","element","options","$element","$","extend","defaults","data","className","_init","$inputs","merge","find","not","$globalErrors","a11yAttributes","each","i","input","addA11yAttributes","error","addGlobalErrorA11yAttributes","_events","off","on","resetForm","validateForm","validateOn","e","validateInput","target","liveValidate","validateOnBlur","$el","attr","isGood","type","checked","opt","length","val","id","$error","siblings","formErrorSelector","parent","add","$label","closest","$els","labels","map","el","findLabel","$formError","findFormError","addClass","labelErrorClass","formErrorClass","inputErrorClass","$errors","$labels","filter","first","errorId","GetYoDigits","elemId","label","end","a11yErrorLevel","groupName","findRadioLabels","$formErrors","removeClass","removeRadioErrorClasses","clearRequire","requiredCheck","validated","customValidator","validator","equalTo","is","validateRadio","validateText","matchValidation","validators","goodToGo","indexOf","message","dependentElements","_this","trigger","acc","push","noError","elem","$elem","css","pattern","inputText","valid","patterns","hasOwnProperty","test","RegExp","prop","$group","required","clear","split","v","$form","opts","removeErrorClasses","Plugin","alpha","alpha_numeric","integer","number","card","cvv","email","url","domain","datetime","date","time","dateISO","month_day_year","day_month_year","color","website","text"],"mappings":"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","file":"foundation.abide.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(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.core.plugin\", \"./foundation.core.utils\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.abide\"] = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.abide\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], 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_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 = 0);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__;","import { Foundation } from './foundation.core';\n\nimport { Abide } from '../../foundation.abide';\nFoundation.plugin(Abide, 'Abide');\n\nexport { Foundation, Abide };\n","'use strict';\n\nimport $ from 'jquery';\nimport { Plugin } from './foundation.core.plugin';\nimport { GetYoDigits } from './foundation.core.utils';\n\n/**\n * Abide module.\n * @module foundation.abide\n */\n\nclass Abide extends Plugin {\n /**\n * Creates a new instance of Abide.\n * @class\n * @name Abide\n * @fires Abide#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(true, {}, Abide.defaults, this.$element.data(), options);\n\n this.className = 'Abide'; // ie9 back compat\n this._init();\n }\n\n /**\n * Initializes the Abide plugin and calls functions to get Abide functioning on load.\n * @private\n */\n _init() {\n this.$inputs = $.merge( // Consider as input to validate:\n this.$element.find('input').not('[type=submit]'), // * all input fields expect submit\n this.$element.find('textarea, select') // * all textareas and select fields\n );\n const $globalErrors = this.$element.find('[data-abide-error]');\n\n // Add a11y attributes to all fields\n if (this.options.a11yAttributes) {\n this.$inputs.each((i, input) => this.addA11yAttributes($(input)));\n $globalErrors.each((i, error) => this.addGlobalErrorA11yAttributes($(error)));\n }\n\n this._events();\n }\n\n /**\n * Initializes events for Abide.\n * @private\n */\n _events() {\n this.$element.off('.abide')\n .on('reset.zf.abide', () => {\n this.resetForm();\n })\n .on('submit.zf.abide', () => {\n return this.validateForm();\n });\n\n if (this.options.validateOn === 'fieldChange') {\n this.$inputs\n .off('change.zf.abide')\n .on('change.zf.abide', (e) => {\n this.validateInput($(e.target));\n });\n }\n\n if (this.options.liveValidate) {\n this.$inputs\n .off('input.zf.abide')\n .on('input.zf.abide', (e) => {\n this.validateInput($(e.target));\n });\n }\n\n if (this.options.validateOnBlur) {\n this.$inputs\n .off('blur.zf.abide')\n .on('blur.zf.abide', (e) => {\n this.validateInput($(e.target));\n });\n }\n }\n\n /**\n * Calls necessary functions to update Abide upon DOM change\n * @private\n */\n _reflow() {\n this._init();\n }\n\n /**\n * Checks whether or not a form element has the required attribute and if it's checked or not\n * @param {Object} element - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n requiredCheck($el) {\n if (!$el.attr('required')) return true;\n\n var isGood = true;\n\n switch ($el[0].type) {\n case 'checkbox':\n isGood = $el[0].checked;\n break;\n\n case 'select':\n case 'select-one':\n case 'select-multiple':\n var opt = $el.find('option:selected');\n if (!opt.length || !opt.val()) isGood = false;\n break;\n\n default:\n if(!$el.val() || !$el.val().length) isGood = false;\n }\n\n return isGood;\n }\n\n /**\n * Get:\n * - Based on $el, the first element(s) corresponding to `formErrorSelector` in this order:\n * 1. The element's direct sibling('s).\n * 2. The element's parent's children.\n * - Element(s) with the attribute `[data-form-error-for]` set with the element's id.\n *\n * This allows for multiple form errors per input, though if none are found, no form errors will be shown.\n *\n * @param {Object} $el - jQuery object to use as reference to find the form error selector.\n * @returns {Object} jQuery object with the selector.\n */\n findFormError($el) {\n var id = $el[0].id;\n var $error = $el.siblings(this.options.formErrorSelector);\n\n if (!$error.length) {\n $error = $el.parent().find(this.options.formErrorSelector);\n }\n\n if (id) {\n $error = $error.add(this.$element.find(`[data-form-error-for=\"${id}\"]`));\n }\n\n return $error;\n }\n\n /**\n * Get the first element in this order:\n * 2. The <label> with the attribute `[for=\"someInputId\"]`\n * 3. The `.closest()` <label>\n *\n * @param {Object} $el - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n findLabel($el) {\n var id = $el[0].id;\n var $label = this.$element.find(`label[for=\"${id}\"]`);\n\n if (!$label.length) {\n return $el.closest('label');\n }\n\n return $label;\n }\n\n /**\n * Get the set of labels associated with a set of radio els in this order\n * 2. The <label> with the attribute `[for=\"someInputId\"]`\n * 3. The `.closest()` <label>\n *\n * @param {Object} $el - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n findRadioLabels($els) {\n var labels = $els.map((i, el) => {\n var id = el.id;\n var $label = this.$element.find(`label[for=\"${id}\"]`);\n\n if (!$label.length) {\n $label = $(el).closest('label');\n }\n return $label[0];\n });\n\n return $(labels);\n }\n\n /**\n * Adds the CSS error class as specified by the Abide settings to the label, input, and the form\n * @param {Object} $el - jQuery object to add the class to\n */\n addErrorClasses($el) {\n var $label = this.findLabel($el);\n var $formError = this.findFormError($el);\n\n if ($label.length) {\n $label.addClass(this.options.labelErrorClass);\n }\n\n if ($formError.length) {\n $formError.addClass(this.options.formErrorClass);\n }\n\n $el.addClass(this.options.inputErrorClass).attr({\n 'data-invalid': '',\n 'aria-invalid': true\n });\n }\n\n /**\n * Adds [for] and [role=alert] attributes to all form error targetting $el,\n * and [aria-describedby] attribute to $el toward the first form error.\n * @param {Object} $el - jQuery object\n */\n addA11yAttributes($el) {\n let $errors = this.findFormError($el);\n let $labels = $errors.filter('label');\n let $error = $errors.first();\n if (!$errors.length) return;\n\n // Set [aria-describedby] on the input toward the first form error if it is not set\n if (typeof $el.attr('aria-describedby') === 'undefined') {\n // Get the first error ID or create one\n let errorId = $error.attr('id');\n if (typeof errorId === 'undefined') {\n errorId = GetYoDigits(6, 'abide-error');\n $error.attr('id', errorId);\n };\n\n $el.attr('aria-describedby', errorId);\n }\n\n if ($labels.filter('[for]').length < $labels.length) {\n // Get the input ID or create one\n let elemId = $el.attr('id');\n if (typeof elemId === 'undefined') {\n elemId = GetYoDigits(6, 'abide-input');\n $el.attr('id', elemId);\n };\n\n // For each label targeting $el, set [for] if it is not set.\n $labels.each((i, label) => {\n const $label = $(label);\n if (typeof $label.attr('for') === 'undefined')\n $label.attr('for', elemId);\n });\n }\n\n // For each error targeting $el, set [role=alert] if it is not set.\n $errors.each((i, label) => {\n const $label = $(label);\n if (typeof $label.attr('role') === 'undefined')\n $label.attr('role', 'alert');\n }).end();\n }\n\n /**\n * Adds [aria-live] attribute to the given global form error $el.\n * @param {Object} $el - jQuery object to add the attribute to\n */\n addGlobalErrorA11yAttributes($el) {\n if (typeof $el.attr('aria-live') === 'undefined')\n $el.attr('aria-live', this.options.a11yErrorLevel);\n }\n\n /**\n * Remove CSS error classes etc from an entire radio button group\n * @param {String} groupName - A string that specifies the name of a radio button group\n *\n */\n removeRadioErrorClasses(groupName) {\n var $els = this.$element.find(`:radio[name=\"${groupName}\"]`);\n var $labels = this.findRadioLabels($els);\n var $formErrors = this.findFormError($els);\n\n if ($labels.length) {\n $labels.removeClass(this.options.labelErrorClass);\n }\n\n if ($formErrors.length) {\n $formErrors.removeClass(this.options.formErrorClass);\n }\n\n $els.removeClass(this.options.inputErrorClass).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n\n }\n\n /**\n * Removes CSS error class as specified by the Abide settings from the label, input, and the form\n * @param {Object} $el - jQuery object to remove the class from\n */\n removeErrorClasses($el) {\n // radios need to clear all of the els\n if($el[0].type == 'radio') {\n return this.removeRadioErrorClasses($el.attr('name'));\n }\n\n var $label = this.findLabel($el);\n var $formError = this.findFormError($el);\n\n if ($label.length) {\n $label.removeClass(this.options.labelErrorClass);\n }\n\n if ($formError.length) {\n $formError.removeClass(this.options.formErrorClass);\n }\n\n $el.removeClass(this.options.inputErrorClass).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n }\n\n /**\n * Goes through a form to find inputs and proceeds to validate them in ways specific to their type.\n * Ignores inputs with data-abide-ignore, type=\"hidden\" or disabled attributes set\n * @fires Abide#invalid\n * @fires Abide#valid\n * @param {Object} element - jQuery object to validate, should be an HTML input\n * @returns {Boolean} goodToGo - If the input is valid or not.\n */\n validateInput($el) {\n var clearRequire = this.requiredCheck($el),\n validated = false,\n customValidator = true,\n validator = $el.attr('data-validator'),\n equalTo = true;\n\n // don't validate ignored inputs or hidden inputs or disabled inputs\n if ($el.is('[data-abide-ignore]') || $el.is('[type=\"hidden\"]') || $el.is('[disabled]')) {\n return true;\n }\n\n switch ($el[0].type) {\n case 'radio':\n validated = this.validateRadio($el.attr('name'));\n break;\n\n case 'checkbox':\n validated = clearRequire;\n break;\n\n case 'select':\n case 'select-one':\n case 'select-multiple':\n validated = clearRequire;\n break;\n\n default:\n validated = this.validateText($el);\n }\n\n if (validator) {\n customValidator = this.matchValidation($el, validator, $el.attr('required'));\n }\n\n if ($el.attr('data-equalto')) {\n equalTo = this.options.validators.equalTo($el);\n }\n\n\n var goodToGo = [clearRequire, validated, customValidator, equalTo].indexOf(false) === -1;\n var message = (goodToGo ? 'valid' : 'invalid') + '.zf.abide';\n\n if (goodToGo) {\n // Re-validate inputs that depend on this one with equalto\n const dependentElements = this.$element.find(`[data-equalto=\"${$el.attr('id')}\"]`);\n if (dependentElements.length) {\n let _this = this;\n dependentElements.each(function() {\n if ($(this).val()) {\n _this.validateInput($(this));\n }\n });\n }\n }\n\n this[goodToGo ? 'removeErrorClasses' : 'addErrorClasses']($el);\n\n /**\n * Fires when the input is done checking for validation. Event trigger is either `valid.zf.abide` or `invalid.zf.abide`\n * Trigger includes the DOM element of the input.\n * @event Abide#valid\n * @event Abide#invalid\n */\n $el.trigger(message, [$el]);\n\n return goodToGo;\n }\n\n /**\n * Goes through a form and if there are any invalid inputs, it will display the form error element\n * @returns {Boolean} noError - true if no errors were detected...\n * @fires Abide#formvalid\n * @fires Abide#forminvalid\n */\n validateForm() {\n var acc = [];\n var _this = this;\n\n this.$inputs.each(function() {\n acc.push(_this.validateInput($(this)));\n });\n\n var noError = acc.indexOf(false) === -1;\n\n this.$element.find('[data-abide-error]').each((i, elem) => {\n const $elem = $(elem);\n // Ensure a11y attributes are set\n if (this.options.a11yAttributes) this.addGlobalErrorA11yAttributes($elem);\n // Show or hide the error\n $elem.css('display', (noError ? 'none' : 'block'));\n });\n\n /**\n * Fires when the form is finished validating. Event trigger is either `formvalid.zf.abide` or `forminvalid.zf.abide`.\n * Trigger includes the element of the form.\n * @event Abide#formvalid\n * @event Abide#forminvalid\n */\n this.$element.trigger((noError ? 'formvalid' : 'forminvalid') + '.zf.abide', [this.$element]);\n\n return noError;\n }\n\n /**\n * Determines whether or a not a text input is valid based on the pattern specified in the attribute. If no matching pattern is found, returns true.\n * @param {Object} $el - jQuery object to validate, should be a text input HTML element\n * @param {String} pattern - string value of one of the RegEx patterns in Abide.options.patterns\n * @returns {Boolean} Boolean value depends on whether or not the input value matches the pattern specified\n */\n validateText($el, pattern) {\n // A pattern can be passed to this function, or it will be infered from the input's \"pattern\" attribute, or it's \"type\" attribute\n pattern = (pattern || $el.attr('pattern') || $el.attr('type'));\n var inputText = $el.val();\n var valid = false;\n\n if (inputText.length) {\n // If the pattern attribute on the element is in Abide's list of patterns, then test that regexp\n if (this.options.patterns.hasOwnProperty(pattern)) {\n valid = this.options.patterns[pattern].test(inputText);\n }\n // If the pattern name isn't also the type attribute of the field, then test it as a regexp\n else if (pattern !== $el.attr('type')) {\n valid = new RegExp(pattern).test(inputText);\n }\n else {\n valid = true;\n }\n }\n // An empty field is valid if it's not required\n else if (!$el.prop('required')) {\n valid = true;\n }\n\n return valid;\n }\n\n /**\n * Determines whether or a not a radio input is valid based on whether or not it is required and selected. Although the function targets a single `<input>`, it validates by checking the `required` and `checked` properties of all radio buttons in its group.\n * @param {String} groupName - A string that specifies the name of a radio button group\n * @returns {Boolean} Boolean value depends on whether or not at least one radio input has been selected (if it's required)\n */\n validateRadio(groupName) {\n // If at least one radio in the group has the `required` attribute, the group is considered required\n // Per W3C spec, all radio buttons in a group should have `required`, but we're being nice\n var $group = this.$element.find(`:radio[name=\"${groupName}\"]`);\n var valid = false, required = false;\n\n // For the group to be required, at least one radio needs to be required\n $group.each((i, e) => {\n if ($(e).attr('required')) {\n required = true;\n }\n });\n if(!required) valid=true;\n\n if (!valid) {\n // For the group to be valid, at least one radio needs to be checked\n $group.each((i, e) => {\n if ($(e).prop('checked')) {\n valid = true;\n }\n });\n };\n\n return valid;\n }\n\n /**\n * Determines if a selected input passes a custom validation function. Multiple validations can be used, if passed to the element with `data-validator=\"foo bar baz\"` in a space separated listed.\n * @param {Object} $el - jQuery input element.\n * @param {String} validators - a string of function names matching functions in the Abide.options.validators object.\n * @param {Boolean} required - self explanatory?\n * @returns {Boolean} - true if validations passed.\n */\n matchValidation($el, validators, required) {\n required = required ? true : false;\n\n var clear = validators.split(' ').map((v) => {\n return this.options.validators[v]($el, required, $el.parent());\n });\n return clear.indexOf(false) === -1;\n }\n\n /**\n * Resets form inputs and styles\n * @fires Abide#formreset\n */\n resetForm() {\n var $form = this.$element,\n opts = this.options;\n\n $(`.${opts.labelErrorClass}`, $form).not('small').removeClass(opts.labelErrorClass);\n $(`.${opts.inputErrorClass}`, $form).not('small').removeClass(opts.inputErrorClass);\n $(`${opts.formErrorSelector}.${opts.formErrorClass}`).removeClass(opts.formErrorClass);\n $form.find('[data-abide-error]').css('display', 'none');\n $(':input', $form).not(':button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]').val('').attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n $(':input:radio', $form).not('[data-abide-ignore]').prop('checked',false).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n $(':input:checkbox', $form).not('[data-abide-ignore]').prop('checked',false).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n /**\n * Fires when the form has been reset.\n * @event Abide#formreset\n */\n $form.trigger('formreset.zf.abide', [$form]);\n }\n\n /**\n * Destroys an instance of Abide.\n * Removes error styles and classes from elements, without resetting their values.\n */\n _destroy() {\n var _this = this;\n this.$element\n .off('.abide')\n .find('[data-abide-error]')\n .css('display', 'none');\n\n this.$inputs\n .off('.abide')\n .each(function() {\n _this.removeErrorClasses($(this));\n });\n }\n}\n\n/**\n * Default settings for plugin\n */\nAbide.defaults = {\n /**\n * The default event to validate inputs. Checkboxes and radios validate immediately.\n * Remove or change this value for manual validation.\n * @option\n * @type {?string}\n * @default 'fieldChange'\n */\n validateOn: 'fieldChange',\n\n /**\n * Class to be applied to input labels on failed validation.\n * @option\n * @type {string}\n * @default 'is-invalid-label'\n */\n labelErrorClass: 'is-invalid-label',\n\n /**\n * Class to be applied to inputs on failed validation.\n * @option\n * @type {string}\n * @default 'is-invalid-input'\n */\n inputErrorClass: 'is-invalid-input',\n\n /**\n * Class selector to use to target Form Errors for show/hide.\n * @option\n * @type {string}\n * @default '.form-error'\n */\n formErrorSelector: '.form-error',\n\n /**\n * Class added to Form Errors on failed validation.\n * @option\n * @type {string}\n * @default 'is-visible'\n */\n formErrorClass: 'is-visible',\n\n /**\n * If true, automatically insert when possible:\n * - `[aria-describedby]` on fields\n * - `[role=alert]` on form errors and `[for]` on form error labels\n * - `[aria-live]` on global errors `[data-abide-error]` (see option `a11yErrorLevel`).\n * @option\n * @type {boolean}\n * @default true\n */\n a11yAttributes: true,\n\n /**\n * [aria-live] attribute value to be applied on global errors `[data-abide-error]`.\n * Options are: 'assertive', 'polite' and 'off'/null\n * @option\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions\n * @type {string}\n * @default 'assertive'\n */\n a11yErrorLevel: 'assertive',\n\n /**\n * Set to true to validate text inputs on any value change.\n * @option\n * @type {boolean}\n * @default false\n */\n liveValidate: false,\n\n /**\n * Set to true to validate inputs on blur.\n * @option\n * @type {boolean}\n * @default false\n */\n validateOnBlur: false,\n\n patterns: {\n alpha : /^[a-zA-Z]+$/,\n alpha_numeric : /^[a-zA-Z0-9]+$/,\n integer : /^[-+]?\\d+$/,\n number : /^[-+]?\\d*(?:[\\.\\,]\\d+)?$/,\n\n // amex, visa, diners\n card : /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11})$/,\n cvv : /^([0-9]){3,4}$/,\n\n // http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#valid-e-mail-address\n email : /^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,\n\n // From CommonRegexJS (@talyssonoc)\n // https://github.com/talyssonoc/CommonRegexJS/blob/e2901b9f57222bc14069dc8f0598d5f412555411/lib/commonregex.js#L76\n // For more restrictive URL Regexs, see https://mathiasbynens.be/demo/url-regex.\n url: /^((?:(https?|ftps?|file|ssh|sftp):\\/\\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\\/)(?:[^\\s()<>]+|\\((?:[^\\s()<>]+|(?:\\([^\\s()<>]+\\)))*\\))+(?:\\((?:[^\\s()<>]+|(?:\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:\\'\".,<>?\\xab\\xbb\\u201c\\u201d\\u2018\\u2019]))$/,\n\n // abc.de\n domain : /^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,8}$/,\n\n datetime : /^([0-2][0-9]{3})\\-([0-1][0-9])\\-([0-3][0-9])T([0-5][0-9])\\:([0-5][0-9])\\:([0-5][0-9])(Z|([\\-\\+]([0-1][0-9])\\:00))$/,\n // YYYY-MM-DD\n date : /(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,\n // HH:MM:SS\n time : /^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,\n dateISO : /^\\d{4}[\\/\\-]\\d{1,2}[\\/\\-]\\d{1,2}$/,\n // MM/DD/YYYY\n month_day_year : /^(0[1-9]|1[012])[- \\/.](0[1-9]|[12][0-9]|3[01])[- \\/.]\\d{4}$/,\n // DD/MM/YYYY\n day_month_year : /^(0[1-9]|[12][0-9]|3[01])[- \\/.](0[1-9]|1[012])[- \\/.]\\d{4}$/,\n\n // #FFF or #FFFFFF\n color : /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,\n\n // Domain || URL\n website: {\n test: (text) => {\n return Abide.defaults.patterns['domain'].test(text) || Abide.defaults.patterns['url'].test(text);\n }\n }\n },\n\n /**\n * Optional validation functions to be used. `equalTo` being the only default included function.\n * Functions should return only a boolean if the input is valid or not. Functions are given the following arguments:\n * el : The jQuery element to validate.\n * required : Boolean value of the required attribute be present or not.\n * parent : The direct parent of the input.\n * @option\n */\n validators: {\n equalTo: function (el, required, parent) {\n return $(`#${el.attr('data-equalto')}`).val() === el.val();\n }\n }\n}\n\nexport {Abide};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"],"sourceRoot":""}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("./foundation.core"),require("./foundation.core.plugin"),require("./foundation.core.utils"),require("jquery")):"function"==typeof define&&define.amd?define(["./foundation.core","./foundation.core.plugin","./foundation.core.utils","jquery"],e):"object"==typeof exports?exports["foundation.abide"]=e(require("./foundation.core"),require("./foundation.core.plugin"),require("./foundation.core.utils"),require("jquery")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__["foundation.abide"]=e(t.__FOUNDATION_EXTERNAL__["foundation.core"],t.__FOUNDATION_EXTERNAL__["foundation.core"],t.__FOUNDATION_EXTERNAL__["foundation.core"],t.jQuery))}(window,function(r,i,n,a){return function(r){var i={};function n(t){if(i[t])return i[t].exports;var e=i[t]={i:t,l:!1,exports:{}};return r[t].call(e.exports,e,e.exports,n),e.l=!0,e.exports}return n.m=r,n.c=i,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=0)}({"./foundation.core":function(t,e){t.exports=r},"./foundation.core.plugin":function(t,e){t.exports=i},"./foundation.core.utils":function(t,e){t.exports=n},"./js/entries/plugins/foundation.abide.js":function(t,e,r){"use strict";r.r(e);var i=r("./foundation.core");r.d(e,"Foundation",function(){return i.Foundation});var n=r("./js/foundation.abide.js");r.d(e,"Abide",function(){return n.Abide}),i.Foundation.plugin(n.Abide,"Abide")},"./js/foundation.abide.js":function(t,e,r){"use strict";r.r(e),r.d(e,"Abide",function(){return c});var i=r("jquery"),d=r.n(i),a=r("./foundation.core.plugin"),o=r("./foundation.core.utils");function n(t){return(n="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 s(t,e){for(var r=0;r<e.length;r++){var i=e[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function l(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function u(t){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=function(t){function r(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),l(this,u(r).apply(this,arguments))}var e,i,n;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(r,a["Plugin"]),e=r,(i=[{key:"_setup",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};this.$element=t,this.options=d.a.extend(!0,{},r.defaults,this.$element.data(),e),this.className="Abide",this._init()}},{key:"_init",value:function(){var r=this;this.$inputs=d.a.merge(this.$element.find("input").not("[type=submit]"),this.$element.find("textarea, select"));var t=this.$element.find("[data-abide-error]");this.options.a11yAttributes&&(this.$inputs.each(function(t,e){return r.addA11yAttributes(d()(e))}),t.each(function(t,e){return r.addGlobalErrorA11yAttributes(d()(e))})),this._events()}},{key:"_events",value:function(){var e=this;this.$element.off(".abide").on("reset.zf.abide",function(){e.resetForm()}).on("submit.zf.abide",function(){return e.validateForm()}),"fieldChange"===this.options.validateOn&&this.$inputs.off("change.zf.abide").on("change.zf.abide",function(t){e.validateInput(d()(t.target))}),this.options.liveValidate&&this.$inputs.off("input.zf.abide").on("input.zf.abide",function(t){e.validateInput(d()(t.target))}),this.options.validateOnBlur&&this.$inputs.off("blur.zf.abide").on("blur.zf.abide",function(t){e.validateInput(d()(t.target))})}},{key:"_reflow",value:function(){this._init()}},{key:"requiredCheck",value:function(t){if(!t.attr("required"))return!0;var e=!0;switch(t[0].type){case"checkbox":e=t[0].checked;break;case"select":case"select-one":case"select-multiple":var r=t.find("option:selected");r.length&&r.val()||(e=!1);break;default:t.val()&&t.val().length||(e=!1)}return e}},{key:"findFormError",value:function(t){var e=t[0].id,r=t.siblings(this.options.formErrorSelector);return r.length||(r=t.parent().find(this.options.formErrorSelector)),e&&(r=r.add(this.$element.find('[data-form-error-for="'.concat(e,'"]')))),r}},{key:"findLabel",value:function(t){var e=t[0].id,r=this.$element.find('label[for="'.concat(e,'"]'));return r.length?r:t.closest("label")}},{key:"findRadioLabels",value:function(t){var n=this,e=t.map(function(t,e){var r=e.id,i=n.$element.find('label[for="'.concat(r,'"]'));return i.length||(i=d()(e).closest("label")),i[0]});return d()(e)}},{key:"addErrorClasses",value:function(t){var e=this.findLabel(t),r=this.findFormError(t);e.length&&e.addClass(this.options.labelErrorClass),r.length&&r.addClass(this.options.formErrorClass),t.addClass(this.options.inputErrorClass).attr({"data-invalid":"","aria-invalid":!0})}},{key:"addA11yAttributes",value:function(t){var e=this.findFormError(t),r=e.filter("label"),i=e.first();if(e.length){if(void 0===t.attr("aria-describedby")){var n=i.attr("id");void 0===n&&(n=Object(o.GetYoDigits)(6,"abide-error"),i.attr("id",n)),t.attr("aria-describedby",n)}if(r.filter("[for]").length<r.length){var a=t.attr("id");void 0===a&&(a=Object(o.GetYoDigits)(6,"abide-input"),t.attr("id",a)),r.each(function(t,e){var r=d()(e);void 0===r.attr("for")&&r.attr("for",a)})}e.each(function(t,e){var r=d()(e);void 0===r.attr("role")&&r.attr("role","alert")}).end()}}},{key:"addGlobalErrorA11yAttributes",value:function(t){void 0===t.attr("aria-live")&&t.attr("aria-live",this.options.a11yErrorLevel)}},{key:"removeRadioErrorClasses",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),r=this.findRadioLabels(e),i=this.findFormError(e);r.length&&r.removeClass(this.options.labelErrorClass),i.length&&i.removeClass(this.options.formErrorClass),e.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"removeErrorClasses",value:function(t){if("radio"==t[0].type)return this.removeRadioErrorClasses(t.attr("name"));var e=this.findLabel(t),r=this.findFormError(t);e.length&&e.removeClass(this.options.labelErrorClass),r.length&&r.removeClass(this.options.formErrorClass),t.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"validateInput",value:function(t){var e=this.requiredCheck(t),r=!1,i=!0,n=t.attr("data-validator"),a=!0;if(t.is("[data-abide-ignore]")||t.is('[type="hidden"]')||t.is("[disabled]"))return!0;switch(t[0].type){case"radio":r=this.validateRadio(t.attr("name"));break;case"checkbox":r=e;break;case"select":case"select-one":case"select-multiple":r=e;break;default:r=this.validateText(t)}n&&(i=this.matchValidation(t,n,t.attr("required"))),t.attr("data-equalto")&&(a=this.options.validators.equalTo(t));var o=-1===[e,r,i,a].indexOf(!1),s=(o?"valid":"invalid")+".zf.abide";if(o){var l=this.$element.find('[data-equalto="'.concat(t.attr("id"),'"]'));if(l.length){var u=this;l.each(function(){d()(this).val()&&u.validateInput(d()(this))})}}return this[o?"removeErrorClasses":"addErrorClasses"](t),t.trigger(s,[t]),o}},{key:"validateForm",value:function(){var i=this,t=[],e=this;this.$inputs.each(function(){t.push(e.validateInput(d()(this)))});var n=-1===t.indexOf(!1);return this.$element.find("[data-abide-error]").each(function(t,e){var r=d()(e);i.options.a11yAttributes&&i.addGlobalErrorA11yAttributes(r),r.css("display",n?"none":"block")}),this.$element.trigger((n?"formvalid":"forminvalid")+".zf.abide",[this.$element]),n}},{key:"validateText",value:function(t,e){e=e||t.attr("pattern")||t.attr("type");var r=t.val(),i=!1;return r.length?i=this.options.patterns.hasOwnProperty(e)?this.options.patterns[e].test(r):e===t.attr("type")||new RegExp(e).test(r):t.prop("required")||(i=!0),i}},{key:"validateRadio",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),r=!1,i=!1;return e.each(function(t,e){d()(e).attr("required")&&(i=!0)}),i||(r=!0),r||e.each(function(t,e){d()(e).prop("checked")&&(r=!0)}),r}},{key:"matchValidation",value:function(e,t,r){var i=this;return r=!!r,-1===t.split(" ").map(function(t){return i.options.validators[t](e,r,e.parent())}).indexOf(!1)}},{key:"resetForm",value:function(){var t=this.$element,e=this.options;d()(".".concat(e.labelErrorClass),t).not("small").removeClass(e.labelErrorClass),d()(".".concat(e.inputErrorClass),t).not("small").removeClass(e.inputErrorClass),d()("".concat(e.formErrorSelector,".").concat(e.formErrorClass)).removeClass(e.formErrorClass),t.find("[data-abide-error]").css("display","none"),d()(":input",t).not(":button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]").val("").attr({"data-invalid":null,"aria-invalid":null}),d()(":input:radio",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),d()(":input:checkbox",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),t.trigger("formreset.zf.abide",[t])}},{key:"_destroy",value:function(){var t=this;this.$element.off(".abide").find("[data-abide-error]").css("display","none"),this.$inputs.off(".abide").each(function(){t.removeErrorClasses(d()(this))})}}])&&s(e.prototype,i),n&&s(e,n),r}();c.defaults={validateOn:"fieldChange",labelErrorClass:"is-invalid-label",inputErrorClass:"is-invalid-input",formErrorSelector:".form-error",formErrorClass:"is-visible",a11yAttributes:!0,a11yErrorLevel:"assertive",liveValidate:!1,validateOnBlur:!1,patterns:{alpha:/^[a-zA-Z]+$/,alpha_numeric:/^[a-zA-Z0-9]+$/,integer:/^[-+]?\d+$/,number:/^[-+]?\d*(?:[\.\,]\d+)?$/,card:/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,cvv:/^([0-9]){3,4}$/,email:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,url:/^((?:(https?|ftps?|file|ssh|sftp):\/\/|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?\xab\xbb\u201c\u201d\u2018\u2019]))$/,domain:/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/,datetime:/^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/,date:/(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,time:/^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,dateISO:/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,month_day_year:/^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/,day_month_year:/^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/,color:/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,website:{test:function(t){return c.defaults.patterns.domain.test(t)||c.defaults.patterns.url.test(t)}}},validators:{equalTo:function(t,e,r){return d()("#".concat(t.attr("data-equalto"))).val()===t.val()}}}},0:function(t,e,r){t.exports=r("./js/entries/plugins/foundation.abide.js")},jquery:function(t,e){t.exports=a}})});
|
2
|
+
//# sourceMappingURL=foundation.abide.min.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["foundation.abide.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_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","./js/entries/plugins/foundation.abide.js","__webpack_exports__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_abide__WEBPACK_IMPORTED_MODULE_1__","plugin","./js/foundation.abide.js","Abide","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__","_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","undefined","$element","a","extend","defaults","data","className","_init","_this2","$inputs","merge","find","not","$globalErrors","a11yAttributes","each","input","addA11yAttributes","error","addGlobalErrorA11yAttributes","_events","_this3","off","on","resetForm","validateForm","validateOn","e","validateInput","liveValidate","validateOnBlur","$el","attr","isGood","type","checked","opt","val","id","$error","siblings","formErrorSelector","parent","add","concat","$label","closest","$els","_this4","labels","map","el","findLabel","$formError","findFormError","addClass","labelErrorClass","formErrorClass","inputErrorClass","data-invalid","aria-invalid","$errors","$labels","filter","first","errorId","elemId","label","end","a11yErrorLevel","groupName","findRadioLabels","$formErrors","removeClass","removeRadioErrorClasses","clearRequire","requiredCheck","validated","customValidator","validator","equalTo","is","validateRadio","validateText","matchValidation","validators","goodToGo","indexOf","message","dependentElements","_this","trigger","_this5","acc","push","noError","elem","$elem","css","pattern","inputText","valid","patterns","test","RegExp","prop","$group","required","_this6","split","v","$form","opts","removeErrorClasses","alpha","alpha_numeric","integer","number","card","cvv","email","url","domain","datetime","date","time","dateISO","month_day_year","day_month_year","color","website","text","0","jquery"],"mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,EAAQG,QAAQ,qBAAsBA,QAAQ,4BAA6BA,QAAQ,2BAA4BA,QAAQ,WAC/G,mBAAXC,QAAyBA,OAAOC,IAC9CD,OAAO,CAAC,oBAAqB,2BAA4B,0BAA2B,UAAWJ,GACrE,iBAAZC,QACdA,QAAQ,oBAAsBD,EAAQG,QAAQ,qBAAsBA,QAAQ,4BAA6BA,QAAQ,2BAA4BA,QAAQ,YAErJJ,EAA8B,wBAAIA,EAA8B,yBAAK,GAAIA,EAA8B,wBAAE,oBAAsBC,EAAQD,EAA8B,wBAAE,mBAAoBA,EAA8B,wBAAE,mBAAoBA,EAA8B,wBAAE,mBAAoBA,EAAa,SARlT,CASGO,OAAQ,SAASC,EAA8CC,EAAqDC,EAAoDC,GAC3K,OAAgB,SAAUC,GAEhB,IAAIC,EAAmB,GAGvB,SAASC,EAAoBC,GAG5B,GAAGF,EAAiBE,GACnB,OAAOF,EAAiBE,GAAUb,QAGnC,IAAIC,EAASU,EAAiBE,GAAY,CACzCC,EAAGD,EACHE,GAAG,EACHf,QAAS,IAUV,OANAU,EAAQG,GAAUG,KAAKf,EAAOD,QAASC,EAAQA,EAAOD,QAASY,GAG/DX,EAAOc,GAAI,EAGJd,EAAOD,QA0Df,OArDAY,EAAoBK,EAAIP,EAGxBE,EAAoBM,EAAIP,EAGxBC,EAAoBO,EAAI,SAASnB,EAASoB,EAAMC,GAC3CT,EAAoBU,EAAEtB,EAASoB,IAClCG,OAAOC,eAAexB,EAASoB,EAAM,CAAEK,YAAY,EAAMC,IAAKL,KAKhET,EAAoBe,EAAI,SAAS3B,GACX,oBAAX4B,QAA0BA,OAAOC,aAC1CN,OAAOC,eAAexB,EAAS4B,OAAOC,YAAa,CAAEC,MAAO,WAE7DP,OAAOC,eAAexB,EAAS,aAAc,CAAE8B,OAAO,KAQvDlB,EAAoBmB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQlB,EAAoBkB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKX,OAAOY,OAAO,MAGvB,GAFAvB,EAAoBe,EAAEO,GACtBX,OAAOC,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOlB,EAAoBO,EAAEe,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRtB,EAAoB0B,EAAI,SAASrC,GAChC,IAAIoB,EAASpB,GAAUA,EAAOgC,WAC7B,WAAwB,OAAOhC,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAW,EAAoBO,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRT,EAAoBU,EAAI,SAASiB,EAAQC,GAAY,OAAOjB,OAAOkB,UAAUC,eAAe1B,KAAKuB,EAAQC,IAGzG5B,EAAoB+B,EAAI,GAIjB/B,EAAoBA,EAAoBgC,EAAI,GAnF7C,CAsFN,CAEJC,oBAKA,SAAU5C,EAAQD,GAExBC,EAAOD,QAAUM,GAIXwC,2BAKA,SAAU7C,EAAQD,GAExBC,EAAOD,QAAUO,GAIXwC,0BAKA,SAAU9C,EAAQD,GAExBC,EAAOD,QAAUQ,GAIXwC,2CAKA,SAAU/C,EAAQgD,EAAqBrC,GAE7C,aACAA,EAAoBe,EAAEsB,GACD,IAAIC,EAAgDtC,EAA6C,qBAExFA,EAAoBO,EAAE8B,EAAqB,aAAc,WAAa,OAAOC,EAA0D,aAEhJ,IAAIC,EAAiDvC,EAAkD,4BAC9FA,EAAoBO,EAAE8B,EAAqB,QAAS,WAAa,OAAOE,EAAsD,QAI5JD,EAA0D,WAAEE,OAAOD,EAAsD,MAAG,UAKtHE,2BAKA,SAAUpD,EAAQgD,EAAqBrC,GAE7C,aACAA,EAAoBe,EAAEsB,GACSrC,EAAoBO,EAAE8B,EAAqB,QAAS,WAAa,OAAOK,IAClF,IAAIC,EAAsC3C,EAAkC,UACxE4C,EAA2D5C,EAAoB0B,EAAEiB,GACjFE,EAAuD7C,EAAoD,4BAE3G8C,EAAsD9C,EAAmD,2BAIlI,SAAS+C,EAAQC,GAAwT,OAAtOD,EAArD,mBAAX/B,QAAoD,iBAApBA,OAAOiC,SAAmC,SAAiBD,GAAO,cAAcA,GAA2B,SAAiBA,GAAO,OAAOA,GAAyB,mBAAXhC,QAAyBgC,EAAIE,cAAgBlC,QAAUgC,IAAQhC,OAAOa,UAAY,gBAAkBmB,IAAyBA,GAIxV,SAASG,EAAkBC,EAAQC,GAAS,IAAK,IAAInD,EAAI,EAAGA,EAAImD,EAAMC,OAAQpD,IAAK,CAAE,IAAIqD,EAAaF,EAAMnD,GAAIqD,EAAW1C,WAAa0C,EAAW1C,aAAc,EAAO0C,EAAWC,cAAe,EAAU,UAAWD,IAAYA,EAAWE,UAAW,GAAM9C,OAAOC,eAAewC,EAAQG,EAAW/B,IAAK+B,IAI7S,SAASG,EAA2BC,EAAMvD,GAAQ,OAAIA,GAA2B,WAAlB2C,EAAQ3C,IAAsC,mBAATA,EAEpG,SAAgCuD,GAAQ,QAAa,IAATA,EAA4G,OAAOA,EAAhG,MAAM,IAAIC,eAAe,6DAF0DC,CAAuBF,GAAtCvD,EAInI,SAAS0D,EAAgBpD,GAAwJ,OAAnJoD,EAAkBnD,OAAOoD,eAAiBpD,OAAOqD,eAAiB,SAAyBtD,GAAK,OAAOA,EAAEuD,WAAatD,OAAOqD,eAAetD,KAA8BA,GAIxM,SAASwD,EAAgBxD,EAAGqB,GAA+G,OAA1GmC,EAAkBvD,OAAOoD,gBAAkB,SAAyBrD,EAAGqB,GAAsB,OAAjBrB,EAAEuD,UAAYlC,EAAUrB,IAA6BA,EAAGqB,GAUrK,IAAIW,EAEJ,SAAUyB,GAGR,SAASzB,IAGP,OAhCJ,SAAyB0B,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,qCA8B5GC,CAAgBC,KAAM9B,GAEfgB,EAA2Bc,KAAMV,EAAgBpB,GAAO+B,MAAMD,KAAME,YA5B/E,IAAsBL,EAAaM,EAAYC,EAymB7C,OAjmBF,SAAmBC,EAAUC,GAAc,GAA0B,mBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIR,UAAU,sDAAyDO,EAAShD,UAAYlB,OAAOY,OAAOuD,GAAcA,EAAWjD,UAAW,CAAEqB,YAAa,CAAEhC,MAAO2D,EAAUpB,UAAU,EAAMD,cAAc,KAAesB,GAAYZ,EAAgBW,EAAUC,GAejXC,CAAUrC,EAmlBVG,EAAqD,WA1mBjCwB,EA+BP3B,GA/BoBiC,EA+Bb,CAAC,CACnBnD,IAAK,SAULN,MAAO,SAAgB8D,GACrB,IAAIC,EAA6B,EAAnBP,UAAUpB,aAA+B4B,IAAjBR,UAAU,GAAmBA,UAAU,GAAK,GAClFF,KAAKW,SAAWH,EAChBR,KAAKS,QAAUrC,EAA4CwC,EAAEC,QAAO,EAAM,GAAI3C,EAAM4C,SAAUd,KAAKW,SAASI,OAAQN,GACpHT,KAAKgB,UAAY,QAEjBhB,KAAKiB,UAON,CACDjE,IAAK,QACLN,MAAO,WACL,IAAIwE,EAASlB,KAEbA,KAAKmB,QAAU/C,EAA4CwC,EAAEQ,MAC7DpB,KAAKW,SAASU,KAAK,SAASC,IAAI,iBAChCtB,KAAKW,SAASU,KAAK,qBAEnB,IAAIE,EAAgBvB,KAAKW,SAASU,KAAK,sBAEnCrB,KAAKS,QAAQe,iBACfxB,KAAKmB,QAAQM,KAAK,SAAU/F,EAAGgG,GAC7B,OAAOR,EAAOS,kBAAkBvD,GAAAA,CAA8CsD,MAEhFH,EAAcE,KAAK,SAAU/F,EAAGkG,GAC9B,OAAOV,EAAOW,6BAA6BzD,GAAAA,CAA8CwD,OAI7F5B,KAAK8B,YAON,CACD9E,IAAK,UACLN,MAAO,WACL,IAAIqF,EAAS/B,KAEbA,KAAKW,SAASqB,IAAI,UAAUC,GAAG,iBAAkB,WAC/CF,EAAOG,cACND,GAAG,kBAAmB,WACvB,OAAOF,EAAOI,iBAGgB,gBAA5BnC,KAAKS,QAAQ2B,YACfpC,KAAKmB,QAAQa,IAAI,mBAAmBC,GAAG,kBAAmB,SAAUI,GAClEN,EAAOO,cAAclE,GAAAA,CAA8CiE,EAAEzD,WAIrEoB,KAAKS,QAAQ8B,cACfvC,KAAKmB,QAAQa,IAAI,kBAAkBC,GAAG,iBAAkB,SAAUI,GAChEN,EAAOO,cAAclE,GAAAA,CAA8CiE,EAAEzD,WAIrEoB,KAAKS,QAAQ+B,gBACfxC,KAAKmB,QAAQa,IAAI,iBAAiBC,GAAG,gBAAiB,SAAUI,GAC9DN,EAAOO,cAAclE,GAAAA,CAA8CiE,EAAEzD,aAS1E,CACD5B,IAAK,UACLN,MAAO,WACLsD,KAAKiB,UAQN,CACDjE,IAAK,gBACLN,MAAO,SAAuB+F,GAC5B,IAAKA,EAAIC,KAAK,YAAa,OAAO,EAClC,IAAIC,GAAS,EAEb,OAAQF,EAAI,GAAGG,MACb,IAAK,WACHD,EAASF,EAAI,GAAGI,QAChB,MAEF,IAAK,SACL,IAAK,aACL,IAAK,kBACH,IAAIC,EAAML,EAAIpB,KAAK,mBACdyB,EAAIhE,QAAWgE,EAAIC,QAAOJ,GAAS,GACxC,MAEF,QACOF,EAAIM,OAAUN,EAAIM,MAAMjE,SAAQ6D,GAAS,GAGlD,OAAOA,IAeR,CACD3F,IAAK,gBACLN,MAAO,SAAuB+F,GAC5B,IAAIO,EAAKP,EAAI,GAAGO,GACZC,EAASR,EAAIS,SAASlD,KAAKS,QAAQ0C,mBAUvC,OARKF,EAAOnE,SACVmE,EAASR,EAAIW,SAAS/B,KAAKrB,KAAKS,QAAQ0C,oBAGtCH,IACFC,EAASA,EAAOI,IAAIrD,KAAKW,SAASU,KAAK,yBAA0BiC,OAAON,EAAI,SAGvEC,IAWR,CACDjG,IAAK,YACLN,MAAO,SAAmB+F,GACxB,IAAIO,EAAKP,EAAI,GAAGO,GACZO,EAASvD,KAAKW,SAASU,KAAK,cAAeiC,OAAON,EAAI,OAE1D,OAAKO,EAAOzE,OAILyE,EAHEd,EAAIe,QAAQ,WActB,CACDxG,IAAK,kBACLN,MAAO,SAAyB+G,GAC9B,IAAIC,EAAS1D,KAET2D,EAASF,EAAKG,IAAI,SAAUlI,EAAGmI,GACjC,IAAIb,EAAKa,EAAGb,GAERO,EAASG,EAAO/C,SAASU,KAAK,cAAeiC,OAAON,EAAI,OAM5D,OAJKO,EAAOzE,SACVyE,EAASnF,GAAAA,CAA8CyF,GAAIL,QAAQ,UAG9DD,EAAO,KAEhB,OAAOnF,GAAAA,CAA8CuF,KAOtD,CACD3G,IAAK,kBACLN,MAAO,SAAyB+F,GAC9B,IAAIc,EAASvD,KAAK8D,UAAUrB,GACxBsB,EAAa/D,KAAKgE,cAAcvB,GAEhCc,EAAOzE,QACTyE,EAAOU,SAASjE,KAAKS,QAAQyD,iBAG3BH,EAAWjF,QACbiF,EAAWE,SAASjE,KAAKS,QAAQ0D,gBAGnC1B,EAAIwB,SAASjE,KAAKS,QAAQ2D,iBAAiB1B,KAAK,CAC9C2B,eAAgB,GAChBC,gBAAgB,MASnB,CACDtH,IAAK,oBACLN,MAAO,SAA2B+F,GAChC,IAAI8B,EAAUvE,KAAKgE,cAAcvB,GAC7B+B,EAAUD,EAAQE,OAAO,SACzBxB,EAASsB,EAAQG,QACrB,GAAKH,EAAQzF,OAAb,CAEA,QAA4C,IAAjC2D,EAAIC,KAAK,oBAAqC,CAEvD,IAAIiC,EAAU1B,EAAOP,KAAK,WAEH,IAAZiC,IACTA,EAAUxI,OAAOmC,EAAiE,YAAxEnC,CAA2E,EAAG,eACxF8G,EAAOP,KAAK,KAAMiC,IAIpBlC,EAAIC,KAAK,mBAAoBiC,GAG/B,GAAIH,EAAQC,OAAO,SAAS3F,OAAS0F,EAAQ1F,OAAQ,CAEnD,IAAI8F,EAASnC,EAAIC,KAAK,WAEA,IAAXkC,IACTA,EAASzI,OAAOmC,EAAiE,YAAxEnC,CAA2E,EAAG,eACvFsG,EAAIC,KAAK,KAAMkC,IAKjBJ,EAAQ/C,KAAK,SAAU/F,EAAGmJ,GACxB,IAAItB,EAASnF,GAAAA,CAA8CyG,QACzB,IAAvBtB,EAAOb,KAAK,QAAwBa,EAAOb,KAAK,MAAOkC,KAKtEL,EAAQ9C,KAAK,SAAU/F,EAAGmJ,GACxB,IAAItB,EAASnF,GAAAA,CAA8CyG,QACxB,IAAxBtB,EAAOb,KAAK,SAAyBa,EAAOb,KAAK,OAAQ,WACnEoC,SAOJ,CACD9H,IAAK,+BACLN,MAAO,SAAsC+F,QACN,IAA1BA,EAAIC,KAAK,cAA8BD,EAAIC,KAAK,YAAa1C,KAAKS,QAAQsE,kBAQtF,CACD/H,IAAK,0BACLN,MAAO,SAAiCsI,GACtC,IAAIvB,EAAOzD,KAAKW,SAASU,KAAK,gBAAiBiC,OAAO0B,EAAW,OAC7DR,EAAUxE,KAAKiF,gBAAgBxB,GAC/ByB,EAAclF,KAAKgE,cAAcP,GAEjCe,EAAQ1F,QACV0F,EAAQW,YAAYnF,KAAKS,QAAQyD,iBAG/BgB,EAAYpG,QACdoG,EAAYC,YAAYnF,KAAKS,QAAQ0D,gBAGvCV,EAAK0B,YAAYnF,KAAKS,QAAQ2D,iBAAiB1B,KAAK,CAClD2B,eAAgB,KAChBC,eAAgB,SAQnB,CACDtH,IAAK,qBACLN,MAAO,SAA4B+F,GAEjC,GAAmB,SAAfA,EAAI,GAAGG,KACT,OAAO5C,KAAKoF,wBAAwB3C,EAAIC,KAAK,SAG/C,IAAIa,EAASvD,KAAK8D,UAAUrB,GACxBsB,EAAa/D,KAAKgE,cAAcvB,GAEhCc,EAAOzE,QACTyE,EAAO4B,YAAYnF,KAAKS,QAAQyD,iBAG9BH,EAAWjF,QACbiF,EAAWoB,YAAYnF,KAAKS,QAAQ0D,gBAGtC1B,EAAI0C,YAAYnF,KAAKS,QAAQ2D,iBAAiB1B,KAAK,CACjD2B,eAAgB,KAChBC,eAAgB,SAYnB,CACDtH,IAAK,gBACLN,MAAO,SAAuB+F,GAC5B,IAAI4C,EAAerF,KAAKsF,cAAc7C,GAClC8C,GAAY,EACZC,GAAkB,EAClBC,EAAYhD,EAAIC,KAAK,kBACrBgD,GAAU,EAEd,GAAIjD,EAAIkD,GAAG,wBAA0BlD,EAAIkD,GAAG,oBAAsBlD,EAAIkD,GAAG,cACvE,OAAO,EAGT,OAAQlD,EAAI,GAAGG,MACb,IAAK,QACH2C,EAAYvF,KAAK4F,cAAcnD,EAAIC,KAAK,SACxC,MAEF,IAAK,WACH6C,EAAYF,EACZ,MAEF,IAAK,SACL,IAAK,aACL,IAAK,kBACHE,EAAYF,EACZ,MAEF,QACEE,EAAYvF,KAAK6F,aAAapD,GAG9BgD,IACFD,EAAkBxF,KAAK8F,gBAAgBrD,EAAKgD,EAAWhD,EAAIC,KAAK,cAG9DD,EAAIC,KAAK,kBACXgD,EAAU1F,KAAKS,QAAQsF,WAAWL,QAAQjD,IAG5C,IAAIuD,GAAmF,IAAxE,CAACX,EAAcE,EAAWC,EAAiBE,GAASO,SAAQ,GACvEC,GAAWF,EAAW,QAAU,WAAa,YAEjD,GAAIA,EAAU,CAEZ,IAAIG,EAAoBnG,KAAKW,SAASU,KAAK,kBAAmBiC,OAAOb,EAAIC,KAAK,MAAO,OAErF,GAAIyD,EAAkBrH,OAAQ,CAC5B,IAAIsH,EAAQpG,KAEZmG,EAAkB1E,KAAK,WACjBrD,GAAAA,CAA8C4B,MAAM+C,OACtDqD,EAAM9D,cAAclE,GAAAA,CAA8C4B,UAe1E,OATAA,KAAKgG,EAAW,qBAAuB,mBAAmBvD,GAQ1DA,EAAI4D,QAAQH,EAAS,CAACzD,IACfuD,IASR,CACDhJ,IAAK,eACLN,MAAO,WACL,IAAI4J,EAAStG,KAETuG,EAAM,GAENH,EAAQpG,KAEZA,KAAKmB,QAAQM,KAAK,WAChB8E,EAAIC,KAAKJ,EAAM9D,cAAclE,GAAAA,CAA8C4B,UAE7E,IAAIyG,GAAkC,IAAxBF,EAAIN,SAAQ,GAgB1B,OAfAjG,KAAKW,SAASU,KAAK,sBAAsBI,KAAK,SAAU/F,EAAGgL,GACzD,IAAIC,EAAQvI,GAAAA,CAA8CsI,GAEtDJ,EAAO7F,QAAQe,gBAAgB8E,EAAOzE,6BAA6B8E,GAEvEA,EAAMC,IAAI,UAAWH,EAAU,OAAS,WAS1CzG,KAAKW,SAAS0F,SAASI,EAAU,YAAc,eAAiB,YAAa,CAACzG,KAAKW,WAC5E8F,IASR,CACDzJ,IAAK,eACLN,MAAO,SAAsB+F,EAAKoE,GAEhCA,EAAUA,GAAWpE,EAAIC,KAAK,YAAcD,EAAIC,KAAK,QACrD,IAAIoE,EAAYrE,EAAIM,MAChBgE,GAAQ,EAiBZ,OAfID,EAAUhI,OAGViI,EADE/G,KAAKS,QAAQuG,SAAS1J,eAAeuJ,GAC/B7G,KAAKS,QAAQuG,SAASH,GAASI,KAAKH,GAErCD,IAAYpE,EAAIC,KAAK,SAClB,IAAIwE,OAAOL,GAASI,KAAKH,GAK7BrE,EAAI0E,KAAK,cACfJ,GAAQ,GAGLA,IAQR,CACD/J,IAAK,gBACLN,MAAO,SAAuBsI,GAG5B,IAAIoC,EAASpH,KAAKW,SAASU,KAAK,gBAAiBiC,OAAO0B,EAAW,OAC/D+B,GAAQ,EACRM,GAAW,EAmBf,OAjBAD,EAAO3F,KAAK,SAAU/F,EAAG2G,GACnBjE,GAAAA,CAA8CiE,GAAGK,KAAK,cACxD2E,GAAW,KAGVA,IAAUN,GAAQ,GAElBA,GAEHK,EAAO3F,KAAK,SAAU/F,EAAG2G,GACnBjE,GAAAA,CAA8CiE,GAAG8E,KAAK,aACxDJ,GAAQ,KAMPA,IAUR,CACD/J,IAAK,kBACLN,MAAO,SAAyB+F,EAAKsD,EAAYsB,GAC/C,IAAIC,EAAStH,KAMb,OAJAqH,IAAWA,GAIsB,IAHrBtB,EAAWwB,MAAM,KAAK3D,IAAI,SAAU4D,GAC9C,OAAOF,EAAO7G,QAAQsF,WAAWyB,GAAG/E,EAAK4E,EAAU5E,EAAIW,YAE5C6C,SAAQ,KAOtB,CACDjJ,IAAK,YACLN,MAAO,WACL,IAAI+K,EAAQzH,KAAKW,SACb+G,EAAO1H,KAAKS,QAChBrC,GAAAA,CAA8C,IAAIkF,OAAOoE,EAAKxD,iBAAkBuD,GAAOnG,IAAI,SAAS6D,YAAYuC,EAAKxD,iBACrH9F,GAAAA,CAA8C,IAAIkF,OAAOoE,EAAKtD,iBAAkBqD,GAAOnG,IAAI,SAAS6D,YAAYuC,EAAKtD,iBACrHhG,GAAAA,CAA8C,GAAGkF,OAAOoE,EAAKvE,kBAAmB,KAAKG,OAAOoE,EAAKvD,iBAAiBgB,YAAYuC,EAAKvD,gBACnIsD,EAAMpG,KAAK,sBAAsBuF,IAAI,UAAW,QAChDxI,GAAAA,CAA8C,SAAUqJ,GAAOnG,IAAI,6EAA6EyB,IAAI,IAAIL,KAAK,CAC3J2B,eAAgB,KAChBC,eAAgB,OAElBlG,GAAAA,CAA8C,eAAgBqJ,GAAOnG,IAAI,uBAAuB6F,KAAK,WAAW,GAAOzE,KAAK,CAC1H2B,eAAgB,KAChBC,eAAgB,OAElBlG,GAAAA,CAA8C,kBAAmBqJ,GAAOnG,IAAI,uBAAuB6F,KAAK,WAAW,GAAOzE,KAAK,CAC7H2B,eAAgB,KAChBC,eAAgB,OAOlBmD,EAAMpB,QAAQ,qBAAsB,CAACoB,MAOtC,CACDzK,IAAK,WACLN,MAAO,WACL,IAAI0J,EAAQpG,KAEZA,KAAKW,SAASqB,IAAI,UAAUX,KAAK,sBAAsBuF,IAAI,UAAW,QACtE5G,KAAKmB,QAAQa,IAAI,UAAUP,KAAK,WAC9B2E,EAAMuB,mBAAmBvJ,GAAAA,CAA8C4B,cApmBDrB,EAAkBkB,EAAYxC,UAAW8C,GAAiBC,GAAazB,EAAkBkB,EAAaO,GAymB3KlC,EAnlBT,GA0lBAA,EAAM4C,SAAW,CAQfsB,WAAY,cAQZ8B,gBAAiB,mBAQjBE,gBAAiB,mBAQjBjB,kBAAmB,cAQnBgB,eAAgB,aAWhB3C,gBAAgB,EAUhBuD,eAAgB,YAQhBxC,cAAc,EAQdC,gBAAgB,EAChBwE,SAAU,CACRY,MAAO,cACPC,cAAe,iBACfC,QAAS,aACTC,OAAQ,2BAERC,KAAM,+MACNC,IAAK,iBAELC,MAAO,wIAIPC,IAAK,gPAELC,OAAQ,mEACRC,SAAU,qHAEVC,KAAM,iIAENC,KAAM,2CACNC,QAAS,oCAETC,eAAgB,+DAEhBC,eAAgB,+DAEhBC,MAAO,sCAEPC,QAAS,CACP3B,KAAM,SAAc4B,GAClB,OAAO3K,EAAM4C,SAASkG,SAAiB,OAAEC,KAAK4B,IAAS3K,EAAM4C,SAASkG,SAAc,IAAEC,KAAK4B,MAajG9C,WAAY,CACVL,QAAS,SAAiB7B,EAAIwD,EAAUjE,GACtC,OAAOhF,GAAAA,CAA8C,IAAIkF,OAAOO,EAAGnB,KAAK,kBAAkBK,QAAUc,EAAGd,UAQvG+F,EAKA,SAAUjO,EAAQD,EAASY,GAEjCX,EAAOD,QAAUY,EAA+J,6CAK1KuN,OAKA,SAAUlO,EAAQD,GAExBC,EAAOD,QAAUS","file":"foundation.abide.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(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.core.plugin\", \"./foundation.core.utils\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.abide\"] = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.abide\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], 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_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 = 0);\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/***/ \"./js/entries/plugins/foundation.abide.js\":\n/*!************************************************!*\\\n !*** ./js/entries/plugins/foundation.abide.js ***!\n \\************************************************/\n/*! exports provided: Foundation, Abide */\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_abide__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.abide */ \"./js/foundation.abide.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Abide\", function() { return _foundation_abide__WEBPACK_IMPORTED_MODULE_1__[\"Abide\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_abide__WEBPACK_IMPORTED_MODULE_1__[\"Abide\"], 'Abide');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.abide.js\":\n/*!********************************!*\\\n !*** ./js/foundation.abide.js ***!\n \\********************************/\n/*! exports provided: Abide */\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__, \"Abide\", function() { return Abide; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core.plugin\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core.utils\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);\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 * Abide module.\n * @module foundation.abide\n */\n\nvar Abide =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Abide, _Plugin);\n\n function Abide() {\n _classCallCheck(this, Abide);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Abide).apply(this, arguments));\n }\n\n _createClass(Abide, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of Abide.\n * @class\n * @name Abide\n * @fires Abide#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) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(true, {}, Abide.defaults, this.$element.data(), options);\n this.className = 'Abide'; // ie9 back compat\n\n this._init();\n }\n /**\n * Initializes the Abide plugin and calls functions to get Abide functioning on load.\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var _this2 = this;\n\n this.$inputs = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.merge( // Consider as input to validate:\n this.$element.find('input').not('[type=submit]'), // * all input fields expect submit\n this.$element.find('textarea, select') // * all textareas and select fields\n );\n var $globalErrors = this.$element.find('[data-abide-error]'); // Add a11y attributes to all fields\n\n if (this.options.a11yAttributes) {\n this.$inputs.each(function (i, input) {\n return _this2.addA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(input));\n });\n $globalErrors.each(function (i, error) {\n return _this2.addGlobalErrorA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(error));\n });\n }\n\n this._events();\n }\n /**\n * Initializes events for Abide.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this3 = this;\n\n this.$element.off('.abide').on('reset.zf.abide', function () {\n _this3.resetForm();\n }).on('submit.zf.abide', function () {\n return _this3.validateForm();\n });\n\n if (this.options.validateOn === 'fieldChange') {\n this.$inputs.off('change.zf.abide').on('change.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n\n if (this.options.liveValidate) {\n this.$inputs.off('input.zf.abide').on('input.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n\n if (this.options.validateOnBlur) {\n this.$inputs.off('blur.zf.abide').on('blur.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n }\n /**\n * Calls necessary functions to update Abide upon DOM change\n * @private\n */\n\n }, {\n key: \"_reflow\",\n value: function _reflow() {\n this._init();\n }\n /**\n * Checks whether or not a form element has the required attribute and if it's checked or not\n * @param {Object} element - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n\n }, {\n key: \"requiredCheck\",\n value: function requiredCheck($el) {\n if (!$el.attr('required')) return true;\n var isGood = true;\n\n switch ($el[0].type) {\n case 'checkbox':\n isGood = $el[0].checked;\n break;\n\n case 'select':\n case 'select-one':\n case 'select-multiple':\n var opt = $el.find('option:selected');\n if (!opt.length || !opt.val()) isGood = false;\n break;\n\n default:\n if (!$el.val() || !$el.val().length) isGood = false;\n }\n\n return isGood;\n }\n /**\n * Get:\n * - Based on $el, the first element(s) corresponding to `formErrorSelector` in this order:\n * 1. The element's direct sibling('s).\n * 2. The element's parent's children.\n * - Element(s) with the attribute `[data-form-error-for]` set with the element's id.\n *\n * This allows for multiple form errors per input, though if none are found, no form errors will be shown.\n *\n * @param {Object} $el - jQuery object to use as reference to find the form error selector.\n * @returns {Object} jQuery object with the selector.\n */\n\n }, {\n key: \"findFormError\",\n value: function findFormError($el) {\n var id = $el[0].id;\n var $error = $el.siblings(this.options.formErrorSelector);\n\n if (!$error.length) {\n $error = $el.parent().find(this.options.formErrorSelector);\n }\n\n if (id) {\n $error = $error.add(this.$element.find(\"[data-form-error-for=\\\"\".concat(id, \"\\\"]\")));\n }\n\n return $error;\n }\n /**\n * Get the first element in this order:\n * 2. The <label> with the attribute `[for=\"someInputId\"]`\n * 3. The `.closest()` <label>\n *\n * @param {Object} $el - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n\n }, {\n key: \"findLabel\",\n value: function findLabel($el) {\n var id = $el[0].id;\n var $label = this.$element.find(\"label[for=\\\"\".concat(id, \"\\\"]\"));\n\n if (!$label.length) {\n return $el.closest('label');\n }\n\n return $label;\n }\n /**\n * Get the set of labels associated with a set of radio els in this order\n * 2. The <label> with the attribute `[for=\"someInputId\"]`\n * 3. The `.closest()` <label>\n *\n * @param {Object} $el - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n\n }, {\n key: \"findRadioLabels\",\n value: function findRadioLabels($els) {\n var _this4 = this;\n\n var labels = $els.map(function (i, el) {\n var id = el.id;\n\n var $label = _this4.$element.find(\"label[for=\\\"\".concat(id, \"\\\"]\"));\n\n if (!$label.length) {\n $label = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el).closest('label');\n }\n\n return $label[0];\n });\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()(labels);\n }\n /**\n * Adds the CSS error class as specified by the Abide settings to the label, input, and the form\n * @param {Object} $el - jQuery object to add the class to\n */\n\n }, {\n key: \"addErrorClasses\",\n value: function addErrorClasses($el) {\n var $label = this.findLabel($el);\n var $formError = this.findFormError($el);\n\n if ($label.length) {\n $label.addClass(this.options.labelErrorClass);\n }\n\n if ($formError.length) {\n $formError.addClass(this.options.formErrorClass);\n }\n\n $el.addClass(this.options.inputErrorClass).attr({\n 'data-invalid': '',\n 'aria-invalid': true\n });\n }\n /**\n * Adds [for] and [role=alert] attributes to all form error targetting $el,\n * and [aria-describedby] attribute to $el toward the first form error.\n * @param {Object} $el - jQuery object\n */\n\n }, {\n key: \"addA11yAttributes\",\n value: function addA11yAttributes($el) {\n var $errors = this.findFormError($el);\n var $labels = $errors.filter('label');\n var $error = $errors.first();\n if (!$errors.length) return; // Set [aria-describedby] on the input toward the first form error if it is not set\n\n if (typeof $el.attr('aria-describedby') === 'undefined') {\n // Get the first error ID or create one\n var errorId = $error.attr('id');\n\n if (typeof errorId === 'undefined') {\n errorId = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'abide-error');\n $error.attr('id', errorId);\n }\n\n ;\n $el.attr('aria-describedby', errorId);\n }\n\n if ($labels.filter('[for]').length < $labels.length) {\n // Get the input ID or create one\n var elemId = $el.attr('id');\n\n if (typeof elemId === 'undefined') {\n elemId = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'abide-input');\n $el.attr('id', elemId);\n }\n\n ; // For each label targeting $el, set [for] if it is not set.\n\n $labels.each(function (i, label) {\n var $label = jquery__WEBPACK_IMPORTED_MODULE_0___default()(label);\n if (typeof $label.attr('for') === 'undefined') $label.attr('for', elemId);\n });\n } // For each error targeting $el, set [role=alert] if it is not set.\n\n\n $errors.each(function (i, label) {\n var $label = jquery__WEBPACK_IMPORTED_MODULE_0___default()(label);\n if (typeof $label.attr('role') === 'undefined') $label.attr('role', 'alert');\n }).end();\n }\n /**\n * Adds [aria-live] attribute to the given global form error $el.\n * @param {Object} $el - jQuery object to add the attribute to\n */\n\n }, {\n key: \"addGlobalErrorA11yAttributes\",\n value: function addGlobalErrorA11yAttributes($el) {\n if (typeof $el.attr('aria-live') === 'undefined') $el.attr('aria-live', this.options.a11yErrorLevel);\n }\n /**\n * Remove CSS error classes etc from an entire radio button group\n * @param {String} groupName - A string that specifies the name of a radio button group\n *\n */\n\n }, {\n key: \"removeRadioErrorClasses\",\n value: function removeRadioErrorClasses(groupName) {\n var $els = this.$element.find(\":radio[name=\\\"\".concat(groupName, \"\\\"]\"));\n var $labels = this.findRadioLabels($els);\n var $formErrors = this.findFormError($els);\n\n if ($labels.length) {\n $labels.removeClass(this.options.labelErrorClass);\n }\n\n if ($formErrors.length) {\n $formErrors.removeClass(this.options.formErrorClass);\n }\n\n $els.removeClass(this.options.inputErrorClass).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n }\n /**\n * Removes CSS error class as specified by the Abide settings from the label, input, and the form\n * @param {Object} $el - jQuery object to remove the class from\n */\n\n }, {\n key: \"removeErrorClasses\",\n value: function removeErrorClasses($el) {\n // radios need to clear all of the els\n if ($el[0].type == 'radio') {\n return this.removeRadioErrorClasses($el.attr('name'));\n }\n\n var $label = this.findLabel($el);\n var $formError = this.findFormError($el);\n\n if ($label.length) {\n $label.removeClass(this.options.labelErrorClass);\n }\n\n if ($formError.length) {\n $formError.removeClass(this.options.formErrorClass);\n }\n\n $el.removeClass(this.options.inputErrorClass).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n }\n /**\n * Goes through a form to find inputs and proceeds to validate them in ways specific to their type.\n * Ignores inputs with data-abide-ignore, type=\"hidden\" or disabled attributes set\n * @fires Abide#invalid\n * @fires Abide#valid\n * @param {Object} element - jQuery object to validate, should be an HTML input\n * @returns {Boolean} goodToGo - If the input is valid or not.\n */\n\n }, {\n key: \"validateInput\",\n value: function validateInput($el) {\n var clearRequire = this.requiredCheck($el),\n validated = false,\n customValidator = true,\n validator = $el.attr('data-validator'),\n equalTo = true; // don't validate ignored inputs or hidden inputs or disabled inputs\n\n if ($el.is('[data-abide-ignore]') || $el.is('[type=\"hidden\"]') || $el.is('[disabled]')) {\n return true;\n }\n\n switch ($el[0].type) {\n case 'radio':\n validated = this.validateRadio($el.attr('name'));\n break;\n\n case 'checkbox':\n validated = clearRequire;\n break;\n\n case 'select':\n case 'select-one':\n case 'select-multiple':\n validated = clearRequire;\n break;\n\n default:\n validated = this.validateText($el);\n }\n\n if (validator) {\n customValidator = this.matchValidation($el, validator, $el.attr('required'));\n }\n\n if ($el.attr('data-equalto')) {\n equalTo = this.options.validators.equalTo($el);\n }\n\n var goodToGo = [clearRequire, validated, customValidator, equalTo].indexOf(false) === -1;\n var message = (goodToGo ? 'valid' : 'invalid') + '.zf.abide';\n\n if (goodToGo) {\n // Re-validate inputs that depend on this one with equalto\n var dependentElements = this.$element.find(\"[data-equalto=\\\"\".concat($el.attr('id'), \"\\\"]\"));\n\n if (dependentElements.length) {\n var _this = this;\n\n dependentElements.each(function () {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).val()) {\n _this.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n }\n });\n }\n }\n\n this[goodToGo ? 'removeErrorClasses' : 'addErrorClasses']($el);\n /**\n * Fires when the input is done checking for validation. Event trigger is either `valid.zf.abide` or `invalid.zf.abide`\n * Trigger includes the DOM element of the input.\n * @event Abide#valid\n * @event Abide#invalid\n */\n\n $el.trigger(message, [$el]);\n return goodToGo;\n }\n /**\n * Goes through a form and if there are any invalid inputs, it will display the form error element\n * @returns {Boolean} noError - true if no errors were detected...\n * @fires Abide#formvalid\n * @fires Abide#forminvalid\n */\n\n }, {\n key: \"validateForm\",\n value: function validateForm() {\n var _this5 = this;\n\n var acc = [];\n\n var _this = this;\n\n this.$inputs.each(function () {\n acc.push(_this.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)));\n });\n var noError = acc.indexOf(false) === -1;\n this.$element.find('[data-abide-error]').each(function (i, elem) {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(elem); // Ensure a11y attributes are set\n\n if (_this5.options.a11yAttributes) _this5.addGlobalErrorA11yAttributes($elem); // Show or hide the error\n\n $elem.css('display', noError ? 'none' : 'block');\n });\n /**\n * Fires when the form is finished validating. Event trigger is either `formvalid.zf.abide` or `forminvalid.zf.abide`.\n * Trigger includes the element of the form.\n * @event Abide#formvalid\n * @event Abide#forminvalid\n */\n\n this.$element.trigger((noError ? 'formvalid' : 'forminvalid') + '.zf.abide', [this.$element]);\n return noError;\n }\n /**\n * Determines whether or a not a text input is valid based on the pattern specified in the attribute. If no matching pattern is found, returns true.\n * @param {Object} $el - jQuery object to validate, should be a text input HTML element\n * @param {String} pattern - string value of one of the RegEx patterns in Abide.options.patterns\n * @returns {Boolean} Boolean value depends on whether or not the input value matches the pattern specified\n */\n\n }, {\n key: \"validateText\",\n value: function validateText($el, pattern) {\n // A pattern can be passed to this function, or it will be infered from the input's \"pattern\" attribute, or it's \"type\" attribute\n pattern = pattern || $el.attr('pattern') || $el.attr('type');\n var inputText = $el.val();\n var valid = false;\n\n if (inputText.length) {\n // If the pattern attribute on the element is in Abide's list of patterns, then test that regexp\n if (this.options.patterns.hasOwnProperty(pattern)) {\n valid = this.options.patterns[pattern].test(inputText);\n } // If the pattern name isn't also the type attribute of the field, then test it as a regexp\n else if (pattern !== $el.attr('type')) {\n valid = new RegExp(pattern).test(inputText);\n } else {\n valid = true;\n }\n } // An empty field is valid if it's not required\n else if (!$el.prop('required')) {\n valid = true;\n }\n\n return valid;\n }\n /**\n * Determines whether or a not a radio input is valid based on whether or not it is required and selected. Although the function targets a single `<input>`, it validates by checking the `required` and `checked` properties of all radio buttons in its group.\n * @param {String} groupName - A string that specifies the name of a radio button group\n * @returns {Boolean} Boolean value depends on whether or not at least one radio input has been selected (if it's required)\n */\n\n }, {\n key: \"validateRadio\",\n value: function validateRadio(groupName) {\n // If at least one radio in the group has the `required` attribute, the group is considered required\n // Per W3C spec, all radio buttons in a group should have `required`, but we're being nice\n var $group = this.$element.find(\":radio[name=\\\"\".concat(groupName, \"\\\"]\"));\n var valid = false,\n required = false; // For the group to be required, at least one radio needs to be required\n\n $group.each(function (i, e) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(e).attr('required')) {\n required = true;\n }\n });\n if (!required) valid = true;\n\n if (!valid) {\n // For the group to be valid, at least one radio needs to be checked\n $group.each(function (i, e) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(e).prop('checked')) {\n valid = true;\n }\n });\n }\n\n ;\n return valid;\n }\n /**\n * Determines if a selected input passes a custom validation function. Multiple validations can be used, if passed to the element with `data-validator=\"foo bar baz\"` in a space separated listed.\n * @param {Object} $el - jQuery input element.\n * @param {String} validators - a string of function names matching functions in the Abide.options.validators object.\n * @param {Boolean} required - self explanatory?\n * @returns {Boolean} - true if validations passed.\n */\n\n }, {\n key: \"matchValidation\",\n value: function matchValidation($el, validators, required) {\n var _this6 = this;\n\n required = required ? true : false;\n var clear = validators.split(' ').map(function (v) {\n return _this6.options.validators[v]($el, required, $el.parent());\n });\n return clear.indexOf(false) === -1;\n }\n /**\n * Resets form inputs and styles\n * @fires Abide#formreset\n */\n\n }, {\n key: \"resetForm\",\n value: function resetForm() {\n var $form = this.$element,\n opts = this.options;\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\".\".concat(opts.labelErrorClass), $form).not('small').removeClass(opts.labelErrorClass);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\".\".concat(opts.inputErrorClass), $form).not('small').removeClass(opts.inputErrorClass);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"\".concat(opts.formErrorSelector, \".\").concat(opts.formErrorClass)).removeClass(opts.formErrorClass);\n $form.find('[data-abide-error]').css('display', 'none');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(':input', $form).not(':button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]').val('').attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(':input:radio', $form).not('[data-abide-ignore]').prop('checked', false).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(':input:checkbox', $form).not('[data-abide-ignore]').prop('checked', false).attr({\n 'data-invalid': null,\n 'aria-invalid': null\n });\n /**\n * Fires when the form has been reset.\n * @event Abide#formreset\n */\n\n $form.trigger('formreset.zf.abide', [$form]);\n }\n /**\n * Destroys an instance of Abide.\n * Removes error styles and classes from elements, without resetting their values.\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n var _this = this;\n\n this.$element.off('.abide').find('[data-abide-error]').css('display', 'none');\n this.$inputs.off('.abide').each(function () {\n _this.removeErrorClasses(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n });\n }\n }]);\n\n return Abide;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n/**\n * Default settings for plugin\n */\n\n\nAbide.defaults = {\n /**\n * The default event to validate inputs. Checkboxes and radios validate immediately.\n * Remove or change this value for manual validation.\n * @option\n * @type {?string}\n * @default 'fieldChange'\n */\n validateOn: 'fieldChange',\n\n /**\n * Class to be applied to input labels on failed validation.\n * @option\n * @type {string}\n * @default 'is-invalid-label'\n */\n labelErrorClass: 'is-invalid-label',\n\n /**\n * Class to be applied to inputs on failed validation.\n * @option\n * @type {string}\n * @default 'is-invalid-input'\n */\n inputErrorClass: 'is-invalid-input',\n\n /**\n * Class selector to use to target Form Errors for show/hide.\n * @option\n * @type {string}\n * @default '.form-error'\n */\n formErrorSelector: '.form-error',\n\n /**\n * Class added to Form Errors on failed validation.\n * @option\n * @type {string}\n * @default 'is-visible'\n */\n formErrorClass: 'is-visible',\n\n /**\n * If true, automatically insert when possible:\n * - `[aria-describedby]` on fields\n * - `[role=alert]` on form errors and `[for]` on form error labels\n * - `[aria-live]` on global errors `[data-abide-error]` (see option `a11yErrorLevel`).\n * @option\n * @type {boolean}\n * @default true\n */\n a11yAttributes: true,\n\n /**\n * [aria-live] attribute value to be applied on global errors `[data-abide-error]`.\n * Options are: 'assertive', 'polite' and 'off'/null\n * @option\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions\n * @type {string}\n * @default 'assertive'\n */\n a11yErrorLevel: 'assertive',\n\n /**\n * Set to true to validate text inputs on any value change.\n * @option\n * @type {boolean}\n * @default false\n */\n liveValidate: false,\n\n /**\n * Set to true to validate inputs on blur.\n * @option\n * @type {boolean}\n * @default false\n */\n validateOnBlur: false,\n patterns: {\n alpha: /^[a-zA-Z]+$/,\n alpha_numeric: /^[a-zA-Z0-9]+$/,\n integer: /^[-+]?\\d+$/,\n number: /^[-+]?\\d*(?:[\\.\\,]\\d+)?$/,\n // amex, visa, diners\n card: /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11})$/,\n cvv: /^([0-9]){3,4}$/,\n // http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#valid-e-mail-address\n email: /^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,\n // From CommonRegexJS (@talyssonoc)\n // https://github.com/talyssonoc/CommonRegexJS/blob/e2901b9f57222bc14069dc8f0598d5f412555411/lib/commonregex.js#L76\n // For more restrictive URL Regexs, see https://mathiasbynens.be/demo/url-regex.\n url: /^((?:(https?|ftps?|file|ssh|sftp):\\/\\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\\/)(?:[^\\s()<>]+|\\((?:[^\\s()<>]+|(?:\\([^\\s()<>]+\\)))*\\))+(?:\\((?:[^\\s()<>]+|(?:\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:\\'\".,<>?\\xab\\xbb\\u201c\\u201d\\u2018\\u2019]))$/,\n // abc.de\n domain: /^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,8}$/,\n datetime: /^([0-2][0-9]{3})\\-([0-1][0-9])\\-([0-3][0-9])T([0-5][0-9])\\:([0-5][0-9])\\:([0-5][0-9])(Z|([\\-\\+]([0-1][0-9])\\:00))$/,\n // YYYY-MM-DD\n date: /(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,\n // HH:MM:SS\n time: /^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,\n dateISO: /^\\d{4}[\\/\\-]\\d{1,2}[\\/\\-]\\d{1,2}$/,\n // MM/DD/YYYY\n month_day_year: /^(0[1-9]|1[012])[- \\/.](0[1-9]|[12][0-9]|3[01])[- \\/.]\\d{4}$/,\n // DD/MM/YYYY\n day_month_year: /^(0[1-9]|[12][0-9]|3[01])[- \\/.](0[1-9]|1[012])[- \\/.]\\d{4}$/,\n // #FFF or #FFFFFF\n color: /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,\n // Domain || URL\n website: {\n test: function test(text) {\n return Abide.defaults.patterns['domain'].test(text) || Abide.defaults.patterns['url'].test(text);\n }\n }\n },\n\n /**\n * Optional validation functions to be used. `equalTo` being the only default included function.\n * Functions should return only a boolean if the input is valid or not. Functions are given the following arguments:\n * el : The jQuery element to validate.\n * required : Boolean value of the required attribute be present or not.\n * parent : The direct parent of the input.\n * @option\n */\n validators: {\n equalTo: function equalTo(el, required, parent) {\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(el.attr('data-equalto'))).val() === el.val();\n }\n }\n};\n\n\n/***/ }),\n\n/***/ 0:\n/*!******************************************************!*\\\n !*** multi ./js/entries/plugins/foundation.abide.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.abide.js */\"./js/entries/plugins/foundation.abide.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.abide.js.map"]}
|
@@ -0,0 +1,676 @@
|
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
2
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
3
|
+
module.exports = factory(require("./foundation.core"), require("./foundation.core.plugin"), require("./foundation.core.utils"), require("./foundation.util.keyboard"), require("jquery"));
|
4
|
+
else if(typeof define === 'function' && define.amd)
|
5
|
+
define(["./foundation.core", "./foundation.core.plugin", "./foundation.core.utils", "./foundation.util.keyboard", "jquery"], factory);
|
6
|
+
else if(typeof exports === 'object')
|
7
|
+
exports["foundation.accordion"] = factory(require("./foundation.core"), require("./foundation.core.plugin"), require("./foundation.core.utils"), require("./foundation.util.keyboard"), require("jquery"));
|
8
|
+
else
|
9
|
+
root["__FOUNDATION_EXTERNAL__"] = root["__FOUNDATION_EXTERNAL__"] || {}, root["__FOUNDATION_EXTERNAL__"]["foundation.accordion"] = factory(root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["__FOUNDATION_EXTERNAL__"]["foundation.util.keyboard"], root["jQuery"]);
|
10
|
+
})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__, __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE_jquery__) {
|
11
|
+
return /******/ (function(modules) { // webpackBootstrap
|
12
|
+
/******/ // The module cache
|
13
|
+
/******/ var installedModules = {};
|
14
|
+
/******/
|
15
|
+
/******/ // The require function
|
16
|
+
/******/ function __webpack_require__(moduleId) {
|
17
|
+
/******/
|
18
|
+
/******/ // Check if module is in cache
|
19
|
+
/******/ if(installedModules[moduleId]) {
|
20
|
+
/******/ return installedModules[moduleId].exports;
|
21
|
+
/******/ }
|
22
|
+
/******/ // Create a new module (and put it into the cache)
|
23
|
+
/******/ var module = installedModules[moduleId] = {
|
24
|
+
/******/ i: moduleId,
|
25
|
+
/******/ l: false,
|
26
|
+
/******/ exports: {}
|
27
|
+
/******/ };
|
28
|
+
/******/
|
29
|
+
/******/ // Execute the module function
|
30
|
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
31
|
+
/******/
|
32
|
+
/******/ // Flag the module as loaded
|
33
|
+
/******/ module.l = true;
|
34
|
+
/******/
|
35
|
+
/******/ // Return the exports of the module
|
36
|
+
/******/ return module.exports;
|
37
|
+
/******/ }
|
38
|
+
/******/
|
39
|
+
/******/
|
40
|
+
/******/ // expose the modules object (__webpack_modules__)
|
41
|
+
/******/ __webpack_require__.m = modules;
|
42
|
+
/******/
|
43
|
+
/******/ // expose the module cache
|
44
|
+
/******/ __webpack_require__.c = installedModules;
|
45
|
+
/******/
|
46
|
+
/******/ // define getter function for harmony exports
|
47
|
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
48
|
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
49
|
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
50
|
+
/******/ }
|
51
|
+
/******/ };
|
52
|
+
/******/
|
53
|
+
/******/ // define __esModule on exports
|
54
|
+
/******/ __webpack_require__.r = function(exports) {
|
55
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
56
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
57
|
+
/******/ }
|
58
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
59
|
+
/******/ };
|
60
|
+
/******/
|
61
|
+
/******/ // create a fake namespace object
|
62
|
+
/******/ // mode & 1: value is a module id, require it
|
63
|
+
/******/ // mode & 2: merge all properties of value into the ns
|
64
|
+
/******/ // mode & 4: return value when already ns object
|
65
|
+
/******/ // mode & 8|1: behave like require
|
66
|
+
/******/ __webpack_require__.t = function(value, mode) {
|
67
|
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
68
|
+
/******/ if(mode & 8) return value;
|
69
|
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
70
|
+
/******/ var ns = Object.create(null);
|
71
|
+
/******/ __webpack_require__.r(ns);
|
72
|
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
73
|
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
74
|
+
/******/ return ns;
|
75
|
+
/******/ };
|
76
|
+
/******/
|
77
|
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
78
|
+
/******/ __webpack_require__.n = function(module) {
|
79
|
+
/******/ var getter = module && module.__esModule ?
|
80
|
+
/******/ function getDefault() { return module['default']; } :
|
81
|
+
/******/ function getModuleExports() { return module; };
|
82
|
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
83
|
+
/******/ return getter;
|
84
|
+
/******/ };
|
85
|
+
/******/
|
86
|
+
/******/ // Object.prototype.hasOwnProperty.call
|
87
|
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
88
|
+
/******/
|
89
|
+
/******/ // __webpack_public_path__
|
90
|
+
/******/ __webpack_require__.p = "";
|
91
|
+
/******/
|
92
|
+
/******/
|
93
|
+
/******/ // Load entry module and return exports
|
94
|
+
/******/ return __webpack_require__(__webpack_require__.s = 1);
|
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
|
+
/***/ "./js/entries/plugins/foundation.accordion.js":
|
144
|
+
/*!****************************************************!*\
|
145
|
+
!*** ./js/entries/plugins/foundation.accordion.js ***!
|
146
|
+
\****************************************************/
|
147
|
+
/*! exports provided: Foundation, Accordion */
|
148
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
149
|
+
|
150
|
+
"use strict";
|
151
|
+
__webpack_require__.r(__webpack_exports__);
|
152
|
+
/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ "./foundation.core");
|
153
|
+
/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);
|
154
|
+
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Foundation", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"]; });
|
155
|
+
|
156
|
+
/* harmony import */ var _foundation_accordion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.accordion */ "./js/foundation.accordion.js");
|
157
|
+
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Accordion", function() { return _foundation_accordion__WEBPACK_IMPORTED_MODULE_1__["Accordion"]; });
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
_foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"].plugin(_foundation_accordion__WEBPACK_IMPORTED_MODULE_1__["Accordion"], 'Accordion');
|
162
|
+
|
163
|
+
|
164
|
+
/***/ }),
|
165
|
+
|
166
|
+
/***/ "./js/foundation.accordion.js":
|
167
|
+
/*!************************************!*\
|
168
|
+
!*** ./js/foundation.accordion.js ***!
|
169
|
+
\************************************/
|
170
|
+
/*! exports provided: Accordion */
|
171
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
172
|
+
|
173
|
+
"use strict";
|
174
|
+
__webpack_require__.r(__webpack_exports__);
|
175
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Accordion", function() { return Accordion; });
|
176
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
|
177
|
+
/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
|
178
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ "./foundation.core.utils");
|
179
|
+
/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);
|
180
|
+
/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ "./foundation.util.keyboard");
|
181
|
+
/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);
|
182
|
+
/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.core.plugin */ "./foundation.core.plugin");
|
183
|
+
/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__);
|
184
|
+
|
185
|
+
|
186
|
+
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); }
|
187
|
+
|
188
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
189
|
+
|
190
|
+
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); } }
|
191
|
+
|
192
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
193
|
+
|
194
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
195
|
+
|
196
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
197
|
+
|
198
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
199
|
+
|
200
|
+
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); }
|
201
|
+
|
202
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
/**
|
209
|
+
* Accordion module.
|
210
|
+
* @module foundation.accordion
|
211
|
+
* @requires foundation.util.keyboard
|
212
|
+
*/
|
213
|
+
|
214
|
+
var Accordion =
|
215
|
+
/*#__PURE__*/
|
216
|
+
function (_Plugin) {
|
217
|
+
_inherits(Accordion, _Plugin);
|
218
|
+
|
219
|
+
function Accordion() {
|
220
|
+
_classCallCheck(this, Accordion);
|
221
|
+
|
222
|
+
return _possibleConstructorReturn(this, _getPrototypeOf(Accordion).apply(this, arguments));
|
223
|
+
}
|
224
|
+
|
225
|
+
_createClass(Accordion, [{
|
226
|
+
key: "_setup",
|
227
|
+
|
228
|
+
/**
|
229
|
+
* Creates a new instance of an accordion.
|
230
|
+
* @class
|
231
|
+
* @name Accordion
|
232
|
+
* @fires Accordion#init
|
233
|
+
* @param {jQuery} element - jQuery object to make into an accordion.
|
234
|
+
* @param {Object} options - a plain object with settings to override the default options.
|
235
|
+
*/
|
236
|
+
value: function _setup(element, options) {
|
237
|
+
this.$element = element;
|
238
|
+
this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Accordion.defaults, this.$element.data(), options);
|
239
|
+
this.className = 'Accordion'; // ie9 back compat
|
240
|
+
|
241
|
+
this._init();
|
242
|
+
|
243
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].register('Accordion', {
|
244
|
+
'ENTER': 'toggle',
|
245
|
+
'SPACE': 'toggle',
|
246
|
+
'ARROW_DOWN': 'next',
|
247
|
+
'ARROW_UP': 'previous'
|
248
|
+
});
|
249
|
+
}
|
250
|
+
/**
|
251
|
+
* Initializes the accordion by animating the preset active pane(s).
|
252
|
+
* @private
|
253
|
+
*/
|
254
|
+
|
255
|
+
}, {
|
256
|
+
key: "_init",
|
257
|
+
value: function _init() {
|
258
|
+
var _this2 = this;
|
259
|
+
|
260
|
+
this._isInitializing = true;
|
261
|
+
this.$element.attr('role', 'tablist');
|
262
|
+
this.$tabs = this.$element.children('[data-accordion-item]');
|
263
|
+
this.$tabs.each(function (idx, el) {
|
264
|
+
var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el),
|
265
|
+
$content = $el.children('[data-tab-content]'),
|
266
|
+
id = $content[0].id || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["GetYoDigits"])(6, 'accordion'),
|
267
|
+
linkId = el.id ? "".concat(el.id, "-label") : "".concat(id, "-label");
|
268
|
+
$el.find('a:first').attr({
|
269
|
+
'aria-controls': id,
|
270
|
+
'role': 'tab',
|
271
|
+
'id': linkId,
|
272
|
+
'aria-expanded': false,
|
273
|
+
'aria-selected': false
|
274
|
+
});
|
275
|
+
$content.attr({
|
276
|
+
'role': 'tabpanel',
|
277
|
+
'aria-labelledby': linkId,
|
278
|
+
'aria-hidden': true,
|
279
|
+
'id': id
|
280
|
+
});
|
281
|
+
});
|
282
|
+
var $initActive = this.$element.find('.is-active').children('[data-tab-content]');
|
283
|
+
|
284
|
+
if ($initActive.length) {
|
285
|
+
// Save up the initial hash to return to it later when going back in history
|
286
|
+
this._initialAnchor = $initActive.prev('a').attr('href');
|
287
|
+
|
288
|
+
this._openSingleTab($initActive);
|
289
|
+
}
|
290
|
+
|
291
|
+
this._checkDeepLink = function () {
|
292
|
+
var anchor = window.location.hash;
|
293
|
+
|
294
|
+
if (!anchor.length) {
|
295
|
+
// If we are still initializing and there is no anchor, then there is nothing to do
|
296
|
+
if (_this2._isInitializing) return; // Otherwise, move to the initial anchor
|
297
|
+
|
298
|
+
if (_this2._initialAnchor) anchor = _this2._initialAnchor;
|
299
|
+
}
|
300
|
+
|
301
|
+
var $anchor = anchor && jquery__WEBPACK_IMPORTED_MODULE_0___default()(anchor);
|
302
|
+
|
303
|
+
var $link = anchor && _this2.$element.find("[href$=\"".concat(anchor, "\"]")); // Whether the anchor element that has been found is part of this element
|
304
|
+
|
305
|
+
|
306
|
+
var isOwnAnchor = !!($anchor.length && $link.length); // If there is an anchor for the hash, open it (if not already active)
|
307
|
+
|
308
|
+
if ($anchor && $link && $link.length) {
|
309
|
+
if (!$link.parent('[data-accordion-item]').hasClass('is-active')) {
|
310
|
+
_this2._openSingleTab($anchor);
|
311
|
+
}
|
312
|
+
|
313
|
+
;
|
314
|
+
} // Otherwise, close everything
|
315
|
+
else {
|
316
|
+
_this2._closeAllTabs();
|
317
|
+
}
|
318
|
+
|
319
|
+
if (isOwnAnchor) {
|
320
|
+
// Roll up a little to show the titles
|
321
|
+
if (_this2.options.deepLinkSmudge) {
|
322
|
+
Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__["onLoad"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {
|
323
|
+
var offset = _this2.$element.offset();
|
324
|
+
|
325
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').animate({
|
326
|
+
scrollTop: offset.top
|
327
|
+
}, _this2.options.deepLinkSmudgeDelay);
|
328
|
+
});
|
329
|
+
}
|
330
|
+
/**
|
331
|
+
* Fires when the plugin has deeplinked at pageload
|
332
|
+
* @event Accordion#deeplink
|
333
|
+
*/
|
334
|
+
|
335
|
+
|
336
|
+
_this2.$element.trigger('deeplink.zf.accordion', [$link, $anchor]);
|
337
|
+
}
|
338
|
+
}; //use browser to open a tab, if it exists in this tabset
|
339
|
+
|
340
|
+
|
341
|
+
if (this.options.deepLink) {
|
342
|
+
this._checkDeepLink();
|
343
|
+
}
|
344
|
+
|
345
|
+
this._events();
|
346
|
+
|
347
|
+
this._isInitializing = false;
|
348
|
+
}
|
349
|
+
/**
|
350
|
+
* Adds event handlers for items within the accordion.
|
351
|
+
* @private
|
352
|
+
*/
|
353
|
+
|
354
|
+
}, {
|
355
|
+
key: "_events",
|
356
|
+
value: function _events() {
|
357
|
+
var _this = this;
|
358
|
+
|
359
|
+
this.$tabs.each(function () {
|
360
|
+
var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);
|
361
|
+
var $tabContent = $elem.children('[data-tab-content]');
|
362
|
+
|
363
|
+
if ($tabContent.length) {
|
364
|
+
$elem.children('a').off('click.zf.accordion keydown.zf.accordion').on('click.zf.accordion', function (e) {
|
365
|
+
e.preventDefault();
|
366
|
+
|
367
|
+
_this.toggle($tabContent);
|
368
|
+
}).on('keydown.zf.accordion', function (e) {
|
369
|
+
_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__["Keyboard"].handleKey(e, 'Accordion', {
|
370
|
+
toggle: function toggle() {
|
371
|
+
_this.toggle($tabContent);
|
372
|
+
},
|
373
|
+
next: function next() {
|
374
|
+
var $a = $elem.next().find('a').focus();
|
375
|
+
|
376
|
+
if (!_this.options.multiExpand) {
|
377
|
+
$a.trigger('click.zf.accordion');
|
378
|
+
}
|
379
|
+
},
|
380
|
+
previous: function previous() {
|
381
|
+
var $a = $elem.prev().find('a').focus();
|
382
|
+
|
383
|
+
if (!_this.options.multiExpand) {
|
384
|
+
$a.trigger('click.zf.accordion');
|
385
|
+
}
|
386
|
+
},
|
387
|
+
handled: function handled() {
|
388
|
+
e.preventDefault();
|
389
|
+
e.stopPropagation();
|
390
|
+
}
|
391
|
+
});
|
392
|
+
});
|
393
|
+
}
|
394
|
+
});
|
395
|
+
|
396
|
+
if (this.options.deepLink) {
|
397
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('hashchange', this._checkDeepLink);
|
398
|
+
}
|
399
|
+
}
|
400
|
+
/**
|
401
|
+
* Toggles the selected content pane's open/close state.
|
402
|
+
* @param {jQuery} $target - jQuery object of the pane to toggle (`.accordion-content`).
|
403
|
+
* @function
|
404
|
+
*/
|
405
|
+
|
406
|
+
}, {
|
407
|
+
key: "toggle",
|
408
|
+
value: function toggle($target) {
|
409
|
+
if ($target.closest('[data-accordion]').is('[disabled]')) {
|
410
|
+
console.info('Cannot toggle an accordion that is disabled.');
|
411
|
+
return;
|
412
|
+
}
|
413
|
+
|
414
|
+
if ($target.parent().hasClass('is-active')) {
|
415
|
+
this.up($target);
|
416
|
+
} else {
|
417
|
+
this.down($target);
|
418
|
+
} //either replace or update browser history
|
419
|
+
|
420
|
+
|
421
|
+
if (this.options.deepLink) {
|
422
|
+
var anchor = $target.prev('a').attr('href');
|
423
|
+
|
424
|
+
if (this.options.updateHistory) {
|
425
|
+
history.pushState({}, '', anchor);
|
426
|
+
} else {
|
427
|
+
history.replaceState({}, '', anchor);
|
428
|
+
}
|
429
|
+
}
|
430
|
+
}
|
431
|
+
/**
|
432
|
+
* Opens the accordion tab defined by `$target`.
|
433
|
+
* @param {jQuery} $target - Accordion pane to open (`.accordion-content`).
|
434
|
+
* @fires Accordion#down
|
435
|
+
* @function
|
436
|
+
*/
|
437
|
+
|
438
|
+
}, {
|
439
|
+
key: "down",
|
440
|
+
value: function down($target) {
|
441
|
+
if ($target.closest('[data-accordion]').is('[disabled]')) {
|
442
|
+
console.info('Cannot call down on an accordion that is disabled.');
|
443
|
+
return;
|
444
|
+
}
|
445
|
+
|
446
|
+
if (this.options.multiExpand) this._openTab($target);else this._openSingleTab($target);
|
447
|
+
}
|
448
|
+
/**
|
449
|
+
* Closes the tab defined by `$target`.
|
450
|
+
* It may be ignored if the Accordion options don't allow it.
|
451
|
+
*
|
452
|
+
* @param {jQuery} $target - Accordion tab to close (`.accordion-content`).
|
453
|
+
* @fires Accordion#up
|
454
|
+
* @function
|
455
|
+
*/
|
456
|
+
|
457
|
+
}, {
|
458
|
+
key: "up",
|
459
|
+
value: function up($target) {
|
460
|
+
if (this.$element.is('[disabled]')) {
|
461
|
+
console.info('Cannot call up on an accordion that is disabled.');
|
462
|
+
return;
|
463
|
+
} // Don't close the item if it is already closed
|
464
|
+
|
465
|
+
|
466
|
+
var $targetItem = $target.parent();
|
467
|
+
if (!$targetItem.hasClass('is-active')) return; // Don't close the item if there is no other active item (unless with `allowAllClosed`)
|
468
|
+
|
469
|
+
var $othersItems = $targetItem.siblings();
|
470
|
+
if (!this.options.allowAllClosed && !$othersItems.hasClass('is-active')) return;
|
471
|
+
|
472
|
+
this._closeTab($target);
|
473
|
+
}
|
474
|
+
/**
|
475
|
+
* Make the tab defined by `$target` the only opened tab, closing all others tabs.
|
476
|
+
* @param {jQuery} $target - Accordion tab to open (`.accordion-content`).
|
477
|
+
* @function
|
478
|
+
* @private
|
479
|
+
*/
|
480
|
+
|
481
|
+
}, {
|
482
|
+
key: "_openSingleTab",
|
483
|
+
value: function _openSingleTab($target) {
|
484
|
+
// Close all the others active tabs.
|
485
|
+
var $activeContents = this.$element.children('.is-active').children('[data-tab-content]');
|
486
|
+
|
487
|
+
if ($activeContents.length) {
|
488
|
+
this._closeTab($activeContents.not($target));
|
489
|
+
} // Then open the target.
|
490
|
+
|
491
|
+
|
492
|
+
this._openTab($target);
|
493
|
+
}
|
494
|
+
/**
|
495
|
+
* Opens the tab defined by `$target`.
|
496
|
+
* @param {jQuery} $target - Accordion tab to open (`.accordion-content`).
|
497
|
+
* @fires Accordion#down
|
498
|
+
* @function
|
499
|
+
* @private
|
500
|
+
*/
|
501
|
+
|
502
|
+
}, {
|
503
|
+
key: "_openTab",
|
504
|
+
value: function _openTab($target) {
|
505
|
+
var _this3 = this;
|
506
|
+
|
507
|
+
var $targetItem = $target.parent();
|
508
|
+
var targetContentId = $target.attr('aria-labelledby');
|
509
|
+
$target.attr('aria-hidden', false);
|
510
|
+
$targetItem.addClass('is-active');
|
511
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(targetContentId)).attr({
|
512
|
+
'aria-expanded': true,
|
513
|
+
'aria-selected': true
|
514
|
+
});
|
515
|
+
$target.slideDown(this.options.slideSpeed, function () {
|
516
|
+
/**
|
517
|
+
* Fires when the tab is done opening.
|
518
|
+
* @event Accordion#down
|
519
|
+
*/
|
520
|
+
_this3.$element.trigger('down.zf.accordion', [$target]);
|
521
|
+
});
|
522
|
+
}
|
523
|
+
/**
|
524
|
+
* Closes the tab defined by `$target`.
|
525
|
+
* @param {jQuery} $target - Accordion tab to close (`.accordion-content`).
|
526
|
+
* @fires Accordion#up
|
527
|
+
* @function
|
528
|
+
* @private
|
529
|
+
*/
|
530
|
+
|
531
|
+
}, {
|
532
|
+
key: "_closeTab",
|
533
|
+
value: function _closeTab($target) {
|
534
|
+
var _this4 = this;
|
535
|
+
|
536
|
+
var $targetItem = $target.parent();
|
537
|
+
var targetContentId = $target.attr('aria-labelledby');
|
538
|
+
$target.attr('aria-hidden', true);
|
539
|
+
$targetItem.removeClass('is-active');
|
540
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()("#".concat(targetContentId)).attr({
|
541
|
+
'aria-expanded': false,
|
542
|
+
'aria-selected': false
|
543
|
+
});
|
544
|
+
$target.slideUp(this.options.slideSpeed, function () {
|
545
|
+
/**
|
546
|
+
* Fires when the tab is done collapsing up.
|
547
|
+
* @event Accordion#up
|
548
|
+
*/
|
549
|
+
_this4.$element.trigger('up.zf.accordion', [$target]);
|
550
|
+
});
|
551
|
+
}
|
552
|
+
/**
|
553
|
+
* Closes all active tabs
|
554
|
+
* @fires Accordion#up
|
555
|
+
* @function
|
556
|
+
* @private
|
557
|
+
*/
|
558
|
+
|
559
|
+
}, {
|
560
|
+
key: "_closeAllTabs",
|
561
|
+
value: function _closeAllTabs() {
|
562
|
+
var $activeTabs = this.$element.children('.is-active').children('[data-tab-content]');
|
563
|
+
|
564
|
+
if ($activeTabs.length) {
|
565
|
+
this._closeTab($activeTabs);
|
566
|
+
}
|
567
|
+
}
|
568
|
+
/**
|
569
|
+
* Destroys an instance of an accordion.
|
570
|
+
* @fires Accordion#destroyed
|
571
|
+
* @function
|
572
|
+
*/
|
573
|
+
|
574
|
+
}, {
|
575
|
+
key: "_destroy",
|
576
|
+
value: function _destroy() {
|
577
|
+
this.$element.find('[data-tab-content]').stop(true).slideUp(0).css('display', '');
|
578
|
+
this.$element.find('a').off('.zf.accordion');
|
579
|
+
|
580
|
+
if (this.options.deepLink) {
|
581
|
+
jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('hashchange', this._checkDeepLink);
|
582
|
+
}
|
583
|
+
}
|
584
|
+
}]);
|
585
|
+
|
586
|
+
return Accordion;
|
587
|
+
}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__["Plugin"]);
|
588
|
+
|
589
|
+
Accordion.defaults = {
|
590
|
+
/**
|
591
|
+
* Amount of time to animate the opening of an accordion pane.
|
592
|
+
* @option
|
593
|
+
* @type {number}
|
594
|
+
* @default 250
|
595
|
+
*/
|
596
|
+
slideSpeed: 250,
|
597
|
+
|
598
|
+
/**
|
599
|
+
* Allow the accordion to have multiple open panes.
|
600
|
+
* @option
|
601
|
+
* @type {boolean}
|
602
|
+
* @default false
|
603
|
+
*/
|
604
|
+
multiExpand: false,
|
605
|
+
|
606
|
+
/**
|
607
|
+
* Allow the accordion to close all panes.
|
608
|
+
* @option
|
609
|
+
* @type {boolean}
|
610
|
+
* @default false
|
611
|
+
*/
|
612
|
+
allowAllClosed: false,
|
613
|
+
|
614
|
+
/**
|
615
|
+
* Link the location hash to the open pane.
|
616
|
+
* Set the location hash when the opened pane changes, and open and scroll to the corresponding pane when the location changes.
|
617
|
+
* @option
|
618
|
+
* @type {boolean}
|
619
|
+
* @default false
|
620
|
+
*/
|
621
|
+
deepLink: false,
|
622
|
+
|
623
|
+
/**
|
624
|
+
* If `deepLink` is enabled, adjust the deep link scroll to make sure the top of the accordion panel is visible
|
625
|
+
* @option
|
626
|
+
* @type {boolean}
|
627
|
+
* @default false
|
628
|
+
*/
|
629
|
+
deepLinkSmudge: false,
|
630
|
+
|
631
|
+
/**
|
632
|
+
* If `deepLinkSmudge` is enabled, animation time (ms) for the deep link adjustment
|
633
|
+
* @option
|
634
|
+
* @type {number}
|
635
|
+
* @default 300
|
636
|
+
*/
|
637
|
+
deepLinkSmudgeDelay: 300,
|
638
|
+
|
639
|
+
/**
|
640
|
+
* If `deepLink` is enabled, update the browser history with the open accordion
|
641
|
+
* @option
|
642
|
+
* @type {boolean}
|
643
|
+
* @default false
|
644
|
+
*/
|
645
|
+
updateHistory: false
|
646
|
+
};
|
647
|
+
|
648
|
+
|
649
|
+
/***/ }),
|
650
|
+
|
651
|
+
/***/ 1:
|
652
|
+
/*!**********************************************************!*\
|
653
|
+
!*** multi ./js/entries/plugins/foundation.accordion.js ***!
|
654
|
+
\**********************************************************/
|
655
|
+
/*! no static exports found */
|
656
|
+
/***/ (function(module, exports, __webpack_require__) {
|
657
|
+
|
658
|
+
module.exports = __webpack_require__(/*! /Users/ncoden/Documents/Documents/Projects/Programmation/Web/2016/Foundation/foundation-sites/js/entries/plugins/foundation.accordion.js */"./js/entries/plugins/foundation.accordion.js");
|
659
|
+
|
660
|
+
|
661
|
+
/***/ }),
|
662
|
+
|
663
|
+
/***/ "jquery":
|
664
|
+
/*!********************************************************************************************!*\
|
665
|
+
!*** external {"root":["jQuery"],"amd":"jquery","commonjs":"jquery","commonjs2":"jquery"} ***!
|
666
|
+
\********************************************************************************************/
|
667
|
+
/*! no static exports found */
|
668
|
+
/***/ (function(module, exports) {
|
669
|
+
|
670
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;
|
671
|
+
|
672
|
+
/***/ })
|
673
|
+
|
674
|
+
/******/ });
|
675
|
+
});
|
676
|
+
//# sourceMappingURL=foundation.accordion.js.map
|