diff --git a/package.json b/package.json index 2a1b07dd86..84cc6e1913 100644 --- a/package.json +++ b/package.json @@ -208,6 +208,7 @@ "@types/jest": "^27.0.2", "@types/react": "^17.0.30", "@types/react-native": "^0.65.21", + "@types/react-native-video": "^5.0.13", "@types/react-test-renderer": "^17.0.1", "babel-jest": "^26.6.3", "babel-plugin-module-resolver": "^4.1.0", diff --git a/src/components/theme/ForceTheme.tsx b/src/components/theme/ForceTheme.tsx new file mode 100644 index 0000000000..814b0deec5 --- /dev/null +++ b/src/components/theme/ForceTheme.tsx @@ -0,0 +1,14 @@ +import React from "react"; +import StyleProvider from "../../StyleProvider"; + +export default function ForceTheme({ + children, + selectedPalette, +}: { + children?: React.ReactNode; + selectedPalette: "light" | "dark"; +}): React.ReactElement { + return ( + {children} + ); +} diff --git a/src/components/InvertTheme.tsx b/src/components/theme/InvertTheme.tsx similarity index 59% rename from src/components/InvertTheme.tsx rename to src/components/theme/InvertTheme.tsx index ded040caf4..ec1a9c7dfb 100644 --- a/src/components/InvertTheme.tsx +++ b/src/components/theme/InvertTheme.tsx @@ -1,6 +1,7 @@ import React, { useMemo } from "react"; import { ThemeProvider, useTheme } from "styled-components/native"; import { defaultTheme, palettes } from "@ledgerhq/native-ui/styles"; +import StyleProvider from "../../StyleProvider"; export default function InvertTheme({ children, @@ -9,14 +10,8 @@ export default function InvertTheme({ }): React.ReactElement { const { theme } = useTheme(); const revertTheme = theme === "light" ? "dark" : "light"; - const newTheme = useMemo( - () => ({ - ...defaultTheme, - colors: { ...defaultTheme.colors, palette: palettes[revertTheme] }, - theme: revertTheme, - }), - [revertTheme], - ); - return {children}; + return ( + {children} + ); } diff --git a/src/locales/en/common.json b/src/locales/en/common.json index 1a633e63c9..83899e8cca 100644 --- a/src/locales/en/common.json +++ b/src/locales/en/common.json @@ -828,8 +828,8 @@ }, "onboarding": { "stepWelcome": { - "title": "Welcome to Ledger", - "subtitle": "Safely manage your cryptos from your smartphone.", + "title": "The most secure cryptocurrency & NFT wallet", + "subtitle": "Securely manage, buy and grow your crypto and NFTs on Ledger Live.", "start": "Get started", "noDevice": "No device?", "buy": "Buy a {{fullDeviceName}}", diff --git a/src/screens/Onboarding/steps/welcome.tsx b/src/screens/Onboarding/steps/welcome.tsx index 6966b2c7a8..e88a08685b 100644 --- a/src/screens/Onboarding/steps/welcome.tsx +++ b/src/screens/Onboarding/steps/welcome.tsx @@ -8,13 +8,15 @@ import Video from "react-native-video"; import { Linking } from "react-native"; import Svg, { Defs, LinearGradient, Rect, Stop } from "react-native-svg"; import { useDispatch } from "react-redux"; -import Button from "../../../components/Button"; import { ScreenName } from "../../../const"; import StyledStatusBar from "../../../components/StyledStatusBar"; import { urls } from "../../../config/urls"; import { useTermsAccept } from "../../../logic/terms"; import { setAnalytics } from "../../../actions/settings"; import useIsAppInBackground from "../../../components/useIsAppInBackground"; +import InvertTheme from "../../../components/theme/InvertTheme"; +import ForceTheme from "../../../components/theme/ForceTheme"; +import Button from "../../../components/wrappedUi/Button"; const source = require("../../../../assets/videos/onboarding.mp4"); @@ -74,116 +76,111 @@ function OnboardingStepWelcome({ navigation }: any) { const videoMounted = !useIsAppInBackground(); return ( - - - {videoMounted && ( - + ); } diff --git a/yarn.lock b/yarn.lock index 4952370a2b..1a50d6f5e0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4215,7 +4215,29 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== -"@types/react-native@^0.65", "@types/react-native@^0.65.21", "@types/react-native@^0.65.9": +"@types/react-native-video@^5.0.13": + version "5.0.13" + resolved "https://registry.yarnpkg.com/@types/react-native-video/-/react-native-video-5.0.13.tgz#4a6df3156c5d9ad4e3a37edb320199eaeb22ea20" + integrity sha512-pXdF+uM5Kqmsx90eQzOArkz06QOzKQi8uekdcqD+KeNXuQfwJ6hiuGTiC46VcgxGdQVCKAa1AYMg6oUMPaygew== + dependencies: + "@types/react" "*" + "@types/react-native" "*" + +"@types/react-native@*": + version "0.67.6" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.67.6.tgz#9a7de5feba6065aec9f44f9a1e8f6e55ee5d015c" + integrity sha512-NM6atxrefIXMLE/PyQ1bIQjQ/lWLdls3uVxItzKvNUUVZlGqgn/uGN4MarM9quSf90uSqJYPIAeAgTtBTUjhgg== + dependencies: + "@types/react" "*" + +"@types/react-native@^0.65", "@types/react-native@^0.65.9": + version "0.65.17" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.65.17.tgz#6bdb4cb7e60bbc7eda880120e2a78a080373dd97" + integrity sha512-a1yykkqrnrTQJAteu0lt8gqv0PubdNzQvHH1kUOOl3y6JsK5AuqyvBaDmuw6xAYOL3vSXa43Wt+n47VTZRJd7w== + dependencies: + "@types/react" "*" + +"@types/react-native@^0.65.21": version "0.65.21" resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.65.21.tgz#f731b172765f17e4866473de41e1d3a4890ae536" integrity sha512-6TmhHLEBH7xMOBG+MIExOILOEI+nq/VHmlAJZ7SynJ+/ezG318EFrrxDPge46WPqWT25ZbnhSR6uxzBn7TDRbQ==