BIN
resources/images/ui2/no-activity-dark@2x.png
Normal file
After Width: | Height: | Size: 8.7 KiB |
BIN
resources/images/ui2/no-activity-dark@3x.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
resources/images/ui2/no-activity-light@2x.png
Normal file
After Width: | Height: | Size: 8.7 KiB |
BIN
resources/images/ui2/no-activity-light@3x.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
resources/images/ui2/no-collectibles-dark@2x.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
resources/images/ui2/no-collectibles-dark@3x.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
resources/images/ui2/no-collectibles-light@2x.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
resources/images/ui2/no-collectibles-light@3x.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
resources/images/ui2/no-dapps-dark@2x.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
resources/images/ui2/no-dapps-dark@3x.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
resources/images/ui2/no-dapps-light@2x.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
resources/images/ui2/no-dapps-light@3x.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
resources/images/ui2/no-funds-dark@2x.png
Normal file
After Width: | Height: | Size: 61 KiB |
BIN
resources/images/ui2/no-funds-dark@3x.png
Normal file
After Width: | Height: | Size: 114 KiB |
BIN
resources/images/ui2/no-funds-light@2x.png
Normal file
After Width: | Height: | Size: 40 KiB |
BIN
resources/images/ui2/no-funds-light@3x.png
Normal file
After Width: | Height: | Size: 75 KiB |
BIN
resources/images/ui2/no-permissions-dark@2x.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
resources/images/ui2/no-permissions-dark@3x.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
resources/images/ui2/no-permissions-light@2x.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
resources/images/ui2/no-permissions-light@3x.png
Normal file
After Width: | Height: | Size: 30 KiB |
@ -19,3 +19,7 @@
|
|||||||
:background-color colors/danger-50
|
:background-color colors/danger-50
|
||||||
:align-items :center
|
:align-items :center
|
||||||
:justify-content :center})
|
:justify-content :center})
|
||||||
|
|
||||||
|
(def empty-state
|
||||||
|
{:width 375
|
||||||
|
:height 116})
|
||||||
|
@ -2,11 +2,12 @@
|
|||||||
(:require
|
(:require
|
||||||
[quo.components.graph.utils :as utils]
|
[quo.components.graph.utils :as utils]
|
||||||
[quo.components.graph.wallet-graph.style :as style]
|
[quo.components.graph.wallet-graph.style :as style]
|
||||||
[quo.components.markdown.text :as text]
|
|
||||||
[quo.foundations.colors :as colors]
|
[quo.foundations.colors :as colors]
|
||||||
|
[quo.foundations.resources :as resources]
|
||||||
[quo.theme :as quo.theme]
|
[quo.theme :as quo.theme]
|
||||||
[react-native.charts :as charts]
|
[react-native.charts :as charts]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
|
[react-native.fast-image :as fast-image]
|
||||||
[react-native.linear-gradient :as linear-gradient]))
|
[react-native.linear-gradient :as linear-gradient]))
|
||||||
|
|
||||||
(defn- time-frame->max-data-points
|
(defn- time-frame->max-data-points
|
||||||
@ -42,11 +43,10 @@
|
|||||||
gradient-colors [(colors/alpha line-color 0.1) (colors/alpha line-color 0)]
|
gradient-colors [(colors/alpha line-color 0.1) (colors/alpha line-color 0)]
|
||||||
fill-color (colors/theme-colors colors/white colors/neutral-95)]
|
fill-color (colors/theme-colors colors/white colors/neutral-95)]
|
||||||
(if (= time-frame :empty)
|
(if (= time-frame :empty)
|
||||||
[rn/view
|
[fast-image/fast-image
|
||||||
{:accessibility-label :illustration
|
{:style style/empty-state
|
||||||
:style style/illustration}
|
:source (resources/get-themed-image :no-funds theme)
|
||||||
[text/text {:style {:color colors/white}}
|
:accessibility-label :illustration}]
|
||||||
"Illustration here"]]
|
|
||||||
[rn/view
|
[rn/view
|
||||||
[linear-gradient/linear-gradient
|
[linear-gradient/linear-gradient
|
||||||
{:colors gradient-colors
|
{:colors gradient-colors
|
||||||
|
@ -7,6 +7,15 @@
|
|||||||
:keycard-watermark (js/require "../resources/images/ui2/keycard-watermark.png")
|
:keycard-watermark (js/require "../resources/images/ui2/keycard-watermark.png")
|
||||||
:bored-ape (js/require "../resources/images/mock2/bored-ape.png")})
|
:bored-ape (js/require "../resources/images/mock2/bored-ape.png")})
|
||||||
|
|
||||||
|
(def ui-themed
|
||||||
|
{:no-funds
|
||||||
|
{:light (js/require "../resources/images/ui2/no-funds-light.png")
|
||||||
|
:dark (js/require "../resources/images/ui2/no-funds-dark.png")}})
|
||||||
|
|
||||||
|
(defn get-themed-image
|
||||||
|
[k theme]
|
||||||
|
(get-in ui-themed [k theme]))
|
||||||
|
|
||||||
(defn get-image
|
(defn get-image
|
||||||
[k]
|
[k]
|
||||||
(get ui k))
|
(get ui k))
|
||||||
|
@ -79,7 +79,19 @@
|
|||||||
:dark (js/require "../resources/images/ui2/no-contacts-to-invite-dark.png")}
|
:dark (js/require "../resources/images/ui2/no-contacts-to-invite-dark.png")}
|
||||||
:no-notifications
|
:no-notifications
|
||||||
{:light (js/require "../resources/images/ui2/no-notifications-light.png")
|
{:light (js/require "../resources/images/ui2/no-notifications-light.png")
|
||||||
:dark (js/require "../resources/images/ui2/no-notifications-dark.png")}})
|
:dark (js/require "../resources/images/ui2/no-notifications-dark.png")}
|
||||||
|
:no-activity
|
||||||
|
{:light (js/require "../resources/images/ui2/no-activity-light.png")
|
||||||
|
:dark (js/require "../resources/images/ui2/no-activity-dark.png")}
|
||||||
|
:no-collectibles
|
||||||
|
{:light (js/require "../resources/images/ui2/no-collectibles-light.png")
|
||||||
|
:dark (js/require "../resources/images/ui2/no-collectibles-dark.png")}
|
||||||
|
:no-dapps
|
||||||
|
{:light (js/require "../resources/images/ui2/no-dapps-light.png")
|
||||||
|
: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")}})
|
||||||
|
|
||||||
(def mock-images
|
(def mock-images
|
||||||
{:bored-ape (js/require "../resources/images/mock2/bored-ape.png")
|
{:bored-ape (js/require "../resources/images/mock2/bored-ape.png")
|
||||||
|
@ -3,11 +3,10 @@
|
|||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
[quo.theme :as quo.theme]
|
[quo.theme :as quo.theme]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
|
[status-im2.common.resources :as resources]
|
||||||
[status-im2.contexts.wallet.account.tabs.dapps.style :as style]
|
[status-im2.contexts.wallet.account.tabs.dapps.style :as style]
|
||||||
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
||||||
[status-im2.contexts.wallet.common.temp :as temp]
|
[utils.i18n :as i18n]))
|
||||||
[utils.i18n :as i18n]
|
|
||||||
[utils.re-frame :as rf]))
|
|
||||||
|
|
||||||
(defn dapp-options
|
(defn dapp-options
|
||||||
[]
|
[]
|
||||||
@ -23,13 +22,12 @@
|
|||||||
|
|
||||||
(defn- view-internal
|
(defn- view-internal
|
||||||
[{:keys [theme]}]
|
[{:keys [theme]}]
|
||||||
(let [dapps-list (temp/dapps-list {:on-press-icon #(rf/dispatch [:show-bottom-sheet
|
(let [dapps-list []]
|
||||||
{:content dapp-options}])})]
|
|
||||||
(if (empty? dapps-list)
|
(if (empty? dapps-list)
|
||||||
[empty-tab/view
|
[empty-tab/view
|
||||||
{:title (i18n/label :t/no-dapps)
|
{:title (i18n/label :t/no-dapps)
|
||||||
:description (i18n/label :t/no-collectibles-description)
|
:description (i18n/label :t/no-dapps-description)
|
||||||
:placeholder? true}]
|
:image (resources/get-themed-image :no-dapps theme)}]
|
||||||
[rn/view {:style style/dapps-container}
|
[rn/view {:style style/dapps-container}
|
||||||
[rn/flat-list
|
[rn/flat-list
|
||||||
{:data dapps-list
|
{:data dapps-list
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
(ns status-im2.contexts.wallet.account.tabs.view
|
(ns status-im2.contexts.wallet.account.tabs.view
|
||||||
(:require
|
(:require
|
||||||
|
[quo.theme]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
|
[status-im2.common.resources :as resources]
|
||||||
[status-im2.contexts.wallet.account.tabs.about.view :as about]
|
[status-im2.contexts.wallet.account.tabs.about.view :as about]
|
||||||
[status-im2.contexts.wallet.account.tabs.dapps.view :as dapps]
|
[status-im2.contexts.wallet.account.tabs.dapps.view :as dapps]
|
||||||
[status-im2.contexts.wallet.common.activity-tab.view :as activity]
|
[status-im2.contexts.wallet.common.activity-tab.view :as activity]
|
||||||
@ -10,8 +12,8 @@
|
|||||||
[status-im2.contexts.wallet.common.token-value.view :as token-value]
|
[status-im2.contexts.wallet.common.token-value.view :as token-value]
|
||||||
[utils.i18n :as i18n]))
|
[utils.i18n :as i18n]))
|
||||||
|
|
||||||
(defn view
|
(defn- view-internal
|
||||||
[{:keys [selected-tab]}]
|
[{:keys [selected-tab theme]}]
|
||||||
(case selected-tab
|
(case selected-tab
|
||||||
:assets [rn/flat-list
|
:assets [rn/flat-list
|
||||||
{:render-fn token-value/view
|
{:render-fn token-value/view
|
||||||
@ -20,8 +22,13 @@
|
|||||||
:collectibles [collectibles/view]
|
:collectibles [collectibles/view]
|
||||||
:activity [activity/view]
|
:activity [activity/view]
|
||||||
:permissions [empty-tab/view
|
:permissions [empty-tab/view
|
||||||
{:title (i18n/label :t/no-permissions)
|
{:title (i18n/label :t/no-permissions)
|
||||||
:description (i18n/label :t/no-collectibles-description)
|
:description (i18n/label :t/no-collectibles-description)
|
||||||
:placeholder? true}]
|
:image (resources/get-image
|
||||||
|
(quo.theme/theme-value :no-permissions-light
|
||||||
|
:no-permissions-dark
|
||||||
|
theme))}]
|
||||||
:dapps [dapps/view]
|
:dapps [dapps/view]
|
||||||
[about/view]))
|
[about/view]))
|
||||||
|
|
||||||
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
[{:id :assets :label (i18n/label :t/assets) :accessibility-label :assets-tab}
|
[{:id :assets :label (i18n/label :t/assets) :accessibility-label :assets-tab}
|
||||||
{:id :collectibles :label (i18n/label :t/collectibles) :accessibility-label :collectibles-tab}
|
{:id :collectibles :label (i18n/label :t/collectibles) :accessibility-label :collectibles-tab}
|
||||||
{:id :activity :label (i18n/label :t/activity) :accessibility-label :activity-tab}
|
{:id :activity :label (i18n/label :t/activity) :accessibility-label :activity-tab}
|
||||||
{:id :permissions :label (i18n/label :t/permissions) :accessibility-label :permissions}
|
|
||||||
{:id :dapps :label (i18n/label :t/dapps) :accessibility-label :dapps}
|
{:id :dapps :label (i18n/label :t/dapps) :accessibility-label :dapps}
|
||||||
{:id :about :label (i18n/label :t/about) :accessibility-label :about}])
|
{:id :about :label (i18n/label :t/about) :accessibility-label :about}])
|
||||||
|
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
(ns status-im2.contexts.wallet.common.activity-tab.view
|
(ns status-im2.contexts.wallet.common.activity-tab.view
|
||||||
(:require
|
(:require
|
||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
|
[quo.theme]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
|
[status-im2.common.resources :as resources]
|
||||||
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
||||||
[status-im2.contexts.wallet.common.temp :as temp]
|
|
||||||
[utils.i18n :as i18n]))
|
[utils.i18n :as i18n]))
|
||||||
|
|
||||||
(defn activity-item
|
(defn activity-item
|
||||||
@ -14,15 +15,17 @@
|
|||||||
(merge {:on-press #(js/alert "Item pressed")}
|
(merge {:on-press #(js/alert "Item pressed")}
|
||||||
item)]])
|
item)]])
|
||||||
|
|
||||||
(defn view
|
(defn- view-internal
|
||||||
[]
|
[{:keys [theme]}]
|
||||||
(let [activity-list temp/activity-list]
|
(let [activity-list []]
|
||||||
(if (empty? activity-list)
|
(if (empty? activity-list)
|
||||||
[empty-tab/view
|
[empty-tab/view
|
||||||
{:title (i18n/label :t/no-activity)
|
{:title (i18n/label :t/no-activity)
|
||||||
:description (i18n/label :t/empty-tab-description)
|
:description (i18n/label :t/empty-tab-description)
|
||||||
:placeholder? true}]
|
:image (resources/get-themed-image :no-activity theme)}]
|
||||||
[rn/flat-list
|
[rn/flat-list
|
||||||
{:data activity-list
|
{:data activity-list
|
||||||
:style {:flex 1}
|
:style {:flex 1}
|
||||||
:render-fn activity-item}])))
|
:render-fn activity-item}])))
|
||||||
|
|
||||||
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
(ns status-im2.contexts.wallet.common.collectibles-tab.view
|
(ns status-im2.contexts.wallet.common.collectibles-tab.view
|
||||||
(:require
|
(:require
|
||||||
[quo.core :as quo]
|
[quo.core :as quo]
|
||||||
|
[quo.theme]
|
||||||
[react-native.core :as rn]
|
[react-native.core :as rn]
|
||||||
|
[status-im2.common.resources :as resources]
|
||||||
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
[status-im2.contexts.wallet.common.empty-tab.view :as empty-tab]
|
||||||
[utils.i18n :as i18n]
|
[utils.i18n :as i18n]
|
||||||
[utils.re-frame :as rf]))
|
[utils.re-frame :as rf]))
|
||||||
|
|
||||||
(defn view
|
(defn- view-internal
|
||||||
[]
|
[{:keys [theme]}]
|
||||||
(let [collectible-list (rf/sub [:wallet/collectibles])]
|
(let [collectible-list (rf/sub [:wallet/collectibles])]
|
||||||
(if (empty? collectible-list)
|
(if (empty? collectible-list)
|
||||||
[empty-tab/view
|
[empty-tab/view
|
||||||
{:title (i18n/label :t/no-collectibles)
|
{:title (i18n/label :t/no-collectibles)
|
||||||
:description (i18n/label :t/no-collectibles-description)
|
:description (i18n/label :t/no-collectibles-description)
|
||||||
:placeholder? true}]
|
:image (resources/get-themed-image :no-collectibles theme)}]
|
||||||
[rn/flat-list
|
[rn/flat-list
|
||||||
{:data collectible-list
|
{:data collectible-list
|
||||||
:style {:flex 1}
|
:style {:flex 1}
|
||||||
@ -25,3 +27,5 @@
|
|||||||
:on-press #(rf/dispatch
|
:on-press #(rf/dispatch
|
||||||
[:navigate-to
|
[:navigate-to
|
||||||
:wallet-collectible])}])}])))
|
:wallet-collectible])}])}])))
|
||||||
|
|
||||||
|
(def view (quo.theme/with-theme view-internal))
|
||||||
|
@ -53,10 +53,7 @@
|
|||||||
[common.top-nav/view]
|
[common.top-nav/view]
|
||||||
[rn/view {:style style/overview-container}
|
[rn/view {:style style/overview-container}
|
||||||
[quo/wallet-overview (temp/wallet-overview-state networks)]]
|
[quo/wallet-overview (temp/wallet-overview-state networks)]]
|
||||||
[rn/pressable
|
[quo/wallet-graph {:time-frame :empty}]
|
||||||
{:on-long-press #(rf/dispatch [:show-bottom-sheet
|
|
||||||
{:content temp/wallet-temporary-navigation}])}
|
|
||||||
[quo/wallet-graph {:time-frame :empty}]]
|
|
||||||
[rn/flat-list
|
[rn/flat-list
|
||||||
{:style style/accounts-list
|
{:style style/accounts-list
|
||||||
:content-container-style style/accounts-list-container
|
:content-container-style style/accounts-list-container
|
||||||
|
@ -2389,5 +2389,7 @@
|
|||||||
"address-placeholder": "0x123abc... or bob.eth",
|
"address-placeholder": "0x123abc... or bob.eth",
|
||||||
"invalid-address": "It’s not Ethereum address or ENS name",
|
"invalid-address": "It’s not Ethereum address or ENS name",
|
||||||
"address-already-in-use": "Address already being used",
|
"address-already-in-use": "Address already being used",
|
||||||
"address-copied": "Address copied"
|
"address-copied": "Address copied",
|
||||||
|
"no-dapps-description": "We want dApps!"
|
||||||
}
|
}
|
||||||
|
|
||||||
|