Commit Graph

160 Commits

Author SHA1 Message Date
Felicio Mununga 62c499c50f
fix community fetching on `js-waku`'s abort 2022-09-05 18:03:17 +02:00
Pavel e1c4f0591d
Use built-in PBKDF2 implementation for browsers (#295)
* add pbkdf2 browser implementation

* use webcrypto in pbkdf2

* rename pbkdf2 file

* use pbkdf2

* add changeset

* revert rename

* remove browser field from package.json

* use `resolve.alias` for pbkdf2 if test

* use `mode` in vite.config.ts

Co-authored-by: Felicio Mununga <felicio@users.noreply.github.com>
2022-07-19 17:45:29 +02:00
Felicio Mununga 82625fe6db
Get peer based on environment (#294)
* get peer based on environment

* add changeset

* default to prod
2022-07-19 10:19:46 +02:00
Felicio Mununga c4f052f71a
set `"access": "public"` for publishing 2022-07-06 15:37:35 +02:00
Pavel Prichodko f59b38a3e4
remove unnecessary configuration 2022-07-01 15:22:26 +02:00
Pavel Prichodko 4ff961a6ae
export Reactions type from status-js 2022-07-01 15:20:23 +02:00
Felicio Mununga d225623df9
v0.1.0-alpha.2 2022-06-30 17:03:12 +02:00
Felicio Mununga d4fb2e4d95
send request on creating account 2022-06-30 16:34:50 +02:00
Felicio Mununga 1b89774ad1
v0.1.0-alpha.1 2022-06-30 16:02:34 +02:00
Felicio Mununga 1f19d61193
Reestablish peer connection on silent stream destruction (#288) 2022-06-30 15:12:26 +02:00
Felicio Mununga 2f3ac73e5e
Set clocks (#284)
* add clock functions

* remove bind
2022-06-30 15:11:13 +02:00
Pavel 0677fedc0e
Setup GitHub Actions (#287)
* add new GitHub Action for CI

* add yarn flag

* use actions v3

* add ci badge (lol)

* cache lint and format scripts

* add more steps

* remove unused component

* fix lint errors

* remove unsued eslint plugins
2022-06-29 16:46:51 +02:00
Pavel Prichodko df6b52736e
set mode to development during dev 2022-06-28 16:54:21 +02:00
Pavel 680ce2f79b
Move to ESM, Vite, Vitest and Turborepo (#286)
* fix example hot module replacement

* add turbo

* migrate to vite

* use turbo for running scripts

* migrate testing to vitest

* set yarn in settings.json

* set noEmit in base tsconfig

* update yarn.lock

* move protos to src

* remove relative paths from status-js

* remove unused files

* update declaration dir

* use vite-node as a debugging runtime

* fix test

* unify tests

* fix test case typo
2022-06-28 16:40:39 +02:00
Felicio Mununga 36f448cb96
Fix key and topic generation, and remove dependencies (#285)
* update yarn.lock

* remove modules

* move client

* move account

* revert chat_identity.ts

* fix key gen

* fix topic gen

* fix non-null assertion

* fix build errors
2022-06-24 17:39:09 +02:00
Felicio Mununga fed1dd210f
Update messages data structure (#278)
* Update messages data structure

* remove setting of DeletedChatMessage

* delete unathorized events

* use event pks

* remove comment

* remove else

* fix ui

* fix more ui

* fix sendReaction
2022-06-23 16:47:14 +02:00
Felicio Mununga 0a30fe0cf6
Check owner, member and author prior handling (#283)
* check owner, member and author

* fix isOwner
2022-06-22 13:30:24 +02:00
Felicio Mununga cb88ee7a62
handle only MessageType.COMMUNITY_CHAT (#281) 2022-06-21 09:17:15 +02:00
Felicio Mununga 66628d9c34
rename communit callbacks 2022-06-17 14:09:43 +02:00
Felicio Mununga 7d720018f5
remove success flag from message handler 2022-06-17 14:06:17 +02:00
Felicio Mununga c2ecb7ed78
support multiple community description callbacks (#280) 2022-06-17 09:36:43 +02:00
Felicio Mununga fb78bc5dc8
Wrap decoding in try...catch (#279) 2022-06-17 09:35:40 +02:00
Pavel Prichodko f22d744732
fix: creation of message ID 2022-06-15 15:19:28 +02:00
Pavel Prichodko 36aeebb629
add link to generateUsername util 2022-06-15 13:39:29 +02:00
Pavel Prichodko cac8fe58be
use concatBytes in payloadToId
https://jsben.ch/jze3P
2022-06-15 13:38:44 +02:00
Pavel 72d1e679fc
Add more chat methods (#276)
* add requestToJoin method

* add editMessage method

* add deleteMessage method

* add todos

* remove unnecessary parameter

* add community ID property

* add missing method
2022-06-15 11:51:56 +02:00
Pavel Prichodko 112cd0d9ab
add rationale comment 2022-06-15 11:45:50 +02:00
Pavel 83777e9759
Update handling of reactions (#277)
* fix: reactions argument in callback

* replace object with Set in reactions

* update reactions in UI
2022-06-15 11:30:43 +02:00
Pavel c50b32546b
Handle emoji content type (#275)
* add containsOnly emoji helper

* add emoji check when sending text message
2022-06-15 11:08:30 +02:00
Pavel c45d0a61f0
Use chat keys in the UI (#274)
* add util for compressing public key

* add chat keys to account and member

* use compressPublicKey in color hash util

* use chat keys in UI
2022-06-14 14:28:08 +02:00
Pavel Prichodko dd67a504bf
fix generating of message ID 2022-06-14 14:15:19 +02:00
Pavel Prichodko 805944a3d7
fix: add username to account 2022-06-13 22:44:22 +02:00
Felicio Mununga 8bdff5d869
Return new array on emit to trigger re-rendering in react (#273)
* fix type

* return new array to trigger re-rendering in react
2022-06-13 22:44:12 +02:00
Felicio Mununga b7e61f16d1
Emit to self on send (#272)
* fix chat references in status-react

* emit to self on send
2022-06-13 20:07:00 +02:00
Pavel c9bffe4a52
Add members (#271)
* export ColorHash type

* add getObjectsDifference helper

* fix CommunityDescription generated type

* add members to community module

* use members in sidebar
2022-06-13 19:02:37 +02:00
Felicio Mununga b62bc86dfe
Add Chat module (#270)
* add packages/status-js/src/client/chat.ts

* cache received but skipped waku messages

* comment missing Map type in generate proto type

* handle removed and added chats

* remove lodash

* use this.client.waku instead of this.waku in community.ts

* rename community props

* fix waku reference in Community

* fix community reference in chat

* handle chat.description changes

* fix references in ui

* revert use of contentTopic

* fix callback on fetch

* use clock to limit fetch

* fix use of clock for community description

* remove notes

* remove await

* use Object.keys() for diff in chats

* fix typo

* add decryption key in start()

* set content topics when adding decryption keys

* add getter with tmp name

* rename community handler to handleDescription

* return this.description !== undefined

* add options to constructor
2022-06-13 16:33:57 +02:00
Felicio Mununga 9b1347d233
Add color hash function (#264) 2022-06-10 19:30:23 +02:00
Felicio Mununga 1734f0edeb
remove more debug references 2022-06-10 18:23:37 +02:00
Felicio Mununga 25943d29a5
remove comments 2022-06-10 18:16:51 +02:00
Felicio Mununga 020f20e801
remove debug 2022-06-10 17:46:38 +02:00
Felicio Mununga cc6f665f26
add comments 2022-06-10 16:53:15 +02:00
Felicio Mununga 8c2f200d0e
remove client.test.ts 2022-06-10 16:48:56 +02:00
Felicio Mununga a14eb6e011
remove console log 2022-06-10 16:47:59 +02:00
Felicio Mununga 1981b8a27d
remove scripts 2022-06-10 16:44:24 +02:00
Pavel Prichodko 5b7c3cbb5a
fix recoverPublicKey test 2022-06-10 13:45:15 +02:00
Pavel Prichodko e976c5bc1f
add basic validateMessage function 2022-06-10 13:43:48 +02:00
Felicio Mununga 70ec7c030f
change requestToJoin() 2022-06-10 02:13:05 +02:00
Felicio Mununga c34eeea0d6
use Set for waku message IDs 2022-06-10 02:11:29 +02:00
Felicio Mununga e1b1036695
add comment 2022-06-09 21:05:13 +02:00
Felicio Mununga ca66e8b132
use clock 2022-06-09 20:32:36 +02:00
Felicio Mununga d6c1ff0450
change community fetch 2022-06-09 19:33:01 +02:00
Felicio Mununga c84ed7ac7b
return chat messages from history fetch only if new found 2022-06-09 19:22:58 +02:00
Felicio Mununga 2ac11ab094
ignore already received chat messages 2022-06-09 18:48:27 +02:00
Felicio Mununga c416ec3e94
fix observing of new channels 2022-06-09 18:28:52 +02:00
Felicio Mununga 75dd342bcd
remove other waku message handlers 2022-06-09 18:27:47 +02:00
Felicio Mununga faa60f6ad4
add packages/status-js/src/client/community/handle-waku-message.ts 2022-06-09 18:23:31 +02:00
Pavel Prichodko c3840f8725
cleanup generateUsername function 2022-06-09 19:22:05 +02:00
Pavel Prichodko 58a10a5239
add generate username util 2022-06-09 18:59:04 +02:00
Pavel Prichodko bf3e6de2a7
fix sending messages 2022-06-09 15:56:43 +02:00
Pavel Prichodko 6ce1344af1
unify reaction type 2022-06-09 15:56:19 +02:00
Pavel Prichodko 128dbbe5f1
fix account tests 2022-06-09 14:44:45 +02:00
Pavel Prichodko 56a44eb255
add methods for sending messages 2022-06-09 14:44:23 +02:00
Pavel Prichodko e2cfc3ca6e
make recoverPublicKey universal 2022-06-09 14:40:08 +02:00
Felicio Mununga 6252736ad2
use pub key to gen chat message id 2022-06-08 17:09:36 +02:00
Felicio Mununga d4c597fa0f
add test for public key recovery 2022-06-08 17:08:03 +02:00
Felicio Mununga 4c1413cadf
use reverse() 2022-06-08 16:18:01 +02:00
Felicio Mununga b9062d556b
fix import of utils in account.ts 2022-06-08 15:40:30 +02:00
Felicio Mununga fb07201081
handle replies 2022-06-08 15:02:16 +02:00
Felicio Mununga 89279dbfbb
set chunk size 2022-06-08 13:17:08 +02:00
Felicio Mununga bd60c88767
try protocol layer first 2022-06-08 13:07:05 +02:00
Felicio Mununga 6826955c69
replace new Promise in observer 2022-06-08 11:52:55 +02:00
Felicio Mununga 109437f451
remove packages/status-js/src/community.ts 2022-06-08 11:45:56 +02:00
Felicio Mununga 857d283307
change client
- split client and community
- split some community methods
- add message fetching
- make observeChannelMessages async
2022-06-08 11:37:53 +02:00
Felicio Mununga cc4765d602
remove logs 2022-06-06 15:37:37 +02:00
Felicio Mununga fa95a375a3
split history fetching 2022-06-06 15:33:56 +02:00
Felicio Mununga e9a00f559e
remove `/proto copy` 2022-06-06 12:55:31 +02:00
Pavel Prichodko ced31593b3
fix account sign method 2022-06-07 16:35:01 +02:00
Pavel Prichodko 5667643068
add recoverPublicKeyFromMetadata util 2022-06-07 16:32:46 +02:00
Pavel Prichodko 643f7faa92
make pbkdf2 async 2022-06-06 11:05:44 +02:00
Pavel Prichodko 817b877634
add idToContentTopic 2022-06-04 13:09:49 +02:00
Pavel Prichodko 6e97051de9
add generateKeyFromPassword 2022-06-04 13:09:31 +02:00
Felicio Mununga 7bebcc9d30
add payload-to-id.ts 2022-06-03 23:36:36 +02:00
Pavel Prichodko 0bf7d05344
remove privateKeyToAddress util 2022-06-03 17:45:07 +02:00
Pavel Prichodko 085906398a
update Account 2022-06-03 17:44:55 +02:00
Pavel Prichodko 4f2581e462
add protocol message protobuf 2022-06-03 11:15:11 +02:00
Pavel Prichodko 1df5721654
add Account 2022-06-02 12:11:40 +02:00
Pavel Prichodko 91f1e75cd5
add ethereum-cryptography package 2022-06-02 12:10:53 +02:00
Pavel Prichodko 8435cfd815
add private key to address function 2022-06-02 12:10:35 +02:00
Felicio Mununga f0a629dfdc
fix test after rebase 2022-06-01 07:39:47 +02:00
Felicio Mununga 697f21a3ab
remove mocha 2022-06-01 06:56:10 +02:00
Felicio Mununga 198c3afff7
remove tsconfig changes 2022-06-01 06:46:25 +02:00
Felicio Mununga 0e96078dca
remove jest configs 2022-06-01 06:41:29 +02:00
Felicio Mununga 9740b358a3
remove test 2022-06-01 06:37:09 +02:00
Felicio Mununga 9ccab72dc1
mock Waku 2022-06-01 06:32:57 +02:00
Felicio Mununga 0cc21dd908
tmp fix test 2022-05-31 13:14:48 +02:00
Felicio Mununga c1d611827f
add configs 2022-05-31 13:14:12 +02:00
Felicio Mununga a52e0306ce
convert test files 2022-05-30 16:05:22 +02:00
Felicio Mununga 82a49b8df9
add notes 2022-05-29 23:06:18 +02:00
Felicio Mununga b9892545e7
add notes 2022-05-29 20:20:35 +02:00
Felicio Mununga f5acbd793b
get ops blocking stop/exit 2022-05-26 23:17:10 +02:00