Add eslint & prettier, format index.ts

This commit is contained in:
folex
2020-12-01 21:15:40 +03:00
parent 427ef2ced7
commit b0fc1c5715
7 changed files with 1046 additions and 153 deletions

24
.eslintrc.js Normal file
View File

@@ -0,0 +1,24 @@
module.exports = {
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 12,
sourceType: "module", // Allows for the use of imports
},
env: {
browser: true,
es2021: true,
},
extends: [
'airbnb-base',
'plugin:@typescript-eslint/eslint-recommended',
'plugin:@typescript-eslint/recommended',
// Enables eslint-plugin-prettier and eslint-config-prettier. This will display prettier errors as ESLint errors. Make sure this is always the last configuration in the extends array.
"plugin:prettier/recommended"
],
plugins: [
'@typescript-eslint',
'prettier'
],
rules: {
},
};

View File

@@ -1,18 +0,0 @@
{
"env": {
"browser": true,
"es2021": true
},
"extends": [
"standard"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 12
},
"plugins": [
"@typescript-eslint"
],
"rules": {
}
}

View File

@@ -1,4 +0,0 @@
{
"tabWidth": 2,
"useTabs": false
}

8
.prettierrc.js Normal file
View File

@@ -0,0 +1,8 @@
module.exports = {
semi: true,
trailingComma: "all",
singleQuote: true,
printWidth: 120,
tabWidth: 4,
useTabs: false
};

