|
4 | 4 | [react-native.core :as rn]
|
5 | 5 | [status-im2.common.scroll-page.view :as scroll-page]
|
6 | 6 | [status-im2.contexts.wallet.collectible.style :as style]
|
7 |
| - [status-im2.contexts.wallet.common.temp :as temp] |
8 |
| - [utils.i18n :as i18n])) |
| 7 | + [utils.i18n :as i18n] |
| 8 | + [utils.re-frame :as rf])) |
9 | 9 |
|
10 | 10 | (defn header
|
11 |
| - [{:keys [name description collection-image]}] |
| 11 | + [{:keys [name description collection-image-url]}] |
12 | 12 | [rn/view {:style style/header}
|
13 | 13 | [quo/text
|
14 | 14 | {:weight :semi-bold
|
15 | 15 | :size :heading-1} name]
|
16 |
| - [rn/view style/collection-container |
17 |
| - [quo/collection-avatar {:image collection-image}] |
| 16 | + [rn/view {:style style/collection-container} |
| 17 | + [rn/view {:style style/collection-avatar-container} |
| 18 | + [quo/collection-avatar {:image collection-image-url}]] |
18 | 19 | [quo/text
|
19 | 20 | {:weight :semi-bold
|
20 | 21 | :size :paragraph-1}
|
|
57 | 58 |
|
58 | 59 | (defn traits-section
|
59 | 60 | [traits]
|
60 |
| - [rn/view {:style style/traits-section} |
61 |
| - [quo/section-label |
62 |
| - {:section (i18n/label :t/traits)}]] |
63 |
| - |
64 |
| - [rn/flat-list |
65 |
| - {:render-fn (fn [{:keys [title subtitle]}] |
66 |
| - [rn/view {:style style/traits-item} |
67 |
| - [quo/data-item |
68 |
| - {:description :default |
69 |
| - :card? true |
70 |
| - :status :default |
71 |
| - :size :default |
72 |
| - :title title |
73 |
| - :subtitle subtitle}]]) |
74 |
| - :data traits |
75 |
| - :key :collectibles-list |
76 |
| - :key-fn :id |
77 |
| - :num-columns 2 |
78 |
| - :content-container-style style/traits-container}]) |
| 61 | + (when (pos? (count traits)) |
| 62 | + [rn/view |
| 63 | + [quo/section-label |
| 64 | + {:section (i18n/label :t/traits) |
| 65 | + :container-style style/traits-title-container}] |
| 66 | + [rn/flat-list |
| 67 | + {:render-fn (fn [{:keys [trait-type value]}] |
| 68 | + [quo/data-item |
| 69 | + {:description :default |
| 70 | + :card? true |
| 71 | + :status :default |
| 72 | + :size :default |
| 73 | + :title trait-type |
| 74 | + :subtitle value |
| 75 | + :container-style style/traits-item}]) |
| 76 | + :data traits |
| 77 | + :key :collectibles-list |
| 78 | + :key-fn :id |
| 79 | + :num-columns 2 |
| 80 | + :content-container-style style/traits-container}]])) |
79 | 81 |
|
80 | 82 | (defn info
|
81 | 83 | []
|
|
103 | 105 |
|
104 | 106 | (defn view
|
105 | 107 | []
|
106 |
| - (let [{:keys [name description image traits] :as props} temp/collectible-details] |
| 108 | + (let [collectible-details (rf/sub [:wallet/last-collectible-details]) |
| 109 | + {:keys [name description preview-url traits]} collectible-details] |
107 | 110 | [scroll-page/scroll-page
|
108 | 111 | {:navigate-back? true
|
109 | 112 | :height 148
|
|
112 | 115 | :description description
|
113 | 116 | :right-side [{:icon-name :i/options
|
114 | 117 | :on-press #(js/alert "pressed")}]
|
115 |
| - :picture image}} |
| 118 | + :picture preview-url}} |
116 | 119 | [rn/view {:style style/container}
|
117 |
| - [rn/image |
118 |
| - {:source image |
119 |
| - :style style/preview}] |
120 |
| - [header props] |
| 120 | + [rn/view {:style style/preview-container} |
| 121 | + [rn/image |
| 122 | + {:source preview-url |
| 123 | + :style style/preview}]] |
| 124 | + [header collectible-details] |
121 | 125 | [cta-buttons]
|
122 | 126 | [tabs]
|
123 | 127 | [info]
|
|
0 commit comments