{"version":3,"sources":["webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/universalModuleDefinition","webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/bootstrap","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.imageLoader\"],\"amd\":\"./foundation.util.imageLoader\",\"commonjs\":\"./foundation.util.imageLoader\",\"commonjs2\":\"./foundation.util.imageLoader\"}","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/js/entries/plugins/foundation.tabs.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.tabs.js","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["root","factory","exports","module","require","define","amd","window","__WEBPACK_EXTERNAL_MODULE__foundation_core__","__WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__","__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__","__WEBPACK_EXTERNAL_MODULE_jquery__","installedModules","__webpack_require__","moduleId","i","l","modules","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","__webpack_exports__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__","Foundation","plugin","Tabs","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__","Plugin","element","options","this","$element","$","extend","defaults","data","className","_init","Keyboard","register","ENTER","SPACE","ARROW_RIGHT","ARROW_UP","ARROW_DOWN","ARROW_LEFT","_this2","_this","_isInitializing","attr","role","$tabTitles","find","concat","linkClass","$tabContent","id","each","$elem","$link","isActive","hasClass","linkActiveClass","hash","slice","linkId","aria-controls","aria-selected","tabindex","aria-labelledby","_initialAnchor","autoFocus","onLoadListener","onLoad","animate","scrollTop","offset","top","deepLinkSmudgeDelay","focus","matchHeight","$images","length","onImagesLoaded","_setHeight","_checkDeepLink","anchor","location","$anchor","isOwnAnchor","selectTab","_collapse","deepLinkSmudge","trigger","deepLink","_events","_addKeyHandler","_addClickHandler","_setHeightMqHandler","on","off","e","preventDefault","stopPropagation","_handleTabChange","which","$prevElement","$nextElement","$elements","parent","children","is","wrapOnKeys","last","eq","first","Math","max","min","handleKey","open","previous","next","handled","$target","historyHandled","activeCollapse","$oldTab","$tabLink","target","$targetContent","_collapseTab","_openTab","updateHistory","history","pushState","replaceState","addClass","panelActiveClass","removeAttr","$target_anchor","removeClass","aria-hidden","$activeTab","elem","idStr","_typeof","indexOf","has","panelClass","css","panel","visibility","display","temp","getBoundingClientRect","height","hide","end"],"mappings":"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","file":"foundation.tabs.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.imageLoader\"), require(\"./foundation.util.keyboard\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.imageLoader\", \"./foundation.util.keyboard\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.tabs\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.imageLoader\"), require(\"./foundation.util.keyboard\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.tabs\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.imageLoader\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __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 = 18);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;","import { Foundation } from './foundation.core';\n\nimport { Tabs } from '../../foundation.tabs';\nFoundation.plugin(Tabs, 'Tabs');\n\nexport { Foundation, Tabs };\n","'use strict';\n\nimport $ from 'jquery';\nimport { onLoad } from './foundation.core.utils';\nimport { Keyboard } from './foundation.util.keyboard';\nimport { onImagesLoaded } from './foundation.util.imageLoader';\nimport { Plugin } from './foundation.core.plugin';\n/**\n * Tabs module.\n * @module foundation.tabs\n * @requires foundation.util.keyboard\n * @requires foundation.util.imageLoader if tabs contain images\n */\n\nclass Tabs extends Plugin {\n /**\n * Creates a new instance of tabs.\n * @class\n * @name Tabs\n * @fires Tabs#init\n * @param {jQuery} element - jQuery object to make into tabs.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n _setup(element, options) {\n this.$element = element;\n this.options = $.extend({}, Tabs.defaults, this.$element.data(), options);\n this.className = 'Tabs'; // ie9 back compat\n\n this._init();\n Keyboard.register('Tabs', {\n 'ENTER': 'open',\n 'SPACE': 'open',\n 'ARROW_RIGHT': 'next',\n 'ARROW_UP': 'previous',\n 'ARROW_DOWN': 'next',\n 'ARROW_LEFT': 'previous'\n // 'TAB': 'next',\n // 'SHIFT_TAB': 'previous'\n });\n }\n\n /**\n * Initializes the tabs by showing and focusing (if autoFocus=true) the preset active tab.\n * @private\n */\n _init() {\n var _this = this;\n this._isInitializing = true;\n\n this.$element.attr({'role': 'tablist'});\n this.$tabTitles = this.$element.find(`.${this.options.linkClass}`);\n this.$tabContent = $(`[data-tabs-content=\"${this.$element[0].id}\"]`);\n\n this.$tabTitles.each(function(){\n var $elem = $(this),\n $link = $elem.find('a'),\n isActive = $elem.hasClass(`${_this.options.linkActiveClass}`),\n hash = $link.attr('data-tabs-target') || $link[0].hash.slice(1),\n linkId = $link[0].id ? $link[0].id : `${hash}-label`,\n $tabContent = $(`#${hash}`);\n\n $elem.attr({'role': 'presentation'});\n\n $link.attr({\n 'role': 'tab',\n 'aria-controls': hash,\n 'aria-selected': isActive,\n 'id': linkId,\n 'tabindex': isActive ? '0' : '-1'\n });\n\n $tabContent.attr({\n 'role': 'tabpanel',\n 'aria-labelledby': linkId\n });\n\n // Save up the initial hash to return to it later when going back in history\n if (isActive) {\n _this._initialAnchor = `#${hash}`;\n }\n\n if(!isActive) {\n $tabContent.attr('aria-hidden', 'true');\n }\n\n if(isActive && _this.options.autoFocus){\n _this.onLoadListener = onLoad($(window), function() {\n $('html, body').animate({ scrollTop: $elem.offset().top }, _this.options.deepLinkSmudgeDelay, () => {\n $link.focus();\n });\n });\n }\n });\n\n if(this.options.matchHeight) {\n var $images = this.$tabContent.find('img');\n\n if ($images.length) {\n onImagesLoaded($images, this._setHeight.bind(this));\n } else {\n this._setHeight();\n }\n }\n\n // Current context-bound function to open tabs on page load or history hashchange\n this._checkDeepLink = () => {\n var anchor = window.location.hash;\n\n if (!anchor.length) {\n // If we are still initializing and there is no anchor, then there is nothing to do\n if (this._isInitializing) return;\n // Otherwise, move to the initial anchor\n if (this._initialAnchor) anchor = this._initialAnchor;\n }\n\n var $anchor = anchor && $(anchor);\n var $link = anchor && this.$element.find('[href$=\"'+anchor+'\"]');\n // Whether the anchor element that has been found is part of this element\n var isOwnAnchor = !!($anchor.length && $link.length);\n\n // If there is an anchor for the hash, select it\n if ($anchor && $anchor.length && $link && $link.length) {\n this.selectTab($anchor, true);\n }\n // Otherwise, collapse everything\n else {\n this._collapse();\n }\n\n if (isOwnAnchor) {\n // Roll up a little to show the titles\n if (this.options.deepLinkSmudge) {\n var offset = this.$element.offset();\n $('html, body').animate({ scrollTop: offset.top }, this.options.deepLinkSmudgeDelay);\n }\n\n /**\n * Fires when the plugin has deeplinked at pageload\n * @event Tabs#deeplink\n */\n this.$element.trigger('deeplink.zf.tabs', [$link, $anchor]);\n }\n }\n\n //use browser to open a tab, if it exists in this tabset\n if (this.options.deepLink) {\n this._checkDeepLink();\n }\n\n this._events();\n\n this._isInitializing = false;\n }\n\n /**\n * Adds event handlers for items within the tabs.\n * @private\n */\n _events() {\n this._addKeyHandler();\n this._addClickHandler();\n this._setHeightMqHandler = null;\n\n if (this.options.matchHeight) {\n this._setHeightMqHandler = this._setHeight.bind(this);\n\n $(window).on('changed.zf.mediaquery', this._setHeightMqHandler);\n }\n\n if(this.options.deepLink) {\n $(window).on('hashchange', this._checkDeepLink);\n }\n }\n\n /**\n * Adds click handlers for items within the tabs.\n * @private\n */\n _addClickHandler() {\n var _this = this;\n\n this.$element\n .off('click.zf.tabs')\n .on('click.zf.tabs', `.${this.options.linkClass}`, function(e){\n e.preventDefault();\n e.stopPropagation();\n _this._handleTabChange($(this));\n });\n }\n\n /**\n * Adds keyboard event handlers for items within the tabs.\n * @private\n */\n _addKeyHandler() {\n var _this = this;\n\n this.$tabTitles.off('keydown.zf.tabs').on('keydown.zf.tabs', function(e){\n if (e.which === 9) return;\n\n\n var $element = $(this),\n $elements = $element.parent('ul').children('li'),\n $prevElement,\n $nextElement;\n\n $elements.each(function(i) {\n if ($(this).is($element)) {\n if (_this.options.wrapOnKeys) {\n $prevElement = i === 0 ? $elements.last() : $elements.eq(i-1);\n $nextElement = i === $elements.length -1 ? $elements.first() : $elements.eq(i+1);\n } else {\n $prevElement = $elements.eq(Math.max(0, i-1));\n $nextElement = $elements.eq(Math.min(i+1, $elements.length-1));\n }\n return;\n }\n });\n\n // handle keyboard event with keyboard util\n Keyboard.handleKey(e, 'Tabs', {\n open: function() {\n $element.find('[role=\"tab\"]').focus();\n _this._handleTabChange($element);\n },\n previous: function() {\n $prevElement.find('[role=\"tab\"]').focus();\n _this._handleTabChange($prevElement);\n },\n next: function() {\n $nextElement.find('[role=\"tab\"]').focus();\n _this._handleTabChange($nextElement);\n },\n handled: function() {\n e.stopPropagation();\n e.preventDefault();\n }\n });\n });\n }\n\n /**\n * Opens the tab `$targetContent` defined by `$target`. Collapses active tab.\n * @param {jQuery} $target - Tab to open.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @fires Tabs#change\n * @function\n */\n _handleTabChange($target, historyHandled) {\n\n // With `activeCollapse`, if the target is the active Tab, collapse it.\n if ($target.hasClass(`${this.options.linkActiveClass}`)) {\n if(this.options.activeCollapse) {\n this._collapse();\n }\n return;\n }\n\n var $oldTab = this.$element.\n find(`.${this.options.linkClass}.${this.options.linkActiveClass}`),\n $tabLink = $target.find('[role=\"tab\"]'),\n target = $tabLink.attr('data-tabs-target'),\n anchor = target && target.length ? `#${target}` : $tabLink[0].hash,\n $targetContent = this.$tabContent.find(anchor);\n\n //close old tab\n this._collapseTab($oldTab);\n\n //open new tab\n this._openTab($target);\n\n //either replace or update browser history\n if (this.options.deepLink && !historyHandled) {\n if (this.options.updateHistory) {\n history.pushState({}, '', anchor);\n } else {\n history.replaceState({}, '', anchor);\n }\n }\n\n /**\n * Fires when the plugin has successfully changed tabs.\n * @event Tabs#change\n */\n this.$element.trigger('change.zf.tabs', [$target, $targetContent]);\n\n //fire to children a mutation event\n $targetContent.find(\"[data-mutate]\").trigger(\"mutateme.zf.trigger\");\n }\n\n /**\n * Opens the tab `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to open.\n * @function\n */\n _openTab($target) {\n var $tabLink = $target.find('[role=\"tab\"]'),\n hash = $tabLink.attr('data-tabs-target') || $tabLink[0].hash.slice(1),\n $targetContent = this.$tabContent.find(`#${hash}`);\n\n $target.addClass(`${this.options.linkActiveClass}`);\n\n $tabLink.attr({\n 'aria-selected': 'true',\n 'tabindex': '0'\n });\n\n $targetContent\n .addClass(`${this.options.panelActiveClass}`).removeAttr('aria-hidden');\n }\n\n /**\n * Collapses `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to collapse.\n * @function\n */\n _collapseTab($target) {\n var $target_anchor = $target\n .removeClass(`${this.options.linkActiveClass}`)\n .find('[role=\"tab\"]')\n .attr({\n 'aria-selected': 'false',\n 'tabindex': -1\n });\n\n $(`#${$target_anchor.attr('aria-controls')}`)\n .removeClass(`${this.options.panelActiveClass}`)\n .attr({ 'aria-hidden': 'true' })\n }\n\n /**\n * Collapses the active Tab.\n * @fires Tabs#collapse\n * @function\n */\n _collapse() {\n var $activeTab = this.$element.find(`.${this.options.linkClass}.${this.options.linkActiveClass}`);\n\n if ($activeTab.length) {\n this._collapseTab($activeTab);\n\n /**\n * Fires when the plugin has successfully collapsed tabs.\n * @event Tabs#collapse\n */\n this.$element.trigger('collapse.zf.tabs', [$activeTab]);\n }\n }\n\n /**\n * Public method for selecting a content pane to display.\n * @param {jQuery | String} elem - jQuery object or string of the id of the pane to display.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @function\n */\n selectTab(elem, historyHandled) {\n var idStr;\n\n if (typeof elem === 'object') {\n idStr = elem[0].id;\n } else {\n idStr = elem;\n }\n\n if (idStr.indexOf('#') < 0) {\n idStr = `#${idStr}`;\n }\n\n var $target = this.$tabTitles.has(`[href$=\"${idStr}\"]`);\n\n this._handleTabChange($target, historyHandled);\n };\n\n /**\n * Sets the height of each panel to the height of the tallest panel.\n * If enabled in options, gets called on media query change.\n * If loading content via external source, can be called directly or with _reflow.\n * If enabled with `data-match-height=\"true\"`, tabs sets to equal height\n * @function\n * @private\n */\n _setHeight() {\n var max = 0,\n _this = this; // Lock down the `this` value for the root tabs object\n\n this.$tabContent\n .find(`.${this.options.panelClass}`)\n .css('height', '')\n .each(function() {\n\n var panel = $(this),\n isActive = panel.hasClass(`${_this.options.panelActiveClass}`); // get the options from the parent instead of trying to get them from the child\n\n if (!isActive) {\n panel.css({'visibility': 'hidden', 'display': 'block'});\n }\n\n var temp = this.getBoundingClientRect().height;\n\n if (!isActive) {\n panel.css({\n 'visibility': '',\n 'display': ''\n });\n }\n\n max = temp > max ? temp : max;\n })\n .css('height', `${max}px`);\n }\n\n /**\n * Destroys an instance of tabs.\n * @fires Tabs#destroyed\n */\n _destroy() {\n this.$element\n .find(`.${this.options.linkClass}`)\n .off('.zf.tabs').hide().end()\n .find(`.${this.options.panelClass}`)\n .hide();\n\n if (this.options.matchHeight) {\n if (this._setHeightMqHandler != null) {\n $(window).off('changed.zf.mediaquery', this._setHeightMqHandler);\n }\n }\n\n if (this.options.deepLink) {\n $(window).off('hashchange', this._checkDeepLink);\n }\n\n if (this.onLoadListener) {\n $(window).off(this.onLoadListener);\n }\n }\n}\n\nTabs.defaults = {\n /**\n * Link the location hash to the active pane.\n * Set the location hash when the active pane changes, and open the corresponding pane when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLink: false,\n\n /**\n * If `deepLink` is enabled, adjust the deep link scroll to make sure the top of the tab panel is visible\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinkSmudge: false,\n\n /**\n * If `deepLinkSmudge` is enabled, animation time (ms) for the deep link adjustment\n * @option\n * @type {number}\n * @default 300\n */\n deepLinkSmudgeDelay: 300,\n\n /**\n * If `deepLink` is enabled, update the browser history with the open tab\n * @option\n * @type {boolean}\n * @default false\n */\n updateHistory: false,\n\n /**\n * Allows the window to scroll to content of active pane on load.\n * Not recommended if more than one tab panel per page.\n * @option\n * @type {boolean}\n * @default false\n */\n autoFocus: false,\n\n /**\n * Allows keyboard input to 'wrap' around the tab links.\n * @option\n * @type {boolean}\n * @default true\n */\n wrapOnKeys: true,\n\n /**\n * Allows the tab content panes to match heights if set to true.\n * @option\n * @type {boolean}\n * @default false\n */\n matchHeight: false,\n\n /**\n * Allows active tabs to collapse when clicked.\n * @option\n * @type {boolean}\n * @default false\n */\n activeCollapse: false,\n\n /**\n * Class applied to `li`'s in tab link list.\n * @option\n * @type {string}\n * @default 'tabs-title'\n */\n linkClass: 'tabs-title',\n\n /**\n * Class applied to the active `li` in tab link list.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n linkActiveClass: 'is-active',\n\n /**\n * Class applied to the content containers.\n * @option\n * @type {string}\n * @default 'tabs-panel'\n */\n panelClass: 'tabs-panel',\n\n /**\n * Class applied to the active content container.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n panelActiveClass: 'is-active'\n};\n\nexport {Tabs};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"]}