@blaze-cms/plugin-admin-core-ui 0.131.0-admin-updates.0 → 0.131.0-project-admin-customisations.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/CHANGELOG.md +15 -1
- package/README.md +97 -0
- package/lib/components/Layout/Layout.js +6 -3
- package/lib/components/Layout/Layout.js.map +1 -1
- package/lib/components/Layout/components/Grid/Grid.js +10 -88
- package/lib/components/Layout/components/Grid/Grid.js.map +1 -1
- package/lib/components/Menu/Icons/ChevronDown.js +27 -0
- package/lib/components/Menu/Icons/ChevronDown.js.map +1 -0
- package/lib/components/Menu/Icons/ChevronUp.js +27 -0
- package/lib/components/Menu/Icons/ChevronUp.js.map +1 -0
- package/lib/components/Menu/Items/MenuActionItem.js +37 -0
- package/lib/components/Menu/Items/MenuActionItem.js.map +1 -0
- package/lib/components/Menu/Items/MenuItem.js +73 -0
- package/lib/components/Menu/Items/MenuItem.js.map +1 -0
- package/lib/components/Menu/Items/MenuLinkItem.js +36 -0
- package/lib/components/Menu/Items/MenuLinkItem.js.map +1 -0
- package/lib/components/Menu/Menu.js +86 -0
- package/lib/components/Menu/Menu.js.map +1 -0
- package/lib/components/Menu/Section/MenuSection.js +28 -0
- package/lib/components/Menu/Section/MenuSection.js.map +1 -0
- package/lib/components/Menu/Section/MenuSectionCollapsible.js +91 -0
- package/lib/components/Menu/Section/MenuSectionCollapsible.js.map +1 -0
- package/lib/components/Menu/Section/MenuSectionItem.js +40 -0
- package/lib/components/Menu/Section/MenuSectionItem.js.map +1 -0
- package/lib/components/Menu/Section/MenuSectionItems.js +33 -0
- package/lib/components/Menu/Section/MenuSectionItems.js.map +1 -0
- package/lib/components/Menu/index.js +12 -0
- package/lib/components/Menu/index.js.map +1 -0
- package/lib/components/SideBar/SideBar.js +3 -14
- package/lib/components/SideBar/SideBar.js.map +1 -1
- package/lib/constants.js +1 -1
- package/lib/constants.js.map +1 -1
- package/lib/index.js +13 -9
- package/lib/index.js.map +1 -1
- package/lib/utils/menu-handler-singleton.js +114 -0
- package/lib/utils/menu-handler-singleton.js.map +1 -0
- package/lib-es/components/Layout/Layout.js +6 -3
- package/lib-es/components/Layout/Layout.js.map +1 -1
- package/lib-es/components/Layout/components/Grid/Grid.js +14 -54
- package/lib-es/components/Layout/components/Grid/Grid.js.map +1 -1
- package/lib-es/components/Menu/Icons/ChevronDown.js +16 -0
- package/lib-es/components/Menu/Icons/ChevronDown.js.map +1 -0
- package/lib-es/components/Menu/Icons/ChevronUp.js +16 -0
- package/lib-es/components/Menu/Icons/ChevronUp.js.map +1 -0
- package/lib-es/components/Menu/Items/MenuActionItem.js +31 -0
- package/lib-es/components/Menu/Items/MenuActionItem.js.map +1 -0
- package/lib-es/components/Menu/Items/MenuItem.js +64 -0
- package/lib-es/components/Menu/Items/MenuItem.js.map +1 -0
- package/lib-es/components/Menu/Items/MenuLinkItem.js +28 -0
- package/lib-es/components/Menu/Items/MenuLinkItem.js.map +1 -0
- package/lib-es/components/Menu/Menu.js +40 -0
- package/lib-es/components/Menu/Menu.js.map +1 -0
- package/lib-es/components/Menu/Section/MenuSection.js +18 -0
- package/lib-es/components/Menu/Section/MenuSection.js.map +1 -0
- package/lib-es/components/Menu/Section/MenuSectionCollapsible.js +67 -0
- package/lib-es/components/Menu/Section/MenuSectionCollapsible.js.map +1 -0
- package/lib-es/components/Menu/Section/MenuSectionItem.js +30 -0
- package/lib-es/components/Menu/Section/MenuSectionItem.js.map +1 -0
- package/lib-es/components/Menu/Section/MenuSectionItems.js +20 -0
- package/lib-es/components/Menu/Section/MenuSectionItems.js.map +1 -0
- package/lib-es/components/Menu/index.js +3 -0
- package/lib-es/components/Menu/index.js.map +1 -0
- package/lib-es/components/SideBar/SideBar.js +2 -7
- package/lib-es/components/SideBar/SideBar.js.map +1 -1
- package/lib-es/constants.js +1 -1
- package/lib-es/constants.js.map +1 -1
- package/lib-es/index.js +9 -9
- package/lib-es/index.js.map +1 -1
- package/lib-es/utils/menu-handler-singleton.js +55 -0
- package/lib-es/utils/menu-handler-singleton.js.map +1 -0
- package/package.json +9 -8
- package/src/components/Layout/Layout.js +14 -3
- package/src/components/Layout/components/Grid/Grid.js +13 -52
- package/src/components/Menu/Icons/ChevronDown.js +16 -0
- package/src/components/Menu/Icons/ChevronUp.js +16 -0
- package/src/components/Menu/Items/MenuActionItem.js +30 -0
- package/src/components/Menu/Items/MenuItem.js +49 -0
- package/src/components/Menu/Items/MenuLinkItem.js +25 -0
- package/src/components/Menu/Menu.js +48 -0
- package/src/components/Menu/Section/MenuSection.js +16 -0
- package/src/components/Menu/Section/MenuSectionCollapsible.js +59 -0
- package/src/components/Menu/Section/MenuSectionItem.js +28 -0
- package/src/components/Menu/Section/MenuSectionItems.js +17 -0
- package/src/components/Menu/index.js +3 -0
- package/src/components/SideBar/SideBar.js +3 -6
- package/src/constants.js +3 -1
- package/src/index.js +7 -6
- package/src/utils/menu-handler-singleton.js +64 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = exports.MenuHandler = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
require("core-js/modules/es.array.iterator.js");
|
|
11
|
+
require("core-js/modules/es.map.js");
|
|
12
|
+
require("core-js/modules/es.object.to-string.js");
|
|
13
|
+
require("core-js/modules/es.string.iterator.js");
|
|
14
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
15
|
+
require("core-js/modules/es.array.sort.js");
|
|
16
|
+
require("core-js/modules/es.object.entries.js");
|
|
17
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
18
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
20
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
21
|
+
var _lodash = _interopRequireDefault(require("lodash.merge"));
|
|
22
|
+
var instance;
|
|
23
|
+
var MenuHandler = /*#__PURE__*/function () {
|
|
24
|
+
function MenuHandler(app) {
|
|
25
|
+
(0, _classCallCheck2["default"])(this, MenuHandler);
|
|
26
|
+
(0, _defineProperty2["default"])(this, "menuSections", new Map());
|
|
27
|
+
(0, _defineProperty2["default"])(this, "menuConfig", void 0);
|
|
28
|
+
(0, _defineProperty2["default"])(this, "app", void 0);
|
|
29
|
+
if (instance) {
|
|
30
|
+
throw new Error('You can only create one instance!');
|
|
31
|
+
}
|
|
32
|
+
instance = this;
|
|
33
|
+
this.menuConfig = {};
|
|
34
|
+
this.app = null;
|
|
35
|
+
}
|
|
36
|
+
(0, _createClass2["default"])(MenuHandler, [{
|
|
37
|
+
key: "setApp",
|
|
38
|
+
value: function setApp(app) {
|
|
39
|
+
this.app = app;
|
|
40
|
+
}
|
|
41
|
+
}, {
|
|
42
|
+
key: "app",
|
|
43
|
+
get: function get() {
|
|
44
|
+
return this.app;
|
|
45
|
+
}
|
|
46
|
+
}, {
|
|
47
|
+
key: "menuConfig",
|
|
48
|
+
get: function get() {
|
|
49
|
+
return this.menuConfig;
|
|
50
|
+
}
|
|
51
|
+
}, {
|
|
52
|
+
key: "addConfig",
|
|
53
|
+
value: function addConfig(newConfig) {
|
|
54
|
+
this.menuConfig = (0, _lodash["default"])(this.menuConfig, newConfig);
|
|
55
|
+
}
|
|
56
|
+
}, {
|
|
57
|
+
key: "loadConfig",
|
|
58
|
+
value: function () {
|
|
59
|
+
var _loadConfig = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
60
|
+
var _this = this;
|
|
61
|
+
var addConfig, menuConfig;
|
|
62
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
63
|
+
while (1) switch (_context.prev = _context.next) {
|
|
64
|
+
case 0:
|
|
65
|
+
addConfig = function addConfig(newConfig) {
|
|
66
|
+
_this.addConfig(newConfig);
|
|
67
|
+
};
|
|
68
|
+
menuConfig = this.menuConfig;
|
|
69
|
+
if (!(this.app && this.app.events)) {
|
|
70
|
+
_context.next = 7;
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
_context.next = 5;
|
|
74
|
+
return this.app.events.emitAsync('admin:menu:config:load', {
|
|
75
|
+
addConfig: addConfig
|
|
76
|
+
});
|
|
77
|
+
case 5:
|
|
78
|
+
_context.next = 7;
|
|
79
|
+
return this.app.events.emitAsync('admin:menu:config:load:after', {
|
|
80
|
+
addConfig: addConfig,
|
|
81
|
+
menuConfig: menuConfig
|
|
82
|
+
});
|
|
83
|
+
case 7:
|
|
84
|
+
case "end":
|
|
85
|
+
return _context.stop();
|
|
86
|
+
}
|
|
87
|
+
}, _callee, this);
|
|
88
|
+
}));
|
|
89
|
+
function loadConfig() {
|
|
90
|
+
return _loadConfig.apply(this, arguments);
|
|
91
|
+
}
|
|
92
|
+
return loadConfig;
|
|
93
|
+
}()
|
|
94
|
+
}, {
|
|
95
|
+
key: "getInstance",
|
|
96
|
+
value: function getInstance() {
|
|
97
|
+
return this;
|
|
98
|
+
}
|
|
99
|
+
}, {
|
|
100
|
+
key: "getAll",
|
|
101
|
+
value: function getAll() {
|
|
102
|
+
var sortedByOrder = Object.entries(this.menuConfig).sort(function (a, b) {
|
|
103
|
+
return a.order > b.order ? 1 : -1;
|
|
104
|
+
});
|
|
105
|
+
return sortedByOrder;
|
|
106
|
+
}
|
|
107
|
+
}]);
|
|
108
|
+
return MenuHandler;
|
|
109
|
+
}();
|
|
110
|
+
exports.MenuHandler = MenuHandler;
|
|
111
|
+
var menuHandler = new MenuHandler();
|
|
112
|
+
var _default = menuHandler;
|
|
113
|
+
exports["default"] = _default;
|
|
114
|
+
//# sourceMappingURL=menu-handler-singleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-handler-singleton.js","names":["_lodash","_interopRequireDefault","require","instance","MenuHandler","app","_classCallCheck2","_defineProperty2","Map","Error","menuConfig","_createClass2","key","value","setApp","get","addConfig","newConfig","merge","_loadConfig","_asyncToGenerator2","_regenerator","mark","_callee","_this","wrap","_callee$","_context","prev","next","events","emitAsync","stop","loadConfig","apply","arguments","getInstance","getAll","sortedByOrder","Object","entries","sort","a","b","order","exports","menuHandler","_default"],"sources":["../../src/utils/menu-handler-singleton.js"],"sourcesContent":["import merge from 'lodash.merge';\n\nlet instance;\n\nexport class MenuHandler {\n menuSections = new Map();\n\n menuConfig;\n\n app;\n\n constructor(app) {\n if (instance) {\n throw new Error('You can only create one instance!');\n }\n instance = this;\n this.menuConfig = {};\n this.app = null;\n }\n\n setApp(app) {\n this.app = app;\n }\n\n get app() {\n return this.app;\n }\n\n get menuConfig() {\n return this.menuConfig;\n }\n\n addConfig(newConfig) {\n this.menuConfig = merge(this.menuConfig, newConfig);\n }\n\n async loadConfig() {\n const addConfig = newConfig => {\n this.addConfig(newConfig);\n };\n\n const { menuConfig } = this;\n\n if (this.app && this.app.events) {\n await this.app.events.emitAsync('admin:menu:config:load', { addConfig });\n await this.app.events.emitAsync('admin:menu:config:load:after', { addConfig, menuConfig });\n }\n }\n\n getInstance() {\n return this;\n }\n\n getAll() {\n const sortedByOrder = Object.entries(this.menuConfig).sort(\n (a, b) => (a.order > b.order ? 1 : -1)\n );\n\n return sortedByOrder;\n }\n}\n\nconst menuHandler = new MenuHandler();\nexport default menuHandler;\n"],"mappings":"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"}
|
|
@@ -12,8 +12,10 @@ const Layout = ({
|
|
|
12
12
|
}) => {
|
|
13
13
|
const [isOpenMenu, setOpenMenu] = useState(true);
|
|
14
14
|
const onMenuClick = () => setOpenMenu(!isOpenMenu);
|
|
15
|
+
const simpleLayout = window.location !== window.parent.location;
|
|
16
|
+
const wrapperClass = simpleLayout ? ' grid--site-container--simle-layout' : '';
|
|
15
17
|
return /*#__PURE__*/React.createElement("div", {
|
|
16
|
-
className:
|
|
18
|
+
className: `site-container grid--site-container${wrapperClass}`
|
|
17
19
|
}, /*#__PURE__*/React.createElement(Query, {
|
|
18
20
|
query: getQuery('GET_USER_AUTH_DATA'),
|
|
19
21
|
errorPolicy: "all"
|
|
@@ -26,14 +28,15 @@ const Layout = ({
|
|
|
26
28
|
userData = {}
|
|
27
29
|
} = {}
|
|
28
30
|
} = data;
|
|
29
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
|
|
31
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, !simpleLayout && /*#__PURE__*/React.createElement(Header, {
|
|
30
32
|
isLoggedIn: isLoggedIn,
|
|
31
33
|
onMenuClick: onMenuClick,
|
|
32
34
|
isOpenMenu: isOpenMenu
|
|
33
35
|
}), isLoggedIn ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Grid, {
|
|
34
36
|
isOpenMenu: isOpenMenu,
|
|
35
37
|
onMenuClick: onMenuClick,
|
|
36
|
-
userData: userData
|
|
38
|
+
userData: userData,
|
|
39
|
+
simpleLayout: simpleLayout
|
|
37
40
|
}, children)) : /*#__PURE__*/React.createElement(Background, null, /*#__PURE__*/React.createElement(Login, null)));
|
|
38
41
|
}));
|
|
39
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layout.js","names":["React","useState","PropTypes","Query","getQuery","Login","Grid","Background","Header","Layout","children","isOpenMenu","setOpenMenu","onMenuClick","createElement","className","query","errorPolicy","data","session","isLoggedIn","userData","Fragment","propTypes","oneOfType","arrayOf","node","isRequired"],"sources":["../../../src/components/Layout/Layout.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Query } from '@apollo/client/react/components';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { Login } from '@blaze-cms/plugin-auth-ui';\nimport { Grid } from './components';\nimport Background from './Background';\nimport '@blaze-cms/admin-ui-styles/main.scss';\nimport Header from '../Header';\n\nconst Layout = ({ children }) => {\n const [isOpenMenu, setOpenMenu] = useState(true);\n const onMenuClick = () => setOpenMenu(!isOpenMenu);\n return (\n <div className
|
|
1
|
+
{"version":3,"file":"Layout.js","names":["React","useState","PropTypes","Query","getQuery","Login","Grid","Background","Header","Layout","children","isOpenMenu","setOpenMenu","onMenuClick","simpleLayout","window","location","parent","wrapperClass","createElement","className","query","errorPolicy","data","session","isLoggedIn","userData","Fragment","propTypes","oneOfType","arrayOf","node","isRequired"],"sources":["../../../src/components/Layout/Layout.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Query } from '@apollo/client/react/components';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { Login } from '@blaze-cms/plugin-auth-ui';\nimport { Grid } from './components';\nimport Background from './Background';\nimport '@blaze-cms/admin-ui-styles/main.scss';\nimport Header from '../Header';\n\nconst Layout = ({ children }) => {\n const [isOpenMenu, setOpenMenu] = useState(true);\n const onMenuClick = () => setOpenMenu(!isOpenMenu);\n\n const simpleLayout = window.location !== window.parent.location;\n\n const wrapperClass = simpleLayout ? ' grid--site-container--simle-layout' : '';\n\n return (\n <div className={`site-container grid--site-container${wrapperClass}`}>\n <Query query={getQuery('GET_USER_AUTH_DATA')} errorPolicy=\"all\">\n {({ data = {} }) => {\n const { session: { isLoggedIn, userData = {} } = {} } = data;\n\n return (\n <>\n {!simpleLayout && (\n <Header isLoggedIn={isLoggedIn} onMenuClick={onMenuClick} isOpenMenu={isOpenMenu} />\n )}\n {isLoggedIn ? (\n <>\n <Grid\n isOpenMenu={isOpenMenu}\n onMenuClick={onMenuClick}\n userData={userData}\n simpleLayout={simpleLayout}>\n {children}\n </Grid>\n </>\n ) : (\n <Background>\n <Login />\n </Background>\n )}\n </>\n );\n }}\n </Query>\n </div>\n );\n};\n\nLayout.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport default Layout;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,KAAK,QAAQ,iCAAiC;AACvD,SAASC,QAAQ,QAAQ,2BAA2B;AACpD,SAASC,KAAK,QAAQ,2BAA2B;AACjD,SAASC,IAAI,QAAQ,cAAc;AACnC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAO,sCAAsC;AAC7C,OAAOC,MAAM,MAAM,WAAW;AAE9B,MAAMC,MAAM,GAAGA,CAAC;EAAEC;AAAS,CAAC,KAAK;EAC/B,MAAM,CAACC,UAAU,EAAEC,WAAW,CAAC,GAAGX,QAAQ,CAAC,IAAI,CAAC;EAChD,MAAMY,WAAW,GAAGA,CAAA,KAAMD,WAAW,CAAC,CAACD,UAAU,CAAC;EAElD,MAAMG,YAAY,GAAGC,MAAM,CAACC,QAAQ,KAAKD,MAAM,CAACE,MAAM,CAACD,QAAQ;EAE/D,MAAME,YAAY,GAAGJ,YAAY,GAAG,qCAAqC,GAAG,EAAE;EAE9E,oBACEd,KAAA,CAAAmB,aAAA;IAAKC,SAAS,EAAG,sCAAqCF,YAAa;EAAE,gBACnElB,KAAA,CAAAmB,aAAA,CAAChB,KAAK;IAACkB,KAAK,EAAEjB,QAAQ,CAAC,oBAAoB,CAAE;IAACkB,WAAW,EAAC;EAAK,GAC5D,CAAC;IAAEC,IAAI,GAAG,CAAC;EAAE,CAAC,KAAK;IAClB,MAAM;MAAEC,OAAO,EAAE;QAAEC,UAAU;QAAEC,QAAQ,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,CAAC,GAAGH,IAAI;IAE5D,oBACEvB,KAAA,CAAAmB,aAAA,CAAAnB,KAAA,CAAA2B,QAAA,QACG,CAACb,YAAY,iBACZd,KAAA,CAAAmB,aAAA,CAACX,MAAM;MAACiB,UAAU,EAAEA,UAAW;MAACZ,WAAW,EAAEA,WAAY;MAACF,UAAU,EAAEA;IAAW,CAAE,CACpF,EACAc,UAAU,gBACTzB,KAAA,CAAAmB,aAAA,CAAAnB,KAAA,CAAA2B,QAAA,qBACE3B,KAAA,CAAAmB,aAAA,CAACb,IAAI;MACHK,UAAU,EAAEA,UAAW;MACvBE,WAAW,EAAEA,WAAY;MACzBa,QAAQ,EAAEA,QAAS;MACnBZ,YAAY,EAAEA;IAAa,GAC1BJ,QACG,CACN,CAAC,gBAEHV,KAAA,CAAAmB,aAAA,CAACZ,UAAU,qBACTP,KAAA,CAAAmB,aAAA,CAACd,KAAK,MAAE,CACE,CAEd,CAAC;EAEP,CACK,CACJ,CAAC;AAEV,CAAC;AAEDI,MAAM,CAACmB,SAAS,GAAG;EACjBlB,QAAQ,EAAER,SAAS,CAAC2B,SAAS,CAAC,CAAC3B,SAAS,CAAC4B,OAAO,CAAC5B,SAAS,CAAC6B,IAAI,CAAC,EAAE7B,SAAS,CAAC6B,IAAI,CAAC,CAAC,CAACC;AACrF,CAAC;AAED,eAAevB,MAAM"}
|
|
@@ -1,69 +1,29 @@
|
|
|
1
|
-
import
|
|
2
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
3
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
import React, { useState, useEffect } from 'react';
|
|
1
|
+
import React from 'react';
|
|
5
2
|
import PropTypes from 'prop-types';
|
|
6
|
-
import { useApolloClient } from '@apollo/client';
|
|
7
|
-
import { getQuery, MainContextProvider } from '@blaze-cms/admin-ui-utils';
|
|
8
3
|
import SideBar from '../../../SideBar';
|
|
9
4
|
const Grid = ({
|
|
10
5
|
children,
|
|
11
6
|
isOpenMenu,
|
|
12
7
|
onMenuClick,
|
|
13
|
-
userData
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
} = await client.query({
|
|
24
|
-
query: getQuery('GET_MENU_ITEMS')
|
|
25
|
-
});
|
|
26
|
-
const parsedMenuItems = getMenuItems.map(([key, {
|
|
27
|
-
header,
|
|
28
|
-
items
|
|
29
|
-
}]) => [key, {
|
|
30
|
-
header,
|
|
31
|
-
items: items.map(item => _objectSpread(_objectSpread({}, item), {}, {
|
|
32
|
-
isDisplayedPrompt: true
|
|
33
|
-
}))
|
|
34
|
-
}]);
|
|
35
|
-
if (!menuItems) {
|
|
36
|
-
setMenuItems(parsedMenuItems);
|
|
37
|
-
}
|
|
38
|
-
})();
|
|
39
|
-
}, [client, menuItems]);
|
|
40
|
-
const updateItems = items => {
|
|
41
|
-
setMenuItems(items);
|
|
42
|
-
};
|
|
43
|
-
return menuItems ? /*#__PURE__*/React.createElement(MainContextProvider, {
|
|
44
|
-
value: {
|
|
45
|
-
menuItems,
|
|
46
|
-
setMenuItems: items => updateItems(items)
|
|
47
|
-
}
|
|
48
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
49
|
-
className: "main-content grid grid--main-content"
|
|
50
|
-
}, /*#__PURE__*/React.createElement(SideBar, {
|
|
51
|
-
isOpenMenu: isOpenMenu,
|
|
52
|
-
menuItems: menuItems,
|
|
53
|
-
onMenuClick: onMenuClick,
|
|
54
|
-
userData: userData
|
|
55
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
56
|
-
className: "grid--main-content-wrapper"
|
|
57
|
-
}, children))) : 'loading';
|
|
58
|
-
};
|
|
8
|
+
userData,
|
|
9
|
+
simpleLayout
|
|
10
|
+
}) => /*#__PURE__*/React.createElement("div", {
|
|
11
|
+
className: "main-content grid grid--main-content"
|
|
12
|
+
}, !simpleLayout && /*#__PURE__*/React.createElement(SideBar, {
|
|
13
|
+
isOpenMenu: isOpenMenu,
|
|
14
|
+
onMenuClick: onMenuClick,
|
|
15
|
+
userData: userData
|
|
16
|
+
}), children);
|
|
59
17
|
Grid.propTypes = {
|
|
60
18
|
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
|
|
61
19
|
isOpenMenu: PropTypes.bool.isRequired,
|
|
62
20
|
onMenuClick: PropTypes.func.isRequired,
|
|
63
|
-
userData: PropTypes.object
|
|
21
|
+
userData: PropTypes.object,
|
|
22
|
+
simpleLayout: PropTypes.bool
|
|
64
23
|
};
|
|
65
24
|
Grid.defaultProps = {
|
|
66
|
-
userData: {}
|
|
25
|
+
userData: {},
|
|
26
|
+
simpleLayout: false
|
|
67
27
|
};
|
|
68
28
|
export default Grid;
|
|
69
29
|
//# sourceMappingURL=Grid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Grid.js","names":["React","
|
|
1
|
+
{"version":3,"file":"Grid.js","names":["React","PropTypes","SideBar","Grid","children","isOpenMenu","onMenuClick","userData","simpleLayout","createElement","className","propTypes","oneOfType","arrayOf","node","isRequired","bool","func","object","defaultProps"],"sources":["../../../../../src/components/Layout/components/Grid/Grid.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport SideBar from '../../../SideBar';\n\nconst Grid = ({ children, isOpenMenu, onMenuClick, userData, simpleLayout }) => (\n <div className=\"main-content grid grid--main-content\">\n {!simpleLayout && (\n <SideBar isOpenMenu={isOpenMenu} onMenuClick={onMenuClick} userData={userData} />\n )}\n {children}\n </div>\n);\n\nGrid.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n isOpenMenu: PropTypes.bool.isRequired,\n onMenuClick: PropTypes.func.isRequired,\n userData: PropTypes.object,\n simpleLayout: PropTypes.bool\n};\n\nGrid.defaultProps = {\n userData: {},\n simpleLayout: false\n};\n\nexport default Grid;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,OAAO,MAAM,kBAAkB;AAEtC,MAAMC,IAAI,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,UAAU;EAAEC,WAAW;EAAEC,QAAQ;EAAEC;AAAa,CAAC,kBACzER,KAAA,CAAAS,aAAA;EAAKC,SAAS,EAAC;AAAsC,GAClD,CAACF,YAAY,iBACZR,KAAA,CAAAS,aAAA,CAACP,OAAO;EAACG,UAAU,EAAEA,UAAW;EAACC,WAAW,EAAEA,WAAY;EAACC,QAAQ,EAAEA;AAAS,CAAE,CACjF,EACAH,QACE,CACN;AAEDD,IAAI,CAACQ,SAAS,GAAG;EACfP,QAAQ,EAAEH,SAAS,CAACW,SAAS,CAAC,CAACX,SAAS,CAACY,OAAO,CAACZ,SAAS,CAACa,IAAI,CAAC,EAAEb,SAAS,CAACa,IAAI,CAAC,CAAC,CAACC,UAAU;EAC7FV,UAAU,EAAEJ,SAAS,CAACe,IAAI,CAACD,UAAU;EACrCT,WAAW,EAAEL,SAAS,CAACgB,IAAI,CAACF,UAAU;EACtCR,QAAQ,EAAEN,SAAS,CAACiB,MAAM;EAC1BV,YAAY,EAAEP,SAAS,CAACe;AAC1B,CAAC;AAEDb,IAAI,CAACgB,YAAY,GAAG;EAClBZ,QAAQ,EAAE,CAAC,CAAC;EACZC,YAAY,EAAE;AAChB,CAAC;AAED,eAAeL,IAAI"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
const ChevronDown = () => /*#__PURE__*/React.createElement("svg", {
|
|
3
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
4
|
+
fill: "none",
|
|
5
|
+
viewBox: "0 0 24 24",
|
|
6
|
+
strokeWidth: 1.5,
|
|
7
|
+
width: "20",
|
|
8
|
+
height: "20",
|
|
9
|
+
stroke: "currentColor"
|
|
10
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
11
|
+
strokeLinecap: "round",
|
|
12
|
+
strokeLinejoin: "round",
|
|
13
|
+
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
14
|
+
}));
|
|
15
|
+
export default ChevronDown;
|
|
16
|
+
//# sourceMappingURL=ChevronDown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChevronDown.js","names":["React","ChevronDown","createElement","xmlns","fill","viewBox","strokeWidth","width","height","stroke","strokeLinecap","strokeLinejoin","d"],"sources":["../../../../src/components/Menu/Icons/ChevronDown.js"],"sourcesContent":["import React from 'react';\n\nconst ChevronDown = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n strokeWidth={1.5}\n width=\"20\"\n height=\"20\"\n stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M19.5 8.25l-7.5 7.5-7.5-7.5\" />\n </svg>\n);\n\nexport default ChevronDown;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAMC,WAAW,GAAGA,CAAA,kBAClBD,KAAA,CAAAE,aAAA;EACEC,KAAK,EAAC,4BAA4B;EAClCC,IAAI,EAAC,MAAM;EACXC,OAAO,EAAC,WAAW;EACnBC,WAAW,EAAE,GAAI;EACjBC,KAAK,EAAC,IAAI;EACVC,MAAM,EAAC,IAAI;EACXC,MAAM,EAAC;AAAc,gBACrBT,KAAA,CAAAE,aAAA;EAAMQ,aAAa,EAAC,OAAO;EAACC,cAAc,EAAC,OAAO;EAACC,CAAC,EAAC;AAA6B,CAAE,CACjF,CACN;AAED,eAAeX,WAAW"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
const ChevronUp = () => /*#__PURE__*/React.createElement("svg", {
|
|
3
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
4
|
+
fill: "none",
|
|
5
|
+
viewBox: "0 0 22 22",
|
|
6
|
+
strokeWidth: 1.5,
|
|
7
|
+
width: "20",
|
|
8
|
+
height: "20",
|
|
9
|
+
stroke: "currentColor"
|
|
10
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
11
|
+
strokeLinecap: "round",
|
|
12
|
+
strokeLinejoin: "round",
|
|
13
|
+
d: "M4.5 15.75l7.5-7.5 7.5 7.5"
|
|
14
|
+
}));
|
|
15
|
+
export default ChevronUp;
|
|
16
|
+
//# sourceMappingURL=ChevronUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChevronUp.js","names":["React","ChevronUp","createElement","xmlns","fill","viewBox","strokeWidth","width","height","stroke","strokeLinecap","strokeLinejoin","d"],"sources":["../../../../src/components/Menu/Icons/ChevronUp.js"],"sourcesContent":["import React from 'react';\n\nconst ChevronUp = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 22 22\"\n strokeWidth={1.5}\n width=\"20\"\n height=\"20\"\n stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M4.5 15.75l7.5-7.5 7.5 7.5\" />\n </svg>\n);\n\nexport default ChevronUp;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAMC,SAAS,GAAGA,CAAA,kBAChBD,KAAA,CAAAE,aAAA;EACEC,KAAK,EAAC,4BAA4B;EAClCC,IAAI,EAAC,MAAM;EACXC,OAAO,EAAC,WAAW;EACnBC,WAAW,EAAE,GAAI;EACjBC,KAAK,EAAC,IAAI;EACVC,MAAM,EAAC,IAAI;EACXC,MAAM,EAAC;AAAc,gBACrBT,KAAA,CAAAE,aAAA;EAAMQ,aAAa,EAAC,OAAO;EAACC,cAAc,EAAC,OAAO;EAACC,CAAC,EAAC;AAA4B,CAAE,CAChF,CACN;AAED,eAAeX,SAAS"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Link } from 'react-router-dom';
|
|
3
|
+
const MenuActionItem = ({
|
|
4
|
+
item
|
|
5
|
+
}) => {
|
|
6
|
+
const {
|
|
7
|
+
label,
|
|
8
|
+
icon: MenuSectionIcon,
|
|
9
|
+
onClick,
|
|
10
|
+
uri
|
|
11
|
+
} = item;
|
|
12
|
+
const modifier = MenuSectionIcon ? '' : 'side-nav__list-link--noIcon';
|
|
13
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
14
|
+
className: "side-nav__list--item",
|
|
15
|
+
key: item.label
|
|
16
|
+
}, /*#__PURE__*/React.createElement(Link, {
|
|
17
|
+
to: uri,
|
|
18
|
+
className: `side-nav__list-link ${modifier}`,
|
|
19
|
+
onClick: () => {
|
|
20
|
+
if (onClick) {
|
|
21
|
+
onClick();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}, MenuSectionIcon && /*#__PURE__*/React.createElement("div", {
|
|
25
|
+
className: "side-nav__list-link--icon"
|
|
26
|
+
}, /*#__PURE__*/React.createElement(MenuSectionIcon, null)), /*#__PURE__*/React.createElement("div", {
|
|
27
|
+
className: "side-nav__list-label"
|
|
28
|
+
}, label)));
|
|
29
|
+
};
|
|
30
|
+
export default MenuActionItem;
|
|
31
|
+
//# sourceMappingURL=MenuActionItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuActionItem.js","names":["React","Link","MenuActionItem","item","label","icon","MenuSectionIcon","onClick","uri","modifier","createElement","className","key","to"],"sources":["../../../../src/components/Menu/Items/MenuActionItem.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\n\nconst MenuActionItem = ({ item }) => {\n const { label, icon: MenuSectionIcon, onClick, uri } = item;\n\n const modifier = MenuSectionIcon ? '' : 'side-nav__list-link--noIcon';\n\n return (\n <li className=\"side-nav__list--item\" key={item.label}>\n <Link\n to={uri}\n className={`side-nav__list-link ${modifier}`}\n onClick={() => {\n if (onClick) {\n onClick();\n }\n }}>\n {MenuSectionIcon && (\n <div className=\"side-nav__list-link--icon\">\n <MenuSectionIcon />\n </div>\n )}\n <div className=\"side-nav__list-label\">{label}</div>\n </Link>\n </li>\n );\n};\n\nexport default MenuActionItem;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AAEvC,MAAMC,cAAc,GAAGA,CAAC;EAAEC;AAAK,CAAC,KAAK;EACnC,MAAM;IAAEC,KAAK;IAAEC,IAAI,EAAEC,eAAe;IAAEC,OAAO;IAAEC;EAAI,CAAC,GAAGL,IAAI;EAE3D,MAAMM,QAAQ,GAAGH,eAAe,GAAG,EAAE,GAAG,6BAA6B;EAErE,oBACEN,KAAA,CAAAU,aAAA;IAAIC,SAAS,EAAC,sBAAsB;IAACC,GAAG,EAAET,IAAI,CAACC;EAAM,gBACnDJ,KAAA,CAAAU,aAAA,CAACT,IAAI;IACHY,EAAE,EAAEL,GAAI;IACRG,SAAS,EAAG,uBAAsBF,QAAS,EAAE;IAC7CF,OAAO,EAAEA,CAAA,KAAM;MACb,IAAIA,OAAO,EAAE;QACXA,OAAO,CAAC,CAAC;MACX;IACF;EAAE,GACDD,eAAe,iBACdN,KAAA,CAAAU,aAAA;IAAKC,SAAS,EAAC;EAA2B,gBACxCX,KAAA,CAAAU,aAAA,CAACJ,eAAe,MAAE,CACf,CACN,eACDN,KAAA,CAAAU,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEP,KAAW,CAC9C,CACJ,CAAC;AAET,CAAC;AAED,eAAeF,cAAc"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useLocation } from 'react-router-dom';
|
|
3
|
+
import MenuLinkItem from './MenuLinkItem';
|
|
4
|
+
const MenuItem = ({
|
|
5
|
+
item,
|
|
6
|
+
RenderItems
|
|
7
|
+
}) => {
|
|
8
|
+
const location = useLocation();
|
|
9
|
+
const {
|
|
10
|
+
label,
|
|
11
|
+
items,
|
|
12
|
+
uri
|
|
13
|
+
} = item;
|
|
14
|
+
if (label && uri) {
|
|
15
|
+
const isActive = location.pathname === uri;
|
|
16
|
+
return /*#__PURE__*/React.createElement(MenuLinkItem, {
|
|
17
|
+
item: item,
|
|
18
|
+
isActive: isActive,
|
|
19
|
+
root: true
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (label && items && Object.values(items).length > 0) {
|
|
23
|
+
const childrenMenu = Object.keys(items).map(key => items[key]);
|
|
24
|
+
const childrenComponents = childrenMenu.map(child => {
|
|
25
|
+
const {
|
|
26
|
+
label: childLabel,
|
|
27
|
+
uri: childUri
|
|
28
|
+
} = child;
|
|
29
|
+
const isActive = location.pathname === childUri;
|
|
30
|
+
if (childLabel && childUri) {
|
|
31
|
+
return /*#__PURE__*/React.createElement(MenuLinkItem, {
|
|
32
|
+
item: child,
|
|
33
|
+
isActive: isActive,
|
|
34
|
+
root: false
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
});
|
|
39
|
+
return /*#__PURE__*/React.createElement(RenderItems, {
|
|
40
|
+
item: item
|
|
41
|
+
}, childrenComponents);
|
|
42
|
+
}
|
|
43
|
+
if (!label && items) {
|
|
44
|
+
const childrenMenu = Object.keys(items).map(key => items[key]);
|
|
45
|
+
return childrenMenu.map(child => {
|
|
46
|
+
const {
|
|
47
|
+
label: childLabel,
|
|
48
|
+
uri: childUri
|
|
49
|
+
} = child;
|
|
50
|
+
const isActive = location.pathname === childUri;
|
|
51
|
+
if (childLabel && childUri) {
|
|
52
|
+
return /*#__PURE__*/React.createElement(MenuLinkItem, {
|
|
53
|
+
item: child,
|
|
54
|
+
isActive: isActive,
|
|
55
|
+
root: true
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
};
|
|
63
|
+
export default MenuItem;
|
|
64
|
+
//# sourceMappingURL=MenuItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuItem.js","names":["React","useLocation","MenuLinkItem","MenuItem","item","RenderItems","location","label","items","uri","isActive","pathname","createElement","root","Object","values","length","childrenMenu","keys","map","key","childrenComponents","child","childLabel","childUri"],"sources":["../../../../src/components/Menu/Items/MenuItem.js"],"sourcesContent":["import React from 'react';\nimport { useLocation } from 'react-router-dom';\nimport MenuLinkItem from './MenuLinkItem';\n\nconst MenuItem = ({ item, RenderItems }) => {\n const location = useLocation();\n const { label, items, uri } = item;\n\n if (label && uri) {\n const isActive = location.pathname === uri;\n return <MenuLinkItem item={item} isActive={isActive} root />;\n }\n\n if (label && items && Object.values(items).length > 0) {\n const childrenMenu = Object.keys(items).map(key => items[key]);\n\n const childrenComponents = childrenMenu.map(child => {\n const { label: childLabel, uri: childUri } = child;\n const isActive = location.pathname === childUri;\n\n if (childLabel && childUri) {\n return <MenuLinkItem item={child} isActive={isActive} root={false} />;\n }\n\n return null;\n });\n\n return <RenderItems item={item}>{childrenComponents}</RenderItems>;\n }\n\n if (!label && items) {\n const childrenMenu = Object.keys(items).map(key => items[key]);\n\n return childrenMenu.map(child => {\n const { label: childLabel, uri: childUri } = child;\n const isActive = location.pathname === childUri;\n\n if (childLabel && childUri) {\n return <MenuLinkItem item={child} isActive={isActive} root />;\n }\n\n return null;\n });\n }\n\n return null;\n};\n\nexport default MenuItem;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,OAAOC,YAAY,MAAM,gBAAgB;AAEzC,MAAMC,QAAQ,GAAGA,CAAC;EAAEC,IAAI;EAAEC;AAAY,CAAC,KAAK;EAC1C,MAAMC,QAAQ,GAAGL,WAAW,CAAC,CAAC;EAC9B,MAAM;IAAEM,KAAK;IAAEC,KAAK;IAAEC;EAAI,CAAC,GAAGL,IAAI;EAElC,IAAIG,KAAK,IAAIE,GAAG,EAAE;IAChB,MAAMC,QAAQ,GAAGJ,QAAQ,CAACK,QAAQ,KAAKF,GAAG;IAC1C,oBAAOT,KAAA,CAAAY,aAAA,CAACV,YAAY;MAACE,IAAI,EAAEA,IAAK;MAACM,QAAQ,EAAEA,QAAS;MAACG,IAAI;IAAA,CAAE,CAAC;EAC9D;EAEA,IAAIN,KAAK,IAAIC,KAAK,IAAIM,MAAM,CAACC,MAAM,CAACP,KAAK,CAAC,CAACQ,MAAM,GAAG,CAAC,EAAE;IACrD,MAAMC,YAAY,GAAGH,MAAM,CAACI,IAAI,CAACV,KAAK,CAAC,CAACW,GAAG,CAACC,GAAG,IAAIZ,KAAK,CAACY,GAAG,CAAC,CAAC;IAE9D,MAAMC,kBAAkB,GAAGJ,YAAY,CAACE,GAAG,CAACG,KAAK,IAAI;MACnD,MAAM;QAAEf,KAAK,EAAEgB,UAAU;QAAEd,GAAG,EAAEe;MAAS,CAAC,GAAGF,KAAK;MAClD,MAAMZ,QAAQ,GAAGJ,QAAQ,CAACK,QAAQ,KAAKa,QAAQ;MAE/C,IAAID,UAAU,IAAIC,QAAQ,EAAE;QAC1B,oBAAOxB,KAAA,CAAAY,aAAA,CAACV,YAAY;UAACE,IAAI,EAAEkB,KAAM;UAACZ,QAAQ,EAAEA,QAAS;UAACG,IAAI,EAAE;QAAM,CAAE,CAAC;MACvE;MAEA,OAAO,IAAI;IACb,CAAC,CAAC;IAEF,oBAAOb,KAAA,CAAAY,aAAA,CAACP,WAAW;MAACD,IAAI,EAAEA;IAAK,GAAEiB,kBAAgC,CAAC;EACpE;EAEA,IAAI,CAACd,KAAK,IAAIC,KAAK,EAAE;IACnB,MAAMS,YAAY,GAAGH,MAAM,CAACI,IAAI,CAACV,KAAK,CAAC,CAACW,GAAG,CAACC,GAAG,IAAIZ,KAAK,CAACY,GAAG,CAAC,CAAC;IAE9D,OAAOH,YAAY,CAACE,GAAG,CAACG,KAAK,IAAI;MAC/B,MAAM;QAAEf,KAAK,EAAEgB,UAAU;QAAEd,GAAG,EAAEe;MAAS,CAAC,GAAGF,KAAK;MAClD,MAAMZ,QAAQ,GAAGJ,QAAQ,CAACK,QAAQ,KAAKa,QAAQ;MAE/C,IAAID,UAAU,IAAIC,QAAQ,EAAE;QAC1B,oBAAOxB,KAAA,CAAAY,aAAA,CAACV,YAAY;UAACE,IAAI,EAAEkB,KAAM;UAACZ,QAAQ,EAAEA,QAAS;UAACG,IAAI;QAAA,CAAE,CAAC;MAC/D;MAEA,OAAO,IAAI;IACb,CAAC,CAAC;EACJ;EAEA,OAAO,IAAI;AACb,CAAC;AAED,eAAeV,QAAQ"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Link } from 'react-router-dom';
|
|
3
|
+
const MenuLinkItem = ({
|
|
4
|
+
item,
|
|
5
|
+
isActive,
|
|
6
|
+
root = true
|
|
7
|
+
}) => {
|
|
8
|
+
const {
|
|
9
|
+
label,
|
|
10
|
+
icon: MenuSectionIcon,
|
|
11
|
+
uri
|
|
12
|
+
} = item;
|
|
13
|
+
const modifier = MenuSectionIcon ? '' : 'side-nav__list-link--noIcon';
|
|
14
|
+
const activeModifier = isActive ? 'side-nav__list-link--active' : '';
|
|
15
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
16
|
+
className: "side-nav__list--item",
|
|
17
|
+
key: item.label
|
|
18
|
+
}, /*#__PURE__*/React.createElement(Link, {
|
|
19
|
+
to: uri,
|
|
20
|
+
className: `side-nav__list-link ${modifier} ${activeModifier}`
|
|
21
|
+
}, MenuSectionIcon && /*#__PURE__*/React.createElement("div", {
|
|
22
|
+
className: "side-nav__list-link--icon"
|
|
23
|
+
}, /*#__PURE__*/React.createElement(MenuSectionIcon, null)), /*#__PURE__*/React.createElement("div", {
|
|
24
|
+
className: "side-nav__list-link--label"
|
|
25
|
+
}, label)));
|
|
26
|
+
};
|
|
27
|
+
export default MenuLinkItem;
|
|
28
|
+
//# sourceMappingURL=MenuLinkItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuLinkItem.js","names":["React","Link","MenuLinkItem","item","isActive","root","label","icon","MenuSectionIcon","uri","modifier","activeModifier","createElement","className","key","to"],"sources":["../../../../src/components/Menu/Items/MenuLinkItem.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\n\nconst MenuLinkItem = ({ item, isActive, root = true }) => {\n const { label, icon: MenuSectionIcon, uri } = item;\n\n const modifier = MenuSectionIcon ? '' : 'side-nav__list-link--noIcon';\n\n const activeModifier = isActive ? 'side-nav__list-link--active' : '';\n\n return (\n <li className=\"side-nav__list--item\" key={item.label}>\n <Link to={uri} className={`side-nav__list-link ${modifier} ${activeModifier}`}>\n {MenuSectionIcon && (\n <div className=\"side-nav__list-link--icon\">\n <MenuSectionIcon />\n </div>\n )}\n <div className=\"side-nav__list-link--label\">{label}</div>\n </Link>\n </li>\n );\n};\n\nexport default MenuLinkItem;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AAEvC,MAAMC,YAAY,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,IAAI,GAAG;AAAK,CAAC,KAAK;EACxD,MAAM;IAAEC,KAAK;IAAEC,IAAI,EAAEC,eAAe;IAAEC;EAAI,CAAC,GAAGN,IAAI;EAElD,MAAMO,QAAQ,GAAGF,eAAe,GAAG,EAAE,GAAG,6BAA6B;EAErE,MAAMG,cAAc,GAAGP,QAAQ,GAAG,6BAA6B,GAAG,EAAE;EAEpE,oBACEJ,KAAA,CAAAY,aAAA;IAAIC,SAAS,EAAC,sBAAsB;IAACC,GAAG,EAAEX,IAAI,CAACG;EAAM,gBACnDN,KAAA,CAAAY,aAAA,CAACX,IAAI;IAACc,EAAE,EAAEN,GAAI;IAACI,SAAS,EAAG,uBAAsBH,QAAS,IAAGC,cAAe;EAAE,GAC3EH,eAAe,iBACdR,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAC;EAA2B,gBACxCb,KAAA,CAAAY,aAAA,CAACJ,eAAe,MAAE,CACf,CACN,eACDR,KAAA,CAAAY,aAAA;IAAKC,SAAS,EAAC;EAA4B,GAAEP,KAAW,CACpD,CACJ,CAAC;AAET,CAAC;AAED,eAAeJ,YAAY"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import menuHandler from '../../utils/menu-handler-singleton';
|
|
4
|
+
import MenuSection from './Section/MenuSection';
|
|
5
|
+
const Menu = ({
|
|
6
|
+
children
|
|
7
|
+
}) => {
|
|
8
|
+
const [config, setConfig] = useState();
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
const loadConfig = async () => {
|
|
11
|
+
await menuHandler.loadConfig();
|
|
12
|
+
};
|
|
13
|
+
loadConfig().then(() => setConfig(menuHandler.getAll()));
|
|
14
|
+
}, []);
|
|
15
|
+
const MenuSections = () => {
|
|
16
|
+
if (!config) return null;
|
|
17
|
+
return config.map(sections => {
|
|
18
|
+
if (!sections || !Array.isArray(sections) || !sections.length) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
const menuSections = sections.filter(section => section.items);
|
|
22
|
+
return menuSections.map(menuSection => /*#__PURE__*/React.createElement(MenuSection, {
|
|
23
|
+
items: menuSection
|
|
24
|
+
}));
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
28
|
+
className: "side-nav__block"
|
|
29
|
+
}, /*#__PURE__*/React.createElement("ul", {
|
|
30
|
+
className: "side-nav__list"
|
|
31
|
+
}, /*#__PURE__*/React.createElement(MenuSections, null)));
|
|
32
|
+
};
|
|
33
|
+
Menu.propTypes = {
|
|
34
|
+
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
|
|
35
|
+
};
|
|
36
|
+
Menu.defaultProps = {
|
|
37
|
+
children: null
|
|
38
|
+
};
|
|
39
|
+
export default Menu;
|
|
40
|
+
//# sourceMappingURL=Menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Menu.js","names":["React","useState","useEffect","PropTypes","menuHandler","MenuSection","Menu","children","config","setConfig","loadConfig","then","getAll","MenuSections","map","sections","Array","isArray","length","menuSections","filter","section","items","menuSection","createElement","className","propTypes","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../src/components/Menu/Menu.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport menuHandler from '../../utils/menu-handler-singleton';\nimport MenuSection from './Section/MenuSection';\n\nconst Menu = ({ children }) => {\n const [config, setConfig] = useState();\n\n useEffect(() => {\n const loadConfig = async () => {\n await menuHandler.loadConfig();\n };\n\n loadConfig().then(() => setConfig(menuHandler.getAll()));\n }, []);\n\n const MenuSections = () => {\n if (!config) return null;\n\n return config.map(sections => {\n if (!sections || !Array.isArray(sections) || !sections.length) {\n return null;\n }\n\n const menuSections = sections.filter(section => section.items);\n\n return menuSections.map(menuSection => <MenuSection items={menuSection} />);\n });\n };\n\n return (\n <div className=\"side-nav__block\">\n <ul className=\"side-nav__list\">\n <MenuSections />\n </ul>\n </div>\n );\n};\n\nMenu.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n children: null\n};\n\nexport default Menu;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAClD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,WAAW,MAAM,oCAAoC;AAC5D,OAAOC,WAAW,MAAM,uBAAuB;AAE/C,MAAMC,IAAI,GAAGA,CAAC;EAAEC;AAAS,CAAC,KAAK;EAC7B,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGR,QAAQ,CAAC,CAAC;EAEtCC,SAAS,CAAC,MAAM;IACd,MAAMQ,UAAU,GAAG,MAAAA,CAAA,KAAY;MAC7B,MAAMN,WAAW,CAACM,UAAU,CAAC,CAAC;IAChC,CAAC;IAEDA,UAAU,CAAC,CAAC,CAACC,IAAI,CAAC,MAAMF,SAAS,CAACL,WAAW,CAACQ,MAAM,CAAC,CAAC,CAAC,CAAC;EAC1D,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,YAAY,GAAGA,CAAA,KAAM;IACzB,IAAI,CAACL,MAAM,EAAE,OAAO,IAAI;IAExB,OAAOA,MAAM,CAACM,GAAG,CAACC,QAAQ,IAAI;MAC5B,IAAI,CAACA,QAAQ,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,QAAQ,CAAC,IAAI,CAACA,QAAQ,CAACG,MAAM,EAAE;QAC7D,OAAO,IAAI;MACb;MAEA,MAAMC,YAAY,GAAGJ,QAAQ,CAACK,MAAM,CAACC,OAAO,IAAIA,OAAO,CAACC,KAAK,CAAC;MAE9D,OAAOH,YAAY,CAACL,GAAG,CAACS,WAAW,iBAAIvB,KAAA,CAAAwB,aAAA,CAACnB,WAAW;QAACiB,KAAK,EAAEC;MAAY,CAAE,CAAC,CAAC;IAC7E,CAAC,CAAC;EACJ,CAAC;EAED,oBACEvB,KAAA,CAAAwB,aAAA;IAAKC,SAAS,EAAC;EAAiB,gBAC9BzB,KAAA,CAAAwB,aAAA;IAAIC,SAAS,EAAC;EAAgB,gBAC5BzB,KAAA,CAAAwB,aAAA,CAACX,YAAY,MAAE,CACb,CACD,CAAC;AAEV,CAAC;AAEDP,IAAI,CAACoB,SAAS,GAAG;EACfnB,QAAQ,EAAEJ,SAAS,CAACwB,SAAS,CAAC,CAACxB,SAAS,CAACyB,OAAO,CAACzB,SAAS,CAAC0B,IAAI,CAAC,EAAE1B,SAAS,CAAC0B,IAAI,CAAC;AACnF,CAAC;AAEDvB,IAAI,CAACwB,YAAY,GAAG;EAClBvB,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeD,IAAI"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import MenuSectionItems from './MenuSectionItems';
|
|
4
|
+
const MenuSection = ({
|
|
5
|
+
items,
|
|
6
|
+
children
|
|
7
|
+
}) => /*#__PURE__*/React.createElement(MenuSectionItems, {
|
|
8
|
+
sectionItems: items
|
|
9
|
+
});
|
|
10
|
+
MenuSection.propTypes = {
|
|
11
|
+
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
|
|
12
|
+
items: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired
|
|
13
|
+
};
|
|
14
|
+
MenuSection.defaultProps = {
|
|
15
|
+
children: null
|
|
16
|
+
};
|
|
17
|
+
export default MenuSection;
|
|
18
|
+
//# sourceMappingURL=MenuSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuSection.js","names":["PropTypes","React","MenuSectionItems","MenuSection","items","children","createElement","sectionItems","propTypes","oneOfType","arrayOf","node","isRequired","defaultProps"],"sources":["../../../../src/components/Menu/Section/MenuSection.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport MenuSectionItems from './MenuSectionItems';\n\nconst MenuSection = ({ items, children }) => <MenuSectionItems sectionItems={items} />;\n\nMenuSection.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n items: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nMenuSection.defaultProps = {\n children: null\n};\n\nexport default MenuSection;\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,gBAAgB,MAAM,oBAAoB;AAEjD,MAAMC,WAAW,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAS,CAAC,kBAAKJ,KAAA,CAAAK,aAAA,CAACJ,gBAAgB;EAACK,YAAY,EAAEH;AAAM,CAAE,CAAC;AAEtFD,WAAW,CAACK,SAAS,GAAG;EACtBH,QAAQ,EAAEL,SAAS,CAACS,SAAS,CAAC,CAACT,SAAS,CAACU,OAAO,CAACV,SAAS,CAACW,IAAI,CAAC,EAAEX,SAAS,CAACW,IAAI,CAAC,CAAC;EAClFP,KAAK,EAAEJ,SAAS,CAACS,SAAS,CAAC,CAACT,SAAS,CAACU,OAAO,CAACV,SAAS,CAACW,IAAI,CAAC,EAAEX,SAAS,CAACW,IAAI,CAAC,CAAC,CAACC;AAClF,CAAC;AAEDT,WAAW,CAACU,YAAY,GAAG;EACzBR,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeF,WAAW"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import ChevronDown from '../Icons/ChevronDown';
|
|
3
|
+
import ChevronUp from '../Icons/ChevronUp';
|
|
4
|
+
const capitalise = s => {
|
|
5
|
+
if (typeof s !== 'string') return '';
|
|
6
|
+
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
7
|
+
};
|
|
8
|
+
const MenuSectionCollapsible = ({
|
|
9
|
+
name,
|
|
10
|
+
item,
|
|
11
|
+
children
|
|
12
|
+
}) => {
|
|
13
|
+
const {
|
|
14
|
+
label,
|
|
15
|
+
loadOpen,
|
|
16
|
+
icon: MenuSectionIcon,
|
|
17
|
+
items
|
|
18
|
+
} = item;
|
|
19
|
+
const [collapsed, setCollapsed] = useState(!loadOpen);
|
|
20
|
+
const CollapseIcon = () => collapsed ? /*#__PURE__*/React.createElement(ChevronDown, null) : /*#__PURE__*/React.createElement(ChevronUp, null);
|
|
21
|
+
const handleClick = () => {
|
|
22
|
+
setCollapsed(!collapsed);
|
|
23
|
+
};
|
|
24
|
+
const modifier = collapsed ? 'side-nav__list--item' : 'side-nav__list--item__selected';
|
|
25
|
+
const buttonModifier = collapsed ? 'side-nav__list-link' : 'side-nav__list-link--selected';
|
|
26
|
+
if (name) {
|
|
27
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
28
|
+
className: modifier
|
|
29
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
30
|
+
type: "button",
|
|
31
|
+
className: buttonModifier,
|
|
32
|
+
onClick: handleClick
|
|
33
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
34
|
+
className: "side-nav__list-link--icon"
|
|
35
|
+
}, MenuSectionIcon && /*#__PURE__*/React.createElement(MenuSectionIcon, null)), /*#__PURE__*/React.createElement("div", {
|
|
36
|
+
className: "side-nav__list-link--wrapper"
|
|
37
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
38
|
+
className: "side-nav__list-link--label"
|
|
39
|
+
}, capitalise(name)), /*#__PURE__*/React.createElement("div", {
|
|
40
|
+
className: "side-nav__list-link--toggleCollapseIcon",
|
|
41
|
+
role: "button"
|
|
42
|
+
}, /*#__PURE__*/React.createElement(CollapseIcon, null)))), /*#__PURE__*/React.createElement("div", {
|
|
43
|
+
className: "side-nav__list-link--children"
|
|
44
|
+
}, collapsed ? null : children));
|
|
45
|
+
}
|
|
46
|
+
if (label && items && Object.keys(items).length > 0) {
|
|
47
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
48
|
+
className: modifier
|
|
49
|
+
}, children);
|
|
50
|
+
}
|
|
51
|
+
if (label && items && Object.keys(items).length === 0) {
|
|
52
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
53
|
+
className: modifier
|
|
54
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
55
|
+
type: "button",
|
|
56
|
+
className: "side-nav__list-link",
|
|
57
|
+
onClick: handleClick
|
|
58
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
59
|
+
className: "side-nav__list-link--icon"
|
|
60
|
+
}, MenuSectionIcon && /*#__PURE__*/React.createElement(MenuSectionIcon, null)), /*#__PURE__*/React.createElement("div", {
|
|
61
|
+
className: "side-nav__list-label"
|
|
62
|
+
}, label)));
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
};
|
|
66
|
+
export default MenuSectionCollapsible;
|
|
67
|
+
//# sourceMappingURL=MenuSectionCollapsible.js.map
|