foundation.tabs.js.map 33 KB

1
  1. {"version":3,"sources":["webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/universalModuleDefinition","webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/bootstrap","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.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":["Foundation","plugin","Tabs","element","options","$element","$","extend","defaults","data","className","_init","Keyboard","register","_this","_isInitializing","attr","$tabTitles","find","linkClass","$tabContent","id","each","$elem","$link","isActive","hasClass","linkActiveClass","hash","slice","linkId","_initialAnchor","autoFocus","onLoadListener","onLoad","window","animate","scrollTop","offset","top","deepLinkSmudgeDelay","focus","matchHeight","$images","length","onImagesLoaded","_setHeight","bind","_checkDeepLink","anchor","location","anchorNoHash","indexOf","$anchor","first","isOwnAnchor","selectTab","_collapse","deepLinkSmudge","trigger","deepLink","_events","_addKeyHandler","_addClickHandler","_setHeightMqHandler","on","off","e","preventDefault","_handleTabChange","which","$elements","parent","children","$prevElement","$nextElement","i","is","wrapOnKeys","last","eq","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","$activeTab","elem","idStr","hashIdStr","has","panelClass","css","panel","temp","getBoundingClientRect","height","hide","end","Plugin"],"mappings":"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","file":"foundation.tabs.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 { Plugin } from './foundation.core.plugin';\nimport { onLoad } from './foundation.core.utils';\nimport { Keyboard } from './foundation.util.keyboard';\nimport { onImagesLoaded } from './foundation.util.imageLoader';\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 anchorNoHash = anchor.indexOf('#') >= 0 ? anchor.slice(1) : anchor;\n var $anchor = anchorNoHash && $(`#${anchorNoHash}`);\n var $link = anchor && this.$element.find(`[href$=\"${anchor}\"],[data-tabs-target=\"${anchorNoHash}\"]`).first();\n // Whether the anchor element that has been found is part of this element\n var isOwnAnchor = !!($anchor.length && $link.length);\n\n if (isOwnAnchor) {\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 // 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 _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.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, hashIdStr;\n\n if (typeof elem === 'object') {\n idStr = elem[0].id;\n } else {\n idStr = elem;\n }\n\n if (idStr.indexOf('#') < 0) {\n hashIdStr = `#${idStr}`;\n } else {\n hashIdStr = idStr;\n idStr = idStr.slice(1);\n }\n\n var $target = this.$tabTitles.has(`[href$=\"${hashIdStr}\"],[data-tabs-target=\"${idStr}\"]`).first();\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__;"],"sourceRoot":""}