UNPKG

60 kBSource Map (JSON)View Raw
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.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/entries/plugins/foundation.reveal.js","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/foundation.reveal.js","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/foundation.util.triggers.js","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["Foundation","plugin","Reveal","element","options","$element","$","extend","defaults","data","className","_init","Touch","init","Triggers","Keyboard","register","MediaQuery","id","attr","isActive","cached","mq","current","$anchor","length","fullScreen","hasClass","overlay","$overlay","_makeOverlay","detach","appendTo","addClass","_events","deepLink","window","location","hash","onLoadListener","onLoad","open","additionalOverlayClasses","width","outerWidth","height","outerHeight","left","top","hOffset","parseInt","vOffset","Math","min","css","margin","_this","on","bind","event","target","parents","close","apply","toggle","_updatePosition","closeOnClick","off","e","contains","document","_handleState","scrollTop","history","pushState","updateHistory","replaceState","$activeAnchor","activeElement","is","show","hide","multipleOpened","trigger","_disableScroll","animationIn","afterAnimation","focus","_addGlobalClasses","trapFocus","Motion","animateIn","focusableElements","findFocusable","showDelay","_addGlobalListeners","updateScrollbarClass","toggleClass","removeClass","closeOnEsc","handleKey","animationOut","animateOut","finishUp","hideDelay","_removeGlobalClasses","releaseFocus","_enableScroll","resetOnClose","html","urlWithoutHash","pathname","search","title","remove","Plugin","MutationObserver","prefixes","i","triggers","el","type","split","forEach","Listeners","Basic","Global","Initializers","openListener","closeListener","toggleListener","closeableListener","animation","stopPropagation","fadeOut","toggleFocusListener","triggerHandler","addOpenListener","$elem","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","resizeListener","$nodes","each","scrollListener","closeMeListener","pluginId","namespace","plugins","not","addClosemeListener","pluginName","yetiBoxes","plugNames","push","concat","console","error","listeners","map","name","join","debounceGlobalListener","debounce","listener","timer","args","Array","prototype","slice","call","arguments","clearTimeout","setTimeout","addResizeListener","addScrollListener","addMutationEventsListener","find","listeningElementsMutation","mutationRecordsList","$target","attributeName","pageYOffset","closest","elementObserver","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","triggersInitialized","IHearYou"],"mappings":"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","file":"foundation.reveal.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.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.keyboard\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"./foundation.util.touch\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.reveal\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.reveal\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__, __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 = 14);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;","import { Foundation } from './foundation.core';\n\nimport { Reveal } from '../../foundation.reveal';\nFoundation.plugin(Reveal, 'Reveal');\n\nexport { Foundation, Reveal };\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 { MediaQuery } from './foundation.util.mediaQuery';\nimport { Motion } from './foundation.util.motion';\nimport { Triggers } from './foundation.util.triggers';\nimport { Touch } from './foundation.util.touch'\n\n/**\n * Reveal module.\n * @module foundation.reveal\n * @requires foundation.util.keyboard\n * @requires foundation.util.touch\n * @requires foundation.util.triggers\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.motion if using animations\n */\n\nclass Reveal extends Plugin {\n /**\n * Creates a new instance of Reveal.\n * @class\n * @name Reveal\n * @param {jQuery} element - jQuery object to use for the modal.\n * @param {Object} options - optional parameters.\n */\n _setup(element, options) {\n this.$element = element;\n this.options = $.extend({}, Reveal.defaults, this.$element.data(), options);\n this.className = 'Reveal'; // ie9 back compat\n this._init();\n\n // Touch and Triggers init are idempotent, just need to make sure they are initialized\n Touch.init($);\n Triggers.init($);\n\n Keyboard.register('Reveal', {\n 'ESCAPE': 'close',\n });\n }\n\n /**\n * Initializes the modal by adding the overlay and close buttons, (if selected).\n * @private\n */\n _init() {\n MediaQuery._init();\n this.id = this.$element.attr('id');\n this.isActive = false;\n this.cached = {mq: MediaQuery.current};\n\n this.$anchor = $(`[data-open=\"${this.id}\"]`).length ? $(`[data-open=\"${this.id}\"]`) : $(`[data-toggle=\"${this.id}\"]`);\n this.$anchor.attr({\n 'aria-controls': this.id,\n 'aria-haspopup': true,\n 'tabindex': 0\n });\n\n if (this.options.fullScreen || this.$element.hasClass('full')) {\n this.options.fullScreen = true;\n this.options.overlay = false;\n }\n if (this.options.overlay && !this.$overlay) {\n this.$overlay = this._makeOverlay(this.id);\n }\n\n this.$element.attr({\n 'role': 'dialog',\n 'aria-hidden': true,\n 'data-yeti-box': this.id,\n 'data-resize': this.id\n });\n\n if(this.$overlay) {\n this.$element.detach().appendTo(this.$overlay);\n } else {\n this.$element.detach().appendTo($(this.options.appendTo));\n this.$element.addClass('without-overlay');\n }\n this._events();\n if (this.options.deepLink && window.location.hash === ( `#${this.id}`)) {\n this.onLoadListener = onLoad($(window), () => this.open());\n }\n }\n\n /**\n * Creates an overlay div to display behind the modal.\n * @private\n */\n _makeOverlay() {\n var additionalOverlayClasses = '';\n\n if (this.options.additionalOverlayClasses) {\n additionalOverlayClasses = ' ' + this.options.additionalOverlayClasses;\n }\n\n return $('<div></div>')\n .addClass('reveal-overlay' + additionalOverlayClasses)\n .appendTo(this.options.appendTo);\n }\n\n /**\n * Updates position of modal\n * TODO: Figure out if we actually need to cache these values or if it doesn't matter\n * @private\n */\n _updatePosition() {\n var width = this.$element.outerWidth();\n var outerWidth = $(window).width();\n var height = this.$element.outerHeight();\n var outerHeight = $(window).height();\n var left, top = null;\n if (this.options.hOffset === 'auto') {\n left = parseInt((outerWidth - width) / 2, 10);\n } else {\n left = parseInt(this.options.hOffset, 10);\n }\n if (this.options.vOffset === 'auto') {\n if (height > outerHeight) {\n top = parseInt(Math.min(100, outerHeight / 10), 10);\n } else {\n top = parseInt((outerHeight - height) / 4, 10);\n }\n } else if (this.options.vOffset !== null) {\n top = parseInt(this.options.vOffset, 10);\n }\n\n if (top !== null) {\n this.$element.css({top: top + 'px'});\n }\n\n // only worry about left if we don't have an overlay or we have a horizontal offset,\n // otherwise we're perfectly in the middle\n if (!this.$overlay || (this.options.hOffset !== 'auto')) {\n this.$element.css({left: left + 'px'});\n this.$element.css({margin: '0px'});\n }\n\n }\n\n /**\n * Adds event handlers for the modal.\n * @private\n */\n _events() {\n var _this = this;\n\n this.$element.on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': (event, $element) => {\n if ((event.target === _this.$element[0]) ||\n ($(event.target).parents('[data-closable]')[0] === $element)) { // only close reveal when it's explicitly called\n return this.close.apply(this);\n }\n },\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'resizeme.zf.trigger': function() {\n _this._updatePosition();\n }\n });\n\n if (this.options.closeOnClick && this.options.overlay) {\n this.$overlay.off('.zf.reveal').on('click.zf.dropdown tap.zf.dropdown', function(e) {\n if (e.target === _this.$element[0] ||\n $.contains(_this.$element[0], e.target) ||\n !$.contains(document, e.target)) {\n return;\n }\n _this.close();\n });\n }\n if (this.options.deepLink) {\n $(window).on(`hashchange.zf.reveal:${this.id}`, this._handleState.bind(this));\n }\n }\n\n /**\n * Handles modal methods on back/forward button clicks or any other event that triggers hashchange.\n * @private\n */\n _handleState(e) {\n if(window.location.hash === ( '#' + this.id) && !this.isActive){ this.open(); }\n else{ this.close(); }\n }\n\n /**\n * Disables the scroll when Reveal is shown to prevent the background from shifting\n * @param {number} scrollTop - Scroll to visually apply, window current scroll by default\n */\n _disableScroll(scrollTop) {\n scrollTop = scrollTop || $(window).scrollTop();\n if ($(document).height() > $(window).height()) {\n $(\"html\")\n .css(\"top\", -scrollTop);\n }\n }\n\n /**\n * Reenables the scroll when Reveal closes\n * @param {number} scrollTop - Scroll to restore, html \"top\" property by default (as set by `_disableScroll`)\n */\n _enableScroll(scrollTop) {\n scrollTop = scrollTop || parseInt($(\"html\").css(\"top\"));\n if ($(document).height() > $(window).height()) {\n $(\"html\")\n .css(\"top\", \"\");\n $(window).scrollTop(-scrollTop);\n }\n }\n\n\n /**\n * Opens the modal controlled by `this.$anchor`, and closes all others by default.\n * @function\n * @fires Reveal#closeme\n * @fires Reveal#open\n */\n open() {\n // either update or replace browser history\n const hash = `#${this.id}`;\n if (this.options.deepLink && window.location.hash !== hash) {\n\n if (window.history.pushState) {\n if (this.options.updateHistory) {\n window.history.pushState({}, '', hash);\n } else {\n window.history.replaceState({}, '', hash);\n }\n } else {\n window.location.hash = hash;\n }\n }\n\n // Remember anchor that opened it to set focus back later, have general anchors as fallback\n this.$activeAnchor = $(document.activeElement).is(this.$anchor) ? $(document.activeElement) : this.$anchor;\n\n this.isActive = true;\n\n // Make elements invisible, but remove display: none so we can get size and positioning\n this.$element\n .css({ 'visibility': 'hidden' })\n .show()\n .scrollTop(0);\n if (this.options.overlay) {\n this.$overlay.css({'visibility': 'hidden'}).show();\n }\n\n this._updatePosition();\n\n this.$element\n .hide()\n .css({ 'visibility': '' });\n\n if(this.$overlay) {\n this.$overlay.css({'visibility': ''}).hide();\n if(this.$element.hasClass('fast')) {\n this.$overlay.addClass('fast');\n } else if (this.$element.hasClass('slow')) {\n this.$overlay.addClass('slow');\n }\n }\n\n\n if (!this.options.multipleOpened) {\n /**\n * Fires immediately before the modal opens.\n * Closes any other modals that are currently open\n * @event Reveal#closeme\n */\n this.$element.trigger('closeme.zf.reveal', this.id);\n }\n\n if ($('.reveal:visible').length === 0) {\n this._disableScroll();\n }\n\n var _this = this;\n\n // Motion UI method of reveal\n if (this.options.animationIn) {\n function afterAnimation(){\n _this.$element\n .attr({\n 'aria-hidden': false,\n 'tabindex': -1\n })\n .focus();\n _this._addGlobalClasses();\n Keyboard.trapFocus(_this.$element);\n }\n if (this.options.overlay) {\n Motion.animateIn(this.$overlay, 'fade-in');\n }\n Motion.animateIn(this.$element, this.options.animationIn, () => {\n if(this.$element) { // protect against object having been removed\n this.focusableElements = Keyboard.findFocusable(this.$element);\n afterAnimation();\n }\n });\n }\n // jQuery method of reveal\n else {\n if (this.options.overlay) {\n this.$overlay.show(0);\n }\n this.$element.show(this.options.showDelay);\n }\n\n // handle accessibility\n this.$element\n .attr({\n 'aria-hidden': false,\n 'tabindex': -1\n })\n .focus();\n Keyboard.trapFocus(this.$element);\n\n this._addGlobalClasses();\n\n this._addGlobalListeners();\n\n /**\n * Fires when the modal has successfully opened.\n * @event Reveal#open\n */\n this.$element.trigger('open.zf.reveal');\n }\n\n /**\n * Adds classes and listeners on document required by open modals.\n *\n * The following classes are added and updated:\n * - `.is-reveal-open` - Prevents the scroll on document\n * - `.zf-has-scroll` - Displays a disabled scrollbar on document if required like if the\n * scroll was not disabled. This prevent a \"shift\" of the page content due\n * the scrollbar disappearing when the modal opens.\n *\n * @private\n */\n _addGlobalClasses() {\n const updateScrollbarClass = () => {\n $('html').toggleClass('zf-has-scroll', !!($(document).height() > $(window).height()));\n };\n\n this.$element.on('resizeme.zf.trigger.revealScrollbarListener', () => updateScrollbarClass());\n updateScrollbarClass();\n $('html').addClass('is-reveal-open');\n }\n\n /**\n * Removes classes and listeners on document that were required by open modals.\n * @private\n */\n _removeGlobalClasses() {\n this.$element.off('resizeme.zf.trigger.revealScrollbarListener');\n $('html').removeClass('is-reveal-open');\n $('html').removeClass('zf-has-scroll');\n }\n\n /**\n * Adds extra event handlers for the body and window if necessary.\n * @private\n */\n _addGlobalListeners() {\n var _this = this;\n if(!this.$element) { return; } // If we're in the middle of cleanup, don't freak out\n this.focusableElements = Keyboard.findFocusable(this.$element);\n\n if (!this.options.overlay && this.options.closeOnClick && !this.options.fullScreen) {\n $('body').on('click.zf.dropdown tap.zf.dropdown', function(e) {\n if (e.target === _this.$element[0] ||\n $.contains(_this.$element[0], e.target) ||\n !$.contains(document, e.target)) { return; }\n _this.close();\n });\n }\n\n if (this.options.closeOnEsc) {\n $(window).on('keydown.zf.reveal', function(e) {\n Keyboard.handleKey(e, 'Reveal', {\n close: function() {\n if (_this.options.closeOnEsc) {\n _this.close();\n }\n }\n });\n });\n }\n }\n\n /**\n * Closes the modal.\n * @function\n * @fires Reveal#closed\n */\n close() {\n if (!this.isActive || !this.$element.is(':visible')) {\n return false;\n }\n var _this = this;\n\n // Motion UI method of hiding\n if (this.options.animationOut) {\n if (this.options.overlay) {\n Motion.animateOut(this.$overlay, 'fade-out');\n }\n\n Motion.animateOut(this.$element, this.options.animationOut, finishUp);\n }\n // jQuery method of hiding\n else {\n this.$element.hide(this.options.hideDelay);\n\n if (this.options.overlay) {\n this.$overlay.hide(0, finishUp);\n }\n else {\n finishUp();\n }\n }\n\n // Conditionals to remove extra event listeners added on open\n if (this.options.closeOnEsc) {\n $(window).off('keydown.zf.reveal');\n }\n\n if (!this.options.overlay && this.options.closeOnClick) {\n $('body').off('click.zf.dropdown tap.zf.dropdown');\n }\n\n this.$element.off('keydown.zf.reveal');\n\n function finishUp() {\n\n // Get the current top before the modal is closed and restore the scroll after.\n // TODO: use component properties instead of HTML properties\n // See https://github.com/foundation/foundation-sites/pull/10786\n var scrollTop = parseInt($(\"html\").css(\"top\"));\n\n if ($('.reveal:visible').length === 0) {\n _this._removeGlobalClasses(); // also remove .is-reveal-open from the html element when there is no opened reveal\n }\n\n Keyboard.releaseFocus(_this.$element);\n\n _this.$element.attr('aria-hidden', true);\n\n if ($('.reveal:visible').length === 0) {\n _this._enableScroll(scrollTop);\n }\n\n /**\n * Fires when the modal is done closing.\n * @event Reveal#closed\n */\n _this.$element.trigger('closed.zf.reveal');\n }\n\n /**\n * Resets the modal content\n * This prevents a running video to keep going in the background\n */\n if (this.options.resetOnClose) {\n this.$element.html(this.$element.html());\n }\n\n this.isActive = false;\n // If deepLink and we did not switched to an other modal...\n if (_this.options.deepLink && window.location.hash === `#${this.id}`) {\n // Remove the history hash\n if (window.history.replaceState) {\n const urlWithoutHash = window.location.pathname + window.location.search;\n if (this.options.updateHistory) {\n window.history.pushState({}, '', urlWithoutHash); // remove the hash\n } else {\n window.history.replaceState('', document.title, urlWithoutHash);\n }\n } else {\n window.location.hash = '';\n }\n }\n\n this.$activeAnchor.focus();\n }\n\n /**\n * Toggles the open/closed state of a modal.\n * @function\n */\n toggle() {\n if (this.isActive) {\n this.close();\n } else {\n this.open();\n }\n };\n\n /**\n * Destroys an instance of a modal.\n * @function\n */\n _destroy() {\n if (this.options.overlay) {\n this.$element.appendTo($(this.options.appendTo)); // move $element outside of $overlay to prevent error unregisterPlugin()\n this.$overlay.hide().off().remove();\n }\n this.$element.hide().off();\n this.$anchor.off('.zf');\n $(window).off(`.zf.reveal:${this.id}`)\n if (this.onLoadListener) $(window).off(this.onLoadListener);\n\n if ($('.reveal:visible').length === 0) {\n this._removeGlobalClasses(); // also remove .is-reveal-open from the html element when there is no opened reveal\n }\n };\n}\n\nReveal.defaults = {\n /**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */\n animationIn: '',\n /**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */\n animationOut: '',\n /**\n * Time, in ms, to delay the opening of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */\n showDelay: 0,\n /**\n * Time, in ms, to delay the closing of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */\n hideDelay: 0,\n /**\n * Allows a click on the body/overlay to close the modal.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n /**\n * Allows the modal to close if the user presses the `ESCAPE` key.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnEsc: true,\n /**\n * If true, allows multiple modals to be displayed at once.\n * @option\n * @type {boolean}\n * @default false\n */\n multipleOpened: false,\n /**\n * Distance, in pixels, the modal should push down from the top of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */\n vOffset: 'auto',\n /**\n * Distance, in pixels, the modal should push in from the side of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */\n hOffset: 'auto',\n /**\n * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.\n * @option\n * @type {boolean}\n * @default false\n */\n fullScreen: false,\n /**\n * Allows the modal to generate an overlay div, which will cover the view when modal opens.\n * @option\n * @type {boolean}\n * @default true\n */\n overlay: true,\n /**\n * Allows the modal to remove and reinject markup on close. Should be true if using video elements w/o using provider's api, otherwise, videos will continue to play in the background.\n * @option\n * @type {boolean}\n * @default false\n */\n resetOnClose: false,\n /**\n * Link the location hash to the modal.\n * Set the location hash when the modal is opened/closed, and open/close the modal when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLink: false,\n /**\n * If `deepLink` is enabled, update the browser history with the open modal\n * @option\n * @default false\n */\n updateHistory: false,\n /**\n * Allows the modal to append to custom div.\n * @option\n * @type {string}\n * @default \"body\"\n */\n appendTo: \"body\",\n /**\n * Allows adding additional class names to the reveal overlay.\n * @option\n * @type {string}\n * @default ''\n */\n additionalOverlayClasses: ''\n};\n\nexport {Reveal};\n","'use strict';\n\nimport $ from 'jquery';\nimport { onLoad } from './foundation.core.utils';\nimport { Motion } from './foundation.util.motion';\n\nconst MutationObserver = (function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n for (var i=0; i < prefixes.length; i++) {\n if (`${prefixes[i]}MutationObserver` in window) {\n return window[`${prefixes[i]}MutationObserver`];\n }\n }\n return false;\n}());\n\nconst triggers = (el, type) => {\n el.data(type).split(' ').forEach(id => {\n $(`#${id}`)[ type === 'close' ? 'trigger' : 'triggerHandler'](`${type}.zf.trigger`, [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n}\n\nTriggers.Listeners.Basic = {\n openListener: function() {\n triggers($(this), 'open');\n },\n closeListener: function() {\n let id = $(this).data('close');\n if (id) {\n triggers($(this), 'close');\n }\n else {\n $(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function() {\n let id = $(this).data('toggle');\n if (id) {\n triggers($(this), 'toggle');\n } else {\n $(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function(e) {\n let animation = $(this).data('closable');\n\n // Only close the first closable element. See https://git.io/zf-7833\n e.stopPropagation();\n\n if(animation !== ''){\n Motion.animateOut($(this), animation, function() {\n $(this).trigger('closed.zf');\n });\n }else{\n $(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function() {\n let id = $(this).data('toggle-focus');\n $(`#${id}`).triggerHandler('toggle.zf.trigger', [$(this)]);\n }\n};\n\n// Elements with [data-open] will reveal a plugin that supports it when clicked.\nTriggers.Initializers.addOpenListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}\n\n// Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\nTriggers.Initializers.addCloseListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}\n\n// Elements with [data-toggle] will toggle a plugin that supports it when clicked.\nTriggers.Initializers.addToggleListener = ($elem) => {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}\n\n// Elements with [data-closable] will respond to close.zf.trigger events.\nTriggers.Initializers.addCloseableListener = ($elem) => {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}\n\n// Elements with [data-toggle-focus] will respond to coming in and out of focus\nTriggers.Initializers.addToggleFocusListener = ($elem) => {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}\n\n\n\n// More Global/complex listeners and triggers\nTriggers.Listeners.Global = {\n resizeListener: function($nodes) {\n if(!MutationObserver){//fallback for IE 9\n $nodes.each(function(){\n $(this).triggerHandler('resizeme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a resize event\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function($nodes) {\n if(!MutationObserver){//fallback for IE 9\n $nodes.each(function(){\n $(this).triggerHandler('scrollme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a scroll event\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function(e, pluginId){\n let plugin = e.namespace.split('.')[0];\n let plugins = $(`[data-${plugin}]`).not(`[data-yeti-box=\"${pluginId}\"]`);\n\n plugins.each(function(){\n let _this = $(this);\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n }\n}\n\n// Global, parses whole document.\nTriggers.Initializers.addClosemeListener = function(pluginName) {\n var yetiBoxes = $('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if(pluginName){\n if(typeof pluginName === 'string'){\n plugNames.push(pluginName);\n }else if(typeof pluginName === 'object' && typeof pluginName[0] === 'string'){\n plugNames = plugNames.concat(pluginName);\n }else{\n console.error('Plugin names must be strings');\n }\n }\n if(yetiBoxes.length){\n let listeners = plugNames.map((name) => {\n return `closeme.zf.${name}`;\n }).join(' ');\n\n $(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n}\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n let timer, args = Array.prototype.slice.call(arguments, 3);\n $(window).off(trigger).on(trigger, function(e) {\n if (timer) { clearTimeout(timer); }\n timer = setTimeout(function(){\n listener.apply(null, args);\n }, debounce || 10);//default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function(debounce){\n let $nodes = $('[data-resize]');\n if($nodes.length){\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n}\n\nTriggers.Initializers.addScrollListener = function(debounce){\n let $nodes = $('[data-scroll]');\n if($nodes.length){\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n}\n\nTriggers.Initializers.addMutationEventsListener = function($elem) {\n if(!MutationObserver){ return false; }\n let $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');\n\n //element callback\n var listeningElementsMutation = function (mutationRecordsList) {\n var $target = $(mutationRecordsList[0].target);\n\n //trigger the event handler for the element depending on type\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\",\"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\",\"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], { attributes: true, childList: true, characterData: false, subtree: true, attributeFilter: [\"data-events\", \"style\"] });\n }\n }\n}\n\nTriggers.Initializers.addSimpleListeners = function() {\n let $document = $(document);\n\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n\n}\n\nTriggers.Initializers.addGlobalListeners = function() {\n let $document = $(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n}\n\n\nTriggers.init = function ($, Foundation) {\n onLoad($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if(Foundation) {\n Foundation.Triggers = Triggers;\n // Legacy included to be backwards compatible for now.\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners\n }\n}\n\nexport {Triggers};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"],"sourceRoot":""}
\No newline at end of file