Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dab78312a5 | ||
|
|
04a7f76271 | ||
|
|
ca6fd3df66 | ||
|
|
337b1d77d0 |
@@ -62,14 +62,14 @@
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data android:scheme="http" android:host="join.status.im" />
|
||||
<data android:scheme="https" android:host="join.status.im" />
|
||||
<data android:scheme="http" android:host="status.app" />
|
||||
<data android:scheme="https" android:host="status.app" />
|
||||
</intent-filter>
|
||||
<intent-filter android:autoVerify="true">
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data android:scheme="status-im" />
|
||||
<data android:scheme="status-app" />
|
||||
<data android:scheme="ethereum" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
<string>im.status.ethereum.applink</string>
|
||||
<key>CFBundleURLSchemes</key>
|
||||
<array>
|
||||
<string>status-im</string>
|
||||
<string>status-app</string>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<string>development</string>
|
||||
<key>com.apple.developer.associated-domains</key>
|
||||
<array>
|
||||
<string>applinks:join.status.im</string>
|
||||
<string>applinks:status.app</string>
|
||||
</array>
|
||||
<key>keychain-access-groups</key>
|
||||
<array>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<string>im.status.ethereum.applink</string>
|
||||
<key>CFBundleURLSchemes</key>
|
||||
<array>
|
||||
<string>status-im</string>
|
||||
<string>status-app</string>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<string>development</string>
|
||||
<key>com.apple.developer.associated-domains</key>
|
||||
<array>
|
||||
<string>applinks:join.status.im</string>
|
||||
<string>applinks:status.app</string>
|
||||
</array>
|
||||
<key>keychain-access-groups</key>
|
||||
<array>
|
||||
|
||||
+33
-87
@@ -81,20 +81,20 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "cider/cider-nrepl/0.25.3/cider-nrepl-0.25.3",
|
||||
"path": "cider/cider-nrepl/0.29.0/cider-nrepl-0.29.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "5ae0efd9377a5e60c084bdaf4a2ce094f759ce23",
|
||||
"sha256": "0drxf9nm23i1pcgrkwbcr09msq37csilzww38709add0hz8spjhq"
|
||||
"sha1": "45f6034b26a14138e74145b7a4059628c0fedcd1",
|
||||
"sha256": "1dy1l6y8cb8xiqq97a4lf8giyiicq4wfl4s2lxn5fb6614cjxqx2"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "cider/piggieback/0.4.1/piggieback-0.4.1",
|
||||
"path": "cider/piggieback/0.5.2/piggieback-0.5.2",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "0a02a3e2ecd7a126ab60d8a44793342f20ced79b",
|
||||
"sha256": "142vl5np33akcrnn6pksi0rjfsmmi528villxsj6cwcndvybiw4m"
|
||||
"sha1": "ecfd5c286a85db3f059e75c37fca5722d9e26f79",
|
||||
"sha256": "1ps9yf3cxmlm447hqkidjb5xry90n0wl3jk0jn28fagq31lzylkl"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -108,11 +108,11 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "cljs-bean/cljs-bean/1.3.0/cljs-bean-1.3.0",
|
||||
"path": "cljs-bean/cljs-bean/1.9.0/cljs-bean-1.9.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "eef0aae8057df9c538bf009fd82766d5e86848c7",
|
||||
"sha256": "0c6wlpyc1k5aavw5dixllycdnmr64rrhpc4q57wfyfymixz87d7w"
|
||||
"sha1": "ac78135240a56cdfb104256b73f398bac5bea4d2",
|
||||
"sha256": "129bvlbq3x92p4y1pyikzg774wxf28kxz1qvqqd7mj7bqilwc2gq"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -153,11 +153,11 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/cognitect/transit-cljs/0.8.248/transit-cljs-0.8.248",
|
||||
"path": "com/cognitect/transit-cljs/0.8.280/transit-cljs-0.8.280",
|
||||
"host": "https://repo1.maven.org/maven2",
|
||||
"jar": {
|
||||
"sha1": "7c364a28138880b613981516528a4e3132059394",
|
||||
"sha256": "1j71f5l3mpy34w2p59i5nzbwwrndmknfl4nafialiag2s8ps6pmd"
|
||||
"sha1": "98d11d81caee82f97b9417025750b785fb6ecb16",
|
||||
"sha256": "06hwd00wh0qh5dynf69jnk20az97xmnz5flpk7118qj11v1x8yhm"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -171,11 +171,11 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/cognitect/transit-js/0.8.846/transit-js-0.8.846",
|
||||
"path": "com/cognitect/transit-js/0.8.874/transit-js-0.8.874",
|
||||
"host": "https://repo1.maven.org/maven2",
|
||||
"jar": {
|
||||
"sha1": "bc6e908a4a3ec8818b3de924cd3dce433dd3411f",
|
||||
"sha256": "01937017b9m3dw6s10drj2s76597ayjxdyvd102gnxmb031gynha"
|
||||
"sha1": "f8b4f570ca4d41649190efecac27a5932cc11429",
|
||||
"sha256": "0289pwxxmdhb6gw8djrrdc6qa8jxcv4j105mkskmsmlmsv94nvmd"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -360,38 +360,38 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/taoensso/encore/3.21.0/encore-3.21.0",
|
||||
"path": "com/taoensso/encore/3.68.0/encore-3.68.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "2fd92b7a4ff59715cbbee0ebfd166e2feadfa9ce",
|
||||
"sha256": "0krgb7s28l12nzcgcj4601ajlpkx4wk7zij7b1ly479dxgsr03qx"
|
||||
"sha1": "b098b58e27a7cf9ab5e46aedbb5ababc12805170",
|
||||
"sha256": "1i5bmm83y9wpgvl5h6ysjsw58qrqz4b4v5vqnsprq6f1pmakjfz2"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/taoensso/timbre/4.10.0/timbre-4.10.0",
|
||||
"path": "com/taoensso/timbre/6.3.1/timbre-6.3.1",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "daf6b8826cb16aed7fb3e0dd7a5c5266d2a53854",
|
||||
"sha256": "1rza24rhkzjmik5rwfzqzywp9yvcwilj16him9n7h7p751y6klry"
|
||||
"sha1": "e1b04be262f38bbd9af8f1193b6b3f2c6a37129d",
|
||||
"sha256": "0p6rws5gpab5qldp739lyqvwdbak28vaxbjw2bg2slflkkahszc7"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/taoensso/truss/1.6.0/truss-1.6.0",
|
||||
"path": "com/taoensso/truss/1.11.0/truss-1.11.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "02c08dae83153a50eb946c4d742f574a24bb2a76",
|
||||
"sha256": "0z5mw41ikk2m09vv6rn9hiqjyqlcfkr99cy7kk074w78lryy9w2f"
|
||||
"sha1": "4784f43191d5839448b58128bb455d62616086fd",
|
||||
"sha256": "16xqav4cv3cnfik2d8v3wn7zb2a97ybnrbp6v6nj8m1nmdhr16k7"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "com/taoensso/tufte/2.1.0/tufte-2.1.0",
|
||||
"path": "com/taoensso/tufte/2.6.3/tufte-2.6.3",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "3bece3f233cf626ae373c349117531ccafb9dfde",
|
||||
"sha256": "0lx12szc2n2y21iqvrsjhdw90jiq9a9nkkdki5i80933rgwn9agv"
|
||||
"sha1": "8862c6113ca743ebdcfa17bf4779a21fc08a7c7e",
|
||||
"sha256": "0i0wsv2g2hswgdik6zlgcs212clj1d7fvckxfcsmyfr0vvpc1dmd"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -449,15 +449,6 @@
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "hickory/hickory/0.7.1/hickory-0.7.1",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "d9e6114592c434ca1df6022bbf4d5e97714666ee",
|
||||
"sha256": "021ag1b00821ma6mfl66ljyza1avjlpcld0zhnz1gvppwm5974xz"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "http-kit/http-kit/2.2.0/http-kit-2.2.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
@@ -477,11 +468,11 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "io/aviso/pretty/0.1.33/pretty-0.1.33",
|
||||
"path": "io/aviso/pretty/1.4.4/pretty-1.4.4",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "2ebf75b7ff2a2260827453e7ea98e012a9eca3e2",
|
||||
"sha256": "06w7hpgccr7qy47cwzpq5h2fw27am1imc9cbpg3bc5bbydz9q4df"
|
||||
"sha1": "ab0c981501a6a24066478b724a926a036217d5fd",
|
||||
"sha256": "14mz49f0dn06cs9s4gka32m7n5y49h2vvkgkgdrh4dm3dyslzy5c"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -548,15 +539,6 @@
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "mvxcvi/alphabase/1.0.0/alphabase-1.0.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "008785c0ff977d8132af4aaa931d88ffc44fca03",
|
||||
"sha256": "1g395and521h2q370vh7w0psx63a1zb5f2rcrafqgzw5s3nwlm4q"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "net/cgrand/macrovich/0.2.1/macrovich-0.2.1",
|
||||
"host": "https://repo.clojars.org",
|
||||
@@ -845,15 +827,6 @@
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "org/jsoup/jsoup/1.9.2/jsoup-1.9.2",
|
||||
"host": "https://repo1.maven.org/maven2",
|
||||
"jar": {
|
||||
"sha1": "5e3bda828a80c7a21dfbe2308d1755759c2fd7b4",
|
||||
"sha256": "0sm4s1a8plb8z5467799jvp0s37dr98q82z3y436w9c2n7qqa64w"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "org/jspecify/jspecify/0.2.0/jspecify-0.2.0",
|
||||
"host": "https://repo1.maven.org/maven2",
|
||||
@@ -917,15 +890,6 @@
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "quoin/quoin/0.1.2/quoin-0.1.2",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "0dbbb28df3e337233f934468915eb327ff488172",
|
||||
"sha256": "0b5rc1cmbgg8qpl80jyvh0ldgs7dv86c0qxixazdnz05limmnpb5"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "reagent/reagent/1.2.0/reagent-1.2.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
@@ -945,11 +909,11 @@
|
||||
},
|
||||
|
||||
{
|
||||
"path": "refactor-nrepl/refactor-nrepl/2.5.0/refactor-nrepl-2.5.0",
|
||||
"path": "refactor-nrepl/refactor-nrepl/3.6.0/refactor-nrepl-3.6.0",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "6bc3441afc94f7ca024e41a864ca75e05df7e207",
|
||||
"sha256": "0w8hax99y98l53mixxzx2ja0vcnhjv8dnsaz1zj3vqk775ns5w6i"
|
||||
"sha1": "2b3bb82da53b5db9c2b2aa298417816b81d0ed97",
|
||||
"sha256": "1ysqabmlnghki6x0636zngxza2d83c85276wp9ma9wk183mkv52a"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1007,15 +971,6 @@
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "status-im/timbre/4.10.0-2-status/timbre-4.10.0-2-status",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "e630bd13a422d7dbedeeb26f17aca0a473a9e5d3",
|
||||
"sha256": "1ipakbl438xkj1qhp6lrmjk25vihk15v86k69qba4ny7i0jhyj21"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "thheller/shadow-client/1.3.3/shadow-client-1.3.3",
|
||||
"host": "https://repo.clojars.org",
|
||||
@@ -1068,14 +1023,5 @@
|
||||
"sha1": "a122db758561d995a83cbb40f252b64d8b0f506e",
|
||||
"sha256": "184p1wqcc6ikj9gpaygv4f1mf1p6mqg3j6x1jmqfa53cvf769aj9"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "viebel/codox-klipse-theme/0.0.1/codox-klipse-theme-0.0.1",
|
||||
"host": "https://repo.clojars.org",
|
||||
"jar": {
|
||||
"sha1": "09af0b348e6253dcf9fd567d0d22ffebdea46176",
|
||||
"sha256": "1qg2iyblykfkzmplc2c46916b9m0h5ad6lxmvrk5qn3pdxqr8vw0"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
+11
-17
@@ -7,17 +7,17 @@ borkdude/edamame/1.1.17/edamame-1.1.17.jar
|
||||
borkdude/sci.impl.reflector/0.0.1/sci.impl.reflector-0.0.1.jar
|
||||
camel-snake-kebab/camel-snake-kebab/0.4.3/camel-snake-kebab-0.4.3.jar
|
||||
cheshire/cheshire/5.11.0/cheshire-5.11.0.jar
|
||||
cider/cider-nrepl/0.25.3/cider-nrepl-0.25.3.jar
|
||||
cider/piggieback/0.4.1/piggieback-0.4.1.jar
|
||||
cider/cider-nrepl/0.29.0/cider-nrepl-0.29.0.jar
|
||||
cider/piggieback/0.5.2/piggieback-0.5.2.jar
|
||||
clj-kondo/clj-kondo/2023.09.07/clj-kondo-2023.09.07.jar
|
||||
cljs-bean/cljs-bean/1.3.0/cljs-bean-1.3.0.jar
|
||||
cljs-bean/cljs-bean/1.9.0/cljs-bean-1.9.0.jar
|
||||
clout/clout/2.1.2/clout-2.1.2.jar
|
||||
com/andrewmcveigh/cljs-time/0.5.2/cljs-time-0.5.2.jar
|
||||
com/bhauman/cljs-test-display/0.1.1/cljs-test-display-0.1.1.jar
|
||||
com/cognitect/transit-clj/1.0.329/transit-clj-1.0.329.jar
|
||||
com/cognitect/transit-cljs/0.8.248/transit-cljs-0.8.248.jar
|
||||
com/cognitect/transit-cljs/0.8.280/transit-cljs-0.8.280.jar
|
||||
com/cognitect/transit-java/1.0.362/transit-java-1.0.362.jar
|
||||
com/cognitect/transit-js/0.8.846/transit-js-0.8.846.jar
|
||||
com/cognitect/transit-js/0.8.874/transit-js-0.8.874.jar
|
||||
com/fasterxml/jackson/core/jackson-core/2.13.3/jackson-core-2.13.3.jar
|
||||
com/fasterxml/jackson/dataformat/jackson-dataformat-cbor/2.13.3/jackson-dataformat-cbor-2.13.3.jar
|
||||
com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.13.3/jackson-dataformat-smile-2.13.3.jar
|
||||
@@ -38,20 +38,19 @@ commons-codec/commons-codec/1.15/commons-codec-1.15.jar
|
||||
commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4.jar
|
||||
commons-io/commons-io/2.11.0/commons-io-2.11.0.jar
|
||||
compojure/compojure/1.5.2/compojure-1.5.2.jar
|
||||
com/taoensso/encore/3.21.0/encore-3.21.0.jar
|
||||
com/taoensso/timbre/4.10.0/timbre-4.10.0.jar
|
||||
com/taoensso/truss/1.6.0/truss-1.6.0.jar
|
||||
com/taoensso/tufte/2.1.0/tufte-2.1.0.jar
|
||||
com/taoensso/encore/3.68.0/encore-3.68.0.jar
|
||||
com/taoensso/timbre/6.3.1/timbre-6.3.1.jar
|
||||
com/taoensso/truss/1.11.0/truss-1.11.0.jar
|
||||
com/taoensso/tufte/2.6.3/tufte-2.6.3.jar
|
||||
crypto-equality/crypto-equality/1.0.1/crypto-equality-1.0.1.jar
|
||||
crypto-random/crypto-random/1.2.1/crypto-random-1.2.1.jar
|
||||
day8/re-frame/test/0.1.5/test-0.1.5.jar
|
||||
expound/expound/0.9.0/expound-0.9.0.jar
|
||||
fipp/fipp/0.6.26/fipp-0.6.26.jar
|
||||
hiccup/hiccup/1.0.5/hiccup-1.0.5.jar
|
||||
hickory/hickory/0.7.1/hickory-0.7.1.jar
|
||||
http-kit/http-kit/2.2.0/http-kit-2.2.0.jar
|
||||
instaparse/instaparse/1.4.0/instaparse-1.4.0.jar
|
||||
io/aviso/pretty/0.1.33/pretty-0.1.33.jar
|
||||
io/aviso/pretty/1.4.4/pretty-1.4.4.jar
|
||||
io/methvin/directory-watcher/0.17.1/directory-watcher-0.17.1.jar
|
||||
io/replikativ/datalog-parser/0.2.25/datalog-parser-0.2.25.jar
|
||||
io/undertow/undertow-core/2.2.4.Final/undertow-core-2.2.4.Final.jar
|
||||
@@ -59,7 +58,6 @@ javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar
|
||||
javax/servlet/servlet-api/2.5/servlet-api-2.5.jar
|
||||
javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar
|
||||
medley/medley/0.8.2/medley-0.8.2.jar
|
||||
mvxcvi/alphabase/1.0.0/alphabase-1.0.0.jar
|
||||
net/cgrand/macrovich/0.2.1/macrovich-0.2.1.jar
|
||||
net/java/dev/jna/jna/5.12.1/jna-5.12.1.jar
|
||||
nrepl/bencode/1.1.0/bencode-1.1.0.jar
|
||||
@@ -92,7 +90,6 @@ org/jboss/logging/jboss-logging/3.4.1.Final/jboss-logging-3.4.1.Final.jar
|
||||
org/jboss/threads/jboss-threads/3.1.0.Final/jboss-threads-3.1.0.Final.jar
|
||||
org/jboss/xnio/xnio-api/3.8.0.Final/xnio-api-3.8.0.Final.jar
|
||||
org/jboss/xnio/xnio-nio/3.8.0.Final/xnio-nio-3.8.0.Final.jar
|
||||
org/jsoup/jsoup/1.9.2/jsoup-1.9.2.jar
|
||||
org/jspecify/jspecify/0.2.0/jspecify-0.2.0.jar
|
||||
org/msgpack/msgpack/0.6.12/msgpack-0.6.12.jar
|
||||
org/ow2/asm/asm/9.4/asm-9.4.jar
|
||||
@@ -100,21 +97,18 @@ org/slf4j/slf4j-api/1.7.36/slf4j-api-1.7.36.jar
|
||||
org/wildfly/client/wildfly-client-config/1.0.1.Final/wildfly-client-config-1.0.1.Final.jar
|
||||
org/wildfly/common/wildfly-common/1.5.2.Final/wildfly-common-1.5.2.Final.jar
|
||||
prismatic/schema/1.1.7/schema-1.1.7.jar
|
||||
quoin/quoin/0.1.2/quoin-0.1.2.jar
|
||||
reagent/reagent/1.2.0/reagent-1.2.0.jar
|
||||
re-com/re-com/2.8.0/re-com-2.8.0.jar
|
||||
refactor-nrepl/refactor-nrepl/2.5.0/refactor-nrepl-2.5.0.jar
|
||||
refactor-nrepl/refactor-nrepl/3.6.0/refactor-nrepl-3.6.0.jar
|
||||
re-frame/re-frame/1.3.0/re-frame-1.3.0.jar
|
||||
re-frisk-remote/re-frisk-remote/1.6.0/re-frisk-remote-1.6.0.jar
|
||||
re-frisk/sente/1.15.0/sente-1.15.0.jar
|
||||
ring-cors/ring-cors/0.1.8/ring-cors-0.1.8.jar
|
||||
ring/ring-codec/1.2.0/ring-codec-1.2.0.jar
|
||||
ring/ring-core/1.9.6/ring-core-1.9.6.jar
|
||||
status-im/timbre/4.10.0-2-status/timbre-4.10.0-2-status.jar
|
||||
thheller/shadow-client/1.3.3/shadow-client-1.3.3.jar
|
||||
thheller/shadow-cljs/2.25.0/shadow-cljs-2.25.0-aot.jar
|
||||
thheller/shadow-cljsjs/0.0.22/shadow-cljsjs-0.0.22.jar
|
||||
thheller/shadow-undertow/0.3.1/shadow-undertow-0.3.1.jar
|
||||
thheller/shadow-util/0.7.0/shadow-util-0.7.0.jar
|
||||
tigris/tigris/0.1.2/tigris-0.1.2.jar
|
||||
viebel/codox-klipse-theme/0.0.1/codox-klipse-theme-0.0.1.jar
|
||||
|
||||
+4
-11
@@ -5,11 +5,9 @@
|
||||
[re-frame "1.3.0"]
|
||||
[binaryage/oops "0.7.2"]
|
||||
[com.andrewmcveigh/cljs-time "0.5.2"]
|
||||
[status-im/timbre "4.10.0-2-status"]
|
||||
[hickory "0.7.1"]
|
||||
[cljs-bean "1.3.0"]
|
||||
[com.cognitect/transit-cljs "0.8.248"]
|
||||
[mvxcvi/alphabase "1.0.0"]
|
||||
[com.taoensso/timbre "6.3.1"]
|
||||
[cljs-bean "1.9.0"]
|
||||
[com.cognitect/transit-cljs "0.8.280"]
|
||||
[camel-snake-kebab "0.4.3"]
|
||||
|
||||
;; Dev dependencies
|
||||
@@ -21,16 +19,11 @@
|
||||
;; Use the same version specified in the Nix dependency.
|
||||
[clj-kondo/clj-kondo "2023.09.07"]
|
||||
|
||||
;; We don't use the encore library, but re-frisk requires re-frisk/sente (fork of
|
||||
;; com.taoensso/sente), which in turn requires encore. We need to bump encore to
|
||||
;; 3.21.0+ to remove a warning displayed while shadow-cljs starts (commit
|
||||
;; https://github.com/ptaoussanis/encore/commit/f7a21567b9611a63999609ca183c7fb175034bd6).
|
||||
[com.taoensso/encore "3.21.0"]
|
||||
;; Routing
|
||||
[bidi "2.1.6"]
|
||||
;; Test dependencies
|
||||
[day8.re-frame/test "0.1.5"]
|
||||
[com.taoensso/tufte "2.1.0"]]
|
||||
[com.taoensso/tufte "2.6.3"]]
|
||||
|
||||
;; port and middleware for repl in development
|
||||
:nrepl {:port 7888
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
[status-im.ethereum.eip681 :as eip681]
|
||||
[status-im.ethereum.ens :as ens]
|
||||
[status-im.ethereum.stateofus :as stateofus]
|
||||
[status-im.utils.deprecated-types :as types]
|
||||
[status-im.utils.wallet-connect :as wallet-connect]
|
||||
[status-im2.constants :as constants]
|
||||
[status-im2.contexts.chat.events :as chat.events]
|
||||
@@ -15,29 +14,22 @@
|
||||
[utils.address :as address]
|
||||
[utils.ethereum.chain :as chain]
|
||||
[utils.security.core :as security]
|
||||
[utils.transforms :as transforms]
|
||||
[utils.url :as url]
|
||||
[utils.validators :as validators]))
|
||||
|
||||
(def ethereum-scheme "ethereum:")
|
||||
|
||||
(def uri-schemes ["status-im://" "status-im:"])
|
||||
(def uri-schemes ["status-app://"])
|
||||
|
||||
(def web-prefixes ["https://" "http://" "https://www." "http://www."])
|
||||
|
||||
(def web2-domain "join.status.im")
|
||||
(def web2-domain "status.app")
|
||||
|
||||
(def web-urls (map #(str % web2-domain "/") web-prefixes))
|
||||
|
||||
(def handled-schemes (set (into uri-schemes web-urls)))
|
||||
|
||||
(def browser-extractor
|
||||
{[#"(.*)" :domain] {"" :browser
|
||||
"/" :browser}})
|
||||
|
||||
(def group-chat-extractor
|
||||
{[#"(.*)" :params] {"" :group-chat
|
||||
"/" :group-chat}})
|
||||
|
||||
(def eip-extractor
|
||||
{#{[:prefix "-" :address]
|
||||
[:address]}
|
||||
@@ -47,16 +39,9 @@
|
||||
|
||||
(def routes
|
||||
[""
|
||||
{handled-schemes {"b/" browser-extractor
|
||||
"browser/" browser-extractor
|
||||
["p/" :chat-id] :private-chat
|
||||
["cr/" :community-id] :community-requests
|
||||
["c/" :community-id] :community
|
||||
["cc/" :chat-id] :community-chat
|
||||
"g/" group-chat-extractor
|
||||
["wallet/" :account] :wallet-account
|
||||
["u/" :user-id] :user
|
||||
["user/" :user-id] :user}
|
||||
{handled-schemes {["c/" :community-data] :community
|
||||
["cc/" :chat-data] :community-chat
|
||||
["u/" :user-data] :user}
|
||||
ethereum-scheme eip-extractor}])
|
||||
|
||||
(defn parse-query-params
|
||||
@@ -64,9 +49,52 @@
|
||||
(let [url (goog.Uri. url)]
|
||||
(url/query->map (.getQuery url))))
|
||||
|
||||
(defn parse-fragment
|
||||
[url]
|
||||
(let [url (goog.Uri. url)
|
||||
fragment (.getFragment url)]
|
||||
(when-not (string/blank? fragment)
|
||||
fragment)))
|
||||
|
||||
(defn match-uri
|
||||
[uri]
|
||||
(assoc (bidi/match-route routes uri) :uri uri :query-params (parse-query-params uri)))
|
||||
;;
|
||||
(let [;; bidi has trouble parse path with `=` in it extract `=` here and add back to parsed
|
||||
;; base64url regex based on https://datatracker.ietf.org/doc/html/rfc4648#section-5 may
|
||||
;; include invalid base64 (invalid length, length of any base64 encoded string must be a
|
||||
;; multiple of 4)
|
||||
;; equal-end-of-base64url can be `=`, `==`, `nil`
|
||||
equal-end-of-base64url
|
||||
(last (re-find #"^(https|status-app)://(status\.app/)?(c|cc|u)/([a-zA-Z0-9_-]+)(={0,2})#" uri))
|
||||
|
||||
uri-without-equal-in-path
|
||||
(if equal-end-of-base64url (string/replace-first uri equal-end-of-base64url "") uri)
|
||||
|
||||
fragment (parse-fragment uri)
|
||||
ens? (ens/is-valid-eth-name? fragment)
|
||||
|
||||
{:keys [handler route-params] :as parsed}
|
||||
(assoc (bidi/match-route routes uri-without-equal-in-path)
|
||||
:uri uri
|
||||
:query-params (parse-query-params uri))]
|
||||
(cond-> parsed
|
||||
ens?
|
||||
(assoc-in [:route-params :ens-name] fragment)
|
||||
|
||||
(and (or (= handler :community) (= handler :community-chat)) fragment)
|
||||
(assoc-in [:route-params :community-id] fragment)
|
||||
|
||||
(and equal-end-of-base64url (= handler :community) (:community-data route-params))
|
||||
(update-in [:route-params :community-data] #(str % equal-end-of-base64url))
|
||||
|
||||
(and equal-end-of-base64url (= handler :community-chat) (:chat-data route-params))
|
||||
(update-in [:route-params :chat-data] #(str % equal-end-of-base64url))
|
||||
|
||||
(and equal-end-of-base64url (= handler :user) (:user-data route-params))
|
||||
(update-in [:route-params :user-data] #(str % equal-end-of-base64url))
|
||||
|
||||
(and (= handler :user) fragment)
|
||||
(assoc-in [:route-params :user-id] fragment))))
|
||||
|
||||
(defn match-contact-async
|
||||
[chain {:keys [user-id ens-name]} callback]
|
||||
@@ -84,7 +112,7 @@
|
||||
user-id
|
||||
constants/deserialization-key
|
||||
(fn [response]
|
||||
(let [{:keys [error]} (types/json->clj response)]
|
||||
(let [{:keys [error]} (transforms/json->clj response)]
|
||||
(when-not error
|
||||
(match-contact-async
|
||||
chain
|
||||
@@ -210,41 +238,51 @@
|
||||
:community))
|
||||
|
||||
(defn handle-uri
|
||||
[chain chats uri cb]
|
||||
(let [{:keys [handler route-params query-params]} (match-uri uri)]
|
||||
[chain _chats uri cb]
|
||||
(let [{:keys [handler route-params]} (match-uri uri)]
|
||||
(log/info "[router] uri " uri " matched " handler " with " route-params)
|
||||
(cond
|
||||
|
||||
(= handler :browser)
|
||||
(cb (match-browser uri route-params))
|
||||
;; ;; NOTE: removed in `match-uri`, might need this in the future
|
||||
;; (= handler :browser)
|
||||
;; (cb (match-browser uri route-params))
|
||||
|
||||
(= handler :ethereum)
|
||||
(cb (match-eip681 uri))
|
||||
|
||||
(= handler :user)
|
||||
(and (= handler :user) (:user-id route-params))
|
||||
(match-contact-async chain route-params cb)
|
||||
|
||||
(= handler :private-chat)
|
||||
(match-private-chat-async chain route-params cb)
|
||||
;; ;; NOTE: removed in `match-uri`, might need this in the future
|
||||
;; (= handler :private-chat)
|
||||
;; (match-private-chat-async chain route-params cb)
|
||||
|
||||
(= handler :group-chat)
|
||||
(cb (match-group-chat chats query-params))
|
||||
;; ;; NOTE: removed in `match-uri`, might need this in the future
|
||||
;; (= handler :group-chat)
|
||||
;; (cb (match-group-chat chats query-params))
|
||||
|
||||
(validators/valid-public-key? uri)
|
||||
(match-contact-async chain {:user-id uri} cb)
|
||||
|
||||
(= handler :community-requests)
|
||||
(cb {:type handler :community-id (:community-id route-params)})
|
||||
;; ;; NOTE: removed in `match-uri`, might need this in the future
|
||||
;; (= handler :community-requests)
|
||||
;; (cb {:type handler :community-id (:community-id route-params)})
|
||||
|
||||
(= handler :community)
|
||||
(and (= handler :community) (:community-id route-params))
|
||||
(cb {:type (community-route-type route-params)
|
||||
:community-id (:community-id route-params)})
|
||||
|
||||
(= handler :community-chat)
|
||||
(cb {:type handler :chat-id (:chat-id route-params)})
|
||||
;; ;; TODO: jump to community overview for now, should jump to community channel
|
||||
;; (and (= handler :community-chat) (:chat-id route-params))
|
||||
;; (cb {:type handler :chat-id (:chat-id route-params)})
|
||||
|
||||
(= handler :wallet-account)
|
||||
(cb (match-wallet-account route-params))
|
||||
(and (= handler :community-chat) (:community-id route-params))
|
||||
(cb {:type (community-route-type route-params)
|
||||
:community-id (:community-id route-params)})
|
||||
|
||||
;; ;; NOTE: removed in `match-uri`, might need this in the future
|
||||
;; (= handler :wallet-account)
|
||||
;; (cb (match-wallet-account route-params))
|
||||
|
||||
(address/address? uri)
|
||||
(cb (address->eip681 uri))
|
||||
|
||||
@@ -19,33 +19,41 @@
|
||||
:query-params (when (= 3 (count expected)) (last expected))
|
||||
:uri uri})
|
||||
|
||||
"status-im://u/statuse2e"
|
||||
[:user {:user-id "statuse2e"}]
|
||||
"https://status.app/u/G10A4B0JdgwyRww90WXtnP1oNH1ZLQNM0yX0Ja9YyAMjrqSZIYINOHCbFhrnKRAcPGStPxCMJDSZlGCKzmZrJcimHY8BbcXlORrElv_BbQEegnMDPx1g9C5VVNl0fE4y#zQ3shwQPhRuDJSjVGVBnTjCdgXy5i9WQaeVPdGJD6yTarJQSj"
|
||||
[:user
|
||||
{:user-data
|
||||
"G10A4B0JdgwyRww90WXtnP1oNH1ZLQNM0yX0Ja9YyAMjrqSZIYINOHCbFhrnKRAcPGStPxCMJDSZlGCKzmZrJcimHY8BbcXlORrElv_BbQEegnMDPx1g9C5VVNl0fE4y"
|
||||
:user-id "zQ3shwQPhRuDJSjVGVBnTjCdgXy5i9WQaeVPdGJD6yTarJQSj"}]
|
||||
|
||||
(str "status-im://user/" public-key)
|
||||
[:user {:user-id public-key}]
|
||||
"status-app://u/G10A4B0JdgwyRww90WXtnP1oNH1ZLQNM0yX0Ja9YyAMjrqSZIYINOHCbFhrnKRAcPGStPxCMJDSZlGCKzmZrJcimHY8BbcXlORrElv_BbQEegnMDPx1g9C5VVNl0fE4y#zQ3shwQPhRuDJSjVGVBnTjCdgXy5i9WQaeVPdGJD6yTarJQSj"
|
||||
[:user
|
||||
{:user-data
|
||||
"G10A4B0JdgwyRww90WXtnP1oNH1ZLQNM0yX0Ja9YyAMjrqSZIYINOHCbFhrnKRAcPGStPxCMJDSZlGCKzmZrJcimHY8BbcXlORrElv_BbQEegnMDPx1g9C5VVNl0fE4y"
|
||||
:user-id "zQ3shwQPhRuDJSjVGVBnTjCdgXy5i9WQaeVPdGJD6yTarJQSj"}]
|
||||
|
||||
"status-im://b/www.cryptokitties.co"
|
||||
[:browser {:domain "www.cryptokitties.c"}]
|
||||
"https://status.app/cc/G54AAKwObLdpiGjXnckYzRcOSq0QQAS_CURGfqVU42ceGHCObstUIknTTZDOKF3E8y2MSicncpO7fTskXnoACiPKeejvjtLTGWNxUhlT7fyQS7Jrr33UVHluxv_PLjV2ePGw5GQ33innzeK34pInIgUGs5RjdQifMVmURalxxQKwiuoY5zwIjixWWRHqjHM=#zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"
|
||||
[:community-chat
|
||||
{:chat-data
|
||||
"G54AAKwObLdpiGjXnckYzRcOSq0QQAS_CURGfqVU42ceGHCObstUIknTTZDOKF3E8y2MSicncpO7fTskXnoACiPKeejvjtLTGWNxUhlT7fyQS7Jrr33UVHluxv_PLjV2ePGw5GQ33innzeK34pInIgUGs5RjdQifMVmURalxxQKwiuoY5zwIjixWWRHqjHM="
|
||||
:community-id "zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"}]
|
||||
|
||||
(str "status-im://g/args?a=" public-key "&a1=" chat-name-url "&a2=" chat-id)
|
||||
[:group-chat {:params "arg"} {"a" public-key "a1" chat-name "a2" chat-id}]
|
||||
"status-app://cc/G54AAKwObLdpiGjXnckYzRcOSq0QQAS_CURGfqVU42ceGHCObstUIknTTZDOKF3E8y2MSicncpO7fTskXnoACiPKeejvjtLTGWNxUhlT7fyQS7Jrr33UVHluxv_PLjV2ePGw5GQ33innzeK34pInIgUGs5RjdQifMVmURalxxQKwiuoY5zwIjixWWRHqjHM=#zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"
|
||||
[:community-chat
|
||||
{:chat-data
|
||||
"G54AAKwObLdpiGjXnckYzRcOSq0QQAS_CURGfqVU42ceGHCObstUIknTTZDOKF3E8y2MSicncpO7fTskXnoACiPKeejvjtLTGWNxUhlT7fyQS7Jrr33UVHluxv_PLjV2ePGw5GQ33innzeK34pInIgUGs5RjdQifMVmURalxxQKwiuoY5zwIjixWWRHqjHM="
|
||||
:community-id "zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"}]
|
||||
|
||||
(str "https://join.status.im/g/args?a=" public-key "&a1=" chat-name-url "&a2=" chat-id)
|
||||
[:group-chat {:params "arg"} {"a" public-key "a1" chat-name "a2" chat-id}]
|
||||
"https://status.app/c/iyKACkQKB0Rvb2RsZXMSJ0NvbG9yaW5nIHRoZSB3b3JsZCB3aXRoIGpveSDigKIg4bSXIOKAohiYohsiByMxMzFEMkYqAwEhMwM=#zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"
|
||||
[:community
|
||||
{:community-data
|
||||
"iyKACkQKB0Rvb2RsZXMSJ0NvbG9yaW5nIHRoZSB3b3JsZCB3aXRoIGpveSDigKIg4bSXIOKAohiYohsiByMxMzFEMkYqAwEhMwM="
|
||||
:community-id "zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"}]
|
||||
|
||||
"https://join.status.im/u/statuse2e"
|
||||
[:user {:user-id "statuse2e"}]
|
||||
|
||||
(str "https://join.status.im/user/" public-key)
|
||||
[:user {:user-id public-key}]
|
||||
|
||||
;; Last char removed by: https://github.com/juxt/bidi/issues/104
|
||||
"https://join.status.im/b/www.cryptokitties.co"
|
||||
[:browser {:domain "www.cryptokitties.c"}]
|
||||
|
||||
"https://join.status.im/b/https://www.google.com/"
|
||||
[:browser {:domain "https://www.google.co"}]
|
||||
"status-app://c/iyKACkQKB0Rvb2RsZXMSJ0NvbG9yaW5nIHRoZSB3b3JsZCB3aXRoIGpveSDigKIg4bSXIOKAohiYohsiByMxMzFEMkYqAwEhMwM=#zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"
|
||||
[:community
|
||||
{:community-data
|
||||
"iyKACkQKB0Rvb2RsZXMSJ0NvbG9yaW5nIHRoZSB3b3JsZCB3aXRoIGpveSDigKIg4bSXIOKAohiYohsiByMxMzFEMkYqAwEhMwM="
|
||||
:community-id "zQ3shYSHp7GoiXaauJMnDcjwU2yNjdzpXLosAWapPS4CFxc11"}]
|
||||
|
||||
"ethereum:0x89205a3a3b2a69de6dbf7f01ed13b2108b2c43e7"
|
||||
[:ethereum {:address "0x89205a3a3b2a69de6dbf7f01ed13b2108b2c43e7"}]
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
(i18n/label :t/browsing-site-blocked-title)]
|
||||
[react/nested-text {:style styles/description-text}
|
||||
(i18n/label :t/browsing-site-blocked-description1)
|
||||
[{:on-press #(.openURL ^js react/linking "status-im://chat/public/status")
|
||||
;; NOTE: this link is broken
|
||||
[{:on-press #(.openURL ^js react/linking "status-app://chat/public/status")
|
||||
:style styles/chat-link-text}
|
||||
"#status"]
|
||||
(i18n/label :t/browsing-site-blocked-description2)]
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
|
||||
;; domains should be without the trailing slash
|
||||
(def domains
|
||||
{:external "https://join.status.im"
|
||||
:internal "status-im:/"})
|
||||
{:external "https://status.app"
|
||||
:internal "status-app:/"})
|
||||
|
||||
(def links
|
||||
{:private-chat "%s/p/%s"
|
||||
@@ -81,17 +81,20 @@
|
||||
(log/info "universal-links: handling community" community-id)
|
||||
(navigation/navigate-to cofx :community {:community-id community-id}))
|
||||
|
||||
|
||||
(rf/defn handle-navigation-to-desktop-community-from-mobile
|
||||
{:events [:handle-navigation-to-desktop-community-from-mobile]}
|
||||
[cofx deserialized-key]
|
||||
(navigation/navigate-to cofx :community-overview deserialized-key))
|
||||
(rf/merge
|
||||
cofx
|
||||
{:dispatch [:navigate-to :community-overview deserialized-key]}
|
||||
(navigation/pop-to-root :shell-stack)))
|
||||
|
||||
(rf/defn handle-desktop-community
|
||||
[cofx {:keys [community-id]}]
|
||||
(native-module/deserialize-and-compress-key
|
||||
community-id
|
||||
(fn [deserialized-key]
|
||||
(rf/dispatch [:chat.ui/resolve-community-info (str deserialized-key)])
|
||||
(rf/dispatch [:handle-navigation-to-desktop-community-from-mobile (str deserialized-key)]))))
|
||||
|
||||
(rf/defn handle-community-chat
|
||||
@@ -212,9 +215,8 @@
|
||||
(.then dispatch-url))
|
||||
200)
|
||||
(.addEventListener ^js react/linking "url" url-event-listener)
|
||||
;;StartSearchForLocalPairingPeers() shouldn't be called ATM from the UI
|
||||
;;It can be called after the error "route ip+net: netlinkrib: permission denied" is fixed on status-go
|
||||
;;side
|
||||
;;StartSearchForLocalPairingPeers() shouldn't be called ATM from the UI It can be called after the
|
||||
;;error "route ip+net: netlinkrib: permission denied" is fixed on status-go side
|
||||
#_(native-module/start-searching-for-local-pairing-peers
|
||||
#(log/info "[local-pairing] errors from local-pairing-preflight-outbound-check ->" %)))
|
||||
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
(is (nil? (get-in (links/handle-url {:db db} "some-url")
|
||||
[:db :universal-links/url]))))
|
||||
(testing "Handle a custom string"
|
||||
(is (= (get-in (links/handle-url {:db db} "https://join.status.im/u/statuse2e")
|
||||
(is (= (get-in (links/handle-url {:db db} "https://status.app/u/statuse2e")
|
||||
[::router/handle-uri :uri])
|
||||
"https://join.status.im/u/statuse2e")))))))
|
||||
"https://status.app/u/statuse2e")))))))
|
||||
|
||||
(deftest url-event-listener
|
||||
(testing "the url is not nil"
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
|
||||
;; domains should be without the trailing slash
|
||||
(def domains
|
||||
{:external "https://join.status.im"
|
||||
:internal "status-im:/"})
|
||||
{:external "https://status.app"
|
||||
:internal "status-app:/"})
|
||||
|
||||
(def links
|
||||
{:private-chat "%s/p/%s"
|
||||
|
||||
@@ -4,25 +4,25 @@
|
||||
[status-im.utils.universal-links.utils :as links]))
|
||||
|
||||
(deftest universal-link-test
|
||||
(testing "status-im://blah"
|
||||
(testing "status-app://blah"
|
||||
(testing "it returns true"
|
||||
(is (links/universal-link? "status-im://blah"))))
|
||||
(testing "status-im://blah"
|
||||
(is (links/universal-link? "status-app://blah"))))
|
||||
(testing "status-app://blah"
|
||||
(testing "it returns true"
|
||||
(is (links/deep-link? "status-im://blah"))))
|
||||
(is (links/deep-link? "status-app://blah"))))
|
||||
(testing "ethereum:0x89205a3a3b2a69de6dbf7f01ed13b2108b2c43e7"
|
||||
(testing "it returns true"
|
||||
(is (links/deep-link? "ethereum:0x89205a3a3b2a69de6dbf7f01ed13b2108b2c43e7"))))
|
||||
(testing "http://join.status.im/blah"
|
||||
(testing "http://status.app/blah"
|
||||
(testing "it returns true"
|
||||
(is (links/universal-link? "http://join.status.im/blah"))))
|
||||
(testing "https://join.status.im/blah"
|
||||
(is (links/universal-link? "http://status.app/blah"))))
|
||||
(testing "https://status.app/blah"
|
||||
(testing "it returns true"
|
||||
(is (links/universal-link? "https://join.status.im/blah"))))
|
||||
(is (links/universal-link? "https://status.app/blah"))))
|
||||
(testing "unicode characters"
|
||||
(testing "it returns false"
|
||||
(is (not (links/universal-link? "https://join.status.im/browse/www.аррӏе.com")))))
|
||||
(testing "not-status-im://blah"
|
||||
(is (not (links/universal-link? "https://status.app/browse/www.аррӏе.com")))))
|
||||
(testing "not-status-app://blah"
|
||||
(testing "it returns false"
|
||||
(is (not (links/universal-link? "https://not.status.im/blah")))))
|
||||
(testing "http://not.status.im/blah"
|
||||
@@ -31,6 +31,6 @@
|
||||
(testing "https://not.status.im/blah"
|
||||
(testing "it returns false"
|
||||
(is (not (links/universal-link? "https://not.status.im/blah")))))
|
||||
(testing "http://join.status.im/blah"
|
||||
(testing "http://status.app/blah"
|
||||
(testing "it returns false"
|
||||
(is (not (links/deep-link? "http://join.status.im/blah"))))))
|
||||
(is (not (links/deep-link? "http://status.app/blah"))))))
|
||||
|
||||
@@ -29,13 +29,13 @@
|
||||
:mobile-system? false
|
||||
:log-level level
|
||||
:callback handle-error}]
|
||||
(log/merge-config! {:ns-whitelist ["*"]})
|
||||
(log/merge-config! {:ns-filter {:allow #{"*"} :deny #{"taoensso.sente"}}})
|
||||
(if (string/blank? level)
|
||||
(native-module/init-status-go-logging (merge logging-params {:log-level "WARN"}))
|
||||
(do
|
||||
(log/set-level! (-> level
|
||||
string/lower-case
|
||||
keyword))
|
||||
(log/set-min-level! (-> level
|
||||
string/lower-case
|
||||
keyword))
|
||||
(log/merge-config!
|
||||
{:output-fn (fn [& data]
|
||||
(let [res (apply log/default-output-fn data)]
|
||||
|
||||
@@ -178,9 +178,9 @@
|
||||
(def regx-bold #"\*[^*]+\*")
|
||||
(def regx-italic #"~[^~]+~")
|
||||
(def regx-backquote #"`[^`]+`")
|
||||
(def regx-universal-link #"((^https?://join.status.im/)|(^status-im://))[\x00-\x7F]+$")
|
||||
(def regx-community-universal-link #"((^https?://join.status.im/)|(^status-im://))c/([\x00-\x7F]+)$")
|
||||
(def regx-deep-link #"((^ethereum:.*)|(^status-im://[\x00-\x7F]+$))")
|
||||
(def regx-universal-link #"((^https?://status.app/)|(^status-app://))[\x00-\x7F]+$")
|
||||
(def regx-community-universal-link #"((^https?://status.app/)|(^status-app://))c/([\x00-\x7F]+)$")
|
||||
(def regx-deep-link #"((^ethereum:.*)|(^status-app://[\x00-\x7F]+$))")
|
||||
(def regx-ens #"^(?=.{5,255}$)([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.[a-zA-Z]{2,}$")
|
||||
(def regx-address #"^0x[a-fA-F0-9]{40}$")
|
||||
(def regx-address-contains #"(?i)0x[a-fA-F0-9]{40}")
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
(zipmap (repeat nil))))
|
||||
([kv] (-> (init-contact) (merge kv))))
|
||||
|
||||
(def url-regex #"^https?://join.status.im/u/(.+)")
|
||||
(def url-regex #"^https?://status.app/u/(.+)")
|
||||
|
||||
(defn ->id
|
||||
[{:keys [input] :as contact}]
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
(def ckey "zQ3shWj4WaBdf2zYKCkXe6PHxDxNTzZyid1i75879Ue9cX9gA")
|
||||
(def ens "esep")
|
||||
(def ens-stateofus-eth (str ens ".stateofus.eth"))
|
||||
(def link-ckey (str "https://join.status.im/u/" ckey))
|
||||
(def link-ens (str "https://join.status.im/u/" ens))
|
||||
(def link-ckey (str "https://status.app/u/" ckey))
|
||||
(def link-ens (str "https://status.app/u/" ens))
|
||||
|
||||
;;; unit tests (no app-db involved)
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
(defn community-link
|
||||
[id]
|
||||
(str "https://join.status.im/c/" id))
|
||||
(str "https://status.app/c/" id))
|
||||
|
||||
(rf/defn cache-link-preview-data
|
||||
{:events [:chat.ui/cache-link-preview-data]}
|
||||
|
||||
@@ -84,8 +84,7 @@
|
||||
[l message]
|
||||
(s/add l message))
|
||||
|
||||
(tufte/add-basic-println-handler! {:format-pstats-opts {:columns [:n-calls :mean :min :max :clock
|
||||
:total]
|
||||
(tufte/add-basic-println-handler! {:format-pstats-opts {:columns [:n :mean :min :max :clock :sum]
|
||||
:format-id-fn name}})
|
||||
|
||||
(deftest ^:benchmark benchmark-list
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
(merge {:first num
|
||||
:assetType "Photos"
|
||||
:groupTypes (if (= album (i18n/label :t/recent)) "All" "Albums")
|
||||
:groupName (when (not= album (i18n/label :t/recent)) album)
|
||||
:groupName (if (not= album (i18n/label :t/recent)) album "")
|
||||
:include ["imageSize"]}
|
||||
(when end-cursor
|
||||
{:after end-cursor}))
|
||||
|
||||
@@ -43,11 +43,11 @@
|
||||
|
||||
(defn get-abbreviated-profile-url
|
||||
"The goal here is to generate a string that begins with
|
||||
join.status.im/u/ joined with the 1st 5 characters
|
||||
status.app/u/ joined with the 1st 5 characters
|
||||
of the compressed public key followed by an ellipsis followed by
|
||||
the last 10 characters of the compressed public key"
|
||||
[base-url public-key]
|
||||
(if (and public-key base-url (> (count public-key) 17) (= "join.status.im/u/" base-url))
|
||||
(if (and public-key base-url (> (count public-key) 17) (= "status.app/u/" base-url))
|
||||
(let [first-part-of-public-pk (subs public-key 0 5)
|
||||
ellipsis "..."
|
||||
public-key-size (count public-key)
|
||||
|
||||
@@ -22,22 +22,22 @@
|
||||
|
||||
(deftest test-get-abbreviated-profile-url
|
||||
(testing "Ensure the function correctly generates an abbreviated profile URL for a valid public key"
|
||||
(is (= "join.status.im/u/zQ3sh...mrdYpzeFUa"
|
||||
(is (= "status.app/u/zQ3sh...mrdYpzeFUa"
|
||||
(utils.address/get-abbreviated-profile-url
|
||||
"join.status.im/u/"
|
||||
"status.app/u/"
|
||||
"zQ3shPrnUhhR42JJn3QdhodGest8w8MjiH8hPaimrdYpzeFUa"))))
|
||||
|
||||
(testing "Ensure the function returns nil when given an empty public key"
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "join.status.im/u/" ""))))
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "status.app/u/" ""))))
|
||||
|
||||
(testing "Ensure the function returns nil when given a nil public key"
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "join.status.im/u/" nil))))
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "status.app/u/" nil))))
|
||||
|
||||
(testing "Ensure the function returns nil when given an incorrect base URL"
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url
|
||||
"join.status.im/uwu/"
|
||||
"status.app/uwu/"
|
||||
"zQ3shPrnUhhR42JJn3QdhodGest8w8MjiH8hPaimrdYpzeFUa"))))
|
||||
|
||||
(testing "Ensure the function returns nil when given a public key shorter than 17 characters"
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "join.status.im/u/" "abc")))
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "join.status.im/u/" "1234")))))
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "status.app/u/" "abc")))
|
||||
(is (nil? (utils.address/get-abbreviated-profile-url "status.app/u/" "1234")))))
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
(def ^:const account-initials-action "/accountInitials")
|
||||
(def ^:const contact-images-action "/contactImages")
|
||||
(def ^:const generate-qr-action "/GenerateQRCode")
|
||||
(def ^:const status-profile-base-url "https://join.status.im/u/")
|
||||
(def ^:const status-profile-base-url-without-https "join.status.im/u/")
|
||||
(def ^:const status-profile-base-url "https://status.app/u/")
|
||||
(def ^:const status-profile-base-url-without-https "status.app/u/")
|
||||
|
||||
(defn get-font-file-ready
|
||||
"setup font file and get the absolute path to it
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
(when js/goog.DEBUG
|
||||
(when (taoensso.timbre/level>=
|
||||
:trace
|
||||
(:level taoensso.timbre/*config*))
|
||||
(:min-level taoensso.timbre/*config*))
|
||||
(println
|
||||
(clojure.string/join
|
||||
(concat
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"_comment": "Instead use: scripts/update-status-go.sh <rev>",
|
||||
"owner": "status-im",
|
||||
"repo": "status-go",
|
||||
"version": "v0.171.1",
|
||||
"commit-sha1": "3326362b90ba3b853118ac0aa3be8502fc1aed4f",
|
||||
"src-sha256": "1npjwhvckmldjy1p7mc6rml8i21mb23409mgl13dzysmlqkppqb1"
|
||||
"version": "build_test_b",
|
||||
"commit-sha1": "472374bb39824afefa11adc153387557fc36bd7a",
|
||||
"src-sha256": "1srysz1y2l4jcdmcs0aa3qp7q6qn2pdfmqd8znnbz18mcjdhm9i5"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user