Compare commits
16
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4a5b947afd | ||
|
|
f673e442f3 | ||
|
|
548f212c6f | ||
|
|
f033677be8 | ||
|
|
8a4302c85a | ||
|
|
c888c512a2 | ||
|
|
72bf8a8702 | ||
|
|
49e9b4212b | ||
|
|
19aa78cc81 | ||
|
|
02b8d2140a | ||
|
|
72d8c4446f | ||
|
|
09bf6673cf | ||
|
|
455a739318 | ||
|
|
ac07109e86 | ||
|
|
248996ce6f | ||
|
|
a2bf23cc12 |
@@ -386,9 +386,8 @@ component-test-watch: export COMPONENT_TEST := true
|
|||||||
component-test-watch: export BABEL_ENV := test
|
component-test-watch: export BABEL_ENV := test
|
||||||
component-test-watch: export JEST_USE_SILENT_REPORTER := false
|
component-test-watch: export JEST_USE_SILENT_REPORTER := false
|
||||||
component-test-watch: ##@ Watch tests and re-run no changes to cljs files
|
component-test-watch: ##@ Watch tests and re-run no changes to cljs files
|
||||||
@@scripts/check-metro-shadow-process.sh
|
@scripts/check-metro-shadow-process.sh
|
||||||
rm -rf ./component-spec
|
rm -rf ./component-spec
|
||||||
yarn install
|
|
||||||
nodemon --exec 'yarn shadow-cljs compile component-test && jest --config=test/jest/jest.config.js --testEnvironment node ' -e cljs
|
nodemon --exec 'yarn shadow-cljs compile component-test && jest --config=test/jest/jest.config.js --testEnvironment node ' -e cljs
|
||||||
|
|
||||||
component-test: export TARGET := clojure
|
component-test: export TARGET := clojure
|
||||||
@@ -398,7 +397,6 @@ component-test: export JEST_USE_SILENT_REPORTER := false
|
|||||||
component-test: ##@test Run component tests once in NodeJS
|
component-test: ##@test Run component tests once in NodeJS
|
||||||
@scripts/check-metro-shadow-process.sh
|
@scripts/check-metro-shadow-process.sh
|
||||||
rm -rf ./component-spec
|
rm -rf ./component-spec
|
||||||
yarn install
|
|
||||||
yarn shadow-cljs compile component-test && \
|
yarn shadow-cljs compile component-test && \
|
||||||
jest --clearCache && jest --config=test/jest/jest.config.js --testEnvironment node
|
jest --clearCache && jest --config=test/jest/jest.config.js --testEnvironment node
|
||||||
|
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ buildToolsVersion=33.0.0
|
|||||||
supportLibVersion=28.0.0
|
supportLibVersion=28.0.0
|
||||||
# This should match version from nix/pkgs/aapt2/default.nix
|
# This should match version from nix/pkgs/aapt2/default.nix
|
||||||
gradlePluginVersion=7.4.2
|
gradlePluginVersion=7.4.2
|
||||||
kotlinPluginVersion=1.7.22
|
kotlinPluginVersion=1.9.0
|
||||||
|
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
|
|||||||
+613
-33
@@ -11129,16 +11129,16 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "com/google/errorprone/error_prone_annotations/2.24.0",
|
"path": "com/google/errorprone/error_prone_annotations/2.24.1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"error_prone_annotations-2.24.0.pom": {
|
"error_prone_annotations-2.24.1.pom": {
|
||||||
"sha1": "a267fc6adc4f7e83c84ecd3bfa3d757f0faa4c4e",
|
"sha1": "e36d508134193b5b782a79cd834fef22f96850ea",
|
||||||
"sha256": "sha256-MDJ5+CcjbFXBkhu9hjL941NUxcNcAma8CF+apovLcV0="
|
"sha256": "sha256-dW0LPDkGWZ2XMUDuziZuDej08ZKvFLGQBq8Un+kO+NU="
|
||||||
},
|
},
|
||||||
"error_prone_annotations-2.24.0.jar": {
|
"error_prone_annotations-2.24.1.jar": {
|
||||||
"sha1": "29dca9118b577ad24533e563438feb8fad51427e",
|
"sha1": "32b299e45105aa9b0df8279c74dc1edfcf313ff0",
|
||||||
"sha256": "sha256-qIvYgSTI1MmFGrgjrcOo8EsKE68VydgLXs9J9aejIdI="
|
"sha256": "sha256-Gf4vcVXSDqCTFoUnmZ2pgQgQPuVG0ei3JrxLJ8MaPDA="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -11232,12 +11232,12 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "com/google/errorprone/error_prone_parent/2.24.0",
|
"path": "com/google/errorprone/error_prone_parent/2.24.1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"error_prone_parent-2.24.0.pom": {
|
"error_prone_parent-2.24.1.pom": {
|
||||||
"sha1": "2aca1bd2b01e085422633daa951905ea36ccd009",
|
"sha1": "20bcb755b5f180723ef1b055f34a1834b7410f54",
|
||||||
"sha256": "sha256-XfQPVmlQqy86ZF0z2LcXGB7v9OplOO+2/ZuRL+obie4="
|
"sha256": "sha256-y589WAUC7OXhJCnX96x1/kerhdat91zd+G+lokrvpI8="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -16913,6 +16913,17 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/jvm/org.jetbrains.kotlin.jvm.gradle.plugin/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"org.jetbrains.kotlin.jvm.gradle.plugin-1.9.0.pom": {
|
||||||
|
"sha1": "896c88badef90b092f519041d1ee201eb5d1b1a0",
|
||||||
|
"sha256": "sha256-Bb7sz992ArEqfazluEynL3ao8E3ookIUo/WSxzYmtrc="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-android-extensions/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-android-extensions/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -16943,6 +16954,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-android-extensions/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-android-extensions-1.9.0.pom": {
|
||||||
|
"sha1": "c08cc427bc37faf86bd41de0b64e8ac67899a06b",
|
||||||
|
"sha256": "sha256-WOHIg3JukUaVIDV95u0Xw/mSnI4IsRdKJ6OtbsDrzVI="
|
||||||
|
},
|
||||||
|
"kotlin-android-extensions-1.9.0.jar": {
|
||||||
|
"sha1": "ca23de2a64833d204f9af248e265274f3b8c0333",
|
||||||
|
"sha256": "sha256-IGdbuyp7aYKnFEUYpRi5qJZfkK6JuMmHiJgBIkSh6jM="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-annotations-jvm/1.3.72",
|
"path": "org/jetbrains/kotlin/kotlin-annotations-jvm/1.3.72",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17018,6 +17044,51 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-build-common/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-build-common-1.9.0.pom": {
|
||||||
|
"sha1": "ab861d4e7cbca289fa3d215daad0cbfb2a2cfb82",
|
||||||
|
"sha256": "sha256-6itlfmsETYgfDT/f/BPOKIwlQYxipbBL/64XeJDs6EU="
|
||||||
|
},
|
||||||
|
"kotlin-build-common-1.9.0.jar": {
|
||||||
|
"sha1": "68e075bff7dca0d2d444c19279afe6882f311a19",
|
||||||
|
"sha256": "sha256-txTWfNj1bTe4Pqj2XdysZAXFdix9n2EV81J0o5GxW2w="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-build-tools-api/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-build-tools-api-1.9.0.pom": {
|
||||||
|
"sha1": "ab0f33a948936b4ef2b51a8b82720fe5982184e5",
|
||||||
|
"sha256": "sha256-iIFxmCZbm8BrPzSTWyv2qpj0gA7OvBzOQREN70m3pCE="
|
||||||
|
},
|
||||||
|
"kotlin-build-tools-api-1.9.0.jar": {
|
||||||
|
"sha1": "5d33265af7283ca4d7b1f3115b83b54545f4cfab",
|
||||||
|
"sha256": "sha256-0ZyavegKnPQtJezJLLEUjtOhXu2yZy2qHkZubaWQ7sY="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-build-tools-impl/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-build-tools-impl-1.9.0.pom": {
|
||||||
|
"sha1": "3d7403fd4d2f8914b46b250f6746da17c5a1ba47",
|
||||||
|
"sha256": "sha256-3Qrb3SO5XBP8N2JAqCoL/F1k37eBON7GJASX6QVtQIw="
|
||||||
|
},
|
||||||
|
"kotlin-build-tools-impl-1.9.0.jar": {
|
||||||
|
"sha1": "1ce2bdaf6dd80d4e7748058231059766e298a6de",
|
||||||
|
"sha256": "sha256-1yw3nxx1eZrAxm5sMVj2iGW9/tGlw1xepBwnihuAUBo="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-compiler-embeddable/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-compiler-embeddable/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17048,6 +17119,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-compiler-embeddable/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-compiler-embeddable-1.9.0.pom": {
|
||||||
|
"sha1": "079ce81c461cfa0c3ad6b05b4a40b23bf821dbd2",
|
||||||
|
"sha256": "sha256-7jyHHO39bM9A0ESUQJbihlXeL5NF2ET+7GPMqcXkt8w="
|
||||||
|
},
|
||||||
|
"kotlin-compiler-embeddable-1.9.0.jar": {
|
||||||
|
"sha1": "2c8c3a7402becca891f12739b3e9fd2dc2adbd7a",
|
||||||
|
"sha256": "sha256-lTtQaR103SGf8/ZkRnDD5UnYfN/AphVPFgKmoKXf43M="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-compiler-runner/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-compiler-runner/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17078,6 +17164,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-compiler-runner/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-compiler-runner-1.9.0.pom": {
|
||||||
|
"sha1": "f2f333b81d78150bca741b75646a042f8a69be2c",
|
||||||
|
"sha256": "sha256-GIN9BlVntn5bzy4wTYWm4rbSRDz4En9AdnNKTo3yo2E="
|
||||||
|
},
|
||||||
|
"kotlin-compiler-runner-1.9.0.jar": {
|
||||||
|
"sha1": "4cf7c2cb6bfd82876e592697d3ad9bc835b21010",
|
||||||
|
"sha256": "sha256-BbWlXUlJFhpxT838ZKXwTYejZMm73IZBs7t6VVfkPqo="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-daemon-client/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-daemon-client/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17108,6 +17209,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-daemon-client/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-daemon-client-1.9.0.pom": {
|
||||||
|
"sha1": "af448a4a8fdd5c0bff3d93fa78a2e495779e18a5",
|
||||||
|
"sha256": "sha256-sv50dBgjzM6JMXCWkg3LnOXBa460Z5jTn9jmdwPFidc="
|
||||||
|
},
|
||||||
|
"kotlin-daemon-client-1.9.0.jar": {
|
||||||
|
"sha1": "a7aff9bf77b5c882789cc495262def8948d93c5d",
|
||||||
|
"sha256": "sha256-WoyXfn3H8N4tka5Yva3CBBXe9M9dST5aGD+WxZeZAyA="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-daemon-embeddable/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-daemon-embeddable/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17138,6 +17254,51 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-daemon-embeddable/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-daemon-embeddable-1.9.0.pom": {
|
||||||
|
"sha1": "216bc4d3f72fb679b1f79e73a730cac6e5cd3fa5",
|
||||||
|
"sha256": "sha256-OOMsu5GFenIGy/3cON1O4L5mX0CgEV/21NF348f4kq8="
|
||||||
|
},
|
||||||
|
"kotlin-daemon-embeddable-1.9.0.jar": {
|
||||||
|
"sha1": "186543f5e28cf8d9a0290fecc2cf34301c40a65c",
|
||||||
|
"sha256": "sha256-lDGCoTfs1A5ikFjaUtszbO6bZm+AmWtlWELyCmNz35o="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugins-bom/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugins-bom-1.9.0.pom": {
|
||||||
|
"sha1": "511e9094170ffec75cbb76b58cfe7f1a058dc046",
|
||||||
|
"sha256": "sha256-XTmtkDDf0zsLrCn3UAAJzmKHYulP5h8BF3rhNL24D6E="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugins-bom-1.9.0.module": {
|
||||||
|
"sha1": "b6bc353c189d28e9e0419f0635df8121ae8c8cbf",
|
||||||
|
"sha256": "sha256-/SufabguQ8tQnwhBsYvzxd99q18eC+oDT8CypZnW4pY="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-annotations/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-annotations-1.9.0.pom": {
|
||||||
|
"sha1": "b1b0737be6ae375ea12ea9e7cbc6c6f1a4832ec1",
|
||||||
|
"sha256": "sha256-qjXuWp0dpZMV92nH/tsshwBWD1PFaAupKwsniBpKQnE="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-annotations-1.9.0.jar": {
|
||||||
|
"sha1": "42d1ea51a701505256d5bd54d9152819937835dc",
|
||||||
|
"sha256": "sha256-KiZbNbx8VYIUJukbajzU9LkWOKC8fIffz+TgX36IRzg="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17180,6 +17341,53 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0.pom": {
|
||||||
|
"sha1": "7c80dda386f89cf10d0c3ba399176f5ad26cf057",
|
||||||
|
"sha256": "sha256-VPHdp1Zn7esbrIpY9KNsh4wPBJGGA2vJOnAyjNnNfaw="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle70.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle71.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle74.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle75.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle76.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle80.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0-gradle81.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0.jar": {
|
||||||
|
"sha1": "82a9928a60c442822fccaf08aa212528a85fbf25",
|
||||||
|
"sha256": "sha256-AhbssMeA+V47EBoOlc/DZ/LvVrBvLeqqqZJaDxF8INk="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-api-1.9.0.module": {
|
||||||
|
"sha1": "cede46e2a2c9f2abeaa726fef80f85e451a6b5b3",
|
||||||
|
"sha256": "sha256-Gu1WWijZE0KsWkuhRsKFal67xjkoXFKVUhefr8dhTds="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.7.22",
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.7.22",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17195,6 +17403,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-idea-proto-1.9.0.pom": {
|
||||||
|
"sha1": "19b5a92d55669744290e83b5a7d643d1fbd83f65",
|
||||||
|
"sha256": "sha256-QeElaFOKOjQHBMlww6T2D/WAH/3OQlymjKLAtHIhclA="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-idea-proto-1.9.0.jar": {
|
||||||
|
"sha1": "d7e3ab4f0b7f7966e446f516fddf331475319f53",
|
||||||
|
"sha256": "sha256-54mY6iK81fVtE5gszBJMnHM3vRUHVMvcivKhSNdslwA="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.7.22",
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.7.22",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17218,6 +17441,29 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-idea-1.9.0.pom": {
|
||||||
|
"sha1": "e3c307cf7ee2c63e9535edb403466dc49aa5d5d9",
|
||||||
|
"sha256": "sha256-W/gGnkUbY0wdxLRpLpKO9pEanrLtk3TeIPRC3AloBo0="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-idea-1.9.0-test-fixtures.jar": {
|
||||||
|
"sha1": "af6020bc0aa902bb438e69aa0eca58438111136b",
|
||||||
|
"sha256": "sha256-MAj3geetkPywHc2d6pbg9ky48bMYT5T4p9jNHeGlsfI="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-idea-1.9.0.jar": {
|
||||||
|
"sha1": "5538265e4961666c769825f4543ab445cbc45bdc",
|
||||||
|
"sha256": "sha256-C7JszuNyr7m1hPKFfofMLz9TK2Kk9/pFdVjzr8Or6ZU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-idea-1.9.0.module": {
|
||||||
|
"sha1": "186d2bb5113962059551805961d9c80a5b06a80c",
|
||||||
|
"sha256": "sha256-pVg82bC0AS6VWtlhn7kBe1saosJRsFltr1M0kExcpls="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17260,6 +17506,53 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0.pom": {
|
||||||
|
"sha1": "b9b395f72a747e294548584cb93b9e48d2d8dad7",
|
||||||
|
"sha256": "sha256-QcXjVzTqEZA+IQr5i3eHB08mQab0C0X5vpwRAAga5Y0="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle70.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle71.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle74.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle75.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle76.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle80.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0-gradle81.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0.jar": {
|
||||||
|
"sha1": "d64789139fb89d78f2128d6b5be8a164d8669a72",
|
||||||
|
"sha256": "sha256-/wWqtoizSnmSp+NfncTewlhD8Tqelwrv5W3T4SKghBU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-model-1.9.0.module": {
|
||||||
|
"sha1": "cc984614ad443557e13d3a07c6dbcd8ce214eec4",
|
||||||
|
"sha256": "sha256-ZvS5FEcM80bgXQP4otWenHRvpu3PZMcS8XagiBqsPkk="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17302,6 +17595,53 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-gradle-plugin/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-gradle-plugin-1.9.0.pom": {
|
||||||
|
"sha1": "75f5520fa218e0833a1d4332bc10cf325925f63f",
|
||||||
|
"sha256": "sha256-RSdrCf+7uANPvQRwj5D34xtw1orgI7LPs8EdiG532DY="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle70.jar": {
|
||||||
|
"sha1": "70f96081d51820be6e998ae76591ca2485298880",
|
||||||
|
"sha256": "sha256-tpVPc4pbBeMHcvq9tFnIHVjfGz2oBqng7qcQ9Oj1Afw="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle71.jar": {
|
||||||
|
"sha1": "a237533df09406429a90e4cf6eddbd665fb879ef",
|
||||||
|
"sha256": "sha256-eb2kXiIyG1eXss3mhJ9KwFUgfVcAUxsEI+aMURdlers="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle74.jar": {
|
||||||
|
"sha1": "8ca3abcf0134fac694a3d78e78cc879ac37efc40",
|
||||||
|
"sha256": "sha256-p0Pj9keSxLrCRuE8GYSIIGskZnHvzXB7NQw+IsEWW50="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle75.jar": {
|
||||||
|
"sha1": "fa282ffe215f034c063a361d338f58b14479b336",
|
||||||
|
"sha256": "sha256-y9fMKOqRe48m9sVeYWVSYOGtQ3ZNM1edrj91pJMa/vI="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle76.jar": {
|
||||||
|
"sha1": "5e15ae8365f8750303ad66e169cb8fb25e20f408",
|
||||||
|
"sha256": "sha256-k6DXXAMnUB4h2z8pprUoju8uIjFyan/esXYMwNmi6/I="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle80.jar": {
|
||||||
|
"sha1": "3e9dd06e2aabd397923535a42118bc861bcff9eb",
|
||||||
|
"sha256": "sha256-JnLbEUAqZqYyLpzT9nV2rbtyq+jkdNkStqrzP5QGuPY="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0-gradle81.jar": {
|
||||||
|
"sha1": "8cfc2ba810d67ffb9a931d3785163acb5ff859fd",
|
||||||
|
"sha256": "sha256-2UOg4ntHRuAfg0BaSfUmoi9HGx2x1GOdb84m1xHv+/4="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0.jar": {
|
||||||
|
"sha1": "a031b8e97a70eb71b3d8a9298a82d153fc40c938",
|
||||||
|
"sha256": "sha256-yxGBud8e8LclfOPYc6mWy79G3K6qnD+OxIBWE3V5BxU="
|
||||||
|
},
|
||||||
|
"kotlin-gradle-plugin-1.9.0.module": {
|
||||||
|
"sha1": "f15d8f1e4dff619035904e448de88cbbde259d28",
|
||||||
|
"sha256": "sha256-/mOWRe2PvcW8Et588lRopNsx52O6ea26ogahTeYP0xQ="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17333,16 +17673,31 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-klib-commonizer-embeddable/1.7.22",
|
"path": "org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.9.0",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"kotlin-klib-commonizer-embeddable-1.7.22.pom": {
|
"kotlin-klib-commonizer-api-1.9.0.pom": {
|
||||||
"sha1": "5b3e5c9d161d6de851b75af4b73a3cd2bf438140",
|
"sha1": "dc9b1e38fb03d23112825bc6ab3ab8144ef8d42a",
|
||||||
"sha256": "sha256-Ft3srgIpxS0bNHWY5je65P8si2Nj1+AIbNa2bfzIltw="
|
"sha256": "sha256-hE+SCI/0j4v64lYh4yStw1d5CM9lD0/bJWlhC4+vaz4="
|
||||||
},
|
},
|
||||||
"kotlin-klib-commonizer-embeddable-1.7.22.jar": {
|
"kotlin-klib-commonizer-api-1.9.0.jar": {
|
||||||
"sha1": "f84170d46b52ac44408be1055fb12849bfff4629",
|
"sha1": "35782a8198131f9ee6eec26d7bf60b1e0a508bc5",
|
||||||
"sha256": "sha256-3owxqAkvto74DzSjy9+x3NQCB7Z8/4fUC1xHnsamjs4="
|
"sha256": "sha256-hd4ulysLtvRSjB90j0PEhmMUX8hTnsqWwT0bwNo/k10="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-klib-commonizer-embeddable/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-klib-commonizer-embeddable-1.9.0.pom": {
|
||||||
|
"sha1": "210d03d9e5afa2938c9a6d20ce164c59277dc437",
|
||||||
|
"sha256": "sha256-L9STJpNwf9ujj80diJL7TdPPAIC5LxJSX8cF42G2eTs="
|
||||||
|
},
|
||||||
|
"kotlin-klib-commonizer-embeddable-1.9.0.jar": {
|
||||||
|
"sha1": "bae135d2d5ed2ae9c2c9b7f8300dbcb345ef8bc7",
|
||||||
|
"sha256": "sha256-zdYmTXJPcRKakwi+JEAsqMccKrICywO2hEmdqXrdS4Q="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -17377,6 +17732,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-native-utils/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-native-utils-1.9.0.pom": {
|
||||||
|
"sha1": "80b8f19f18a627c23ed18cf2a44ef7eabc84da96",
|
||||||
|
"sha256": "sha256-Kazy3vkmve3Z6yBOx3Tnhq3Ek0EGqSlJAK81FVbn52o="
|
||||||
|
},
|
||||||
|
"kotlin-native-utils-1.9.0.jar": {
|
||||||
|
"sha1": "13264bd5949f9e68c5d53a6d394b800b725dc577",
|
||||||
|
"sha256": "sha256-D0gF93S/tcG20UXf5g09ILGu4ACJbOjs8+7/hM5EAjs="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-project-model/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-project-model/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17407,6 +17777,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-project-model/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-project-model-1.9.0.pom": {
|
||||||
|
"sha1": "fe67d9afc6940fe0019e18fca37a37c58976536b",
|
||||||
|
"sha256": "sha256-6sHGTGAMYAJ7jmjfrTogPEFbn6IkWB1oz6Xnc+hWa3g="
|
||||||
|
},
|
||||||
|
"kotlin-project-model-1.9.0.jar": {
|
||||||
|
"sha1": "7c6006a523220e0a82f4954652c3140f7353e85a",
|
||||||
|
"sha256": "sha256-rgk26bTGkh8D73eTYcrLu3XtKyIQR5+S9l8cushuNAw="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-reflect/1.1.3-2",
|
"path": "org/jetbrains/kotlin/kotlin-reflect/1.1.3-2",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17512,6 +17897,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-reflect/1.6.10",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-reflect-1.6.10.pom": {
|
||||||
|
"sha1": "535560dfd5b3dba98f57b12f3e921c7a83d0aafe",
|
||||||
|
"sha256": "sha256-V5BVJCdKAK4CiqzMJyg/a8WSWpNKBGwcxdBsjuTW1ak="
|
||||||
|
},
|
||||||
|
"kotlin-reflect-1.6.10.jar": {
|
||||||
|
"sha1": "1cbe9c92c12a94eea200d23c2bbaedaf3daf5132",
|
||||||
|
"sha256": "sha256-MnesECrheq0QpVq+x1/1aWyNEJeQOWQ0tJbnUIeFQgM="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-reflect/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-reflect/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17602,6 +18002,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-scripting-common/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-scripting-common-1.9.0.pom": {
|
||||||
|
"sha1": "326fa3ca7bb1705794879cbae1a9467b7d7aa09e",
|
||||||
|
"sha256": "sha256-C/MG5PRe6xrDAk4pnUybcL4J7OmsAOcLL/mLPtQA8wc="
|
||||||
|
},
|
||||||
|
"kotlin-scripting-common-1.9.0.jar": {
|
||||||
|
"sha1": "ea019fa9e3885795a81df270775e5609f7115307",
|
||||||
|
"sha256": "sha256-KFxBwO7tWaDn3LGIuJ+BVBR/vLvVNUcc9piWzNonP4Q="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17632,6 +18047,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-scripting-compiler-embeddable-1.9.0.pom": {
|
||||||
|
"sha1": "cba5705bf5fb615d2b72195faa25159e83e3a264",
|
||||||
|
"sha256": "sha256-UJ5ikUwwvT43GcDgLk5Df8vxkRa4ouZYSPbUbFTsXJ4="
|
||||||
|
},
|
||||||
|
"kotlin-scripting-compiler-embeddable-1.9.0.jar": {
|
||||||
|
"sha1": "1708703c0683b8d2a0a76048544480b94d3eb458",
|
||||||
|
"sha256": "sha256-Rp3RIGiVipevzhGIoBRFVM3tZ95aGqC/XKUwOfKdizY="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17662,6 +18092,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-scripting-compiler-impl-embeddable-1.9.0.pom": {
|
||||||
|
"sha1": "5459191b6fda205abb23fb4a767bb0f86e8cc12e",
|
||||||
|
"sha256": "sha256-zaYp8KgbqcAKM95QJ/D4/7+fC45E5BlwNHdmu4WLTmM="
|
||||||
|
},
|
||||||
|
"kotlin-scripting-compiler-impl-embeddable-1.9.0.jar": {
|
||||||
|
"sha1": "c825693be78dfcbc351a53856d75f4d11bb0e274",
|
||||||
|
"sha256": "sha256-ZcUlbiyPvdpCbAMobmomgmfXEu+V7C05yVKSlXN4sE0="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17692,6 +18137,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-scripting-jvm/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-scripting-jvm-1.9.0.pom": {
|
||||||
|
"sha1": "178d3c678207d53a68cab7ce61dd89867bacdc6f",
|
||||||
|
"sha256": "sha256-Ymj4BVjTX9qSRruneTKWkrlNWJWWVQfL6KhIkSxQ5yo="
|
||||||
|
},
|
||||||
|
"kotlin-scripting-jvm-1.9.0.jar": {
|
||||||
|
"sha1": "e2e6a0bd37a72cded2fec7882199e1bdc4e8bcb4",
|
||||||
|
"sha256": "sha256-Zp3SvGBBjgdRU/2K2NllvlaetlwvMIOIyxEDud8TUVk="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-script-runtime/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-script-runtime/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -17722,6 +18182,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-script-runtime/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-script-runtime-1.9.0.pom": {
|
||||||
|
"sha1": "a52322c274112401ded9622eb8d7eb2570fae853",
|
||||||
|
"sha256": "sha256-FNwHhdGUFP7sEgI91z64DIPQeIC3PlS48IqHj0I9seY="
|
||||||
|
},
|
||||||
|
"kotlin-script-runtime-1.9.0.jar": {
|
||||||
|
"sha1": "4b3102cbbb7e1b58d9d1adf89563f00069ffa7d1",
|
||||||
|
"sha256": "sha256-2E0MykEFD6wqlS0RBEc8Mpr/BMULNxMuV1SiCYCa3Z8="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-stdlib-common/1.2.71",
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-common/1.2.71",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18022,6 +18497,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-common/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-stdlib-common-1.9.0.pom": {
|
||||||
|
"sha1": "0a865a0c5a64618fd1dcca13d05dea4cba44c832",
|
||||||
|
"sha256": "sha256-NmDTanD+s6vknxG5BjPkHTYnNXbwcbDhCdqbOg3wgqU="
|
||||||
|
},
|
||||||
|
"kotlin-stdlib-common-1.9.0.jar": {
|
||||||
|
"sha1": "cd65c21cfd1eec4d44ef09f9f52b6d9f8a720636",
|
||||||
|
"sha256": "sha256-KDJ0IEvXwCB4nsRvj45yr0JE1/VQszkqV+XKAGrXqiw="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.2.71",
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.2.71",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18202,6 +18692,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-stdlib-jdk7-1.9.0.pom": {
|
||||||
|
"sha1": "5ce6c5278ef6e342507a96372ee534ed0b830e54",
|
||||||
|
"sha256": "sha256-wRB08MiYqYuGPGFEcdQ409+Soewzgqbjf5NdfXGVS1o="
|
||||||
|
},
|
||||||
|
"kotlin-stdlib-jdk7-1.9.0.jar": {
|
||||||
|
"sha1": "f320478990d05e0cfaadd74f9619fd6027adbf37",
|
||||||
|
"sha256": "sha256-t5eaeqyUBV8Nnx/TtHzl/+HLYDKoQrqfvnGG8IUokXg="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.2.71",
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.2.71",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18367,6 +18872,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-stdlib-jdk8-1.9.0.pom": {
|
||||||
|
"sha1": "4f04e57e4a12d4a59f620c63520681c4ff1d03e6",
|
||||||
|
"sha256": "sha256-ZNWY3YjiUEZnMeIDBKtvBsu7urfuMitHA7a1n4gcT5I="
|
||||||
|
},
|
||||||
|
"kotlin-stdlib-jdk8-1.9.0.jar": {
|
||||||
|
"sha1": "e000bd084353d84c9e888f6fb341dc1f5b79d948",
|
||||||
|
"sha256": "sha256-pZ+iT98f+1lLrs2/D9EAEPl3zqECNtSH/jRkl3pzd/o="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2",
|
"path": "org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18712,6 +19232,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-stdlib/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-stdlib-1.9.0.pom": {
|
||||||
|
"sha1": "4aea0493dfd3ee18df73bcd97db791c2ea5bb383",
|
||||||
|
"sha256": "sha256-N3UiY/Ysw+MlCFbiiO5Kc9QQLXJqd2JwNPlIBsjBCso="
|
||||||
|
},
|
||||||
|
"kotlin-stdlib-1.9.0.jar": {
|
||||||
|
"sha1": "8ee15ef0c67dc83d874f412d84378d7f0eb50b63",
|
||||||
|
"sha256": "sha256-Na7/vi21qkRgcs7lD87ki3+p4vxRyjfAzH19C8OdlS4="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-stdlib/1.9.21",
|
"path": "org/jetbrains/kotlin/kotlin-stdlib/1.9.21",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18781,6 +19316,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-tooling-core/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-tooling-core-1.9.0.pom": {
|
||||||
|
"sha1": "0c1335f31eaaf304a866a1ca780bb75c05df79d1",
|
||||||
|
"sha256": "sha256-KSbD/CFJWXAcjxYNjdyGn3s/pFKv3o3RdcjnwrvHBSI="
|
||||||
|
},
|
||||||
|
"kotlin-tooling-core-1.9.0.jar": {
|
||||||
|
"sha1": "7b3e809d24d27d00072fd69eb130f8a6cbd365e1",
|
||||||
|
"sha256": "sha256-5TmiJCi5ysZ/dbLWHytuKnGDUNe7MYI8fcqJB/kJma4="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-tooling-metadata/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-tooling-metadata/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18826,6 +19376,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-util-io/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-util-io-1.9.0.pom": {
|
||||||
|
"sha1": "9481aa1ef0a147a6ca09cbf4a5f72915303185e5",
|
||||||
|
"sha256": "sha256-BUBa+xn3tgbFKr6haJqi1ew9qQL+4teoV2lDOeSgQJQ="
|
||||||
|
},
|
||||||
|
"kotlin-util-io-1.9.0.jar": {
|
||||||
|
"sha1": "e9b6d257f0c94bdf8a0f4ab67d6ffc199a0deba7",
|
||||||
|
"sha256": "sha256-gdNtxt4/C+rwTDl6BrVoITujc6vO9Tlyt7gvYX1a9ws="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/kotlin/kotlin-util-klib/1.6.20",
|
"path": "org/jetbrains/kotlin/kotlin-util-klib/1.6.20",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -18856,6 +19421,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "org/jetbrains/kotlin/kotlin-util-klib/1.9.0",
|
||||||
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
|
"files": {
|
||||||
|
"kotlin-util-klib-1.9.0.pom": {
|
||||||
|
"sha1": "45a02a0e039fcf3ef011e38917da856894dad326",
|
||||||
|
"sha256": "sha256-acZHGaDgRjb2whMZ/lGKC1gieEu66P7YXmUfv6b4pFs="
|
||||||
|
},
|
||||||
|
"kotlin-util-klib-1.9.0.jar": {
|
||||||
|
"sha1": "41df7b8939660817a283d9255d5f2e4b555eebc6",
|
||||||
|
"sha256": "sha256-wtxr820zabdzdVq4k3uX5Tmk1F04Fb7xm+36FUsS0xM="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/jetbrains/markdown-jvm/0.2.1",
|
"path": "org/jetbrains/markdown-jvm/0.2.1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
@@ -20103,27 +20683,27 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/slf4j/slf4j-api/2.0.9",
|
"path": "org/slf4j/slf4j-api/2.1.0-alpha1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"slf4j-api-2.0.9.pom": {
|
"slf4j-api-2.1.0-alpha1.pom": {
|
||||||
"sha1": "96a47b716e8241bca75562533e3a9fbb7ffbefb9",
|
"sha1": "c5362a45b3be4d9d110f5450822ea81b27adb1a0",
|
||||||
"sha256": "sha256-nDplT50KoaNLMXjr5TqJx2eS4dgfwelznL6bFhBSM4U="
|
"sha256": "sha256-QirqW+u6gwWzxhT6Zo7SKePJYQkw7PQvhzOO4F4minU="
|
||||||
},
|
},
|
||||||
"slf4j-api-2.0.9.jar": {
|
"slf4j-api-2.1.0-alpha1.jar": {
|
||||||
"sha1": "7cf2726fdcfbc8610f9a71fb3ed639871f315340",
|
"sha1": "4e2525fc4327cc553c52e3937427c7cf2114735f",
|
||||||
"sha256": "sha256-CBiTDcjX3rtAMgRhFpHaWOSdQsULb/z9zgLa23w8K2w="
|
"sha256": "sha256-mrf/pkYgK0mdBZlaPsgvMbzLelA0XBUU2MtC7IzOo1M="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/slf4j/slf4j-bom/2.0.9",
|
"path": "org/slf4j/slf4j-bom/2.1.0-alpha1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"slf4j-bom-2.0.9.pom": {
|
"slf4j-bom-2.1.0-alpha1.pom": {
|
||||||
"sha1": "54c55d4b55c9f82d34434fe6a36e8c6b5671588a",
|
"sha1": "f8784ee61914057bec3db57b5efea4e6b0333c6f",
|
||||||
"sha256": "sha256-6u9FhIB9gSxqC2z4OdXkf1DHVDJ3GbnOCB4nHRXaYkM="
|
"sha256": "sha256-qOgTiZePRAcJJBuYPTHvp4cRO+EbgYwsa82e0wlv1IU="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -20151,12 +20731,12 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "org/slf4j/slf4j-parent/2.0.9",
|
"path": "org/slf4j/slf4j-parent/2.1.0-alpha1",
|
||||||
"repo": "https://repo.maven.apache.org/maven2",
|
"repo": "https://repo.maven.apache.org/maven2",
|
||||||
"files": {
|
"files": {
|
||||||
"slf4j-parent-2.0.9.pom": {
|
"slf4j-parent-2.1.0-alpha1.pom": {
|
||||||
"sha1": "fa1b5ef4b7f48daf822d408eebd3319fa6254c0f",
|
"sha1": "ef0d60c3407004bb7e71643a13644f4bc2f3ec00",
|
||||||
"sha256": "sha256-wwfwQkFB8cUArlzw04aOSGbLIZ7V45m2bFoHxh6iH9U="
|
"sha256": "sha256-zkc1sfnIId4Lkrjb5AsHHG6jIHMuWTVZxupt+WX4c48="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
+39
-26
@@ -2,6 +2,7 @@ androidx.activity:activity:1.0.0
|
|||||||
androidx.activity:activity:1.0.0-rc01
|
androidx.activity:activity:1.0.0-rc01
|
||||||
androidx.activity:activity:1.2.4
|
androidx.activity:activity:1.2.4
|
||||||
androidx.annotation:annotation-experimental:1.1.0
|
androidx.annotation:annotation-experimental:1.1.0
|
||||||
|
androidx.annotation:annotation:1.0.0
|
||||||
androidx.annotation:annotation:1.1.0
|
androidx.annotation:annotation:1.1.0
|
||||||
androidx.annotation:annotation:1.2.0
|
androidx.annotation:annotation:1.2.0
|
||||||
androidx.annotation:annotation:1.3.0
|
androidx.annotation:annotation:1.3.0
|
||||||
@@ -10,6 +11,7 @@ androidx.appcompat:appcompat-resources:1.2.0
|
|||||||
androidx.appcompat:appcompat-resources:1.3.1
|
androidx.appcompat:appcompat-resources:1.3.1
|
||||||
androidx.appcompat:appcompat-resources:1.4.1
|
androidx.appcompat:appcompat-resources:1.4.1
|
||||||
androidx.appcompat:appcompat-resources:1.4.2
|
androidx.appcompat:appcompat-resources:1.4.2
|
||||||
|
androidx.appcompat:appcompat:1.0.0
|
||||||
androidx.appcompat:appcompat:1.1.0-rc01
|
androidx.appcompat:appcompat:1.1.0-rc01
|
||||||
androidx.appcompat:appcompat:1.2.0
|
androidx.appcompat:appcompat:1.2.0
|
||||||
androidx.appcompat:appcompat:1.3.1
|
androidx.appcompat:appcompat:1.3.1
|
||||||
@@ -38,6 +40,7 @@ androidx.coordinatorlayout:coordinatorlayout:1.0.0
|
|||||||
androidx.coordinatorlayout:coordinatorlayout:1.1.0
|
androidx.coordinatorlayout:coordinatorlayout:1.1.0
|
||||||
androidx.core:core-ktx:1.6.0
|
androidx.core:core-ktx:1.6.0
|
||||||
androidx.core:core-splashscreen:1.0.0
|
androidx.core:core-splashscreen:1.0.0
|
||||||
|
androidx.core:core:1.0.0
|
||||||
androidx.core:core:1.1.0
|
androidx.core:core:1.1.0
|
||||||
androidx.core:core:1.1.0-rc01
|
androidx.core:core:1.1.0-rc01
|
||||||
androidx.core:core:1.2.0
|
androidx.core:core:1.2.0
|
||||||
@@ -125,10 +128,13 @@ androidx.tracing:tracing:1.1.0
|
|||||||
androidx.transition:transition:1.1.0
|
androidx.transition:transition:1.1.0
|
||||||
androidx.transition:transition:1.2.0
|
androidx.transition:transition:1.2.0
|
||||||
androidx.transition:transition:1.2.0-rc01
|
androidx.transition:transition:1.2.0-rc01
|
||||||
|
androidx.vectordrawable:vectordrawable-animated:1.0.0
|
||||||
androidx.vectordrawable:vectordrawable-animated:1.1.0
|
androidx.vectordrawable:vectordrawable-animated:1.1.0
|
||||||
androidx.vectordrawable:vectordrawable-animated:1.1.0-rc01
|
androidx.vectordrawable:vectordrawable-animated:1.1.0-rc01
|
||||||
|
androidx.vectordrawable:vectordrawable:1.0.0
|
||||||
androidx.vectordrawable:vectordrawable:1.1.0
|
androidx.vectordrawable:vectordrawable:1.1.0
|
||||||
androidx.vectordrawable:vectordrawable:1.1.0-rc01
|
androidx.vectordrawable:vectordrawable:1.1.0-rc01
|
||||||
|
androidx.versionedparcelable:versionedparcelable:1.0.0
|
||||||
androidx.versionedparcelable:versionedparcelable:1.1.0
|
androidx.versionedparcelable:versionedparcelable:1.1.0
|
||||||
androidx.versionedparcelable:versionedparcelable:1.1.0-rc01
|
androidx.versionedparcelable:versionedparcelable:1.1.0-rc01
|
||||||
androidx.versionedparcelable:versionedparcelable:1.1.1
|
androidx.versionedparcelable:versionedparcelable:1.1.1
|
||||||
@@ -778,35 +784,37 @@ org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.2
|
|||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.1
|
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.1
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
|
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions:1.6.20
|
org.jetbrains.kotlin:kotlin-android-extensions:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions:1.7.22
|
org.jetbrains.kotlin:kotlin-android-extensions:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-annotations-jvm:1.3.72
|
org.jetbrains.kotlin:kotlin-annotations-jvm:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.6.20
|
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.7.22
|
|
||||||
org.jetbrains.kotlin:kotlin-build-common:1.6.20
|
org.jetbrains.kotlin:kotlin-build-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-build-common:1.7.22
|
org.jetbrains.kotlin:kotlin-build-tools-api:1.9.0
|
||||||
|
org.jetbrains.kotlin:kotlin-build-tools-impl:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20
|
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.7.22
|
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-compiler-runner:1.6.20
|
org.jetbrains.kotlin:kotlin-compiler-runner:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-compiler-runner:1.7.22
|
org.jetbrains.kotlin:kotlin-compiler-runner:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-daemon-client:1.6.20
|
org.jetbrains.kotlin:kotlin-daemon-client:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-client:1.7.22
|
org.jetbrains.kotlin:kotlin-daemon-client:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.6.20
|
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.7.22
|
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.9.0
|
||||||
|
org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.0
|
||||||
|
org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.6.20
|
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.7.22
|
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.7.22
|
org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.7.22
|
org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.6.20
|
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.7.22
|
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.20
|
org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.22
|
org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.6.20
|
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.7.22
|
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:1.7.22
|
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-native-utils:1.6.20
|
org.jetbrains.kotlin:kotlin-native-utils:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-native-utils:1.7.22
|
org.jetbrains.kotlin:kotlin-native-utils:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-project-model:1.6.20
|
org.jetbrains.kotlin:kotlin-project-model:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-project-model:1.7.22
|
org.jetbrains.kotlin:kotlin-project-model:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.1.3-2
|
org.jetbrains.kotlin:kotlin-reflect:1.1.3-2
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.2.0
|
org.jetbrains.kotlin:kotlin-reflect:1.2.0
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.3.20
|
org.jetbrains.kotlin:kotlin-reflect:1.3.20
|
||||||
@@ -814,17 +822,17 @@ org.jetbrains.kotlin:kotlin-reflect:1.3.50
|
|||||||
org.jetbrains.kotlin:kotlin-reflect:1.3.72
|
org.jetbrains.kotlin:kotlin-reflect:1.3.72
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.4.32
|
org.jetbrains.kotlin:kotlin-reflect:1.4.32
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.5.31
|
org.jetbrains.kotlin:kotlin-reflect:1.5.31
|
||||||
|
org.jetbrains.kotlin:kotlin-reflect:1.6.10
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.7.10
|
org.jetbrains.kotlin:kotlin-reflect:1.7.10
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.7.22
|
|
||||||
org.jetbrains.kotlin:kotlin-scripting-common:1.6.20
|
org.jetbrains.kotlin:kotlin-scripting-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-common:1.7.22
|
org.jetbrains.kotlin:kotlin-scripting-common:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.6.20
|
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.7.22
|
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.6.20
|
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.7.22
|
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-scripting-jvm:1.6.20
|
org.jetbrains.kotlin:kotlin-scripting-jvm:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-scripting-jvm:1.7.22
|
org.jetbrains.kotlin:kotlin-scripting-jvm:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-script-runtime:1.7.22
|
org.jetbrains.kotlin:kotlin-script-runtime:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.50
|
||||||
@@ -833,6 +841,7 @@ org.jetbrains.kotlin:kotlin-stdlib-common:1.4.32
|
|||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.5.31
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.20
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.7.22
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.7.22
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-common:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.50
|
||||||
@@ -841,6 +850,7 @@ org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.32
|
|||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.20
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.22
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.22
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.50
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.50
|
||||||
@@ -848,6 +858,7 @@ org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.72
|
|||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.32
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.32
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.22
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.22
|
||||||
|
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.1.3-2
|
org.jetbrains.kotlin:kotlin-stdlib:1.1.3-2
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.2.71
|
org.jetbrains.kotlin:kotlin-stdlib:1.2.71
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.3.20
|
org.jetbrains.kotlin:kotlin-stdlib:1.3.20
|
||||||
@@ -857,12 +868,13 @@ org.jetbrains.kotlin:kotlin-stdlib:1.4.32
|
|||||||
org.jetbrains.kotlin:kotlin-stdlib:1.5.31
|
org.jetbrains.kotlin:kotlin-stdlib:1.5.31
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.6.20
|
org.jetbrains.kotlin:kotlin-stdlib:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.7.22
|
org.jetbrains.kotlin:kotlin-stdlib:1.7.22
|
||||||
org.jetbrains.kotlin:kotlin-tooling-core:1.7.22
|
org.jetbrains.kotlin:kotlin-stdlib:1.9.0
|
||||||
|
org.jetbrains.kotlin:kotlin-tooling-core:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-tooling-metadata:1.6.20
|
org.jetbrains.kotlin:kotlin-tooling-metadata:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-util-io:1.6.20
|
org.jetbrains.kotlin:kotlin-util-io:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-util-io:1.7.22
|
org.jetbrains.kotlin:kotlin-util-io:1.9.0
|
||||||
org.jetbrains.kotlin:kotlin-util-klib:1.6.20
|
org.jetbrains.kotlin:kotlin-util-klib:1.6.20
|
||||||
org.jetbrains.kotlin:kotlin-util-klib:1.7.22
|
org.jetbrains.kotlin:kotlin-util-klib:1.9.0
|
||||||
org.jetbrains.trove4j:trove4j:20160824
|
org.jetbrains.trove4j:trove4j:20160824
|
||||||
org.jetbrains:annotations:13.0
|
org.jetbrains:annotations:13.0
|
||||||
org.jetbrains:markdown-jvm:0.2.1
|
org.jetbrains:markdown-jvm:0.2.1
|
||||||
@@ -930,4 +942,5 @@ org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.7.22
|
|||||||
com.android.tools.lint:lint-gradle:30.4.2
|
com.android.tools.lint:lint-gradle:30.4.2
|
||||||
com.android.tools.build:gradle:7.4.2
|
com.android.tools.build:gradle:7.4.2
|
||||||
com.android.tools.build:aapt2:7.4.2-8841542
|
com.android.tools.build:aapt2:7.4.2-8841542
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
|
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
|
||||||
|
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.0
|
||||||
@@ -697,7 +697,7 @@ https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotatio
|
|||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.4.0/error_prone_annotations-2.4.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.4.0/error_prone_annotations-2.4.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.7.1/error_prone_annotations-2.7.1.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.7.1/error_prone_annotations-2.7.1.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.9.0/error_prone_annotations-2.9.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.9.0/error_prone_annotations-2.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.24.0/error_prone_annotations-2.24.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_annotations/2.24.1/error_prone_annotations-2.24.1.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.0.18/error_prone_parent-2.0.18.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.0.18/error_prone_parent-2.0.18.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.2.0/error_prone_parent-2.2.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.2.0/error_prone_parent-2.2.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.3.1/error_prone_parent-2.3.1.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.3.1/error_prone_parent-2.3.1.pom
|
||||||
@@ -706,7 +706,7 @@ https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.
|
|||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.4.0/error_prone_parent-2.4.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.4.0/error_prone_parent-2.4.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.7.1/error_prone_parent-2.7.1.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.7.1/error_prone_parent-2.7.1.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.9.0/error_prone_parent-2.9.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.9.0/error_prone_parent-2.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.24.0/error_prone_parent-2.24.0.pom
|
https://repo.maven.apache.org/maven2/com/google/errorprone/error_prone_parent/2.24.1/error_prone_parent-2.24.1.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/flatbuffers/flatbuffers-java/1.12.0/flatbuffers-java-1.12.0.pom
|
https://repo.maven.apache.org/maven2/com/google/flatbuffers/flatbuffers-java/1.12.0/flatbuffers-java-1.12.0.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/google/1/google-1.pom
|
https://repo.maven.apache.org/maven2/com/google/google/1/google-1.pom
|
||||||
https://repo.maven.apache.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.pom
|
https://repo.maven.apache.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.pom
|
||||||
@@ -1116,36 +1116,55 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-coroutines-co
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-coroutines-core/1.5.2/kotlinx-coroutines-core-1.5.2.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-coroutines-core/1.5.2/kotlinx-coroutines-core-1.5.2.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-metadata-jvm/0.1.0/kotlinx-metadata-jvm-0.1.0.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-metadata-jvm/0.1.0/kotlinx-metadata-jvm-0.1.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/jvm/org.jetbrains.kotlin.jvm.gradle.plugin/1.7.22/org.jetbrains.kotlin.jvm.gradle.plugin-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/jvm/org.jetbrains.kotlin.jvm.gradle.plugin/1.7.22/org.jetbrains.kotlin.jvm.gradle.plugin-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/jvm/org.jetbrains.kotlin.jvm.gradle.plugin/1.9.0/org.jetbrains.kotlin.jvm.gradle.plugin-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-android-extensions/1.6.20/kotlin-android-extensions-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-android-extensions/1.6.20/kotlin-android-extensions-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-android-extensions/1.7.22/kotlin-android-extensions-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-android-extensions/1.7.22/kotlin-android-extensions-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-android-extensions/1.9.0/kotlin-android-extensions-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotations-jvm/1.3.72/kotlin-annotations-jvm-1.3.72.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotations-jvm/1.3.72/kotlin-annotations-jvm-1.3.72.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotation-processing-gradle/1.6.20/kotlin-annotation-processing-gradle-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotation-processing-gradle/1.6.20/kotlin-annotation-processing-gradle-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotation-processing-gradle/1.7.22/kotlin-annotation-processing-gradle-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-annotation-processing-gradle/1.7.22/kotlin-annotation-processing-gradle-1.7.22.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-common/1.6.20/kotlin-build-common-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-common/1.6.20/kotlin-build-common-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-common/1.7.22/kotlin-build-common-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-common/1.7.22/kotlin-build-common-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-common/1.9.0/kotlin-build-common-1.9.0.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-tools-api/1.9.0/kotlin-build-tools-api-1.9.0.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-build-tools-impl/1.9.0/kotlin-build-tools-impl-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.6.20/kotlin-compiler-embeddable-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.6.20/kotlin-compiler-embeddable-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.7.22/kotlin-compiler-embeddable-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.7.22/kotlin-compiler-embeddable-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.9.0/kotlin-compiler-embeddable-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-runner/1.6.20/kotlin-compiler-runner-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-runner/1.6.20/kotlin-compiler-runner-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-runner/1.7.22/kotlin-compiler-runner-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-runner/1.7.22/kotlin-compiler-runner-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-compiler-runner/1.9.0/kotlin-compiler-runner-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-client/1.6.20/kotlin-daemon-client-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-client/1.6.20/kotlin-daemon-client-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-client/1.7.22/kotlin-daemon-client-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-client/1.7.22/kotlin-daemon-client-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-client/1.9.0/kotlin-daemon-client-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-embeddable/1.6.20/kotlin-daemon-embeddable-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-embeddable/1.6.20/kotlin-daemon-embeddable-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-embeddable/1.7.22/kotlin-daemon-embeddable-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-embeddable/1.7.22/kotlin-daemon-embeddable-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-daemon-embeddable/1.9.0/kotlin-daemon-embeddable-1.9.0.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugins-bom/1.9.0/kotlin-gradle-plugins-bom-1.9.0.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-annotations/1.9.0/kotlin-gradle-plugin-annotations-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.6.20/kotlin-gradle-plugin-api-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.6.20/kotlin-gradle-plugin-api-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.7.22/kotlin-gradle-plugin-api-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.7.22/kotlin-gradle-plugin-api-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1.9.0/kotlin-gradle-plugin-api-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.7.22/kotlin-gradle-plugin-idea-proto-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.7.22/kotlin-gradle-plugin-idea-proto-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea-proto/1.9.0/kotlin-gradle-plugin-idea-proto-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.7.22/kotlin-gradle-plugin-idea-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.7.22/kotlin-gradle-plugin-idea-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-idea/1.9.0/kotlin-gradle-plugin-idea-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.6.20/kotlin-gradle-plugin-model-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.6.20/kotlin-gradle-plugin-model-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.7.22/kotlin-gradle-plugin-model-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.7.22/kotlin-gradle-plugin-model-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin-model/1.9.0/kotlin-gradle-plugin-model-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.6.20/kotlin-gradle-plugin-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.6.20/kotlin-gradle-plugin-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.7.22/kotlin-gradle-plugin-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.7.22/kotlin-gradle-plugin-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.9.0/kotlin-gradle-plugin-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.6.20/kotlin-klib-commonizer-api-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.6.20/kotlin-klib-commonizer-api-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.7.22/kotlin-klib-commonizer-api-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.7.22/kotlin-klib-commonizer-api-1.7.22.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-embeddable/1.7.22/kotlin-klib-commonizer-embeddable-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-api/1.9.0/kotlin-klib-commonizer-api-1.9.0.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-klib-commonizer-embeddable/1.9.0/kotlin-klib-commonizer-embeddable-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-native-utils/1.6.20/kotlin-native-utils-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-native-utils/1.6.20/kotlin-native-utils-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-native-utils/1.7.22/kotlin-native-utils-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-native-utils/1.7.22/kotlin-native-utils-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-native-utils/1.9.0/kotlin-native-utils-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-project-model/1.6.20/kotlin-project-model-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-project-model/1.6.20/kotlin-project-model-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-project-model/1.7.22/kotlin-project-model-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-project-model/1.7.22/kotlin-project-model-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-project-model/1.9.0/kotlin-project-model-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.1.3-2/kotlin-reflect-1.1.3-2.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.1.3-2/kotlin-reflect-1.1.3-2.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.2.0/kotlin-reflect-1.2.0.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.2.0/kotlin-reflect-1.2.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.3.20/kotlin-reflect-1.3.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.3.20/kotlin-reflect-1.3.20.pom
|
||||||
@@ -1153,20 +1172,26 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.3.50/
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.3.72/kotlin-reflect-1.3.72.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.3.72/kotlin-reflect-1.3.72.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.4.32/kotlin-reflect-1.4.32.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.4.32/kotlin-reflect-1.4.32.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.5.31/kotlin-reflect-1.5.31.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.5.31/kotlin-reflect-1.5.31.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.6.10/kotlin-reflect-1.6.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.6.20/kotlin-reflect-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.6.20/kotlin-reflect-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.7.10/kotlin-reflect-1.7.10.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.7.10/kotlin-reflect-1.7.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.7.22/kotlin-reflect-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.7.22/kotlin-reflect-1.7.22.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/2.0.0-Beta2/kotlin-reflect-2.0.0-Beta2.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-reflect/2.0.0-Beta2/kotlin-reflect-2.0.0-Beta2.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20/kotlin-scripting-common-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-common/1.6.20/kotlin-scripting-common-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-common/1.7.22/kotlin-scripting-common-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-common/1.7.22/kotlin-scripting-common-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-common/1.9.0/kotlin-scripting-common-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.6.20/kotlin-scripting-compiler-embeddable-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.6.20/kotlin-scripting-compiler-embeddable-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.7.22/kotlin-scripting-compiler-embeddable-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.7.22/kotlin-scripting-compiler-embeddable-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-embeddable/1.9.0/kotlin-scripting-compiler-embeddable-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.6.20/kotlin-scripting-compiler-impl-embeddable-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.6.20/kotlin-scripting-compiler-impl-embeddable-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.7.22/kotlin-scripting-compiler-impl-embeddable-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.7.22/kotlin-scripting-compiler-impl-embeddable-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-compiler-impl-embeddable/1.9.0/kotlin-scripting-compiler-impl-embeddable-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20/kotlin-scripting-jvm-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-jvm/1.6.20/kotlin-scripting-jvm-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-jvm/1.7.22/kotlin-scripting-jvm-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-jvm/1.7.22/kotlin-scripting-jvm-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-scripting-jvm/1.9.0/kotlin-scripting-jvm-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-script-runtime/1.6.20/kotlin-script-runtime-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-script-runtime/1.6.20/kotlin-script-runtime-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-script-runtime/1.7.22/kotlin-script-runtime-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-script-runtime/1.7.22/kotlin-script-runtime-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-script-runtime/1.9.0/kotlin-script-runtime-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.2.71/kotlin-stdlib-common-1.2.71.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.2.71/kotlin-stdlib-common-1.2.71.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.0/kotlin-stdlib-common-1.3.0.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.0/kotlin-stdlib-common-1.3.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.20/kotlin-stdlib-common-1.3.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.20/kotlin-stdlib-common-1.3.20.pom
|
||||||
@@ -1187,6 +1212,7 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.21/kotlin-stdlib-common-1.6.21.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.21/kotlin-stdlib-common-1.6.21.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.10/kotlin-stdlib-common-1.7.10.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.10/kotlin-stdlib-common-1.7.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.22/kotlin-stdlib-common-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.7.22/kotlin-stdlib-common-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.9.0/kotlin-stdlib-common-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.2.71/kotlin-stdlib-jdk7-1.2.71.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.2.71/kotlin-stdlib-jdk7-1.2.71.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.20/kotlin-stdlib-jdk7-1.3.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.20/kotlin-stdlib-jdk7-1.3.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.50/kotlin-stdlib-jdk7-1.3.50.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.50/kotlin-stdlib-jdk7-1.3.50.pom
|
||||||
@@ -1199,6 +1225,7 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.5
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20/kotlin-stdlib-jdk7-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20/kotlin-stdlib-jdk7-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.7.10/kotlin-stdlib-jdk7-1.7.10.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.7.10/kotlin-stdlib-jdk7-1.7.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.7.22/kotlin-stdlib-jdk7-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.7.22/kotlin-stdlib-jdk7-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.9.0/kotlin-stdlib-jdk7-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.2.71/kotlin-stdlib-jdk8-1.2.71.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.2.71/kotlin-stdlib-jdk8-1.2.71.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.20/kotlin-stdlib-jdk8-1.3.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.20/kotlin-stdlib-jdk8-1.3.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.50/kotlin-stdlib-jdk8-1.3.50.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.50/kotlin-stdlib-jdk8-1.3.50.pom
|
||||||
@@ -1210,6 +1237,7 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.5
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.5.31/kotlin-stdlib-jdk8-1.5.31.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.5.31/kotlin-stdlib-jdk8-1.5.31.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.7.10/kotlin-stdlib-jdk8-1.7.10.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.7.10/kotlin-stdlib-jdk8-1.7.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.7.22/kotlin-stdlib-jdk8-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.7.22/kotlin-stdlib-jdk8-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.9.0/kotlin-stdlib-jdk8-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2/kotlin-stdlib-1.1.3-2.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2/kotlin-stdlib-1.1.3-2.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.2.0/kotlin-stdlib-1.2.0.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.2.0/kotlin-stdlib-1.2.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.2.20/kotlin-stdlib-1.2.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.2.20/kotlin-stdlib-1.2.20.pom
|
||||||
@@ -1233,14 +1261,18 @@ https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.6.20/k
|
|||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.6.21/kotlin-stdlib-1.6.21.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.6.21/kotlin-stdlib-1.6.21.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.7.10/kotlin-stdlib-1.7.10.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.7.10/kotlin-stdlib-1.7.10.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.7.22/kotlin-stdlib-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.7.22/kotlin-stdlib-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.9.0/kotlin-stdlib-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.9.21/kotlin-stdlib-1.9.21.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.9.21/kotlin-stdlib-1.9.21.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/2.0.0-Beta2/kotlin-stdlib-2.0.0-Beta2.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/2.0.0-Beta2/kotlin-stdlib-2.0.0-Beta2.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-tooling-core/1.7.22/kotlin-tooling-core-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-tooling-core/1.7.22/kotlin-tooling-core-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-tooling-core/1.9.0/kotlin-tooling-core-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-tooling-metadata/1.6.20/kotlin-tooling-metadata-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-tooling-metadata/1.6.20/kotlin-tooling-metadata-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-io/1.6.20/kotlin-util-io-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-io/1.6.20/kotlin-util-io-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-io/1.7.22/kotlin-util-io-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-io/1.7.22/kotlin-util-io-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-io/1.9.0/kotlin-util-io-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-klib/1.6.20/kotlin-util-klib-1.6.20.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-klib/1.6.20/kotlin-util-klib-1.6.20.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-klib/1.7.22/kotlin-util-klib-1.7.22.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-klib/1.7.22/kotlin-util-klib-1.7.22.pom
|
||||||
|
https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-util-klib/1.9.0/kotlin-util-klib-1.9.0.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/markdown-jvm/0.2.1/markdown-jvm-0.2.1.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/markdown-jvm/0.2.1/markdown-jvm-0.2.1.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/markdown/0.2.1/markdown-0.2.1.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/markdown/0.2.1/markdown-0.2.1.pom
|
||||||
https://repo.maven.apache.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
|
https://repo.maven.apache.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
|
||||||
@@ -1323,11 +1355,11 @@ https://repo.maven.apache.org/maven2/org/robolectric/utils-reflector/4.7.3/utils
|
|||||||
https://repo.maven.apache.org/maven2/org/robolectric/utils/4.7.3/utils-4.7.3.pom
|
https://repo.maven.apache.org/maven2/org/robolectric/utils/4.7.3/utils-4.7.3.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/2.0.9/slf4j-api-2.0.9.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/2.1.0-alpha1/slf4j-api-2.1.0-alpha1.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-bom/2.0.9/slf4j-bom-2.0.9.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-bom/2.1.0-alpha1/slf4j-bom-2.1.0-alpha1.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.7.21/slf4j-parent-1.7.21.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.7.21/slf4j-parent-1.7.21.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.7.30/slf4j-parent-1.7.30.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.7.30/slf4j-parent-1.7.30.pom
|
||||||
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/2.0.9/slf4j-parent-2.0.9.pom
|
https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/2.1.0-alpha1/slf4j-parent-2.1.0-alpha1.pom
|
||||||
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/4/oss-parent-4.pom
|
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/4/oss-parent-4.pom
|
||||||
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/5/oss-parent-5.pom
|
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/5/oss-parent-5.pom
|
||||||
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom
|
https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom
|
||||||
|
|||||||
@@ -50,7 +50,8 @@ org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.7.22
|
|||||||
com.android.tools.lint:lint-gradle:30.4.2
|
com.android.tools.lint:lint-gradle:30.4.2
|
||||||
com.android.tools.build:gradle:7.4.2
|
com.android.tools.build:gradle:7.4.2
|
||||||
com.android.tools.build:aapt2:7.4.2-8841542
|
com.android.tools.build:aapt2:7.4.2-8841542
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2' \
|
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
|
||||||
|
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.0' \
|
||||||
>> "${DEPS_LIST}"
|
>> "${DEPS_LIST}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4288
File diff suppressed because one or more lines are too long
@@ -1,92 +0,0 @@
|
|||||||
import { useDerivedValue, withTiming, interpolate, useAnimatedScrollHandler, runOnJS } from 'react-native-reanimated';
|
|
||||||
|
|
||||||
export function navigationHeaderOpacity(distanceFromListTop, isAllLoaded, isCalculationsComplete, startPosition) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
const isCalculationsCompleteValue = isCalculationsComplete.value;
|
|
||||||
if (distanceFromListTop.value < startPosition && isAllLoaded.value) {
|
|
||||||
return isCalculationsCompleteValue ? withTiming(0) : 0;
|
|
||||||
} else {
|
|
||||||
return isCalculationsCompleteValue ? withTiming(1) : 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function navigationHeaderPosition(distanceFromListTop, isAllLoaded, topBarHeight, startPosition) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
return distanceFromListTop.value < startPosition && isAllLoaded.value ? withTiming(topBarHeight) : withTiming(0);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function interpolateNavigationViewOpacity(props) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
const {
|
|
||||||
'all-loaded?': isAllLoaded,
|
|
||||||
'end-position': endPosition,
|
|
||||||
'start-position': startPosition,
|
|
||||||
'distance-from-list-top': distanceFromListTop,
|
|
||||||
} = props;
|
|
||||||
if (isAllLoaded.value) {
|
|
||||||
return interpolate(distanceFromListTop.value, [startPosition, endPosition], [0, 1], {
|
|
||||||
extrapolateLeft: 'clamp',
|
|
||||||
extrapolateRight: 'clamp',
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function messagesListOnScroll(distanceFromListTop, chatListScrollY, callback) {
|
|
||||||
return function (event) {
|
|
||||||
'worklet';
|
|
||||||
const currentY = event.contentOffset.y;
|
|
||||||
const layoutHeight = event.layoutMeasurement.height;
|
|
||||||
const contentSizeY = event.contentSize.height - layoutHeight;
|
|
||||||
const newDistance = contentSizeY - currentY;
|
|
||||||
distanceFromListTop.value = newDistance;
|
|
||||||
chatListScrollY.value = currentY;
|
|
||||||
runOnJS(callback)(layoutHeight, newDistance);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export function placeholderOpacity(isCalculationsComplete) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
return isCalculationsComplete.value ? 0 : 1;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function placeholderZIndex(isCalculationsComplete) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
return isCalculationsComplete.value ? 0 : 2;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function scrollDownButtonOpacity(chatListScrollY, isComposerFocused, windowHeight) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
if (isComposerFocused.value) {
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
return chatListScrollY.value > windowHeight * 0.75 ? 1 : 0;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function jumpToButtonOpacity(scrollDownButtonOpacity, isComposerFocused) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
return withTiming(scrollDownButtonOpacity.value == 1 || isComposerFocused.value ? 0 : 1);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export function jumpToButtonPosition(scrollDownButtonOpacity, isComposerFocused) {
|
|
||||||
return useDerivedValue(function () {
|
|
||||||
'worklet';
|
|
||||||
return withTiming(scrollDownButtonOpacity.value == 1 || isComposerFocused.value ? 35 : 0);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
import { useDerivedValue, withTiming } from 'react-native-reanimated';
|
||||||
|
|
||||||
|
export function scrollDownButtonOpacity(chatListScrollY, isComposerFocused, windowHeight) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
if (isComposerFocused.value) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return chatListScrollY.value > windowHeight * 0.75 ? 1 : 0;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function jumpToButtonOpacity(scrollDownButtonOpacity, isComposerFocused) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
return withTiming(scrollDownButtonOpacity.value == 1 || isComposerFocused.value ? 0 : 1);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function jumpToButtonPosition(scrollDownButtonOpacity, isComposerFocused) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
return withTiming(scrollDownButtonOpacity.value == 1 || isComposerFocused.value ? 35 : 0);
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
import { withTiming, runOnJS } from 'react-native-reanimated';
|
||||||
|
|
||||||
|
export function messagesListOnScroll(distanceFromListTop, chatListScrollY, callback) {
|
||||||
|
return function (event) {
|
||||||
|
'worklet';
|
||||||
|
const currentY = event.contentOffset.y;
|
||||||
|
const layoutHeight = event.layoutMeasurement.height;
|
||||||
|
const contentSizeY = event.contentSize.height - layoutHeight;
|
||||||
|
const newDistance = contentSizeY - currentY;
|
||||||
|
distanceFromListTop.value = newDistance;
|
||||||
|
chatListScrollY.value = currentY;
|
||||||
|
runOnJS(callback)(layoutHeight, newDistance);
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
import { useDerivedValue, withTiming, interpolate } from 'react-native-reanimated';
|
||||||
|
|
||||||
|
export function navigationHeaderOpacity(distanceFromListTop, isAllLoaded, isCalculationsComplete, startPosition) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
const isCalculationsCompleteValue = isCalculationsComplete.value;
|
||||||
|
if (distanceFromListTop.value < startPosition && isAllLoaded.value) {
|
||||||
|
return isCalculationsCompleteValue ? withTiming(0) : 0;
|
||||||
|
} else {
|
||||||
|
return isCalculationsCompleteValue ? withTiming(1) : 1;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function navigationHeaderPosition(distanceFromListTop, isAllLoaded, topBarHeight, startPosition) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
return distanceFromListTop.value < startPosition && isAllLoaded.value ? withTiming(topBarHeight) : withTiming(0);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function interpolateNavigationViewOpacity(props) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
const {
|
||||||
|
'all-loaded?': isAllLoaded,
|
||||||
|
'end-position': endPosition,
|
||||||
|
'start-position': startPosition,
|
||||||
|
'distance-from-list-top': distanceFromListTop,
|
||||||
|
} = props;
|
||||||
|
if (isAllLoaded.value) {
|
||||||
|
return interpolate(distanceFromListTop.value, [startPosition, endPosition], [0, 1], {
|
||||||
|
extrapolateLeft: 'clamp',
|
||||||
|
extrapolateRight: 'clamp',
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
import { useDerivedValue } from 'react-native-reanimated';
|
||||||
|
|
||||||
|
export function placeholderOpacity(isCalculationsComplete) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
return isCalculationsComplete.value ? 0 : 1;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function placeholderZIndex(isCalculationsComplete) {
|
||||||
|
return useDerivedValue(function () {
|
||||||
|
'worklet';
|
||||||
|
return isCalculationsComplete.value ? 0 : 2;
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -377,81 +377,88 @@
|
|||||||
(defn mock
|
(defn mock
|
||||||
[module]
|
[module]
|
||||||
(case module
|
(case module
|
||||||
"react-native-languages" react-native-languages
|
"react-native-languages" react-native-languages
|
||||||
"react-native-background-timer" background-timer
|
"react-native-background-timer" background-timer
|
||||||
"react-native-image-crop-picker" image-crop-picker
|
"react-native-image-crop-picker" image-crop-picker
|
||||||
"react-native-gesture-handler" react-native-gesture-handler
|
"react-native-gesture-handler" react-native-gesture-handler
|
||||||
"react-native-static-safe-area-insets" react-native-static-safe-area-insets
|
"react-native-static-safe-area-insets" react-native-static-safe-area-insets
|
||||||
"react-native-config" config
|
"react-native-config" config
|
||||||
"react-native-iphone-x-helper" (clj->js {:getStatusBarHeight (fn [])
|
"react-native-iphone-x-helper" (clj->js {:getStatusBarHeight (fn [])
|
||||||
:getBottomSpace (fn [])})
|
:getBottomSpace (fn [])})
|
||||||
"react-native-screens" (clj->js {})
|
"react-native-screens" (clj->js {})
|
||||||
"react-native-reanimated" react-native-reanimated
|
"react-native-reanimated" react-native-reanimated
|
||||||
"react-native-redash" react-native-redash
|
"react-native-redash" react-native-redash
|
||||||
"react-native-fetch-polyfill" fetch
|
"react-native-fetch-polyfill" fetch
|
||||||
"react-native-status-keycard" status-keycard
|
"react-native-status-keycard" status-keycard
|
||||||
"react-native-keychain" keychain
|
"react-native-keychain" keychain
|
||||||
"react-native-touch-id" touchid
|
"react-native-touch-id" touchid
|
||||||
"@react-native-community/netinfo" net-info
|
"@react-native-community/netinfo" net-info
|
||||||
"react-native-dialogs" dialogs
|
"react-native-dialogs" dialogs
|
||||||
"react-native" react-native
|
"react-native" react-native
|
||||||
"react-native-fs" fs
|
"react-native-fs" fs
|
||||||
"react-native-mail" react-native-mail
|
"react-native-mail" react-native-mail
|
||||||
"react-native-image-resizer" image-resizer
|
"react-native-image-resizer" image-resizer
|
||||||
"react-native-haptic-feedback" react-native-haptic-feedback
|
"react-native-haptic-feedback" react-native-haptic-feedback
|
||||||
"react-native-device-info" react-native-device-info
|
"react-native-device-info" react-native-device-info
|
||||||
"react-native-push-notification" react-native-push-notification
|
"react-native-push-notification" react-native-push-notification
|
||||||
"react-native-linear-gradient" react-native-gradien
|
"react-native-linear-gradient" react-native-gradien
|
||||||
"@react-native-community/masked-view" masked-view
|
"@react-native-community/masked-view" masked-view
|
||||||
"react-native-blob-util" react-native-blob-util
|
"react-native-blob-util" react-native-blob-util
|
||||||
"react-native-navigation" react-native-navigation
|
"react-native-navigation" react-native-navigation
|
||||||
"@react-native-community/push-notification-ios" push-notification-ios
|
"@react-native-community/push-notification-ios" push-notification-ios
|
||||||
"@react-native-community/blur" react-native-blur
|
"@react-native-community/blur" react-native-blur
|
||||||
"@react-native-camera-roll/camera-roll" react-native-camera-roll
|
"@react-native-camera-roll/camera-roll" react-native-camera-roll
|
||||||
"react-native-camera-kit" react-native-camera-kit
|
"react-native-camera-kit" react-native-camera-kit
|
||||||
"react-native-permissions" react-native-permissions
|
"react-native-permissions" react-native-permissions
|
||||||
"rn-emoji-keyboard" rn-emoji-keyboard
|
"rn-emoji-keyboard" rn-emoji-keyboard
|
||||||
"react-native-hole-view" react-native-hole-view
|
"react-native-hole-view" react-native-hole-view
|
||||||
"react-native-draggable-flatlist" react-native-draggable-flatlist
|
"react-native-draggable-flatlist" react-native-draggable-flatlist
|
||||||
"react-native-webview" react-native-webview
|
"react-native-webview" react-native-webview
|
||||||
"@react-native-community/audio-toolkit" react-native-audio-toolkit
|
"@react-native-community/audio-toolkit" react-native-audio-toolkit
|
||||||
"react-native-image-viewing" react-native-image-viewing
|
"react-native-image-viewing" react-native-image-viewing
|
||||||
"react-native-share" react-native-share
|
"react-native-share" react-native-share
|
||||||
"@react-native-async-storage/async-storage" async-storage
|
"@react-native-async-storage/async-storage" async-storage
|
||||||
"react-native-svg" react-native-svg
|
"react-native-svg" react-native-svg
|
||||||
"react-native-transparent-video" react-native-transparent-video
|
"react-native-transparent-video" react-native-transparent-video
|
||||||
"react-native-orientation-locker" react-native-orientation-locker
|
"react-native-orientation-locker" react-native-orientation-locker
|
||||||
"react-native-gifted-charts" react-native-gifted-charts
|
"react-native-gifted-charts" react-native-gifted-charts
|
||||||
"../resources/data/emojis/en.json" (js/JSON.parse (slurp
|
"../resources/data/emojis/en.json" (js/JSON.parse
|
||||||
"./resources/data/emojis/en.json"))
|
(slurp
|
||||||
"../src/js/worklets/core.js" worklet-factory
|
"./resources/data/emojis/en.json"))
|
||||||
"../src/js/worklets/shell/bottom_tabs.js" #js {}
|
"../src/js/worklets/core.js" worklet-factory
|
||||||
"../src/js/worklets/shell/home_stack.js" #js {}
|
"../src/js/worklets/shell/bottom_tabs.js" #js {}
|
||||||
"../src/js/worklets/shell/floating_screen.js" #js {}
|
"../src/js/worklets/shell/home_stack.js" #js {}
|
||||||
"../src/js/worklets/bottom_sheet.js" #js {}
|
"../src/js/worklets/shell/floating_screen.js" #js {}
|
||||||
"../src/js/worklets/record_audio.js" #js {}
|
"../src/js/worklets/bottom_sheet.js" #js {}
|
||||||
"../src/js/worklets/scroll_view.js" #js {}
|
"../src/js/worklets/record_audio.js" #js {}
|
||||||
"../src/js/worklets/onboarding_carousel.js" #js {}
|
"../src/js/worklets/scroll_view.js" #js {}
|
||||||
"../src/js/worklets/chat/lightbox.js" #js {}
|
"../src/js/worklets/onboarding_carousel.js" #js {}
|
||||||
"../src/js/worklets/chat/messages.js" #js {}
|
"../src/js/worklets/chat/messenger/lightbox.js" #js {}
|
||||||
"../src/js/worklets/parallax.js" #js {}
|
"../src/js/worklets/chat/messenger/messages.js" #js {}
|
||||||
"../src/js/worklets/identifiers_highlighting.js" #js {}
|
"../src/js/worklets/chat/messenger/navigation.js" #js {}
|
||||||
"./fleets.js" default-fleets
|
"../src/js/worklets/chat/messenger/composer.js" #js {}
|
||||||
"../translations/ar.json" (js/JSON.parse (slurp "./translations/ar.json"))
|
"../src/js/worklets/chat/messenger/placeholder.js" #js {}
|
||||||
"../translations/de.json" (js/JSON.parse (slurp "./translations/de.json"))
|
"../src/js/worklets/parallax.js" #js {}
|
||||||
"../translations/en.json" (js/JSON.parse (slurp "./translations/en.json"))
|
"../src/js/worklets/identifiers_highlighting.js" #js {}
|
||||||
"../translations/es.json" (js/JSON.parse (slurp "./translations/es.json"))
|
"./fleets.js" default-fleets
|
||||||
"../translations/es_419.json" (js/JSON.parse (slurp "./translations/es_419.json"))
|
"../translations/ar.json" (js/JSON.parse (slurp "./translations/ar.json"))
|
||||||
"../translations/fil.json" (js/JSON.parse (slurp "./translations/fil.json"))
|
"../translations/de.json" (js/JSON.parse (slurp "./translations/de.json"))
|
||||||
"../translations/fr.json" (js/JSON.parse (slurp "./translations/fr.json"))
|
"../translations/en.json" (js/JSON.parse (slurp "./translations/en.json"))
|
||||||
"../translations/id.json" (js/JSON.parse (slurp "./translations/id.json"))
|
"../translations/es.json" (js/JSON.parse (slurp "./translations/es.json"))
|
||||||
"../translations/it.json" (js/JSON.parse (slurp "./translations/it.json"))
|
"../translations/es_419.json" (js/JSON.parse (slurp
|
||||||
"../translations/ko.json" (js/JSON.parse (slurp "./translations/ko.json"))
|
"./translations/es_419.json"))
|
||||||
"../translations/pt_BR.json" (js/JSON.parse (slurp "./translations/pt_BR.json"))
|
"../translations/fil.json" (js/JSON.parse (slurp "./translations/fil.json"))
|
||||||
"../translations/ru.json" (js/JSON.parse (slurp "./translations/ru.json"))
|
"../translations/fr.json" (js/JSON.parse (slurp "./translations/fr.json"))
|
||||||
"../translations/tr.json" (js/JSON.parse (slurp "./translations/tr.json"))
|
"../translations/id.json" (js/JSON.parse (slurp "./translations/id.json"))
|
||||||
"../translations/zh.json" (js/JSON.parse (slurp "./translations/zh.json"))
|
"../translations/it.json" (js/JSON.parse (slurp "./translations/it.json"))
|
||||||
"../translations/zh_hant.json" (js/JSON.parse (slurp
|
"../translations/ko.json" (js/JSON.parse (slurp "./translations/ko.json"))
|
||||||
"./translations/zh_hant.json"))
|
"../translations/pt_BR.json" (js/JSON.parse (slurp
|
||||||
"../translations/zh_TW.json" (js/JSON.parse (slurp "./translations/zh_TW.json"))
|
"./translations/pt_BR.json"))
|
||||||
|
"../translations/ru.json" (js/JSON.parse (slurp "./translations/ru.json"))
|
||||||
|
"../translations/tr.json" (js/JSON.parse (slurp "./translations/tr.json"))
|
||||||
|
"../translations/zh.json" (js/JSON.parse (slurp "./translations/zh.json"))
|
||||||
|
"../translations/zh_hant.json" (js/JSON.parse (slurp
|
||||||
|
"./translations/zh_hant.json"))
|
||||||
|
"../translations/zh_TW.json" (js/JSON.parse (slurp
|
||||||
|
"./translations/zh_TW.json"))
|
||||||
nil))
|
nil))
|
||||||
|
|||||||
@@ -33,22 +33,22 @@
|
|||||||
[rn/view
|
[rn/view
|
||||||
{:style style/networks-container
|
{:style style/networks-container
|
||||||
:accessibility-label :networks}
|
:accessibility-label :networks}
|
||||||
(when (pos? ethereum)
|
(when (and ethereum (pos? (:amount ethereum)))
|
||||||
[network-amount
|
[network-amount
|
||||||
{:network :ethereum
|
{:network :ethereum
|
||||||
:amount (str ethereum " ETH")
|
:amount (str (:amount ethereum) " " (or (:token-symbol ethereum) "ETH"))
|
||||||
:divider? (or show-arbitrum? show-optimism?)
|
:divider? (or show-arbitrum? show-optimism?)
|
||||||
:theme theme}])
|
:theme theme}])
|
||||||
(when show-optimism?
|
(when show-optimism?
|
||||||
[network-amount
|
[network-amount
|
||||||
{:network :optimism
|
{:network :optimism
|
||||||
:amount (str optimism " OPT")
|
:amount (str (:amount optimism) " " (or (:token-symbol optimism) "OPT"))
|
||||||
:divider? show-arbitrum?
|
:divider? show-arbitrum?
|
||||||
:theme theme}])
|
:theme theme}])
|
||||||
(when show-arbitrum?
|
(when show-arbitrum?
|
||||||
[network-amount
|
[network-amount
|
||||||
{:network :arbitrum
|
{:network :arbitrum
|
||||||
:amount (str arbitrum " ARB")
|
:amount (str (:amount arbitrum) " " (or (:token-symbol arbitrum) "ARB"))
|
||||||
:theme theme}])]))
|
:theme theme}])]))
|
||||||
|
|
||||||
(defn- view-internal
|
(defn- view-internal
|
||||||
|
|||||||
@@ -16,23 +16,48 @@
|
|||||||
:flex-direction :row
|
:flex-direction :row
|
||||||
:justify-content :space-between})
|
:justify-content :space-between})
|
||||||
|
|
||||||
|
(defn token-name
|
||||||
|
[theme]
|
||||||
|
{:color (colors/theme-colors colors/neutral-50 colors/neutral-40 theme)
|
||||||
|
:margin-right 8
|
||||||
|
:padding-bottom 2})
|
||||||
|
|
||||||
|
(def token-label-container
|
||||||
|
{:position :absolute
|
||||||
|
:left 32
|
||||||
|
:right 0
|
||||||
|
:bottom 0
|
||||||
|
:top 0
|
||||||
|
:flex-direction :row
|
||||||
|
:align-items :flex-end})
|
||||||
|
|
||||||
|
(def text-input-container
|
||||||
|
{:position :absolute
|
||||||
|
:top 0
|
||||||
|
:bottom 0
|
||||||
|
:left 32 ; token image size
|
||||||
|
:right 0})
|
||||||
|
|
||||||
|
(def text-input-dimensions
|
||||||
|
(assoc typography/heading-1
|
||||||
|
:font-weight "600"
|
||||||
|
:margin-left 8
|
||||||
|
:margin-right (if platform/ios? 6 4)
|
||||||
|
:padding 0
|
||||||
|
:height "100%"))
|
||||||
|
|
||||||
(defn text-input
|
(defn text-input
|
||||||
[theme]
|
[theme]
|
||||||
(merge typography/heading-1
|
(assoc text-input-dimensions :color (colors/theme-colors colors/neutral-100 colors/white theme)))
|
||||||
{:font-weight "600"
|
|
||||||
:margin-left 8
|
(defn placeholder-text
|
||||||
:margin-right (if platform/ios? 6 4)
|
[theme]
|
||||||
:color (colors/theme-colors colors/neutral-100 colors/white theme)
|
(colors/theme-colors colors/neutral-40 colors/neutral-50 theme))
|
||||||
:padding 0
|
|
||||||
:flex 1
|
|
||||||
:height "100%"}))
|
|
||||||
|
|
||||||
(defn divider
|
(defn divider
|
||||||
[width theme]
|
[theme]
|
||||||
{:height 1
|
{:margin-vertical 8
|
||||||
:width width
|
:background-color (colors/theme-colors colors/neutral-10 colors/neutral-90 theme)})
|
||||||
:background-color (colors/theme-colors colors/neutral-10 colors/neutral-90 theme)
|
|
||||||
:margin-vertical 8})
|
|
||||||
|
|
||||||
(def data-container
|
(def data-container
|
||||||
{:padding-top 4
|
{:padding-top 4
|
||||||
@@ -40,3 +65,7 @@
|
|||||||
:flex-direction :row
|
:flex-direction :row
|
||||||
:justify-content :space-between
|
:justify-content :space-between
|
||||||
:align-items :center})
|
:align-items :center})
|
||||||
|
|
||||||
|
(defn fiat-amount
|
||||||
|
[theme]
|
||||||
|
{:color (colors/theme-colors colors/neutral-50 colors/neutral-40 theme)})
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
[quo.components.tags.network-tags.view :as network-tag]
|
[quo.components.tags.network-tags.view :as network-tag]
|
||||||
[quo.components.utilities.token.view :as token]
|
[quo.components.utilities.token.view :as token]
|
||||||
[quo.components.wallet.token-input.style :as style]
|
[quo.components.wallet.token-input.style :as style]
|
||||||
[quo.foundations.colors :as colors]
|
|
||||||
[quo.foundations.common :as common]
|
[quo.foundations.common :as common]
|
||||||
[quo.theme :as quo.theme]
|
[quo.theme :as quo.theme]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
@@ -15,77 +14,114 @@
|
|||||||
|
|
||||||
(defn calc-value
|
(defn calc-value
|
||||||
[crypto? currency token value conversion]
|
[crypto? currency token value conversion]
|
||||||
(let [num-value (if (string? value) (parse-double (or value "0")) value)]
|
(let [num-value (if (string? value)
|
||||||
|
(or (parse-double value) 0)
|
||||||
|
value)]
|
||||||
(if crypto?
|
(if crypto?
|
||||||
(str (get common/currency-label currency) (.toFixed (* num-value conversion) 2))
|
(str (get common/currency-label currency) (.toFixed (* num-value conversion) 2))
|
||||||
(str (.toFixed (/ num-value conversion) 2) " " (string/upper-case (or (clj->js token) ""))))))
|
(str (.toFixed (/ num-value conversion) 2)
|
||||||
|
" "
|
||||||
|
(string/upper-case (or (clj->js token) ""))))))
|
||||||
|
|
||||||
|
(defn- data-info
|
||||||
|
[{:keys [theme conversion networks title crypto? currency token amount]}]
|
||||||
|
[rn/view {:style style/data-container}
|
||||||
|
[network-tag/view {:networks networks :title title}]
|
||||||
|
[text/text
|
||||||
|
{:size :paragraph-2
|
||||||
|
:weight :medium
|
||||||
|
:style (style/fiat-amount theme)}
|
||||||
|
(calc-value crypto? currency token amount conversion)]])
|
||||||
|
|
||||||
|
(defn- token-name-text
|
||||||
|
[theme text]
|
||||||
|
[text/text
|
||||||
|
{:style (style/token-name theme)
|
||||||
|
:size :paragraph-2
|
||||||
|
:weight :semi-bold}
|
||||||
|
(string/upper-case (or (clj->js text) ""))])
|
||||||
|
|
||||||
|
(defn- token-label
|
||||||
|
[{:keys [theme value text]}]
|
||||||
|
[rn/view
|
||||||
|
{:style style/token-label-container
|
||||||
|
:pointer-events :none}
|
||||||
|
[rn/text-input
|
||||||
|
{:auto-focus true
|
||||||
|
:max-length 12
|
||||||
|
:style style/text-input-dimensions
|
||||||
|
:editable false
|
||||||
|
:opacity 0
|
||||||
|
:value value}]
|
||||||
|
[token-name-text theme text]])
|
||||||
|
|
||||||
|
(defn input-section
|
||||||
|
[{:keys [on-change-text value value-atom]}]
|
||||||
|
(let [input-ref (atom nil)
|
||||||
|
set-ref #(reset! input-ref %)
|
||||||
|
focus-input #(when-let [ref ^js @input-ref]
|
||||||
|
(.focus ref))
|
||||||
|
controlled-input? (some? value)
|
||||||
|
handle-on-change-text (fn [v]
|
||||||
|
(when-not controlled-input?
|
||||||
|
(reset! value-atom v))
|
||||||
|
(when on-change-text
|
||||||
|
(on-change-text v)))]
|
||||||
|
(fn [{:keys [theme token customization-color show-keyboard? crypto? currency value]
|
||||||
|
:or {show-keyboard? true}}]
|
||||||
|
[rn/pressable
|
||||||
|
{:on-press focus-input
|
||||||
|
:style {:flex 1}}
|
||||||
|
[token/view
|
||||||
|
{:token token
|
||||||
|
:size :size-32}]
|
||||||
|
[rn/view {:style style/text-input-container}
|
||||||
|
[rn/text-input
|
||||||
|
(cond-> {:style (style/text-input theme)
|
||||||
|
:placeholder-text-color (style/placeholder-text theme)
|
||||||
|
:auto-focus true
|
||||||
|
:ref set-ref
|
||||||
|
:placeholder "0"
|
||||||
|
:keyboard-type :numeric
|
||||||
|
:max-length 12
|
||||||
|
:on-change-text handle-on-change-text
|
||||||
|
:selection-color customization-color
|
||||||
|
:show-soft-input-on-focus show-keyboard?}
|
||||||
|
controlled-input? (assoc :value value)
|
||||||
|
(not controlled-input?) (assoc :default-value @value-atom))]]
|
||||||
|
[token-label
|
||||||
|
{:theme theme
|
||||||
|
:text (if crypto? token currency)
|
||||||
|
:value (if controlled-input? value @value-atom)}]])))
|
||||||
|
|
||||||
(defn- view-internal
|
(defn- view-internal
|
||||||
[{external-value :value}]
|
[{:keys [on-swap]}]
|
||||||
(let [width (:width (rn/get-window))
|
(let [width (:width (rn/get-window))
|
||||||
value (reagent/atom nil)
|
value-atom (reagent/atom nil)
|
||||||
crypto? (reagent/atom true)
|
crypto? (reagent/atom true)
|
||||||
input-ref (atom nil)
|
handle-on-swap (fn []
|
||||||
controlled-input? (some? external-value)]
|
(swap! crypto? not)
|
||||||
(fn [{:keys [theme token currency conversion networks title customization-color
|
(when on-swap
|
||||||
on-change-text on-swap container-style show-keyboard?]
|
(on-swap @crypto?)))]
|
||||||
:or {show-keyboard? true}
|
(fn [{:keys [theme container-style value] :as props}]
|
||||||
external-value :value}]
|
[rn/view {:style (merge (style/main-container width) container-style)}
|
||||||
[rn/view
|
|
||||||
{:style (merge
|
|
||||||
(style/main-container width)
|
|
||||||
container-style)}
|
|
||||||
[rn/view {:style style/amount-container}
|
[rn/view {:style style/amount-container}
|
||||||
[rn/pressable
|
[input-section
|
||||||
{:on-press #(when @input-ref (.focus ^js @input-ref))
|
(assoc props
|
||||||
:style {:flex-direction :row
|
:value-atom value-atom
|
||||||
:flex-grow 1
|
:crypto? @crypto?)]
|
||||||
:align-items :flex-end}}
|
|
||||||
[token/view {:token token :size :size-32}]
|
|
||||||
[rn/text-input
|
|
||||||
(cond-> {:auto-focus true
|
|
||||||
:ref #(reset! input-ref %)
|
|
||||||
:placeholder "0"
|
|
||||||
:placeholder-text-color (colors/theme-colors colors/neutral-40
|
|
||||||
colors/neutral-50
|
|
||||||
theme)
|
|
||||||
:keyboard-type :numeric
|
|
||||||
:max-length 12
|
|
||||||
:on-change-text (fn [v]
|
|
||||||
(when-not controlled-input?
|
|
||||||
(reset! value v))
|
|
||||||
(when on-change-text
|
|
||||||
(on-change-text v)))
|
|
||||||
:style (style/text-input theme)
|
|
||||||
:selection-color customization-color
|
|
||||||
:show-soft-input-on-focus show-keyboard?}
|
|
||||||
controlled-input? (assoc :value external-value)
|
|
||||||
(not controlled-input?) (assoc :default-value @value))]
|
|
||||||
[text/text
|
|
||||||
{:size :paragraph-2
|
|
||||||
:weight :semi-bold
|
|
||||||
:style {:color (colors/theme-colors colors/neutral-50 colors/neutral-40 theme)
|
|
||||||
:margin-right 8
|
|
||||||
:padding-bottom 2}}
|
|
||||||
(string/upper-case (or (clj->js (if @crypto? token currency)) ""))]]
|
|
||||||
[button/button
|
[button/button
|
||||||
{:icon true
|
{:icon true
|
||||||
:icon-only? true
|
:icon-only? true
|
||||||
:size 32
|
:size 32
|
||||||
:on-press (fn []
|
:on-press handle-on-swap
|
||||||
(swap! crypto? not)
|
|
||||||
(when on-swap
|
|
||||||
(on-swap @crypto?)))
|
|
||||||
:type :outline
|
:type :outline
|
||||||
:accessibility-label :reorder}
|
:accessibility-label :reorder}
|
||||||
:i/reorder]]
|
:i/reorder]]
|
||||||
[divider-line/view {:container-style {:margin-vertical 8}}]
|
[divider-line/view {:container-style (style/divider theme)}]
|
||||||
[rn/view {:style style/data-container}
|
[data-info
|
||||||
[network-tag/view {:networks networks :title title}]
|
(assoc props
|
||||||
[text/text
|
:crypto? @crypto?
|
||||||
{:size :paragraph-2
|
:amount (or value @value-atom))]])))
|
||||||
:weight :medium
|
|
||||||
:style {:color (colors/theme-colors colors/neutral-50 colors/neutral-40 theme)}}
|
|
||||||
(calc-value @crypto? currency token (or external-value @value) conversion)]]])))
|
|
||||||
|
|
||||||
(def view (quo.theme/with-theme view-internal))
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
|||||||
@@ -219,7 +219,8 @@
|
|||||||
(def regx-community-universal-link #"((^https?://status.app/)|(^status-app://))c/([\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-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-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-multichain-address #"^(?:(?:eth:|arb1:|opt:)(?=:|))*0x[0-9a-fA-F]{40}$")
|
||||||
|
|
||||||
(def regx-address-contains #"(?i)0x[a-fA-F0-9]{40}")
|
(def regx-address-contains #"(?i)0x[a-fA-F0-9]{40}")
|
||||||
(def regx-starts-with-uuid #"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}")
|
(def regx-starts-with-uuid #"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}")
|
||||||
(def regx-full-or-partial-address #"^0x[a-fA-F0-9]{1,40}$")
|
(def regx-full-or-partial-address #"^0x[a-fA-F0-9]{1,40}$")
|
||||||
@@ -432,3 +433,6 @@
|
|||||||
(def ^:const send-type-stickers-buy 4)
|
(def ^:const send-type-stickers-buy 4)
|
||||||
(def ^:const send-type-bridge 5)
|
(def ^:const send-type-bridge 5)
|
||||||
(def ^:const send-type-erc-721-transfer 6)
|
(def ^:const send-type-erc-721-transfer 6)
|
||||||
|
|
||||||
|
(def ^:const bridge-name-transfer "Transfer")
|
||||||
|
(def ^:const bridge-name-erc-721-transfer "ERC721Transfer")
|
||||||
|
|||||||
@@ -16,13 +16,19 @@
|
|||||||
(defn reenter-screen-effect
|
(defn reenter-screen-effect
|
||||||
[{:keys [text-value saved-cursor-position maximized?]}
|
[{:keys [text-value saved-cursor-position maximized?]}
|
||||||
{:keys [content-height]}
|
{:keys [content-height]}
|
||||||
{:keys [input-content-height input-text input-maximized?]}]
|
{:keys [input-content-height input-text input-maximized?]}
|
||||||
(when (and (empty? @text-value) (not= input-text nil))
|
{:keys [height]}]
|
||||||
(reset! text-value input-text)
|
(let [lines (utils/calc-lines input-content-height)
|
||||||
(reset! content-height input-content-height)
|
minimized-height (if (or (= lines 1) (empty? input-text))
|
||||||
(reset! saved-cursor-position (count input-text)))
|
constants/input-height
|
||||||
(when input-maximized?
|
constants/multiline-minimized-height)]
|
||||||
(reset! maximized? true)))
|
(when (and (empty? @text-value) (not= input-text nil))
|
||||||
|
(reset! text-value input-text)
|
||||||
|
(reset! content-height input-content-height)
|
||||||
|
(reset! saved-cursor-position (count input-text))
|
||||||
|
(reanimated/set-shared-value height minimized-height))
|
||||||
|
(when input-maximized?
|
||||||
|
(reset! maximized? true))))
|
||||||
|
|
||||||
(defn maximized-effect
|
(defn maximized-effect
|
||||||
[{:keys [maximized?]}
|
[{:keys [maximized?]}
|
||||||
@@ -101,7 +107,7 @@
|
|||||||
[max-height])
|
[max-height])
|
||||||
(rn/use-effect
|
(rn/use-effect
|
||||||
(fn []
|
(fn []
|
||||||
(reenter-screen-effect state dimensions subscriptions))
|
(reenter-screen-effect state dimensions subscriptions animations))
|
||||||
[max-height subscriptions]))
|
[max-height subscriptions]))
|
||||||
|
|
||||||
(defn use-edit
|
(defn use-edit
|
||||||
|
|||||||
@@ -31,8 +31,7 @@
|
|||||||
:position :absolute
|
:position :absolute
|
||||||
:bottom 0
|
:bottom 0
|
||||||
:left 0
|
:left 0
|
||||||
:right 0
|
:right 0})
|
||||||
:z-index 2})
|
|
||||||
|
|
||||||
(defn bottom-gradient
|
(defn bottom-gradient
|
||||||
[]
|
[]
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
(when show-bottom-gradient?
|
(when show-bottom-gradient?
|
||||||
[rn/pressable
|
[rn/pressable
|
||||||
{:on-press #(when @input-ref (.focus ^js @input-ref))
|
{:on-press #(when @input-ref (.focus ^js @input-ref))
|
||||||
|
:style {:z-index 1}
|
||||||
:accessibility-label :bottom-gradient}
|
:accessibility-label :bottom-gradient}
|
||||||
[linear-gradient/linear-gradient (style/bottom-gradient)]])]))
|
[linear-gradient/linear-gradient (style/bottom-gradient)]])]))
|
||||||
|
|
||||||
|
|||||||
@@ -16,18 +16,20 @@
|
|||||||
(defn focus
|
(defn focus
|
||||||
"Animate to the `saved-height`, display background-overlay if needed, and set cursor position"
|
"Animate to the `saved-height`, display background-overlay if needed, and set cursor position"
|
||||||
[{:keys [input-ref] :as props}
|
[{:keys [input-ref] :as props}
|
||||||
{:keys [text-value focused? lock-selection? saved-cursor-position composer-focused?]}
|
{:keys [text-value focused? lock-selection? saved-cursor-position composer-focused? maximized?]}
|
||||||
{:keys [height saved-height last-height opacity background-y container-opacity]
|
{:keys [height saved-height last-height opacity background-y container-opacity]
|
||||||
:as animations}
|
:as animations}
|
||||||
{:keys [max-height] :as dimensions}]
|
{:keys [max-height] :as dimensions}]
|
||||||
(reanimated/set-shared-value composer-focused? true)
|
(reanimated/set-shared-value composer-focused? true)
|
||||||
(reset! focused? true)
|
(reset! focused? true)
|
||||||
(rf/dispatch [:chat.ui/set-input-focused true])
|
(rf/dispatch [:chat.ui/set-input-focused true])
|
||||||
(let [last-height-value (reanimated/get-shared-value last-height)]
|
(let [last-height-value (reanimated/get-shared-value last-height)
|
||||||
(reanimated/animate height last-height-value)
|
new-height (min max-height last-height-value)]
|
||||||
(reanimated/set-shared-value saved-height last-height-value)
|
(reanimated/animate height new-height)
|
||||||
|
(reanimated/set-shared-value saved-height new-height)
|
||||||
(reanimated/animate container-opacity 1)
|
(reanimated/animate container-opacity 1)
|
||||||
(when (> last-height-value (* constants/background-threshold max-height))
|
(when (> last-height-value (* constants/background-threshold max-height))
|
||||||
|
(reset! maximized? true)
|
||||||
(reanimated/animate opacity 1)
|
(reanimated/animate opacity 1)
|
||||||
(reanimated/set-shared-value background-y 0)))
|
(reanimated/set-shared-value background-y 0)))
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
[status-im.contexts.chat.messenger.composer.style :as style]
|
[status-im.contexts.chat.messenger.composer.style :as style]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]
|
[utils.re-frame :as rf]
|
||||||
[utils.worklets.chat.messages :as worklets]))
|
[utils.worklets.chat.messenger.composer :as worklets]))
|
||||||
|
|
||||||
(defn bar
|
(defn bar
|
||||||
[theme]
|
[theme]
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
[status-im.contexts.chat.messenger.lightbox.constants :as constants]
|
[status-im.contexts.chat.messenger.lightbox.constants :as constants]
|
||||||
[status-im.contexts.chat.messenger.lightbox.top-view :as top-view]
|
[status-im.contexts.chat.messenger.lightbox.top-view :as top-view]
|
||||||
[utils.re-frame :as rf]
|
[utils.re-frame :as rf]
|
||||||
[utils.worklets.chat.lightbox :as worklet]))
|
[utils.worklets.chat.messenger.lightbox :as worklet]))
|
||||||
|
|
||||||
(defn clear-timers
|
(defn clear-timers
|
||||||
[timers]
|
[timers]
|
||||||
|
|||||||
@@ -233,7 +233,9 @@
|
|||||||
(if (or deleted? deleted-for-me?)
|
(if (or deleted? deleted-for-me?)
|
||||||
(fn [] [content.deleted/deleted-message message-data])
|
(fn [] [content.deleted/deleted-message message-data])
|
||||||
(fn []
|
(fn []
|
||||||
[rn/view {:pointer-events :none}
|
[rn/view
|
||||||
|
{:pointer-events :none
|
||||||
|
:padding-top 4}
|
||||||
[user-message-content
|
[user-message-content
|
||||||
{:message-data message-data
|
{:message-data message-data
|
||||||
:context context
|
:context context
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
[status-im.contexts.shell.jump-to.constants :as jump-to.constants]
|
[status-im.contexts.shell.jump-to.constants :as jump-to.constants]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]
|
[utils.re-frame :as rf]
|
||||||
[utils.worklets.chat.messages :as worklets]))
|
[utils.worklets.chat.messenger.messages :as worklets]))
|
||||||
|
|
||||||
(defonce ^:const loading-indicator-extra-spacing 250)
|
(defonce ^:const loading-indicator-extra-spacing 250)
|
||||||
(defonce ^:const loading-indicator-page-loading-height 100)
|
(defonce ^:const loading-indicator-page-loading-height 100)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
[status-im.contexts.chat.messenger.messages.pin.banner.view :as pin.banner]
|
[status-im.contexts.chat.messenger.messages.pin.banner.view :as pin.banner]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]
|
[utils.re-frame :as rf]
|
||||||
[utils.worklets.chat.messages :as worklets]))
|
[utils.worklets.chat.messenger.navigation :as worklets]))
|
||||||
|
|
||||||
(defn f-header-content-container
|
(defn f-header-content-container
|
||||||
[{:keys [chat distance-from-list-top all-loaded? calculations-complete?]}]
|
[{:keys [chat distance-from-list-top all-loaded? calculations-complete?]}]
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
[react-native.reanimated :as reanimated]
|
[react-native.reanimated :as reanimated]
|
||||||
[react-native.safe-area :as safe-area]
|
[react-native.safe-area :as safe-area]
|
||||||
[status-im.contexts.chat.messenger.placeholder.style :as style]
|
[status-im.contexts.chat.messenger.placeholder.style :as style]
|
||||||
[utils.worklets.chat.messages :as worklets]))
|
[utils.worklets.chat.messenger.placeholder :as worklets]))
|
||||||
|
|
||||||
(defn- loading-skeleton
|
(defn- loading-skeleton
|
||||||
[]
|
[]
|
||||||
|
|||||||
@@ -10,25 +10,21 @@
|
|||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
|
|
||||||
(defn- join-community-and-navigate-back
|
(defn- join-community-and-navigate-back
|
||||||
[id addresses-for-permissions]
|
[id]
|
||||||
(rf/dispatch [:password-authentication/show
|
(rf/dispatch [:password-authentication/show
|
||||||
{:content (fn [] [password-authentication/view])}
|
{:content (fn [] [password-authentication/view])}
|
||||||
{:label (i18n/label :t/join-open-community)
|
{:label (i18n/label :t/join-open-community)
|
||||||
:on-press #(rf/dispatch [:communities/request-to-join
|
:on-press #(rf/dispatch [:communities/request-to-join-with-addresses
|
||||||
{:community-id id
|
{:community-id id
|
||||||
:password %
|
:password %}])}])
|
||||||
:addresses-to-reveal addresses-for-permissions}])}])
|
|
||||||
(rf/dispatch [:navigate-back]))
|
(rf/dispatch [:navigate-back]))
|
||||||
|
|
||||||
(defn f-view-internal
|
(defn f-view-internal
|
||||||
[]
|
[]
|
||||||
(let [{id :community-id} (rf/sub [:get-screen-params])
|
(let [{id :community-id} (rf/sub [:get-screen-params])
|
||||||
{:keys [name color images]} (rf/sub [:communities/community id])
|
{:keys [name color images]} (rf/sub [:communities/community id])
|
||||||
accounts (rf/sub [:wallet/accounts-with-customization-color])
|
airdrop-account (rf/sub [:communities/airdrop-account])
|
||||||
selected-permission-addresses (rf/sub [:communities/selected-permission-addresses])
|
selected-accounts (rf/sub [:communities/selected-permission-accounts])]
|
||||||
selected-accounts (filter #(contains? selected-permission-addresses
|
|
||||||
(:address %))
|
|
||||||
accounts)]
|
|
||||||
(rn/use-effect (fn []
|
(rn/use-effect (fn []
|
||||||
(rf/dispatch [:communities/initialize-permission-addresses]))
|
(rf/dispatch [:communities/initialize-permission-addresses]))
|
||||||
[])
|
[])
|
||||||
@@ -71,8 +67,8 @@
|
|||||||
:action :arrow
|
:action :arrow
|
||||||
:label :preview
|
:label :preview
|
||||||
:label-props {:type :accounts
|
:label-props {:type :accounts
|
||||||
:data [(first accounts)]}
|
:data [airdrop-account]}
|
||||||
:description-props {:text (-> accounts first :name)}}]}]
|
:description-props {:text (:name airdrop-account)}}]}]
|
||||||
[quo/text
|
[quo/text
|
||||||
{:style style/section-title
|
{:style style/section-title
|
||||||
:accessibility-label :community-rules-title
|
:accessibility-label :community-rules-title
|
||||||
@@ -86,7 +82,7 @@
|
|||||||
:track-text (i18n/label :t/slide-to-request-to-join)
|
:track-text (i18n/label :t/slide-to-request-to-join)
|
||||||
:track-icon :i/face-id
|
:track-icon :i/face-id
|
||||||
:customization-color color
|
:customization-color color
|
||||||
:on-complete #(join-community-and-navigate-back id selected-permission-addresses)}]]]))
|
:on-complete #(join-community-and-navigate-back id)}]]]))
|
||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
[]
|
[]
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
(ns status-im.contexts.communities.actions.airdrop-addresses.style)
|
(ns status-im.contexts.communities.actions.airdrop-addresses.style)
|
||||||
|
|
||||||
(def account-list-container
|
(def account-list-container
|
||||||
{:flex 1
|
{:padding-horizontal 8
|
||||||
:padding-top 12
|
:padding-bottom 8})
|
||||||
:padding-bottom 8})
|
|
||||||
|
|||||||
@@ -8,26 +8,21 @@
|
|||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
|
|
||||||
(defn- render-item
|
(defn- render-item
|
||||||
[item]
|
[item _ _ airdrop-address]
|
||||||
[quo/account-item
|
[quo/account-item
|
||||||
{:account-props item
|
{:account-props item
|
||||||
|
:state (when (= airdrop-address (:address item)) :selected)
|
||||||
|
:on-press (fn []
|
||||||
|
(rf/dispatch [:communities/set-airdrop-address (:address item)])
|
||||||
|
(rf/dispatch [:navigate-back]))
|
||||||
:emoji (:emoji item)}])
|
:emoji (:emoji item)}])
|
||||||
|
|
||||||
(defn- accounts-list
|
|
||||||
[{:keys [accounts]}]
|
|
||||||
[rn/view {:style style/account-list-container}
|
|
||||||
(when (seq accounts)
|
|
||||||
[rn/flat-list
|
|
||||||
{:data accounts
|
|
||||||
:render-fn render-item
|
|
||||||
:key-fn :address}])])
|
|
||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
[]
|
[]
|
||||||
(let [{id :community-id} (rf/sub [:get-screen-params])
|
(let [{id :community-id} (rf/sub [:get-screen-params])
|
||||||
{:keys [name images color]} (rf/sub [:communities/community id])
|
{:keys [name images color]} (rf/sub [:communities/community id])
|
||||||
logo-uri (get-in images [:thumbnail :uri])
|
selected-accounts (rf/sub [:communities/selected-permission-accounts])
|
||||||
accounts (rf/sub [:wallet/accounts-with-customization-color])]
|
airdrop-address (rf/sub [:communities/airdrop-address])]
|
||||||
[:<>
|
[:<>
|
||||||
[quo/drawer-top
|
[quo/drawer-top
|
||||||
{:type :context-tag
|
{:type :context-tag
|
||||||
@@ -37,7 +32,9 @@
|
|||||||
:on-button-press not-implemented/alert
|
:on-button-press not-implemented/alert
|
||||||
:community-logo (get-in images [:thumbnail :uri])
|
:community-logo (get-in images [:thumbnail :uri])
|
||||||
:customization-color color}]
|
:customization-color color}]
|
||||||
[accounts-list
|
[rn/flat-list
|
||||||
{:accounts accounts
|
{:data selected-accounts
|
||||||
:logo-uri logo-uri
|
:render-fn render-item
|
||||||
:community-name name}]]))
|
:render-data airdrop-address
|
||||||
|
:content-container-style style/account-list-container
|
||||||
|
:key-fn :address}]]))
|
||||||
|
|||||||
@@ -190,20 +190,35 @@
|
|||||||
|
|
||||||
(defn initialize-permission-addresses
|
(defn initialize-permission-addresses
|
||||||
[{:keys [db]}]
|
[{:keys [db]}]
|
||||||
(let [accounts (get-in db [:wallet :accounts])
|
(let [accounts (get-in db [:wallet :accounts])
|
||||||
addresses (set (map :address (vals accounts)))]
|
sorted-accounts (sort-by :position (vals accounts))
|
||||||
|
addresses (set (map :address sorted-accounts))]
|
||||||
{:db (assoc db
|
{:db (assoc db
|
||||||
:communities/previous-permission-addresses addresses
|
:communities/previous-permission-addresses addresses
|
||||||
:communities/selected-permission-addresses addresses)}))
|
:communities/selected-permission-addresses addresses
|
||||||
|
:communities/airdrop-address (:address (first sorted-accounts)))}))
|
||||||
|
|
||||||
(rf/reg-event-fx :communities/initialize-permission-addresses
|
(rf/reg-event-fx :communities/initialize-permission-addresses
|
||||||
initialize-permission-addresses)
|
initialize-permission-addresses)
|
||||||
|
|
||||||
|
(defn update-previous-permission-addresses
|
||||||
|
[{:keys [db]}]
|
||||||
|
(let [accounts (get-in db [:wallet :accounts])
|
||||||
|
sorted-accounts (sort-by :position (vals accounts))
|
||||||
|
selected-permission-addresses (get-in db [:communities/selected-permission-addresses])
|
||||||
|
selected-accounts (filter #(contains? selected-permission-addresses
|
||||||
|
(:address %))
|
||||||
|
sorted-accounts)
|
||||||
|
current-airdrop-address (get-in db [:communities/airdrop-address])]
|
||||||
|
{:db (assoc db
|
||||||
|
:communities/previous-permission-addresses selected-permission-addresses
|
||||||
|
:communities/airdrop-address (if (contains? selected-permission-addresses
|
||||||
|
current-airdrop-address)
|
||||||
|
current-airdrop-address
|
||||||
|
(:address (first selected-accounts))))}))
|
||||||
|
|
||||||
(rf/reg-event-fx :communities/update-previous-permission-addresses
|
(rf/reg-event-fx :communities/update-previous-permission-addresses
|
||||||
(fn [{:keys [db]}]
|
update-previous-permission-addresses)
|
||||||
{:db (assoc db
|
|
||||||
:communities/previous-permission-addresses
|
|
||||||
(get-in db [:communities/selected-permission-addresses]))}))
|
|
||||||
|
|
||||||
(defn toggle-selected-permission-address
|
(defn toggle-selected-permission-address
|
||||||
[{:keys [db]} [address]]
|
[{:keys [db]} [address]]
|
||||||
@@ -248,3 +263,7 @@
|
|||||||
{:error err
|
{:error err
|
||||||
:chat-id chat-id
|
:chat-id chat-id
|
||||||
:event "share-community-channel-url-with-data"}))}]})))
|
:event "share-community-channel-url-with-data"}))}]})))
|
||||||
|
|
||||||
|
(rf/reg-event-fx :communities/set-airdrop-address
|
||||||
|
(fn [{:keys [db]} [address]]
|
||||||
|
{:db (assoc db :communities/airdrop-address address)}))
|
||||||
|
|||||||
@@ -4,11 +4,14 @@
|
|||||||
[status-im.contexts.communities.events :as events]))
|
[status-im.contexts.communities.events :as events]))
|
||||||
|
|
||||||
(deftest initialize-permission-addresses-test
|
(deftest initialize-permission-addresses-test
|
||||||
(let [initial-db {:db {:wallet {:accounts {"0x1" {:address "0x1"}
|
(let [initial-db {:db {:wallet {:accounts {"0x1" {:address "0x1"
|
||||||
"0x2" {:address "0x2"}}}}}
|
:position 0}
|
||||||
|
"0x2" {:address "0x2"
|
||||||
|
:position 1}}}}}
|
||||||
expected-db {:db (assoc (:db initial-db)
|
expected-db {:db (assoc (:db initial-db)
|
||||||
:communities/previous-permission-addresses #{"0x1" "0x2"}
|
:communities/previous-permission-addresses #{"0x1" "0x2"}
|
||||||
:communities/selected-permission-addresses #{"0x1" "0x2"})}]
|
:communities/selected-permission-addresses #{"0x1" "0x2"}
|
||||||
|
:communities/airdrop-address "0x1")}]
|
||||||
(is (match? expected-db (events/initialize-permission-addresses initial-db)))))
|
(is (match? expected-db (events/initialize-permission-addresses initial-db)))))
|
||||||
|
|
||||||
(deftest toggle-selected-permission-address-test
|
(deftest toggle-selected-permission-address-test
|
||||||
@@ -17,3 +20,33 @@
|
|||||||
(events/toggle-selected-permission-address initial-db ["0x2"])))
|
(events/toggle-selected-permission-address initial-db ["0x2"])))
|
||||||
(is (match? {:db {:communities/selected-permission-addresses #{"0x1" "0x2" "0x3"}}}
|
(is (match? {:db {:communities/selected-permission-addresses #{"0x1" "0x2" "0x3"}}}
|
||||||
(events/toggle-selected-permission-address initial-db ["0x3"])))))
|
(events/toggle-selected-permission-address initial-db ["0x3"])))))
|
||||||
|
|
||||||
|
(deftest update-previous-permission-addresses-test
|
||||||
|
(let [wallet {:accounts {"0x1" {:address "0x1"
|
||||||
|
:position 0}
|
||||||
|
"0x2" {:address "0x2"
|
||||||
|
:position 1}
|
||||||
|
"0x3" {:address "0x3"
|
||||||
|
:position 2}}}]
|
||||||
|
(let [initial-db {:db {:wallet wallet
|
||||||
|
:communities/previous-permission-addresses #{"0x1" "0x2"}
|
||||||
|
:communities/selected-permission-addresses #{"0x1" "0x2" "0x3"}
|
||||||
|
:communities/airdrop-address "0x1"}}
|
||||||
|
expected-db {:db {:wallet wallet
|
||||||
|
:communities/previous-permission-addresses #{"0x1" "0x2" "0x3"}
|
||||||
|
:communities/selected-permission-addresses #{"0x1" "0x2" "0x3"}
|
||||||
|
:communities/airdrop-address "0x1"}}]
|
||||||
|
(is
|
||||||
|
(match? expected-db
|
||||||
|
(events/update-previous-permission-addresses initial-db))))
|
||||||
|
(let [initial-db {:db {:wallet wallet
|
||||||
|
:communities/previous-permission-addresses #{"0x1" "0x2"}
|
||||||
|
:communities/selected-permission-addresses #{"0x2" "0x3"}
|
||||||
|
:communities/airdrop-address "0x1"}}
|
||||||
|
expected-db {:db {:wallet wallet
|
||||||
|
:communities/previous-permission-addresses #{"0x2" "0x3"}
|
||||||
|
:communities/selected-permission-addresses #{"0x2" "0x3"}
|
||||||
|
:communities/airdrop-address "0x2"}}]
|
||||||
|
(is
|
||||||
|
(match? expected-db
|
||||||
|
(events/update-previous-permission-addresses initial-db))))))
|
||||||
|
|||||||
@@ -64,12 +64,11 @@
|
|||||||
|
|
||||||
(defn request-to-join
|
(defn request-to-join
|
||||||
[{:keys [db]}
|
[{:keys [db]}
|
||||||
[{:keys [community-id password addresses-to-reveal]
|
[{:keys [community-id password]}]]
|
||||||
:or {addresses-to-reveal []}}]]
|
|
||||||
(let [pub-key (get-in db [:profile/profile :public-key])]
|
(let [pub-key (get-in db [:profile/profile :public-key])]
|
||||||
{:fx [[:json-rpc/call
|
{:fx [[:json-rpc/call
|
||||||
[{:method "wakuext_generateJoiningCommunityRequestsForSigning"
|
[{:method "wakuext_generateJoiningCommunityRequestsForSigning"
|
||||||
:params [pub-key community-id addresses-to-reveal]
|
:params [pub-key community-id []]
|
||||||
:on-success [:communities/sign-data community-id password]
|
:on-success [:communities/sign-data community-id password]
|
||||||
:on-error [:communities/requested-to-join-error community-id]}]]]}))
|
:on-error [:communities/requested-to-join-error community-id]}]]]}))
|
||||||
|
|
||||||
@@ -116,9 +115,6 @@
|
|||||||
:params [{:communityId community-id
|
:params [{:communityId community-id
|
||||||
:signatures signatures
|
:signatures signatures
|
||||||
:addressesToReveal addresses-to-reveal
|
:addressesToReveal addresses-to-reveal
|
||||||
;; NOTE: At least one airdrop address is required.
|
|
||||||
;; This is a temporary solution while the address
|
|
||||||
;; selection feature is not implemented in mobile.
|
|
||||||
:airdropAddress (first addresses-to-reveal)}]
|
:airdropAddress (first addresses-to-reveal)}]
|
||||||
:js-response true
|
:js-response true
|
||||||
:on-success [:communities/requested-to-join]
|
:on-success [:communities/requested-to-join]
|
||||||
@@ -145,3 +141,43 @@
|
|||||||
:event :communities/toggle-collapsed-category
|
:event :communities/toggle-collapsed-category
|
||||||
:category-id category-id
|
:category-id category-id
|
||||||
:collapse? collapse?})}]}))
|
:collapse? collapse?})}]}))
|
||||||
|
|
||||||
|
(defn request-to-join-with-signatures-and-addresses
|
||||||
|
[{:keys [db]} [community-id signatures]]
|
||||||
|
(let [airdrop-address (get-in db [:communities/airdrop-address])
|
||||||
|
addresses-to-reveal (get-in db [:communities/selected-permission-addresses])]
|
||||||
|
{:fx [[:json-rpc/call
|
||||||
|
[{:method "wakuext_requestToJoinCommunity"
|
||||||
|
:params [{:communityId community-id
|
||||||
|
:signatures signatures
|
||||||
|
:addressesToReveal addresses-to-reveal
|
||||||
|
:airdropAddress airdrop-address}]
|
||||||
|
:js-response true
|
||||||
|
:on-success [:communities/requested-to-join]
|
||||||
|
:on-error [:communities/requested-to-join-error community-id]}]]]}))
|
||||||
|
|
||||||
|
(rf/reg-event-fx :communities/request-to-join-with-signatures-and-addresses
|
||||||
|
request-to-join-with-signatures-and-addresses)
|
||||||
|
|
||||||
|
(defn sign-data-with-addresses
|
||||||
|
[_ [community-id password sign-params]]
|
||||||
|
{:fx [[:json-rpc/call
|
||||||
|
[{:method "wakuext_signData"
|
||||||
|
:params [(map #(assoc % :password password) sign-params)]
|
||||||
|
:on-success [:communities/request-to-join-with-signatures-and-addresses community-id]
|
||||||
|
:on-error [:communities/requested-to-join-error community-id]}]]]})
|
||||||
|
|
||||||
|
(rf/reg-event-fx :communities/sign-data-with-addresses sign-data-with-addresses)
|
||||||
|
|
||||||
|
(defn request-to-join-with-addresses
|
||||||
|
[{:keys [db]}
|
||||||
|
[{:keys [community-id password]}]]
|
||||||
|
(let [pub-key (get-in db [:profile/profile :public-key])
|
||||||
|
addresses-to-reveal (get-in db [:communities/selected-permission-addresses])]
|
||||||
|
{:fx [[:json-rpc/call
|
||||||
|
[{:method "wakuext_generateJoiningCommunityRequestsForSigning"
|
||||||
|
:params [pub-key community-id addresses-to-reveal]
|
||||||
|
:on-success [:communities/sign-data-with-addresses community-id password]
|
||||||
|
:on-error [:communities/requested-to-join-error community-id]}]]]}))
|
||||||
|
|
||||||
|
(rf/reg-event-fx :communities/request-to-join-with-addresses request-to-join-with-addresses)
|
||||||
|
|||||||
@@ -2,6 +2,10 @@
|
|||||||
|
|
||||||
(def default-margin 20)
|
(def default-margin 20)
|
||||||
|
|
||||||
|
(def title-container
|
||||||
|
{:margin-horizontal 20
|
||||||
|
:padding-vertical 12})
|
||||||
|
|
||||||
(defn page-container
|
(defn page-container
|
||||||
[insets]
|
[insets]
|
||||||
{:flex 1
|
{:flex 1
|
||||||
@@ -10,8 +14,10 @@
|
|||||||
|
|
||||||
(defn page-illustration
|
(defn page-illustration
|
||||||
[width]
|
[width]
|
||||||
{:flex 1
|
{:flex 1
|
||||||
:width width})
|
:padding-top 12
|
||||||
|
:padding-bottom 10
|
||||||
|
:width width})
|
||||||
|
|
||||||
(defn buttons
|
(defn buttons
|
||||||
[insets]
|
[insets]
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
(defn page-title
|
(defn page-title
|
||||||
[]
|
[]
|
||||||
[quo/text-combinations
|
[quo/text-combinations
|
||||||
{:container-style {:margin-top 12 :margin-horizontal 20}
|
{:container-style style/title-container
|
||||||
:title (i18n/label :t/enable-biometrics)
|
:title (i18n/label :t/enable-biometrics)
|
||||||
:title-accessibility-label :enable-biometrics-title
|
:title-accessibility-label :enable-biometrics-title
|
||||||
:description (i18n/label :t/use-biometrics)
|
:description (i18n/label :t/use-biometrics)
|
||||||
@@ -51,9 +51,12 @@
|
|||||||
(defn enable-biometrics-parallax
|
(defn enable-biometrics-parallax
|
||||||
[]
|
[]
|
||||||
(let [stretch (if rn/small-screen? 25 40)]
|
(let [stretch (if rn/small-screen? 25 40)]
|
||||||
[parallax/video
|
[rn/view
|
||||||
{:layers (:biometrics resources/parallax-video)
|
{:position :absolute
|
||||||
:stretch stretch}]))
|
:top 12}
|
||||||
|
[parallax/video
|
||||||
|
{:layers (:biometrics resources/parallax-video)
|
||||||
|
:stretch stretch}]]))
|
||||||
|
|
||||||
(defn enable-biometrics-simple
|
(defn enable-biometrics-simple
|
||||||
[]
|
[]
|
||||||
|
|||||||
@@ -320,7 +320,7 @@
|
|||||||
(defn- f-preview-container
|
(defn- f-preview-container
|
||||||
[{:keys [title state descriptor blur? blur-dark-only?
|
[{:keys [title state descriptor blur? blur-dark-only?
|
||||||
component-container-style
|
component-container-style
|
||||||
blur-container-style blur-view-props blur-height show-blur-background?]
|
blur-container-style blur-view-props blur-height show-blur-background? full-screen?]
|
||||||
:or {blur-height 200}}
|
:or {blur-height 200}}
|
||||||
& children]
|
& children]
|
||||||
(let [theme (quo.theme/use-theme-value)
|
(let [theme (quo.theme/use-theme-value)
|
||||||
@@ -337,8 +337,11 @@
|
|||||||
[common/navigation-bar {:title title}]
|
[common/navigation-bar {:title title}]
|
||||||
[rn/scroll-view
|
[rn/scroll-view
|
||||||
{:style (style/panel-basic)
|
{:style (style/panel-basic)
|
||||||
:shows-vertical-scroll-indicator false}
|
:shows-vertical-scroll-indicator false
|
||||||
[rn/pressable {:on-press rn/dismiss-keyboard!}
|
:content-container-style (when full-screen? {:flex 1})}
|
||||||
|
[rn/pressable
|
||||||
|
{:style (when full-screen? {:flex 1})
|
||||||
|
:on-press rn/dismiss-keyboard!}
|
||||||
(when descriptor
|
(when descriptor
|
||||||
[rn/view {:style style/customizer-container}
|
[rn/view {:style style/customizer-container}
|
||||||
[customizer state descriptor]])
|
[customizer state descriptor]])
|
||||||
|
|||||||
@@ -20,9 +20,9 @@
|
|||||||
[]
|
[]
|
||||||
(let [state (reagent/atom {:type :status-account
|
(let [state (reagent/atom {:type :status-account
|
||||||
:networks? true
|
:networks? true
|
||||||
:values {:ethereum 150
|
:values {:ethereum {:amount 150}
|
||||||
:optimism 50
|
:optimism {:amount 50}
|
||||||
:arbitrum 25}})
|
:arbitrum {:amount 25}}})
|
||||||
status-account-props {:customization-color :purple
|
status-account-props {:customization-color :purple
|
||||||
:size 32
|
:size 32
|
||||||
:emoji "🍑"
|
:emoji "🍑"
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
(:require
|
(:require
|
||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
[quo.foundations.resources :as resources]
|
[quo.foundations.resources :as resources]
|
||||||
|
[react-native.safe-area :as safe-area]
|
||||||
[reagent.core :as reagent]
|
[reagent.core :as reagent]
|
||||||
[status-im.contexts.preview.quo.preview :as preview]))
|
[status-im.contexts.preview.quo.preview :as preview]))
|
||||||
|
|
||||||
@@ -24,17 +25,29 @@
|
|||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
[]
|
[]
|
||||||
(let [state (reagent/atom {:token :eth
|
(let [state (reagent/atom {:token :eth
|
||||||
:currency :usd
|
:currency :usd
|
||||||
:conversion 0.02
|
:conversion 0.02
|
||||||
:networks networks
|
:networks networks
|
||||||
:title title
|
:title title
|
||||||
:customization-color :blue})]
|
:customization-color :blue
|
||||||
|
:show-keyboard? false})
|
||||||
|
value (reagent/atom "")
|
||||||
|
set-value (fn [v]
|
||||||
|
(swap! value str v))
|
||||||
|
delete (fn [_]
|
||||||
|
(swap! value #(subs % 0 (dec (count %)))))]
|
||||||
(fn []
|
(fn []
|
||||||
[preview/preview-container
|
[preview/preview-container
|
||||||
{:state state
|
{:state state
|
||||||
:descriptor descriptor
|
:descriptor descriptor
|
||||||
:component-container-style {:padding-horizontal 20
|
:full-screen? true
|
||||||
:margin-top 50
|
:component-container-style {:flex 1
|
||||||
:align-items :center}}
|
:justify-content :space-between}}
|
||||||
[quo/token-input @state]])))
|
[quo/token-input (assoc @state :value @value)]
|
||||||
|
[quo/numbered-keyboard
|
||||||
|
{:container-style {:padding-bottom (safe-area/get-top)}
|
||||||
|
:left-action :dot
|
||||||
|
:delete-key? true
|
||||||
|
:on-press set-value
|
||||||
|
:on-delete delete}]])))
|
||||||
|
|||||||
@@ -143,7 +143,7 @@
|
|||||||
{:events [:messenger-started]}
|
{:events [:messenger-started]}
|
||||||
[{:keys [db] :as cofx} {:keys [mailservers] :as response}]
|
[{:keys [db] :as cofx} {:keys [mailservers] :as response}]
|
||||||
(log/info "Messenger started")
|
(log/info "Messenger started")
|
||||||
(let [new-account? (get db :onboarding-2/new-account?)]
|
(let [new-account? (get db :onboarding/new-account?)]
|
||||||
(rf/merge cofx
|
(rf/merge cofx
|
||||||
{:db (-> db
|
{:db (-> db
|
||||||
(assoc :messenger/started? true)
|
(assoc :messenger/started? true)
|
||||||
|
|||||||
@@ -1,42 +1,65 @@
|
|||||||
(ns status-im.contexts.profile.settings.header.avatar
|
(ns status-im.contexts.profile.settings.header.avatar
|
||||||
(:require [quo.core :as quo]
|
(:require [quo.core :as quo]
|
||||||
[quo.theme :as quo.theme]
|
[quo.theme :as quo.theme]
|
||||||
|
[react-native.core :as rn]
|
||||||
[react-native.reanimated :as reanimated]
|
[react-native.reanimated :as reanimated]
|
||||||
[status-im.contexts.profile.settings.header.style :as style]))
|
[status-im.contexts.profile.settings.header.style :as style]
|
||||||
|
["react-native-reanimated" :as animated]
|
||||||
|
))
|
||||||
|
|
||||||
(def scroll-animation-input-range [0 50])
|
#_(def header-extrapolation-option
|
||||||
(def header-extrapolation-option
|
|
||||||
{:extrapolateLeft "clamp"
|
{:extrapolateLeft "clamp"
|
||||||
:extrapolateRight "clamp"})
|
:extrapolateRight "clamp"})
|
||||||
|
|
||||||
(defn f-avatar
|
|
||||||
[{:keys [scroll-y full-name online? profile-picture customization-color]}]
|
(defn f-avatar [a]
|
||||||
(let [image-scale-animation (reanimated/interpolate scroll-y
|
(let [sv (reanimated/use-shared-value 0)
|
||||||
scroll-animation-input-range
|
THIS-THING (animated/useAnimatedStyle
|
||||||
[1 0.4]
|
(fn HEEEEEEY []
|
||||||
header-extrapolation-option)
|
(js* "'worklet;'")
|
||||||
image-top-margin-animation (reanimated/interpolate scroll-y
|
(js/console.log "hola")
|
||||||
scroll-animation-input-range
|
#js{:transform #js[#js{:translateX (.-value sv)}]}
|
||||||
[0 20]
|
))
|
||||||
header-extrapolation-option)
|
;image-scale-animation (reanimated/interpolate scroll-y
|
||||||
image-side-margin-animation (reanimated/interpolate scroll-y
|
; scroll-animation-input-range
|
||||||
scroll-animation-input-range
|
; [1 0.4]
|
||||||
[0 -20]
|
; header-extrapolation-option)
|
||||||
header-extrapolation-option)
|
;image-top-margin-animation (reanimated/interpolate scroll-y
|
||||||
theme (quo.theme/get-theme)]
|
; scroll-animation-input-range
|
||||||
[reanimated/view
|
; [0 20]
|
||||||
{:style (style/avatar-container theme
|
; header-extrapolation-option)
|
||||||
image-scale-animation
|
;image-side-margin-animation (reanimated/interpolate scroll-y
|
||||||
image-top-margin-animation
|
; scroll-animation-input-range
|
||||||
image-side-margin-animation)}
|
; [0 -20]
|
||||||
[quo/user-avatar
|
; header-extrapolation-option)
|
||||||
{:full-name full-name
|
;theme (quo.theme/get-theme)
|
||||||
:online? online?
|
]
|
||||||
:profile-picture profile-picture
|
[rn/view
|
||||||
:status-indicator? true
|
[quo/button {:size 56
|
||||||
:ring? true
|
:above :i/placeholder
|
||||||
:customization-color customization-color
|
:on-press (fn []
|
||||||
:size :big}]]))
|
(set! (.-value sv) (reanimated/with-timing 200 #js{:duration 2000}))
|
||||||
|
)}
|
||||||
|
"Trigger change"]
|
||||||
|
|
||||||
|
[reanimated/view {:style [THIS-THING ;{:transform [{:translate-x sv}]}
|
||||||
|
{:background-color "red"
|
||||||
|
:width 20
|
||||||
|
:height 20}]
|
||||||
|
#_(style/avatar-container theme
|
||||||
|
image-scale-animation
|
||||||
|
image-top-margin-animation
|
||||||
|
image-side-margin-animation)}
|
||||||
|
#_[quo/user-avatar
|
||||||
|
{:full-name full-name
|
||||||
|
:online? online?
|
||||||
|
:profile-picture profile-picture
|
||||||
|
:status-indicator? true
|
||||||
|
:ring? true
|
||||||
|
:customization-color customization-color
|
||||||
|
:size :big}]]
|
||||||
|
|
||||||
|
]))
|
||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
[props]
|
[props]
|
||||||
|
|||||||
@@ -3,18 +3,19 @@
|
|||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
[react-native.clipboard :as clipboard]
|
[react-native.clipboard :as clipboard]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
[react-native.platform :as platform]
|
|
||||||
[react-native.share :as share]
|
|
||||||
[status-im.config :as config]
|
[status-im.config :as config]
|
||||||
[status-im.contexts.profile.utils :as profile.utils]
|
[status-im.contexts.profile.utils :as profile.utils]
|
||||||
[status-im.contexts.wallet.account.tabs.about.style :as style]
|
[status-im.contexts.wallet.account.tabs.about.style :as style]
|
||||||
|
[status-im.contexts.wallet.common.utils :as utils]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
|
|
||||||
(defn about-options
|
(defn about-options
|
||||||
[]
|
[]
|
||||||
(let [{:keys [address] :as account} (rf/sub [:wallet/current-viewing-account])
|
(let [{:keys [address] :as account} (rf/sub [:wallet/current-viewing-account])
|
||||||
share-title (str (:name account) " " (i18n/label :t/address))]
|
networks (rf/sub [:wallet/network-preference-details])
|
||||||
|
share-title (str (:name account) " " (i18n/label :t/address))
|
||||||
|
multichain-address (utils/get-multichain-address networks address)]
|
||||||
[quo/action-drawer
|
[quo/action-drawer
|
||||||
[[{:icon :i/link
|
[[{:icon :i/link
|
||||||
:accessibility-label :view-on-eth
|
:accessibility-label :view-on-eth
|
||||||
@@ -44,30 +45,22 @@
|
|||||||
:accessibility-label :copy-address
|
:accessibility-label :copy-address
|
||||||
:label (i18n/label :t/copy-address)
|
:label (i18n/label :t/copy-address)
|
||||||
:on-press (fn []
|
:on-press (fn []
|
||||||
(clipboard/set-string address)
|
(clipboard/set-string multichain-address)
|
||||||
(rf/dispatch [:toasts/upsert
|
(rf/dispatch [:toasts/upsert
|
||||||
{:type :positive
|
{:type :positive
|
||||||
:text (i18n/label :t/address-copied)}]))}
|
:text (i18n/label :t/address-copied)}]))}
|
||||||
{:icon :i/qr-code
|
{:icon :i/qr-code
|
||||||
:accessibility-label :show-address-qr
|
:accessibility-label :show-address-qr
|
||||||
:label (i18n/label :t/show-address-qr)}
|
:label (i18n/label :t/show-address-qr)
|
||||||
|
:on-press #(rf/dispatch [:open-modal :wallet-share-address {:status :share}])}
|
||||||
{:icon :i/share
|
{:icon :i/share
|
||||||
:accessibility-label :share-address
|
:accessibility-label :share-address
|
||||||
:label (i18n/label :t/share-address)
|
:label (i18n/label :t/share-address)
|
||||||
:on-press (fn []
|
:on-press (fn []
|
||||||
(rf/dispatch [:hide-bottom-sheet])
|
(rf/dispatch [:hide-bottom-sheet])
|
||||||
(js/setTimeout
|
(js/setTimeout
|
||||||
#(share/open
|
#(rf/dispatch [:wallet/share-account
|
||||||
(if platform/ios?
|
{:title share-title :content multichain-address}])
|
||||||
{:activityItemSources [{:placeholderItem {:type "text"
|
|
||||||
:content address}
|
|
||||||
:item {:default {:type "text"
|
|
||||||
:content
|
|
||||||
address}}
|
|
||||||
:linkMetadata {:title share-title}}]}
|
|
||||||
{:title share-title
|
|
||||||
:subject share-title
|
|
||||||
:message address}))
|
|
||||||
600))}]]]))
|
600))}]]]))
|
||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
|
|||||||
@@ -47,7 +47,7 @@
|
|||||||
(when (not watch-only?)
|
(when (not watch-only?)
|
||||||
[quo/wallet-ctas
|
[quo/wallet-ctas
|
||||||
{:send-action #(rf/dispatch [:open-modal :wallet-select-address])
|
{:send-action #(rf/dispatch [:open-modal :wallet-select-address])
|
||||||
:receive-action #(rf/dispatch [:open-modal :wallet-receive])
|
:receive-action #(rf/dispatch [:open-modal :wallet-share-address {:status :receive}])
|
||||||
:buy-action #(rf/dispatch [:show-bottom-sheet
|
:buy-action #(rf/dispatch [:show-bottom-sheet
|
||||||
{:content buy-drawer}])
|
{:content buy-drawer}])
|
||||||
:bridge-action #(rf/dispatch [:open-modal :wallet-bridge])}])
|
:bridge-action #(rf/dispatch [:open-modal :wallet-bridge])}])
|
||||||
|
|||||||
@@ -30,9 +30,9 @@
|
|||||||
:style {:flex 1}
|
:style {:flex 1}
|
||||||
:content-container-style {:align-items :center}
|
:content-container-style {:align-items :center}
|
||||||
:num-columns 2
|
:num-columns 2
|
||||||
:render-fn (fn [{:keys [preview-url id]}]
|
:render-fn (fn [{:keys [preview-url] :as collectible}]
|
||||||
[quo/collectible
|
[quo/collectible
|
||||||
{:images [preview-url]
|
{:images [preview-url]
|
||||||
:on-press #(on-collectible-press id)}])}])))
|
:on-press #(on-collectible-press collectible)}])}])))
|
||||||
|
|
||||||
(def view (quo.theme/with-theme view-internal))
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
[react-native.platform :as platform]
|
[react-native.platform :as platform]
|
||||||
[reagent.core :as reagent]
|
[reagent.core :as reagent]
|
||||||
[status-im.contexts.wallet.common.sheets.account-options.style :as style]
|
[status-im.contexts.wallet.common.sheets.account-options.style :as style]
|
||||||
|
[status-im.contexts.wallet.common.utils :as utils]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
|
|
||||||
@@ -31,7 +32,11 @@
|
|||||||
(defn- options
|
(defn- options
|
||||||
[{:keys [theme show-account-selector? options-height]}]
|
[{:keys [theme show-account-selector? options-height]}]
|
||||||
(let [{:keys [name color emoji address watch-only?]} (rf/sub [:wallet/current-viewing-account])
|
(let [{:keys [name color emoji address watch-only?]} (rf/sub [:wallet/current-viewing-account])
|
||||||
network-preference-details (rf/sub [:wallet/network-preference-details])]
|
network-preference-details (rf/sub [:wallet/network-preference-details])
|
||||||
|
multichain-address (utils/get-multichain-address
|
||||||
|
network-preference-details
|
||||||
|
address)
|
||||||
|
share-title (str name " " (i18n/label :t/address))]
|
||||||
[rn/view
|
[rn/view
|
||||||
{:on-layout #(reset! options-height (oops/oget % "nativeEvent.layout.height"))
|
{:on-layout #(reset! options-height (oops/oget % "nativeEvent.layout.height"))
|
||||||
:style (when show-account-selector? style/options-container)}
|
:style (when show-account-selector? style/options-container)}
|
||||||
@@ -72,10 +77,20 @@
|
|||||||
(rf/dispatch [:toasts/upsert
|
(rf/dispatch [:toasts/upsert
|
||||||
{:type :positive
|
{:type :positive
|
||||||
:text (i18n/label :t/address-copied)}])
|
:text (i18n/label :t/address-copied)}])
|
||||||
(clipboard/set-string address))}
|
(clipboard/set-string multichain-address))}
|
||||||
|
{:icon :i/qr-code
|
||||||
|
:accessibility-label :show-address-qr
|
||||||
|
:label (i18n/label :t/show-address-qr)
|
||||||
|
:on-press #(rf/dispatch [:open-modal :wallet-share-address {:status :share}])}
|
||||||
{:icon :i/share
|
{:icon :i/share
|
||||||
:accessibility-label :share-account
|
:accessibility-label :share-account
|
||||||
:label (i18n/label :t/share-account)}
|
:label (i18n/label :t/share-address)
|
||||||
|
:on-press (fn []
|
||||||
|
(rf/dispatch [:hide-bottom-sheet])
|
||||||
|
(js/setTimeout
|
||||||
|
#(rf/dispatch [:wallet/share-account
|
||||||
|
{:title share-title :content address}])
|
||||||
|
600))}
|
||||||
{:add-divider? (not show-account-selector?)
|
{:add-divider? (not show-account-selector?)
|
||||||
:icon :i/delete
|
:icon :i/delete
|
||||||
:accessibility-label :remove-account
|
:accessibility-label :remove-account
|
||||||
|
|||||||
@@ -202,3 +202,15 @@
|
|||||||
:customization-color color
|
:customization-color color
|
||||||
:values {:crypto-value crypto-value
|
:values {:crypto-value crypto-value
|
||||||
:fiat-value fiat-value}}))
|
:fiat-value fiat-value}}))
|
||||||
|
|
||||||
|
(defn get-multichain-address
|
||||||
|
[networks address]
|
||||||
|
(str (->> networks
|
||||||
|
(map #(str (:short-name %) ":"))
|
||||||
|
(clojure.string/join ""))
|
||||||
|
address))
|
||||||
|
|
||||||
|
(defn split-prefix-and-address
|
||||||
|
[input-string]
|
||||||
|
(let [split-result (string/split input-string #"0x")]
|
||||||
|
[(first split-result) (str "0x" (second split-result))]))
|
||||||
|
|||||||
@@ -2,4 +2,4 @@
|
|||||||
(:require [status-im.constants :as constants]))
|
(:require [status-im.constants :as constants]))
|
||||||
|
|
||||||
(defn ens-name? [s] (re-find constants/regx-ens s))
|
(defn ens-name? [s] (re-find constants/regx-ens s))
|
||||||
(defn eth-address? [s] (re-find constants/regx-address s))
|
(defn eth-address? [s] (re-find constants/regx-multichain-address s))
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
(ns status-im.contexts.wallet.effects
|
||||||
|
(:require [re-frame.core :as rf]
|
||||||
|
[react-native.share :as share]))
|
||||||
|
|
||||||
|
(rf/reg-fx :effects.share/open
|
||||||
|
(fn [content]
|
||||||
|
(share/open content)))
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
(:require
|
(:require
|
||||||
[clojure.string :as string]
|
[clojure.string :as string]
|
||||||
[react-native.background-timer :as background-timer]
|
[react-native.background-timer :as background-timer]
|
||||||
|
[react-native.platform :as platform]
|
||||||
[status-im.contexts.wallet.data-store :as data-store]
|
[status-im.contexts.wallet.data-store :as data-store]
|
||||||
[status-im.contexts.wallet.events.collectibles]
|
[status-im.contexts.wallet.events.collectibles]
|
||||||
[status-im.contexts.wallet.item-types :as item-types]
|
[status-im.contexts.wallet.item-types :as item-types]
|
||||||
@@ -129,9 +130,7 @@
|
|||||||
(rf/defn clean-scanned-address
|
(rf/defn clean-scanned-address
|
||||||
{:events [:wallet/clean-scanned-address]}
|
{:events [:wallet/clean-scanned-address]}
|
||||||
[{:keys [db]}]
|
[{:keys [db]}]
|
||||||
{:db (-> db
|
{:db (dissoc db :wallet/scanned-address :wallet/send-address)})
|
||||||
(dissoc :wallet/scanned-address :wallet/send-address)
|
|
||||||
(update-in [:wallet :ui :send] dissoc :to-address))})
|
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/create-derived-addresses
|
(rf/reg-event-fx :wallet/create-derived-addresses
|
||||||
(fn [{:keys [db]} [{:keys [sha3-pwd path]} on-success]]
|
(fn [{:keys [db]} [{:keys [sha3-pwd path]} on-success]]
|
||||||
@@ -301,10 +300,6 @@
|
|||||||
(background-timer/clear-timeout current-timeout)
|
(background-timer/clear-timeout current-timeout)
|
||||||
{:db (assoc db :wallet/local-suggestions [] :wallet/valid-ens-or-address? false)})))
|
{:db (assoc db :wallet/local-suggestions [] :wallet/valid-ens-or-address? false)})))
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/clean-account-selection
|
|
||||||
(fn [{:keys [db]}]
|
|
||||||
{:db (update-in db [:wallet :ui :send] dissoc :send-account-address)}))
|
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/get-address-details-success
|
(rf/reg-event-fx :wallet/get-address-details-success
|
||||||
(fn [{:keys [db]} [{:keys [hasActivity]}]]
|
(fn [{:keys [db]} [{:keys [hasActivity]}]]
|
||||||
{:db (assoc-in db
|
{:db (assoc-in db
|
||||||
@@ -335,3 +330,17 @@
|
|||||||
(rf/reg-event-fx :wallet/initialize
|
(rf/reg-event-fx :wallet/initialize
|
||||||
(fn []
|
(fn []
|
||||||
{:fx [[:dispatch-n [[:wallet/get-ethereum-chains] [:wallet/get-accounts]]]]}))
|
{:fx [[:dispatch-n [[:wallet/get-ethereum-chains] [:wallet/get-accounts]]]]}))
|
||||||
|
|
||||||
|
(rf/reg-event-fx :wallet/share-account
|
||||||
|
(fn [_ [{:keys [content title]}]]
|
||||||
|
{:fx [[:effects.share/open
|
||||||
|
(if platform/ios?
|
||||||
|
{:activityItemSources
|
||||||
|
[{:placeholderItem {:type "text"
|
||||||
|
:content content}
|
||||||
|
:item {:default {:type "text"
|
||||||
|
:content content}}
|
||||||
|
:linkMetadata {:title title}}]}
|
||||||
|
{:title title
|
||||||
|
:subject title
|
||||||
|
:message content})]]}))
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
[camel-snake-kebab.core :as csk]
|
[camel-snake-kebab.core :as csk]
|
||||||
[camel-snake-kebab.extras :as cske]
|
[camel-snake-kebab.extras :as cske]
|
||||||
[status-im.constants :as constants]
|
[status-im.constants :as constants]
|
||||||
|
[status-im.contexts.wallet.common.utils :as utils]
|
||||||
[status-im.contexts.wallet.send.utils :as send-utils]
|
[status-im.contexts.wallet.send.utils :as send-utils]
|
||||||
[taoensso.timbre :as log]
|
[taoensso.timbre :as log]
|
||||||
[utils.money :as money]
|
[utils.money :as money]
|
||||||
@@ -40,7 +41,6 @@
|
|||||||
(update-in [:wallet :ui :send] dissoc :route)
|
(update-in [:wallet :ui :send] dissoc :route)
|
||||||
(update-in [:wallet :ui :send] dissoc :loading-suggested-routes?))}))
|
(update-in [:wallet :ui :send] dissoc :loading-suggested-routes?))}))
|
||||||
|
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/select-send-account-address
|
(rf/reg-event-fx :wallet/select-send-account-address
|
||||||
(fn [{:keys [db]} [{:keys [address stack-id]}]]
|
(fn [{:keys [db]} [{:keys [address stack-id]}]]
|
||||||
{:db (-> db
|
{:db (-> db
|
||||||
@@ -48,11 +48,21 @@
|
|||||||
(update-in [:wallet :ui :send] dissoc :to-address))
|
(update-in [:wallet :ui :send] dissoc :to-address))
|
||||||
:fx [[:navigate-to-within-stack [:wallet-select-asset stack-id]]]}))
|
:fx [[:navigate-to-within-stack [:wallet-select-asset stack-id]]]}))
|
||||||
|
|
||||||
|
(rf/reg-event-fx :wallet/clean-send-address
|
||||||
|
(fn [{:keys [db]}]
|
||||||
|
{:db (update-in db [:wallet :ui :send] dissoc :recipient :to-address)}))
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/select-send-address
|
(rf/reg-event-fx :wallet/select-send-address
|
||||||
(fn [{:keys [db]} [{:keys [address token stack-id]}]]
|
(fn [{:keys [db]} [{:keys [address token recipient stack-id]}]]
|
||||||
{:db (assoc-in db [:wallet :ui :send :to-address] address)
|
(let [[prefix to-address] (utils/split-prefix-and-address address)]
|
||||||
:fx [[:navigate-to-within-stack
|
{:db (-> db
|
||||||
(if token [:wallet-send-input-amount stack-id] [:wallet-select-asset stack-id])]]}))
|
(assoc-in [:wallet :ui :send :recipient] (or recipient address))
|
||||||
|
(assoc-in [:wallet :ui :send :to-address] to-address)
|
||||||
|
(assoc-in [:wallet :ui :send :address-prefix] prefix))
|
||||||
|
:fx [[:navigate-to-within-stack
|
||||||
|
(if token
|
||||||
|
[:wallet-send-input-amount stack-id]
|
||||||
|
[:wallet-select-asset stack-id])]]})))
|
||||||
|
|
||||||
(rf/reg-event-fx :wallet/send-select-token
|
(rf/reg-event-fx :wallet/send-select-token
|
||||||
(fn [{:keys [db]} [{:keys [token stack-id]}]]
|
(fn [{:keys [db]} [{:keys [token stack-id]}]]
|
||||||
@@ -176,4 +186,3 @@
|
|||||||
{:event :wallet/send-transaction
|
{:event :wallet/send-transaction
|
||||||
:error error
|
:error error
|
||||||
:params request-params}))}]})))
|
:params request-params}))}]})))
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,13 @@
|
|||||||
(normalize-input current v)
|
(normalize-input current v)
|
||||||
current))
|
current))
|
||||||
|
|
||||||
|
(defn- find-affordable-networks
|
||||||
|
[{:keys [balances-per-chain]} input-value]
|
||||||
|
(->> balances-per-chain
|
||||||
|
(filter (fn [[_ {:keys [balance]}]]
|
||||||
|
(>= (js/parseFloat balance) input-value)))
|
||||||
|
(map first)))
|
||||||
|
|
||||||
(defn- f-view-internal
|
(defn- f-view-internal
|
||||||
[{:keys [rate limit]}]
|
[{:keys [rate limit]}]
|
||||||
(let [bottom (safe-area/get-bottom)
|
(let [bottom (safe-area/get-bottom)
|
||||||
@@ -142,9 +149,10 @@
|
|||||||
:on-change-text (fn [text]
|
:on-change-text (fn [text]
|
||||||
(handle-on-change text))}]
|
(handle-on-change text))}]
|
||||||
[routes/view
|
[routes/view
|
||||||
{:amount amount
|
{:amount amount
|
||||||
:routes suggested-routes
|
:routes suggested-routes
|
||||||
:networks (:networks token)}]
|
:loading-networks (find-affordable-networks token @input-value)
|
||||||
|
:networks (:networks token)}]
|
||||||
[quo/bottom-actions
|
[quo/bottom-actions
|
||||||
{:actions :1-action
|
{:actions :1-action
|
||||||
:button-one-label (i18n/label :t/confirm)
|
:button-one-label (i18n/label :t/confirm)
|
||||||
|
|||||||
@@ -14,11 +14,13 @@
|
|||||||
{:amount amount
|
{:amount amount
|
||||||
:network from-network
|
:network from-network
|
||||||
:status status}]
|
:status status}]
|
||||||
[quo/network-link
|
(if (= status :default)
|
||||||
{:shape :linear
|
[quo/network-link
|
||||||
:source from-network
|
{:shape :linear
|
||||||
:destination to-network
|
:source from-network
|
||||||
:container-style style/network-link}]
|
:destination to-network
|
||||||
|
:container-style style/network-link}]
|
||||||
|
[rn/view {:style {:width 73}}])
|
||||||
[quo/network-bridge
|
[quo/network-bridge
|
||||||
{:amount amount
|
{:amount amount
|
||||||
:network to-network
|
:network to-network
|
||||||
@@ -26,12 +28,12 @@
|
|||||||
:container-style {:right 12}}]])
|
:container-style {:right 12}}]])
|
||||||
|
|
||||||
(defn view
|
(defn view
|
||||||
[{:keys [amount routes]}]
|
[{:keys [amount routes loading-networks]}]
|
||||||
(let [loading-suggested-routes? (rf/sub [:wallet/wallet-send-loading-suggested-routes?])
|
(let [loading-suggested-routes? (rf/sub [:wallet/wallet-send-loading-suggested-routes?])
|
||||||
candidates (:candidates routes)]
|
candidates (:candidates routes)]
|
||||||
(if (and (not loading-suggested-routes?) (not-empty candidates))
|
(if (or (and (not-empty loading-networks) loading-suggested-routes?) (not-empty candidates))
|
||||||
[rn/flat-list
|
[rn/flat-list
|
||||||
{:data candidates
|
{:data (if loading-suggested-routes? loading-networks candidates)
|
||||||
:content-container-style style/routes-container
|
:content-container-style style/routes-container
|
||||||
:header [rn/view {:style style/routes-header-container}
|
:header [rn/view {:style style/routes-header-container}
|
||||||
[quo/section-label
|
[quo/section-label
|
||||||
@@ -40,15 +42,17 @@
|
|||||||
[quo/section-label
|
[quo/section-label
|
||||||
{:section (i18n/label :t/to-label)
|
{:section (i18n/label :t/to-label)
|
||||||
:container-style (style/section-label 64)}]]
|
:container-style (style/section-label 64)}]]
|
||||||
:render-fn (fn [route]
|
:render-fn (fn [item]
|
||||||
[route-item
|
[route-item
|
||||||
{:amount amount
|
{:amount amount
|
||||||
:status :default
|
:status (if loading-suggested-routes? :loading :default)
|
||||||
:from-network (utils/id->network (get-in route [:from :chain-id]))
|
:from-network (if loading-suggested-routes?
|
||||||
:to-network (utils/id->network (get-in route
|
(utils/id->network item)
|
||||||
[:to :chain-id]))}])}]
|
(utils/id->network (get-in item [:from :chain-id])))
|
||||||
|
:to-network (if loading-suggested-routes?
|
||||||
|
(utils/id->network item)
|
||||||
|
(utils/id->network (get-in item
|
||||||
|
[:to :chain-id])))}])}]
|
||||||
[rn/view {:style style/empty-container}
|
[rn/view {:style style/empty-container}
|
||||||
(if loading-suggested-routes?
|
(when (and (not (nil? candidates)) (not loading-suggested-routes?))
|
||||||
[rn/activity-indicator]
|
[quo/text (i18n/label :t/no-routes-found)])])))
|
||||||
(when (not (nil? candidates))
|
|
||||||
[quo/text (i18n/label :t/no-routes-found)]))])))
|
|
||||||
|
|||||||
@@ -12,9 +12,10 @@
|
|||||||
[{:keys [color address] :as account}]
|
[{:keys [color address] :as account}]
|
||||||
[quo/account-item
|
[quo/account-item
|
||||||
{:account-props (assoc account :customization-color color)
|
{:account-props (assoc account :customization-color color)
|
||||||
:on-press #(rf/dispatch [:wallet/select-send-account-address
|
:on-press #(rf/dispatch [:wallet/select-send-address
|
||||||
{:address address
|
{:address address
|
||||||
:stack-id :wallet-select-address}])}])
|
:recipient account
|
||||||
|
:stack-id :wallet-select-address}])}])
|
||||||
|
|
||||||
(defn my-accounts
|
(defn my-accounts
|
||||||
[theme]
|
[theme]
|
||||||
|
|||||||
@@ -24,11 +24,13 @@
|
|||||||
(defn- address-input
|
(defn- address-input
|
||||||
[input-value input-focused?]
|
[input-value input-focused?]
|
||||||
(fn []
|
(fn []
|
||||||
(let [scanned-address (rf/sub [:wallet/scanned-address])
|
(let [scanned-address (rf/sub [:wallet/scanned-address])
|
||||||
send-address (rf/sub [:wallet/wallet-send-to-address])
|
send-address (rf/sub [:wallet/wallet-send-to-address])
|
||||||
valid-ens-or-address? (rf/sub [:wallet/valid-ens-or-address?])
|
recipient (rf/sub [:wallet/wallet-send-recipient])
|
||||||
chain-id (rf/sub [:chain-id])
|
recipient-plain-address? (= send-address recipient)
|
||||||
contacts (rf/sub [:contacts/active])]
|
valid-ens-or-address? (rf/sub [:wallet/valid-ens-or-address?])
|
||||||
|
chain-id (rf/sub [:chain-id])
|
||||||
|
contacts (rf/sub [:contacts/active])]
|
||||||
[quo/address-input
|
[quo/address-input
|
||||||
{:on-focus #(reset! input-focused? true)
|
{:on-focus #(reset! input-focused? true)
|
||||||
:on-blur #(reset! input-focused? false)
|
:on-blur #(reset! input-focused? false)
|
||||||
@@ -36,8 +38,8 @@
|
|||||||
(rn/dismiss-keyboard!)
|
(rn/dismiss-keyboard!)
|
||||||
(rf/dispatch [:open-modal :scan-address]))
|
(rf/dispatch [:open-modal :scan-address]))
|
||||||
:ens-regex constants/regx-ens
|
:ens-regex constants/regx-ens
|
||||||
:address-regex constants/regx-address
|
:scanned-value (or (when recipient-plain-address? send-address) scanned-address)
|
||||||
:scanned-value (or send-address scanned-address)
|
:address-regex constants/regx-multichain-address
|
||||||
:on-detect-address #(debounce/debounce-and-dispatch
|
:on-detect-address #(debounce/debounce-and-dispatch
|
||||||
[:wallet/validate-address %]
|
[:wallet/validate-address %]
|
||||||
300)
|
300)
|
||||||
@@ -46,8 +48,6 @@
|
|||||||
[:wallet/find-ens text contacts chain-id cb]
|
[:wallet/find-ens text contacts chain-id cb]
|
||||||
300))
|
300))
|
||||||
:on-change-text (fn [text]
|
:on-change-text (fn [text]
|
||||||
(when-not (= scanned-address text)
|
|
||||||
(rf/dispatch [:wallet/clean-scanned-address]))
|
|
||||||
(when (empty? text)
|
(when (empty? text)
|
||||||
(rf/dispatch [:wallet/clean-local-suggestions]))
|
(rf/dispatch [:wallet/clean-local-suggestions]))
|
||||||
(reset! input-value text))
|
(reset! input-value text))
|
||||||
@@ -80,8 +80,9 @@
|
|||||||
(let [address (if accounts (:address (first accounts)) address)]
|
(let [address (if accounts (:address (first accounts)) address)]
|
||||||
(when-not ens
|
(when-not ens
|
||||||
(rf/dispatch [:wallet/select-send-address
|
(rf/dispatch [:wallet/select-send-address
|
||||||
{:address address
|
{:address address
|
||||||
:stack-id :wallet-select-address}]))))
|
:recipient local-suggestion
|
||||||
|
:stack-id :wallet-select-address}]))))
|
||||||
:active-state? false}]
|
:active-state? false}]
|
||||||
(cond
|
(cond
|
||||||
(= type types/saved-address)
|
(= type types/saved-address)
|
||||||
@@ -117,8 +118,8 @@
|
|||||||
(let [on-close (fn []
|
(let [on-close (fn []
|
||||||
(rf/dispatch [:wallet/clean-scanned-address])
|
(rf/dispatch [:wallet/clean-scanned-address])
|
||||||
(rf/dispatch [:wallet/clean-local-suggestions])
|
(rf/dispatch [:wallet/clean-local-suggestions])
|
||||||
(rf/dispatch [:wallet/clean-account-selection])
|
|
||||||
(rf/dispatch [:wallet/clean-selected-token])
|
(rf/dispatch [:wallet/clean-selected-token])
|
||||||
|
(rf/dispatch [:wallet/clean-send-address])
|
||||||
(rf/dispatch [:wallet/select-address-tab nil])
|
(rf/dispatch [:wallet/select-address-tab nil])
|
||||||
(rf/dispatch [:navigate-back]))
|
(rf/dispatch [:navigate-back]))
|
||||||
on-change-tab #(rf/dispatch [:wallet/select-address-tab %])
|
on-change-tab #(rf/dispatch [:wallet/select-address-tab %])
|
||||||
@@ -131,8 +132,7 @@
|
|||||||
(rn/use-effect (fn []
|
(rn/use-effect (fn []
|
||||||
(fn []
|
(fn []
|
||||||
(rf/dispatch [:wallet/clean-scanned-address])
|
(rf/dispatch [:wallet/clean-scanned-address])
|
||||||
(rf/dispatch [:wallet/clean-local-suggestions])
|
(rf/dispatch [:wallet/clean-local-suggestions]))))
|
||||||
(rf/dispatch [:wallet/clean-account-selection]))))
|
|
||||||
[floating-button-page/view
|
[floating-button-page/view
|
||||||
{:header [account-switcher/view
|
{:header [account-switcher/view
|
||||||
{:on-press on-close
|
{:on-press on-close
|
||||||
|
|||||||
@@ -67,10 +67,9 @@
|
|||||||
[collectibles-tab/view
|
[collectibles-tab/view
|
||||||
{:collectibles collectibles
|
{:collectibles collectibles
|
||||||
:filtered? search-performed?
|
:filtered? search-performed?
|
||||||
:on-collectible-press (fn [collectible-id]
|
:on-collectible-press #(rf/dispatch [:wallet/send-select-collectible
|
||||||
(js/alert (str "Collectible to send: \n"
|
{:collectible %
|
||||||
collectible-id
|
:stack-id :wallet-select-asset}])}]))
|
||||||
"\nNavigation not implemented yet")))}]))
|
|
||||||
|
|
||||||
(defn- tab-view
|
(defn- tab-view
|
||||||
[search-text selected-tab on-change-text]
|
[search-text selected-tab on-change-text]
|
||||||
|
|||||||
@@ -14,9 +14,9 @@
|
|||||||
{:margin-right 4})
|
{:margin-right 4})
|
||||||
|
|
||||||
(defn details-container
|
(defn details-container
|
||||||
[theme]
|
[route? theme]
|
||||||
{:flex-direction :row
|
{:flex-direction :row
|
||||||
:justify-content :space-between
|
:justify-content (if route? :space-between :center)
|
||||||
:height 52
|
:height 52
|
||||||
:padding-horizontal 12
|
:padding-horizontal 12
|
||||||
:padding-top 7
|
:padding-top 7
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
(ns status-im.contexts.wallet.send.transaction-confirmation.view
|
(ns status-im.contexts.wallet.send.transaction-confirmation.view
|
||||||
(:require
|
(:require
|
||||||
|
[clojure.string :as string]
|
||||||
[legacy.status-im.utils.utils :as utils]
|
[legacy.status-im.utils.utils :as utils]
|
||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
[quo.theme :as quo.theme]
|
[quo.theme :as quo.theme]
|
||||||
@@ -9,10 +10,11 @@
|
|||||||
[status-im.common.standard-authentication.core :as standard-auth]
|
[status-im.common.standard-authentication.core :as standard-auth]
|
||||||
[status-im.contexts.wallet.send.transaction-confirmation.style :as style]
|
[status-im.contexts.wallet.send.transaction-confirmation.style :as style]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]
|
||||||
|
[utils.security.core :as security]))
|
||||||
|
|
||||||
(defn- transaction-title
|
(defn- transaction-title
|
||||||
[{:keys [token-symbol amount account to-address]}]
|
[{:keys [token-symbol amount account to-address image-url collectible?]}]
|
||||||
[rn/view {:style style/content-container}
|
[rn/view {:style style/content-container}
|
||||||
[rn/view {:style {:flex-direction :row}}
|
[rn/view {:style {:flex-direction :row}}
|
||||||
[quo/text
|
[quo/text
|
||||||
@@ -22,10 +24,10 @@
|
|||||||
:accessibility-label :send-label}
|
:accessibility-label :send-label}
|
||||||
(i18n/label :t/send)]
|
(i18n/label :t/send)]
|
||||||
[quo/summary-tag
|
[quo/summary-tag
|
||||||
{:token token-symbol
|
{:token (if collectible? "" token-symbol)
|
||||||
:label (str amount " " token-symbol)
|
:label (str amount " " token-symbol)
|
||||||
:type :token
|
:type (if collectible? :collectible :token)
|
||||||
:image-source :eth}]]
|
:image-source (if collectible? image-url :eth)}]]
|
||||||
[rn/view
|
[rn/view
|
||||||
{:style {:flex-direction :row
|
{:style {:flex-direction :row
|
||||||
:margin-top 4}}
|
:margin-top 4}}
|
||||||
@@ -54,7 +56,7 @@
|
|||||||
:label (utils/get-shortened-address to-address)}]]])
|
:label (utils/get-shortened-address to-address)}]]])
|
||||||
|
|
||||||
(defn- user-summary
|
(defn- user-summary
|
||||||
[{:keys [amount account-props theme label accessibility-label summary-type]}]
|
[{:keys [amount token-symbol account-props theme label accessibility-label summary-type]}]
|
||||||
[rn/view
|
[rn/view
|
||||||
{:style {:padding-horizontal 20
|
{:style {:padding-horizontal 20
|
||||||
:padding-bottom 16}}
|
:padding-bottom 16}}
|
||||||
@@ -67,12 +69,14 @@
|
|||||||
[quo/summary-info
|
[quo/summary-info
|
||||||
{:type summary-type
|
{:type summary-type
|
||||||
:networks? true
|
:networks? true
|
||||||
:values {:ethereum amount}
|
:values {:ethereum {:amount amount
|
||||||
|
:token-symbol token-symbol}}
|
||||||
:account-props account-props}]])
|
:account-props account-props}]])
|
||||||
|
|
||||||
(defn- transaction-details
|
(defn- transaction-details
|
||||||
[{:keys [estimated-time-min max-fees token amount to-address theme]}]
|
[{:keys [estimated-time-min max-fees token amount to-address route theme]}]
|
||||||
(let [currency-symbol (rf/sub [:profile/currency-symbol])]
|
(let [currency-symbol (rf/sub [:profile/currency-symbol])
|
||||||
|
route-loaded? (some? route)]
|
||||||
[rn/view
|
[rn/view
|
||||||
{:style style/details-title-container}
|
{:style style/details-title-container}
|
||||||
[quo/text
|
[quo/text
|
||||||
@@ -82,114 +86,135 @@
|
|||||||
:accessibility-label :summary-from-label}
|
:accessibility-label :summary-from-label}
|
||||||
(i18n/label :t/details)]
|
(i18n/label :t/details)]
|
||||||
[rn/view
|
[rn/view
|
||||||
{:style (style/details-container theme)}
|
{:style (style/details-container route-loaded? theme)}
|
||||||
[quo/data-item
|
(if route-loaded?
|
||||||
{:container-style style/detail-item
|
[:<>
|
||||||
:blur? false
|
[quo/data-item
|
||||||
:description :default
|
{:container-style style/detail-item
|
||||||
:icon-right? false
|
:blur? false
|
||||||
:card? false
|
:description :default
|
||||||
:label :none
|
:icon-right? false
|
||||||
:status :default
|
:card? false
|
||||||
:size :small
|
:label :none
|
||||||
:title (i18n/label :t/est-time)
|
:status :default
|
||||||
:subtitle (i18n/label :t/time-in-mins {:minutes (str estimated-time-min)})}]
|
:size :small
|
||||||
[quo/data-item
|
:title (i18n/label :t/est-time)
|
||||||
{:container-style style/detail-item
|
:subtitle (i18n/label :t/time-in-mins {:minutes (str estimated-time-min)})}]
|
||||||
:blur? false
|
[quo/data-item
|
||||||
:description :default
|
{:container-style style/detail-item
|
||||||
:icon-right? false
|
:blur? false
|
||||||
:card? false
|
:description :default
|
||||||
:label :none
|
:icon-right? false
|
||||||
:status :default
|
:card? false
|
||||||
:size :small
|
:label :none
|
||||||
:title (i18n/label :t/max-fees)
|
:status :default
|
||||||
:subtitle (i18n/label :t/amount-with-currency-symbol
|
:size :small
|
||||||
{:amount (str max-fees)
|
:title (i18n/label :t/max-fees)
|
||||||
:symbol currency-symbol})}]
|
:subtitle (i18n/label :t/amount-with-currency-symbol
|
||||||
[quo/data-item
|
{:amount (str max-fees)
|
||||||
{:container-style style/detail-item
|
:symbol currency-symbol})}]
|
||||||
:blur? false
|
[quo/data-item
|
||||||
:description :default
|
{:container-style style/detail-item
|
||||||
:icon-right? false
|
:blur? false
|
||||||
:card? false
|
:description :default
|
||||||
:label :none
|
:icon-right? false
|
||||||
:status :default
|
:card? false
|
||||||
:size :small
|
:label :none
|
||||||
:title (i18n/label :t/user-gets {:name (utils/get-shortened-address to-address)})
|
:status :default
|
||||||
:subtitle (str amount " " (:symbol token))}]]]))
|
:size :small
|
||||||
|
:title (i18n/label :t/user-gets {:name (utils/get-shortened-address to-address)})
|
||||||
|
:subtitle (str amount " " (:symbol token))}]]
|
||||||
|
[rn/activity-indicator {:style {:align-self :center}}])]]))
|
||||||
|
|
||||||
(defn- view-internal
|
(defn- view-internal
|
||||||
[_]
|
[_]
|
||||||
(let [on-close #(rf/dispatch [:navigate-back-within-stack :wallet-select-asset])
|
(let [on-close (fn []
|
||||||
send-transaction-data (rf/sub [:wallet/wallet-send])
|
(rf/dispatch [:wallet/clean-suggested-routes])
|
||||||
token (:token send-transaction-data)
|
(rf/dispatch [:navigate-back-within-stack :wallet-select-asset]))]
|
||||||
token-symbol (:symbol token)
|
|
||||||
amount (:amount send-transaction-data)
|
|
||||||
route (:route send-transaction-data)
|
|
||||||
estimated-time-min (:estimated-time route)
|
|
||||||
max-fees "-"
|
|
||||||
to-address (:to-address send-transaction-data)
|
|
||||||
account (rf/sub [:wallet/current-viewing-account])
|
|
||||||
account-color (:color account)
|
|
||||||
from-account-props {:customization-color account-color
|
|
||||||
:size 32
|
|
||||||
:emoji (:emoji account)
|
|
||||||
:type :default
|
|
||||||
:name (:name account)
|
|
||||||
:address (utils/get-shortened-address (:address account))}
|
|
||||||
user-props {:full-name to-address
|
|
||||||
:address (utils/get-shortened-address to-address)}]
|
|
||||||
(prn route)
|
|
||||||
|
|
||||||
(fn [{:keys [theme]}]
|
(fn [{:keys [theme]}]
|
||||||
[rn/view {:style {:flex 1}}
|
(let [send-transaction-data (rf/sub [:wallet/wallet-send])
|
||||||
[floating-button-page/view
|
token (:token send-transaction-data)
|
||||||
{:header [quo/page-nav
|
collectible (:collectible send-transaction-data)
|
||||||
{:icon-name :i/arrow-left
|
collection-data (:collection-data collectible)
|
||||||
:on-press on-close
|
collectible-data (:collectible-data collectible)
|
||||||
:margin-top (safe-area/get-top)
|
collectible-id (get-in collectible [:id :token-id])
|
||||||
:background :blur
|
token-symbol (if collectible
|
||||||
:accessibility-label :top-bar
|
(first (remove string/blank?
|
||||||
:right-side [{:icon-name :i/advanced
|
[(:name collectible-data)
|
||||||
:on-press #(js/alert
|
(str (:name collection-data) " #" collectible-id)]))
|
||||||
"to be implemented")
|
(:symbol token))
|
||||||
:accessibility-label :advanced-options}]}]
|
image-url (when collectible (:image-url collectible-data))
|
||||||
:footer [standard-auth/slide-button
|
amount (:amount send-transaction-data)
|
||||||
{:size :size-48
|
route (:route send-transaction-data)
|
||||||
:track-text (i18n/label :t/slide-to-send)
|
estimated-time-min (:estimated-time route)
|
||||||
:container-style {:z-index 2}
|
max-fees "-"
|
||||||
:customization-color account-color
|
to-address (:to-address send-transaction-data)
|
||||||
:on-auth-success #(rf/dispatch [:wallet/send-transaction %])
|
account (rf/sub [:wallet/current-viewing-account])
|
||||||
:auth-button-label (i18n/label :t/confirm)}]
|
account-color (:color account)
|
||||||
:gradient-cover? true
|
from-account-props {:customization-color account-color
|
||||||
:customization-color (:color account)}
|
:size 32
|
||||||
[rn/view
|
:emoji (:emoji account)
|
||||||
[transaction-title
|
:type :default
|
||||||
{:token-symbol token-symbol
|
:name (:name account)
|
||||||
:amount amount
|
:address (utils/get-shortened-address (:address account))}
|
||||||
:account account
|
user-props {:full-name to-address
|
||||||
:to-address to-address}]
|
:address (utils/get-shortened-address to-address)}]
|
||||||
[user-summary
|
[rn/view {:style {:flex 1}}
|
||||||
{:amount amount
|
[floating-button-page/view
|
||||||
:summary-type :status-account
|
{:header [quo/page-nav
|
||||||
:accessibility-label :summary-from-label
|
{:icon-name :i/arrow-left
|
||||||
:label (i18n/label :t/from-capitalized)
|
:on-press on-close
|
||||||
:account-props from-account-props
|
:margin-top (safe-area/get-top)
|
||||||
:theme theme}]
|
:background :blur
|
||||||
[user-summary
|
:accessibility-label :top-bar
|
||||||
{:amount amount
|
:right-side [{:icon-name :i/advanced
|
||||||
:summary-type :account
|
:on-press #(js/alert
|
||||||
:accessibility-label :summary-to-label
|
"to be implemented")
|
||||||
:label (i18n/label :t/to-capitalized)
|
:accessibility-label :advanced-options}]}]
|
||||||
:account-props user-props
|
:footer (if route
|
||||||
:theme theme}]
|
[standard-auth/slide-button
|
||||||
[transaction-details
|
{:size :size-48
|
||||||
{:estimated-time-min estimated-time-min
|
:track-text (i18n/label :t/slide-to-send)
|
||||||
:max-fees max-fees
|
:container-style {:z-index 2}
|
||||||
:token token
|
:customization-color account-color
|
||||||
:amount amount
|
:on-auth-success #(rf/dispatch [:wallet/send-transaction
|
||||||
:to-address to-address
|
(security/safe-unmask-data %)])
|
||||||
:theme theme}]]]])))
|
:auth-button-label (i18n/label :t/confirm)}]
|
||||||
|
[rn/activity-indicator])
|
||||||
|
:gradient-cover? true
|
||||||
|
:customization-color (:color account)}
|
||||||
|
[rn/view
|
||||||
|
[transaction-title
|
||||||
|
{:token-symbol token-symbol
|
||||||
|
:amount amount
|
||||||
|
:account account
|
||||||
|
:to-address to-address
|
||||||
|
:image-url image-url
|
||||||
|
:collectible? (some? collectible)}]
|
||||||
|
[user-summary
|
||||||
|
{:amount amount
|
||||||
|
:token-symbol token-symbol
|
||||||
|
:summary-type :status-account
|
||||||
|
:accessibility-label :summary-from-label
|
||||||
|
:label (i18n/label :t/from-capitalized)
|
||||||
|
:account-props from-account-props
|
||||||
|
:theme theme}]
|
||||||
|
[user-summary
|
||||||
|
{:amount amount
|
||||||
|
:token-symbol token-symbol
|
||||||
|
:summary-type :account
|
||||||
|
:accessibility-label :summary-to-label
|
||||||
|
:label (i18n/label :t/to-capitalized)
|
||||||
|
:account-props user-props
|
||||||
|
:theme theme}]
|
||||||
|
[transaction-details
|
||||||
|
{:estimated-time-min estimated-time-min
|
||||||
|
:max-fees max-fees
|
||||||
|
:token token
|
||||||
|
:amount amount
|
||||||
|
:to-address to-address
|
||||||
|
:theme theme
|
||||||
|
:route route}]]]]))))
|
||||||
|
|
||||||
(def view (quo.theme/with-theme view-internal))
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
|||||||
@@ -22,6 +22,10 @@
|
|||||||
[]
|
[]
|
||||||
(let [current-address (rf/sub [:wallet/current-viewing-account-address])
|
(let [current-address (rf/sub [:wallet/current-viewing-account-address])
|
||||||
leave-page (fn []
|
leave-page (fn []
|
||||||
|
(rf/dispatch [:wallet/clean-scanned-address])
|
||||||
|
(rf/dispatch [:wallet/clean-local-suggestions])
|
||||||
|
(rf/dispatch [:wallet/clean-send-address])
|
||||||
|
(rf/dispatch [:wallet/select-address-tab nil])
|
||||||
(rf/dispatch [:navigate-to :wallet-accounts current-address]))
|
(rf/dispatch [:navigate-to :wallet-accounts current-address]))
|
||||||
status (reagent/atom :sending)
|
status (reagent/atom :sending)
|
||||||
{:keys [color]} (rf/sub [:wallet/current-viewing-account])]
|
{:keys [color]} (rf/sub [:wallet/current-viewing-account])]
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
(ns status-im.contexts.wallet.receive.style)
|
(ns status-im.contexts.wallet.share-address.style)
|
||||||
|
|
||||||
(def header-container
|
(def header-container
|
||||||
{:padding-horizontal 20
|
{:padding-horizontal 20
|
||||||
+9
-4
@@ -1,4 +1,4 @@
|
|||||||
(ns status-im.contexts.wallet.receive.view
|
(ns status-im.contexts.wallet.share-address.view
|
||||||
(:require
|
(:require
|
||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
[reagent.core :as reagent]
|
[reagent.core :as reagent]
|
||||||
[status-im.contexts.wallet.common.sheets.network-preferences.view :as network-preferences]
|
[status-im.contexts.wallet.common.sheets.network-preferences.view :as network-preferences]
|
||||||
[status-im.contexts.wallet.common.utils :as utils]
|
[status-im.contexts.wallet.common.utils :as utils]
|
||||||
[status-im.contexts.wallet.receive.style :as style]
|
[status-im.contexts.wallet.share-address.style :as style]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.image-server :as image-server]
|
[utils.image-server :as image-server]
|
||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
@@ -64,7 +64,12 @@
|
|||||||
{:url qr-url
|
{:url qr-url
|
||||||
:port (rf/sub [:mediaserver/port])
|
:port (rf/sub [:mediaserver/port])
|
||||||
:qr-size qr-size
|
:qr-size qr-size
|
||||||
:error-level :highest})]
|
:error-level :highest})
|
||||||
|
{:keys [status]} (rf/sub [:get-screen-params])
|
||||||
|
title (case status
|
||||||
|
:share (i18n/label :t/share-address)
|
||||||
|
:receive (i18n/label :t/receive)
|
||||||
|
nil)]
|
||||||
[quo/overlay {:type :shell}
|
[quo/overlay {:type :shell}
|
||||||
[rn/view
|
[rn/view
|
||||||
{:flex 1
|
{:flex 1
|
||||||
@@ -78,7 +83,7 @@
|
|||||||
:accessibility-label :top-bar}]
|
:accessibility-label :top-bar}]
|
||||||
[quo/text-combinations
|
[quo/text-combinations
|
||||||
{:container-style style/header-container
|
{:container-style style/header-container
|
||||||
:title (i18n/label :t/receive)}]
|
:title title}]
|
||||||
[rn/view {:style {:padding-horizontal 20}}
|
[rn/view {:style {:padding-horizontal 20}}
|
||||||
[quo/share-qr-code
|
[quo/share-qr-code
|
||||||
{:type @wallet-type
|
{:type @wallet-type
|
||||||
@@ -23,6 +23,7 @@
|
|||||||
status-im.contexts.profile.settings.events
|
status-im.contexts.profile.settings.events
|
||||||
status-im.contexts.shell.share.events
|
status-im.contexts.shell.share.events
|
||||||
status-im.contexts.syncing.events
|
status-im.contexts.syncing.events
|
||||||
|
status-im.contexts.wallet.effects
|
||||||
status-im.contexts.wallet.events
|
status-im.contexts.wallet.events
|
||||||
status-im.contexts.wallet.send.events
|
status-im.contexts.wallet.send.events
|
||||||
[status-im.db :as db]
|
[status-im.db :as db]
|
||||||
|
|||||||
@@ -58,7 +58,6 @@
|
|||||||
[status-im.contexts.wallet.create-account.select-keypair.view :as wallet-select-keypair]
|
[status-im.contexts.wallet.create-account.select-keypair.view :as wallet-select-keypair]
|
||||||
[status-im.contexts.wallet.create-account.view :as wallet-create-account]
|
[status-im.contexts.wallet.create-account.view :as wallet-create-account]
|
||||||
[status-im.contexts.wallet.edit-account.view :as wallet-edit-account]
|
[status-im.contexts.wallet.edit-account.view :as wallet-edit-account]
|
||||||
[status-im.contexts.wallet.receive.view :as wallet-receive]
|
|
||||||
[status-im.contexts.wallet.saved-addresses.view :as wallet-saved-addresses]
|
[status-im.contexts.wallet.saved-addresses.view :as wallet-saved-addresses]
|
||||||
[status-im.contexts.wallet.scan-account.view :as scan-address]
|
[status-im.contexts.wallet.scan-account.view :as scan-address]
|
||||||
[status-im.contexts.wallet.send.input-amount.view :as wallet-send-input-amount]
|
[status-im.contexts.wallet.send.input-amount.view :as wallet-send-input-amount]
|
||||||
@@ -66,6 +65,7 @@
|
|||||||
[status-im.contexts.wallet.send.select-asset.view :as wallet-select-asset]
|
[status-im.contexts.wallet.send.select-asset.view :as wallet-select-asset]
|
||||||
[status-im.contexts.wallet.send.transaction-confirmation.view :as wallet-transaction-confirmation]
|
[status-im.contexts.wallet.send.transaction-confirmation.view :as wallet-transaction-confirmation]
|
||||||
[status-im.contexts.wallet.send.transaction-progress.view :as wallet-transaction-progress]
|
[status-im.contexts.wallet.send.transaction-progress.view :as wallet-transaction-progress]
|
||||||
|
[status-im.contexts.wallet.share-address.view :as wallet-share-address]
|
||||||
[status-im.navigation.options :as options]
|
[status-im.navigation.options :as options]
|
||||||
[status-im.navigation.transitions :as transitions]))
|
[status-im.navigation.transitions :as transitions]))
|
||||||
|
|
||||||
@@ -330,9 +330,9 @@
|
|||||||
:options {:insets {:top? true :bottom? true}}
|
:options {:insets {:top? true :bottom? true}}
|
||||||
:component wallet-backup-recovery-phrase/view}
|
:component wallet-backup-recovery-phrase/view}
|
||||||
|
|
||||||
{:name :wallet-receive
|
{:name :wallet-share-address
|
||||||
:options options/transparent-screen-options
|
:options options/transparent-screen-options
|
||||||
:component wallet-receive/view}
|
:component wallet-share-address/view}
|
||||||
|
|
||||||
{:name :wallet-saved-addresses
|
{:name :wallet-saved-addresses
|
||||||
:component wallet-saved-addresses/view}
|
:component wallet-saved-addresses/view}
|
||||||
|
|||||||
@@ -335,3 +335,17 @@
|
|||||||
:<- [:communities]
|
:<- [:communities]
|
||||||
(fn [communities [_ community-id]]
|
(fn [communities [_ community-id]]
|
||||||
(get-in communities [community-id :intro-message])))
|
(get-in communities [community-id :intro-message])))
|
||||||
|
|
||||||
|
(re-frame/reg-sub
|
||||||
|
:communities/airdrop-account
|
||||||
|
:<- [:communities/airdrop-address]
|
||||||
|
:<- [:wallet/accounts-with-customization-color]
|
||||||
|
(fn [[airdrop-address accounts]]
|
||||||
|
(first (filter #(= (:address %) airdrop-address) accounts))))
|
||||||
|
|
||||||
|
(re-frame/reg-sub
|
||||||
|
:communities/selected-permission-accounts
|
||||||
|
:<- [:communities/selected-permission-addresses]
|
||||||
|
:<- [:wallet/accounts-with-customization-color]
|
||||||
|
(fn [[selected-permission-addresses accounts]]
|
||||||
|
(filter #(contains? selected-permission-addresses (:address %)) accounts)))
|
||||||
|
|||||||
@@ -459,3 +459,49 @@
|
|||||||
:loading? checking-permissions?
|
:loading? checking-permissions?
|
||||||
:img-src token-image-eth}]]}
|
:img-src token-image-eth}]]}
|
||||||
(rf/sub [sub-name community-id])))))
|
(rf/sub [sub-name community-id])))))
|
||||||
|
|
||||||
|
(h/deftest-sub :communities/airdrop-account
|
||||||
|
[sub-name]
|
||||||
|
(testing "returns airdrop account"
|
||||||
|
(swap! rf-db/app-db assoc
|
||||||
|
:communities/airdrop-address
|
||||||
|
"0x1"
|
||||||
|
:wallet {:accounts {"0x1" {:address "0x1"
|
||||||
|
:color :blue
|
||||||
|
:name "account1"}
|
||||||
|
"0x2" {:address "0x2"
|
||||||
|
:color :orange
|
||||||
|
:name "account2"}}})
|
||||||
|
(is (match? {:address "0x1"
|
||||||
|
:network-preferences-names #{}
|
||||||
|
:name "account1"
|
||||||
|
:color :blue
|
||||||
|
:customization-color :blue}
|
||||||
|
(rf/sub [sub-name])))))
|
||||||
|
|
||||||
|
(h/deftest-sub :communities/selected-permission-accounts
|
||||||
|
[sub-name]
|
||||||
|
(testing "returns selected permission accounts"
|
||||||
|
(swap! rf-db/app-db assoc
|
||||||
|
:communities/selected-permission-addresses
|
||||||
|
#{"0x1" "0x3"}
|
||||||
|
:wallet {:accounts {"0x1" {:address "0x1"
|
||||||
|
:color :blue
|
||||||
|
:name "account1"}
|
||||||
|
"0x2" {:address "0x2"
|
||||||
|
:color :orange
|
||||||
|
:name "account2"}
|
||||||
|
"0x3" {:address "0x3"
|
||||||
|
:color :purple
|
||||||
|
:name "account3"}}})
|
||||||
|
(is (match? [{:address "0x1"
|
||||||
|
:color :blue
|
||||||
|
:customization-color :blue
|
||||||
|
:network-preferences-names #{}
|
||||||
|
:name "account1"}
|
||||||
|
{:address "0x3"
|
||||||
|
:color :purple
|
||||||
|
:customization-color :purple
|
||||||
|
:network-preferences-names #{}
|
||||||
|
:name "account3"}]
|
||||||
|
(rf/sub [sub-name])))))
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
(reg-root-key-sub :communities/selected-tab :communities/selected-tab)
|
(reg-root-key-sub :communities/selected-tab :communities/selected-tab)
|
||||||
(reg-root-key-sub :contract-communities :contract-communities)
|
(reg-root-key-sub :contract-communities :contract-communities)
|
||||||
(reg-root-key-sub :communities/selected-permission-addresses :communities/selected-permission-addresses)
|
(reg-root-key-sub :communities/selected-permission-addresses :communities/selected-permission-addresses)
|
||||||
|
(reg-root-key-sub :communities/airdrop-address :communities/airdrop-address)
|
||||||
|
|
||||||
;;activity center
|
;;activity center
|
||||||
(reg-root-key-sub :activity-center :activity-center)
|
(reg-root-key-sub :activity-center :activity-center)
|
||||||
|
|||||||
@@ -13,3 +13,8 @@
|
|||||||
:wallet/wallet-send
|
:wallet/wallet-send
|
||||||
:<- [:wallet/ui]
|
:<- [:wallet/ui]
|
||||||
:-> :send)
|
:-> :send)
|
||||||
|
|
||||||
|
(rf/reg-sub
|
||||||
|
:wallet/wallet-send-recipient
|
||||||
|
:<- [:wallet/wallet-send]
|
||||||
|
:-> :recipient)
|
||||||
|
|||||||
@@ -43,6 +43,11 @@
|
|||||||
:<- [:wallet/wallet-send]
|
:<- [:wallet/wallet-send]
|
||||||
:-> :to-address)
|
:-> :to-address)
|
||||||
|
|
||||||
|
(rf/reg-sub
|
||||||
|
:wallet/wallet-send-address-prefix
|
||||||
|
:<- [:wallet/wallet-send]
|
||||||
|
:-> :address-prefix)
|
||||||
|
|
||||||
(rf/reg-sub
|
(rf/reg-sub
|
||||||
:wallet/wallet-send-route
|
:wallet/wallet-send-route
|
||||||
:<- [:wallet/wallet-send]
|
:<- [:wallet/wallet-send]
|
||||||
|
|||||||
@@ -459,3 +459,25 @@
|
|||||||
(let [{:keys [formatted-balance tokens]} (rf/sub [sub-name])]
|
(let [{:keys [formatted-balance tokens]} (rf/sub [sub-name])]
|
||||||
(is (match? 2 (count tokens)))
|
(is (match? 2 (count tokens)))
|
||||||
(is (match? "$4506.00" formatted-balance)))))
|
(is (match? "$4506.00" formatted-balance)))))
|
||||||
|
|
||||||
|
(h/deftest-sub :wallet/accounts-with-customization-color
|
||||||
|
[sub-name]
|
||||||
|
(testing "returns all accounts with customization color"
|
||||||
|
(swap! rf-db/app-db
|
||||||
|
#(-> %
|
||||||
|
(assoc-in [:wallet :accounts] accounts)
|
||||||
|
(assoc-in [:wallet :networks] network-data)))
|
||||||
|
(is
|
||||||
|
(= [(-> accounts
|
||||||
|
(get "0x1")
|
||||||
|
(assoc :customization-color :blue)
|
||||||
|
(assoc :network-preferences-names #{:ethereum :arbitrum :optimism}))
|
||||||
|
(-> accounts
|
||||||
|
(get "0x2")
|
||||||
|
(assoc :customization-color :purple)
|
||||||
|
(assoc :network-preferences-names #{:ethereum :arbitrum :optimism}))
|
||||||
|
(-> accounts
|
||||||
|
(get "0x3")
|
||||||
|
(assoc :customization-color :magenta)
|
||||||
|
(assoc :network-preferences-names #{}))]
|
||||||
|
(rf/sub [sub-name])))))
|
||||||
|
|||||||
@@ -1,51 +0,0 @@
|
|||||||
(ns utils.worklets.chat.messages)
|
|
||||||
|
|
||||||
(def ^:private messages-worklets (js/require "../src/js/worklets/chat/messages.js"))
|
|
||||||
|
|
||||||
;;;; Navigtion
|
|
||||||
(defn navigation-header-opacity
|
|
||||||
[distance-from-list-top all-loaded? calculations-complete? start-position]
|
|
||||||
(.navigationHeaderOpacity ^js messages-worklets
|
|
||||||
distance-from-list-top
|
|
||||||
all-loaded?
|
|
||||||
calculations-complete?
|
|
||||||
start-position))
|
|
||||||
|
|
||||||
(defn navigation-header-position
|
|
||||||
[distance-from-list-top all-loaded? top-bar-height start-position]
|
|
||||||
(.navigationHeaderPosition ^js messages-worklets
|
|
||||||
distance-from-list-top
|
|
||||||
all-loaded?
|
|
||||||
top-bar-height
|
|
||||||
start-position))
|
|
||||||
|
|
||||||
(defn interpolate-navigation-view-opacity
|
|
||||||
[props]
|
|
||||||
(.interpolateNavigationViewOpacity ^js messages-worklets (clj->js props)))
|
|
||||||
|
|
||||||
;;;; Messages List
|
|
||||||
(defn messages-list-on-scroll
|
|
||||||
[distance-from-list-top chat-list-scroll-y callback]
|
|
||||||
(.messagesListOnScroll ^js messages-worklets distance-from-list-top chat-list-scroll-y callback))
|
|
||||||
|
|
||||||
;;;; Placeholder
|
|
||||||
(defn placeholder-opacity
|
|
||||||
[calculations-complete?]
|
|
||||||
(.placeholderOpacity ^js messages-worklets calculations-complete?))
|
|
||||||
|
|
||||||
(defn placeholder-z-index
|
|
||||||
[calculations-complete?]
|
|
||||||
(.placeholderZIndex ^js messages-worklets calculations-complete?))
|
|
||||||
|
|
||||||
;;;; Common
|
|
||||||
(defn scroll-down-button-opacity
|
|
||||||
[chat-list-scroll-y composer-focused? window-height]
|
|
||||||
(.scrollDownButtonOpacity ^js messages-worklets chat-list-scroll-y composer-focused? window-height))
|
|
||||||
|
|
||||||
(defn jump-to-button-opacity
|
|
||||||
[scroll-down-button-opacity-sv composer-focused?]
|
|
||||||
(.jumpToButtonOpacity ^js messages-worklets scroll-down-button-opacity-sv composer-focused?))
|
|
||||||
|
|
||||||
(defn jump-to-button-position
|
|
||||||
[scroll-down-button-opacity-sv composer-focused?]
|
|
||||||
(.jumpToButtonPosition ^js messages-worklets scroll-down-button-opacity-sv composer-focused?))
|
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
(ns utils.worklets.chat.messenger.composer)
|
||||||
|
|
||||||
|
(def ^:private worklets (js/require "../src/js/worklets/chat/messenger/composer.js"))
|
||||||
|
|
||||||
|
(defn scroll-down-button-opacity
|
||||||
|
[chat-list-scroll-y composer-focused? window-height]
|
||||||
|
(.scrollDownButtonOpacity ^js worklets chat-list-scroll-y composer-focused? window-height))
|
||||||
|
|
||||||
|
(defn jump-to-button-opacity
|
||||||
|
[scroll-down-button-opacity-sv composer-focused?]
|
||||||
|
(.jumpToButtonOpacity ^js worklets scroll-down-button-opacity-sv composer-focused?))
|
||||||
|
|
||||||
|
(defn jump-to-button-position
|
||||||
|
[scroll-down-button-opacity-sv composer-focused?]
|
||||||
|
(.jumpToButtonPosition ^js worklets scroll-down-button-opacity-sv composer-focused?))
|
||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
(ns utils.worklets.chat.lightbox)
|
(ns utils.worklets.chat.messenger.lightbox)
|
||||||
|
|
||||||
(def ^:private layout-worklets (js/require "../src/js/worklets/chat/lightbox.js"))
|
(def ^:private layout-worklets (js/require "../src/js/worklets/chat/messenger/lightbox.js"))
|
||||||
|
|
||||||
(defn info-layout
|
(defn info-layout
|
||||||
[input top?]
|
[input top?]
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
(ns utils.worklets.chat.messenger.messages)
|
||||||
|
|
||||||
|
(def ^:private worklets (js/require "../src/js/worklets/chat/messenger/messages.js"))
|
||||||
|
|
||||||
|
(defn messages-list-on-scroll
|
||||||
|
[distance-from-list-top chat-list-scroll-y callback]
|
||||||
|
(.messagesListOnScroll ^js worklets distance-from-list-top chat-list-scroll-y callback))
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
(ns utils.worklets.chat.messenger.navigation)
|
||||||
|
|
||||||
|
(def ^:private worklets (js/require "../src/js/worklets/chat/messenger/navigation.js"))
|
||||||
|
|
||||||
|
(defn navigation-header-opacity
|
||||||
|
[distance-from-list-top all-loaded? calculations-complete? start-position]
|
||||||
|
(.navigationHeaderOpacity ^js worklets
|
||||||
|
distance-from-list-top
|
||||||
|
all-loaded?
|
||||||
|
calculations-complete?
|
||||||
|
start-position))
|
||||||
|
|
||||||
|
(defn navigation-header-position
|
||||||
|
[distance-from-list-top all-loaded? top-bar-height start-position]
|
||||||
|
(.navigationHeaderPosition ^js worklets
|
||||||
|
distance-from-list-top
|
||||||
|
all-loaded?
|
||||||
|
top-bar-height
|
||||||
|
start-position))
|
||||||
|
|
||||||
|
(defn interpolate-navigation-view-opacity
|
||||||
|
[props]
|
||||||
|
(.interpolateNavigationViewOpacity ^js worklets (clj->js props)))
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
(ns utils.worklets.chat.messenger.placeholder)
|
||||||
|
|
||||||
|
(def ^:private worklets (js/require "../src/js/worklets/chat/messenger/placeholder.js"))
|
||||||
|
|
||||||
|
(defn placeholder-opacity
|
||||||
|
[calculations-complete?]
|
||||||
|
(.placeholderOpacity ^js worklets calculations-complete?))
|
||||||
|
|
||||||
|
(defn placeholder-z-index
|
||||||
|
[calculations-complete?]
|
||||||
|
(.placeholderZIndex ^js worklets calculations-complete?))
|
||||||
@@ -0,0 +1,101 @@
|
|||||||
|
//import {useAnimatedStyle, useDerivedValue} from 'react-native-reanimated';
|
||||||
|
|
||||||
|
const babel = require('@babel/core');
|
||||||
|
const plugin = require('./node_modules/react-native-reanimated/plugin');
|
||||||
|
|
||||||
|
// const codeString = "goog.provide(\x27status_im.contexts.profile.settings.header.avatar\x27);\nstatus_im.contexts.profile.settings.header.avatar.f_avatar \x3d (function status_im$contexts$profile$settings$header$avatar$f_avatar(a){\nvar sv \x3d react_native.reanimated.use_shared_value.call(null,(0));\nvar THIS_THING \x3d shadow.js.shim.module$react_native_reanimated.useAnimatedStyle((function status_im$contexts$profile$settings$header$avatar$f_avatar_$_HEEEEEEY(){\n\x27worklet;\x27;\n\nconsole.log(\x22hola\x22);\n\nreturn ({\x22transform\x22: [({\x22translateX\x22: sv.value})]});\n}));\nreturn null;\n});\nstatus_im.contexts.profile.settings.header.avatar.view \x3d (function status_im$contexts$profile$settings$header$avatar$view(props){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22f\x3e\x22,\x22f\x3e\x22,1484564198),status_im.contexts.profile.settings.header.avatar.f_avatar,props], null);\n});\n"
|
||||||
|
//
|
||||||
|
// const fs = require('fs');
|
||||||
|
//
|
||||||
|
// function workletize(s) {
|
||||||
|
// return babel.transformSync(eval(s), {
|
||||||
|
// filename: '/dev/null', compact: false, plugins: [plugin]
|
||||||
|
// }).code
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// function extractStrings(filePath) {
|
||||||
|
// try {
|
||||||
|
// // Read the content of the file
|
||||||
|
// const fileContent = fs.readFileSync(filePath, 'utf8');
|
||||||
|
//
|
||||||
|
// // Use a regular expression to find all strings enclosed in double quotes
|
||||||
|
// const stringMatches = fileContent.match(
|
||||||
|
// /(?<!\\)"(goog\.provide\(.+?)"/g
|
||||||
|
// );
|
||||||
|
//
|
||||||
|
// // transforms the code
|
||||||
|
// const mod = stringMatches.map(workletize);
|
||||||
|
//
|
||||||
|
// // Return the array of matched strings
|
||||||
|
// return mod.filter(str => str !== "") || [];
|
||||||
|
// } catch (err) {
|
||||||
|
// console.error('Error reading the file:', err.message);
|
||||||
|
// return [];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// const filePath = './result/index.js';
|
||||||
|
// const result = extractStrings(filePath);
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// console.log('Strings found in the file:');
|
||||||
|
// result.forEach((str, index) => {
|
||||||
|
// console.log(`${index + 1}: ${str}`);
|
||||||
|
// });
|
||||||
|
//
|
||||||
|
// // console.log(codeString);
|
||||||
|
//
|
||||||
|
// // transformedCode = babel.transformSync(codeString, {
|
||||||
|
// // filename: '/dev/null',
|
||||||
|
// // compact: false,
|
||||||
|
// // plugins: [plugin]
|
||||||
|
// // }).code
|
||||||
|
// //
|
||||||
|
// // console.log(transformedCode);
|
||||||
|
//
|
||||||
|
// // SHADOW_ENV.evalLoad
|
||||||
|
|
||||||
|
|
||||||
|
const fs = require('fs');
|
||||||
|
|
||||||
|
function transformString(inputString) {
|
||||||
|
// Customize this function based on your transformation logic
|
||||||
|
return babel.transformSync(eval(inputString), {
|
||||||
|
filename: '/dev/null', compact: false, plugins: [plugin]
|
||||||
|
}).code
|
||||||
|
}
|
||||||
|
|
||||||
|
function processFile(filePath) {
|
||||||
|
try {
|
||||||
|
// Read the content of the file
|
||||||
|
let fileContent = fs.readFileSync(filePath, 'utf8');
|
||||||
|
|
||||||
|
// Use a regular expression to find strings in the file
|
||||||
|
const stringMatches = fileContent.match(
|
||||||
|
/(?<!\\)"(goog\.provide\(.+?)"/g
|
||||||
|
);
|
||||||
|
|
||||||
|
// Apply the transformation function to each matched string
|
||||||
|
if (stringMatches) {
|
||||||
|
stringMatches.forEach(match => {
|
||||||
|
if (match.indexOf("HEEEEEEY") !== -1){
|
||||||
|
const transformedString = transformString(match);
|
||||||
|
fileContent = fileContent.replace(match, JSON.stringify(transformedString));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Write the modified content back to the file
|
||||||
|
fs.writeFileSync(filePath, fileContent, 'utf8');
|
||||||
|
|
||||||
|
console.log('File successfully processed.');
|
||||||
|
} else {
|
||||||
|
console.log('No strings found in the file.');
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Error processing the file:', err.message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Example usage
|
||||||
|
const filePath = "./result/index.js";
|
||||||
|
processFile(filePath);
|
||||||
Reference in New Issue
Block a user