903
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -6,7 +6,8 @@
"scripts": {
"start": "webpack-serve --open",
"pack": "webpack",
"dev": "parcel index.html"
"dev": "parcel index.html",
"prettier-format": "prettier --config .prettierrc 'src/**/*.ts' --write"
},
"repository": {
"type": "git",
@@ -33,9 +34,12 @@
"elm-hot-webpack-loader": "1.1.7",
"elm-webpack-loader": "7.0.1",
"eslint": "^7.14.0",
"eslint-config-standard": "^16.0.2",
"eslint-config-airbnb": "^18.2.1",
"eslint-config-airbnb-base": "^14.2.1",
"eslint-config-prettier": "^6.15.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.1.4",
"eslint-plugin-promise": "^4.2.1",
"html-webpack-plugin": "4.5.0",
"http-server": "0.12.3",

View File

@@ -16,85 +16,166 @@
import 'tachyons/css/tachyons.min.css';
import './main.css';
import { Elm } from './Main.elm';
import Fluence from 'fluence';
import { build } from 'fluence/dist/particle';
import { registerService } from 'fluence/dist/globalState';
import { ServiceOne } from 'fluence/dist/service';
import * as serviceWorker from './serviceWorker';
import { peerIdToSeed, seedToPeerId } from "fluence/dist/seed";
import Fluence from "fluence";
import { build } from "fluence/dist/particle";
import { registerService } from "fluence/dist/globalState";
import { Service, ServiceMultiple, ServiceOne } from "fluence/dist/service";
import { Elm } from './Main.elm';
let relayIdx = 1
const relayIdx = 1;
export const stage: { peerId: string; multiaddr: string }[] = [
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19001/wss/p2p/12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9',
peerId: '12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19002/wss/p2p/12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er',
peerId: '12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19003/wss/p2p/12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb',
peerId: '12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19004/wss/p2p/12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB',
peerId: '12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19005/wss/p2p/12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb',
peerId: '12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19990/wss/p2p/12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz',
peerId: '12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz',
},
{
multiaddr: '/dns4/stage.fluence.dev/tcp/19100/wss/p2p/12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM',
peerId: '12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM',
},
];
export const faasNet: { peerId: string; multiaddr: string }[] = [
{
multiaddr: '/ip4/138.68.102.254/tcp/9001/ws/p2p/12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy',
peerId: '12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy',
},
{
multiaddr: '/ip4/165.227.165.192/tcp/9001/ws/p2p/12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB',
peerId: '12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB',
},
{
multiaddr: '/ip4/165.227.167.87/tcp/9001/ws/p2p/12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg',
peerId: '12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg',
},
{
multiaddr: '/ip4/138.68.70.143/tcp/9001/ws/p2p/12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH',
peerId: '12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH',
},
{
multiaddr: '/ip4/165.227.161.121/tcp/9001/ws/p2p/12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb',
peerId: '12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb',
},
{
multiaddr: '/ip4/159.89.12.142/tcp/9001/ws/p2p/12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb',
peerId: '12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb',
},
{
multiaddr: '/ip4/139.59.146.127/tcp/9001/ws/p2p/12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9',
peerId: '12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9',
},
{
multiaddr: '/ip4/159.89.9.74/tcp/9001/ws/p2p/12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er',
peerId: '12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er',
},
{
multiaddr: '/ip4/159.89.6.161/tcp/9001/ws/p2p/12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H',
peerId: '12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H',
},
{
multiaddr: '/ip4/165.227.163.146/tcp/9001/ws/p2p/12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv',
peerId: '12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv',
},
{
multiaddr: '/ip4/139.59.146.127/tcp/9990/ws/p2p/12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz',
peerId: '12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz',
},
{
multiaddr: '/ip4/139.59.146.127/tcp/9100/ws/p2p/12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM',
peerId: '12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM',
},
];
export const relays: { peerId: string; multiaddr: string }[] = stage;
function genFlags(peerId: string): any {
return {
peerId: peerId,
relayId: relays[relayIdx].peerId
}
peerId,
relayId: relays[relayIdx].peerId,
};
}
function event(name: string, peer: string, peers?: string[], identify?: string[], services?: any[], blueprints?: string[], modules?: string[]) {
if (!peers) { peers = null }
if (!services) { services = null }
if (!modules) { modules = null }
if (!identify) { identify = null }
if (!blueprints) { blueprints = null }
/* eslint-disable */
function event(name: string,peer: string,peers?: string[],identify?: string[],services?: any[],blueprints?: string[],modules?: string[],
) {
if (!peers) { peers = null; }
if (!services) { services = null; }
if (!modules) { modules = null; }
if (!identify) { identify = null; }
if (!blueprints) { blueprints = null; }
return { name, peer, peers, identify, services, modules, blueprints }
return { name, peer, peers, identify, services, modules, blueprints };
}
/* eslint-enable */
(async () => {
let pid = await Fluence.generatePeerId()
let flags = genFlags(pid.toB58String())
const pid = await Fluence.generatePeerId();
const flags = genFlags(pid.toB58String());
// If the relay is ever changed, an event shall be sent to elm
let client = await Fluence.connect(relays[relayIdx].multiaddr, pid)
const client = await Fluence.connect(relays[relayIdx].multiaddr, pid);
let app = Elm.Main.init({
const app = Elm.Main.init({
node: document.getElementById('root'),
flags: flags
flags,
});
let eventService = new ServiceOne("event", (fnName, args: any[]) => {
console.log("event service called: ", fnName)
console.log("from: ", args[0])
console.log("event service args: ", args)
const eventService = new ServiceOne('event', (fnName, args: any[]) => {
console.log('event service called: ', fnName);
console.log('from: ', args[0]);
console.log('event service args: ', args);
try {
if (fnName === "peers_discovered") {
app.ports.eventReceiver.send(event(fnName, args[0], args[1]))
} else if (fnName === "all_info") {
app.ports.eventReceiver.send(event(fnName, args[0], undefined, args[1], args[2], args[3], args[4]))
if (fnName === 'peers_discovered') {
app.ports.eventReceiver.send(event(fnName, args[0], args[1]));
} else if (fnName === 'all_info') {
app.ports.eventReceiver.send(event(fnName, args[0], undefined, args[1], args[2], args[3], args[4]));
} else {
console.error("UNHANDLED")
console.error('UNHANDLED');
}
} catch (err) {
console.error(err)
console.error(err);
}
return {}
})
registerService(eventService)
return {};
});
registerService(eventService);
app.ports.sendParticle.subscribe(async (part: any) => {
console.log("Going to build particle", part)
let jsonData = part.data;
console.log('Going to build particle', part);
const jsonData = part.data;
let map = new Map<string, string>()
for (let v in jsonData) if (jsonData.hasOwnProperty(v)) {
map.set(v, jsonData[v])
const map = new Map<string, string>();
for (const v in jsonData) {
if (jsonData.hasOwnProperty(v)) {
map.set(v, jsonData[v]);
}
}
let particle = await build(client.selfPeerId, part.script, map)
await client.sendParticle(particle)
})
const particle = await build(client.selfPeerId, part.script, map);
await client.sendParticle(particle);
});
})();
// If you want your app to work offline and load faster, you can change
@@ -102,10 +183,7 @@ function event(name: string, peer: string, peers?: string[], identify?: string[]
// Learn more about service workers: https://bit.ly/CRA-PWA
serviceWorker.unregister();
async function test() {
}
async function test() {}
declare global {
interface Window {
@@ -114,51 +192,3 @@ declare global {
}
window.test = test;
export let stage: { peerId: string; multiaddr: string }[] = [
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19001/wss/p2p/12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9",
peerId: "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19002/wss/p2p/12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er",
peerId: "12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19003/wss/p2p/12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb",
peerId: "12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19004/wss/p2p/12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB",
peerId: "12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19005/wss/p2p/12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb",
peerId: "12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19990/wss/p2p/12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz",
peerId: "12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz"
},
{
multiaddr: "/dns4/stage.fluence.dev/tcp/19100/wss/p2p/12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM",
peerId: "12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM"
}
];
export let faasNet: { peerId: string; multiaddr: string }[] = [
{ multiaddr: "/ip4/138.68.102.254/tcp/9001/ws/p2p/12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy", peerId: "12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy" },
{ multiaddr: "/ip4/165.227.165.192/tcp/9001/ws/p2p/12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB", peerId: "12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB" },
{ multiaddr: "/ip4/165.227.167.87/tcp/9001/ws/p2p/12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg", peerId: "12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg" },
{ multiaddr: "/ip4/138.68.70.143/tcp/9001/ws/p2p/12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH", peerId: "12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH" },
{ multiaddr: "/ip4/165.227.161.121/tcp/9001/ws/p2p/12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb", peerId: "12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb" },
{ multiaddr: "/ip4/159.89.12.142/tcp/9001/ws/p2p/12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb", peerId: "12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb" },
{ multiaddr: "/ip4/139.59.146.127/tcp/9001/ws/p2p/12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9", peerId: "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9" },
{ multiaddr: "/ip4/159.89.9.74/tcp/9001/ws/p2p/12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er", peerId: "12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er" },
{ multiaddr: "/ip4/159.89.6.161/tcp/9001/ws/p2p/12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H", peerId: "12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H" },
{ multiaddr: "/ip4/165.227.163.146/tcp/9001/ws/p2p/12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv", peerId: "12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv" },
{ multiaddr: "/ip4/139.59.146.127/tcp/9990/ws/p2p/12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz", peerId: "12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz" },
{ multiaddr: "/ip4/139.59.146.127/tcp/9100/ws/p2p/12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM", peerId: "12D3KooWPnLxnY71JDxvB3zbjKu9k1BCYNthGZw6iGrLYsR1RnWM" }
]
export let relays: { peerId: string; multiaddr: string }[] = stage;