Bump sdk version

This commit is contained in:
Pavel Murygin 2021-01-17 20:22:10 +03:00
parent 39c335d57c
commit d4fb811054
6 changed files with 40 additions and 48 deletions

View File

@ -1206,9 +1206,9 @@
"integrity": "sha512-XIgRgyVgPJXvXB3NuYHpSdJ0EFcFZ+K4uduGFf8PfnFii/bFs4F1n3MBB+b4D0y59HR4F9ZQUC4fXxcf6UCYWA=="
},
"@fluencelabs/fluence": {
"version": "0.8.0-big-refactoring.14",
"resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.8.0-big-refactoring.14.tgz",
"integrity": "sha512-C2VLnmgdT8dMSkpXracg4TXXewu6YZuJFfoEZTLb0Xq5sXfVwiXE2YGNBYsbjy5CR73HxR/ehPfRca+qGskuEQ==",
"version": "0.8.0-big-refactoring.15",
"resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.8.0-big-refactoring.15.tgz",
"integrity": "sha512-F09a97IWzeMi+e8iAwBI32796gN+Q4Q4Z3invl3o4F1MvrmfH7UpDsGF0vY/pPqkqqXpxLXsrSgo29L6ixw3cg==",
"requires": {
"@fluencelabs/aquamarine-stepper": "0.0.30",
"async": "3.2.0",
@ -10596,9 +10596,9 @@
}
},
"streaming-iterables": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-5.0.3.tgz",
"integrity": "sha512-1AgrKjHTvaaK+iA+N3BuTXQWVb7Adyb6+v8yIW3SCTwlBVYEbm76mF8Mf0/IVo+DOk7hoeELOURBKTCMhe/qow=="
"version": "5.0.4",
"resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-5.0.4.tgz",
"integrity": "sha512-nEs6hBGIPsVz6uq6pscGGKfoPDQWrDQW0b0UHurtSDysekfKLmkPg7FQVRE2sj3Rad6yUo9E1sGTxOWyYsHQ/g=="
}
}
},

View File

