146 Commits

Author SHA1 Message Date
Jamie Caprani
4801342a42
chore: add doc on pixel perfection (#16539) 2023-07-12 03:31:14 -07:00
Jamie Caprani
9ac14b6fac
chore: update guidelines for figma api to match quo2 component api (#16454) 2023-07-10 02:45:39 -07:00
Icaro Motta
19ca8e28a5
Lint and fix missing trailing newlines (#16445)
Apply the Clojure Style Guide recommendation to end files with proper lines
(having a trailing newline character). See
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
2023-07-04 19:40:13 +00:00
Mohamed Javid
ce82e87cd0
Update broken Status development link in ide-setup.md (#16391)
This commit updates the broken link of `Status development` in the `Start and connect the REPL` section of `ide-setup.md`.

Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
2023-06-26 16:43:58 +05:30
Andrea Maria Piana
398810066d
Add team member to decision (#16336) 2023-06-23 11:36:07 +02:00
Andrea Maria Piana
850ac3f9f8
Add decision about team structure & wallet team 2023-06-19 14:13:34 +01:00
Samuel Hawksby-Robinson
c9c7b538c7
Added PR Review Policy (#16280)
* Added PR Review Policy

* Reformat of Policy section to headline with policy fundementals

* Renaming code owner to requester
2023-06-15 23:02:50 +01:00
Mohamed Javid
42040e4fc9
Update default iOS Simulator (#16289)
Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
2023-06-15 23:37:11 +05:30
Volodymyr Kozieiev
a5c41612a0
Information about patching 3rd parties (#16249) 2023-06-12 13:17:48 +01:00
Icaro Motta
a17efa7299
Make json-rpc/call effect more in line with re-frame standards (#15936)
Changes effect :json/rpc-call to accept on-success and on-error parameters
either as functions OR as re-frame event vectors. The changes are 100% backwards
compatible.

## Why?

Re-frame is very explicit in its documentation and its architecture, saying that
event handlers should be pure. Calling re-frame.core/dispatch in event handlers
makes them sort of stateful.

> So, you can "get away with it". But it ain't pure.
>
> -- https://day8.github.io/re-frame/EffectfulHandlers/#90-solution

In status-mobile, arguably one of our most important effects (not to be confused
with event handlers) is :json-rpc/call, but at the moment, the on-success and
on-error values are expected to be stateful functions (e.g. usually used for
logging and dispatching subsequent events).

This creates two important problems:

1. The value returned by event handlers is more opaque and cannot be easily
   inspected (for example using tap>, log/debug or just println). If we try to
   inspect or log them, on-success and on-error will be printed as
   #object[Function].
2. Testing event handlers using :json-rpc/call becomes an exercise of
   frustration, because we can't simply compare the results of the event handler
   with a good expected value, which is one of the big selling points of testing
   pure functions.

### The testability of event handlers

> For any re-frame app, there's three things to test:
>
> - Event Handlers - most of your testing focus will be here because this is
>   where most of the logic lives
> - Subscription Handlers - often not a lot to test here. Only Layer 3
>   subscriptions need testing.
> - View functions - I don't tend to write tests for views.
>
> -- https://day8.github.io/re-frame/Testing/#what-to-test

So re-frame is saying event handlers should be pure, and that event handlers
should be tested.

In order to achieve the divine simplicity of testing event handlers as pure
functions, we need to make :json-rpc/call also accept on-success and
on-error as event vectors.

Good news is that there is a known pattern to solve this problem, e.g. used by
the library https://github.com/Day8/re-frame-http-fx.

The pattern is simple once we see it: behind the scenes, :json-rpc/call conj'es
the results of the RPC call into the event vectors on-success and on-error, and
:json-rpc/call dispatches the events itself. This eliminates the need for the
stateful dispatch call in event handlers.
2023-05-18 15:56:10 -03:00
Volodymyr Kozieiev
5655efa448
Separate doc with debug tips (#15849)
Debugging basics
2023-05-10 10:38:59 +01:00
flexsurfer
4a42d20b0c
update guidlines (#15686) 2023-04-24 14:38:11 +02:00
yqrashawn
9b756544fd
feat: add in-app notification, refactor toast (#15642) 2023-04-17 14:01:25 +08:00
Brian Sztamfater
0f8aec00f2
Add guidelines for defining styles with apply-animations-to-style
Signed-off-by: Brian Sztamfater <brian@status.im>
2023-03-28 11:58:06 -03:00
Ulises Manuel Cárdenas
94ddbbcd2e
Add checked? property, dark blur variant & tests to disclaimer component
Co-authored-by: Jamie Caprani <jamiecaprani@gmail.com>
2023-03-27 14:06:09 -06:00
Jamie Caprani
d8c110bf85
feat: add title input component to quo2 (#15133) 2023-03-11 08:29:11 -08:00
yqrashawn
46896ff7f4
ci: add component test (#15071) 2023-02-21 13:42:33 +08:00
Jamie Caprani
cbad7f4c87
feat: add drawer buttons to quo2 (#15062)
feat: add drawer buttons to quo2
2023-02-16 06:29:44 -08:00
Siddarth Kumar
bbb07ff595
we should explicitly mention testing status-go in our docs (#15091)
* we should explicitly mention testing status-go
2023-02-15 17:06:55 +05:30
Icaro Motta
0c59ed5ceb
Improve guidelines (#15008)
- New section: Use [] instead of () in Reagent components: New section after
  this comment https://github.com/status-im/status-mobile/pull/15005#discussion_r1098220176
- Updated section "Don't use percents to define width/height": reworded to
  follow the style of the rest of the document.
- Update section "Accessibility labels": added example about avoiding dynamic
  labels.
2023-02-07 10:05:38 -03:00
Icaro Motta
2dad2b67e8
Update style namespaces (#14941)
Update certain `style.cljs` files to more strictly follow our guidelines. Except for animations and theme colors, *style* functions should be pure.

It turns out `style` namespaces are well behaved and are almost perfectly following guidelines 🚀 

The motivation for the PR came from this thread https://github.com/status-im/status-mobile/pull/14925#discussion_r1090485454
2023-02-02 07:23:06 -03:00
Volodymyr Kozieiev
bfb2863774
Documentation updated (#14933) 2023-01-31 12:06:29 +00:00
Icaro Motta
7cf17b5d34
Move unit test helper namespace to src/test_helpers/ (#14716) 2023-01-05 11:58:37 -03:00
Icaro Motta
915b8ebd9a
New component Selector > Filter (#14650) 2022-12-28 12:21:15 -03:00
Siddarth Kumar
b074e9c58e
moving security from status-im ns to root utils (#14567)
making a lint a fix

update old decision doc

fixing issues while poorly rebasing

fix incorrect ns imports
2022-12-20 17:56:21 +05:30
Icaro Motta
5693df5a74
Lint namespace aliases (#14526) 2022-12-13 17:04:26 -03:00
2f1c236333
ci: update Apple dev team ID to update the org
We are trasnferring the Apple app to the new Switzerland based Apple
development organization/team from the old Singapore one, and to make
this work we also need to update the development team ID.

This should fix the following failure:
```
Could not find App ID with bundle identifier 'im.status.ethereum'
You can easily generate a new App ID on the Developer Portal using 'produce':
```
https://ci.infra.status.im/job/status-mobile/job/platforms/job/ios/854/console

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-12-07 10:45:14 +01:00
Icaro Motta
6e272a96c8
Introduce subscription tests (#14472) 2022-12-06 13:36:05 -03:00
Icaro Motta
c198133769
Update guidelines (#14445) 2022-11-28 09:58:36 -03:00
Icaro Motta
a77f662948
Document new guidelines (#14309) 2022-11-14 07:15:49 -03:00
yqrashawn
2bfc57281a
docs: run tests in repl (#14206) 2022-10-21 16:02:30 +08:00
frank
7ac2e1aa20
replace web3-utils methods usage by status-go (#13940)
Signed-off-by: frank <lovefree103@gmail.com>
2022-10-19 00:05:07 +08:00
Ibrahem Khalil
390ac858dc
Update starting guide doc (#14107)
* Update starting guide doc

* Fix bad placement of tut

* formatting and style fixes

Signed-off-by: Jakub Sokołowski <jakub@status.im>

* add adb link

Signed-off-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: Jakub Sokołowski <jakub@status.im>
2022-10-05 15:39:28 +02:00
fac5301ace
docs/FDROID: not to create the PR as draft first
Otherwise F-Droid reviewers can merge the PR before we have a final
release version ready with all the fixes included.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-09-23 11:13:39 +02:00
Parvesh Monu
147958dd13
Allow disabling Hermes engine by passing flag while building app (#14041) 2022-09-21 14:56:26 +05:30
omahs
0495a9a0ba
Fix: typos (#13937)
Fix: typos
2022-09-06 08:46:49 +02:00
yqrashawn
98ca311a97
feat: lottie splash screen (#13714)
[#13714] feat: lottie splash screen
2022-08-02 12:48:12 +02:00
yqrashawn
d3235e4174
fix: typo (#13739) 2022-07-29 13:46:57 +02:00
erikseppanen
1377ba3c1a
Update IDE_SETUP.md (#13734)
Add IDE section for emacs
2022-07-28 15:29:52 +02:00
1f7fd17ff1
rename status-react to status-mobile
This way the name of the repo makes at least some sense and
matches the `status-desktop` repo naming.

Also updated `status-jenkins-lib` since it also contained
references to `status-react` repo and job names.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-07-17 14:46:16 +02:00
Peter Strömberg
81f37e0a63
Update IDE setup docs, adding Calva
Signed-off-by: Audrius Molis <masta@dr.com>
2022-06-16 16:29:56 +03:00
Andrea Maria Piana
9bcbb580e1
Add login integration test
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2022-06-08 13:43:32 +01:00
Andrea Maria Piana
60cfca1107
Move mailserver logic to status-go
598b83757c...d60a6713fe
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2022-03-19 09:01:21 +00:00
b1780a7128
docs: add list of nix deps update make targets
Important now that we're onboarding more new devs.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-01-27 21:42:05 +01:00
Parvesh Monu
94fde74b88
Reorder community chats and categories using drag and drop (#12854) 2021-12-24 21:04:44 +05:30
Andrea Maria Piana
5c52854d11
fdroid: add script that automates submissions
This script fetches a specified APK and analyzes it for values like
version code or commit and then based on that creates a branchy and a
commit in `fdroiddata` repository that can be used to create a release PR.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-10-13 12:13:38 +02:00
Parvesh Monu
eb5711e9bc
Custom Emoji Thumbnails for Community Channels (#12594) 2021-10-04 19:08:39 +05:30
d4da8209cd
Revert "Remove fastlane metadata because no one use it"
Because as pointed out in this comment:
https://github.com/status-im/status-react/issues/12289#issuecomment-894008069
the lack of fastlane metadata makes F-Droid unable to find out things
like app description.

For more details see:
https://f-droid.org/en/docs/All_About_Descriptions_Graphics_and_Screenshots/#fastlane-structure

This reverts commit 3469aca1d873a21491510dc4cd001eaf4910492a.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-08-12 19:28:20 +02:00
Serhy
a1d091ac19
Update release process guide
Signed-off-by: Serhy <sergii@status.im>
2021-06-22 14:15:28 +03:00
Volodymyr Kozieiev
3469aca1d8
Remove fastlane metadata because no one use it
Signed-off-by: Volodymyr Kozieiev <vkjr.sp@gmail.com>
2021-05-11 12:09:42 +03:00