1 line
17 KiB
Plaintext
1 line
17 KiB
Plaintext
{"version":3,"sources":["webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/universalModuleDefinition","webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/bootstrap","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core.plugin\",\"commonjs\":\"./foundation.core.plugin\",\"commonjs2\":\"./foundation.core.plugin\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core.utils\",\"commonjs\":\"./foundation.core.utils\",\"commonjs2\":\"./foundation.core.utils\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"}","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/entries/plugins/foundation.interchange.js","webpack://__FOUNDATION_EXTERNAL__.[name]/./js/foundation.interchange.js","webpack://__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["Foundation","plugin","Interchange","element","options","$element","$","extend","defaults","rules","currentPath","className","_init","_events","MediaQuery","id","GetYoDigits","attr","_addBreakpoints","_generateRules","_reflow","off","on","match","i","hasOwnProperty","rule","window","matchMedia","query","matches","replace","path","queries","SPECIAL_QUERIES","name","value","rulesList","data","slice","split","join","length","push","_this","trigger","nodeName","css","get","response","html","foundation","Plugin"],"mappings":"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","file":"foundation.interchange.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.core.plugin\", \"./foundation.core.utils\", \"./foundation.util.mediaQuery\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.interchange\"] = factory(require(\"./foundation.core\"), require(\"./foundation.core.plugin\"), require(\"./foundation.core.utils\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.interchange\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__, __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __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 = 7);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_plugin__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core_utils__;","module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;","import { Foundation } from './foundation.core';\n\nimport { Interchange } from '../../foundation.interchange';\nFoundation.plugin(Interchange, 'Interchange');\n\nexport { Foundation, Interchange };\n","'use strict';\n\nimport $ from 'jquery';\nimport { MediaQuery } from './foundation.util.mediaQuery';\nimport { Plugin } from './foundation.core.plugin';\nimport { GetYoDigits } from './foundation.core.utils';\n\n\n/**\n * Interchange module.\n * @module foundation.interchange\n * @requires foundation.util.mediaQuery\n */\n\nclass Interchange extends Plugin {\n /**\n * Creates a new instance of Interchange.\n * @class\n * @name Interchange\n * @fires Interchange#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({}, Interchange.defaults, options);\n this.rules = [];\n this.currentPath = '';\n this.className = 'Interchange'; // ie9 back compat\n\n this._init();\n this._events();\n }\n\n /**\n * Initializes the Interchange plugin and calls functions to get interchange functioning on load.\n * @function\n * @private\n */\n _init() {\n MediaQuery._init();\n\n var id = this.$element[0].id || GetYoDigits(6, 'interchange');\n this.$element.attr({\n 'data-resize': id,\n 'id': id\n });\n\n this._addBreakpoints();\n this._generateRules();\n this._reflow();\n }\n\n /**\n * Initializes events for Interchange.\n * @function\n * @private\n */\n _events() {\n this.$element.off('resizeme.zf.trigger').on('resizeme.zf.trigger', () => this._reflow());\n }\n\n /**\n * Calls necessary functions to update Interchange upon DOM change\n * @function\n * @private\n */\n _reflow() {\n var match;\n\n // Iterate through each rule, but only save the last match\n for (var i in this.rules) {\n if(this.rules.hasOwnProperty(i)) {\n var rule = this.rules[i];\n if (window.matchMedia(rule.query).matches) {\n match = rule;\n }\n }\n }\n\n if (match) {\n this.replace(match.path);\n }\n }\n\n /**\n * Gets the Foundation breakpoints and adds them to the Interchange.SPECIAL_QUERIES object.\n * @function\n * @private\n */\n _addBreakpoints() {\n for (var i in MediaQuery.queries) {\n if (MediaQuery.queries.hasOwnProperty(i)) {\n var query = MediaQuery.queries[i];\n Interchange.SPECIAL_QUERIES[query.name] = query.value;\n }\n }\n }\n\n /**\n * Checks the Interchange element for the provided media query + content pairings\n * @function\n * @private\n * @param {Object} element - jQuery object that is an Interchange instance\n * @returns {Array} scenarios - Array of objects that have 'mq' and 'path' keys with corresponding keys\n */\n _generateRules(element) {\n var rulesList = [];\n var rules;\n\n if (this.options.rules) {\n rules = this.options.rules;\n }\n else {\n rules = this.$element.data('interchange');\n }\n\n rules = typeof rules === 'string' ? rules.match(/\\[.*?, .*?\\]/g) : rules;\n\n for (var i in rules) {\n if(rules.hasOwnProperty(i)) {\n var rule = rules[i].slice(1, -1).split(', ');\n var path = rule.slice(0, -1).join('');\n var query = rule[rule.length - 1];\n\n if (Interchange.SPECIAL_QUERIES[query]) {\n query = Interchange.SPECIAL_QUERIES[query];\n }\n\n rulesList.push({\n path: path,\n query: query\n });\n }\n }\n\n this.rules = rulesList;\n }\n\n /**\n * Update the `src` property of an image, or change the HTML of a container, to the specified path.\n * @function\n * @param {String} path - Path to the image or HTML partial.\n * @fires Interchange#replaced\n */\n replace(path) {\n if (this.currentPath === path) return;\n\n var _this = this,\n trigger = 'replaced.zf.interchange';\n\n // Replacing images\n if (this.$element[0].nodeName === 'IMG') {\n this.$element.attr('src', path).on('load', function() {\n _this.currentPath = path;\n })\n .trigger(trigger);\n }\n // Replacing background images\n else if (path.match(/\\.(gif|jpg|jpeg|png|svg|tiff)([?#].*)?/i)) {\n path = path.replace(/\\(/g, '%28').replace(/\\)/g, '%29');\n this.$element.css({ 'background-image': 'url('+path+')' })\n .trigger(trigger);\n }\n // Replacing HTML\n else {\n $.get(path, function(response) {\n _this.$element.html(response)\n .trigger(trigger);\n $(response).foundation();\n _this.currentPath = path;\n });\n }\n\n /**\n * Fires when content in an Interchange element is done being loaded.\n * @event Interchange#replaced\n */\n // this.$element.trigger('replaced.zf.interchange');\n }\n\n /**\n * Destroys an instance of interchange.\n * @function\n */\n _destroy() {\n this.$element.off('resizeme.zf.trigger')\n }\n}\n\n/**\n * Default settings for plugin\n */\nInterchange.defaults = {\n /**\n * Rules to be applied to Interchange elements. Set with the `data-interchange` array notation.\n * @option\n * @type {?array}\n * @default null\n */\n rules: null\n};\n\nInterchange.SPECIAL_QUERIES = {\n 'landscape': 'screen and (orientation: landscape)',\n 'portrait': 'screen and (orientation: portrait)',\n 'retina': 'only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)'\n};\n\nexport {Interchange};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"],"sourceRoot":""} |