Commit Graph

2843 Commits

Author SHA1 Message Date
Andrey Shovkoplyas 73531b255b
[#8509] Assets list is not fully scrollable on iOS
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-07-02 14:29:43 +02:00
Vitaliy Vlasov 4f6e06bf59
Use react-native-screens
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-07-01 09:30:19 +03:00
Roman Volosovskyi 6d1b376221
resurrect rn-snoopy and add some comments 2019-06-27 18:34:43 +03:00
Roman Volosovskyi 2b6bfb9851
connectivity-status animation with native driver 2019-06-27 18:09:18 +03:00
Dmitry Novotochinov ab2248f9f8
keycard onboarding v1
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-06-27 16:02:57 +03:00
Rikku b9d4e61fdf
fix margin between the plus button and bottom tab bar #8166
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-06-27 15:51:51 +03:00
Roman Volosovskyi 6c50fe84f5
command suggestions and parameters animation with native driver 2019-06-26 16:55:35 +03:00
Roman Volosovskyi fd2c37df71
tooltip animation with native driver 2019-06-26 16:54:38 +03:00
Roman Volosovskyi 453fe60c46
signing sheet animation with nativeDriver 2019-06-26 13:25:28 +03:00
Roman Volosovskyi 8ac0d6b92b
delatable item animation with native driver 2019-06-26 10:55:49 +03:00
Roman Volosovskyi 72d2faee14
preload main tabs after login 2019-06-25 17:36:31 +03:00
Vitaliy Vlasov 9b82f5b9ec
Fix public chats issue
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-06-25 16:53:35 +03:00
Roman Volosovskyi b172d60f1d
dapp permissions sheet animation with native driver 2019-06-25 15:17:34 +03:00
Roman Volosovskyi cd968cc507
search input animation with nativeDriver 2019-06-25 15:12:13 +03:00
Serhy 7237dd510d
Multiaccount critical e2e fixed
Signed-off-by: Serhy <sergii@status.im>
2019-06-25 13:42:27 +03:00
Julien Eluard 3b7e92230b
[Fix #8067] Added screens for ENS preferred name selection
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-06-25 08:50:39 +02:00
Roman Volosovskyi cd567656d6
stickers panel animation with native driver 2019-06-24 18:28:45 +03:00
Igor Mandrigin 79454938bc
[android, ios] render markdown-ish formatting in chat messages natively.
use patched RN to make sure that heavily-formatted messages don't slow
our chats down.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-06-24 16:50:09 +02:00
Roman Volosovskyi ae52fd07f4
add back tooltip-triangle icon 2019-06-24 17:35:40 +03:00
Roman Volosovskyi 4242dddd10
fix network switching in dev mode 2019-06-24 17:11:37 +03:00
Roman Volosovskyi cd97557591
remove message options animation (dead code) 2019-06-24 17:03:36 +03:00
Roman Volosovskyi 4f6086ed1d
input helper animation with native driver 2019-06-24 15:45:40 +03:00
Andrea Maria Piana 532664ab84
Adds topic negotiation and partitioned topic
All the code has been implemented in statusgo: status-im/status-go#1466

Basically all the whisper filter management is done at that level.

Technical description
On startup we load all chats and send a list of them to status go:
For a public chat: {:chatId "status"}, we create a single filter, based on the name of the chat.

For each contact added by us, each user in a group chat and each one to one chat open, we send:
{:chatId "0x", :oneToOne true}. This will create a chats, to listen to their contact code.

Any previously negotiated topic is also returned.

Once loaded, we create our filters, and upsert the mailserver topics, both of which are solely based on the filters loaded.
In order to remove a chat, we delete/stopwatching first the the filter in status-react and then ask status-go to remove the filter. For a public chat we always remove, for a one-to-one we remove only if the user is not in our contacts, or in a group chat or we have a chat open. Negotiated topics are never removed, as otherwise the other user won't be able to contact us anymore.

On stopping whisper we don't have to ask status-go to remove filters as they are removed automatically.

Some more logic can be pushed in status-go, but that will be in subsequent PRs.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-06-24 13:54:43 +02:00
Roman Volosovskyi e45479138f
[Android] default white background on all screens 2019-06-24 13:54:36 +03:00
Julien Eluard 797d8037e0
Improved chat message tapping area
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-06-21 15:58:55 +03:00
Vitaliy Vlasov b6163b8ae5
Check tribute if contact was added (but not otherwise)
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-06-19 15:19:09 +03:00
Roman Volosovskyi 2ad4c9c054
upgrade react-navigation 2019-06-19 12:00:22 +03:00
Andrey Shovkoplyas 26bbac83bc
[#8348] [Multi-Account] Account overview + individual wallet UI
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-18 17:44:56 +02:00
Roman Volosovskyi 6da2c93a41
[mobile] switch to png icons 2019-06-18 15:10:10 +03:00
Julien Eluard 8aa16520c6
[Fixes #8066] Added native ENS registration
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-18 13:25:56 +02:00
Roman Volosovskyi 7097de6e05
[perf] extensions module 2019-06-13 09:35:09 +03:00
Roman Volosovskyi 908f730b1d
[perf] network module 2019-06-13 09:33:18 +03:00
Igor Mandrigin 2204ad5142
Use `initialNumToRender` property + simplify our messaging FlatList.
see https://facebook.github.io/react-native/docs/flatlist#initialnumtorender

Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-12 17:03:24 +02:00
Alexandre Magno 287e097471
adding error for a field defined with range that is out of range on extensions
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-12 17:02:23 +02:00
Anton Danchenko d1b991f656
e2e fixes 2019-06-12 13:20:02 +02:00
Andrey Shovkoplyas 7de2941f26
[#8026] [Wallet] Sign transaction module 2019-06-12 13:20:01 +02:00
Roman Volosovskyi e925b2dc46
[perf] prod version of slurp
All resources loaded by slurp are moved to status-modules/resources dir
in release builds and are loaded only by demand instead of being bundled into
index.*.js.
2019-06-11 15:52:23 +03:00
tbenr 66dafaef25
[fix #8375] unavailable for non bioauth devices
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-11 09:28:15 +02:00
Roman Volosovskyi 9f8ab373f8
prevent showing error dialog and code loading 2019-06-10 21:12:20 +03:00
Roman Volosovskyi 3bd0947b4c
[perf] move goog.i18n deps to a module 2019-06-10 21:10:42 +03:00
yenda 04de022eae
[refactor] replace web3-prototype
- replace web3-prototype wherever possible
- currently only the money namespace is left
for future refactoring, the ideal solution
would be to use strings for big numbers all
the time and only convert for arithmetic operations
- use json-rpc call to replace trivial web3 calls

Signed-off-by: yenda <eric@status.im>
2019-06-06 15:57:34 +02:00
Roman Volosovskyi 632bbf3bc1
[perf] Move translation to node_modules in release build 2019-06-05 18:40:53 +03:00
Rikku 4f125aec43
[#6517] fix chat preview amount ios
Signed-off-by: yenda <eric@status.im>
2019-06-05 16:01:34 +02:00
yenda c2b5523322
[fix] last message preview
Signed-off-by: yenda <eric@status.im>
2019-06-05 12:37:06 +02:00
yenda bd6583cb76
[fix][perf] fix typography on android
- remove font-weight and font-style on mobile because otherwise android
falls back to default font and doesn't use the font-family
- since nested text inherits from parent, only put the needed styling
in nested text style
- use parens instead of brackets to resolve components
2019-06-05 11:38:36 +02:00
yenda 1ae42ea424
[perf] upgrade realm and improve schemas/queries
- upgrade to realm 2.28 to benefit from perf improvements
- remove user-statuses and replace by seen and outgoing-status fields
to get rid of a lot of bloat queries and computations
- remove unused seen message, bottom-infos
- remove unused fields in transport schema
- use objectForPrimaryKey whenever possible instead of get by field

Signed-off-by: yenda <eric@status.im>
2019-06-04 23:36:35 +02:00
yenda b3df9d4952
[fix] class calls
This concerns:
- touchable-opacity
- animated-view
- scroll-view

Tip for rebasing:
search in project for `scroll-view)` `animated-view)` and `touchable-opacity)`

Signed-off-by: yenda <eric@status.im>
2019-06-04 11:25:35 +02:00
yenda 1cb7f3b83f
[perf] remove unused schemas and properties
Signed-off-by: yenda <eric@status.im>
2019-06-03 18:24:34 +02:00
yenda a1d6ead6d3
[perf] use objectForPrimaryKey instead of getByField
Signed-off-by: yenda <eric@status.im>
2019-06-03 16:36:51 +02:00
Vitaliy Vlasov 04ccd0e7d8
Add TtT chat flow
Signed-off-by: yenda <eric@status.im>
2019-06-03 15:31:30 +02:00
yenda 75e20a0bbd
remove useless field in message subs
Signed-off-by: yenda <eric@status.im>
2019-06-03 11:06:34 +02:00
tbenr e93906c0d9
update open-login-callback after fx/def macro fix
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-03 10:51:50 +02:00
Igor Mandrigin 34300cc0c0
Remove unused fields in chats dictionary.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-31 16:11:05 +02:00
yenda 334b3c41a9
[fix] event transfer hash turned into a function
that is silly

Signed-off-by: yenda <eric@status.im>
2019-05-31 11:05:24 +02:00
tbenr 090a4e7c76
fixes #6573
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-31 10:25:24 +02:00
Roman Volosovskyi daacccb512
[Android, iOS] Advanced ClojureScript compilation 2019-05-30 21:23:31 +03:00
yenda f03225c03d
[fix] destructuring in events for fx/defn macro
Signed-off-by: yenda <eric@status.im>
2019-05-30 18:17:28 +02:00
yenda 254639e586
[feature] add transaction watch
Signed-off-by: yenda <eric@status.im>
2019-05-30 18:16:18 +02:00
yenda 4b6e5763e1
[feature] add basic decoding support for swarm
Signed-off-by: yenda <eric@status.im>
2019-05-30 18:15:32 +02:00
yenda 131b423a0a
[feature] allow internal transaction to specify asset
- allows transaction flow started by an internal feature to show
the right asset in the overview and in transaction messages
(required for tribute to talk)

Signed-off-by: yenda <eric@status.im>
2019-05-30 15:59:30 +02:00
Igor Mandrigin af6c784ab4
Prepare to use status-go based protocol: 1-1 and public chat management APIs.
Connect to stubs of status-go protocol API, behind the flag. Since status-go isn't updated yet, setting this flag will break the app.
What needs to be tested is no regressions in a normal mode.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-29 16:34:37 +02:00
yenda 513ca85f27
[fix] on-result event for in app transactions
Signed-off-by: yenda <eric@status.im>
2019-05-29 16:02:53 +02:00
Dmitry 8014f05837
Add goerli testnet
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-29 14:58:59 +02:00
Dmitry Novotochinov fd061833f5
save keycard key-uid to account and use it to login
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-29 12:55:32 +03:00
yenda 7b8bf647e2
[fix] superfluous keyword
Signed-off-by: yenda <eric@status.im>
2019-05-28 18:21:52 +02:00
Andrey Shovkoplyas 5382cad5ec
fix custom tokens
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-28 09:21:45 +02:00
Roman Volosovskyi c7c7b50281
RAM bundle basic setup 2019-05-27 17:34:17 +03:00
yenda 9b04dc6530
[dev feature] extend the defn macro
the defn macro knows register the function as an events under the
keywords provided in the :events key of the attributes map. It also
adds the interceptors provided in the :interceptors map

exemple:

```clojure
(fx/defn hello4
  {:doc "this function is useless as well"
   :events [:test/valid1 :test/valid2]}
  [{:keys [db]} b]
  {:db (assoc db :a b) :b (:a db)})
```

Signed-off-by: yenda <eric@status.im>
2019-05-27 13:50:46 +02:00
Roman Volosovskyi 64afaf5eb3
[#8277] Report a bug template
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-05-24 12:14:11 -04:00
Dmitry Novotochinov 1341965a0f
[#8256] do not call getApplicationInfo every time card connected
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-24 15:36:32 +03:00
Roman Volosovskyi 9394dc2bfe
App version and more detail in logs email 2019-05-24 13:37:55 +03:00
Roman Volosovskyi b0be9ee976
Send logs on shaking device 2019-05-24 13:35:04 +03:00
yenda b13864d052
[refactor] move utils.ethereum to ethereum
move utils.ethereum.tokens to ethereum.tokens
move utils.ethereum.abi-spec to ethereum.abi-spec
move utils.ethereum.core to ethereum.core
move utils.ethereum.eip165 to ethereum.eip165
move utils.ethereum.eip55 to ethereum.eip55
move utils.ethereum.eip681 to ethereum.eip681
move utils.ethereum.ens to ethereum.ens
move utils.ethereum.erc721 to ethereum.erc721
move utils.ethereum.mnemonics to ethereum.mnemonics
move utils.ethereum.resolver to ethereum.resolver
move utils.ethereum.macros to ethereum.macros

Signed-off-by: yenda <eric@status.im>
2019-05-23 15:11:48 +02:00
yenda ded207ead2
[refactor] use `ethereum` `current-address` and `chain-keyword`
in many places in the codebase, we are doing various destructuring
and function calls to get the normalized current address and the chain
keyword for the current network

this PR replace all usages by utility functions introduced recently

Signed-off-by: yenda <eric@status.im>
2019-05-23 14:48:43 +02:00
yenda 291c413848
[fix] remove duplicates of :hardwallet/verify-pin event
Signed-off-by: yenda <eric@status.im>
2019-05-23 13:52:03 +02:00
yenda 4103591fe1
[fix] always show tokens that have a balance
- temporary fix before visible assets are fixed
- the problem is that you can't hide an asset with the way it currently
works, it will come back every time as long as there is a balance for it

Signed-off-by: yenda <eric@status.im>
2019-05-23 10:56:35 +02:00
yenda b6fecd4e1c
[refactor] remove ethereum `call` and `call-params`
- use `json-rpc/eth-call` and `json-rpc/eth-transaction-call`
everywhere
- move all conversions to abi-spec
2019-05-23 10:44:15 +02:00
yenda fc4c772c0b
[refactoring] remove web3, clean up wallet effects
- introduce json-rpc namespace, which provides `call` and `eth-call`,
a generic way of calling a json-rpc method taking care of conversions
and error handling
- remove web3 usage from wallet
- clean up effects, reducing the amount of computations when login in
2019-05-23 10:44:15 +02:00
yenda 89680f4861
[performance] improve wallet update performances
`wallet-autoconfig-token` is a very expensive call on mainnet
because it checks the balance of every known token.

it is called:
- when wallet is refreshed by pulling
- when user goes on any wallet screen

this PR changes that by:
- calling it only when the wallet is initialized and there is no
visible-token configuration

it only calls update-wallet when a new transaction arrives
2019-05-23 10:44:15 +02:00
yenda 2cd26c585d
[refactor] transaction history and filters 2019-05-23 10:30:33 +02:00
yenda f1b8ba8764
[refactor] transaction details 2019-05-23 10:30:33 +02:00
yenda b274ed9fa9
[feature] use new block signal to get new transactions
- remove the transaction fetching loop entirely to rely only on subscription
for live transactions and token transfer updates
- fetch token transfers history via etherscan API to lift the 100000 blocks
limit on token transfers history

- inbound token transfers are catched via a filter on ethlogs
- outbound token transfers and other transactions are catched by filtering
transaction in current block that have the wallet address as to or from field
2019-05-23 10:30:32 +02:00
yenda f5c18ae7a9
[feature] use subscriptions for tokens
- removes fetching of last 100000 blocks of token transfers from
the wallet pull loop
- fetches the last 100000 blocks of token transfers at startup
- replaces pulling by subscriptions to ethlogs for token transfers
2019-05-23 10:30:32 +02:00
Andrey Shovkoplyas 8c349a3038
[#8239] App crash when submit cryptokitties with different than it's valid domain
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 17:52:20 +02:00
Andrey Shovkoplyas 7a1cb54b2a
[#8236] [Wallet] Custom token details and remove
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 16:50:05 +02:00
Edvard 0ac53000f6
Add Bloom token
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 16:42:20 +02:00
Roman Volosovskyi 932ef27ee8
[performance] limit number of rendered messages when open a chat 2019-05-22 16:59:13 +03:00
bitsikka d640b4c87c
[7947] Feature: Blank out app preview screen when switching apps on mobile
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 15:31:50 +02:00
Churikova Tetiana 6b1c42ffcb
added accessibility-labels
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-22 10:04:39 +02:00
Andrey Shovkoplyas df2a9a0297
[#8249] "" when grant access to ens dapp shown, it prevents the name to be registered
Signed-off-by: yenda <eric@status.im>
2019-05-22 09:56:40 +02:00
Volodymyr Kozieiev add759711a
Optimized ScrollView instead of FlatList for desktop chat
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-21 10:51:36 +02:00
bitsikka 4f8399a8fd
[7715] Feature: Contextual bottom sheet on long press
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-20 17:04:21 +02:00
Andrey Shovkoplyas 23b04288f1
[#7983] Basic user added ERC-20 support
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-20 14:29:38 +02:00
Roman Volosovskyi 543ccb69e8
Add send logs button to exception dialog 2019-05-20 15:25:27 +03:00
Dmitry Novotochinov 89643b425e
[#8187] fix keyboard pop-up when logout after keycard setup finished
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-20 11:55:32 +03:00
yenda 70e889a03a
[performance] replace reduce by reduce-kv
For associative collections, using reduce-kv should
give a small performance gain over reduce as there is
no allocation of tuples for key/value pairs

Signed-off-by: yenda <eric@status.im>
2019-05-17 19:44:26 +02:00
Roman Volosovskyi 3226309bab
Add js logs to archive 2019-05-15 17:40:41 +03:00
yenda b0449f3416
[fix] ipfs CID
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-14 13:44:08 +02:00
tbenr 1ff0a937ac
fixes #7371
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-14 13:42:28 +02:00
Roman Volosovskyi 74093f6843
[iOS] Allow to send email with logs on iOS 2019-05-14 12:57:05 +03:00