mirror of
https://github.com/RetroShare/RSNewWebUI.git
synced 2026-09-13 18:45:49 +05:00
71 lines
1.6 KiB
JavaScript
71 lines
1.6 KiB
JavaScript
const m = require('mithril');
|
|
const Sidebar = () => {
|
|
let active = 0;
|
|
return {
|
|
view: (v) =>
|
|
m(
|
|
'.sidebar',
|
|
v.attrs.tabs.map((panelName, index) =>
|
|
m(
|
|
m.route.Link,
|
|
{
|
|
class: index === active ? 'selected-sidebar-link' : '',
|
|
onclick: () => (active = index),
|
|
href: v.attrs.baseRoute + panelName,
|
|
},
|
|
panelName
|
|
)
|
|
)
|
|
),
|
|
};
|
|
};
|
|
const SidebarQuickView = () => {
|
|
// for the Mail tab, to be moved later.
|
|
let quickactive = -1;
|
|
return {
|
|
view: (v) =>
|
|
m(
|
|
'.sidebarquickview',
|
|
m('h4', 'Quick View'),
|
|
v.attrs.tabs.map((panelName, index) =>
|
|
m(
|
|
m.route.Link,
|
|
{
|
|
class: index === quickactive ? 'selected-sidebarquickview-link' : '',
|
|
onclick: () => (quickactive = index),
|
|
href: v.attrs.baseRoute + panelName,
|
|
},
|
|
panelName
|
|
)
|
|
)
|
|
),
|
|
};
|
|
};
|
|
|
|
// There are ways of doing this inside m.route but it is probably
|
|
// cleaner and faster when kept outside of the main auto
|
|
// rendering system
|
|
function popupMessage(message) {
|
|
const container = document.getElementById('modal-container');
|
|
container.style.display = 'block';
|
|
m.render(
|
|
container,
|
|
m('.modal-content', [
|
|
m(
|
|
'button.red.close-btn',
|
|
{
|
|
onclick: () => (container.style.display = 'none'),
|
|
},
|
|
m('i.fas.fa-times')
|
|
),
|
|
message,
|
|
])
|
|
);
|
|
}
|
|
|
|
module.exports = {
|
|
Sidebar,
|
|
SidebarQuickView,
|
|
popupMessage,
|
|
};
|