Merge pull request #498 from status-im/bug/#414
React Native upgrade (0.38.0), fix for unhandled promise rejection (#414, #499)
This commit is contained in:
commit
4d75476be4
|
@ -57,6 +57,7 @@
|
||||||
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FC1DE7195700D694FF /* Social.framework */; };
|
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FC1DE7195700D694FF /* Social.framework */; };
|
||||||
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7FE1DE7195F00D694FF /* MessageUI.framework */; };
|
||||||
B24FC8001DE71C0E00D694FF /* libSplashScreen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7F21DE718EF00D694FF /* libSplashScreen.a */; };
|
B24FC8001DE71C0E00D694FF /* libSplashScreen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B24FC7F21DE718EF00D694FF /* libSplashScreen.a */; };
|
||||||
|
B2A5F45C1DEC36BB00174F4D /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */; };
|
||||||
B2F2D1BC1D9D531B00B7B453 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */; };
|
B2F2D1BC1D9D531B00B7B453 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */; };
|
||||||
B45B40B471414274A7A83185 /* libRCTContacts.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3384AFA9609A409B81928AD5 /* libRCTContacts.a */; };
|
B45B40B471414274A7A83185 /* libRCTContacts.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3384AFA9609A409B81928AD5 /* libRCTContacts.a */; };
|
||||||
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E586E1B0E544F64AA9F5BD1 /* libz.tbd */; };
|
BA68A2377A20496EA737000D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E586E1B0E544F64AA9F5BD1 /* libz.tbd */; };
|
||||||
|
@ -321,6 +322,20 @@
|
||||||
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
||||||
remoteInfo = RNShare;
|
remoteInfo = RNShare;
|
||||||
};
|
};
|
||||||
|
B2A5F4371DEC36B200174F4D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
|
||||||
|
proxyType = 2;
|
||||||
|
remoteGlobalIDString = 134814201AA4EA6300B7C361;
|
||||||
|
remoteInfo = RCTAnimation;
|
||||||
|
};
|
||||||
|
B2A5F4391DEC36B200174F4D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
|
||||||
|
proxyType = 2;
|
||||||
|
remoteGlobalIDString = 2D2A28201D9B03D100D4039D;
|
||||||
|
remoteInfo = "RCTAnimation-tvOS";
|
||||||
|
};
|
||||||
CE4E319D1D8693090033ED64 /* PBXContainerItemProxy */ = {
|
CE4E319D1D8693090033ED64 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = 5E5A7625B76441D984EA8C0D /* RCTImageResizer.xcodeproj */;
|
containerPortal = 5E5A7625B76441D984EA8C0D /* RCTImageResizer.xcodeproj */;
|
||||||
|
@ -417,6 +432,7 @@
|
||||||
B24FC7F51DE7190C00D694FF /* RNShare.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNShare.xcodeproj; path = "../node_modules/react-native-share/ios/RNShare.xcodeproj"; sourceTree = "<group>"; };
|
B24FC7F51DE7190C00D694FF /* RNShare.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNShare.xcodeproj; path = "../node_modules/react-native-share/ios/RNShare.xcodeproj"; sourceTree = "<group>"; };
|
||||||
B24FC7FC1DE7195700D694FF /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; };
|
B24FC7FC1DE7195700D694FF /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; };
|
||||||
B24FC7FE1DE7195F00D694FF /* MessageUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MessageUI.framework; path = System/Library/Frameworks/MessageUI.framework; sourceTree = SDKROOT; };
|
B24FC7FE1DE7195F00D694FF /* MessageUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MessageUI.framework; path = System/Library/Frameworks/MessageUI.framework; sourceTree = SDKROOT; };
|
||||||
|
B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = "<group>"; };
|
||||||
B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = StatusIm/Images.xcassets; sourceTree = "<group>"; };
|
B2F2D1BB1D9D531B00B7B453 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = StatusIm/Images.xcassets; sourceTree = "<group>"; };
|
||||||
B3B19223008342D096AA356E /* Octicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; };
|
B3B19223008342D096AA356E /* Octicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Octicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; };
|
||||||
C2A4E93F6B154AEFA3485B45 /* libTcpSockets.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libTcpSockets.a; sourceTree = "<group>"; };
|
C2A4E93F6B154AEFA3485B45 /* libTcpSockets.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libTcpSockets.a; sourceTree = "<group>"; };
|
||||||
|
@ -444,6 +460,7 @@
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
B24FC8001DE71C0E00D694FF /* libSplashScreen.a in Frameworks */,
|
B24FC8001DE71C0E00D694FF /* libSplashScreen.a in Frameworks */,
|
||||||
|
B2A5F45C1DEC36BB00174F4D /* libRCTAnimation.a in Frameworks */,
|
||||||
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */,
|
B24FC7FF1DE7195F00D694FF /* MessageUI.framework in Frameworks */,
|
||||||
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */,
|
B24FC7FD1DE7195700D694FF /* Social.framework in Frameworks */,
|
||||||
B24FC7FB1DE7192200D694FF /* libRNShare.a in Frameworks */,
|
B24FC7FB1DE7192200D694FF /* libRNShare.a in Frameworks */,
|
||||||
|
@ -743,6 +760,7 @@
|
||||||
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
|
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */,
|
||||||
B24FC7F51DE7190C00D694FF /* RNShare.xcodeproj */,
|
B24FC7F51DE7190C00D694FF /* RNShare.xcodeproj */,
|
||||||
3A7EB0491DD9CABC00A4FCC8 /* SplashScreen.xcodeproj */,
|
3A7EB0491DD9CABC00A4FCC8 /* SplashScreen.xcodeproj */,
|
||||||
20A5C94B1D927137002C4965 /* imageCropPicker.xcodeproj */,
|
20A5C94B1D927137002C4965 /* imageCropPicker.xcodeproj */,
|
||||||
|
@ -858,6 +876,15 @@
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
B2A5F4301DEC36B200174F4D /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */,
|
||||||
|
B2A5F43A1DEC36B200174F4D /* libRCTAnimation-tvOS.a */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
CE4E31941D8693090033ED64 /* Products */ = {
|
CE4E31941D8693090033ED64 /* Products */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
@ -954,6 +981,10 @@
|
||||||
ProductGroup = 00C302A81ABCB8CE00DB3ED1 /* Products */;
|
ProductGroup = 00C302A81ABCB8CE00DB3ED1 /* Products */;
|
||||||
ProjectRef = 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */;
|
ProjectRef = 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */;
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ProductGroup = B2A5F4301DEC36B200174F4D /* Products */;
|
||||||
|
ProjectRef = B2A5F42F1DEC36B200174F4D /* RCTAnimation.xcodeproj */;
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ProductGroup = 20B7D1111D3F74CD00B70F14 /* Products */;
|
ProductGroup = 20B7D1111D3F74CD00B70F14 /* Products */;
|
||||||
ProjectRef = 9F1854E6D9654226B1FC8308 /* RCTCamera.xcodeproj */;
|
ProjectRef = 9F1854E6D9654226B1FC8308 /* RCTCamera.xcodeproj */;
|
||||||
|
@ -1309,6 +1340,20 @@
|
||||||
remoteRef = B24FC7F91DE7190C00D694FF /* PBXContainerItemProxy */;
|
remoteRef = B24FC7F91DE7190C00D694FF /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
|
B2A5F4381DEC36B200174F4D /* libRCTAnimation.a */ = {
|
||||||
|
isa = PBXReferenceProxy;
|
||||||
|
fileType = archive.ar;
|
||||||
|
path = libRCTAnimation.a;
|
||||||
|
remoteRef = B2A5F4371DEC36B200174F4D /* PBXContainerItemProxy */;
|
||||||
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
|
};
|
||||||
|
B2A5F43A1DEC36B200174F4D /* libRCTAnimation-tvOS.a */ = {
|
||||||
|
isa = PBXReferenceProxy;
|
||||||
|
fileType = archive.ar;
|
||||||
|
path = "libRCTAnimation-tvOS.a";
|
||||||
|
remoteRef = B2A5F4391DEC36B200174F4D /* PBXContainerItemProxy */;
|
||||||
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
|
};
|
||||||
CE4E319E1D8693090033ED64 /* libRCTImageResizer.a */ = {
|
CE4E319E1D8693090033ED64 /* libRCTImageResizer.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
"querystring-es3": "^0.2.1",
|
"querystring-es3": "^0.2.1",
|
||||||
"re-natal": "0.2.38",
|
"re-natal": "0.2.38",
|
||||||
"react": "^15.3.1",
|
"react": "^15.3.1",
|
||||||
"react-native": "^0.36.0",
|
"react-native": "^0.38.0",
|
||||||
"react-native-action-button": "2.0.13",
|
"react-native-action-button": "2.0.13",
|
||||||
"react-native-android-sms-listener": "github:adrian-tiberius/react-native-android-sms-listener#listener-bugfix",
|
"react-native-android-sms-listener": "github:adrian-tiberius/react-native-android-sms-listener#listener-bugfix",
|
||||||
"react-native-camera": "git+https://github.com/alwx/react-native-camera.git",
|
"react-native-camera": "git+https://github.com/alwx/react-native-camera.git",
|
||||||
|
|
|
@ -66,25 +66,25 @@
|
||||||
:handler (if show-back? #(dispatch [:navigate-back]) nil)}
|
:handler (if show-back? #(dispatch [:navigate-back]) nil)}
|
||||||
:custom-content [toolbar-title]
|
:custom-content [toolbar-title]
|
||||||
:actions [{:image {:style icon-search}
|
:actions [{:image {:style icon-search}
|
||||||
:handler #()}]}]
|
:handler #()}]}]]
|
||||||
[list-view {:dataSource (lw/to-datasource accounts)
|
[list-view {:dataSource (lw/to-datasource accounts)
|
||||||
:enableEmptySections true
|
:enableEmptySections true
|
||||||
:renderRow render-row
|
:renderRow render-row
|
||||||
:style st/account-list
|
:style st/account-list
|
||||||
:contentContainerStyle (st/account-list-content (count accounts))}]
|
:contentContainerStyle (st/account-list-content (count accounts))}]
|
||||||
[view st/bottom-actions-container
|
[view st/bottom-actions-container
|
||||||
[view st/recover-button-container
|
[view st/recover-button-container
|
||||||
[touchable-highlight
|
[touchable-highlight
|
||||||
{:on-press #(dispatch [:navigate-to :recover])}
|
{:on-press #(dispatch [:navigate-to :recover])}
|
||||||
[view st/recover-button
|
[view st/recover-button
|
||||||
[text {:style st/recover-button-text}
|
[text {:style st/recover-button-text}
|
||||||
(label :t/recover-access)]]]]
|
(label :t/recover-access)]]]]
|
||||||
[view st/add-account-button-container
|
[view st/add-account-button-container
|
||||||
[touchable-highlight {:on-press create-account
|
[touchable-highlight {:on-press create-account
|
||||||
:accessibility-label :create-account}
|
:accessibility-label :create-account}
|
||||||
[view st/add-account-button
|
[view st/add-account-button
|
||||||
[image {:source {:uri :icon_add_white}
|
[image {:source {:uri :icon_add_white}
|
||||||
:style st/icon-plus}]
|
:style st/icon-plus}]
|
||||||
[text {:style st/add-account-text
|
[text {:style st/add-account-text
|
||||||
:font :default}
|
:font :default}
|
||||||
(label :t/add-account)]]]]]]]))
|
(label :t/add-account)]]]]]]))
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
(merge {:justifyContent :center}
|
(merge {:justifyContent :center}
|
||||||
;; todo this will not work with landscape and looks bad
|
;; todo this will not work with landscape and looks bad
|
||||||
(when (< (* 69 (+ 2 cnt)) (:height (r/get-dimensions "window")))
|
(when (< (* 69 (+ 2 cnt)) (:height (r/get-dimensions "window")))
|
||||||
{:flex 1})))
|
{:flex-grow 1})))
|
||||||
|
|
||||||
(def account-list
|
(def account-list
|
||||||
{:margin-bottom 20})
|
{:margin-bottom 20})
|
||||||
|
@ -122,14 +122,14 @@
|
||||||
;wallet-qr-code.cljs
|
;wallet-qr-code.cljs
|
||||||
|
|
||||||
(def wallet-qr-code
|
(def wallet-qr-code
|
||||||
{:flex 1
|
{:flex-grow 1
|
||||||
:flex-direction :column})
|
:flex-direction :column})
|
||||||
|
|
||||||
(def account-toolbar
|
(def account-toolbar
|
||||||
{:background-color "#2f3031"})
|
{:background-color "#2f3031"})
|
||||||
|
|
||||||
(def wallet-account-container
|
(def wallet-account-container
|
||||||
{:flex 1
|
{:flex-grow 1
|
||||||
:flexDirection :row
|
:flexDirection :row
|
||||||
:height 69
|
:height 69
|
||||||
:alignItems :center
|
:alignItems :center
|
||||||
|
@ -137,7 +137,7 @@
|
||||||
|
|
||||||
(def qr-code
|
(def qr-code
|
||||||
{:background-color "#2f3031"
|
{:background-color "#2f3031"
|
||||||
:flex 1
|
:flex-grow 1
|
||||||
:align-items :center
|
:align-items :center
|
||||||
:justify-content :center})
|
:justify-content :center})
|
||||||
|
|
||||||
|
@ -158,7 +158,7 @@
|
||||||
})
|
})
|
||||||
|
|
||||||
(def done-button
|
(def done-button
|
||||||
{:flex 1
|
{:flex-grow 1
|
||||||
:flex-direction :column
|
:flex-direction :column
|
||||||
:align-items :center
|
:align-items :center
|
||||||
:justify-content :center
|
:justify-content :center
|
||||||
|
|
|
@ -75,6 +75,7 @@
|
||||||
{:component-styles component-styles
|
{:component-styles component-styles
|
||||||
:fonts fonts
|
:fonts fonts
|
||||||
:list-selection-fn show-dialog
|
:list-selection-fn show-dialog
|
||||||
|
:tabs {:tab-shadows? true}
|
||||||
:chats {:action-button? true
|
:chats {:action-button? true
|
||||||
:new-chat-in-toolbar? false}
|
:new-chat-in-toolbar? false}
|
||||||
:contacts {:action-button? true
|
:contacts {:action-button? true
|
||||||
|
|
|
@ -23,7 +23,6 @@
|
||||||
[status-im.i18n :refer [label]]
|
[status-im.i18n :refer [label]]
|
||||||
[status-im.chats-list.styles :as st]
|
[status-im.chats-list.styles :as st]
|
||||||
[status-im.utils.platform :refer [platform-specific]]
|
[status-im.utils.platform :refer [platform-specific]]
|
||||||
[status-im.components.tabs.bottom-gradient :refer [bottom-gradient]]
|
|
||||||
[status-im.components.sync-state.offline :refer [offline-view]]
|
[status-im.components.sync-state.offline :refer [offline-view]]
|
||||||
[status-im.components.tabs.styles :refer [tabs-height]]))
|
[status-im.components.tabs.styles :refer [tabs-height]]))
|
||||||
|
|
||||||
|
@ -89,5 +88,4 @@
|
||||||
:style st/list-container}]
|
:style st/list-container}]
|
||||||
(when (get-in platform-specific [:chats :action-button?])
|
(when (get-in platform-specific [:chats :action-button?])
|
||||||
[chats-action-button])
|
[chats-action-button])
|
||||||
[bottom-gradient]
|
|
||||||
[offline-view]])
|
[offline-view]])
|
||||||
|
|
|
@ -132,5 +132,5 @@
|
||||||
:right 0
|
:right 0
|
||||||
:height 230
|
:height 230
|
||||||
:width 230
|
:width 230
|
||||||
:bottom 0
|
:bottom 24
|
||||||
:transform [{:translateY (if animation? offset-y 1)}]})
|
:transform [{:translateY (if animation? offset-y 1)}]})
|
||||||
|
|
|
@ -100,9 +100,9 @@
|
||||||
;; TODO not implemented
|
;; TODO not implemented
|
||||||
)}]
|
)}]
|
||||||
[menu-item {:name (label :t/discover)
|
[menu-item {:name (label :t/discover)
|
||||||
:handler #(dispatch [:navigate-to :discover])}]
|
:handler #(dispatch [:navigate-to-tab :discover])}]
|
||||||
[menu-item {:name (label :t/contacts)
|
[menu-item {:name (label :t/contacts)
|
||||||
:handler #(dispatch [:navigate-to :contact-list])}]]
|
:handler #(dispatch [:navigate-to-tab :contact-list])}]]
|
||||||
(when (zero? @keyboard-height)
|
(when (zero? @keyboard-height)
|
||||||
[text {:style st/feedback
|
[text {:style st/feedback
|
||||||
:font :default} (label :t/feedback)])
|
:font :default} (label :t/feedback)])
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
[status-im.components.status-bar :refer [status-bar]]
|
[status-im.components.status-bar :refer [status-bar]]
|
||||||
[status-im.components.drawer.view :refer [drawer-view]]
|
[status-im.components.drawer.view :refer [drawer-view]]
|
||||||
[status-im.components.animation :as anim]
|
[status-im.components.animation :as anim]
|
||||||
|
[status-im.components.tabs.bottom-shadow :refer [bottom-shadow-view]]
|
||||||
[status-im.chats-list.screen :refer [chats-list]]
|
[status-im.chats-list.screen :refer [chats-list]]
|
||||||
[status-im.discover.screen :refer [discover]]
|
[status-im.discover.screen :refer [discover]]
|
||||||
[status-im.contacts.screen :refer [contact-list]]
|
[status-im.contacts.screen :refer [contact-list]]
|
||||||
|
@ -110,4 +111,5 @@
|
||||||
[contact-list]]
|
[contact-list]]
|
||||||
[tabs {:selected-view-id @view-id
|
[tabs {:selected-view-id @view-id
|
||||||
:prev-view-id @prev-view-id
|
:prev-view-id @prev-view-id
|
||||||
:tab-list tab-list}]]]]])})))
|
:tab-list tab-list}]
|
||||||
|
[bottom-shadow-view]]]]])})))
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
(ns status-im.components.tabs.bottom-gradient
|
|
||||||
(:require [status-im.components.tabs.styles :as st]
|
|
||||||
[status-im.components.react :refer [linear-gradient]]
|
|
||||||
[status-im.utils.platform :refer [platform-specific]]))
|
|
||||||
|
|
||||||
(defn bottom-gradient []
|
|
||||||
[linear-gradient {:locations [0 0.8 1]
|
|
||||||
:colors ["rgba(24, 52, 76, 0)" "rgba(24, 52, 76, 0.085)" "rgba(24, 52, 76, 0.165)"]
|
|
||||||
:style (merge
|
|
||||||
st/bottom-gradient
|
|
||||||
(get-in platform-specific [:component-styles :bottom-gradient]))}])
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
(ns status-im.components.tabs.bottom-shadow
|
||||||
|
(:require [status-im.components.tabs.styles :as st]
|
||||||
|
[status-im.components.react :refer [linear-gradient]]
|
||||||
|
[status-im.utils.platform :refer [platform-specific]]))
|
||||||
|
|
||||||
|
(defn bottom-shadow-view []
|
||||||
|
(if (get-in platform-specific [:tabs :tab-shadows?])
|
||||||
|
[linear-gradient {:locations [0 0.8 1]
|
||||||
|
:colors ["rgba(24, 52, 76, 0)" "rgba(24, 52, 76, 0.085)" "rgba(24, 52, 76, 0.165)"]
|
||||||
|
:style (merge
|
||||||
|
st/bottom-gradient
|
||||||
|
(get-in platform-specific [:component-styles :bottom-gradient]))}]))
|
|
@ -1,30 +1,33 @@
|
||||||
(ns status-im.components.tabs.styles
|
(ns status-im.components.tabs.styles
|
||||||
(:require [status-im.components.styles :refer [color-white]]))
|
(:require [status-im.components.styles :refer [color-white]]))
|
||||||
|
|
||||||
(def tabs-height 60)
|
(def tabs-height 56)
|
||||||
(def tab-height 58)
|
(def tab-height (- tabs-height 1))
|
||||||
|
|
||||||
(defn tabs-container [hidden?]
|
|
||||||
{:position :absolute
|
|
||||||
:bottom 0
|
|
||||||
:left 0
|
|
||||||
:right 0
|
|
||||||
:height tabs-height
|
|
||||||
:backgroundColor color-white
|
|
||||||
:marginBottom (if hidden? (- tabs-height) 0)
|
|
||||||
:transform [{:translateY 1}]})
|
|
||||||
|
|
||||||
(def bottom-gradient
|
(def bottom-gradient
|
||||||
{:position :absolute
|
{:position :absolute
|
||||||
:bottom 0
|
:bottom 55
|
||||||
:left 0
|
:left 0
|
||||||
:right 0})
|
:right 0})
|
||||||
|
|
||||||
|
(defn tabs-container [hidden?]
|
||||||
|
{:position :absolute
|
||||||
|
:bottom 0
|
||||||
|
:left 0
|
||||||
|
:right 0
|
||||||
|
:height tabs-height
|
||||||
|
:background-color color-white
|
||||||
|
:margin-bottom (if hidden? (- tabs-height) 0)
|
||||||
|
:transform [{:translateY 1}]})
|
||||||
|
|
||||||
|
(def tabs-container-line
|
||||||
|
{:border-top-width 1
|
||||||
|
:border-top-color "#D7D7D7"})
|
||||||
|
|
||||||
(def tabs-inner-container
|
(def tabs-inner-container
|
||||||
{:flexDirection :row
|
{:flexDirection :row
|
||||||
:height tab-height
|
:height tab-height
|
||||||
:opacity 1
|
:opacity 1
|
||||||
:backgroundColor :white
|
|
||||||
:justifyContent :center
|
:justifyContent :center
|
||||||
:alignItems :center})
|
:alignItems :center})
|
||||||
|
|
||||||
|
@ -35,29 +38,34 @@
|
||||||
:alignItems :center})
|
:alignItems :center})
|
||||||
|
|
||||||
(def tab-title
|
(def tab-title
|
||||||
{:font-size 12
|
{:font-size 12
|
||||||
:height 16
|
:height 16
|
||||||
:color "#6e93d8"})
|
:min-width 60
|
||||||
|
:text-align :center
|
||||||
|
:color "#6e93d8"})
|
||||||
|
|
||||||
(def tab-icon
|
(def tab-icon
|
||||||
{:width 24
|
{:width 24
|
||||||
:height 24
|
:height 24
|
||||||
:marginBottom 1})
|
:marginBottom 1
|
||||||
|
:align-self :center})
|
||||||
|
|
||||||
(defn tab-container [active?]
|
(defn tab-container [active?]
|
||||||
{:flex 1
|
{:flex 1
|
||||||
:height tab-height
|
:height tab-height
|
||||||
:justifyContent :center
|
:justifyContent :center
|
||||||
:alignItems :center
|
:alignItems :center
|
||||||
:top (if active? 0 8)})
|
:padding-top (if active? 0 16)})
|
||||||
|
|
||||||
(defn animated-offset [value]
|
(defn animated-offset [value]
|
||||||
{:top value})
|
{:top value
|
||||||
|
:justifyContent :center
|
||||||
|
:alignItems :center})
|
||||||
|
|
||||||
(def main-swiper
|
(def main-swiper
|
||||||
{:position :absolute
|
{:position :absolute
|
||||||
:top 0
|
:top 0
|
||||||
:left 0
|
:left 0
|
||||||
:right 0
|
:right 0
|
||||||
:bottom 83
|
:bottom tabs-height
|
||||||
:shows-pagination false})
|
:shows-pagination false})
|
||||||
|
|
|
@ -53,6 +53,6 @@
|
||||||
:else 0))}
|
:else 0))}
|
||||||
[text {:style st/tab-title}
|
[text {:style st/tab-title}
|
||||||
(if (or (= selected-view-id view-id)
|
(if (or (= selected-view-id view-id)
|
||||||
(= prev-view-id view-id))
|
(= prev-view-id view-id))
|
||||||
title
|
title
|
||||||
" ")]]]])})))
|
" ")]]]])})))
|
||||||
|
|
|
@ -11,7 +11,8 @@
|
||||||
[reagent.core :as r]
|
[reagent.core :as r]
|
||||||
[status-im.components.tabs.styles :as st]
|
[status-im.components.tabs.styles :as st]
|
||||||
[status-im.components.tabs.tab :refer [tab]]
|
[status-im.components.tabs.tab :refer [tab]]
|
||||||
[status-im.components.animation :as anim]))
|
[status-im.components.animation :as anim]
|
||||||
|
[status-im.utils.platform :refer [platform-specific]]))
|
||||||
|
|
||||||
(defn create-tab [index data selected-view-id prev-view-id]
|
(defn create-tab [index data selected-view-id prev-view-id]
|
||||||
(let [data (merge data {:key index
|
(let [data (merge data {:key index
|
||||||
|
@ -32,10 +33,11 @@
|
||||||
|
|
||||||
(defn tabs-container [& children]
|
(defn tabs-container [& children]
|
||||||
(let [chats-scrolled? (subscribe [:get :chats-scrolled?])
|
(let [chats-scrolled? (subscribe [:get :chats-scrolled?])
|
||||||
tabs-bar-value (subscribe [:animations :tabs-bar-value])
|
tabs-bar-value (subscribe [:animations :tabs-bar-value])
|
||||||
context {:hidden? chats-scrolled?
|
shadows? (get-in platform-specific [:tabs :tab-shadows?])
|
||||||
:val @tabs-bar-value}
|
context {:hidden? chats-scrolled?
|
||||||
on-update (animation-logic context)]
|
:val @tabs-bar-value}
|
||||||
|
on-update (animation-logic context)]
|
||||||
(anim/set-value @tabs-bar-value 0)
|
(anim/set-value @tabs-bar-value 0)
|
||||||
(r/create-class
|
(r/create-class
|
||||||
{:component-did-mount
|
{:component-did-mount
|
||||||
|
@ -45,7 +47,8 @@
|
||||||
:reagent-render
|
:reagent-render
|
||||||
(fn [& children]
|
(fn [& children]
|
||||||
@chats-scrolled?
|
@chats-scrolled?
|
||||||
(into [animated-view {:style (st/tabs-container @chats-scrolled?)
|
(into [animated-view {:style (merge (st/tabs-container @chats-scrolled?)
|
||||||
|
(if-not shadows? st/tabs-container-line))
|
||||||
:pointerEvents (if @chats-scrolled? :none :auto)}]
|
:pointerEvents (if @chats-scrolled? :none :auto)}]
|
||||||
children))})))
|
children))})))
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
{:position :relative
|
{:position :relative
|
||||||
:height 72
|
:height 72
|
||||||
:padding-top 30
|
:padding-top 30
|
||||||
:padding-bottom 7})
|
:padding-bottom 34})
|
||||||
|
|
||||||
(def text-input
|
(def text-input
|
||||||
{:font-size 16
|
{:font-size 16
|
||||||
|
|
|
@ -22,7 +22,6 @@
|
||||||
hamburger-icon
|
hamburger-icon
|
||||||
icon-search
|
icon-search
|
||||||
create-icon]]
|
create-icon]]
|
||||||
[status-im.components.tabs.bottom-gradient :refer [bottom-gradient]]
|
|
||||||
[status-im.contacts.styles :as st]
|
[status-im.contacts.styles :as st]
|
||||||
[status-im.i18n :refer [label]]
|
[status-im.i18n :refer [label]]
|
||||||
[status-im.utils.platform :refer [platform-specific]]))
|
[status-im.utils.platform :refer [platform-specific]]))
|
||||||
|
@ -148,5 +147,4 @@
|
||||||
[react/icon :group_big st/empty-contacts-icon]
|
[react/icon :group_big st/empty-contacts-icon]
|
||||||
[text {:style st/empty-contacts-text} (label :t/no-contacts)]])
|
[text {:style st/empty-contacts-text} (label :t/no-contacts)]])
|
||||||
(when (get-in platform-specific [:contacts :action-button?])
|
(when (get-in platform-specific [:contacts :action-button?])
|
||||||
[contacts-action-button])
|
[contacts-action-button])])))
|
||||||
[bottom-gradient]])))
|
|
||||||
|
|
|
@ -200,7 +200,7 @@
|
||||||
|
|
||||||
(def buttons-container
|
(def buttons-container
|
||||||
{:position :absolute
|
{:position :absolute
|
||||||
:bottom 0
|
:bottom 24
|
||||||
:right 0
|
:right 0
|
||||||
:width 220
|
:width 220
|
||||||
:height 170})
|
:height 170})
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
[status-im.components.toolbar.view :refer [toolbar]]
|
[status-im.components.toolbar.view :refer [toolbar]]
|
||||||
[status-im.components.drawer.view :refer [open-drawer]]
|
[status-im.components.drawer.view :refer [open-drawer]]
|
||||||
[status-im.discover.styles :as st]
|
[status-im.discover.styles :as st]
|
||||||
[status-im.components.tabs.bottom-gradient :refer [bottom-gradient]]
|
|
||||||
[status-im.i18n :refer [label]]
|
[status-im.i18n :refer [label]]
|
||||||
[status-im.components.carousel.carousel :refer [carousel]]
|
[status-im.components.carousel.carousel :refer [carousel]]
|
||||||
[status-im.discover.views.popular-list :refer [discover-popular-list]]
|
[status-im.discover.views.popular-list :refer [discover-popular-list]]
|
||||||
|
@ -107,5 +106,4 @@
|
||||||
;; todo change icon
|
;; todo change icon
|
||||||
[icon :group_big contacts-styles/empty-contacts-icon]
|
[icon :group_big contacts-styles/empty-contacts-icon]
|
||||||
[text {:style contacts-styles/empty-contacts-text}
|
[text {:style contacts-styles/empty-contacts-text}
|
||||||
(label :t/no-statuses-discovered)]])
|
(label :t/no-statuses-discovered)]])])
|
||||||
[bottom-gradient]])
|
|
||||||
|
|
|
@ -82,6 +82,7 @@
|
||||||
{:component-styles component-styles
|
{:component-styles component-styles
|
||||||
:fonts fonts
|
:fonts fonts
|
||||||
:list-selection-fn show-action-sheet
|
:list-selection-fn show-action-sheet
|
||||||
|
:tabs {:tab-shadows? false}
|
||||||
:chats {:action-button? false
|
:chats {:action-button? false
|
||||||
:new-chat-in-toolbar? true}
|
:new-chat-in-toolbar? true}
|
||||||
:contacts {:action-button? false
|
:contacts {:action-button? false
|
||||||
|
|
Loading…
Reference in New Issue