From c2484109a7a02ac7800c3922821564cc9e3a812f Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 17 Mar 2023 10:07:24 +0100 Subject: [PATCH] creuser au niveau de useTheme :art: --- App.tsx | 38 +++++++- navigation/Navigation.tsx | 13 ++- package-lock.json | 200 ++++++++++++++++++++++++++++++++++++++ package.json | 1 + screens/HomeScreen.tsx | 4 + yarn.lock | 68 ++++++++++++- 6 files changed, 317 insertions(+), 7 deletions(-) diff --git a/App.tsx b/App.tsx index de40eb8..7d2f260 100644 --- a/App.tsx +++ b/App.tsx @@ -13,11 +13,43 @@ import {useDispatch, useSelector} from 'react-redux'; import store from './redux/store'; +import { DefaultTheme, Provider as PaperProvider } from 'react-native-paper'; // Import your application store //import store from "./redux/store"; +//* themes + +const defaultTheme = { + ...DefaultTheme, + colors: { + ...DefaultTheme.colors, + primary: 'blue', + accent: 'yellow', + background: 'white', + text: 'black', + }, +}; + +const darkTheme = { + ...DefaultTheme, + dark: true, + colors: { + ...DefaultTheme.colors, + primary: '#BB86FC', + accent: '#03DAC6', + background: '#121212', + surface: '#121212', + text: '#FFFFFF', + disabled: '#9E9E9E', + placeholder: '#9E9E9E', + backdrop: '#00000070', + }, +}; + + + import { SafeAreaView, SafeAreaProvider, @@ -27,6 +59,10 @@ import { Provider } from 'react-redux'; export default function App() { + // const [isDarkTheme, setIsDarkTheme] = React.useState(false); + + // const theme = isDarkTheme ? darkTheme : defaultTheme; + return ( @@ -37,7 +73,7 @@ export default function App() { } - +//// // ///décommenter quand API Fonctionnel/// diff --git a/navigation/Navigation.tsx b/navigation/Navigation.tsx index 422302e..2a1764f 100644 --- a/navigation/Navigation.tsx +++ b/navigation/Navigation.tsx @@ -2,7 +2,7 @@ import { StyleSheet, Text, View, Button } from 'react-native'; import React, { useState } from "react"; -import { NavigationContainer } from '@react-navigation/native'; +import { NavigationContainer, useTheme } from '@react-navigation/native'; import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; import HomeScreen from '../screens/HomeScreen'; @@ -12,6 +12,7 @@ import ListFav from '../screens/ListFav'; import TabBarIcon from '../components/TabBarIcon'; import StackNavigation from './StackNavigation'; + import { Ionicons } from '@expo/vector-icons'; import { HeaderButton, HeaderButtons, Item } from 'react-navigation-header-buttons'; @@ -30,9 +31,17 @@ export default function Navigation() { const mode = useSelector(state => state.appReducer.mode); const dispatch = useDispatch(); + + const { colors } = useTheme(); return ( - + ({ + tabBarActiveTintColor: 'blue', + tabBarInactiveTintColor: 'gray', + })} + > =6.9.0" } }, + "node_modules/@callstack/react-theme-provider": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.8.tgz", + "integrity": "sha512-5U231sYY2sqQOaELX0WBCn+iluV8bFaXIS7em03k4W5Xz0AhGvKlnpLIhDGFP8im/SvNW7/2XoR0BsClhn9t6Q==", + "dependencies": { + "deepmerge": "^3.2.0", + "hoist-non-react-statics": "^3.3.0" + }, + "peerDependencies": { + "react": ">=16.3.0" + } + }, "node_modules/@egjs/hammerjs": { "version": "2.0.17", "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", @@ -11720,6 +11733,31 @@ "resolved": "https://registry.npmjs.org/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.16.tgz", "integrity": "sha512-H2BjG2zk7B7Wii9sXvd9qhCVRQYDAHSWdMw9tscmZBqSP62DkIWEQSk4/B2GhQ4aK9ydVXgtqR6tBeg3yy8TSA==" }, + "node_modules/react-native-paper": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/react-native-paper/-/react-native-paper-5.4.1.tgz", + "integrity": "sha512-eh2fh/dr+j/8V9FDHGhc0/tyXjyYSJLBrSGx/4lr2qPK+92QvH2mTNwFc280NiehCkfRSW2u3LMgUuyrkkQjjw==", + "dependencies": { + "@callstack/react-theme-provider": "^3.0.8", + "color": "^3.1.2", + "use-latest-callback": "^0.1.5" + }, + "peerDependencies": { + "react": "*", + "react-native": "*", + "react-native-safe-area-context": "*", + "react-native-vector-icons": "*" + } + }, + "node_modules/react-native-paper/node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, "node_modules/react-native-safe-area-context": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.5.0.tgz", @@ -11743,6 +11781,79 @@ "react-native": "*" } }, + "node_modules/react-native-vector-icons": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-9.2.0.tgz", + "integrity": "sha512-wKYLaFuQST/chH3AJRjmOLoLy3JEs1JR6zMNgTaemFpNoXs0ztRnTxcxFD9xhX7cJe1/zoN5BpQYe7kL0m5yyA==", + "peer": true, + "dependencies": { + "prop-types": "^15.7.2", + "yargs": "^16.1.1" + }, + "bin": { + "fa5-upgrade": "bin/fa5-upgrade.sh", + "generate-icon": "bin/generate-icon.js" + } + }, + "node_modules/react-native-vector-icons/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/react-native-vector-icons/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-vector-icons/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-vector-icons/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "peer": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-vector-icons/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "peer": true, + "engines": { + "node": ">=10" + } + }, "node_modules/react-native-web": { "version": "0.18.11", "resolved": "https://registry.npmjs.org/react-native-web/-/react-native-web-0.18.11.tgz", @@ -15206,6 +15317,15 @@ "to-fast-properties": "^2.0.0" } }, + "@callstack/react-theme-provider": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.8.tgz", + "integrity": "sha512-5U231sYY2sqQOaELX0WBCn+iluV8bFaXIS7em03k4W5Xz0AhGvKlnpLIhDGFP8im/SvNW7/2XoR0BsClhn9t6Q==", + "requires": { + "deepmerge": "^3.2.0", + "hoist-non-react-statics": "^3.3.0" + } + }, "@egjs/hammerjs": { "version": "2.0.17", "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", @@ -22866,6 +22986,27 @@ "resolved": "https://registry.npmjs.org/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.16.tgz", "integrity": "sha512-H2BjG2zk7B7Wii9sXvd9qhCVRQYDAHSWdMw9tscmZBqSP62DkIWEQSk4/B2GhQ4aK9ydVXgtqR6tBeg3yy8TSA==" }, + "react-native-paper": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/react-native-paper/-/react-native-paper-5.4.1.tgz", + "integrity": "sha512-eh2fh/dr+j/8V9FDHGhc0/tyXjyYSJLBrSGx/4lr2qPK+92QvH2mTNwFc280NiehCkfRSW2u3LMgUuyrkkQjjw==", + "requires": { + "@callstack/react-theme-provider": "^3.0.8", + "color": "^3.1.2", + "use-latest-callback": "^0.1.5" + }, + "dependencies": { + "color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "requires": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + } + } + }, "react-native-safe-area-context": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.5.0.tgz", @@ -22882,6 +23023,65 @@ "warn-once": "^0.1.0" } }, + "react-native-vector-icons": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-9.2.0.tgz", + "integrity": "sha512-wKYLaFuQST/chH3AJRjmOLoLy3JEs1JR6zMNgTaemFpNoXs0ztRnTxcxFD9xhX7cJe1/zoN5BpQYe7kL0m5yyA==", + "peer": true, + "requires": { + "prop-types": "^15.7.2", + "yargs": "^16.1.1" + }, + "dependencies": { + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "peer": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "peer": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "peer": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "peer": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "peer": true + } + } + }, "react-native-web": { "version": "0.18.11", "resolved": "https://registry.npmjs.org/react-native-web/-/react-native-web-0.18.11.tgz", diff --git a/package.json b/package.json index 4830731..fa05a35 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "react-dom": "18.2.0", "react-native": "0.71.3", "react-native-gesture-handler": "~2.9.0", + "react-native-paper": "^5.4.1", "react-native-safe-area-context": "4.5.0", "react-native-web": "~0.18.11", "react-navigation-header-buttons": "^10.0.0", diff --git a/screens/HomeScreen.tsx b/screens/HomeScreen.tsx index 60cd9f3..f73d689 100644 --- a/screens/HomeScreen.tsx +++ b/screens/HomeScreen.tsx @@ -1,6 +1,7 @@ import { StyleSheet, Text, View, TouchableNativeFeedback } from 'react-native'; import { useNavigation } from '@react-navigation/native'; import { NavigationContainer } from '@react-navigation/native'; +import { useTheme } from 'react-native-paper'; import StackNavigation from '../navigation/StackNavigation' import { Colors } from 'react-native/Libraries/NewAppScreen'; import {useDispatch, useSelector} from 'react-redux'; @@ -15,6 +16,9 @@ export default function HomeScreen({navigation}) { //@ts-ignore const mode = useSelector(state => state.appReducer.mode); + const { colors } = useTheme(); + + return ( diff --git a/yarn.lock b/yarn.lock index f06f99d..65129b1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1068,6 +1068,14 @@ "@babel/helper-validator-identifier" "^7.19.1" "to-fast-properties" "^2.0.0" +"@callstack/react-theme-provider@^3.0.8": + "integrity" "sha512-5U231sYY2sqQOaELX0WBCn+iluV8bFaXIS7em03k4W5Xz0AhGvKlnpLIhDGFP8im/SvNW7/2XoR0BsClhn9t6Q==" + "resolved" "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.8.tgz" + "version" "3.0.8" + dependencies: + "deepmerge" "^3.2.0" + "hoist-non-react-statics" "^3.3.0" + "@egjs/hammerjs@^2.0.17": "integrity" "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==" "resolved" "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz" @@ -2664,6 +2672,15 @@ "strip-ansi" "^6.0.0" "wrap-ansi" "^6.2.0" +"cliui@^7.0.2": + "integrity" "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + "version" "7.0.4" + dependencies: + "string-width" "^4.2.0" + "strip-ansi" "^6.0.0" + "wrap-ansi" "^7.0.0" + "cliui@^8.0.1": "integrity" "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==" "resolved" "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" @@ -2700,7 +2717,7 @@ "map-visit" "^1.0.0" "object-visit" "^1.0.0" -"color-convert@^1.9.0": +"color-convert@^1.9.0", "color-convert@^1.9.3": "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" "version" "1.9.3" @@ -2724,7 +2741,7 @@ "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" "version" "1.1.4" -"color-string@^1.9.0": +"color-string@^1.6.0", "color-string@^1.9.0": "integrity" "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==" "resolved" "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz" "version" "1.9.1" @@ -2732,6 +2749,14 @@ "color-name" "^1.0.0" "simple-swizzle" "^0.2.2" +"color@^3.1.2": + "integrity" "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==" + "resolved" "https://registry.npmjs.org/color/-/color-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "color-convert" "^1.9.3" + "color-string" "^1.6.0" + "color@^4.2.3": "integrity" "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==" "resolved" "https://registry.npmjs.org/color/-/color-4.2.3.tgz" @@ -5801,7 +5826,16 @@ "resolved" "https://registry.npmjs.org/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.16.tgz" "version" "0.71.16" -"react-native-safe-area-context@>= 3.0.0", "react-native-safe-area-context@4.5.0": +"react-native-paper@^5.4.1": + "integrity" "sha512-eh2fh/dr+j/8V9FDHGhc0/tyXjyYSJLBrSGx/4lr2qPK+92QvH2mTNwFc280NiehCkfRSW2u3LMgUuyrkkQjjw==" + "resolved" "https://registry.npmjs.org/react-native-paper/-/react-native-paper-5.4.1.tgz" + "version" "5.4.1" + dependencies: + "@callstack/react-theme-provider" "^3.0.8" + "color" "^3.1.2" + "use-latest-callback" "^0.1.5" + +"react-native-safe-area-context@*", "react-native-safe-area-context@>= 3.0.0", "react-native-safe-area-context@4.5.0": "integrity" "sha512-0WORnk9SkREGUg2V7jHZbuN5x4vcxj/1B0QOcXJjdYWrzZHgLcUzYWWIUecUPJh747Mwjt/42RZDOaFn3L8kPQ==" "resolved" "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.5.0.tgz" "version" "4.5.0" @@ -5814,6 +5848,14 @@ "react-freeze" "^1.0.0" "warn-once" "^0.1.0" +"react-native-vector-icons@*": + "integrity" "sha512-wKYLaFuQST/chH3AJRjmOLoLy3JEs1JR6zMNgTaemFpNoXs0ztRnTxcxFD9xhX7cJe1/zoN5BpQYe7kL0m5yyA==" + "resolved" "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-9.2.0.tgz" + "version" "9.2.0" + dependencies: + "prop-types" "^15.7.2" + "yargs" "^16.1.1" + "react-native-web@~0.18.11": "integrity" "sha512-aJpc4wrcPpWyybnSbTTh0kBfe6xJ+T55Fi9AVmPlkeY3iuyk+5OxWwhzuzj3nZwwCBbvuFeuffj7T9sgwwX8nQ==" "resolved" "https://registry.npmjs.org/react-native-web/-/react-native-web-0.18.11.tgz" @@ -5899,7 +5941,7 @@ "object-assign" "^4.1.1" "react-is" "^16.12.0 || ^17.0.0 || ^18.0.0" -"react@*", "react@^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.8 || ^17.0 || ^18.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^16.9.0 || ^17.0.0 || ^18", "react@^17.0.2 || ^18.0.0", "react@^18.2.0", "react@>=17.0.0", "react@18.2.0": +"react@*", "react@^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.8 || ^17.0 || ^18.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^16.9.0 || ^17.0.0 || ^18", "react@^17.0.2 || ^18.0.0", "react@^18.2.0", "react@>=16.3.0", "react@>=17.0.0", "react@18.2.0": "integrity" "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==" "resolved" "https://registry.npmjs.org/react/-/react-18.2.0.tgz" "version" "18.2.0" @@ -7230,6 +7272,11 @@ "camelcase" "^5.0.0" "decamelize" "^1.2.0" +"yargs-parser@^20.2.2": + "integrity" "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" + "version" "20.2.9" + "yargs-parser@^21.1.1": "integrity" "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" @@ -7252,6 +7299,19 @@ "y18n" "^4.0.0" "yargs-parser" "^18.1.2" +"yargs@^16.1.1": + "integrity" "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" + "version" "16.2.0" + dependencies: + "cliui" "^7.0.2" + "escalade" "^3.1.1" + "get-caller-file" "^2.0.5" + "require-directory" "^2.1.1" + "string-width" "^4.2.0" + "y18n" "^5.0.5" + "yargs-parser" "^20.2.2" + "yargs@^17.5.1": "integrity" "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==" "resolved" "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz"