Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c9b18a29f9 | ||
|
|
8a869be01c | ||
|
|
8d0bb7ba9e | ||
|
|
d9a242fcab | ||
|
|
8ba9f45e44 | ||
|
|
e06d8cb106 | ||
|
|
f8e935c58d | ||
|
|
5507ae4fa2 | ||
|
|
2a5c102b1c | ||
|
|
9e27a36f5e | ||
|
|
07d8bf0d19 |
@@ -263,7 +263,7 @@ run-clojure: export TARGET := clojure
|
||||
run-clojure: ##@run Watch for and build Clojure changes for mobile
|
||||
yarn shadow-cljs watch mobile
|
||||
|
||||
run-metro: export TARGET := android
|
||||
run-metro: export TARGET := clojure
|
||||
run-metro: ##@run Start Metro to build React Native changes
|
||||
@scripts/start-react-native.sh
|
||||
|
||||
|
||||
@@ -497,33 +497,10 @@ PODS:
|
||||
- React-Core
|
||||
- RNReactNativeHapticFeedback (1.9.0):
|
||||
- React
|
||||
- RNReanimated (3.5.4):
|
||||
- DoubleConversion
|
||||
- FBLazyVector
|
||||
- glog
|
||||
- RCT-Folly
|
||||
- RCTRequired
|
||||
- RCTTypeSafety
|
||||
- React-callinvoker
|
||||
- RNReanimated (3.6.1):
|
||||
- RCT-Folly (= 2021.07.22.00)
|
||||
- React-Core
|
||||
- React-Core/DevSupport
|
||||
- React-Core/RCTWebSocket
|
||||
- React-CoreModules
|
||||
- React-cxxreact
|
||||
- React-jsi
|
||||
- React-jsiexecutor
|
||||
- React-jsinspector
|
||||
- React-RCTActionSheet
|
||||
- React-RCTAnimation
|
||||
- React-RCTAppDelegate
|
||||
- React-RCTBlob
|
||||
- React-RCTImage
|
||||
- React-RCTLinking
|
||||
- React-RCTNetwork
|
||||
- React-RCTSettings
|
||||
- React-RCTText
|
||||
- ReactCommon/turbomodule/core
|
||||
- Yoga
|
||||
- RNShare (8.2.2):
|
||||
- React-Core
|
||||
- RNStaticSafeAreaInsets (2.2.0):
|
||||
@@ -823,7 +800,7 @@ SPEC CHECKSUMS:
|
||||
FBLazyVector: 71803c074f6325f10b5ec891c443b6bbabef0ca7
|
||||
FBReactNativeSpec: 448e08a759d29a96e15725ae532445bf4343567c
|
||||
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
|
||||
glog: c5b451128f1a485ffb9be9df3f544b001bd1fde0
|
||||
glog: cf171f517b828fdde711287b723e348da1ea0fc3
|
||||
HMSegmentedControl: 34c1f54d822d8308e7b24f5d901ec674dfa31352
|
||||
Keycard: ac6df4d91525c3c82635ac24d4ddd9a80aca5fc8
|
||||
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
|
||||
@@ -894,7 +871,7 @@ SPEC CHECKSUMS:
|
||||
RNLanguages: 962e562af0d34ab1958d89bcfdb64fafc37c513e
|
||||
RNPermissions: 215c54462104b3925b412b0fb3c9c497b21c358b
|
||||
RNReactNativeHapticFeedback: 2566b468cc8d0e7bb2f84b23adc0f4614594d071
|
||||
RNReanimated: bdadbf5322d7894bb6016985d8ae5c9ed5fc83d0
|
||||
RNReanimated: fdbaa9c964bbab7fac50c90862b6cc5f041679b9
|
||||
RNShare: d82e10f6b7677f4b0048c23709bd04098d5aee6c
|
||||
RNStaticSafeAreaInsets: 055ddbf5e476321720457cdaeec0ff2ba40ec1b8
|
||||
RNSVG: 80584470ff1ffc7994923ea135a3e5ad825546b9
|
||||
|
||||
@@ -46,7 +46,7 @@ copyNodeModules() {
|
||||
# WARNING: We can't de-reference .bin symlinks
|
||||
cp -Rf ${src}/node_modules/.bin/. "${tmp}/.bin/"
|
||||
# Cmake called by react-native-reanimated 3.3.0 during build creates read-only temporary files.
|
||||
chmod -R u+w node_modules/react-native-reanimated/android/.cxx -f || true
|
||||
chmod -R u+w node_modules/react-native-reanimated/android/ -f || true
|
||||
rm -r "${dst}"
|
||||
mv -f "${tmp}" "${dst}"
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
"react-native-orientation-locker": "^1.5.0",
|
||||
"react-native-permissions": "3.8.0",
|
||||
"react-native-randombytes": "^3.6.1",
|
||||
"react-native-reanimated": "3.5.4",
|
||||
"react-native-reanimated": "3.6.1",
|
||||
"react-native-redash": "18.1.0",
|
||||
"react-native-shake": "^3.3.1",
|
||||
"react-native-share": "^8.2.2",
|
||||
|
||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 24 KiB |
@@ -251,6 +251,7 @@
|
||||
:onChange nil
|
||||
:View #js {}
|
||||
:Image #js {}
|
||||
:FlatList #js {}
|
||||
:ScrollView #js {}
|
||||
:Text #js {}
|
||||
:Extrapolate #js {:CLAMP nil}
|
||||
|
||||
@@ -42,10 +42,7 @@
|
||||
(def scroll-view (reagent/adapt-react-class (.-ScrollView reanimated)))
|
||||
(def image (reagent/adapt-react-class (.-Image reanimated)))
|
||||
|
||||
;; TODO: This one should use FlatList from Reanimated.
|
||||
;; Trying to use Flatlist from RA causes test to fail: "The first argument must be a component. Instead
|
||||
;; received: object"
|
||||
(def reanimated-flat-list (reagent/adapt-react-class (.-FlatList ^js rn)))
|
||||
(def reanimated-flat-list (reagent/adapt-react-class (.-FlatList reanimated)))
|
||||
(defn flat-list
|
||||
[props]
|
||||
[reanimated-flat-list (rn-flat-list/base-list-props props)])
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
[status-im.utils.deprecated-types :as types]
|
||||
[status-im.utils.random :as random]
|
||||
[status-im2.constants :as constants]
|
||||
[status-im2.contexts.chat.events :as chat.events]
|
||||
[status-im2.navigation.events :as navigation]
|
||||
[taoensso.timbre :as log]
|
||||
[utils.address :as address]
|
||||
@@ -310,6 +311,7 @@
|
||||
{:browser-id (:browser-id browser)}
|
||||
:browser/screen-id :browser)}
|
||||
(navigation/pop-to-root :shell-stack)
|
||||
(chat.events/close-chat)
|
||||
(navigation/change-tab :browser-stack)
|
||||
(update-browser browser)
|
||||
(resolve-url nil)))))
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
{:events [:navigate-chat-updated]}
|
||||
[cofx chat-id]
|
||||
(when (get-in cofx [:db :chats chat-id])
|
||||
(chat.events/navigate-to-chat cofx chat-id nil)))
|
||||
(chat.events/pop-to-root-and-navigate-to-chat cofx chat-id nil)))
|
||||
|
||||
(rf/defn handle-chat-removed
|
||||
{:events [:chat-removed]}
|
||||
@@ -80,7 +80,7 @@
|
||||
{:events [:group-chats/create-from-link]}
|
||||
[cofx {:keys [chat-id invitation-admin chat-name]}]
|
||||
(if (get-in cofx [:db :chats chat-id])
|
||||
{:dispatch [:chat/navigate-to-chat chat-id]}
|
||||
{:dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]}
|
||||
{:json-rpc/call [{:method "wakuext_createGroupChatFromInvitation"
|
||||
:params [chat-name chat-id invitation-admin]
|
||||
:js-response true
|
||||
|
||||
@@ -95,8 +95,9 @@
|
||||
accounts-data)))
|
||||
|
||||
(rf/defn save-account-and-login
|
||||
[_ key-uid multiaccount-data password settings node-config accounts-data]
|
||||
{::save-account-and-login [key-uid
|
||||
[{:keys [db]} key-uid multiaccount-data password settings node-config accounts-data]
|
||||
{:db (assoc-in db [:syncing :login-sha3-password] password)
|
||||
::save-account-and-login [key-uid
|
||||
(types/clj->json multiaccount-data)
|
||||
password
|
||||
(types/clj->json settings)
|
||||
|
||||
@@ -22,7 +22,8 @@
|
||||
:network/type type
|
||||
:initials-avatar-font-file initials-avatar-font-file
|
||||
:keycard (dissoc keycard :secrets :pin :application-info)
|
||||
:biometric/supported-type supported-type)})
|
||||
:biometric/supported-type supported-type
|
||||
:syncing nil)})
|
||||
|
||||
(rf/defn logout-method
|
||||
{:events [::logout-method]}
|
||||
|
||||
@@ -22,44 +22,27 @@
|
||||
:onboarding-illustration (js/require "../resources/images/ui2/onboarding_illustration.png")
|
||||
:qr-code (js/require "../resources/images/ui2/qr-code.png")
|
||||
:keycard-logo (js/require "../resources/images/ui2/keycard-logo.png")
|
||||
:keycard-chip-light (js/require "../resources/images/ui2/keycard-chip-light.png")
|
||||
:keycard-chip-dark (js/require "../resources/images/ui2/keycard-chip-dark.png")
|
||||
:keycard-watermark (js/require "../resources/images/ui2/keycard-watermark.png")
|
||||
:discover (js/require "../resources/images/ui2/discover.png")
|
||||
:invite-friends (js/require "../resources/images/ui2/invite-friends.png")
|
||||
:no-messages-light (js/require "../resources/images/ui2/no-messages-light.png")
|
||||
:no-messages-dark (js/require "../resources/images/ui2/no-messages-dark.png")
|
||||
:no-group-chats-light (js/require "../resources/images/ui2/no-group-chats-light.png")
|
||||
:no-group-chats-dark (js/require "../resources/images/ui2/no-group-chats-dark.png")
|
||||
:no-contacts-light (js/require "../resources/images/ui2/no-contacts-light.png")
|
||||
:no-contacts-dark (js/require "../resources/images/ui2/no-contacts-dark.png")
|
||||
:no-sent-requests-light (js/require "../resources/images/ui2/no-sent-requests-light.png")
|
||||
:no-sent-requests-dark (js/require "../resources/images/ui2/no-sent-requests-dark.png")
|
||||
:no-received-requests-light (js/require "../resources/images/ui2/no-received-requests-light.png")
|
||||
:no-received-requests-dark (js/require "../resources/images/ui2/no-received-requests-dark.png")
|
||||
:no-communities-light (js/require "../resources/images/ui2/no-communities-light.png")
|
||||
:no-communities-dark (js/require "../resources/images/ui2/no-communities-dark.png")
|
||||
:no-pending-communities-light (js/require "../resources/images/ui2/no-pending-communities-light.png")
|
||||
:no-pending-communities-dark (js/require "../resources/images/ui2/no-pending-communities-dark.png")
|
||||
:no-opened-communities-light (js/require "../resources/images/ui2/no-opened-communities-light.png")
|
||||
:no-opened-communities-dark (js/require "../resources/images/ui2/no-opened-communities-dark.png")
|
||||
:no-contacts-to-invite-light (js/require "../resources/images/ui2/no-contacts-to-invite-light.png")
|
||||
:no-contacts-to-invite-dark (js/require "../resources/images/ui2/no-contacts-to-invite-dark.png")
|
||||
:no-notifications-light (js/require "../resources/images/ui2/no-notifications-light.png")
|
||||
:no-notifications-dark (js/require "../resources/images/ui2/no-notifications-dark.png")
|
||||
:notifications (js/require "../resources/images/ui2/notifications.png")
|
||||
:welcome-illustration (js/require "../resources/images/ui2/welcome_illustration.png")})
|
||||
|
||||
(def ui-themed
|
||||
{:no-messages
|
||||
{:light (js/require "../resources/images/ui2/no-messages-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-messages-dark.png")}
|
||||
:no-group-chats
|
||||
{:light (js/require "../resources/images/ui2/no-group-chats-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-group-chats-dark.png")}
|
||||
{:angry-man
|
||||
{:light (js/require "../resources/images/ui2/angry-man-light.png")
|
||||
:dark (js/require "../resources/images/ui2/angry-man-dark.png")}
|
||||
:cat-in-box
|
||||
{:light (js/require "../resources/images/ui2/cat-in-box-light.png")
|
||||
:dark (js/require "../resources/images/ui2/cat-in-box-dark.png")}
|
||||
:no-contacts
|
||||
{:light (js/require "../resources/images/ui2/no-contacts-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-contacts-dark.png")}
|
||||
:keycard-chip
|
||||
{:light (js/require "../resources/images/ui2/keycard-chip-light.png")
|
||||
:dark (js/require "../resources/images/ui2/keycard-chip-dark.png")}
|
||||
:no-group-chats
|
||||
{:light (js/require "../resources/images/ui2/no-group-chats-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-group-chats-dark.png")}
|
||||
:no-sent-requests
|
||||
{:light (js/require "../resources/images/ui2/no-sent-requests-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-sent-requests-dark.png")}
|
||||
@@ -92,7 +75,10 @@
|
||||
:dark (js/require "../resources/images/ui2/no-dapps-dark.png")}
|
||||
:no-permissions
|
||||
{:light (js/require "../resources/images/ui2/no-permissions-light.png")
|
||||
:dark (js/require "../resources/images/ui2/no-permissions-dark.png")}})
|
||||
:dark (js/require "../resources/images/ui2/no-permissions-dark.png")}
|
||||
:sweating-man
|
||||
{:light (js/require "../resources/images/ui2/sweating-man-light.png")
|
||||
:dark (js/require "../resources/images/ui2/sweating-man-dark.png")}})
|
||||
|
||||
(def mock-images
|
||||
{:bored-ape (js/require "../resources/images/mock2/bored-ape.png")
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
(rf/defn handle-community-chat
|
||||
[cofx {:keys [chat-id]}]
|
||||
(log/info "universal-links: handling community chat" chat-id)
|
||||
{:dispatch [:chat/navigate-to-chat chat-id]})
|
||||
{:dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]})
|
||||
|
||||
(rf/defn handle-view-profile
|
||||
[{:keys [db] :as cofx} {:keys [public-key ens-name]}]
|
||||
|
||||
@@ -14,5 +14,5 @@
|
||||
:key-uid
|
||||
(fn [stored-key-uid]
|
||||
(when (= stored-key-uid key-uid)
|
||||
(rf/dispatch [:chat/navigate-to-chat chat-id
|
||||
(rf/dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id
|
||||
shell.constants/open-screen-without-animation])))))))))
|
||||
|
||||
@@ -208,8 +208,6 @@
|
||||
[{db :db :as cofx} chat-id animation]
|
||||
(rf/merge cofx
|
||||
{:dispatch [(if animation :shell/navigate-to :navigate-to) :chat chat-id animation]}
|
||||
(when-not (#{:community :community-overview :shell} (:view-id db))
|
||||
(navigation/pop-to-root :shell-stack))
|
||||
(close-chat)
|
||||
(force-close-chat chat-id)
|
||||
(fn [{:keys [db]}]
|
||||
@@ -218,6 +216,14 @@
|
||||
#(when (group-chat? cofx chat-id)
|
||||
(loading/load-chat % chat-id))))
|
||||
|
||||
(rf/defn pop-to-root-and-navigate-to-chat
|
||||
{:events [:chat/pop-to-root-and-navigate-to-chat]}
|
||||
[cofx chat-id animation]
|
||||
(rf/merge
|
||||
cofx
|
||||
(navigation/pop-to-root :shell-stack)
|
||||
(navigate-to-chat chat-id animation)))
|
||||
|
||||
(rf/defn handle-clear-history-response
|
||||
{:events [:chat/history-cleared]}
|
||||
[{:keys [db]} chat-id response]
|
||||
@@ -237,7 +243,7 @@
|
||||
(assoc-in [:chats chat-id] chat)
|
||||
:always
|
||||
(update :chats-home-list conj chat-id))
|
||||
:dispatch [:chat/navigate-to-chat chat-id]}))
|
||||
:dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]}))
|
||||
|
||||
(rf/defn decrease-unviewed-count
|
||||
{:events [:chat/decrease-unviewed-count]}
|
||||
|
||||
@@ -20,7 +20,9 @@
|
||||
:icon-only? true
|
||||
:container-style {:margin-left 20}
|
||||
:accessibility-label :back-button
|
||||
:on-press #(rf/dispatch [:navigate-back])}
|
||||
:on-press (fn []
|
||||
(rf/dispatch [:navigate-back])
|
||||
(rf/dispatch [:chat/close]))}
|
||||
:i/arrow-left])
|
||||
|
||||
(defn options-button
|
||||
@@ -149,77 +151,84 @@
|
||||
:on-press show-profile-actions}})
|
||||
item]))
|
||||
|
||||
(defn f-group-details
|
||||
[]
|
||||
(fn []
|
||||
(rn/use-effect (fn []
|
||||
#(rf/dispatch [:chat/close])))
|
||||
(let [{:keys [admins chat-id chat-name color public?
|
||||
muted contacts]} (rf/sub [:chats/current-chat])
|
||||
members (rf/sub [:contacts/group-members-sections])
|
||||
pinned-messages (rf/sub [:chats/pinned chat-id])
|
||||
current-pk (rf/sub [:multiaccount/public-key])
|
||||
admin? (get admins current-pk)]
|
||||
[rn/view
|
||||
{:style {:flex 1
|
||||
:background-color (colors/theme-colors colors/white colors/neutral-95)}}
|
||||
[quo/header
|
||||
{:left-component [back-button]
|
||||
:right-component [options-button]
|
||||
:background (colors/theme-colors colors/white colors/neutral-95)}]
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:margin-top 24
|
||||
:padding-horizontal 20}}
|
||||
[quo/group-avatar
|
||||
{:customization-color color
|
||||
:size :size-32}]
|
||||
[quo/text
|
||||
{:weight :semi-bold
|
||||
:size :heading-1
|
||||
:style {:margin-horizontal 8}} chat-name]
|
||||
[rn/view {:style {:margin-top 8}}
|
||||
[quo/icon (if public? :i/world :i/privacy)
|
||||
{:size 20 :color (colors/theme-colors colors/neutral-50 colors/neutral-40)}]]]
|
||||
[rn/view {:style (style/actions-view)}
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :pinned-messages
|
||||
:on-press (fn []
|
||||
(rf/dispatch [:dismiss-keyboard])
|
||||
(rf/dispatch [:pin-message/show-pins-bottom-sheet chat-id]))}
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:justify-content :space-between}}
|
||||
[quo/icon :i/pin {:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[count-container (count pinned-messages) :pinned-count]]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label :t/pinned-messages)]]
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :toggle-mute
|
||||
:on-press #(rf/dispatch [:chat.ui/mute chat-id (not muted)
|
||||
(when-not muted constants/mute-till-unmuted)])}
|
||||
[quo/icon (if muted :i/muted :i/activity-center)
|
||||
{:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label (if muted :unmute-group :mute-group))]]
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :manage-members
|
||||
:on-press (fn []
|
||||
(rf/dispatch [:group/clear-added-participants])
|
||||
(rf/dispatch [:group/clear-removed-members])
|
||||
(rf/dispatch [:open-modal :group-add-manage-members]))}
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:justify-content :space-between}}
|
||||
[quo/icon :i/add-user {:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[count-container (count contacts) :members-count]]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label (if admin? :t/manage-members :t/add-members))]]]
|
||||
[rn/section-list
|
||||
{:key-fn :title
|
||||
:sticky-section-headers-enabled false
|
||||
:sections members
|
||||
:render-section-header-fn contacts-section-header
|
||||
:render-data {:chat-id chat-id
|
||||
:admin? admin?}
|
||||
:render-fn contact-item-render}]])))
|
||||
|
||||
(defn group-details
|
||||
[]
|
||||
(let [{:keys [admins chat-id chat-name color public?
|
||||
muted contacts]} (rf/sub [:chats/current-chat])
|
||||
members (rf/sub [:contacts/group-members-sections])
|
||||
pinned-messages (rf/sub [:chats/pinned chat-id])
|
||||
current-pk (rf/sub [:multiaccount/public-key])
|
||||
admin? (get admins current-pk)]
|
||||
[rn/view
|
||||
{:style {:flex 1
|
||||
:background-color (colors/theme-colors colors/white colors/neutral-95)}}
|
||||
[quo/header
|
||||
{:left-component [back-button]
|
||||
:right-component [options-button]
|
||||
:background (colors/theme-colors colors/white colors/neutral-95)}]
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:margin-top 24
|
||||
:padding-horizontal 20}}
|
||||
[quo/group-avatar
|
||||
{:customization-color color
|
||||
:size :size-32}]
|
||||
[quo/text
|
||||
{:weight :semi-bold
|
||||
:size :heading-1
|
||||
:style {:margin-horizontal 8}} chat-name]
|
||||
[rn/view {:style {:margin-top 8}}
|
||||
[quo/icon (if public? :i/world :i/privacy)
|
||||
{:size 20 :color (colors/theme-colors colors/neutral-50 colors/neutral-40)}]]]
|
||||
[rn/view {:style (style/actions-view)}
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :pinned-messages
|
||||
:on-press (fn []
|
||||
(rf/dispatch [:dismiss-keyboard])
|
||||
(rf/dispatch [:pin-message/show-pins-bottom-sheet chat-id]))}
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:justify-content :space-between}}
|
||||
[quo/icon :i/pin {:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[count-container (count pinned-messages) :pinned-count]]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label :t/pinned-messages)]]
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :toggle-mute
|
||||
:on-press #(rf/dispatch [:chat.ui/mute chat-id (not muted)
|
||||
(when-not muted constants/mute-till-unmuted)])}
|
||||
[quo/icon (if muted :i/muted :i/activity-center)
|
||||
{:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label (if muted :unmute-group :mute-group))]]
|
||||
[rn/touchable-opacity
|
||||
{:style (style/action-container color)
|
||||
:accessibility-label :manage-members
|
||||
:on-press (fn []
|
||||
(rf/dispatch [:group/clear-added-participants])
|
||||
(rf/dispatch [:group/clear-removed-members])
|
||||
(rf/dispatch [:open-modal :group-add-manage-members]))}
|
||||
[rn/view
|
||||
{:style {:flex-direction :row
|
||||
:justify-content :space-between}}
|
||||
[quo/icon :i/add-user {:size 20 :color (colors/theme-colors colors/neutral-100 colors/white)}]
|
||||
[count-container (count contacts) :members-count]]
|
||||
[quo/text {:style {:margin-top 16} :size :paragraph-1 :weight :medium}
|
||||
(i18n/label (if admin? :t/manage-members :t/add-members))]]]
|
||||
[rn/section-list
|
||||
{:key-fn :title
|
||||
:sticky-section-headers-enabled false
|
||||
:sections members
|
||||
:render-section-header-fn contacts-section-header
|
||||
:render-data {:chat-id chat-id
|
||||
:admin? admin?}
|
||||
:render-fn contact-item-render}]]))
|
||||
[:f> f-group-details])
|
||||
|
||||
@@ -35,18 +35,15 @@
|
||||
#:tab{:contacts
|
||||
{:title (i18n/label :t/no-contacts)
|
||||
:description (i18n/label :t/no-contacts-description)
|
||||
:image (resources/get-image
|
||||
(quo.theme/theme-value :no-contacts-light :no-contacts-dark theme))}
|
||||
:image (resources/get-themed-image :no-contacts theme)}
|
||||
:groups
|
||||
{:title (i18n/label :t/no-group-chats)
|
||||
:description (i18n/label :t/no-group-chats-description)
|
||||
:image (resources/get-image
|
||||
(quo.theme/theme-value :no-group-chats-light :no-group-chats-dark theme))}
|
||||
:image (resources/get-themed-image :no-group-chats theme)}
|
||||
:recent
|
||||
{:title (i18n/label :t/no-messages)
|
||||
:description (i18n/label :t/no-messages-description)
|
||||
:image (resources/get-image
|
||||
(quo.theme/theme-value :no-messages-light :no-messages-dark theme))}})
|
||||
:image (resources/get-themed-image :cat-in-box theme)}})
|
||||
|
||||
(defn chats
|
||||
[{:keys [theme selected-tab set-scroll-ref scroll-shared-value]}]
|
||||
|
||||
@@ -62,7 +62,8 @@
|
||||
[quo/category
|
||||
{:list-type :settings
|
||||
:data [{:title (i18n/label :t/join-as-a-member)
|
||||
:on-press not-implemented/alert
|
||||
:on-press #(rf/dispatch [:open-modal :addresses-for-permissions
|
||||
{:community-id id}])
|
||||
:description :text
|
||||
:action :arrow
|
||||
:label :preview
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
(ns status-im2.contexts.communities.actions.addresses-for-permissions.style
|
||||
(:require [quo.foundations.colors :as colors]))
|
||||
|
||||
(def container {:flex 1})
|
||||
|
||||
(def account-item-container
|
||||
{:font-size 30
|
||||
:border-radius 16
|
||||
:flex-direction :row
|
||||
:border-width 1
|
||||
:height 56
|
||||
:padding-horizontal 12
|
||||
:align-items :center
|
||||
:margin-bottom 8
|
||||
:gap 8
|
||||
:border-color colors/neutral-90})
|
||||
|
||||
(def buttons
|
||||
{:flex-direction :row
|
||||
:gap 12
|
||||
:padding-horizontal 20
|
||||
:padding-vertical 12})
|
||||
@@ -0,0 +1,58 @@
|
||||
(ns status-im2.contexts.communities.actions.addresses-for-permissions.view
|
||||
(:require [quo.core :as quo]
|
||||
[react-native.core :as rn]
|
||||
[status-im2.common.not-implemented :as not-implemented]
|
||||
[status-im2.contexts.communities.actions.addresses-for-permissions.style :as style]
|
||||
[utils.i18n :as i18n]
|
||||
[utils.re-frame :as rf]))
|
||||
|
||||
(defn- account-item
|
||||
[item]
|
||||
[rn/view
|
||||
{:style style/account-item-container}
|
||||
[quo/account-avatar (assoc item :size 32)]
|
||||
[rn/view
|
||||
[quo/text
|
||||
{:size :paragraph-1
|
||||
:weight :semi-bold}
|
||||
(:name item)]
|
||||
[quo/address-text
|
||||
{:address (:address item)
|
||||
:format :short}]]])
|
||||
|
||||
(defn view
|
||||
[]
|
||||
(let [{id :community-id} (rf/sub [:get-screen-params])
|
||||
{:keys [name color images]} (rf/sub [:communities/community id])
|
||||
accounts (->> (rf/sub [:wallet])
|
||||
:accounts
|
||||
vals
|
||||
(map #(assoc % :customization-color (:color %))))]
|
||||
[rn/safe-area-view {:style style/container}
|
||||
|
||||
[quo/drawer-top
|
||||
{:type :context-tag
|
||||
:title (i18n/label :t/addresses-for-permissions)
|
||||
:community-name name
|
||||
:button-icon :i/info
|
||||
:on-button-press not-implemented/alert
|
||||
:community-logo (get-in images [:thumbnail :uri])
|
||||
:customization-color color}]
|
||||
|
||||
[rn/flat-list
|
||||
{:render-fn account-item
|
||||
:content-container-style {:padding 20}
|
||||
:key-fn :key-uid
|
||||
:data accounts}]
|
||||
|
||||
[rn/view {:style style/buttons}
|
||||
[quo/button
|
||||
{:type :grey
|
||||
:container-style {:flex 1}
|
||||
:on-press #(rf/dispatch [:navigate-back])}
|
||||
(i18n/label :t/cancel)]
|
||||
[quo/button
|
||||
{:container-style {:flex 1}
|
||||
:customization-color color
|
||||
:on-press #(rf/dispatch [:navigate-back])}
|
||||
(i18n/label :t/confirm-changes)]]]))
|
||||
@@ -49,21 +49,15 @@
|
||||
(i18n/label :t/no-communities-description-strikethrough)]
|
||||
" "
|
||||
(i18n/label :t/no-communities-description)]
|
||||
:image (resources/get-image (quo.theme/theme-value :no-communities-light
|
||||
:no-communities-dark
|
||||
theme))}
|
||||
:image (resources/get-themed-image :no-communities theme)}
|
||||
:pending
|
||||
{:title (i18n/label :t/no-pending-communities)
|
||||
:description (i18n/label :t/no-pending-communities-description)
|
||||
:image (resources/get-image (quo.theme/theme-value :no-pending-communities-light
|
||||
:no-pending-communities-dark
|
||||
theme))}
|
||||
:image (resources/get-themed-image :no-pending-communities theme)}
|
||||
:opened
|
||||
{:title (i18n/label :t/no-opened-communities)
|
||||
:description (i18n/label :t/no-opened-communities-description)
|
||||
:image (resources/get-image (quo.theme/theme-value :no-opened-communities-light
|
||||
:no-opened-communities-dark
|
||||
theme))}})
|
||||
:image (resources/get-themed-image :no-opened-communities theme)}})
|
||||
|
||||
(def ^:private banner-data
|
||||
{:title-props
|
||||
|
||||
@@ -9,11 +9,13 @@
|
||||
|
||||
(rf/defn create-profile-and-login
|
||||
{:events [:profile.create/create-and-login]}
|
||||
[_ {:keys [display-name password image-path color]}]
|
||||
{:effects.profile/create-and-login
|
||||
(assoc (profile.config/create)
|
||||
:displayName display-name
|
||||
:password (native-module/sha3 (security/safe-unmask-data password))
|
||||
:imagePath (profile.config/strip-file-prefix image-path)
|
||||
:customizationColor color
|
||||
:emoji (emoji-picker.utils/random-emoji))})
|
||||
[{:keys [db]} {:keys [display-name password image-path color]}]
|
||||
(let [login-sha3-password (native-module/sha3 (security/safe-unmask-data password))]
|
||||
{:db (assoc-in db [:syncing :login-sha3-password] login-sha3-password)
|
||||
:effects.profile/create-and-login
|
||||
(assoc (profile.config/create)
|
||||
:displayName display-name
|
||||
:password login-sha3-password
|
||||
:imagePath (profile.config/strip-file-prefix image-path)
|
||||
:customizationColor color
|
||||
:emoji (emoji-picker.utils/random-emoji))}))
|
||||
|
||||
@@ -33,9 +33,12 @@
|
||||
(rf/defn login
|
||||
{:events [:profile.login/login]}
|
||||
[{:keys [db]}]
|
||||
(let [{:keys [key-uid password]} (:profile/login db)]
|
||||
{:db (assoc-in db [:profile/login :processing] true)
|
||||
:effects.profile/login [key-uid (native-module/sha3 (security/safe-unmask-data password))]}))
|
||||
(let [{:keys [key-uid password]} (:profile/login db)
|
||||
login-sha3-password (native-module/sha3 (security/safe-unmask-data password))]
|
||||
{:db (-> db
|
||||
(assoc-in [:profile/login :processing] true)
|
||||
(assoc-in [:syncing :login-sha3-password] login-sha3-password))
|
||||
:effects.profile/login [key-uid login-sha3-password]}))
|
||||
|
||||
(rf/defn biometrics-login
|
||||
{:events [:profile.login/biometrics-login]}
|
||||
@@ -48,6 +51,10 @@
|
||||
{:events [:profile.login/local-paired-user]}
|
||||
[{:keys [db]}]
|
||||
(let [{:keys [key-uid password]} (get-in db [:syncing :profile])
|
||||
login-sha3-password (get-in db [:syncing :login-sha3-password])
|
||||
password (if-not (nil? login-sha3-password) ;; already logged in
|
||||
login-sha3-password
|
||||
password)
|
||||
masked-password (security/mask-data password)]
|
||||
{:db (-> db
|
||||
(assoc-in [:onboarding/profile :password] masked-password)
|
||||
|
||||
@@ -10,14 +10,17 @@
|
||||
(rf/defn recover-profile-and-login
|
||||
{:events [:profile.recover/recover-and-login]}
|
||||
[{:keys [db]} {:keys [display-name password image-path color seed-phrase]}]
|
||||
{:db
|
||||
(assoc db :onboarding/recovered-account? true)
|
||||
(let [login-sha3-password (native-module/sha3 (security/safe-unmask-data password))]
|
||||
{:db
|
||||
(-> db
|
||||
(assoc :onboarding/recovered-account? true)
|
||||
(assoc-in [:syncing :login-sha3-password] login-sha3-password))
|
||||
|
||||
:effects.profile/restore-and-login
|
||||
(merge (profile.config/create)
|
||||
{:displayName display-name
|
||||
:mnemonic (security/safe-unmask-data seed-phrase)
|
||||
:password (native-module/sha3 (security/safe-unmask-data password))
|
||||
:imagePath (profile.config/strip-file-prefix image-path)
|
||||
:customizationColor color
|
||||
:emoji (emoji-picker.utils/random-emoji)})})
|
||||
:effects.profile/restore-and-login
|
||||
(merge (profile.config/create)
|
||||
{:displayName display-name
|
||||
:mnemonic (security/safe-unmask-data seed-phrase)
|
||||
:password login-sha3-password
|
||||
:imagePath (profile.config/strip-file-prefix image-path)
|
||||
:customizationColor color
|
||||
:emoji (emoji-picker.utils/random-emoji)})}))
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
(ns status-im2.contexts.quo-preview.empty-state.empty-state
|
||||
(:require
|
||||
[quo.core :as quo]
|
||||
[quo.theme]
|
||||
[reagent.core :as reagent]
|
||||
[status-im2.common.resources :as resources]
|
||||
[status-im2.contexts.quo-preview.preview :as preview]))
|
||||
@@ -12,10 +13,8 @@
|
||||
:type :text}
|
||||
{:key :image
|
||||
:type :select
|
||||
:options [{:key :no-contacts-light}
|
||||
{:key :no-contacts-dark}
|
||||
{:key :no-messages-light}
|
||||
{:key :no-messages-dark}]}
|
||||
:options [{:key :cat-in-box}
|
||||
{:key :no-contacts}]}
|
||||
{:key :upper-button-text
|
||||
:type :text}
|
||||
{:key :lower-button-text
|
||||
@@ -23,9 +22,9 @@
|
||||
{:key :blur?
|
||||
:type :boolean}])
|
||||
|
||||
(defn view
|
||||
[]
|
||||
(let [state (reagent/atom {:image :no-messages-light
|
||||
(defn view-internal
|
||||
[{:keys [theme]}]
|
||||
(let [state (reagent/atom {:image :no-contacts
|
||||
:title "A big friendly title"
|
||||
:description "Some cool description will be here"
|
||||
:blur? false
|
||||
@@ -46,4 +45,6 @@
|
||||
(assoc :lower-button
|
||||
{:text (:lower-button-text @state)
|
||||
:on-press #(js/alert "Lower button")})
|
||||
(update :image resources/get-image))]])))
|
||||
(assoc :image (resources/get-themed-image (:image @state) theme)))]])))
|
||||
|
||||
(def view (quo.theme/with-theme view-internal))
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
[gesture/touchable-without-feedback
|
||||
{:on-press (fn []
|
||||
(rf/dispatch [:hide-popover])
|
||||
(rf/dispatch [:chat/navigate-to-chat chat-id]))}
|
||||
(rf/dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]))}
|
||||
child]
|
||||
child))
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
[gesture/touchable-without-feedback
|
||||
{:on-press (fn []
|
||||
(rf/dispatch [:hide-popover])
|
||||
(rf/dispatch [:chat/navigate-to-chat chat-id]))}
|
||||
(rf/dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]))}
|
||||
[quo/activity-log
|
||||
{:title (i18n/label :t/mention)
|
||||
:customization-color customization-color
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
[gesture/touchable-without-feedback
|
||||
{:on-press (fn []
|
||||
(rf/dispatch [:hide-popover])
|
||||
(rf/dispatch [:chat/navigate-to-chat chat-id]))}
|
||||
(rf/dispatch [:chat/pop-to-root-and-navigate-to-chat chat-id]))}
|
||||
[quo/activity-log
|
||||
{:title (i18n/label :t/message-reply)
|
||||
:customization-color customization-color
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
(ns status-im2.contexts.shell.activity-center.tabs.empty-tab.view
|
||||
(:require
|
||||
[quo.core :as quo]
|
||||
[quo.theme]
|
||||
[react-native.core :as rn]
|
||||
[status-im2.common.resources :as resources]
|
||||
[status-im2.contexts.shell.activity-center.notification-types :as types]
|
||||
@@ -8,7 +9,7 @@
|
||||
[utils.i18n :as i18n]
|
||||
[utils.re-frame :as rf]))
|
||||
|
||||
(def empty-tab-description
|
||||
(def ^:private empty-tab-description
|
||||
{types/no-type (i18n/label :t/empty-notifications-all-tab)
|
||||
types/admin (i18n/label :t/empty-notifications-admin-tab)
|
||||
types/mention (i18n/label :t/empty-notifications-mentions-tab)
|
||||
@@ -19,13 +20,15 @@
|
||||
types/membership (i18n/label :t/empty-notifications-membership-tab)
|
||||
types/system (i18n/label :t/empty-notifications-system-tab)})
|
||||
|
||||
(defn empty-tab
|
||||
[]
|
||||
(defn empty-tab-internal
|
||||
[{:keys [theme]}]
|
||||
(let [filter-type (rf/sub [:activity-center/filter-type])
|
||||
description (get empty-tab-description filter-type nil)]
|
||||
[rn/view {:style style/empty-container}
|
||||
[quo/empty-state
|
||||
{:blur? true
|
||||
:image (resources/get-image :no-notifications-dark)
|
||||
:image (resources/get-themed-image :no-notifications theme)
|
||||
:title (i18n/label :t/empty-notifications-title-unread)
|
||||
:description description}]]))
|
||||
|
||||
(def empty-tab (quo.theme/with-theme empty-tab-internal))
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
[clojure.string :as string]
|
||||
[quo.core :as quo]
|
||||
[quo.foundations.resources :as quo.resources]
|
||||
[quo.theme :as quo.theme]
|
||||
[react-native.core :as rn]
|
||||
[status-im2.common.scroll-page.view :as scroll-page]
|
||||
[status-im2.contexts.wallet.collectible.style :as style]
|
||||
@@ -10,11 +11,11 @@
|
||||
[utils.re-frame :as rf]))
|
||||
|
||||
(defn header
|
||||
[{:keys [name description] :as _collectible-details} collection-image-url]
|
||||
[collectible-name description collection-image-url]
|
||||
[rn/view {:style style/header}
|
||||
[quo/text
|
||||
{:weight :semi-bold
|
||||
:size :heading-1} name]
|
||||
:size :heading-1} collectible-name]
|
||||
[rn/view {:style style/collection-container}
|
||||
[rn/view {:style style/collection-avatar-container}
|
||||
[quo/collection-avatar {:image collection-image-url}]]
|
||||
@@ -86,7 +87,8 @@
|
||||
(let [network (rf/sub [:wallet/network-details-by-chain-id
|
||||
chain-id])
|
||||
network-keyword (get network :network-name)
|
||||
network-name (string/capitalize (name network-keyword))]
|
||||
network-name (when network-keyword
|
||||
(string/capitalize (name network-keyword)))]
|
||||
[rn/view
|
||||
{:style style/info-container}
|
||||
[rn/view {:style style/account}
|
||||
@@ -110,29 +112,55 @@
|
||||
:subtitle network-name
|
||||
:subtitle-type :network}]]]))
|
||||
|
||||
(defn view
|
||||
(defn collectible-actions-sheet
|
||||
[]
|
||||
(let [collectible (rf/sub [:wallet/last-collectible-details])
|
||||
[quo/action-drawer
|
||||
[[{:icon :i/messages
|
||||
:accessibility-label :share-opensea-link
|
||||
:label (i18n/label :t/share-opensea-link)}
|
||||
{:icon :i/link
|
||||
:accessibility-label :view-on-eth
|
||||
:label (i18n/label :t/view-on-eth)}
|
||||
{:icon :i/download
|
||||
:accessibility-label :save-image-to-photos
|
||||
:label (i18n/label :t/save-image-to-photos)}
|
||||
{:icon :i/copy
|
||||
:accessibility-label :copy-all-details
|
||||
:label (i18n/label :t/copy-all-details)}
|
||||
{:icon :i/share
|
||||
:accessibility-label :share-details
|
||||
:label (i18n/label :t/share-details)}]]])
|
||||
|
||||
(defn view-internal
|
||||
[{:keys [theme] :as _props}]
|
||||
(let [collectible (rf/sub [:wallet/last-collectible-details])
|
||||
{:keys [collectible-data preview-url
|
||||
collection-data]} collectible
|
||||
{:keys [traits description]} collectible-data
|
||||
chain-id (rf/sub [:wallet/last-collectible-chain-id])]
|
||||
collection-data]} collectible
|
||||
{traits :traits
|
||||
collectible-name :name
|
||||
description :description} collectible-data
|
||||
chain-id (rf/sub [:wallet/last-collectible-chain-id])]
|
||||
[scroll-page/scroll-page
|
||||
{:navigate-back? true
|
||||
:height 148
|
||||
:page-nav-props {:type :title-description
|
||||
:title name
|
||||
:title collectible-name
|
||||
:description description
|
||||
:right-side [{:icon-name :i/options
|
||||
:on-press #(js/alert "pressed")}]
|
||||
:on-press #(rf/dispatch
|
||||
[:show-bottom-sheet
|
||||
{:content collectible-actions-sheet
|
||||
:theme theme}])}]
|
||||
:picture preview-url}}
|
||||
[rn/view {:style style/container}
|
||||
[rn/view {:style style/preview-container}
|
||||
[rn/image
|
||||
{:source preview-url
|
||||
:style style/preview}]]
|
||||
[header collectible-data (:image-url collection-data)]
|
||||
[header collectible-name description (:image-url collection-data)]
|
||||
[cta-buttons]
|
||||
[tabs]
|
||||
[info chain-id]
|
||||
[traits-section traits]]]))
|
||||
|
||||
(def view (quo.theme/with-theme view-internal))
|
||||
|
||||
@@ -67,6 +67,10 @@
|
||||
db
|
||||
(data-store/rpc->accounts wallet-accounts))
|
||||
:fx [[:dispatch [:wallet/get-wallet-token]]
|
||||
[:dispatch
|
||||
[:wallet/request-collectibles
|
||||
{:start-at-index 0
|
||||
:new-request? true}]]
|
||||
(when new-account?
|
||||
[:dispatch [:wallet/navigate-to-new-account navigate-to-account]])]})))
|
||||
|
||||
@@ -276,7 +280,7 @@
|
||||
:max-cache-age-seconds max-cache-age-seconds}
|
||||
request-params [request-id
|
||||
[(chain/chain-id db)]
|
||||
(map :address (:profile/wallet-accounts db))
|
||||
(keys (get-in db [:wallet :accounts]))
|
||||
collectibles-filter
|
||||
start-at-index
|
||||
collectibles-request-batch-size
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
(ns status-im2.contexts.wallet.home.style)
|
||||
(ns status-im2.contexts.wallet.home.style
|
||||
(:require
|
||||
[react-native.safe-area :as safe-area]))
|
||||
|
||||
(def tabs
|
||||
{:padding-horizontal 20
|
||||
:padding-top 8
|
||||
:padding-bottom 12})
|
||||
|
||||
(def accounts-container
|
||||
{:height 112})
|
||||
|
||||
(def overview-container
|
||||
{:height 86})
|
||||
|
||||
@@ -19,7 +18,12 @@
|
||||
(def accounts-list-container
|
||||
{:padding-horizontal 20})
|
||||
|
||||
(def empty-container-style
|
||||
{:justify-content :center
|
||||
:flex 1
|
||||
:margin-bottom 44})
|
||||
(def separator
|
||||
{:width 12})
|
||||
|
||||
(def selected-tab-container
|
||||
{:padding-horizontal 8})
|
||||
|
||||
(def home-container
|
||||
{:margin-top (safe-area/get-top)
|
||||
:flex 1})
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
(:require
|
||||
[quo.core :as quo]
|
||||
[react-native.core :as rn]
|
||||
[react-native.safe-area :as safe-area]
|
||||
[reagent.core :as reagent]
|
||||
[status-im2.common.home.top-nav.view :as common.top-nav]
|
||||
[status-im2.contexts.wallet.common.activity-tab.view :as activity]
|
||||
@@ -40,16 +39,12 @@
|
||||
|
||||
(defn view
|
||||
[]
|
||||
(rf/dispatch [:wallet/request-collectibles
|
||||
{:start-at-index 0
|
||||
:new-request? true}])
|
||||
(let [top (safe-area/get-top)
|
||||
selected-tab (reagent/atom (:id (first tabs-data)))]
|
||||
(let [selected-tab (reagent/atom (:id (first tabs-data)))]
|
||||
(fn []
|
||||
(let [networks (rf/sub [:wallet/network-details])
|
||||
account-cards-data (rf/sub [:wallet/account-cards-data])
|
||||
cards (conj account-cards-data (new-account-card-data))]
|
||||
[rn/view {:style {:margin-top top :flex 1}}
|
||||
[rn/view {:style style/home-container}
|
||||
[common.top-nav/view]
|
||||
[rn/view {:style style/overview-container}
|
||||
[quo/wallet-overview (temp/wallet-overview-state networks)]]
|
||||
@@ -59,7 +54,7 @@
|
||||
:content-container-style style/accounts-list-container
|
||||
:data cards
|
||||
:horizontal true
|
||||
:separator [rn/view {:style {:width 12}}]
|
||||
:separator [rn/view {:style style/separator}]
|
||||
:render-fn quo/account-card
|
||||
:shows-horizontal-scroll-indicator false}]
|
||||
[quo/tabs
|
||||
@@ -73,6 +68,6 @@
|
||||
{:render-fn quo/token-value
|
||||
:data temp/tokens
|
||||
:key :assets-list
|
||||
:content-container-style {:padding-horizontal 8}}]
|
||||
:content-container-style style/selected-tab-container}]
|
||||
:collectibles [collectibles/view]
|
||||
[activity/view])]))))
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
(ns status-im2.contexts.wallet.send.select-address.tabs.view
|
||||
(:require
|
||||
[quo.core :as quo]
|
||||
[quo.theme :as quo.theme]
|
||||
[react-native.gesture :as gesture]
|
||||
[status-im2.common.resources :as resources]
|
||||
[status-im2.contexts.wallet.send.select-address.tabs.style :as style]
|
||||
[utils.i18n :as i18n]
|
||||
[utils.re-frame :as rf]))
|
||||
@@ -15,20 +17,14 @@
|
||||
(rf/dispatch [:navigate-to-within-stack
|
||||
[:wallet-select-asset :wallet-select-address]]))}])
|
||||
|
||||
(def data
|
||||
[{:id :tab/recent :label (i18n/label :t/recent) :accessibility-label :recent-tab}
|
||||
{:id :tab/saved :label (i18n/label :t/saved) :accessibility-label :saved-tab}
|
||||
{:id :tab/contacts :label (i18n/label :t/contacts) :accessibility-label :contacts-tab}
|
||||
{:id :tab/my-accounts :label (i18n/label :t/my-accounts) :accessibility-label :my-accounts-tab}])
|
||||
|
||||
(defn my-accounts
|
||||
[]
|
||||
[theme]
|
||||
(let [other-accounts (rf/sub [:wallet/accounts-without-current-viewing-account])]
|
||||
(if (zero? (count other-accounts))
|
||||
[quo/empty-state
|
||||
{:title (i18n/label :t/no-other-accounts)
|
||||
:description (i18n/label :t/here-is-a-cat-in-a-box-instead)
|
||||
:placeholder? true
|
||||
:image (resources/get-themed-image :cat-in-box theme)
|
||||
:container-style style/empty-container-style}]
|
||||
[gesture/flat-list
|
||||
{:data other-accounts
|
||||
@@ -36,22 +32,24 @@
|
||||
:content-container-style style/my-accounts-container
|
||||
:shows-vertical-scroll-indicator false}])))
|
||||
|
||||
(defn view
|
||||
[selected-tab]
|
||||
(defn view-internal
|
||||
[{:keys [selected-tab theme]}]
|
||||
(case selected-tab
|
||||
:tab/recent [quo/empty-state
|
||||
{:title (i18n/label :t/no-recent-transactions)
|
||||
:description (i18n/label :t/make-one-it-is-easy-we-promise)
|
||||
:placeholder? true
|
||||
:image (resources/get-themed-image :angry-man theme)
|
||||
:container-style style/empty-container-style}]
|
||||
:tab/saved [quo/empty-state
|
||||
{:title (i18n/label :t/no-saved-addresses)
|
||||
:description (i18n/label :t/you-like-to-type-43-characters)
|
||||
:placeholder? true
|
||||
:image (resources/get-themed-image :sweating-man theme)
|
||||
:container-style style/empty-container-style}]
|
||||
:tab/contacts [quo/empty-state
|
||||
{:title (i18n/label :t/no-contacts)
|
||||
:description (i18n/label :t/no-contacts-description)
|
||||
:placeholder? true
|
||||
:image (resources/get-themed-image :no-contacts theme)
|
||||
:container-style style/empty-container-style}]
|
||||
:tab/my-accounts [my-accounts]))
|
||||
:tab/my-accounts [my-accounts theme]))
|
||||
|
||||
(def view (quo.theme/with-theme view-internal))
|
||||
|
||||
@@ -163,7 +163,7 @@
|
||||
:scrollable? true
|
||||
:scroll-on-press? true
|
||||
:on-change on-change-tab}]
|
||||
[tabs/view selected-tab]])]))))
|
||||
[tabs/view {:selected-tab selected-tab}]])]))))
|
||||
|
||||
(defn view
|
||||
[]
|
||||
|
||||
@@ -60,15 +60,12 @@
|
||||
(rf/defn pop-to-root
|
||||
{:events [:pop-to-root]}
|
||||
[{:keys [db]} tab]
|
||||
(merge
|
||||
{:pop-to-root-fx tab
|
||||
:db (-> db
|
||||
(dissoc :shell/floating-screens)
|
||||
(dissoc :shell/loaded-screens)
|
||||
(assoc :view-id (or @shell.state/selected-stack-id :shell)))
|
||||
:effects.shell/pop-to-root nil}
|
||||
(when (:current-chat-id db)
|
||||
{:dispatch-n [[:chat/close]]})))
|
||||
{:pop-to-root-fx tab
|
||||
:db (-> db
|
||||
(dissoc :shell/floating-screens)
|
||||
(dissoc :shell/loaded-screens)
|
||||
(assoc :view-id (or @shell.state/selected-stack-id :shell)))
|
||||
:effects.shell/pop-to-root nil})
|
||||
|
||||
(rf/defn init-root
|
||||
{:events [:init-root]}
|
||||
|
||||
@@ -11,6 +11,8 @@
|
||||
[status-im2.contexts.chat.new-chat.view :as new-chat]
|
||||
[status-im2.contexts.chat.photo-selector.view :as photo-selector]
|
||||
[status-im2.contexts.communities.actions.accounts-selection.view :as communities.accounts-selection]
|
||||
[status-im2.contexts.communities.actions.addresses-for-permissions.view :as
|
||||
addresses-for-permissions]
|
||||
[status-im2.contexts.communities.actions.request-to-join.view :as join-menu]
|
||||
[status-im2.contexts.communities.discover.view :as communities.discover]
|
||||
[status-im2.contexts.communities.overview.view :as communities.overview]
|
||||
@@ -98,6 +100,10 @@
|
||||
:options {:sheet? true}
|
||||
:component communities.accounts-selection/view}
|
||||
|
||||
{:name :addresses-for-permissions
|
||||
:options {:sheet? true}
|
||||
:component addresses-for-permissions/view}
|
||||
|
||||
{:name :lightbox
|
||||
:options options/lightbox
|
||||
:component lightbox/lightbox}
|
||||
@@ -352,4 +358,3 @@
|
||||
|
||||
(when config/quo-preview-enabled?
|
||||
status-im-preview/main-screens)))
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"_comment": "Instead use: scripts/update-status-go.sh <rev>",
|
||||
"owner": "status-im",
|
||||
"repo": "status-go",
|
||||
"version": "v0.171.31",
|
||||
"commit-sha1": "271778a1e07e585a12790b4e2226f13e36ea89f4",
|
||||
"src-sha256": "1c998kyhya98a0zp795i3xrx2r08yjdaifb32ylr4snjjln6k34c"
|
||||
"version": "e17f4c4818800483bdb938ea38d4b98b556afc49",
|
||||
"commit-sha1": "e17f4c4818800483bdb938ea38d4b98b556afc49",
|
||||
"src-sha256": "1y9rf8kwd6dfa32b6yb8qm2dd9ai730kyhvsky5nv7jqhiglmh8r"
|
||||
}
|
||||
|
||||
@@ -245,7 +245,6 @@ class TestActivityMultipleDevicePR(MultipleSharedDeviceTestCase):
|
||||
self.home_1.get_to_community_channel_from_home(self.community_name)
|
||||
|
||||
self.chat_2 = self.home_2.get_chat(self.username_1).click()
|
||||
self.chat_2.chat_element_by_text(self.community_name).view_community_button.click()
|
||||
self.community_2.join_community()
|
||||
self.channel_2 = self.community_2.get_channel(self.channel_name).click()
|
||||
|
||||
@@ -387,7 +386,6 @@ class TestActivityMultipleDevicePRTwo(MultipleSharedDeviceTestCase):
|
||||
self.home_1.get_to_community_channel_from_home(self.community_name)
|
||||
|
||||
self.chat_2 = self.home_2.get_chat(self.username_1).click()
|
||||
self.chat_2.chat_element_by_text(self.community_name).view_community_button.click()
|
||||
self.community_2.join_community()
|
||||
self.channel_2 = self.community_2.get_channel(self.channel_name).click()
|
||||
self.channel_2.chat_message_input.wait_for_visibility_of_element(20)
|
||||
@@ -448,7 +446,6 @@ class TestActivityMultipleDevicePRTwo(MultipleSharedDeviceTestCase):
|
||||
self.home_2.navigate_back_to_home_view()
|
||||
self.home_2.chats_tab.click()
|
||||
self.chat_2 = self.home_2.get_chat(self.username_1).click()
|
||||
self.chat_2.chat_element_by_text(community_name).view_community_button.wait_and_click(sec=60)
|
||||
self.community_2.join_community(open_community=False)
|
||||
for home in self.home_1, self.home_2:
|
||||
home.navigate_back_to_home_view()
|
||||
|
||||
@@ -317,7 +317,6 @@ class TestCommunityMultipleDeviceMerged(MultipleSharedDeviceTestCase):
|
||||
|
||||
self.home_2.just_fyi("Send message to contact (need for blocking contact) test")
|
||||
self.chat_2.send_message(self.text_message)
|
||||
self.chat_2.chat_element_by_text(self.community_name).view_community_button.click()
|
||||
self.community_2.join_community()
|
||||
self.channel_2 = self.community_2.get_channel(self.channel_name).click()
|
||||
self.channel_2.chat_message_input.wait_for_visibility_of_element(20)
|
||||
@@ -838,7 +837,6 @@ class TestCommunityMultipleDeviceMergedTwo(MultipleSharedDeviceTestCase):
|
||||
|
||||
self.home_2.just_fyi("Send message to contact (need for blocking contact) test")
|
||||
self.chat_2.send_message(self.text_message)
|
||||
self.chat_2.chat_element_by_text(self.community_name).view_community_button.click()
|
||||
self.community_2.join_community()
|
||||
self.channel_2 = self.community_2.get_channel(self.channel_name).click()
|
||||
|
||||
@@ -1014,7 +1012,6 @@ class TestCommunityMultipleDeviceMergedTwo(MultipleSharedDeviceTestCase):
|
||||
self.home_2.get_chat(self.username_1).click()
|
||||
control_message_1_1_chat = "it is just a message text"
|
||||
self.chat_2.send_message(control_message_1_1_chat)
|
||||
self.chat_2.chat_element_by_text(community_name).view_community_button.click()
|
||||
self.community_2.join_community(open_community=False)
|
||||
|
||||
self.home_1.just_fyi("Device 1 accepts the community request")
|
||||
@@ -1098,7 +1095,6 @@ class TestCommunityMultipleDeviceMergedTwo(MultipleSharedDeviceTestCase):
|
||||
self.home_2.just_fyi("Device 2 requests to join the community")
|
||||
self.home_2.jump_to_messages_home()
|
||||
self.home_2.get_chat(self.username_1).click()
|
||||
self.chat_2.chat_element_by_text(community_name).view_community_button.click()
|
||||
self.community_2.join_community(open_community=False)
|
||||
exp_text = "You requested to join “%s”" % community_name
|
||||
if self.community_2.toast_content_element.is_element_displayed(10):
|
||||
|
||||
@@ -322,10 +322,6 @@ class ChatElementByText(Text):
|
||||
|
||||
return PinnedByLabelText(self.driver, self.locator)
|
||||
|
||||
@property
|
||||
def view_community_button(self):
|
||||
return BaseElement(self.driver, xpath=self.locator + "//*[@text='View']")
|
||||
|
||||
|
||||
class UsernameOptions(Button):
|
||||
def __init__(self, driver, username):
|
||||
@@ -425,6 +421,7 @@ class CommunityView(HomeView):
|
||||
|
||||
def join_community(self, password=common_password, open_community=True):
|
||||
self.driver.info("Joining community")
|
||||
ChatView(self.driver).chat_element_by_text("https://status.app/c/").click_on_link_inside_message_body()
|
||||
self.join_button.click()
|
||||
self.join_community_button.scroll_and_click()
|
||||
self.password_input.send_keys(password)
|
||||
|
||||
@@ -178,6 +178,8 @@
|
||||
},
|
||||
"community-rules": "Community rules",
|
||||
"address-to-share": "Addresses to share",
|
||||
"addresses-for-permissions": "Addresses for permissions",
|
||||
"confirm-changes": "Confirm changes",
|
||||
"join-as-a-member": "Join as a Member",
|
||||
"all-addresses": "All addresses",
|
||||
"for-airdrops": "For airdrops",
|
||||
@@ -2429,5 +2431,10 @@
|
||||
"backup-step-4": "I know I can only see it once",
|
||||
"reveal-phrase": "Reveal phrase",
|
||||
"i-have-written": "I have written it down on paper",
|
||||
"next-you-will": "Next, you will be asked to confirm the position of certain words in your recovery phrase"
|
||||
"next-you-will": "Next, you will be asked to confirm the position of certain words in your recovery phrase",
|
||||
"share-opensea-link": "Share OpenSea link",
|
||||
"save-image-to-photos": "Save image to Photos",
|
||||
"copy-all-details": "Copy all details",
|
||||
"share-details": "Share details",
|
||||
"what-are-you-waiting-for": "What are you waiting for?"
|
||||
}
|
||||
|
||||
@@ -31,13 +31,6 @@
|
||||
dependencies:
|
||||
"@babel/highlight" "^7.16.7"
|
||||
|
||||
"@babel/code-frame@^7.21.4":
|
||||
version "7.21.4"
|
||||
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39"
|
||||
integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==
|
||||
dependencies:
|
||||
"@babel/highlight" "^7.18.6"
|
||||
|
||||
"@babel/code-frame@^7.22.13":
|
||||
version "7.22.13"
|
||||
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e"
|
||||
@@ -137,16 +130,6 @@
|
||||
"@jridgewell/trace-mapping" "^0.3.17"
|
||||
jsesc "^2.5.1"
|
||||
|
||||
"@babel/generator@^7.21.5":
|
||||
version "7.21.9"
|
||||
resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.9.tgz#3a1b706e07d836e204aee0650e8ee878d3aaa241"
|
||||
integrity sha512-F3fZga2uv09wFdEjEQIJxXALXfz0+JaOb7SabvVMmjHxeVTuGW8wgE8Vp1Hd7O+zMTYtcfEISGRzPkeiaPPsvg==
|
||||
dependencies:
|
||||
"@babel/types" "^7.21.5"
|
||||
"@jridgewell/gen-mapping" "^0.3.2"
|
||||
"@jridgewell/trace-mapping" "^0.3.17"
|
||||
jsesc "^2.5.1"
|
||||
|
||||
"@babel/generator@^7.4.0", "@babel/generator@^7.9.5":
|
||||
version "7.9.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.5.tgz#27f0917741acc41e6eaaced6d68f96c3fa9afaf9"
|
||||
@@ -264,6 +247,21 @@
|
||||
"@babel/helper-split-export-declaration" "^7.22.6"
|
||||
semver "^6.3.1"
|
||||
|
||||
"@babel/helper-create-class-features-plugin@^7.23.6":
|
||||
version "7.23.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.6.tgz#b04d915ce92ce363666f816a884cdcfc9be04953"
|
||||
integrity sha512-cBXU1vZni/CpGF29iTu4YRbOZt3Wat6zCoMDxRF1MayiEc4URxOj31tT65HUM0CRpMowA3HCJaAOVOUnMf96cw==
|
||||
dependencies:
|
||||
"@babel/helper-annotate-as-pure" "^7.22.5"
|
||||
"@babel/helper-environment-visitor" "^7.22.20"
|
||||
"@babel/helper-function-name" "^7.23.0"
|
||||
"@babel/helper-member-expression-to-functions" "^7.23.0"
|
||||
"@babel/helper-optimise-call-expression" "^7.22.5"
|
||||
"@babel/helper-replace-supers" "^7.22.20"
|
||||
"@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
|
||||
"@babel/helper-split-export-declaration" "^7.22.6"
|
||||
semver "^6.3.1"
|
||||
|
||||
"@babel/helper-create-regexp-features-plugin@^7.18.6":
|
||||
version "7.22.15"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1"
|
||||
@@ -332,11 +330,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"
|
||||
integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==
|
||||
|
||||
"@babel/helper-environment-visitor@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz#c769afefd41d171836f7cb63e295bedf689d48ba"
|
||||
integrity sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==
|
||||
|
||||
"@babel/helper-environment-visitor@^7.22.20":
|
||||
version "7.22.20"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167"
|
||||
@@ -437,6 +430,13 @@
|
||||
dependencies:
|
||||
"@babel/types" "^7.22.15"
|
||||
|
||||
"@babel/helper-member-expression-to-functions@^7.23.0":
|
||||
version "7.23.0"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366"
|
||||
integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==
|
||||
dependencies:
|
||||
"@babel/types" "^7.23.0"
|
||||
|
||||
"@babel/helper-module-imports@^7.18.6":
|
||||
version "7.18.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e"
|
||||
@@ -444,13 +444,6 @@
|
||||
dependencies:
|
||||
"@babel/types" "^7.18.6"
|
||||
|
||||
"@babel/helper-module-imports@^7.21.4":
|
||||
version "7.21.4"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz#ac88b2f76093637489e718a90cec6cf8a9b029af"
|
||||
integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==
|
||||
dependencies:
|
||||
"@babel/types" "^7.21.4"
|
||||
|
||||
"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.22.5":
|
||||
version "7.22.15"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0"
|
||||
@@ -483,20 +476,6 @@
|
||||
"@babel/traverse" "^7.21.2"
|
||||
"@babel/types" "^7.21.2"
|
||||
|
||||
"@babel/helper-module-transforms@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz#d937c82e9af68d31ab49039136a222b17ac0b420"
|
||||
integrity sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==
|
||||
dependencies:
|
||||
"@babel/helper-environment-visitor" "^7.21.5"
|
||||
"@babel/helper-module-imports" "^7.21.4"
|
||||
"@babel/helper-simple-access" "^7.21.5"
|
||||
"@babel/helper-split-export-declaration" "^7.18.6"
|
||||
"@babel/helper-validator-identifier" "^7.19.1"
|
||||
"@babel/template" "^7.20.7"
|
||||
"@babel/traverse" "^7.21.5"
|
||||
"@babel/types" "^7.21.5"
|
||||
|
||||
"@babel/helper-module-transforms@^7.22.15", "@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.22.9":
|
||||
version "7.22.17"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.17.tgz#7edf129097a51ccc12443adbc6320e90eab76693"
|
||||
@@ -508,6 +487,17 @@
|
||||
"@babel/helper-split-export-declaration" "^7.22.6"
|
||||
"@babel/helper-validator-identifier" "^7.22.15"
|
||||
|
||||
"@babel/helper-module-transforms@^7.23.3":
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1"
|
||||
integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==
|
||||
dependencies:
|
||||
"@babel/helper-environment-visitor" "^7.22.20"
|
||||
"@babel/helper-module-imports" "^7.22.15"
|
||||
"@babel/helper-simple-access" "^7.22.5"
|
||||
"@babel/helper-split-export-declaration" "^7.22.6"
|
||||
"@babel/helper-validator-identifier" "^7.22.20"
|
||||
|
||||
"@babel/helper-optimise-call-expression@^7.16.7":
|
||||
version "7.16.7"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2"
|
||||
@@ -554,11 +544,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz#86c2347da5acbf5583ba0a10aed4c9bf9da9cf96"
|
||||
integrity sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==
|
||||
|
||||
"@babel/helper-plugin-utils@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz#345f2377d05a720a4e5ecfa39cbf4474a4daed56"
|
||||
integrity sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==
|
||||
|
||||
"@babel/helper-plugin-utils@^7.22.5":
|
||||
version "7.22.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295"
|
||||
@@ -613,6 +598,15 @@
|
||||
"@babel/traverse" "^7.20.7"
|
||||
"@babel/types" "^7.20.7"
|
||||
|
||||
"@babel/helper-replace-supers@^7.22.20":
|
||||
version "7.22.20"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793"
|
||||
integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==
|
||||
dependencies:
|
||||
"@babel/helper-environment-visitor" "^7.22.20"
|
||||
"@babel/helper-member-expression-to-functions" "^7.22.15"
|
||||
"@babel/helper-optimise-call-expression" "^7.22.5"
|
||||
|
||||
"@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9":
|
||||
version "7.22.9"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz#cbdc27d6d8d18cd22c81ae4293765a5d9afd0779"
|
||||
@@ -629,13 +623,6 @@
|
||||
dependencies:
|
||||
"@babel/types" "^7.20.2"
|
||||
|
||||
"@babel/helper-simple-access@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz#d697a7971a5c39eac32c7e63c0921c06c8a249ee"
|
||||
integrity sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==
|
||||
dependencies:
|
||||
"@babel/types" "^7.21.5"
|
||||
|
||||
"@babel/helper-simple-access@^7.22.5":
|
||||
version "7.22.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de"
|
||||
@@ -839,11 +826,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.3.tgz#1d285d67a19162ff9daa358d4cb41d50c06220b3"
|
||||
integrity sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==
|
||||
|
||||
"@babel/parser@^7.21.5":
|
||||
version "7.21.9"
|
||||
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.9.tgz#ab18ea3b85b4bc33ba98a8d4c2032c557d23cf14"
|
||||
integrity sha512-q5PNg/Bi1OpGgx5jYlvWZwAorZepEudDMCLtj967aeS7WMont7dUZI46M2XwcIQqvUlMxWfdLFu4S/qSxeUu5g==
|
||||
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.15":
|
||||
version "7.22.15"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz#02dc8a03f613ed5fdc29fb2f728397c78146c962"
|
||||
@@ -1056,6 +1038,13 @@
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.20.2"
|
||||
|
||||
"@babel/plugin-syntax-jsx@^7.23.3":
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473"
|
||||
integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
|
||||
"@babel/plugin-syntax-logical-assignment-operators@^7.10.4":
|
||||
version "7.10.4"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
|
||||
@@ -1140,6 +1129,13 @@
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.19.0"
|
||||
|
||||
"@babel/plugin-syntax-typescript@^7.23.3":
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f"
|
||||
integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
|
||||
"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
|
||||
version "7.18.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357"
|
||||
@@ -1441,15 +1437,6 @@
|
||||
"@babel/helper-plugin-utils" "^7.20.2"
|
||||
"@babel/helper-simple-access" "^7.20.2"
|
||||
|
||||
"@babel/plugin-transform-modules-commonjs@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz#d69fb947eed51af91de82e4708f676864e5e47bc"
|
||||
integrity sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==
|
||||
dependencies:
|
||||
"@babel/helper-module-transforms" "^7.21.5"
|
||||
"@babel/helper-plugin-utils" "^7.21.5"
|
||||
"@babel/helper-simple-access" "^7.21.5"
|
||||
|
||||
"@babel/plugin-transform-modules-commonjs@^7.22.15":
|
||||
version "7.22.15"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.15.tgz#b11810117ed4ee7691b29bd29fd9f3f98276034f"
|
||||
@@ -1459,6 +1446,15 @@
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
"@babel/helper-simple-access" "^7.22.5"
|
||||
|
||||
"@babel/plugin-transform-modules-commonjs@^7.23.3":
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4"
|
||||
integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==
|
||||
dependencies:
|
||||
"@babel/helper-module-transforms" "^7.23.3"
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
"@babel/helper-simple-access" "^7.22.5"
|
||||
|
||||
"@babel/plugin-transform-modules-systemjs@^7.22.11":
|
||||
version "7.22.11"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.11.tgz#3386be5875d316493b517207e8f1931d93154bb1"
|
||||
@@ -1517,11 +1513,11 @@
|
||||
"@babel/plugin-syntax-numeric-separator" "^7.10.4"
|
||||
|
||||
"@babel/plugin-transform-object-assign@^7.16.7":
|
||||
version "7.18.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.18.6.tgz#7830b4b6f83e1374a5afb9f6111bcfaea872cdd2"
|
||||
integrity sha512-mQisZ3JfqWh2gVXvfqYCAAyRs6+7oev+myBsTwW5RnPhYXOTuCEw2oe3YgxlXMViXUS53lG8koulI7mJ+8JE+A==
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.23.3.tgz#64177e8cf943460c7f0e1c410277546804f59625"
|
||||
integrity sha512-TPJ6O7gVC2rlQH2hvQGRH273G1xdoloCj9Pc07Q7JbIZYDi+Sv5gaE2fu+r5E7qK4zyt6vj0FbZaZTRU5C3OMA==
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.18.6"
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
|
||||
"@babel/plugin-transform-object-rest-spread@^7.22.15":
|
||||
version "7.22.15"
|
||||
@@ -1791,6 +1787,16 @@
|
||||
"@babel/helper-plugin-utils" "^7.20.2"
|
||||
"@babel/plugin-syntax-typescript" "^7.20.0"
|
||||
|
||||
"@babel/plugin-transform-typescript@^7.23.3":
|
||||
version "7.23.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz#aa36a94e5da8d94339ae3a4e22d40ed287feb34c"
|
||||
integrity sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==
|
||||
dependencies:
|
||||
"@babel/helper-annotate-as-pure" "^7.22.5"
|
||||
"@babel/helper-create-class-features-plugin" "^7.23.6"
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
"@babel/plugin-syntax-typescript" "^7.23.3"
|
||||
|
||||
"@babel/plugin-transform-unicode-escapes@^7.22.10":
|
||||
version "7.22.10"
|
||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz#c723f380f40a2b2f57a62df24c9005834c8616d9"
|
||||
@@ -1958,15 +1964,15 @@
|
||||
"@babel/plugin-transform-typescript" "^7.21.3"
|
||||
|
||||
"@babel/preset-typescript@^7.16.7":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.21.5.tgz#68292c884b0e26070b4d66b202072d391358395f"
|
||||
integrity sha512-iqe3sETat5EOrORXiQ6rWfoOg2y68Cs75B9wNxdPW4kixJxh7aXQE1KPdWLDniC24T/6dSnguF33W9j/ZZQcmA==
|
||||
version "7.23.3"
|
||||
resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz#14534b34ed5b6d435aa05f1ae1c5e7adcc01d913"
|
||||
integrity sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==
|
||||
dependencies:
|
||||
"@babel/helper-plugin-utils" "^7.21.5"
|
||||
"@babel/helper-validator-option" "^7.21.0"
|
||||
"@babel/plugin-syntax-jsx" "^7.21.4"
|
||||
"@babel/plugin-transform-modules-commonjs" "^7.21.5"
|
||||
"@babel/plugin-transform-typescript" "^7.21.3"
|
||||
"@babel/helper-plugin-utils" "^7.22.5"
|
||||
"@babel/helper-validator-option" "^7.22.15"
|
||||
"@babel/plugin-syntax-jsx" "^7.23.3"
|
||||
"@babel/plugin-transform-modules-commonjs" "^7.23.3"
|
||||
"@babel/plugin-transform-typescript" "^7.23.3"
|
||||
|
||||
"@babel/preset-typescript@^7.17.12":
|
||||
version "7.17.12"
|
||||
@@ -2151,22 +2157,6 @@
|
||||
debug "^4.1.0"
|
||||
globals "^11.1.0"
|
||||
|
||||
"@babel/traverse@^7.21.5":
|
||||
version "7.21.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.5.tgz#ad22361d352a5154b498299d523cf72998a4b133"
|
||||
integrity sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.21.4"
|
||||
"@babel/generator" "^7.21.5"
|
||||
"@babel/helper-environment-visitor" "^7.21.5"
|
||||
"@babel/helper-function-name" "^7.21.0"
|
||||
"@babel/helper-hoist-variables" "^7.18.6"
|
||||
"@babel/helper-split-export-declaration" "^7.18.6"
|
||||
"@babel/parser" "^7.21.5"
|
||||
"@babel/types" "^7.21.5"
|
||||
debug "^4.1.0"
|
||||
globals "^11.1.0"
|
||||
|
||||
"@babel/types@^7.0.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.17.12", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.5":
|
||||
version "7.17.12"
|
||||
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.12.tgz#1210690a516489c0200f355d87619157fbbd69a0"
|
||||
@@ -2175,7 +2165,7 @@
|
||||
"@babel/helper-validator-identifier" "^7.16.7"
|
||||
to-fast-properties "^2.0.0"
|
||||
|
||||
"@babel/types@^7.18.10", "@babel/types@^7.18.2", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.2", "@babel/types@^7.21.3", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.22.10", "@babel/types@^7.22.15", "@babel/types@^7.22.17", "@babel/types@^7.22.5", "@babel/types@^7.23.0":
|
||||
"@babel/types@^7.18.10", "@babel/types@^7.18.2", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.2", "@babel/types@^7.21.3", "@babel/types@^7.22.10", "@babel/types@^7.22.15", "@babel/types@^7.22.17", "@babel/types@^7.22.5", "@babel/types@^7.23.0":
|
||||
version "7.23.0"
|
||||
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb"
|
||||
integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==
|
||||
@@ -9243,10 +9233,10 @@ react-native-randombytes@^3.5.1, react-native-randombytes@^3.6.1:
|
||||
buffer "^4.9.1"
|
||||
sjcl "^1.0.3"
|
||||
|
||||
react-native-reanimated@3.5.4:
|
||||
version "3.5.4"
|
||||
resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.5.4.tgz#a6c2b0c43b6dad246f5d276213974afedb8e3fc7"
|
||||
integrity sha512-8we9LLDO1o4Oj9/DICeEJ2K1tjfqkJagqQUglxeUAkol/HcEJ6PGxIrpBcNryLqCDYEcu6FZWld/FzizBIw6bg==
|
||||
react-native-reanimated@3.6.1:
|
||||
version "3.6.1"
|
||||
resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.6.1.tgz#5add41efafac6d0befd9786e752e7f26dbe903b7"
|
||||
integrity sha512-F4vG9Yf9PKmE3GaWtVGUpzj3SM6YY2cx1yRHCwiMd1uY7W0gU017LfcVUorboJnj0y5QZqEriEK1Usq2Y8YZqg==
|
||||
dependencies:
|
||||
"@babel/plugin-transform-object-assign" "^7.16.7"
|
||||
"@babel/preset-typescript" "^7.16.7"
|
||||
|
||||