@ -3,7 +3,7 @@
"version": "0.1.0",
"private": true,
"dependencies": {
"@fluencelabs/fluence": "0.8.0-big-refactoring.14",
"@fluencelabs/fluence": "0.8.0-big-refactoring.15",
"@fluencelabs/fluence-network-environment": "^1.0.5",
"@testing-library/jest-dom": "^5.11.6",
"@testing-library/react": "^11.2.2",

View File

@ -42,8 +42,6 @@ const throwIfError = (result: ServiceResult) => {
}
};
export type PeerId = string;
export const updateOnlineStatuses = async (client: FluenceClient) => {
const particle = new Particle(
`
@ -75,8 +73,8 @@ export const updateOnlineStatuses = async (client: FluenceClient) => {
{
userlistNode: userListNodePid,
userlist: userListServiceId,
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
fluentPadServiceId: fluentPadServiceId,
notifyOnline: notifyOnlineFnName,
},
@ -107,15 +105,15 @@ export const notifySelfAdded = (client: FluenceClient, name: string) => {
{
userlistNode: userListNodePid,
userlist: userListServiceId,
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
fluentPadServiceId: fluentPadServiceId,
notifyUserAdded: notifyUserAddedFnName,
myUser: [
{
name: name,
peer_id: client.selfPeerId.toB58String(),
relay_id: client.relayPeerID.toB58String(),
peer_id: client.selfPeerId,
relay_id: client.relayPeerId,
},
],
setOnline: true,
@ -142,8 +140,8 @@ export const getUserList = async (client: FluenceClient) => {
{
userlistNode: userListNodePid,
userlist: userListServiceId,
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
fluentPadServiceId: fluentPadServiceId,
notifyUserAdded: notifyUserAddedFnName,
immediately: true,
@ -168,12 +166,12 @@ export const join = async (client: FluenceClient, nickName: string) => {
)
`,
{
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
user: {
name: nickName,
peer_id: client.selfPeerId.toB58String(),
relay_id: client.relayPeerID.toB58String(),
peer_id: client.selfPeerId,
relay_id: client.relayPeerId,
},
userlist: userListServiceId,
userlistNode: userListNodePid,
@ -209,8 +207,8 @@ export const leave = async (client: FluenceClient) => {
{
userlistNode: userListNodePid,
userlist: userListServiceId,
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
fluentPadServiceId: fluentPadServiceId,
notifyUserRemoved: notifyUserRemovedFnName,
},
@ -237,8 +235,8 @@ export const getHistory = async (client: FluenceClient) => {
)
`,
{
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
userlist: userListServiceId,
history: historyServiceId,
userlistNode: userListNodePid,
@ -283,8 +281,8 @@ export const addEntry = async (client: FluenceClient, entry: string) => {
entry: entry,
userlist: userListServiceId,
history: historyServiceId,
myRelay: client.relayPeerID.toB58String(),
myPeerId: client.selfPeerId.toB58String(),
myRelay: client.relayPeerId,
myPeerId: client.selfPeerId,
fluentPadServiceId: fluentPadServiceId,
notifyTextUpdate: notifyTextUpdateFnName,
},

View File

@ -14,12 +14,9 @@ const App = () => {
const [nickName, setNickName] = useState('');
useEffect(() => {
const fn = async () => {
const c = await createClient(relayNode);
setClient(c);
};
fn();
createClient(relayNode)
.then((client) => setClient(client))
.catch((err) => console.log('Client initialization failed', err));
}, []);
const joinRoom = async () => {

View File

@ -1,6 +1,6 @@
import _ from 'lodash';
import { useEffect, useState } from 'react';
import { subscribeToEvent } from '@fluencelabs/fluence';
import { PeerIdB58, subscribeToEvent } from '@fluencelabs/fluence';
import { fluentPadServiceId, notifyTextUpdateFnName } from 'src/app/constants';
import { useFluenceClient } from '../app/FluenceClientContext';
@ -30,8 +30,8 @@ export const CollaborativeEditor = () => {
};
const unsub = subscribeToEvent(client, fluentPadServiceId, notifyTextUpdateFnName, (args, tetraplets) => {
const [authorPeerId, changes, isAuthorized] = args as [api.PeerId, string, boolean];
if (authorPeerId === client.selfPeerId.toB58String()) {
const [authorPeerId, changes, isAuthorized] = args as [PeerIdB58, string, boolean];
if (authorPeerId === client.selfPeerId) {
return;
}

View File

@ -7,11 +7,10 @@ import {
} from 'src/app/constants';
import { useFluenceClient } from '../app/FluenceClientContext';
import * as api from 'src/app/api';
import { subscribeToEvent } from '@fluencelabs/fluence';
import { PeerId } from 'src/app/api';
import { PeerIdB58, subscribeToEvent } from '@fluencelabs/fluence';
interface User {
id: PeerId;
id: PeerIdB58;
name: string;
isOnline: boolean;
shouldBecomeOnline: boolean;
@ -29,7 +28,7 @@ const refreshTimeoutMs = 2000;
export const UserList = (props: { selfName: string }) => {
const client = useFluenceClient()!;
const [users, setUsers] = useState<Map<PeerId, User>>(new Map());
const [users, setUsers] = useState<Map<PeerIdB58, User>>(new Map());
useEffect(() => {
const listRefreshTimer = setInterval(() => {
@ -53,7 +52,7 @@ export const UserList = (props: { selfName: string }) => {
continue;
}
const isCurrentUser = u.peer_id === client.selfPeerId.toB58String();
const isCurrentUser = u.peer_id === client.selfPeerId;
result.set(u.peer_id, {
name: u.name,
@ -67,22 +66,20 @@ export const UserList = (props: { selfName: string }) => {
});
const unsub2 = subscribeToEvent(client, fluentPadServiceId, notifyUserRemovedFnName, (args, _) => {
const [users] = args as [PeerId[]];
const [userLeft] = args as [PeerIdB58];
setUsers((prev) => {
const result = new Map(prev);
for (let u of users) {
result.delete(u);
}
result.delete(userLeft);
return result;
});
});
const unsub3 = subscribeToEvent(client, fluentPadServiceId, notifyOnlineFnName, (args, _) => {
const [users] = args as [PeerId[]];
const [userOnline] = args as [PeerIdB58[]];
setUsers((prev) => {
const result = new Map(prev);
for (let u of users) {
for (let u of userOnline) {
const toSetOnline = result.get(u);
if (toSetOnline) {
toSetOnline.shouldBecomeOnline = true;
@ -115,7 +112,7 @@ export const UserList = (props: { selfName: string }) => {
<ul>
{usersArray.map((x) => (
<li key={x.id}>
<span className={x.id === client.selfPeerId.toB58String() ? 'bold' : ''}>{x.name}</span>
<span className={x.id === client.selfPeerId ? 'bold' : ''}>{x.name}</span>
<span className={x.isOnline ? 'green' : 'red'}> ({x.isOnline ? 'online' : 'offline'})</span>
</li>
))}