Commit Graph

275 Commits

Author SHA1 Message Date
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
Pavel Prichodko 8cdf04da2c
add support for identicon ring to avatar 2022-06-13 16:18:06 +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 d0f4104b53
connect UI to protocol 2022-06-10 16:11:32 +02:00
Pavel Prichodko 65d9c33bb8
remove unused route 2022-06-10 16:07:07 +02:00
Pavel Prichodko bdd51485cb
add Loading component 2022-06-10 16:06:34 +02:00
Pavel Prichodko a1798ccefd
move protocol provider under theme provider 2022-06-10 16:06:05 +02:00
Pavel Prichodko df0babc6bc
add intials to avatar 2022-06-10 16:05:34 +02:00
Pavel Prichodko cb98595795
add protocol hooks 2022-06-10 16:05:11 +02:00
Pavel Prichodko 73d941ff9b
refactor protocol provider to use reducer 2022-06-10 16:04:15 +02:00
Pavel Prichodko f72476e248
add protocol provider 2022-06-10 14:16:06 +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 54020b4be6
upgrade stitches 2022-06-09 14:48:54 +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
Pavel Prichodko 89587c0e64
add new client 2022-05-25 17:05:53 +02:00
Felicio Mununga 9e96c2c568
remove comment 2022-05-25 15:22:47 +02:00
Felicio Mununga d897009671
add scripts 2022-05-25 14:52:48 +02:00
Felicio Mununga 7448ed1536
fix js-waku imports 2022-05-29 23:53:38 +02:00
Felicio Mununga 5069563f1f
fix js-waku utils 2022-05-25 14:42:47 +02:00
Felicio Mununga 093010a844
remove js-sha3 from status-react 2022-05-25 14:42:27 +02:00
Felicio Mununga cc760d258a
remove js-waku from status-react 2022-05-25 14:42:01 +02:00
Pavel Prichodko 75d4415b5c
feat(status-js): add membership update message 2022-05-24 15:36:14 +02:00
Pavel Prichodko df52940211
style(status-js): regenerate protso 2022-05-24 15:36:07 +02:00
Felicio Mununga b1e5bea532
Fix status-js `name` (#268) 2022-05-24 12:42:05 +02:00
Pavel f6c154d4d9
Use protons to generate TypeScript files (#269)
* feat(status-js): sync protos with status-go

* feat(status-js): set up protons

* feat(status-js): use protons to generate protos

* fix(status-js): remove buf configuration
2022-05-24 12:12:33 +02:00
Felicio Mununga ae55f185bf
Rename status-core to status-js (#265) 2022-05-23 14:57:01 +02:00
Pavel Prichodko 6a5e42f0e2
feat(react): update app state when config changes 2022-05-23 14:46:08 +02:00
Pavel Prichodko b8348c40f3
fix(react): use chat name from the route 2022-05-23 14:46:08 +02:00
Pavel Prichodko 7265ec260c
feat(react): add user profile dialog to chat message 2022-05-23 14:46:08 +02:00
Pavel Prichodko fc3ff49fef
fix(react): use color token in popver 2022-05-23 14:41:33 +02:00
Pavel Prichodko 0e6e699683
feat(react): comment out NewChat route 2022-05-23 14:40:41 +02:00
Pavel Prichodko 93544ee51d
style(react): update static data 2022-05-23 14:40:03 +02:00
Pavel Prichodko 89177dfdc3
feat(react): comment out unused parts 2022-05-23 14:39:42 +02:00
Pavel 0e799928e5
Bump to js-waku@0.23.0 (#263) 2022-05-19 15:37:46 +02:00
Pavel Prichodko 612e84ee2a
fix(react): re-export of stitches types 2022-04-19 14:09:56 +02:00
Pavel Prichodko a52475dc1d
fix(react): make config options optional 2022-04-19 14:09:34 +02:00
Pavel Prichodko 0ccea4b559
feat(react): add action handlers 2022-04-19 14:09:16 +02:00
Pavel Prichodko a361820b24
setup: add clean scripts 2022-04-18 16:54:40 +02:00
Pavel 5cd02e8d64
Delete legacy code (#249)
* refactor(react): delete unused contexts

* refactor(react): delete unused hooks

* refactor(react): delete unused components

* refactor(react): delete unused types

* refactor(react): delete unused utils

* feat(react): simplify Community component structure
2022-04-18 16:20:31 +02:00
Pavel Prichodko a781ef4f7c
feat(react): improve dark mode 2022-04-18 15:50:00 +02:00
Pavel Prichodko 3b8c393be8
feat(react): allow theme customization 2022-04-18 15:48:34 +02:00
Pavel Prichodko 582b58dc4e
fix(react): content max width 2022-04-18 14:32:47 +02:00
Pavel Prichodko f9abfc56d8
feat(react): update media query for sidebars 2022-04-14 16:18:31 +02:00
Pavel Prichodko 51c6250b6e
feat(react): improve usage of theme tokens 2022-04-14 13:44:55 +02:00
Pavel Prichodko c87619c6ec
fix(react): export correct themes 2022-04-14 13:42:35 +02:00
Pavel Prichodko 151b80bc9b
feat(react): implement message reactions 2022-04-14 12:37:59 +02:00
Pavel Prichodko 1080dd7ee3
fix(react): messages truncating 2022-04-13 19:20:57 +02:00
Pavel Prichodko 03a25463e2
feat(react): create chat info component 2022-04-13 14:25:54 +02:00
Pavel Prichodko 8ea0b46cde
feat(system): improve typography styles 2022-04-13 14:25:34 +02:00
Pavel Prichodko 25c2759baa
feat(react): use correct types in chat context 2022-04-13 14:25:15 +02:00
Pavel Prichodko f309ba291b
feat(react): add all chat input variants 2022-04-13 14:24:48 +02:00
Pavel Prichodko f69a37c041
feat(react): add all chat message variants 2022-04-13 14:24:37 +02:00
Pavel Prichodko 1832ee9eae
feat(react): add more static data to protocol 2022-04-13 14:24:01 +02:00
Pavel 9c74cf4685
Dialogs (#247)
* Add community dialog

* feat(react): add welcome dialog

* feat(react): add connect wallet dialog

* feat(react): add disconnect dialog

* feat(react): add create profile dialog

* feat(react): add welcome dialog

* feat(react): add load throwaway profile dialog

* feat(react): add sync status profile dialog

* fix(react): disconnect dialog spacing

* feat(react): add get started section to main sidebar

* feat(react): add user profile dialog

* feat(react): add edit group dialog

* feat(react): support opening dialogs programmatically

* feat(react): delete legacy components
2022-04-12 15:51:49 +02:00
Pavel Prichodko d9a0fb49ae
refactor(react): unify imports from system 2022-04-11 21:36:31 +02:00
Pavel Prichodko 555d22e006
feat(system): add Checkbox component 2022-04-11 21:29:58 +02:00
Pavel Prichodko eba39b7e27
feat(react): add ReactionPopover component 2022-04-11 21:08:17 +02:00
Pavel Prichodko bbd2f19b89
feat(react): add static protocol layer base 2022-04-11 21:05:08 +02:00
Pavel Prichodko 5c0f785b2d
fix(react): add missing dependencies 2022-04-11 21:04:05 +02:00
Pavel Prichodko d54e048dd9
chore(react): upgrade qrcode.react 2022-04-11 21:03:41 +02:00
Pavel Prichodko 88039258bc
feat(system): small improvements 2022-04-11 21:02:53 +02:00
Pavel Prichodko 3a9ebd152f
feat(system): update Tooltip styles 2022-04-11 21:01:50 +02:00
Pavel Prichodko 03c4b96176
feat(system): add more control to Popover 2022-04-11 21:01:29 +02:00
Pavel Prichodko 70143feea6
refactor(react): separate Navbar component 2022-04-11 21:00:59 +02:00
Pavel Prichodko b771115011
feat(react): unify chat menu 2022-04-11 21:00:10 +02:00
Pavel Prichodko ece215c183
feat(system): add EmojiHash component 2022-04-11 20:58:49 +02:00
Pavel Prichodko fb6467ace9
feat(system): improve Separator component 2022-04-11 20:58:20 +02:00
Pavel Prichodko 37fe627d99
feat(system): add aria attribute to menu 2022-04-11 20:58:01 +02:00
Pavel Prichodko c14b74002d
feat(system): add ButtonGroup component 2022-04-06 14:47:18 +02:00
Pavel Prichodko 9c351dd0d0
feat(system): add CopyInput component 2022-04-06 14:05:04 +02:00
Pavel Prichodko db47a0aeb0
feat(system): add label to Input component 2022-04-06 14:04:42 +02:00
Pavel Prichodko d428554d94
feat(react): pinned message state 2022-04-06 14:02:24 +02:00
Pavel Prichodko f9c8c3f6dd
feat(react): add local storage hook 2022-04-06 14:00:28 +02:00
Pavel Prichodko aadaa8d013
refactor(react): sidebar components structure 2022-04-06 14:00:03 +02:00
Pavel Prichodko 4979a5cd96
feat(system): add more dialog sizes 2022-04-06 10:38:34 +02:00
Pavel Prichodko c4e80bbdb3
feat(system): add ref to popover and tooltip triggers 2022-04-06 10:37:53 +02:00
Pavel Prichodko c7e6b14e35
feat(system): add small size button variant 2022-04-06 10:35:10 +02:00
Pavel Prichodko 15526db046
feat(system): add outline button variant 2022-04-06 10:34:35 +02:00
Pavel Prichodko 211adef137
feat(react): focus chat input when replying 2022-04-06 10:33:58 +02:00
Pavel Prichodko d6ed1d8496
feat(react): add components config options 2022-03-31 16:05:59 +02:00
Pavel 6d2581c072
Use react-router-dom for routing (#246)
* feat(react): move chat and new-chat to routes

* feat(react): setup react router

* feat(react): use links in sidebar

* feat(react): add link to IconButton component

* feat(react): add router to config
2022-03-31 15:34:32 +02:00
Pavel Prichodko 775a0885c3
fix(react): add missing dependencies 2022-03-31 15:15:24 +02:00
Pavel Prichodko 45f8afd4e0
fix(system): DropdownMenu children prop type 2022-03-31 15:14:22 +02:00
Pavel Prichodko 7ebd125370
feat(system): add label props to AlertDialog 2022-03-31 15:14:01 +02:00
Pavel Prichodko 43ab8e6240
feat(system): pass open state to children in ContextMenu 2022-03-31 15:13:44 +02:00
Pavel Prichodko b662c253f3
feat(system): use colors from design system in Button 2022-03-31 15:13:22 +02:00
Pavel Prichodko 66ecfa407e
refactor(react): chat messages content 2022-03-31 15:12:33 +02:00
Pavel Prichodko aa0dd52252
feat(system): add mention and pin to colors 2022-03-31 14:53:42 +02:00
Pavel Prichodko ba359a5cc7
feat(system): improve typography components 2022-03-18 19:14:30 +01:00