Lint and Typescript error fixes
@ -1,67 +0,0 @@
|
||||
import request from 'request-promise';
|
||||
import { Logger } from '../../utils/logger.js';
|
||||
import { Common } from '../../utils/common.js';
|
||||
let options = null;
|
||||
const logger = Logger;
|
||||
const common = Common;
|
||||
export const getPeers = (req, res, next) => {
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'List Peers..' });
|
||||
options = common.getOptions(req);
|
||||
if (options.error) {
|
||||
return res.status(options.statusCode).json({ message: options.message, error: options.error });
|
||||
}
|
||||
options.url = req.session.selectedNode.ln_server_url + '/v1/peer/listPeers';
|
||||
request(options).then((body) => {
|
||||
body.forEach((peer) => {
|
||||
if (!peer.alias || peer.alias === '') {
|
||||
peer.alias = peer.id.substring(0, 20);
|
||||
}
|
||||
});
|
||||
const peers = (body) ? common.sortDescByStrKey(body, 'alias') : [];
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'Peers with Alias Received', data: peers });
|
||||
res.status(200).json(peers);
|
||||
}).catch((errRes) => {
|
||||
const err = common.handleError(errRes, 'Peers', 'List Peers Error', req.session.selectedNode);
|
||||
return res.status(err.statusCode).json({ message: err.message, error: err.error });
|
||||
});
|
||||
};
|
||||
export const postPeer = (req, res, next) => {
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'Connecting Peer..' });
|
||||
options = common.getOptions(req);
|
||||
if (options.error) {
|
||||
return res.status(options.statusCode).json({ message: options.message, error: options.error });
|
||||
}
|
||||
options.url = req.session.selectedNode.ln_server_url + '/v1/peer/connect';
|
||||
options.body = req.body;
|
||||
request.post(options).then((body) => {
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'DEBUG', fileName: 'Peers', msg: 'Peer Connected', data: body });
|
||||
options.url = req.session.selectedNode.ln_server_url + '/v1/peer/listPeers';
|
||||
request(options).then((body) => {
|
||||
let peers = (body) ? common.sortDescByStrKey(body, 'alias') : [];
|
||||
peers = common.newestOnTop(peers, 'id', req.body.id);
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'Peers List after Connect Received', data: peers });
|
||||
res.status(201).json(peers);
|
||||
}).catch((errRes) => {
|
||||
const err = common.handleError(errRes, 'Peers', 'Connect Peer Error', req.session.selectedNode);
|
||||
return res.status(err.statusCode).json({ message: err.message, error: err.error });
|
||||
});
|
||||
}).catch((errRes) => {
|
||||
const err = common.handleError(errRes, 'Peers', 'Connect Peer Error', req.session.selectedNode);
|
||||
return res.status(err.statusCode).json({ message: err.message, error: err.error });
|
||||
});
|
||||
};
|
||||
export const deletePeer = (req, res, next) => {
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'Disconnecting Peer..' });
|
||||
options = common.getOptions(req);
|
||||
if (options.error) {
|
||||
return res.status(options.statusCode).json({ message: options.message, error: options.error });
|
||||
}
|
||||
options.url = req.session.selectedNode.ln_server_url + '/v1/peer/disconnect/' + req.params.peerId + '?force=' + req.query.force;
|
||||
request.delete(options).then((body) => {
|
||||
logger.log({ selectedNode: req.session.selectedNode, level: 'INFO', fileName: 'Peers', msg: 'Peer Disconnected', data: body });
|
||||
res.status(204).json({});
|
||||
}).catch((errRes) => {
|
||||
const err = common.handleError(errRes, 'Peers', 'Detach Peer Error', req.session.selectedNode);
|
||||
return res.status(err.statusCode).json({ message: err.message, error: err.error });
|
||||
});
|
||||
};
|
@ -1,9 +0,0 @@
|
||||
import exprs from 'express';
|
||||
const { Router } = exprs;
|
||||
import { isAuthenticated } from '../../utils/authCheck.js';
|
||||
import { getPeers, postPeer, deletePeer } from '../../controllers/cln/peers.js';
|
||||
const router = Router();
|
||||
router.get('/', isAuthenticated, getPeers);
|
||||
router.post('/', isAuthenticated, postPeer);
|
||||
router.delete('/:peerId', isAuthenticated, deletePeer);
|
||||
export default router;
|
1
frontend/167.b8e9be471e438940.js
Normal file
1
frontend/267.3050ada6a6d9afd8.js
Normal file
1
frontend/315.75fdf809ce9cafd8.js
Normal file
2854
frontend/3rdpartylicenses.txt
Normal file
1
frontend/636.31bce185d86aca35.js
Normal file
BIN
frontend/Roboto-Black.2eaa390d458c877d.woff2
Normal file
BIN
frontend/Roboto-Black.b25f67ad8583da68.woff
Normal file
BIN
frontend/Roboto-BlackItalic.7dc03ee444552bc5.woff2
Normal file
BIN
frontend/Roboto-BlackItalic.c8dc642467cb3099.woff
Normal file
BIN
frontend/Roboto-Bold.447291a88c067396.woff2
Normal file
BIN
frontend/Roboto-Bold.fc482e6133cf5e26.woff
Normal file
BIN
frontend/Roboto-BoldItalic.1b15168ef6fa4e16.woff2
Normal file
BIN
frontend/Roboto-BoldItalic.e26ba339b06f09f7.woff
Normal file
BIN
frontend/Roboto-Light.0e01b6cd13b3857f.woff2
Normal file
BIN
frontend/Roboto-Light.603ca9a537b88428.woff
Normal file
BIN
frontend/Roboto-LightItalic.1b5e142f787151c8.woff
Normal file
BIN
frontend/Roboto-LightItalic.232ef4b20215f720.woff2
Normal file
BIN
frontend/Roboto-Medium.457532032ceb0168.woff2
Normal file
BIN
frontend/Roboto-Medium.6e1ae5f0b324a0aa.woff
Normal file
BIN
frontend/Roboto-MediumItalic.872f7060602d55d2.woff2
Normal file
BIN
frontend/Roboto-MediumItalic.e06fb533801cbb08.woff
Normal file
BIN
frontend/Roboto-Regular.475ba9e4e2d63456.woff2
Normal file
BIN
frontend/Roboto-Regular.bcefbfee882bc1cb.woff
Normal file
BIN
frontend/Roboto-RegularItalic.0668fae6af0cf8c2.woff
Normal file
BIN
frontend/Roboto-RegularItalic.e3a9ebdaac06bbc4.woff2
Normal file
BIN
frontend/Roboto-Thin.c13c157cb81e8ebb.woff
Normal file
BIN
frontend/Roboto-Thin.f7a95c9c5999532c.woff2
Normal file
BIN
frontend/Roboto-ThinItalic.1111028df6cea564.woff
Normal file
BIN
frontend/Roboto-ThinItalic.b0e084abf689f393.woff2
Normal file
1732
frontend/assets/images/RTL-Horse-BY.pdf
Normal file
22
frontend/assets/images/RTL-Horse-BY.svg
Normal file
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="610px" height="524px" viewBox="0 0 610 524" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 63.1 (92452) - https://sketch.com -->
|
||||
<title>RTL-Logo-Single</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<polygon id="path-1" points="0.451852397 0.2573 52.6803 0.2573 52.6803 52 0.451852397 52"></polygon>
|
||||
</defs>
|
||||
<g id="RTL-Logo-Single" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g id="BY_-_RTL_logo_wht" transform="translate(58.000000, 54.000000)">
|
||||
<g id="Group-3" transform="translate(0.000000, 0.737000)" fill="#FFFFFE">
|
||||
<path d="M360.6201,52.8608 C362.5721,57.4638 363.3541,61.1008 363.2471,63.1018 C355.6871,58.5468 344.3161,54.6748 338.1131,53.5648 C334.0751,52.8408 347.2931,49.6338 360.6201,52.8608 M371.6051,222.1978 C373.9431,221.7028 376.2931,221.2298 378.6451,220.7688 C381.1041,220.2858 383.5691,219.8228 386.0431,219.3858 C384.0591,218.1358 382.0681,216.8978 380.0641,215.6788 C354.6091,200.1908 327.4751,187.0398 300.6651,174.3118 C283.7451,166.2788 266.5131,158.2938 248.9661,151.0968 C264.2721,130.9078 283.8701,113.7738 304.8171,99.0968 C304.8351,99.0848 304.9201,99.0258 305.0521,98.9328 C309.6371,105.1898 315.4331,109.4478 318.3391,111.0478 C324.0201,114.1778 331.1751,117.1028 337.7531,117.9968 C350.6891,119.7558 361.3701,119.4848 373.1871,117.4478 C374.2521,117.2648 375.3251,117.1348 376.3931,116.9568 C383.9711,115.6898 388.8201,115.4978 393.2591,115.4148 C399.1381,115.3048 402.0501,116.5498 402.7421,116.7298 C404.8421,117.2728 406.6271,118.1718 407.6191,119.3778 C408.7711,120.8458 410.0021,122.2308 411.3211,123.4988 C415.2771,127.4358 419.2051,129.6158 424.9041,130.2408 C432.2391,131.0448 437.4311,128.1758 441.1021,123.4128 C442.8361,121.1638 442.0011,117.6318 441.8111,116.9388 C440.8481,113.3958 438.6251,108.2418 437.0161,103.4438 C436.5991,102.2038 434.5781,98.3918 432.1461,95.8048 C431.3431,94.9488 430.5351,94.0948 429.7281,93.2418 C425.9511,89.2468 422.1441,85.2818 418.3701,81.2898 C403.3111,65.3718 386.9861,50.7158 370.1561,36.7028 C368.4121,35.2508 366.6651,33.7948 364.9151,32.3418 C363.6461,31.2868 362.3721,30.2378 361.1001,29.1868 C360.4531,28.6528 359.8071,28.1198 359.1581,27.5868 C357.7891,26.4608 356.4161,25.3428 355.0401,24.2258 C354.4971,23.7858 353.9521,23.3488 353.4081,22.9098 C352.5511,22.2198 350.5951,20.5728 348.9481,19.2538 C354.4071,13.8118 358.8121,10.4238 366.6311,5.3008 C367.7521,4.5668 373.7921,1.3448 373.5791,0.5268 C373.4511,0.0328 363.5341,0.1448 352.1711,1.6088 C348.1791,2.1228 325.8041,5.4268 310.4411,8.7748 C294.0871,12.3378 276.8181,17.3188 260.9121,22.3258 C214.9671,36.7898 171.0961,56.3918 130.9221,83.0318 C107.8341,98.3418 86.2221,115.2368 65.3621,133.4398 C55.6411,141.9208 45.9791,150.5378 36.5451,159.3928 C35.0671,160.7798 33.6011,162.1788 32.1351,163.5788 C34.1441,163.9548 36.1521,164.3478 38.1561,164.7598 C54.7691,168.1718 71.2001,172.7318 87.1751,177.2978 C106.7131,182.8818 126.4791,188.9018 145.5921,196.2918 C134.7011,206.6528 124.0761,217.2688 113.9611,228.5028 C94.9141,249.6538 77.1581,271.9988 60.5891,295.1368 C38.9991,325.2848 20.5681,357.7988 4.5021,391.3058 C2.9801,394.4758 1.4761,397.6528 0.0001,400.8388 C2.9721,398.4598 5.9621,396.1018 8.9741,393.7648 C34.9841,373.5938 62.4081,354.9428 89.7891,336.9238 C128.3171,311.5688 169.6651,290.6218 212.5711,273.7668 C264.2991,253.4468 317.1251,233.7338 371.6051,222.1978" id="Fill-1"></path>
|
||||
</g>
|
||||
<g id="Group-24" transform="translate(172.000000, 352.737000)">
|
||||
<mask id="mask-2" fill="white">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-23"></g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
22
frontend/assets/images/RTL-Horse-Dark-BY.svg
Normal file
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="610px" height="524px" viewBox="0 0 610 524" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 63.1 (92452) - https://sketch.com -->
|
||||
<title>RTL-Logo-Single</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<polygon id="path-1" points="0.451852397 0.2573 52.6803 0.2573 52.6803 52 0.451852397 52"></polygon>
|
||||
</defs>
|
||||
<g id="RTL-Logo-Single" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g id="BY_-_RTL_logo_wht" transform="translate(58.000000, 54.000000)">
|
||||
<g id="Group-3" transform="translate(0.000000, 0.737000)" fill="#000001">
|
||||
<path d="M360.6201,52.8608 C362.5721,57.4638 363.3541,61.1008 363.2471,63.1018 C355.6871,58.5468 344.3161,54.6748 338.1131,53.5648 C334.0751,52.8408 347.2931,49.6338 360.6201,52.8608 M371.6051,222.1978 C373.9431,221.7028 376.2931,221.2298 378.6451,220.7688 C381.1041,220.2858 383.5691,219.8228 386.0431,219.3858 C384.0591,218.1358 382.0681,216.8978 380.0641,215.6788 C354.6091,200.1908 327.4751,187.0398 300.6651,174.3118 C283.7451,166.2788 266.5131,158.2938 248.9661,151.0968 C264.2721,130.9078 283.8701,113.7738 304.8171,99.0968 C304.8351,99.0848 304.9201,99.0258 305.0521,98.9328 C309.6371,105.1898 315.4331,109.4478 318.3391,111.0478 C324.0201,114.1778 331.1751,117.1028 337.7531,117.9968 C350.6891,119.7558 361.3701,119.4848 373.1871,117.4478 C374.2521,117.2648 375.3251,117.1348 376.3931,116.9568 C383.9711,115.6898 388.8201,115.4978 393.2591,115.4148 C399.1381,115.3048 402.0501,116.5498 402.7421,116.7298 C404.8421,117.2728 406.6271,118.1718 407.6191,119.3778 C408.7711,120.8458 410.0021,122.2308 411.3211,123.4988 C415.2771,127.4358 419.2051,129.6158 424.9041,130.2408 C432.2391,131.0448 437.4311,128.1758 441.1021,123.4128 C442.8361,121.1638 442.0011,117.6318 441.8111,116.9388 C440.8481,113.3958 438.6251,108.2418 437.0161,103.4438 C436.5991,102.2038 434.5781,98.3918 432.1461,95.8048 C431.3431,94.9488 430.5351,94.0948 429.7281,93.2418 C425.9511,89.2468 422.1441,85.2818 418.3701,81.2898 C403.3111,65.3718 386.9861,50.7158 370.1561,36.7028 C368.4121,35.2508 366.6651,33.7948 364.9151,32.3418 C363.6461,31.2868 362.3721,30.2378 361.1001,29.1868 C360.4531,28.6528 359.8071,28.1198 359.1581,27.5868 C357.7891,26.4608 356.4161,25.3428 355.0401,24.2258 C354.4971,23.7858 353.9521,23.3488 353.4081,22.9098 C352.5511,22.2198 350.5951,20.5728 348.9481,19.2538 C354.4071,13.8118 358.8121,10.4238 366.6311,5.3008 C367.7521,4.5668 373.7921,1.3448 373.5791,0.5268 C373.4511,0.0328 363.5341,0.1448 352.1711,1.6088 C348.1791,2.1228 325.8041,5.4268 310.4411,8.7748 C294.0871,12.3378 276.8181,17.3188 260.9121,22.3258 C214.9671,36.7898 171.0961,56.3918 130.9221,83.0318 C107.8341,98.3418 86.2221,115.2368 65.3621,133.4398 C55.6411,141.9208 45.9791,150.5378 36.5451,159.3928 C35.0671,160.7798 33.6011,162.1788 32.1351,163.5788 C34.1441,163.9548 36.1521,164.3478 38.1561,164.7598 C54.7691,168.1718 71.2001,172.7318 87.1751,177.2978 C106.7131,182.8818 126.4791,188.9018 145.5921,196.2918 C134.7011,206.6528 124.0761,217.2688 113.9611,228.5028 C94.9141,249.6538 77.1581,271.9988 60.5891,295.1368 C38.9991,325.2848 20.5681,357.7988 4.5021,391.3058 C2.9801,394.4758 1.4761,397.6528 0.0001,400.8388 C2.9721,398.4598 5.9621,396.1018 8.9741,393.7648 C34.9841,373.5938 62.4081,354.9428 89.7891,336.9238 C128.3171,311.5688 169.6651,290.6218 212.5711,273.7668 C264.2991,253.4468 317.1251,233.7338 371.6051,222.1978" id="Fill-1"></path>
|
||||
</g>
|
||||
<g id="Group-24" transform="translate(172.000000, 352.737000)">
|
||||
<mask id="mask-2" fill="#000000">
|
||||
<use xlink:href="#path-1"></use>
|
||||
</mask>
|
||||
<g id="Clip-23"></g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
39
frontend/assets/images/RTL-Horse-with-text-BY.svg
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="496.56pt" height="403.737pt" viewBox="0 0 496.56 403.737" version="1.1">
|
||||
<defs>
|
||||
<clipPath id="clip1">
|
||||
<path d="M 461 290 L 496.558594 290 L 496.558594 336 L 461 336 Z M 461 290 "/>
|
||||
</clipPath>
|
||||
<clipPath id="clip2">
|
||||
<path d="M 172 351 L 225 351 L 225 403.738281 L 172 403.738281 Z M 172 351 "/>
|
||||
</clipPath>
|
||||
<clipPath id="clip3">
|
||||
<path d="M 438 351 L 491 351 L 491 403.738281 L 438 403.738281 Z M 438 351 "/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
<g id="surface1">
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 360.621094 52.597656 C 362.570313 57.199219 363.355469 60.835938 363.246094 62.839844 C 355.6875 58.285156 344.316406 54.410156 338.113281 53.300781 C 334.074219 52.578125 347.292969 49.371094 360.621094 52.597656 M 371.605469 221.933594 C 373.941406 221.441406 376.292969 220.96875 378.644531 220.503906 C 381.105469 220.023438 383.570313 219.558594 386.042969 219.121094 C 384.058594 217.871094 382.066406 216.636719 380.0625 215.414063 C 354.609375 199.929688 327.476563 186.777344 300.664063 174.046875 C 283.746094 166.015625 266.511719 158.03125 248.964844 150.832031 C 264.273438 130.644531 283.871094 113.511719 304.816406 98.832031 C 304.835938 98.820313 304.921875 98.761719 305.050781 98.667969 C 309.636719 104.925781 315.433594 109.183594 318.339844 110.785156 C 324.019531 113.914063 331.175781 116.839844 337.753906 117.734375 C 350.6875 119.492188 361.371094 119.222656 373.1875 117.183594 C 374.253906 117 375.324219 116.871094 376.394531 116.695313 C 383.972656 115.425781 388.820313 115.234375 393.257813 115.152344 C 399.136719 115.042969 402.050781 116.285156 402.742188 116.46875 C 404.84375 117.011719 406.628906 117.910156 407.617188 119.113281 C 408.769531 120.582031 410.003906 121.96875 411.320313 123.234375 C 415.277344 127.171875 419.207031 129.351563 424.902344 129.976563 C 432.238281 130.78125 437.429688 127.914063 441.101563 123.148438 C 442.835938 120.902344 442 117.367188 441.8125 116.675781 C 440.847656 113.132813 438.625 107.980469 437.015625 103.179688 C 436.597656 101.941406 434.578125 98.128906 432.144531 95.542969 C 431.34375 94.6875 430.535156 93.832031 429.726563 92.980469 C 425.949219 88.984375 422.144531 85.019531 418.371094 81.027344 C 403.3125 65.109375 386.984375 50.453125 370.15625 36.441406 C 368.410156 34.988281 366.664063 33.53125 364.914063 32.078125 C 363.644531 31.023438 362.371094 29.976563 361.101563 28.921875 C 360.453125 28.390625 359.808594 27.855469 359.15625 27.324219 C 357.789063 26.199219 356.417969 25.078125 355.039063 23.960938 C 354.496094 23.523438 353.953125 23.085938 353.40625 22.648438 C 352.550781 21.957031 350.59375 20.308594 348.949219 18.992188 C 354.40625 13.546875 358.8125 10.160156 366.632813 5.039063 C 367.753906 4.304688 373.792969 1.082031 373.578125 0.265625 C 373.449219 -0.230469 363.535156 -0.117188 352.171875 1.347656 C 348.179688 1.859375 325.804688 5.164063 310.441406 8.511719 C 294.085938 12.074219 276.816406 17.054688 260.910156 22.0625 C 214.96875 36.527344 171.097656 56.128906 130.921875 82.769531 C 107.835938 98.078125 86.222656 114.972656 65.363281 133.175781 C 55.640625 141.65625 45.980469 150.273438 36.546875 159.128906 C 35.066406 160.515625 33.601563 161.914063 32.136719 163.316406 C 34.144531 163.691406 36.152344 164.085938 38.15625 164.496094 C 54.769531 167.910156 71.199219 172.46875 87.175781 177.035156 C 106.714844 182.617188 126.480469 188.640625 145.59375 196.027344 C 134.699219 206.390625 124.074219 217.003906 113.960938 228.238281 C 94.914063 249.390625 77.15625 271.734375 60.589844 294.875 C 39 325.023438 20.566406 357.535156 4.503906 391.042969 C 2.980469 394.210938 1.476563 397.390625 0 400.574219 C 2.972656 398.195313 5.960938 395.839844 8.972656 393.5 C 34.984375 373.332031 62.40625 354.679688 89.789063 336.660156 C 128.316406 311.304688 169.664063 290.359375 212.570313 273.503906 C 264.300781 253.183594 317.125 233.472656 371.605469 221.933594 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 257.601563 306.0625 C 257.03125 309.375 254.542969 311.796875 251.488281 311.796875 L 243.84375 311.796875 L 245.882813 300.332031 L 252.890625 300.332031 C 256.265625 300.332031 258.175781 302.75 257.601563 306.0625 M 267.792969 306.703125 C 268.558594 302.496094 267.601563 298.800781 264.925781 295.621094 C 262.25 292.371094 258.8125 290.777344 254.542969 290.777344 L 237.347656 290.777344 L 229.515625 335.359375 L 239.707031 335.359375 L 242.253906 320.710938 L 247.792969 320.710938 L 253.589844 335.359375 L 263.910156 335.359375 L 257.410156 319.3125 C 262.824219 317.210938 266.710938 312.625 267.792969 306.703125 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 280.019531 335.359375 L 287.851563 290.777344 L 277.664063 290.777344 L 269.828125 335.359375 Z M 280.019531 335.359375 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 322.4375 312.75 C 321.738281 316.636719 320.082031 319.691406 317.40625 322.050781 C 314.730469 324.40625 311.480469 325.550781 307.722656 325.550781 L 300.71875 325.550781 L 305.113281 300.585938 L 312.753906 300.585938 C 319.886719 300.585938 323.773438 305.171875 322.4375 312.75 M 314.476563 290.777344 L 296.640625 290.777344 L 288.808594 335.359375 L 306.640625 335.359375 C 313.074219 335.359375 318.679688 333.324219 323.457031 329.3125 C 328.234375 325.234375 331.164063 320.011719 332.246094 313.707031 C 333.328125 307.402344 332.117188 302.050781 328.550781 297.527344 C 325.046875 293.007813 320.335938 290.777344 314.476563 290.777344 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 348.609375 317.589844 L 364.535156 317.589844 L 366.253906 308.039063 L 350.265625 308.039063 L 351.605469 300.585938 L 369.121094 300.585938 L 370.839844 290.777344 L 343.132813 290.777344 L 335.300781 335.363281 L 363.324219 335.363281 L 365.042969 325.550781 L 347.210938 325.550781 Z M 348.609375 317.589844 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 400.773438 335.359375 L 406.886719 300.585938 L 418.351563 300.585938 L 420.070313 290.777344 L 386.953125 290.777344 L 385.234375 300.585938 L 396.695313 300.585938 L 390.582031 335.359375 Z M 400.773438 335.359375 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 435.863281 290.777344 L 425.671875 290.777344 L 417.839844 335.359375 L 428.03125 335.359375 L 431.148438 317.65625 L 445.164063 317.65625 L 442.042969 335.359375 L 452.230469 335.359375 L 460.066406 290.777344 L 449.875 290.777344 L 446.882813 307.847656 L 432.871094 307.847656 Z M 435.863281 290.777344 "/>
|
||||
<g clip-path="url(#clip1)" clip-rule="nonzero">
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 494.839844 300.585938 L 496.558594 290.777344 L 468.855469 290.777344 L 461.019531 335.359375 L 489.042969 335.359375 L 490.765625 325.550781 L 472.929688 325.550781 L 474.332031 317.589844 L 490.253906 317.589844 L 491.972656 308.039063 L 475.988281 308.039063 L 477.324219 300.585938 Z M 494.839844 300.585938 "/>
|
||||
</g>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 133.351563 352.988281 L 121.980469 352.988281 L 115.15625 391.796875 L 113.238281 402.742188 L 142.378906 402.742188 L 144.296875 391.796875 L 126.527344 391.796875 Z M 133.351563 352.988281 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 148.984375 402.742188 L 160.355469 402.742188 L 169.101563 352.988281 L 157.726563 352.988281 Z M 148.984375 402.742188 "/>
|
||||
<g clip-path="url(#clip2)" clip-rule="nonzero">
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 198.027344 384.972656 L 210.820313 384.972656 C 208.191406 390.089844 203.355469 392.648438 196.25 392.648438 C 191.84375 392.648438 188.503906 391.296875 186.300781 388.597656 C 184.097656 385.898438 183.457031 382.34375 184.238281 377.867188 C 185.019531 373.386719 186.9375 369.832031 189.996094 367.132813 C 193.125 364.433594 196.820313 363.082031 201.15625 363.082031 C 206.628906 363.082031 210.464844 365.214844 212.742188 369.410156 L 223.1875 363.933594 C 219.492188 356.328125 212.242188 351.996094 202.363281 351.996094 C 194.96875 351.996094 188.503906 354.339844 182.960938 359.101563 C 177.484375 363.863281 174.074219 369.832031 172.867188 377.15625 C 171.660156 384.546875 173.082031 390.800781 177.273438 395.992188 C 181.464844 401.179688 187.4375 403.738281 195.113281 403.738281 C 202.503906 403.738281 208.832031 401.605469 214.089844 397.269531 C 219.421875 392.933594 222.691406 386.890625 223.96875 379.285156 L 224.679688 375.023438 L 199.734375 375.023438 Z M 198.027344 384.972656 "/>
|
||||
</g>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 260.285156 372.035156 L 244.648438 372.035156 L 247.992188 352.988281 L 236.617188 352.988281 L 227.878906 402.742188 L 239.25 402.742188 L 242.730469 382.984375 L 258.367188 382.984375 L 254.886719 402.742188 L 266.257813 402.742188 L 275 352.988281 L 263.628906 352.988281 Z M 260.285156 372.035156 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 318.566406 352.988281 L 281.605469 352.988281 L 279.6875 363.933594 L 292.480469 363.933594 L 285.660156 402.742188 L 297.03125 402.742188 L 303.851563 363.933594 L 316.648438 363.933594 Z M 318.566406 352.988281 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 347.988281 380.921875 L 333.703125 352.988281 L 325.175781 352.988281 L 316.429688 402.742188 L 327.800781 402.742188 L 332.777344 374.808594 L 346.992188 402.742188 L 355.523438 402.742188 L 364.265625 352.988281 L 352.890625 352.988281 Z M 347.988281 380.921875 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 365.683594 402.742188 L 377.054688 402.742188 L 385.800781 352.988281 L 374.425781 352.988281 Z M 365.683594 402.742188 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 418.777344 380.921875 L 404.492188 352.988281 L 395.960938 352.988281 L 387.21875 402.742188 L 398.589844 402.742188 L 403.566406 374.808594 L 417.78125 402.742188 L 426.308594 402.742188 L 435.050781 352.988281 L 423.679688 352.988281 Z M 418.777344 380.921875 "/>
|
||||
<g clip-path="url(#clip3)" clip-rule="nonzero">
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 463.980469 384.972656 L 476.773438 384.972656 C 474.144531 390.089844 469.308594 392.648438 462.203125 392.648438 C 457.796875 392.648438 454.457031 391.296875 452.25 388.597656 C 450.046875 385.898438 449.410156 382.34375 450.191406 377.867188 C 450.972656 373.386719 452.890625 369.832031 455.949219 367.132813 C 459.074219 364.433594 462.773438 363.082031 467.105469 363.082031 C 472.578125 363.082031 476.417969 365.214844 478.691406 369.410156 L 489.140625 363.933594 C 485.445313 356.328125 478.195313 351.996094 468.316406 351.996094 C 460.921875 351.996094 454.457031 354.339844 448.910156 359.101563 C 443.4375 363.863281 440.027344 369.832031 438.820313 377.15625 C 437.609375 384.546875 439.03125 390.800781 443.226563 395.992188 C 447.417969 401.179688 453.386719 403.738281 461.066406 403.738281 C 468.457031 403.738281 474.785156 401.605469 480.042969 397.269531 C 485.375 392.933594 488.640625 386.890625 489.921875 379.285156 L 490.632813 375.023438 L 465.683594 375.023438 Z M 463.980469 384.972656 "/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 12 KiB |
BIN
frontend/assets/images/favicon-dark/android-chrome-192x192.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
frontend/assets/images/favicon-dark/android-chrome-512x512.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
frontend/assets/images/favicon-dark/apple-touch-icon.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
9
frontend/assets/images/favicon-dark/browserconfig.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
BIN
frontend/assets/images/favicon-dark/favicon-16x16.png
Normal file
After Width: | Height: | Size: 1009 B |
BIN
frontend/assets/images/favicon-dark/favicon-32x32.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
frontend/assets/images/favicon-dark/favicon.ico
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
frontend/assets/images/favicon-dark/mstile-150x150.png
Normal file
After Width: | Height: | Size: 2.6 KiB |
44
frontend/assets/images/favicon-dark/safari-pinned-tab.svg
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="610.000000pt" height="610.000000pt" viewBox="0 0 610.000000 610.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
<metadata>
|
||||
Created by potrace 1.11, written by Peter Selinger 2001-2013
|
||||
</metadata>
|
||||
<g transform="translate(0.000000,610.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M4167 5114 c-1 -1 -29 -4 -62 -8 -33 -3 -73 -8 -90 -11 -111 -18
|
||||
-172 -29 -260 -46 -96 -19 -117 -23 -214 -49 -24 -7 -51 -13 -60 -15 -33 -6
|
||||
-140 -38 -276 -82 -77 -25 -144 -46 -150 -47 -5 -2 -18 -6 -27 -9 -10 -4 -26
|
||||
-10 -35 -14 -10 -3 -22 -7 -28 -8 -12 -3 -143 -52 -170 -64 -65 -28 -81 -35
|
||||
-90 -37 -50 -12 -570 -269 -595 -294 -3 -3 -21 -14 -40 -24 -19 -11 -75 -46
|
||||
-124 -78 -49 -32 -92 -58 -95 -58 -3 0 -18 -11 -33 -25 -15 -14 -30 -25 -33
|
||||
-25 -6 0 -66 -40 -75 -51 -3 -3 -48 -37 -101 -76 -54 -39 -107 -80 -119 -90
|
||||
-40 -33 -57 -48 -101 -83 -77 -63 -240 -205 -310 -270 -21 -19 -67 -61 -104
|
||||
-94 -36 -32 -65 -62 -65 -66 0 -4 21 -11 48 -15 57 -10 51 -9 135 -30 37 -9
|
||||
73 -18 80 -19 77 -16 589 -165 642 -186 11 -5 61 -23 110 -41 50 -17 93 -34
|
||||
97 -38 5 -4 -41 -55 -100 -113 -112 -111 -168 -169 -262 -278 -30 -35 -60 -68
|
||||
-65 -74 -6 -6 -49 -58 -95 -116 -47 -58 -89 -110 -95 -116 -5 -6 -19 -23 -30
|
||||
-38 -11 -16 -40 -54 -65 -86 -95 -124 -290 -403 -290 -416 0 -3 -11 -20 -25
|
||||
-38 -14 -18 -25 -36 -25 -40 0 -4 -12 -26 -27 -49 -43 -66 -53 -81 -60 -97 -4
|
||||
-8 -16 -31 -28 -50 -12 -19 -44 -78 -72 -130 -28 -52 -60 -112 -71 -132 -12
|
||||
-21 -18 -38 -14 -38 4 0 3 -4 -3 -8 -11 -8 -118 -222 -111 -222 3 0 11 6 18
|
||||
13 10 10 258 195 368 274 58 43 244 170 350 241 63 42 117 80 118 84 2 5 8 8
|
||||
13 8 6 0 36 17 67 39 55 37 163 104 229 142 18 11 50 29 70 41 264 151 619
|
||||
318 953 448 74 28 144 56 155 61 21 9 123 47 285 106 252 92 679 229 770 247
|
||||
14 3 41 10 60 16 19 6 46 13 60 16 14 3 39 9 55 14 17 5 46 12 65 16 19 3 40
|
||||
7 45 8 13 4 75 16 100 21 11 2 30 4 43 4 12 1 22 5 22 10 0 6 -170 110 -255
|
||||
155 -11 6 -28 17 -37 25 -10 8 -18 11 -18 7 0 -3 -17 4 -37 17 -84 51 -698
|
||||
347 -721 347 -5 0 -15 7 -22 15 -7 8 -18 15 -26 15 -7 0 -46 15 -86 34 -40 19
|
||||
-85 38 -100 41 -16 4 -28 11 -28 15 0 5 -7 10 -16 12 -12 2 -10 10 13 35 15
|
||||
18 36 42 45 54 77 98 311 309 451 406 l38 26 29 -35 c58 -70 187 -138 297
|
||||
-155 91 -14 375 -5 405 13 17 11 198 12 233 3 23 -7 57 -29 83 -55 56 -56 93
|
||||
-75 156 -81 99 -8 172 47 162 122 -7 56 -58 176 -93 216 -91 107 -442 446
|
||||
-563 545 -19 16 -40 33 -46 39 -6 5 -30 26 -55 47 -24 20 -72 60 -107 88 l-63
|
||||
52 33 30 c47 43 154 118 167 118 6 0 11 4 11 8 0 5 10 14 23 20 18 9 7 11 -56
|
||||
9 -43 0 -79 -2 -80 -3z m10 -516 c12 -1 39 -85 30 -94 -3 -3 -22 3 -44 14 -45
|
||||
23 -160 63 -185 65 -28 2 -21 15 10 19 24 4 157 1 189 -4z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.7 KiB |
19
frontend/assets/images/favicon-dark/site.webmanifest
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "",
|
||||
"short_name": "",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/rtl/assets/images/favicon-dark/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/rtl/assets/images/favicon-dark/android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
BIN
frontend/assets/images/favicon-light/android-chrome-192x192.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
frontend/assets/images/favicon-light/android-chrome-512x512.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
frontend/assets/images/favicon-light/apple-touch-icon.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
9
frontend/assets/images/favicon-light/browserconfig.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
BIN
frontend/assets/images/favicon-light/favicon-16x16.png
Normal file
After Width: | Height: | Size: 992 B |
BIN
frontend/assets/images/favicon-light/favicon-32x32.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
frontend/assets/images/favicon-light/favicon.ico
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
frontend/assets/images/favicon-light/mstile-150x150.png
Normal file
After Width: | Height: | Size: 2.6 KiB |
44
frontend/assets/images/favicon-light/safari-pinned-tab.svg
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="610.000000pt" height="610.000000pt" viewBox="0 0 610.000000 610.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
<metadata>
|
||||
Created by potrace 1.11, written by Peter Selinger 2001-2013
|
||||
</metadata>
|
||||
<g transform="translate(0.000000,610.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M4167 5114 c-1 -1 -29 -4 -62 -8 -33 -3 -73 -8 -90 -11 -111 -18
|
||||
-172 -29 -260 -46 -96 -19 -117 -23 -214 -49 -24 -7 -51 -13 -60 -15 -33 -6
|
||||
-140 -38 -276 -82 -77 -25 -144 -46 -150 -47 -5 -2 -18 -6 -27 -9 -10 -4 -26
|
||||
-10 -35 -14 -10 -3 -22 -7 -28 -8 -12 -3 -143 -52 -170 -64 -65 -28 -81 -35
|
||||
-90 -37 -50 -12 -570 -269 -595 -294 -3 -3 -21 -14 -40 -24 -19 -11 -75 -46
|
||||
-124 -78 -49 -32 -92 -58 -95 -58 -3 0 -18 -11 -33 -25 -15 -14 -30 -25 -33
|
||||
-25 -6 0 -66 -40 -75 -51 -3 -3 -48 -37 -101 -76 -54 -39 -107 -80 -119 -90
|
||||
-40 -33 -57 -48 -101 -83 -77 -63 -240 -205 -310 -270 -21 -19 -67 -61 -104
|
||||
-94 -36 -32 -65 -62 -65 -66 0 -4 21 -11 48 -15 57 -10 51 -9 135 -30 37 -9
|
||||
73 -18 80 -19 77 -16 589 -165 642 -186 11 -5 61 -23 110 -41 50 -17 93 -34
|
||||
97 -38 5 -4 -41 -55 -100 -113 -112 -111 -168 -169 -262 -278 -30 -35 -60 -68
|
||||
-65 -74 -6 -6 -49 -58 -95 -116 -47 -58 -89 -110 -95 -116 -5 -6 -19 -23 -30
|
||||
-38 -11 -16 -40 -54 -65 -86 -95 -124 -290 -403 -290 -416 0 -3 -11 -20 -25
|
||||
-38 -14 -18 -25 -36 -25 -40 0 -4 -12 -26 -27 -49 -43 -66 -53 -81 -60 -97 -4
|
||||
-8 -16 -31 -28 -50 -12 -19 -44 -78 -72 -130 -28 -52 -60 -112 -71 -132 -12
|
||||
-21 -18 -38 -14 -38 4 0 3 -4 -3 -8 -11 -8 -118 -222 -111 -222 3 0 11 6 18
|
||||
13 10 10 258 195 368 274 58 43 244 170 350 241 63 42 117 80 118 84 2 5 8 8
|
||||
13 8 6 0 36 17 67 39 55 37 163 104 229 142 18 11 50 29 70 41 264 151 619
|
||||
318 953 448 74 28 144 56 155 61 21 9 123 47 285 106 252 92 679 229 770 247
|
||||
14 3 41 10 60 16 19 6 46 13 60 16 14 3 39 9 55 14 17 5 46 12 65 16 19 3 40
|
||||
7 45 8 13 4 75 16 100 21 11 2 30 4 43 4 12 1 22 5 22 10 0 6 -170 110 -255
|
||||
155 -11 6 -28 17 -37 25 -10 8 -18 11 -18 7 0 -3 -17 4 -37 17 -84 51 -698
|
||||
347 -721 347 -5 0 -15 7 -22 15 -7 8 -18 15 -26 15 -7 0 -46 15 -86 34 -40 19
|
||||
-85 38 -100 41 -16 4 -28 11 -28 15 0 5 -7 10 -16 12 -12 2 -10 10 13 35 15
|
||||
18 36 42 45 54 77 98 311 309 451 406 l38 26 29 -35 c58 -70 187 -138 297
|
||||
-155 91 -14 375 -5 405 13 17 11 198 12 233 3 23 -7 57 -29 83 -55 56 -56 93
|
||||
-75 156 -81 99 -8 172 47 162 122 -7 56 -58 176 -93 216 -91 107 -442 446
|
||||
-563 545 -19 16 -40 33 -46 39 -6 5 -30 26 -55 47 -24 20 -72 60 -107 88 l-63
|
||||
52 33 30 c47 43 154 118 167 118 6 0 11 4 11 8 0 5 10 14 23 20 18 9 7 11 -56
|
||||
9 -43 0 -79 -2 -80 -3z m10 -516 c12 -1 39 -85 30 -94 -3 -3 -22 3 -44 14 -45
|
||||
23 -160 63 -185 65 -28 2 -21 15 10 19 24 4 157 1 189 -4z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.7 KiB |
19
frontend/assets/images/favicon-light/site.webmanifest
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "",
|
||||
"short_name": "",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/rtl/assets/images/favicon-light/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/rtl/assets/images/favicon-light/android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
18
frontend/index.html
Normal file
@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html><html lang="en"><head>
|
||||
<meta charset="utf-8">
|
||||
<title>RTL</title>
|
||||
<base href="/rtl/">
|
||||
<meta i18n-content="" name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link i18n-sizes="" i18n-rel="" rel="apple-touch-icon" sizes="180x180" href="assets/images/favicon-light/apple-touch-icon.png">
|
||||
<link i18n-sizes="" i18n-rel="" rel="icon" type="image/png" sizes="32x32" href="assets/images/favicon-light/favicon-32x32.png">
|
||||
<link i18n-sizes="" i18n-rel="" rel="icon" type="image/png" sizes="16x16" href="assets/images/favicon-light/favicon-16x16.png">
|
||||
<link i18n-rel="" rel="manifest" href="assets/images/favicon-light/site.webmanifest">
|
||||
<link i18n-rel="" rel="mask-icon" href="assets/images/favicon-light/safari-pinned-tab.svg" color="#5bbad5">
|
||||
<meta i18n-content="" name="msapplication-TileColor" content="#da532c">
|
||||
<meta i18n-content="" name="theme-color" content="#ffffff">
|
||||
<style>html{width:100%;height:99%;line-height:1.5;overflow-x:hidden;font-family:Roboto,sans-serif!important;font-size:95%}@media only screen and (max-width: 56.25em){html{font-size:90%}}@media only screen and (max-width: 37.5em){html{font-size:80%}}body{box-sizing:border-box;height:100%;margin:0;overflow:hidden}*{margin:0;padding:0}@font-face{font-family:Roboto;src:url(Roboto-Thin.f7a95c9c5999532c.woff2) format("woff2"),url(Roboto-Thin.c13c157cb81e8ebb.woff) format("woff");font-weight:100;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-ThinItalic.b0e084abf689f393.woff2) format("woff2"),url(Roboto-ThinItalic.1111028df6cea564.woff) format("woff");font-weight:100;font-style:italic}@font-face{font-family:Roboto;src:url(Roboto-Light.0e01b6cd13b3857f.woff2) format("woff2"),url(Roboto-Light.603ca9a537b88428.woff) format("woff");font-weight:300;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-LightItalic.232ef4b20215f720.woff2) format("woff2"),url(Roboto-LightItalic.1b5e142f787151c8.woff) format("woff");font-weight:300;font-style:italic}@font-face{font-family:Roboto;src:url(Roboto-Regular.475ba9e4e2d63456.woff2) format("woff2"),url(Roboto-Regular.bcefbfee882bc1cb.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-RegularItalic.e3a9ebdaac06bbc4.woff2) format("woff2"),url(Roboto-RegularItalic.0668fae6af0cf8c2.woff) format("woff");font-weight:400;font-style:italic}@font-face{font-family:Roboto;src:url(Roboto-Medium.457532032ceb0168.woff2) format("woff2"),url(Roboto-Medium.6e1ae5f0b324a0aa.woff) format("woff");font-weight:500;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-MediumItalic.872f7060602d55d2.woff2) format("woff2"),url(Roboto-MediumItalic.e06fb533801cbb08.woff) format("woff");font-weight:500;font-style:italic}@font-face{font-family:Roboto;src:url(Roboto-Bold.447291a88c067396.woff2) format("woff2"),url(Roboto-Bold.fc482e6133cf5e26.woff) format("woff");font-weight:700;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-BoldItalic.1b15168ef6fa4e16.woff2) format("woff2"),url(Roboto-BoldItalic.e26ba339b06f09f7.woff) format("woff");font-weight:700;font-style:italic}@font-face{font-family:Roboto;src:url(Roboto-Black.2eaa390d458c877d.woff2) format("woff2"),url(Roboto-Black.b25f67ad8583da68.woff) format("woff");font-weight:900;font-style:normal}@font-face{font-family:Roboto;src:url(Roboto-BlackItalic.7dc03ee444552bc5.woff2) format("woff2"),url(Roboto-BlackItalic.c8dc642467cb3099.woff) format("woff");font-weight:900;font-style:italic}</style><link rel="stylesheet" href="styles.40cd0dae59c4a141.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles.40cd0dae59c4a141.css"></noscript></head>
|
||||
<body>
|
||||
<rtl-app></rtl-app>
|
||||
<script src="runtime.a9603b100d6d0345.js" type="module"></script><script src="polyfills.aa01d8f6b94657cb.js" type="module"></script><script src="main.d63ccf42df577353.js" type="module"></script>
|
||||
|
||||
</body></html>
|
1
frontend/main.d63ccf42df577353.js
Normal file
BIN
frontend/material-icons-outlined.78a93b2079680a08.woff
Normal file
BIN
frontend/material-icons-outlined.f86cb7b0aa53f0fe.woff2
Normal file
BIN
frontend/material-icons-round.92dc7ca2f4c591e7.woff
Normal file
BIN
frontend/material-icons-round.b10ec9db5b7fbc74.woff2
Normal file
BIN
frontend/material-icons-sharp.3885863ee4746422.woff2
Normal file
BIN
frontend/material-icons-sharp.a71cb2bf66c604de.woff
Normal file
BIN
frontend/material-icons-two-tone.588d63134de807a7.woff
Normal file
BIN
frontend/material-icons-two-tone.675bd578bd14533e.woff2
Normal file
BIN
frontend/material-icons.4ad034d2c499d9b6.woff
Normal file
BIN
frontend/material-icons.59322316b3fd6063.woff2
Normal file
1
frontend/polyfills.aa01d8f6b94657cb.js
Normal file
1
frontend/runtime.a9603b100d6d0345.js
Normal file
@ -0,0 +1 @@
|
||||
(()=>{"use strict";var e,v={},m={};function r(e){var f=m[e];if(void 0!==f)return f.exports;var t=m[e]={id:e,loaded:!1,exports:{}};return v[e].call(t.exports,t,t.exports,r),t.loaded=!0,t.exports}r.m=v,e=[],r.O=(f,t,i,o)=>{if(!t){var a=1/0;for(n=0;n<e.length;n++){for(var[t,i,o]=e[n],c=!0,l=0;l<t.length;l++)(!1&o||a>=o)&&Object.keys(r.O).every(b=>r.O[b](t[l]))?t.splice(l--,1):(c=!1,o<a&&(a=o));if(c){e.splice(n--,1);var d=i();void 0!==d&&(f=d)}}return f}o=o||0;for(var n=e.length;n>0&&e[n-1][2]>o;n--)e[n]=e[n-1];e[n]=[t,i,o]},r.d=(e,f)=>{for(var t in f)r.o(f,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:f[t]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((f,t)=>(r.f[t](e,f),f),[])),r.u=e=>e+"."+{167:"b8e9be471e438940",267:"3050ada6a6d9afd8",315:"75fdf809ce9cafd8",636:"31bce185d86aca35"}[e]+".js",r.miniCssF=e=>{},r.o=(e,f)=>Object.prototype.hasOwnProperty.call(e,f),(()=>{var e={},f="RTLApp:";r.l=(t,i,o,n)=>{if(e[t])e[t].push(i);else{var a,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),d=0;d<l.length;d++){var u=l[d];if(u.getAttribute("src")==t||u.getAttribute("data-webpack")==f+o){a=u;break}}a||(c=!0,(a=document.createElement("script")).type="module",a.charset="utf-8",a.timeout=120,r.nc&&a.setAttribute("nonce",r.nc),a.setAttribute("data-webpack",f+o),a.src=r.tu(t)),e[t]=[i];var s=(g,b)=>{a.onerror=a.onload=null,clearTimeout(p);var h=e[t];if(delete e[t],a.parentNode&&a.parentNode.removeChild(a),h&&h.forEach(y=>y(b)),g)return g(b)},p=setTimeout(s.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=s.bind(null,a.onerror),a.onload=s.bind(null,a.onload),c&&document.head.appendChild(a)}}})(),r.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;r.tt=()=>(void 0===e&&(e={createScriptURL:f=>f},typeof trustedTypes<"u"&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("angular#bundler",e))),e)})(),r.tu=e=>r.tt().createScriptURL(e),r.p="",(()=>{var e={666:0};r.f.j=(i,o)=>{var n=r.o(e,i)?e[i]:void 0;if(0!==n)if(n)o.push(n[2]);else if(666!=i){var a=new Promise((u,s)=>n=e[i]=[u,s]);o.push(n[2]=a);var c=r.p+r.u(i),l=new Error;r.l(c,u=>{if(r.o(e,i)&&(0!==(n=e[i])&&(e[i]=void 0),n)){var s=u&&("load"===u.type?"missing":u.type),p=u&&u.target&&u.target.src;l.message="Loading chunk "+i+" failed.\n("+s+": "+p+")",l.name="ChunkLoadError",l.type=s,l.request=p,n[1](l)}},"chunk-"+i,i)}else e[i]=0},r.O.j=i=>0===e[i];var f=(i,o)=>{var l,d,[n,a,c]=o,u=0;if(n.some(p=>0!==e[p])){for(l in a)r.o(a,l)&&(r.m[l]=a[l]);if(c)var s=c(r)}for(i&&i(o);u<n.length;u++)r.o(e,d=n[u])&&e[d]&&e[d][0](),e[d]=0;return r.O(s)},t=self.webpackChunkRTLApp=self.webpackChunkRTLApp||[];t.forEach(f.bind(null,0)),t.push=f.bind(null,t.push.bind(t))})()})();
|
1
frontend/styles.40cd0dae59c4a141.css
Normal file
2
rtl.js
@ -39,7 +39,7 @@ const onListening = () => {
|
||||
logger.log({ level: 'INFO', fileName: 'RTL', msg: 'Server is up and running, please open the UI at http://' + ((common.host && common.host !== '') ? common.host : 'localhost') + ':' + common.port + ' or your proxy configured url' });
|
||||
};
|
||||
|
||||
let server = http.createServer(app.getApp());
|
||||
const server = http.createServer(app.getApp());
|
||||
|
||||
server.on('error', onError);
|
||||
server.on('listening', onListening);
|
||||
|
@ -13,7 +13,6 @@ import { routing } from './app.routing';
|
||||
import { SharedModule } from './shared/shared.module';
|
||||
import { AppComponent } from './app.component';
|
||||
|
||||
import { AuthGuard } from './shared/services/auth.guard';
|
||||
import { AuthInterceptor } from './shared/services/auth.interceptor';
|
||||
import { SessionService } from './shared/services/session.service';
|
||||
import { LoopService } from './shared/services/loop.service';
|
||||
@ -32,8 +31,8 @@ import { CLNReducer } from './cln/store/cln.reducers';
|
||||
import { ECLReducer } from './eclair/store/ecl.reducers';
|
||||
import { HOUR_SECONDS } from './shared/services/consts-enums-functions';
|
||||
|
||||
let isDevEnvironemt = false;
|
||||
if (isDevMode()) { isDevEnvironemt = true; }
|
||||
let isDevEnvironment = false;
|
||||
if (isDevMode()) { isDevEnvironment = true; }
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
@ -52,7 +51,7 @@ if (isDevMode()) { isDevEnvironemt = true; }
|
||||
}
|
||||
}),
|
||||
EffectsModule.forRoot([RTLEffects, LNDEffects, CLNEffects, ECLEffects]),
|
||||
isDevEnvironemt ? StoreDevtoolsModule.instrument() : []
|
||||
isDevEnvironment ? StoreDevtoolsModule.instrument() : []
|
||||
],
|
||||
declarations: [AppComponent],
|
||||
providers: [
|
||||
|
@ -60,8 +60,6 @@ import { CLNLiquidityAdsListComponent } from './liquidity-ads/liquidity-ads-list
|
||||
import { CLNOpenLiquidityChannelComponent } from './liquidity-ads/open-liquidity-channel-modal/open-liquidity-channel-modal.component';
|
||||
import { CLNChannelActiveHTLCsTableComponent } from './peers-channels/channels/channels-tables/channel-active-htlcs-table/channel-active-htlcs-table.component';
|
||||
|
||||
import { CLNUnlockedGuard } from '../shared/services/auth.guard';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
|
@ -13,7 +13,10 @@ import { SessionService } from '../../shared/services/session.service';
|
||||
import { WebSocketClientService } from '../../shared/services/web-socket.service';
|
||||
import { ErrorMessageComponent } from '../../shared/components/data-modal/error-message/error-message.component';
|
||||
import { CLNInvoiceInformationComponent } from '../transactions/invoices/invoice-information-modal/invoice-information.component';
|
||||
import { GetInfo, Fees, Balance, LocalRemoteBalance, Payment, FeeRates, ListInvoices, Invoice, Peer, OnChain, QueryRoutes, SaveChannel, GetNewAddress, DetachPeer, UpdateChannel, CloseChannel, SendPayment, GetQueryRoutes, ChannelLookup, FetchInvoices, Channel, OfferInvoice, Offer, ActiveSwap, Swap } from '../../shared/models/clnModels';
|
||||
import { GetInfo, Fees, Balance, LocalRemoteBalance, Payment, FeeRates, ListInvoices,
|
||||
Invoice, Peer, OnChain, QueryRoutes, SaveChannel, GetNewAddress, DetachPeer,
|
||||
UpdateChannel, CloseChannel, SendPayment, GetQueryRoutes, ChannelLookup, FetchInvoices,
|
||||
Channel, OfferInvoice, Offer, ActiveSwap, Swap } from '../../shared/models/clnModels';
|
||||
import { API_URL, API_END_POINTS, AlertTypeEnum, APICallStatusEnum, UI_MESSAGES, CLNWSEventTypeEnum, CLNActions, RTLActions, CLNForwardingEventsStatusEnum, DataTypeEnum, SwapTypeEnum } from '../../shared/services/consts-enums-functions';
|
||||
import { closeAllDialogs, closeSpinner, logout, openAlert, openSnackBar, openSpinner, setApiUrl, setNodeData } from '../../store/rtl.actions';
|
||||
|
||||
@ -1066,10 +1069,9 @@ export class CLNEffects implements OnDestroy {
|
||||
}), catchError((err: any) => {
|
||||
this.handleErrorWithoutAlert('PeerswapSwapout', UI_MESSAGES.PEERSWAP_SWAPOUT, 'Swapout Failed.', err);
|
||||
return of({ type: RTLActions.VOID });
|
||||
}))
|
||||
}));
|
||||
})
|
||||
));
|
||||
|
||||
|
||||
pageSettingsFetchCL = createEffect(() => this.actions.pipe(
|
||||
ofType(CLNActions.FETCH_PAGE_SETTINGS_CLN),
|
||||
@ -1127,30 +1129,6 @@ export class CLNEffects implements OnDestroy {
|
||||
})
|
||||
));
|
||||
|
||||
reorderedSwapResponse(swapRes: Swap) {
|
||||
const reorderedSwap = [
|
||||
[{ key: 'id', value: swapRes.id, title: 'Swap Id', width: 100, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'state', value: this.swapStatePipe.transform(swapRes.state || ''), title: 'State', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'role', value: this.titleCasePipe.transform(swapRes.role), title: 'Role', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'alias', value: swapRes.alias, title: 'Alias', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'short_channel_id', value: swapRes.short_channel_id, title: 'Short Channel ID', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'amount', value: this.decimalPipe.transform(swapRes.amount), title: 'Amount (Sats)', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'created_at', value: this.datePipe.transform(new Date(swapRes.created_at || ''), 'dd/MMM/YYYY HH:mm'), title: 'Created At', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'peer_node_id', value: swapRes.peer_node_id, title: 'Peer Node Id', width: 100, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'initiator_node_id', value: swapRes.initiator_node_id, title: 'Initiator Node Id', width: 100, type: DataTypeEnum.STRING }]
|
||||
];
|
||||
if (swapRes.opening_tx_id) {
|
||||
reorderedSwap.push([{ key: 'opening_tx_id', value: swapRes.opening_tx_id, title: 'Opening Transaction Id', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
if (swapRes.claim_tx_id) {
|
||||
reorderedSwap.push([{ key: 'claim_tx_id', value: swapRes.claim_tx_id, title: 'Claim Transaction Id', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
if (swapRes.cancel_message) {
|
||||
reorderedSwap.push([{ key: 'cancel_message', value: swapRes.cancel_message, title: 'Cancel Message', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
return reorderedSwap;
|
||||
}
|
||||
|
||||
savePageSettingsCL = createEffect(() => this.actions.pipe(
|
||||
ofType(CLNActions.SAVE_PAGE_SETTINGS_CLN),
|
||||
mergeMap((action: { type: string, payload: any }) => {
|
||||
@ -1176,6 +1154,30 @@ export class CLNEffects implements OnDestroy {
|
||||
})
|
||||
));
|
||||
|
||||
reorderedSwapResponse(swapRes: Swap) {
|
||||
const reorderedSwap = [
|
||||
[{ key: 'id', value: swapRes.id, title: 'Swap Id', width: 100, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'state', value: this.swapStatePipe.transform(swapRes.state || ''), title: 'State', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'role', value: this.titleCasePipe.transform(swapRes.role), title: 'Role', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'alias', value: swapRes.alias, title: 'Alias', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'short_channel_id', value: swapRes.short_channel_id, title: 'Short Channel ID', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'amount', value: this.decimalPipe.transform(swapRes.amount), title: 'Amount (Sats)', width: 50, type: DataTypeEnum.STRING },
|
||||
{ key: 'created_at', value: this.datePipe.transform(new Date(swapRes.created_at || ''), 'dd/MMM/YYYY HH:mm'), title: 'Created At', width: 50, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'peer_node_id', value: swapRes.peer_node_id, title: 'Peer Node Id', width: 100, type: DataTypeEnum.STRING }],
|
||||
[{ key: 'initiator_node_id', value: swapRes.initiator_node_id, title: 'Initiator Node Id', width: 100, type: DataTypeEnum.STRING }]
|
||||
];
|
||||
if (swapRes.opening_tx_id) {
|
||||
reorderedSwap.push([{ key: 'opening_tx_id', value: swapRes.opening_tx_id, title: 'Opening Transaction Id', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
if (swapRes.claim_tx_id) {
|
||||
reorderedSwap.push([{ key: 'claim_tx_id', value: swapRes.claim_tx_id, title: 'Claim Transaction Id', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
if (swapRes.cancel_message) {
|
||||
reorderedSwap.push([{ key: 'cancel_message', value: swapRes.cancel_message, title: 'Cancel Message', width: 100, type: DataTypeEnum.STRING }]);
|
||||
}
|
||||
return reorderedSwap;
|
||||
}
|
||||
|
||||
initializeRemainingData(info: any, landingPage: string) {
|
||||
this.sessionService.setItem('clnUnlocked', 'true');
|
||||
const node_data = {
|
||||
|
@ -46,8 +46,6 @@ import { ECLCreateInvoiceComponent } from './transactions/create-invoice-modal/c
|
||||
import { ECLOnChainSendModalComponent } from './on-chain/on-chain-send-modal/on-chain-send-modal.component';
|
||||
import { ECLChannelInformationComponent } from './peers-channels/channels/channel-information-modal/channel-information.component';
|
||||
|
||||
import { ECLUnlockedGuard } from '../shared/services/auth.guard';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
|
@ -66,8 +66,6 @@ import { LightningSendPaymentsComponent } from './transactions/send-payment-moda
|
||||
import { CreateInvoiceComponent } from './transactions/create-invoice-modal/create-invoice.component';
|
||||
import { ConnectPeerComponent } from './peers-channels/connect-peer/connect-peer.component';
|
||||
|
||||
import { LNDUnlockedGuard } from '../shared/services/auth.guard';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
|
@ -1,14 +1,14 @@
|
||||
<div fxLayout="column" fxFlex="100">
|
||||
<div fxFlex="100" class="alert alert-info mt-1">
|
||||
<fa-icon [icon]="faInfoCircle" class="mr-1 alert-icon"></fa-icon>
|
||||
<fa-icon class="mr-1 alert-icon" [icon]="faInfoCircle"></fa-icon>
|
||||
<span>Please ensure that <strong>peerswap plugin</strong> is running and accessible to RTL before enabling this service. Click <strong><a href="https://www.peerswap.dev/" target="_blank">here</a></strong> to learn more about peerswap.</span>
|
||||
</div>
|
||||
<div fxLayout="column" fxFlex="100" fxLayoutAlign="start stretch" class="settings-container page-sub-title-container">
|
||||
<mat-slide-toggle autoFocus class="my-1" tabindex="1" color="primary" [(ngModel)]="enablePeerswap" (change)="onUpdateService()" name="peerswap">Enable Peerswap Service</mat-slide-toggle>
|
||||
<mat-slide-toggle autoFocus class="my-1" tabindex="1" color="primary" name="peerswap" [(ngModel)]="enablePeerswap" (change)="onUpdateService()">Enable Peerswap Service</mat-slide-toggle>
|
||||
<div *ngIf="enablePeerswap && reloadPolicyError !== ''" class="padding-gap-large error-border">
|
||||
<div fxLayout="row">
|
||||
<div fxFlex="100" class="alert alert-danger mt-1">
|
||||
<fa-icon [icon]="faExclamationTriangle" class="mr-1 alert-icon"></fa-icon>
|
||||
<fa-icon class="mr-1 alert-icon" [icon]="faExclamationTriangle"></fa-icon>
|
||||
<span>{{reloadPolicyError}}</span>
|
||||
</div>
|
||||
</div>
|
||||
@ -20,20 +20,20 @@
|
||||
<span class="foreground-secondary-text">{{reloadPolicy?.AcceptAllPeers ? 'Yes' : 'No'}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<mat-divider [inset]="true" class="my-1"></mat-divider>
|
||||
<mat-divider class="my-1" [inset]="true"></mat-divider>
|
||||
<div fxLayout="row">
|
||||
<div fxFlex="100">
|
||||
<h4 fxLayoutAlign="start" class="font-bold-500">Onchain Reserve (Sats)</h4>
|
||||
<span class="foreground-secondary-text">{{reloadPolicy?.ReserveOnchainMsat / 1000 | number}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<mat-divider [inset]="true" class="my-1"></mat-divider>
|
||||
<mat-divider class="my-1" [inset]="true"></mat-divider>
|
||||
<div fxLayout="row">
|
||||
<div fxFlex="100">
|
||||
<ng-container [ngTemplateOutlet]="listExpansionPanel" [ngTemplateOutletContext]="{$implicit: dataForSuspiciousList}"></ng-container>
|
||||
</div>
|
||||
</div>
|
||||
<mat-divider [inset]="true" class="my-1"></mat-divider>
|
||||
<mat-divider class="my-1" [inset]="true"></mat-divider>
|
||||
<div fxLayout="row">
|
||||
<div fxFlex="100">
|
||||
<ng-container [ngTemplateOutlet]="listExpansionPanel" [ngTemplateOutletContext]="{$implicit: dataForAllowedList}"></ng-container>
|
||||
@ -52,7 +52,7 @@
|
||||
<div *ngIf="listPeers.addRemoveError !== ''" class="padding-gap error-border">
|
||||
<div fxLayout="row">
|
||||
<div fxFlex="100" class="alert alert-danger mt-1">
|
||||
<fa-icon [icon]="faExclamationTriangle" class="mr-1 alert-icon"></fa-icon>
|
||||
<fa-icon class="mr-1 alert-icon" [icon]="faExclamationTriangle"></fa-icon>
|
||||
<span>{{listPeers.addRemoveError}}</span>
|
||||
</div>
|
||||
</div>
|
||||
@ -60,7 +60,7 @@
|
||||
<div>
|
||||
<mat-card *ngFor="let peer of reloadPolicy?.[listPeers.dataSource]" fxLayout="row" fxLayoutAlign="start center" class="peer-card">
|
||||
<div fxLayoutAlign="center center">
|
||||
<button mat-icon-button color="primary" (click)="onRemovePeer(peer, listPeers.list)" class="mr-1" [matTooltip]="'Remove peer from ' + listPeers.title + ' list'" matTooltipPosition="below">
|
||||
<button mat-icon-button color="primary" class="mr-1" matTooltipPosition="below" [matTooltip]="'Remove peer from ' + listPeers.title + ' list'" (click)="onRemovePeer(peer, listPeers.list)">
|
||||
<mat-icon>remove_circle_outline</mat-icon>
|
||||
</button>
|
||||
</div>
|
||||
@ -68,13 +68,13 @@
|
||||
</mat-card>
|
||||
|
||||
<mat-card fxLayout="row" fxLayoutAlign="start center" class="peer-card" >
|
||||
<div fxLayoutAlign="center center" [matTooltip]="'Add peer to ' + listPeers.title + ' list'" matTooltipPosition="below">
|
||||
<button mat-icon-button color="primary" [disabled]="!listPeers.ngModelVar || listPeers.ngModelVar === '' || listPeers.ngModelVar?.length < 50" (click)="onAddPeer(listPeers.ngModelVar, listPeers.list)" class="mr-1">
|
||||
<div fxLayoutAlign="center center" matTooltipPosition="below" [matTooltip]="'Add peer to ' + listPeers.title + ' list'">
|
||||
<button mat-icon-button color="primary" class="mr-1" [disabled]="!listPeers.ngModelVar || listPeers.ngModelVar === '' || listPeers.ngModelVar?.length < 50" (click)="onAddPeer(listPeers.ngModelVar, listPeers.list)">
|
||||
<mat-icon>add_circle_outline</mat-icon>
|
||||
</button>
|
||||
</div>
|
||||
<mat-form-field fxLayoutAlign="start stretch" fxFlex="50" class="mt-5px">
|
||||
<input matInput placeholder="Node Id" [(ngModel)]="listPeers.ngModelVar" name="nodeId" tabindex="4">
|
||||
<input matInput placeholder="Node Id" name="nodeId" tabindex="4" [(ngModel)]="listPeers.ngModelVar">
|
||||
</mat-form-field>
|
||||
</mat-card>
|
||||
</div>
|
||||
|
@ -24,8 +24,6 @@ export class ServicesSettingsComponent implements OnInit, OnDestroy {
|
||||
constructor(private store: Store<RTLState>, private router: Router, private activatedRoute: ActivatedRoute) {}
|
||||
|
||||
ngOnInit() {
|
||||
this.router.routeReuseStrategy.shouldReuseRoute = () => false;
|
||||
this.router.onSameUrlNavigation = 'ignore';
|
||||
const linkFound = this.links.find((link) => this.router.url.includes(link.link));
|
||||
if (linkFound) { this.activeLink = linkFound.link; }
|
||||
this.router.events.pipe(takeUntil(this.unSubs[0]), filter((e) => e instanceof ResolveEnd)).
|
||||
|
@ -395,7 +395,7 @@ export class DataService implements OnDestroy {
|
||||
);
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
circularRebalance(amountMSat: number, sourceShortChannelId: string = '', sourceNodeId: string = '', targetShortChannelId: string = '', targetNodeId: string = '', ignoreNodeIds: string[] = [], format: string = 'shortChannelId') {
|
||||
const url = this.APIUrl + '/' + this.lnImplementation + API_END_POINTS.CHANNELS_API + '/circularRebalance';
|
||||
const reqBody = { amountMsat: amountMSat, sourceShortChannelId: sourceShortChannelId, sourceNodeId: sourceNodeId, targetShortChannelId: targetShortChannelId, targetNodeId: targetNodeId, ignoreNodeIds: ignoreNodeIds, format: format };
|
||||
|
@ -8,6 +8,7 @@
|
||||
"./polyfills.ts"
|
||||
],
|
||||
"include": [
|
||||
"./src/**/*",
|
||||
"./polyfills.ts",
|
||||
"./**/*.d.ts"
|
||||
]
|
||||
|
@ -34,6 +34,10 @@
|
||||
"include": [
|
||||
"./server/**/*"
|
||||
],
|
||||
"exclude": [
|
||||
"typings/*",
|
||||
"node_modules"
|
||||
],
|
||||
"angularCompilerOptions": {
|
||||
"enableI18nLegacyMessageIdFormat": false,
|
||||
"strictInjectionParameters": true,
|
||||
|