12345678910111213141516171819202122232425262728293031323334353637 |
- const peersView = async ({ peers, connectedPeers }) => {
- const { form, button, div, h2, p, section, ul, li, a, br } = require("../server/node_modules/hyperaxe");
- const { template, i18n } = require('./main_views');
- const startButton = form({ action: "/settings/conn/start", method: "post" }, button({ type: "submit" }, i18n.startNetworking));
- const restartButton = form({ action: "/settings/conn/restart", method: "post" }, button({ type: "submit" }, i18n.restartNetworking));
- const stopButton = form({ action: "/settings/conn/stop", method: "post" }, button({ type: "submit" }, i18n.stopNetworking));
- const syncButton = form({ action: "/settings/conn/sync", method: "post" }, button({ type: "submit" }, i18n.sync));
- const connButtons = [startButton, restartButton, stopButton, syncButton];
- const renderPeerList = (list) =>
- list.map(([, data]) =>
- li(
- data.name, br,
- a({ href: `/author/${encodeURIComponent(data.key)}` }, data.key), br, br
- )
- );
- return template(
- i18n.peers,
- section(
- div({ class: 'tags-header' },
- h2(i18n.peers),
- p(i18n.peerConnectionsIntro)
- ),
- div({ class: "conn-actions" }, ...connButtons),
- div({ class: "peers-list" },
- h2(`${i18n.online} (${connectedPeers.length})`),
- connectedPeers.length > 0 ? ul(renderPeerList(connectedPeers)) : p(i18n.noConnections),
- h2(`${i18n.offline} (${peers.length})`),
- peers.length > 0 ? ul(renderPeerList(peers)) : p(i18n.noDiscovered),
- p(i18n.connectionActionIntro)
- )
- )
- );
- };
- exports.peersView = peersView;
|