@nauedu/frontend-component-header 14.0.0-semantically-released → 18.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.rst +111 -33
- package/dist/Avatar.js +5 -7
- package/dist/Avatar.js.map +1 -1
- package/dist/DesktopHeader.js +98 -74
- package/dist/DesktopHeader.js.map +1 -1
- package/dist/Header.js +81 -41
- package/dist/Header.js.map +1 -1
- package/dist/Header.messages.js +15 -0
- package/dist/Header.messages.js.map +1 -1
- package/dist/Header.test.jsx +67 -90
- package/dist/Icons.js +1 -2
- package/dist/Icons.js.map +1 -1
- package/dist/LanguageSelector/data/api.js +65 -0
- package/dist/LanguageSelector/data/api.js.map +1 -0
- package/dist/LanguageSelector/index.js +113 -0
- package/dist/LanguageSelector/index.js.map +1 -0
- package/dist/Logo.js +11 -21
- package/dist/Logo.js.map +1 -1
- package/dist/Menu/Menu.js +42 -88
- package/dist/Menu/Menu.js.map +1 -1
- package/dist/Menu/index.js.map +1 -1
- package/dist/MobileHeader.js +80 -76
- package/dist/MobileHeader.js.map +1 -1
- package/dist/__snapshots__/Header.test.jsx.snap +12 -12
- package/dist/generic/messages.js.map +1 -1
- package/dist/i18n/index.js +1 -30
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/index.scss +11 -1
- package/dist/learning-header/AnonymousUserMenu.js +3 -5
- package/dist/learning-header/AnonymousUserMenu.js.map +1 -1
- package/dist/learning-header/AuthenticatedUserDropdown.js +8 -10
- package/dist/learning-header/AuthenticatedUserDropdown.js.map +1 -1
- package/dist/learning-header/LearningHeader.js +56 -50
- package/dist/learning-header/LearningHeader.js.map +1 -1
- package/dist/learning-header/_header.scss +5 -2
- package/dist/learning-header/data/api.js +30 -42
- package/dist/learning-header/data/api.js.map +1 -1
- package/dist/learning-header/data/api.test.js +124 -175
- package/dist/learning-header/data/api.test.js.map +1 -1
- package/dist/learning-header/messages.js.map +1 -1
- package/dist/setupTest.js +9 -13
- package/dist/studio-header/BrandNav.js +21 -0
- package/dist/studio-header/BrandNav.js.map +1 -0
- package/dist/studio-header/CourseLockUp.js +45 -0
- package/dist/studio-header/CourseLockUp.js.map +1 -0
- package/dist/studio-header/HeaderBody.js +131 -0
- package/dist/studio-header/HeaderBody.js.map +1 -0
- package/dist/studio-header/MobileHeader.js +79 -0
- package/dist/studio-header/MobileHeader.js.map +1 -0
- package/dist/studio-header/MobileMenu.js +45 -0
- package/dist/studio-header/MobileMenu.js.map +1 -0
- package/dist/studio-header/NavDropdownMenu.js +30 -0
- package/dist/studio-header/NavDropdownMenu.js.map +1 -0
- package/dist/studio-header/StudioHeader.js +72 -0
- package/dist/studio-header/StudioHeader.js.map +1 -0
- package/dist/studio-header/StudioHeader.scss +49 -0
- package/dist/studio-header/UserMenu.js +55 -0
- package/dist/studio-header/UserMenu.js.map +1 -0
- package/dist/studio-header/index.js +3 -0
- package/dist/studio-header/index.js.map +1 -0
- package/dist/studio-header/messages.js +60 -0
- package/dist/studio-header/messages.js.map +1 -0
- package/dist/studio-header/utils.js +29 -0
- package/dist/studio-header/utils.js.map +1 -0
- package/dist/test-utils.js +26 -0
- package/dist/test-utils.js.map +1 -0
- package/package.json +33 -33
- package/dist/i18n/messages/ar.json +0 -30
- package/dist/i18n/messages/ca.json +0 -1
- package/dist/i18n/messages/es_419.json +0 -30
- package/dist/i18n/messages/fr.json +0 -30
- package/dist/i18n/messages/fr_CA.json +0 -30
- package/dist/i18n/messages/he.json +0 -1
- package/dist/i18n/messages/id.json +0 -1
- package/dist/i18n/messages/ko_KR.json +0 -2
- package/dist/i18n/messages/pl.json +0 -1
- package/dist/i18n/messages/pt_BR.json +0 -2
- package/dist/i18n/messages/ru.json +0 -1
- package/dist/i18n/messages/th.json +0 -1
- package/dist/i18n/messages/uk.json +0 -1
- package/dist/i18n/messages/zh_CN.json +0 -30
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
3
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
4
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import PropTypes from 'prop-types';
|
|
7
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
8
|
+
import { faGlobe } from '@fortawesome/free-solid-svg-icons';
|
|
9
|
+
import { publish } from '@edx/frontend-platform';
|
|
10
|
+
import { getLocale, injectIntl, intlShape, FormattedMessage, LOCALE_CHANGED, handleRtl } from '@edx/frontend-platform/i18n';
|
|
11
|
+
import { Dropdown } from '@openedx/paragon';
|
|
12
|
+
import { logError } from '@edx/frontend-platform/logging';
|
|
13
|
+
import { patchPreferences, postSetLang } from './data/api';
|
|
14
|
+
var onLanguageSelected = /*#__PURE__*/function () {
|
|
15
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(username, selectedLanguageCode) {
|
|
16
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
17
|
+
while (1) switch (_context.prev = _context.next) {
|
|
18
|
+
case 0:
|
|
19
|
+
_context.prev = 0;
|
|
20
|
+
if (!username) {
|
|
21
|
+
_context.next = 6;
|
|
22
|
+
break;
|
|
23
|
+
}
|
|
24
|
+
_context.next = 4;
|
|
25
|
+
return patchPreferences(username, {
|
|
26
|
+
prefLang: selectedLanguageCode
|
|
27
|
+
});
|
|
28
|
+
case 4:
|
|
29
|
+
_context.next = 6;
|
|
30
|
+
return postSetLang(selectedLanguageCode);
|
|
31
|
+
case 6:
|
|
32
|
+
publish(LOCALE_CHANGED, getLocale());
|
|
33
|
+
handleRtl();
|
|
34
|
+
_context.next = 13;
|
|
35
|
+
break;
|
|
36
|
+
case 10:
|
|
37
|
+
_context.prev = 10;
|
|
38
|
+
_context.t0 = _context["catch"](0);
|
|
39
|
+
logError(_context.t0);
|
|
40
|
+
case 13:
|
|
41
|
+
case "end":
|
|
42
|
+
return _context.stop();
|
|
43
|
+
}
|
|
44
|
+
}, _callee, null, [[0, 10]]);
|
|
45
|
+
}));
|
|
46
|
+
return function onLanguageSelected(_x, _x2) {
|
|
47
|
+
return _ref.apply(this, arguments);
|
|
48
|
+
};
|
|
49
|
+
}();
|
|
50
|
+
var LanguageSelector = function LanguageSelector(_ref2) {
|
|
51
|
+
var intl = _ref2.intl,
|
|
52
|
+
options = _ref2.options,
|
|
53
|
+
authenticatedUser = _ref2.authenticatedUser,
|
|
54
|
+
compact = _ref2.compact;
|
|
55
|
+
var languageLabel = function languageLabel(languageCode) {
|
|
56
|
+
var option = options.find(function (_ref3) {
|
|
57
|
+
var value = _ref3.value;
|
|
58
|
+
return value === languageCode;
|
|
59
|
+
});
|
|
60
|
+
return option ? option.label : null;
|
|
61
|
+
};
|
|
62
|
+
var handleChange = function handleChange(languageCode, event) {
|
|
63
|
+
var previousSiteLanguage = getLocale();
|
|
64
|
+
/* eslint-disable no-console */
|
|
65
|
+
console.debug(previousSiteLanguage, languageCode, authenticatedUser);
|
|
66
|
+
if (previousSiteLanguage !== languageCode) {
|
|
67
|
+
onLanguageSelected(authenticatedUser === null || authenticatedUser === void 0 ? void 0 : authenticatedUser.username, languageCode);
|
|
68
|
+
}
|
|
69
|
+
var languageLabelElement = event.target.parentElement.parentElement.querySelector('.languageLabel');
|
|
70
|
+
languageLabelElement.innerHTML = languageLabel(languageCode);
|
|
71
|
+
};
|
|
72
|
+
var currentLangLabel = languageLabel(intl.locale);
|
|
73
|
+
var showLabel = !(compact || false);
|
|
74
|
+
return /*#__PURE__*/React.createElement(Dropdown, {
|
|
75
|
+
className: "language-selector"
|
|
76
|
+
}, /*#__PURE__*/React.createElement(Dropdown.Toggle, {
|
|
77
|
+
variant: "outline-primary"
|
|
78
|
+
}, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
|
|
79
|
+
icon: faGlobe
|
|
80
|
+
}), showLabel && (currentLangLabel ? /*#__PURE__*/React.createElement("span", {
|
|
81
|
+
className: "pl-1 languageLabel"
|
|
82
|
+
}, currentLangLabel) : /*#__PURE__*/React.createElement("span", {
|
|
83
|
+
className: "pl-1"
|
|
84
|
+
}, /*#__PURE__*/React.createElement(FormattedMessage, {
|
|
85
|
+
id: "footer.languageForm.select.label",
|
|
86
|
+
defaultMessage: "Choose Language",
|
|
87
|
+
description: "The label for the laguage select part of the language selection form."
|
|
88
|
+
})))), /*#__PURE__*/React.createElement(Dropdown.Menu, null, options.map(function (_ref4) {
|
|
89
|
+
var value = _ref4.value,
|
|
90
|
+
label = _ref4.label;
|
|
91
|
+
return /*#__PURE__*/React.createElement(Dropdown.Item, {
|
|
92
|
+
key: value,
|
|
93
|
+
eventKey: value,
|
|
94
|
+
onSelect: handleChange
|
|
95
|
+
}, label);
|
|
96
|
+
})));
|
|
97
|
+
};
|
|
98
|
+
LanguageSelector.propTypes = {
|
|
99
|
+
authenticatedUser: PropTypes.shape({
|
|
100
|
+
username: PropTypes.string
|
|
101
|
+
}).isRequired,
|
|
102
|
+
intl: intlShape.isRequired,
|
|
103
|
+
compact: PropTypes.bool,
|
|
104
|
+
options: PropTypes.arrayOf(PropTypes.shape({
|
|
105
|
+
value: PropTypes.string,
|
|
106
|
+
label: PropTypes.string
|
|
107
|
+
})).isRequired
|
|
108
|
+
};
|
|
109
|
+
LanguageSelector.defaultProps = {
|
|
110
|
+
compact: false
|
|
111
|
+
};
|
|
112
|
+
export default injectIntl(LanguageSelector);
|
|
113
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","React","PropTypes","FontAwesomeIcon","faGlobe","publish","getLocale","injectIntl","intlShape","FormattedMessage","LOCALE_CHANGED","handleRtl","Dropdown","logError","patchPreferences","postSetLang","onLanguageSelected","_ref","_callee","username","selectedLanguageCode","_callee$","_context","prefLang","t0","_x","_x2","LanguageSelector","_ref2","intl","options","authenticatedUser","compact","languageLabel","languageCode","option","find","_ref3","label","handleChange","event","previousSiteLanguage","console","debug","languageLabelElement","target","parentElement","querySelector","innerHTML","currentLangLabel","locale","showLabel","createElement","className","Toggle","variant","icon","id","defaultMessage","description","Menu","map","_ref4","Item","eventKey","onSelect","propTypes","shape","string","isRequired","bool","arrayOf","defaultProps"],"sources":["../../src/LanguageSelector/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { faGlobe } from '@fortawesome/free-solid-svg-icons';\nimport { publish } from '@edx/frontend-platform';\nimport {\n getLocale, injectIntl, intlShape, FormattedMessage, LOCALE_CHANGED, handleRtl,\n} from '@edx/frontend-platform/i18n';\nimport { Dropdown } from '@openedx/paragon';\nimport { logError } from '@edx/frontend-platform/logging';\n\nimport { patchPreferences, postSetLang } from './data/api';\n\nconst onLanguageSelected = async (username, selectedLanguageCode) => {\n try {\n if (username) {\n await patchPreferences(username, { prefLang: selectedLanguageCode });\n await postSetLang(selectedLanguageCode);\n }\n publish(LOCALE_CHANGED, getLocale());\n handleRtl();\n } catch (error) {\n logError(error);\n }\n};\n\nconst LanguageSelector = ({\n intl, options, authenticatedUser, compact,\n}) => {\n const languageLabel = (languageCode) => {\n const option = options.find(({ value }) => value === languageCode);\n return option ? option.label : null;\n };\n\n const handleChange = (languageCode, event) => {\n const previousSiteLanguage = getLocale();\n /* eslint-disable no-console */\n console.debug(previousSiteLanguage, languageCode, authenticatedUser);\n\n if (previousSiteLanguage !== languageCode) {\n onLanguageSelected(authenticatedUser?.username, languageCode);\n }\n\n const languageLabelElement = event.target.parentElement.parentElement.querySelector('.languageLabel');\n languageLabelElement.innerHTML = languageLabel(languageCode);\n };\n\n const currentLangLabel = languageLabel(intl.locale);\n const showLabel = !(compact || false);\n\n return (\n <Dropdown className=\"language-selector\">\n <Dropdown.Toggle variant=\"outline-primary\">\n <FontAwesomeIcon icon={faGlobe} />\n {showLabel && (\n currentLangLabel ? (\n <span className=\"pl-1 languageLabel\">\n {currentLangLabel}\n </span>\n ) : (\n <span className=\"pl-1\">\n <FormattedMessage\n id=\"footer.languageForm.select.label\"\n defaultMessage=\"Choose Language\"\n description=\"The label for the laguage select part of the language selection form.\"\n />\n </span>\n )\n )}\n </Dropdown.Toggle>\n <Dropdown.Menu>\n {options.map(({ value, label }) => (\n <Dropdown.Item key={value} eventKey={value} onSelect={handleChange}>\n {label}\n </Dropdown.Item>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nLanguageSelector.propTypes = {\n authenticatedUser: PropTypes.shape({\n username: PropTypes.string,\n }).isRequired,\n intl: intlShape.isRequired,\n compact: PropTypes.bool,\n options: PropTypes.arrayOf(PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n })).isRequired,\n};\n\nLanguageSelector.defaultProps = {\n compact: false,\n};\n\nexport default injectIntl(LanguageSelector);\n"],"mappings":"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","ignoreList":[]}
|
package/dist/Logo.js
CHANGED
|
@@ -1,37 +1,28 @@
|
|
|
1
1
|
var _excluded = ["src", "alt"],
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
5
|
-
|
|
2
|
+
_excluded2 = ["href", "src", "alt"];
|
|
3
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
6
4
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
7
|
-
|
|
8
5
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
9
|
-
|
|
10
6
|
import React from 'react';
|
|
11
7
|
import PropTypes from 'prop-types';
|
|
12
|
-
|
|
13
|
-
function Logo(_ref) {
|
|
8
|
+
var Logo = function Logo(_ref) {
|
|
14
9
|
var src = _ref.src,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
alt = _ref.alt,
|
|
11
|
+
attributes = _objectWithoutProperties(_ref, _excluded);
|
|
18
12
|
return /*#__PURE__*/React.createElement("img", _extends({
|
|
19
13
|
src: src,
|
|
20
14
|
alt: alt
|
|
21
15
|
}, attributes));
|
|
22
|
-
}
|
|
23
|
-
|
|
16
|
+
};
|
|
24
17
|
Logo.propTypes = {
|
|
25
18
|
src: PropTypes.string.isRequired,
|
|
26
19
|
alt: PropTypes.string.isRequired
|
|
27
20
|
};
|
|
28
|
-
|
|
29
|
-
function LinkedLogo(_ref2) {
|
|
21
|
+
var LinkedLogo = function LinkedLogo(_ref2) {
|
|
30
22
|
var href = _ref2.href,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
23
|
+
src = _ref2.src,
|
|
24
|
+
alt = _ref2.alt,
|
|
25
|
+
attributes = _objectWithoutProperties(_ref2, _excluded2);
|
|
35
26
|
return /*#__PURE__*/React.createElement("a", _extends({
|
|
36
27
|
href: href
|
|
37
28
|
}, attributes), /*#__PURE__*/React.createElement("img", {
|
|
@@ -39,8 +30,7 @@ function LinkedLogo(_ref2) {
|
|
|
39
30
|
src: src,
|
|
40
31
|
alt: alt
|
|
41
32
|
}));
|
|
42
|
-
}
|
|
43
|
-
|
|
33
|
+
};
|
|
44
34
|
LinkedLogo.propTypes = {
|
|
45
35
|
href: PropTypes.string.isRequired,
|
|
46
36
|
src: PropTypes.string.isRequired,
|
package/dist/Logo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Logo.js","names":["React","PropTypes","Logo","_ref","src","alt","attributes","_objectWithoutProperties","_excluded","createElement","_extends","propTypes","string","isRequired","LinkedLogo","_ref2","href","_excluded2","className"],"sources":["../src/Logo.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Logo = ({ src, alt, ...attributes }) => (\n <img src={src} alt={alt} {...attributes} />\n);\n\nLogo.propTypes = {\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n};\n\nconst LinkedLogo = ({\n href,\n src,\n alt,\n ...attributes\n}) => (\n <a href={href} {...attributes}>\n <img className=\"d-block\" src={src} alt={alt} />\n </a>\n);\n\nLinkedLogo.propTypes = {\n href: PropTypes.string.isRequired,\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n};\n\nexport { LinkedLogo, Logo };\nexport default Logo;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAAC,IAAA;EAAA,IAAMC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IAAEC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IAAKC,UAAU,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAAA,oBACrCR,KAAA,CAAAS,aAAA,QAAAC,QAAA;IAAKN,GAAG,EAAEA,GAAI;IAACC,GAAG,EAAEA;EAAI,GAAKC,UAAU,CAAG,CAAC;AAAA,CAC5C;AAEDJ,IAAI,CAACS,SAAS,GAAG;EACfP,GAAG,EAAEH,SAAS,CAACW,MAAM,CAACC,UAAU;EAChCR,GAAG,EAAEJ,SAAS,CAACW,MAAM,CAACC;AACxB,CAAC;AAED,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAAC,KAAA;EAAA,IACdC,IAAI,GAAAD,KAAA,CAAJC,IAAI;IACJZ,GAAG,GAAAW,KAAA,CAAHX,GAAG;IACHC,GAAG,GAAAU,KAAA,CAAHV,GAAG;IACAC,UAAU,GAAAC,wBAAA,CAAAQ,KAAA,EAAAE,UAAA;EAAA,oBAEbjB,KAAA,CAAAS,aAAA,MAAAC,QAAA;IAAGM,IAAI,EAAEA;EAAK,GAAKV,UAAU,gBAC3BN,KAAA,CAAAS,aAAA;IAAKS,SAAS,EAAC,SAAS;IAACd,GAAG,EAAEA,GAAI;IAACC,GAAG,EAAEA;EAAI,CAAE,CAC7C,CAAC;AAAA,CACL;AAEDS,UAAU,CAACH,SAAS,GAAG;EACrBK,IAAI,EAAEf,SAAS,CAACW,MAAM,CAACC,UAAU;EACjCT,GAAG,EAAEH,SAAS,CAACW,MAAM,CAACC,UAAU;EAChCR,GAAG,EAAEJ,SAAS,CAACW,MAAM,CAACC;AACxB,CAAC;AAED,SAASC,UAAU,EAAEZ,IAAI;AACzB,eAAeA,IAAI","ignoreList":[]}
|
package/dist/Menu/Menu.js
CHANGED
|
@@ -1,52 +1,34 @@
|
|
|
1
|
-
function _typeof(
|
|
2
|
-
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
3
2
|
var _excluded = ["tag", "className"],
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
_excluded2 = ["tag", "className"];
|
|
6
4
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
7
|
-
|
|
8
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
9
|
-
|
|
5
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
10
6
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
11
|
-
|
|
12
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
13
|
-
|
|
14
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
15
|
-
|
|
16
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
17
|
-
|
|
7
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
18
8
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
19
|
-
|
|
20
9
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
21
|
-
|
|
22
|
-
function
|
|
23
|
-
|
|
24
|
-
function
|
|
25
|
-
|
|
26
|
-
function
|
|
27
|
-
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
31
|
-
|
|
10
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
11
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
12
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
13
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
14
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
18
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
19
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
33
|
-
|
|
34
20
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
35
|
-
|
|
36
21
|
import React from 'react';
|
|
37
22
|
import { CSSTransition } from 'react-transition-group';
|
|
38
23
|
import PropTypes from 'prop-types';
|
|
39
|
-
|
|
40
|
-
function MenuTrigger(_ref) {
|
|
24
|
+
var MenuTrigger = function MenuTrigger(_ref) {
|
|
41
25
|
var tag = _ref.tag,
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
26
|
+
className = _ref.className,
|
|
27
|
+
attributes = _objectWithoutProperties(_ref, _excluded);
|
|
45
28
|
return /*#__PURE__*/React.createElement(tag, _objectSpread({
|
|
46
29
|
className: "menu-trigger ".concat(className)
|
|
47
30
|
}, attributes));
|
|
48
|
-
}
|
|
49
|
-
|
|
31
|
+
};
|
|
50
32
|
MenuTrigger.propTypes = {
|
|
51
33
|
tag: PropTypes.string,
|
|
52
34
|
className: PropTypes.string
|
|
@@ -55,18 +37,16 @@ MenuTrigger.defaultProps = {
|
|
|
55
37
|
tag: 'div',
|
|
56
38
|
className: null
|
|
57
39
|
};
|
|
58
|
-
var
|
|
59
|
-
|
|
60
|
-
function MenuContent(_ref2) {
|
|
40
|
+
var MenuTriggerComp = /*#__PURE__*/React.createElement(MenuTrigger, null);
|
|
41
|
+
var MenuTriggerType = MenuTriggerComp.type;
|
|
42
|
+
var MenuContent = function MenuContent(_ref2) {
|
|
61
43
|
var tag = _ref2.tag,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
44
|
+
className = _ref2.className,
|
|
45
|
+
attributes = _objectWithoutProperties(_ref2, _excluded2);
|
|
65
46
|
return /*#__PURE__*/React.createElement(tag, _objectSpread({
|
|
66
47
|
className: ['menu-content', className].join(' ')
|
|
67
48
|
}, attributes));
|
|
68
|
-
}
|
|
69
|
-
|
|
49
|
+
};
|
|
70
50
|
MenuContent.propTypes = {
|
|
71
51
|
tag: PropTypes.string,
|
|
72
52
|
className: PropTypes.string
|
|
@@ -86,56 +66,49 @@ var menuPropTypes = {
|
|
|
86
66
|
transitionClassName: PropTypes.string,
|
|
87
67
|
children: PropTypes.arrayOf(PropTypes.node).isRequired
|
|
88
68
|
};
|
|
89
|
-
|
|
90
69
|
var Menu = /*#__PURE__*/function (_React$Component) {
|
|
91
|
-
_inherits(Menu, _React$Component);
|
|
92
|
-
|
|
93
|
-
var _super = _createSuper(Menu);
|
|
94
|
-
|
|
95
70
|
function Menu(props) {
|
|
96
71
|
var _this;
|
|
97
|
-
|
|
98
72
|
_classCallCheck(this, Menu);
|
|
99
|
-
|
|
100
|
-
_this = _super.call(this, props);
|
|
73
|
+
_this = _callSuper(this, Menu, [props]);
|
|
101
74
|
_this.menu = /*#__PURE__*/React.createRef();
|
|
102
75
|
_this.state = {
|
|
103
76
|
expanded: false
|
|
104
77
|
};
|
|
105
|
-
_this.onTriggerClick = _this.onTriggerClick.bind(
|
|
106
|
-
_this.onCloseClick = _this.onCloseClick.bind(
|
|
107
|
-
_this.onKeyDown = _this.onKeyDown.bind(
|
|
108
|
-
_this.onDocumentClick = _this.onDocumentClick.bind(
|
|
109
|
-
_this.onMouseEnter = _this.onMouseEnter.bind(
|
|
110
|
-
_this.onMouseLeave = _this.onMouseLeave.bind(
|
|
78
|
+
_this.onTriggerClick = _this.onTriggerClick.bind(_this);
|
|
79
|
+
_this.onCloseClick = _this.onCloseClick.bind(_this);
|
|
80
|
+
_this.onKeyDown = _this.onKeyDown.bind(_this);
|
|
81
|
+
_this.onDocumentClick = _this.onDocumentClick.bind(_this);
|
|
82
|
+
_this.onMouseEnter = _this.onMouseEnter.bind(_this);
|
|
83
|
+
_this.onMouseLeave = _this.onMouseLeave.bind(_this);
|
|
111
84
|
return _this;
|
|
112
|
-
}
|
|
85
|
+
}
|
|
113
86
|
|
|
114
|
-
|
|
115
|
-
|
|
87
|
+
// Lifecycle Events
|
|
88
|
+
_inherits(Menu, _React$Component);
|
|
89
|
+
return _createClass(Menu, [{
|
|
116
90
|
key: "componentWillUnmount",
|
|
117
91
|
value: function componentWillUnmount() {
|
|
118
92
|
document.removeEventListener('touchend', this.onDocumentClick, true);
|
|
119
|
-
document.removeEventListener('click', this.onDocumentClick, true);
|
|
93
|
+
document.removeEventListener('click', this.onDocumentClick, true);
|
|
120
94
|
|
|
95
|
+
// Call onClose callback when unmounting and open
|
|
121
96
|
if (this.state.expanded && this.props.onClose) {
|
|
122
97
|
this.props.onClose();
|
|
123
98
|
}
|
|
124
|
-
}
|
|
99
|
+
}
|
|
125
100
|
|
|
101
|
+
// Event handlers
|
|
126
102
|
}, {
|
|
127
103
|
key: "onDocumentClick",
|
|
128
104
|
value: function onDocumentClick(e) {
|
|
129
105
|
if (!this.props.closeOnDocumentClick) {
|
|
130
106
|
return;
|
|
131
107
|
}
|
|
132
|
-
|
|
133
108
|
var clickIsInMenu = this.menu.current === e.target || this.menu.current.contains(e.target);
|
|
134
|
-
|
|
135
109
|
if (clickIsInMenu) {
|
|
136
110
|
return;
|
|
137
111
|
}
|
|
138
|
-
|
|
139
112
|
this.close();
|
|
140
113
|
}
|
|
141
114
|
}, {
|
|
@@ -146,7 +119,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
146
119
|
if (this.state.expanded && e.target.getAttribute('href')) {
|
|
147
120
|
return;
|
|
148
121
|
}
|
|
149
|
-
|
|
150
122
|
e.preventDefault();
|
|
151
123
|
this.toggle();
|
|
152
124
|
}
|
|
@@ -162,7 +134,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
162
134
|
if (!this.state.expanded) {
|
|
163
135
|
return;
|
|
164
136
|
}
|
|
165
|
-
|
|
166
137
|
switch (e.key) {
|
|
167
138
|
case 'Escape':
|
|
168
139
|
{
|
|
@@ -172,7 +143,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
172
143
|
this.close();
|
|
173
144
|
break;
|
|
174
145
|
}
|
|
175
|
-
|
|
176
146
|
case 'Enter':
|
|
177
147
|
{
|
|
178
148
|
// Using focusable elements instead of a ref to the trigger
|
|
@@ -181,37 +151,30 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
181
151
|
e.preventDefault();
|
|
182
152
|
this.toggle();
|
|
183
153
|
}
|
|
184
|
-
|
|
185
154
|
break;
|
|
186
155
|
}
|
|
187
|
-
|
|
188
156
|
case 'Tab':
|
|
189
157
|
{
|
|
190
158
|
e.preventDefault();
|
|
191
|
-
|
|
192
159
|
if (e.shiftKey) {
|
|
193
160
|
this.focusPrevious();
|
|
194
161
|
} else {
|
|
195
162
|
this.focusNext();
|
|
196
163
|
}
|
|
197
|
-
|
|
198
164
|
break;
|
|
199
165
|
}
|
|
200
|
-
|
|
201
166
|
case 'ArrowDown':
|
|
202
167
|
{
|
|
203
168
|
e.preventDefault();
|
|
204
169
|
this.focusNext();
|
|
205
170
|
break;
|
|
206
171
|
}
|
|
207
|
-
|
|
208
172
|
case 'ArrowUp':
|
|
209
173
|
{
|
|
210
174
|
e.preventDefault();
|
|
211
175
|
this.focusPrevious();
|
|
212
176
|
break;
|
|
213
177
|
}
|
|
214
|
-
|
|
215
178
|
default:
|
|
216
179
|
}
|
|
217
180
|
}
|
|
@@ -221,7 +184,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
221
184
|
if (!this.props.respondToPointerEvents) {
|
|
222
185
|
return;
|
|
223
186
|
}
|
|
224
|
-
|
|
225
187
|
this.open();
|
|
226
188
|
}
|
|
227
189
|
}, {
|
|
@@ -230,10 +192,10 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
230
192
|
if (!this.props.respondToPointerEvents) {
|
|
231
193
|
return;
|
|
232
194
|
}
|
|
233
|
-
|
|
234
195
|
this.close();
|
|
235
|
-
}
|
|
196
|
+
}
|
|
236
197
|
|
|
198
|
+
// Internal functions
|
|
237
199
|
}, {
|
|
238
200
|
key: "getFocusableElements",
|
|
239
201
|
value: function getFocusableElements() {
|
|
@@ -243,7 +205,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
243
205
|
key: "getAttributesFromProps",
|
|
244
206
|
value: function getAttributesFromProps() {
|
|
245
207
|
var _this2 = this;
|
|
246
|
-
|
|
247
208
|
// Any extra props are attributes for the menu
|
|
248
209
|
var attributes = {};
|
|
249
210
|
Object.keys(this.props).filter(function (property) {
|
|
@@ -275,12 +236,11 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
275
236
|
if (this.props.onOpen) {
|
|
276
237
|
this.props.onOpen();
|
|
277
238
|
}
|
|
278
|
-
|
|
279
239
|
this.setState({
|
|
280
240
|
expanded: true
|
|
281
|
-
});
|
|
241
|
+
});
|
|
242
|
+
// Listen to touchend and click events to ensure the menu
|
|
282
243
|
// can be closed on mobile, pointer, and mixed input devices
|
|
283
|
-
|
|
284
244
|
document.addEventListener('touchend', this.onDocumentClick, true);
|
|
285
245
|
document.addEventListener('click', this.onDocumentClick, true);
|
|
286
246
|
}
|
|
@@ -290,7 +250,6 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
290
250
|
if (this.props.onClose) {
|
|
291
251
|
this.props.onClose();
|
|
292
252
|
}
|
|
293
|
-
|
|
294
253
|
this.setState({
|
|
295
254
|
expanded: false
|
|
296
255
|
});
|
|
@@ -329,13 +288,11 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
329
288
|
key: "render",
|
|
330
289
|
value: function render() {
|
|
331
290
|
var _this3 = this;
|
|
332
|
-
|
|
333
291
|
var className = this.props.className;
|
|
334
292
|
var wrappedChildren = React.Children.map(this.props.children, function (child) {
|
|
335
293
|
if (child.type === MenuTriggerType) {
|
|
336
294
|
return _this3.renderTrigger(child);
|
|
337
295
|
}
|
|
338
|
-
|
|
339
296
|
return _this3.renderMenuContent(child);
|
|
340
297
|
});
|
|
341
298
|
var rootClassName = this.state.expanded ? 'menu expanded' : 'menu';
|
|
@@ -348,10 +305,7 @@ var Menu = /*#__PURE__*/function (_React$Component) {
|
|
|
348
305
|
}, this.getAttributesFromProps()), wrappedChildren);
|
|
349
306
|
}
|
|
350
307
|
}]);
|
|
351
|
-
|
|
352
|
-
return Menu;
|
|
353
308
|
}(React.Component);
|
|
354
|
-
|
|
355
309
|
Menu.propTypes = menuPropTypes;
|
|
356
310
|
Menu.defaultProps = {
|
|
357
311
|
tag: 'div',
|