@deix/rossini-core 0.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.md +3 -0
- package/lib/package.json +73 -0
- package/lib/src/components/buttons/Avatar/Avatar.d.ts +8 -0
- package/lib/src/components/buttons/Avatar/Avatar.d.ts.map +1 -0
- package/lib/src/components/buttons/Avatar/Avatar.js +52 -0
- package/lib/src/components/buttons/LanguageSelect/LanguageSelect.d.ts +16 -0
- package/lib/src/components/buttons/LanguageSelect/LanguageSelect.d.ts.map +1 -0
- package/lib/src/components/buttons/LanguageSelect/LanguageSelect.js +52 -0
- package/lib/src/components/buttons/LanguageSelect/translations.json +9 -0
- package/lib/src/components/buttons/ToggleButtonGroup/ToggleButtonGroup.d.ts +41 -0
- package/lib/src/components/buttons/ToggleButtonGroup/ToggleButtonGroup.d.ts.map +1 -0
- package/lib/src/components/buttons/ToggleButtonGroup/ToggleButtonGroup.js +20 -0
- package/lib/src/components/buttons/index.d.ts +4 -0
- package/lib/src/components/buttons/index.d.ts.map +1 -0
- package/lib/src/components/buttons/index.js +3 -0
- package/lib/src/components/layout/MinimalLayout/MinimalLayout.d.ts +12 -0
- package/lib/src/components/layout/MinimalLayout/MinimalLayout.d.ts.map +1 -0
- package/lib/src/components/layout/MinimalLayout/MinimalLayout.js +57 -0
- package/lib/src/components/layout/MinimalLayout/translations.json +8 -0
- package/lib/src/components/layout/StandardLayout/StandardLayout.d.ts +16 -0
- package/lib/src/components/layout/StandardLayout/StandardLayout.d.ts.map +1 -0
- package/lib/src/components/layout/StandardLayout/StandardLayout.js +67 -0
- package/lib/src/components/layout/StandardLayout/translations.json +8 -0
- package/lib/src/components/layout/components/AppLogo/AppLogo.d.ts +19 -0
- package/lib/src/components/layout/components/AppLogo/AppLogo.d.ts.map +1 -0
- package/lib/src/components/layout/components/AppLogo/AppLogo.js +25 -0
- package/lib/src/components/layout/components/Footer/Footer.d.ts +27 -0
- package/lib/src/components/layout/components/Footer/Footer.d.ts.map +1 -0
- package/lib/src/components/layout/components/Footer/Footer.js +100 -0
- package/lib/src/components/layout/components/Sidebar/Sidebar.d.ts +23 -0
- package/lib/src/components/layout/components/Sidebar/Sidebar.d.ts.map +1 -0
- package/lib/src/components/layout/components/Sidebar/Sidebar.js +206 -0
- package/lib/src/components/layout/components/Topbar/ElevationScroll.d.ts +7 -0
- package/lib/src/components/layout/components/Topbar/ElevationScroll.d.ts.map +1 -0
- package/lib/src/components/layout/components/Topbar/ElevationScroll.js +13 -0
- package/lib/src/components/layout/components/Topbar/Topbar.d.ts +13 -0
- package/lib/src/components/layout/components/Topbar/Topbar.d.ts.map +1 -0
- package/lib/src/components/layout/components/Topbar/Topbar.js +46 -0
- package/lib/src/components/layout/components/Topbar/Topbar.styles.d.ts +18 -0
- package/lib/src/components/layout/components/Topbar/Topbar.styles.d.ts.map +1 -0
- package/lib/src/components/layout/components/Topbar/Topbar.styles.js +8 -0
- package/lib/src/components/layout/components/Topbar/translations.json +26 -0
- package/lib/src/components/layout/components/Topline/TopLine.d.ts +4 -0
- package/lib/src/components/layout/components/Topline/TopLine.d.ts.map +1 -0
- package/lib/src/components/layout/components/Topline/TopLine.js +13 -0
- package/lib/src/components/layout/index.d.ts +3 -0
- package/lib/src/components/layout/index.d.ts.map +1 -0
- package/lib/src/components/layout/index.js +2 -0
- package/lib/src/components/progress/CircularLoading/CircularLoading.d.ts +8 -0
- package/lib/src/components/progress/CircularLoading/CircularLoading.d.ts.map +1 -0
- package/lib/src/components/progress/CircularLoading/CircularLoading.js +16 -0
- package/lib/src/components/progress/CircularLoading/translations.json +8 -0
- package/lib/src/components/progress/DotWaveLoading/DotWaveLoading.d.ts +8 -0
- package/lib/src/components/progress/DotWaveLoading/DotWaveLoading.d.ts.map +1 -0
- package/lib/src/components/progress/DotWaveLoading/DotWaveLoading.js +18 -0
- package/lib/src/components/progress/DotWaveLoading/translations.json +8 -0
- package/lib/src/components/progress/index.d.ts +3 -0
- package/lib/src/components/progress/index.d.ts.map +1 -0
- package/lib/src/components/progress/index.js +2 -0
- package/lib/src/types/api.d.ts +16 -0
- package/lib/src/types/api.d.ts.map +1 -0
- package/lib/src/types/api.js +1 -0
- package/lib/src/types/languages.d.ts +12 -0
- package/lib/src/types/languages.d.ts.map +1 -0
- package/lib/src/types/languages.js +3 -0
- package/lib/src/types/palette.d.ts +16 -0
- package/lib/src/types/palette.d.ts.map +1 -0
- package/lib/src/types/palette.js +1 -0
- package/lib/src/utils/hooks/useAPI.d.ts +3 -0
- package/lib/src/utils/hooks/useAPI.d.ts.map +1 -0
- package/lib/src/utils/hooks/useAPI.js +9 -0
- package/lib/src/utils/hooks/useKeycloak.d.ts +8 -0
- package/lib/src/utils/hooks/useKeycloak.d.ts.map +1 -0
- package/lib/src/utils/hooks/useKeycloak.js +69 -0
- package/lib/src/utils/hooks/useLocale.d.ts +3 -0
- package/lib/src/utils/hooks/useLocale.d.ts.map +1 -0
- package/lib/src/utils/hooks/useLocale.js +6 -0
- package/lib/src/utils/hooks/usePersistedState.d.ts +2 -0
- package/lib/src/utils/hooks/usePersistedState.d.ts.map +1 -0
- package/lib/src/utils/hooks/usePersistedState.js +27 -0
- package/lib/tsconfig-lib.tsbuildinfo +1 -0
- package/package.json +73 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
12
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
import React from 'react';
|
|
38
|
+
import Image from 'next/image';
|
|
39
|
+
import { Box, Typography, useTheme } from '@mui/material';
|
|
40
|
+
import { useQuery } from 'react-query';
|
|
41
|
+
import packageInfo from '../../../../../package.json';
|
|
42
|
+
import { useAPI } from '../../../../utils/hooks/useAPI';
|
|
43
|
+
var Footer = function (_a) {
|
|
44
|
+
var logoSource = _a.logoSource, _b = _a.text, text = _b === void 0 ? 'Deix Srl' : _b, _c = _a.textURL, textURL = _c === void 0 ? 'https://deixsrl.com' : _c, apiURL = _a.apiURL, children = _a.children;
|
|
45
|
+
var muiTheme = useTheme();
|
|
46
|
+
// Get API info (name and version) from backend
|
|
47
|
+
var apiClient = useAPI(apiURL);
|
|
48
|
+
var getAPIInfo = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
49
|
+
var data;
|
|
50
|
+
return __generator(this, function (_a) {
|
|
51
|
+
switch (_a.label) {
|
|
52
|
+
case 0: return [4 /*yield*/, apiClient.get('info')];
|
|
53
|
+
case 1:
|
|
54
|
+
data = (_a.sent()).data;
|
|
55
|
+
return [2 /*return*/, data];
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}); };
|
|
59
|
+
var apiInfo = useQuery('api-info', getAPIInfo, {
|
|
60
|
+
keepPreviousData: true,
|
|
61
|
+
staleTime: Infinity,
|
|
62
|
+
cacheTime: Infinity,
|
|
63
|
+
}).data;
|
|
64
|
+
return (React.createElement(Box, { sx: {
|
|
65
|
+
display: 'flex',
|
|
66
|
+
flexDirection: 'column',
|
|
67
|
+
background: muiTheme.palette.background.default,
|
|
68
|
+
} },
|
|
69
|
+
React.createElement(React.Fragment, null,
|
|
70
|
+
React.createElement("div", { style: {
|
|
71
|
+
display: 'flex',
|
|
72
|
+
flexWrap: 'wrap',
|
|
73
|
+
justifyContent: 'center',
|
|
74
|
+
alignItems: 'center',
|
|
75
|
+
width: '100%',
|
|
76
|
+
textAlign: 'center',
|
|
77
|
+
} },
|
|
78
|
+
logoSource && (React.createElement(Image, { src: logoSource, alt: 'Logo', width: 14, height: 14 })),
|
|
79
|
+
React.createElement(Typography, { variant: 'caption', style: {
|
|
80
|
+
alignSelf: 'center',
|
|
81
|
+
color: muiTheme.palette.text.secondary,
|
|
82
|
+
marginLeft: '5px',
|
|
83
|
+
} },
|
|
84
|
+
React.createElement("a", { href: textURL, target: '_blank', rel: 'noreferrer', style: {
|
|
85
|
+
textDecoration: 'none',
|
|
86
|
+
color: muiTheme.palette.text.secondary,
|
|
87
|
+
} }, text))),
|
|
88
|
+
React.createElement(Typography, { variant: 'caption', style: {
|
|
89
|
+
alignSelf: 'center',
|
|
90
|
+
color: muiTheme.palette.text.secondary,
|
|
91
|
+
marginLeft: '5px',
|
|
92
|
+
} },
|
|
93
|
+
packageInfo.name,
|
|
94
|
+
" v",
|
|
95
|
+
packageInfo.version,
|
|
96
|
+
' ',
|
|
97
|
+
apiInfo ? "(".concat(apiInfo.name, " ").concat(apiInfo.version, ")") : ''),
|
|
98
|
+
children)));
|
|
99
|
+
};
|
|
100
|
+
export default Footer;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React, { ReactElement } from 'react';
|
|
2
|
+
import { Variant } from '@mui/material/styles/createTypography';
|
|
3
|
+
import { Locale, StringTranslation } from '../../../../types/languages';
|
|
4
|
+
export interface SidebarLink {
|
|
5
|
+
id: string;
|
|
6
|
+
path: string;
|
|
7
|
+
label?: StringTranslation;
|
|
8
|
+
labelVariant?: Variant;
|
|
9
|
+
sidebarOrder: number;
|
|
10
|
+
sidebarIcon?: (color: string) => ReactElement;
|
|
11
|
+
subPages?: SidebarLink[];
|
|
12
|
+
}
|
|
13
|
+
interface SidebarProps {
|
|
14
|
+
links: SidebarLink[];
|
|
15
|
+
open: boolean;
|
|
16
|
+
isMobile: boolean;
|
|
17
|
+
logo?: ReactElement;
|
|
18
|
+
locale: Locale;
|
|
19
|
+
onClose: () => void;
|
|
20
|
+
}
|
|
21
|
+
declare const Sidebar: React.FC<SidebarProps>;
|
|
22
|
+
export default Sidebar;
|
|
23
|
+
//# sourceMappingURL=Sidebar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/Sidebar/Sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAY,MAAM,OAAO,CAAC;AAuBtD,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGxE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,CAAC;IAC9C,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B;AACD,UAAU,YAAY;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA+UnC,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import React, { useState } from 'react';
|
|
13
|
+
import ArrowRightOutlinedIcon from '@mui/icons-material/ArrowRightOutlined';
|
|
14
|
+
import ExpandLessIcon from '@mui/icons-material/ExpandLess';
|
|
15
|
+
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
|
|
16
|
+
import { Collapse, Drawer, IconButton, List, ListItemButton, ListItemIcon, ListItemText, Menu, MenuItem, Tooltip, Typography, } from '@mui/material';
|
|
17
|
+
import { useTheme as useMUITheme } from '@mui/material/styles';
|
|
18
|
+
import Link from 'next/link';
|
|
19
|
+
import { useRouter } from 'next/router';
|
|
20
|
+
import { usePersistedState } from '../../../../utils/hooks/usePersistedState';
|
|
21
|
+
var Sidebar = function (_a) {
|
|
22
|
+
var links = _a.links, open = _a.open, isMobile = _a.isMobile, logo = _a.logo, locale = _a.locale, onClose = _a.onClose;
|
|
23
|
+
var muiTheme = useMUITheme();
|
|
24
|
+
var pathname = useRouter().pathname;
|
|
25
|
+
// Handle default item icon and change color according to selection
|
|
26
|
+
var icons = function (link, selected) {
|
|
27
|
+
var color = selected
|
|
28
|
+
? muiTheme.palette.primary.main
|
|
29
|
+
: muiTheme.palette.linkNotActive.main;
|
|
30
|
+
return (React.createElement(ListItemIcon, { color: color }, link.sidebarIcon ? (link.sidebarIcon(color)) : (React.createElement(ArrowRightOutlinedIcon, { htmlColor: color }))));
|
|
31
|
+
};
|
|
32
|
+
// Persist which items of the sidebar are open to avoid resetting on page change
|
|
33
|
+
var _b = usePersistedState('sidebarItemOpen', {}), sidebarItemOpen = _b[0], setSidebarItemOpen = _b[1];
|
|
34
|
+
var handleOpenSidebarItem = function (item) {
|
|
35
|
+
var oldOpenState = __assign({}, sidebarItemOpen);
|
|
36
|
+
oldOpenState[item] =
|
|
37
|
+
oldOpenState[item] === undefined ? true : !oldOpenState[item];
|
|
38
|
+
setSidebarItemOpen(oldOpenState);
|
|
39
|
+
};
|
|
40
|
+
var _c = useState({}), subPagesMenuAnchorEl = _c[0], setSubPagesMenuAnchorEl = _c[1];
|
|
41
|
+
var handleOpenSidebarMenu = function (sidebarItemId, event) {
|
|
42
|
+
var _a;
|
|
43
|
+
setSubPagesMenuAnchorEl(__assign(__assign({}, subPagesMenuAnchorEl), (_a = {}, _a[sidebarItemId] = event.currentTarget, _a)));
|
|
44
|
+
};
|
|
45
|
+
var handleCloseSidebarMenu = function (sidebarItemId) {
|
|
46
|
+
var _a;
|
|
47
|
+
setSubPagesMenuAnchorEl(__assign(__assign({}, subPagesMenuAnchorEl), (_a = {}, _a[sidebarItemId] = null, _a)));
|
|
48
|
+
};
|
|
49
|
+
// Function to generate sidebar items. To be called recursively
|
|
50
|
+
var handler = function (links, options) {
|
|
51
|
+
if (open) {
|
|
52
|
+
// Render all items with their labels
|
|
53
|
+
return links
|
|
54
|
+
.sort(function (a, b) {
|
|
55
|
+
if (a.sidebarOrder === undefined || b.sidebarOrder === undefined) {
|
|
56
|
+
return 1;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
return a.sidebarOrder > b.sidebarOrder ? 1 : -1;
|
|
60
|
+
}
|
|
61
|
+
})
|
|
62
|
+
.map(function (link) {
|
|
63
|
+
var selected = link.path === '/'
|
|
64
|
+
? pathname === '/'
|
|
65
|
+
: pathname.slice(1).startsWith(link.path.slice(1));
|
|
66
|
+
if (!link.subPages) {
|
|
67
|
+
return (React.createElement(Link, { key: link.id, href: link.path },
|
|
68
|
+
React.createElement(ListItemButton, { selected: selected, style: {
|
|
69
|
+
paddingLeft: options.level === 1 && open ? '32px' : '22px',
|
|
70
|
+
paddingTop: options.level === 1 ? 0 : 8,
|
|
71
|
+
paddingBottom: options.level === 1 ? 0 : 8,
|
|
72
|
+
borderTopRightRadius: '20px',
|
|
73
|
+
borderBottomRightRadius: '20px',
|
|
74
|
+
} },
|
|
75
|
+
icons(link, selected),
|
|
76
|
+
React.createElement(ListItemText, { style: {
|
|
77
|
+
color: selected
|
|
78
|
+
? "".concat(muiTheme.palette.primary.main, " !important")
|
|
79
|
+
: "".concat(muiTheme.palette.linkNotActive.main, " !important"),
|
|
80
|
+
marginLeft: '-20px',
|
|
81
|
+
visibility: 'visible',
|
|
82
|
+
}, disableTypography: true, primary: React.createElement(Typography, { variant: link.labelVariant || 'h6', style: selected
|
|
83
|
+
? { color: muiTheme.palette.primary.main }
|
|
84
|
+
: { color: muiTheme.palette.linkNotActive.main } }, link.label ? link.label[locale] : 'unknown') }))));
|
|
85
|
+
}
|
|
86
|
+
return (React.createElement("div", { key: link.id },
|
|
87
|
+
React.createElement(Link, { href: link.path },
|
|
88
|
+
React.createElement(ListItemButton, { key: link.id, selected: selected, style: {
|
|
89
|
+
paddingLeft: '22px',
|
|
90
|
+
paddingTop: 8,
|
|
91
|
+
paddingBottom: 8,
|
|
92
|
+
borderTopRightRadius: '20px',
|
|
93
|
+
borderBottomRightRadius: '20px',
|
|
94
|
+
}, onClick: function (_evt) {
|
|
95
|
+
if (!sidebarItemOpen[link.id]) {
|
|
96
|
+
handleOpenSidebarItem(link.id);
|
|
97
|
+
}
|
|
98
|
+
} },
|
|
99
|
+
icons(link, selected),
|
|
100
|
+
React.createElement(ListItemText, { style: {
|
|
101
|
+
color: selected
|
|
102
|
+
? "".concat(muiTheme.palette.primary.main, " !important")
|
|
103
|
+
: "".concat(muiTheme.palette.linkNotActive.main, " !important"),
|
|
104
|
+
marginLeft: '-20px',
|
|
105
|
+
visibility: 'visible',
|
|
106
|
+
}, disableTypography: true, primary: React.createElement(Typography, { variant: link.labelVariant || 'h6', style: selected
|
|
107
|
+
? { color: muiTheme.palette.primary.main }
|
|
108
|
+
: { color: muiTheme.palette.linkNotActive.main } }, link.label ? link.label[locale] : 'unknown') }),
|
|
109
|
+
sidebarItemOpen[link.id] ? (React.createElement(IconButton, { onClick: function (e) {
|
|
110
|
+
e.stopPropagation();
|
|
111
|
+
handleOpenSidebarItem(link.id);
|
|
112
|
+
} },
|
|
113
|
+
React.createElement(ExpandLessIcon, null))) : (React.createElement(IconButton, { onClick: function (e) {
|
|
114
|
+
e.stopPropagation();
|
|
115
|
+
handleOpenSidebarItem(link.id);
|
|
116
|
+
} },
|
|
117
|
+
React.createElement(ExpandMoreIcon, null))))),
|
|
118
|
+
React.createElement(Collapse, { in: sidebarItemOpen[link.id], timeout: 'auto', unmountOnExit: true }, handler(link.subPages, { level: 1 }))));
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
// Return only level 0 items and show level 1 items in a menu
|
|
123
|
+
return (links
|
|
124
|
+
.sort(function (a, b) {
|
|
125
|
+
if (a.sidebarOrder === undefined || b.sidebarOrder === undefined) {
|
|
126
|
+
return 1;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
return a.sidebarOrder > b.sidebarOrder ? 1 : -1;
|
|
130
|
+
}
|
|
131
|
+
})
|
|
132
|
+
// .filter((l) => l.id !== 'settings')
|
|
133
|
+
.map(function (link) {
|
|
134
|
+
var _a, _b;
|
|
135
|
+
var selected = link.path === '/'
|
|
136
|
+
? pathname === '/'
|
|
137
|
+
: pathname.slice(1).startsWith(link.path.slice(1));
|
|
138
|
+
if (link.subPages) {
|
|
139
|
+
return (React.createElement("div", { key: link.id },
|
|
140
|
+
React.createElement(ListItemButton, { selected: selected, style: {
|
|
141
|
+
paddingLeft: '22px',
|
|
142
|
+
paddingTop: 8,
|
|
143
|
+
paddingBottom: 8,
|
|
144
|
+
borderTopRightRadius: '20px',
|
|
145
|
+
borderBottomRightRadius: '20px',
|
|
146
|
+
}, onClick: function (evt) { return handleOpenSidebarMenu(link.id, evt); } },
|
|
147
|
+
React.createElement(Tooltip, { title: (((_a = link.label) === null || _a === void 0 ? void 0 : _a[locale]) ? link.label[locale] : '') || '', placement: 'right', enterDelay: 600, enterNextDelay: 600, arrow: true }, icons(link, selected))),
|
|
148
|
+
React.createElement(Menu, { id: "".concat(link.id, "-subpages-menu"), anchorEl: subPagesMenuAnchorEl[link.id], open: Boolean(subPagesMenuAnchorEl[link.id]), onClose: function (_evt) { return handleCloseSidebarMenu(link.id); }, anchorOrigin: {
|
|
149
|
+
vertical: 'top',
|
|
150
|
+
horizontal: 'right',
|
|
151
|
+
}, transformOrigin: {
|
|
152
|
+
vertical: 'top',
|
|
153
|
+
horizontal: 'left',
|
|
154
|
+
}, PaperProps: {
|
|
155
|
+
sx: {
|
|
156
|
+
borderRadius: '2px',
|
|
157
|
+
padding: '2px',
|
|
158
|
+
overflow: 'visible',
|
|
159
|
+
},
|
|
160
|
+
} }, link.subPages.map(function (subPage) { return (React.createElement(Link, { key: subPage.id, href: subPage.path },
|
|
161
|
+
React.createElement(MenuItem, null,
|
|
162
|
+
icons(subPage, selected),
|
|
163
|
+
React.createElement(ListItemText, { style: {
|
|
164
|
+
color: selected
|
|
165
|
+
? "".concat(muiTheme.palette.primary.main, " !important")
|
|
166
|
+
: "".concat(muiTheme.palette.linkNotActive.main, " !important"),
|
|
167
|
+
} }, subPage.label ? subPage.label[locale] : 'unknown')))); }))));
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
return (React.createElement(Link, { key: link.id, href: link.path },
|
|
171
|
+
React.createElement(ListItemButton, { selected: selected, style: {
|
|
172
|
+
paddingLeft: '22px',
|
|
173
|
+
paddingTop: 8,
|
|
174
|
+
paddingBottom: 8,
|
|
175
|
+
borderTopRightRadius: '20px',
|
|
176
|
+
borderBottomRightRadius: '20px',
|
|
177
|
+
} },
|
|
178
|
+
React.createElement(Tooltip, { title: (((_b = link.label) === null || _b === void 0 ? void 0 : _b[locale]) ? link.label[locale] : '') || '', placement: 'right', enterDelay: 600, enterNextDelay: 600, arrow: true }, icons(link, selected)))));
|
|
179
|
+
}
|
|
180
|
+
}));
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
return (React.createElement(Drawer, { anchor: 'left', onClose: onClose, open: open, variant: isMobile ? 'temporary' : 'permanent', sx: {
|
|
184
|
+
flexShrink: 0,
|
|
185
|
+
whiteSpace: 'nowrap',
|
|
186
|
+
height: '100%',
|
|
187
|
+
width: {
|
|
188
|
+
xs: open ? '65%' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
189
|
+
sm: open ? '50%' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
190
|
+
md: open ? '300px' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
191
|
+
},
|
|
192
|
+
}, PaperProps: {
|
|
193
|
+
sx: {
|
|
194
|
+
pr: 1,
|
|
195
|
+
width: {
|
|
196
|
+
xs: open ? '65%' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
197
|
+
sm: open ? '50%' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
198
|
+
md: open ? '300px' : "".concat(parseInt(muiTheme.spacing(9), 10) + 1, "px"),
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
} },
|
|
202
|
+
React.createElement(List, { style: { marginTop: '19px' } }, handler(links, { level: 0 })),
|
|
203
|
+
React.createElement("div", { style: { flexGrow: 1 } }),
|
|
204
|
+
logo));
|
|
205
|
+
};
|
|
206
|
+
export default Sidebar;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
interface ElevationScrollProps {
|
|
3
|
+
children: ReactElement;
|
|
4
|
+
}
|
|
5
|
+
declare const ElevationScroll: ({ children }: ElevationScrollProps) => ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
6
|
+
export default ElevationScroll;
|
|
7
|
+
//# sourceMappingURL=ElevationScroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ElevationScroll.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/Topbar/ElevationScroll.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgB,YAAY,EAAE,MAAM,OAAO,CAAC;AAEnD,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,QAAA,MAAM,eAAe,iBAAkB,oBAAoB,2EAS1D,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import useScrollTrigger from '@mui/material/useScrollTrigger';
|
|
2
|
+
import { cloneElement } from 'react';
|
|
3
|
+
var ElevationScroll = function (_a) {
|
|
4
|
+
var children = _a.children;
|
|
5
|
+
var trigger = useScrollTrigger({
|
|
6
|
+
disableHysteresis: true,
|
|
7
|
+
threshold: 0,
|
|
8
|
+
});
|
|
9
|
+
return cloneElement(children, {
|
|
10
|
+
elevation: trigger ? 2 : 0,
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
export default ElevationScroll;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Locale } from '../../../../types/languages';
|
|
3
|
+
interface TopbarProps {
|
|
4
|
+
open: boolean;
|
|
5
|
+
locale: Locale;
|
|
6
|
+
onClose: () => void;
|
|
7
|
+
onOpen: () => void;
|
|
8
|
+
logoutUrl?: string;
|
|
9
|
+
accountSettingsUrl?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const Topbar: React.FC<TopbarProps>;
|
|
12
|
+
export default Topbar;
|
|
13
|
+
//# sourceMappingURL=Topbar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Topbar.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/Topbar/Topbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAMrD,UAAU,WAAW;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA0DjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import React from 'react';
|
|
13
|
+
import { useTheme } from 'next-themes';
|
|
14
|
+
import MenuOpenTwoToneIcon from '@mui/icons-material/MenuOpenTwoTone';
|
|
15
|
+
import MenuTwoToneIcon from '@mui/icons-material/MenuTwoTone';
|
|
16
|
+
import ModeNightIcon from '@mui/icons-material/ModeNight';
|
|
17
|
+
import { IconButton, Toolbar, Tooltip, useTheme as useMUITheme, } from '@mui/material';
|
|
18
|
+
import { LanguageSelect } from '../../../buttons';
|
|
19
|
+
import Avatar from '../../../buttons/Avatar/Avatar';
|
|
20
|
+
import ElevationScroll from './ElevationScroll';
|
|
21
|
+
import * as S from './Topbar.styles';
|
|
22
|
+
import t from './translations.json';
|
|
23
|
+
var Topbar = function (props) {
|
|
24
|
+
var onClose = props.onClose, onOpen = props.onOpen, open = props.open, locale = props.locale, logoutUrl = props.logoutUrl, accountSettingsUrl = props.accountSettingsUrl;
|
|
25
|
+
var _a = useTheme(), resolvedTheme = _a.resolvedTheme, setTheme = _a.setTheme;
|
|
26
|
+
var muiTheme = useMUITheme();
|
|
27
|
+
var SidebarIcon = open ? (React.createElement(MenuOpenTwoToneIcon, { color: 'primary' })) : (React.createElement(MenuTwoToneIcon, { color: 'primary' }));
|
|
28
|
+
var menuMessage = open ? t['menuClose'][locale] : t['menuOpen'][locale];
|
|
29
|
+
return (React.createElement(ElevationScroll, __assign({}, props),
|
|
30
|
+
React.createElement(S.StyledAppBar, { position: 'static', theme: muiTheme },
|
|
31
|
+
React.createElement(Toolbar, null,
|
|
32
|
+
React.createElement(Tooltip, { title: menuMessage, arrow: true },
|
|
33
|
+
React.createElement(IconButton, { color: 'inherit', "aria-label": 'open drawer', onClick: function () { return (open ? onClose() : onOpen()); }, edge: 'start' }, SidebarIcon)),
|
|
34
|
+
React.createElement("div", { style: { flexGrow: 1 } }),
|
|
35
|
+
React.createElement(LanguageSelect, { locale: locale }),
|
|
36
|
+
React.createElement(IconButton, { component: 'span', "aria-label": 'user options' },
|
|
37
|
+
React.createElement(Avatar, { logoutUrl: logoutUrl, accountSettingsUrl: accountSettingsUrl })),
|
|
38
|
+
React.createElement(Tooltip, { title: resolvedTheme === 'light'
|
|
39
|
+
? t['enableDark'][locale]
|
|
40
|
+
: t['disableDark'][locale] },
|
|
41
|
+
React.createElement(IconButton, { component: 'span', "aria-label": 'toggle dark mode', onClick: function () {
|
|
42
|
+
return setTheme(resolvedTheme === 'light' ? 'dark' : 'light');
|
|
43
|
+
} },
|
|
44
|
+
React.createElement(ModeNightIcon, null)))))));
|
|
45
|
+
};
|
|
46
|
+
export default Topbar;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Theme } from '@mui/material';
|
|
3
|
+
interface AppBarProps {
|
|
4
|
+
theme: Theme;
|
|
5
|
+
}
|
|
6
|
+
export declare const StyledAppBar: import("@emotion/styled").StyledComponent<Omit<import("@mui/material").PaperProps<"div", {}>, "classes" | "color" | "position"> & {
|
|
7
|
+
classes?: Partial<import("@mui/material").AppBarClasses> | undefined;
|
|
8
|
+
color?: "inherit" | "default" | "transparent" | "primary" | "secondary" | undefined;
|
|
9
|
+
enableColorOnDark?: boolean | undefined;
|
|
10
|
+
position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
|
|
11
|
+
sx?: import("@mui/material").SxProps<Theme> | undefined;
|
|
12
|
+
} & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "key" | keyof import("react").HTMLAttributes<HTMLElement>> & {
|
|
13
|
+
ref?: ((instance: HTMLElement | null) => void) | import("react").RefObject<HTMLElement> | null | undefined;
|
|
14
|
+
}, "onError" | "ref" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "nonce" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | keyof import("@mui/material/OverridableComponent").CommonProps | "sx" | "key" | "elevation" | "square" | "variant" | "position" | "enableColorOnDark"> & {
|
|
15
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
16
|
+
} & AppBarProps, {}, {}>;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=Topbar.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Topbar.styles.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/Topbar/Topbar.styles.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,UAAU,WAAW;IACnB,KAAK,EAAE,KAAK,CAAC;CACd;AAED,eAAO,MAAM,YAAY;;;;;;;;;;wBAOxB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
import styled from '@emotion/styled';
|
|
6
|
+
import AppBar from '@mui/material/AppBar';
|
|
7
|
+
export var StyledAppBar = styled(AppBar)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n && {\n @supports (backdrop-filter: saturate(180%) blur(35px)) {\n background-color: ", ";\n backdrop-filter: saturate(180%) blur(35px);\n }\n }\n"], ["\n && {\n @supports (backdrop-filter: saturate(180%) blur(35px)) {\n background-color: ", ";\n backdrop-filter: saturate(180%) blur(35px);\n }\n }\n"])), function (props) { return props.theme.palette.topbar.main; });
|
|
8
|
+
var templateObject_1;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"menuOpen": {
|
|
3
|
+
"de": "Menü öffnen",
|
|
4
|
+
"en": "Open menu",
|
|
5
|
+
"fr": "Ouvrir le menu",
|
|
6
|
+
"it": "Apri menu"
|
|
7
|
+
},
|
|
8
|
+
"menuClose": {
|
|
9
|
+
"de": "Menü schließen",
|
|
10
|
+
"en": "Close menu",
|
|
11
|
+
"fr": "Fermer le menu",
|
|
12
|
+
"it": "Chiudi menu"
|
|
13
|
+
},
|
|
14
|
+
"enableDark": {
|
|
15
|
+
"de": "Dark-Mode aktivieren",
|
|
16
|
+
"en": "Enable dark mode",
|
|
17
|
+
"fr": "Activer le mode sombre",
|
|
18
|
+
"it": "Attiva modalità scura"
|
|
19
|
+
},
|
|
20
|
+
"disableDark": {
|
|
21
|
+
"de": "Dark-Mode deaktivieren",
|
|
22
|
+
"en": "Disable dark mode",
|
|
23
|
+
"fr": "Désactiver le mode sombre",
|
|
24
|
+
"it": "Disattiva modalità scura"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopLine.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/Topline/TopLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAa5C,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useTheme } from '@mui/material';
|
|
3
|
+
var TopLine = function () {
|
|
4
|
+
var theme = useTheme();
|
|
5
|
+
return (React.createElement("div", { style: {
|
|
6
|
+
height: '3px',
|
|
7
|
+
width: '100%',
|
|
8
|
+
zIndex: 9999,
|
|
9
|
+
position: 'fixed',
|
|
10
|
+
background: theme.palette.gradient.main,
|
|
11
|
+
} }));
|
|
12
|
+
};
|
|
13
|
+
export default TopLine;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Locale } from '../../../types/languages';
|
|
3
|
+
interface CircularLoadingProps {
|
|
4
|
+
locale?: Locale;
|
|
5
|
+
}
|
|
6
|
+
declare const CircularLoading: React.FC<CircularLoadingProps>;
|
|
7
|
+
export default CircularLoading;
|
|
8
|
+
//# sourceMappingURL=CircularLoading.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircularLoading.d.ts","sourceRoot":"","sources":["../../../../../src/components/progress/CircularLoading/CircularLoading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD,UAAU,oBAAoB;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAenD,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Box, CircularProgress, Typography } from '@mui/material';
|
|
3
|
+
import t from './translations.json';
|
|
4
|
+
var CircularLoading = function (_a) {
|
|
5
|
+
var _b = _a.locale, locale = _b === void 0 ? 'en' : _b;
|
|
6
|
+
return (React.createElement(Box, { sx: {
|
|
7
|
+
display: 'flex',
|
|
8
|
+
flexDirection: 'column',
|
|
9
|
+
alignItems: 'center',
|
|
10
|
+
justifyContent: 'center',
|
|
11
|
+
height: '100%',
|
|
12
|
+
} },
|
|
13
|
+
React.createElement(CircularProgress, null),
|
|
14
|
+
React.createElement(Typography, { variant: 'body1' }, t['loading'][locale])));
|
|
15
|
+
};
|
|
16
|
+
export default CircularLoading;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Locale } from '../../../types/languages';
|
|
3
|
+
interface DotWaveLoadingProps {
|
|
4
|
+
locale?: Locale;
|
|
5
|
+
}
|
|
6
|
+
declare const DotWaveLoading: React.FC<DotWaveLoadingProps>;
|
|
7
|
+
export default DotWaveLoading;
|
|
8
|
+
//# sourceMappingURL=DotWaveLoading.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DotWaveLoading.d.ts","sourceRoot":"","sources":["../../../../../src/components/progress/DotWaveLoading/DotWaveLoading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD,UAAU,mBAAmB;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAkBjD,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Box, Typography, useTheme } from '@mui/material';
|
|
3
|
+
import { DotWave as UiBallDotWave } from '@uiball/loaders';
|
|
4
|
+
import t from './translations.json';
|
|
5
|
+
var DotWaveLoading = function (_a) {
|
|
6
|
+
var _b = _a.locale, locale = _b === void 0 ? 'en' : _b;
|
|
7
|
+
var theme = useTheme();
|
|
8
|
+
return (React.createElement(Box, { sx: {
|
|
9
|
+
display: 'flex',
|
|
10
|
+
flexDirection: 'column',
|
|
11
|
+
alignItems: 'center',
|
|
12
|
+
justifyContent: 'center',
|
|
13
|
+
height: '100%',
|
|
14
|
+
} },
|
|
15
|
+
React.createElement(UiBallDotWave, { color: theme.palette.primary.main }),
|
|
16
|
+
React.createElement(Typography, { variant: 'body1' }, t['loading'][locale])));
|
|
17
|
+
};
|
|
18
|
+
export default DotWaveLoading;
|