104 Commits

Author SHA1 Message Date
Sale Djenic
6ee7038809 fix: synced from field updated if recovered keypairs made fully operable 2023-08-10 16:09:29 +02:00
Sale Djenic
70c29a828e feat: new endpoints added
- `HasPairedDevices`
- `MakePrivateKeyKeypairFullyOperable`
- `MakeSeedPhraseKeypairFullyOperable`
2023-08-09 10:31:11 +02:00
Sale Djenic
0ae7aa44f0 feat: deleteKeystoreFilesForKeypair function added 2023-08-01 13:26:10 +02:00
Anthony Laibe
1df8c1c511 feat: save preferred networks 2023-07-31 22:50:02 +02:00
Sale Djenic
4088edfa14 fix: changes needed to support recovering from waku in case recovering is done using keycard, but stored data refers to a regular profile and vice versa 2023-07-28 12:16:23 +02:00
frank
07a3726b1d
Fix/no such column FALSE (#3813)
* fixed: "no such column: FALSE"

* bump version
2023-07-27 17:36:46 +08:00
Sale Djenic
20bc27619b fix: function name change
`GetWatchOnlyAccounts(includeRemoved bool)` removed
`GetActiveWatchOnlyAccounts()` added
`GetAllWatchOnlyAccounts()` added
2023-07-26 08:23:55 +02:00
Sale Djenic
6a5cdbaa8b fix: review comments applied
`GetKeypairs(includeRemoved bool)` removed
`GetActiveKeypairs()` added
`GetAllKeypairs()` added

`GetAccounts(includeRemoved bool)` removed
`GetActiveAccounts()` added
`GetAllAccounts()` added
2023-07-25 18:11:05 +02:00
Sale Djenic
d5bba5d80f chore: wallet accounts improvements - soft delete 2023-07-25 18:11:05 +02:00
Sale Djenic
42d5d36cf5 fix: fixed accounts positions in case of account deletion 2023-07-20 14:32:41 +02:00
Sale Djenic
543b087896 fix: wallet accounts ordering improvements 2023-07-20 14:32:41 +02:00
Sale Djenic
7063ad11aa chore: synchronization improvements applied to keycards
This is the second step of improvements over keypairs/keycards/accounts.
- `SyncKeycardAction` protobuf removed
- `SyncKeypair` protobuf is used for syncing keycards state as well as for all
keycards related changes
- `last_update_clock` column removed from `keypairs` table cause as well as
for accounts, any keycard related change is actually a change made on a related
keypair, thus a keypair's clock keeps the clock of the last change
- `position` column added to `keypairs` table, needed to display keycards in
the same order accross devices
2023-07-11 15:14:49 +02:00
Sale Djenic
61527f8c78 chore: synchronization improvements applied to keypairs/accounts
This is the first step of improvements over keypairs/keycards/accounts.
- `SyncKeypairFull` protobuf removed
- `SyncKeypair` protobuf is used for syncing all but the watch only accounts
- `SyncAccount` is used only for syncing watch only accounts
- related keycards are synced together with a keypair
- on any keypair change (either it's just a keypair name or any change made over an
account which belongs to that keypair) entire keypair is synced including related keycards
- on any watch only account related change, that account is synced with all its details
2023-07-05 14:41:26 +02:00
Anthony Laibe
da2f155f2d feat: add account position 2023-06-26 16:15:48 +02:00
Anthony Laibe
f82818ff93 feat: expose account created at 2023-06-04 20:00:35 +02:00
Khushboo-dev-cpp
8b91e3aaaf
chore: Add ColorId for Wallet accounts that can be shared with mobile (#3521) 2023-06-02 17:06:51 +02:00
frank
5d62a9eef4
Fix/mobile issue 16043 (#3560)
* update color hash/id on login

* bump version

* fix test

* fix conflict with LoginAccount
2023-06-01 20:57:05 +08:00
Sale Djenic
34f5ef031c feat: a profile keypair name follows display name
As part of this commit `UpdateKeypairName` endpoint added,
will be used to rename all but the profile keypairs.
2023-05-25 19:46:47 +02:00
Sale Djenic
eeaaf0ce3f feat: accounts improvements applied
- old `accounts` table is moved/mapped to `keypairs` and `keypairs_accounts`
- `keycards` table has foreign key which refers to `keypairs.key_uid`
- `Keypair` introduced as a new type
- api endpoints updated according to this change
2023-05-25 19:46:47 +02:00
Sale Djenic
189c7a6919 chore: keypairs package which actually refers to keycards is renamed to keycards package
This commit renames few api endpoints:
- old `AddMigratedKeyPairOrAddAccountsIfKeyPairIsAdded` renamed to `AddKeycardOrAddAccountsIfKeycardIsAdded`
- old `GetAllMigratedKeyPairs` renamed to `GetAllKnownKeycardsGroupedByKeyUID`
- old `GetMigratedKeyPairByKeyUID` renamed to `GetKeycardByKeyUID`
- old `DeleteKeypair` renamed to `DeleteAllKeycardsWithKeyUID`
2023-05-10 09:27:51 +02:00
Sale Djenic
e9482e3974 tests: updated due to updating old accounts as a part of migration process 2023-03-28 16:19:27 +02:00
Sale Djenic
f10bd00ceb feat: keypair_name and last_used_derivation_index columns added to accounts table
- `keypair_name` added to `accounts` table, all accounts derived from the
same master key have the same keypair name and also no two keypairs share
the same keypair name (keypair name is unique per keypair)
- `last_used_derivation_index` added to `accounts` table, cause we need
to maintain the highest index been used for the derivations made within
the same keypair
2023-03-28 16:19:27 +02:00
frank
ec7c0e9c7d
Sync all devices after initial pairing (#3047) 2023-01-06 20:21:14 +08:00
Sale Djenic
fdf4c05968 chore: unused code removed 2022-11-09 18:07:16 +03:00
Sale Djenic
00aa103788 feat: keypairs table added and necessary endpoints exposed via accounts api 2022-09-12 09:52:22 +02:00
Sale Djenic
41f3a19a49 feat: key_uid column added to the accounts table 2022-09-12 08:51:15 +02:00
Samuel Hawksby-Robinson
26b33aa09d Added AccountType to enforce strict typing on Accounts
Also a tpyo was fixed, probably introduced by me.
2022-08-25 22:01:43 +01:00
Patryk Osmaczko
4143de3816 feat: add social links
iterates: #2782
2022-08-16 14:29:00 +02:00
Vitaliy Vlasov
3dee94e505 Wallet sync for generated accounts 2022-07-06 19:24:43 +03:00
Patryk Osmaczko
a471fed6a6 fix: account unmarshaling
JSON deserialization hasn't worked correctly, resulting in empty
publicKey. That led to an account created with nil color hash and
color id.
2022-05-31 15:25:13 +02:00
Sale Djenic
78cba969cc notifications settings end points added and notification_settings table 2022-05-26 11:49:08 +02:00
Vitaliy Vlasov
011238b1d1 Wallet sync 2022-05-18 15:25:20 +03:00
Sale Djenic
4018e4334b Added mixed case address to the Account struct 2022-05-13 16:17:24 +02:00
Pascal Precht
6ca86b6b99 Fix call to get node config 2022-04-22 12:30:46 +01:00
Khushboo-dev-cpp
b83f4a6c83
fix: Add derivation path to wallet account generation (#2618) 2022-04-13 11:15:26 +02:00
Pascal Precht
7032fc9dcc Introduce community history archive routine
This introduces logic needed to:

- Create WakuMessageArchives and and indices from store waku messages
- History archive torrent data to disk and create .torrent file from
  that
- Seed and unseed history archive torrents as necessary
- Starting/stopping the torrent client
- Enabling/disabling community history support for individual components
  and starting/stopping the routine intervals accordingly

This does not yet handle magnet links (#2568)

Closes #2567
2022-04-06 13:00:33 +02:00
Samuel Hawksby-Robinson
e67592d556
Sync Settings (#2478)
* Sync Settings

* Added valueHandlers and Database singleton

Some issues remain, need a way to comparing incoming sql.DB to check if the connection is to a different file or not. Maybe make singleton instance per filename

* Added functionality to check the sqlite filename

* Refactor of Database.SaveSyncSettings to be used as a handler

* Implemented inteface for setting sync protobuf factories

* Refactored and completed adhoc send setting sync

* Tidying up

* Immutability refactor

* Refactor settings into dedicated package

* Breakout structs

* Tidy up

* Refactor of bulk settings sync

* Bug fixes

* Addressing feedback

* Fix code dropped during rebase

* Fix for db closed

* Fix for node config related crashes

* Provisional fix for type assertion - issue 2

* Adding robust type assertion checks

* Partial fix for null literal db storage and json encoding

* Fix for passively handling nil sql.DB, and checking if elem has len and if len is 0

* Added test for preferred name behaviour

* Adding saved sync settings to MessengerResponse

* Completed granular initial sync and clock from network on save

* add Settings to isEmpty

* Refactor of protobufs, partially done

* Added syncSetting receiver handling, some bug fixes

* Fix for sticker packs

* Implement inactive flag on sync protobuf factory

* Refactor of types and structs

* Added SettingField.CanSync functionality

* Addressing rebase artifact

* Refactor of Setting SELECT queries

* Refactor of string return queries

* VERSION bump and migration index bump

* Deactiveate Sync Settings

* Deactiveated preferred_name and send_status_updates

Co-authored-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2022-03-23 18:47:00 +00:00
Andrea Maria Piana
d60a6713fe Enable mailserver cycle by default
This commit enables mailserver cycle logic by default and make a few
changes:

1) Nodes are graylisted instead of being blacklisted for a set amount of
   time. The reason is that if we blacklist, any cut in connectivity
   might result in long delays before reconnecting, especially on spotty
   connections.

2) Fixes an issue on the devp2p server, whereby the node would not
   connect to one of the static nodes since all the connection slots
   where filled. The fix is a bit inelegant, it always connects to
   static nodes, ignoring maxpeers, but it's tricky to get it to work
   since the code is clearly not written to select a specific node.

3) Adds support to pinned mailservers

4) Add retries to mailservers requests. It uses a closure for now, I
   think we should eventually have a channel etc, but I'd leave that for
   later.
2022-03-19 08:56:22 +00:00
Richard Ramos
50ec6f97e0 feat: display name 2022-03-14 13:48:34 -04:00
Khushboo-dev-cpp
5f81b3acf9
feat: Added emoji params for a wallet account (#2582) 2022-03-11 11:59:15 +01:00
Richard Ramos
a15c27c588 feat: unified chat API pt. 3 (#2535) 2022-03-03 15:37:07 -04:00
Richard Ramos
0a758b0f7d feat: stickerpacks service 2022-03-02 17:46:16 -04:00
Khushboo-dev-cpp
6e1eece545
feat: Move Tenor Api to status_go (#2505) 2022-01-31 13:58:03 +01:00
Anthony Laibe
2b8b2be1f2
feat: move create accounts to status go (#2492) 2022-01-24 10:29:18 +01:00
Richard Ramos
52b2c5db7b
feat: verify if mailserver is pinned in cycle (#2489) 2022-01-19 08:35:19 -04:00
Richard Ramos
53f86fe2f1
fix: nodeconfig unmarshaling (#2488) 2022-01-13 13:31:08 -04:00
Richard Ramos
ee41e30881
feat: extract node config from settings to individual tables (#2470) 2022-01-12 16:04:43 -04:00
Richard Ramos
98784b752a
feat: desktop mailserver cycle (#2481) 2022-01-12 12:02:01 -04:00
Richard Ramos
33250c9134
feat: desktop browser provider (#2465) 2021-12-21 11:44:37 -04:00
Richard Ramos
b244188702
feat: LoginWithConfig (#2469)
Adds a new funtion to login with an account passing a node configuration that will override any specified attribute from the stored account nodeconfig
2021-12-21 10:27:18 -04:00