UNPKG

10.2 kBJavaScriptView Raw
1(function webpackUniversalModuleDefinition(root, factory) {
2 if(typeof exports === 'object' && typeof module === 'object')
3 module.exports = factory(require("./foundation.core"), require("jquery"));
4 else if(typeof define === 'function' && define.amd)
5 define(["./foundation.core", "jquery"], factory);
6 else if(typeof exports === 'object')
7 exports["foundation.util.nest"] = factory(require("./foundation.core"), require("jquery"));
8 else
9 root["__FOUNDATION_EXTERNAL__"] = root["__FOUNDATION_EXTERNAL__"] || {}, root["__FOUNDATION_EXTERNAL__"]["foundation.util.nest"] = factory(root["__FOUNDATION_EXTERNAL__"]["foundation.core"], root["jQuery"]);
10})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {
11return /******/ (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 = 26);
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
106module.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;
107
108/***/ }),
109
110/***/ "./js/entries/plugins/foundation.util.nest.js":
111/*!****************************************************!*\
112 !*** ./js/entries/plugins/foundation.util.nest.js ***!
113 \****************************************************/
114/*! exports provided: Foundation, Nest */
115/***/ (function(module, __webpack_exports__, __webpack_require__) {
116
117"use strict";
118__webpack_require__.r(__webpack_exports__);
119/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ "./foundation.core");
120/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);
121/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Foundation", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"]; });
122
123/* harmony import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.nest */ "./js/foundation.util.nest.js");
124/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Nest", function() { return _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__["Nest"]; });
125
126
127
128_foundation_core__WEBPACK_IMPORTED_MODULE_0__["Foundation"].Nest = _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__["Nest"];
129
130
131/***/ }),
132
133/***/ "./js/foundation.util.nest.js":
134/*!************************************!*\
135 !*** ./js/foundation.util.nest.js ***!
136 \************************************/
137/*! exports provided: Nest */
138/***/ (function(module, __webpack_exports__, __webpack_require__) {
139
140"use strict";
141__webpack_require__.r(__webpack_exports__);
142/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Nest", function() { return Nest; });
143/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
144/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
145
146
147
148var Nest = {
149 Feather: function Feather(menu) {
150 var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'zf';
151 menu.attr('role', 'menubar');
152 menu.find('a').attr({
153 'role': 'menuitem'
154 });
155 var items = menu.find('li').attr({
156 'role': 'none'
157 }),
158 subMenuClass = "is-".concat(type, "-submenu"),
159 subItemClass = "".concat(subMenuClass, "-item"),
160 hasSubClass = "is-".concat(type, "-submenu-parent"),
161 applyAria = type !== 'accordion'; // Accordions handle their own ARIA attriutes.
162
163 items.each(function () {
164 var $item = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),
165 $sub = $item.children('ul');
166
167 if ($sub.length) {
168 $item.addClass(hasSubClass);
169
170 if (applyAria) {
171 $item.attr({
172 'aria-haspopup': true,
173 'aria-label': $item.children('a:first').text()
174 }); // Note: Drilldowns behave differently in how they hide, and so need
175 // additional attributes. We should look if this possibly over-generalized
176 // utility (Nest) is appropriate when we rework menus in 6.4
177
178 if (type === 'drilldown') {
179 $item.attr({
180 'aria-expanded': false
181 });
182 }
183 }
184
185 $sub.addClass("submenu ".concat(subMenuClass)).attr({
186 'data-submenu': '',
187 'role': 'menubar'
188 });
189
190 if (type === 'drilldown') {
191 $sub.attr({
192 'aria-hidden': true
193 });
194 }
195 }
196
197 if ($item.parent('[data-submenu]').length) {
198 $item.addClass("is-submenu-item ".concat(subItemClass));
199 }
200 });
201 return;
202 },
203 Burn: function Burn(menu, type) {
204 var //items = menu.find('li'),
205 subMenuClass = "is-".concat(type, "-submenu"),
206 subItemClass = "".concat(subMenuClass, "-item"),
207 hasSubClass = "is-".concat(type, "-submenu-parent");
208 menu.find('>li, > li > ul, .menu, .menu > li, [data-submenu] > li').removeClass("".concat(subMenuClass, " ").concat(subItemClass, " ").concat(hasSubClass, " is-submenu-item submenu is-active")).removeAttr('data-submenu').css('display', '');
209 }
210};
211
212
213/***/ }),
214
215/***/ 26:
216/*!**********************************************************!*\
217 !*** multi ./js/entries/plugins/foundation.util.nest.js ***!
218 \**********************************************************/
219/*! no static exports found */
220/***/ (function(module, exports, __webpack_require__) {
221
222module.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.nest.js */"./js/entries/plugins/foundation.util.nest.js");
223
224
225/***/ }),
226
227/***/ "jquery":
228/*!********************************************************************************************!*\
229 !*** external {"root":["jQuery"],"amd":"jquery","commonjs":"jquery","commonjs2":"jquery"} ***!
230 \********************************************************************************************/
231/*! no static exports found */
232/***/ (function(module, exports) {
233
234module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;
235
236/***/ })
237
238/******/ });
239});
240//# sourceMappingURL=foundation.util.nest.js.map
\No newline at end of file