commit a0b86a345293aed82f5b8dfe066f4a664f8ff84d Author: Philip Cheung Date: Wed Feb 28 13:34:06 2024 +0800 first commit diff --git a/.buckconfig b/.buckconfig new file mode 100644 index 0000000..934256c --- /dev/null +++ b/.buckconfig @@ -0,0 +1,6 @@ + +[android] + target = Google Inc.:Google APIs:23 + +[maven_repositories] + central = https://repo1.maven.org/maven2 diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..40c6dcd --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@react-native-community', +}; diff --git a/.flowconfig b/.flowconfig new file mode 100644 index 0000000..4320b70 --- /dev/null +++ b/.flowconfig @@ -0,0 +1,65 @@ +[ignore] +; We fork some components by platform +.*/*[.]android.js + +; Ignore "BUCK" generated dirs +/\.buckd/ + +; Ignore polyfills +node_modules/react-native/Libraries/polyfills/.* + +; Flow doesn't support platforms +.*/Libraries/Utilities/LoadingView.js + +[untyped] +.*/node_modules/@react-native-community/cli/.*/.* + +[include] + +[libs] +node_modules/react-native/interface.js +node_modules/react-native/flow/ + +[options] +emoji=true + +exact_by_default=true + +format.bracket_spacing=false + +module.file_ext=.js +module.file_ext=.json +module.file_ext=.ios.js + +munge_underscores=true + +module.name_mapper='^react-native/\(.*\)$' -> '/node_modules/react-native/\1' +module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '/node_modules/react-native/Libraries/Image/RelativeImageStub' + +suppress_type=$FlowIssue +suppress_type=$FlowFixMe +suppress_type=$FlowFixMeProps +suppress_type=$FlowFixMeState + +[lints] +sketchy-null-number=warn +sketchy-null-mixed=warn +sketchy-number=warn +untyped-type-import=warn +nonstrict-import=warn +deprecated-type=warn +unsafe-getters-setters=warn +unnecessary-invariant=warn +signature-verification-failure=warn + +[strict] +deprecated-type +nonstrict-import +sketchy-null +unclear-type +unsafe-getters-setters +untyped-import +untyped-type-import + +[version] +^0.158.0 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..d42ff18 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.pbxproj -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ad572e6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,59 @@ +# OSX +# +.DS_Store + +# Xcode +# +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +*.xccheckout +*.moved-aside +DerivedData +*.hmap +*.ipa +*.xcuserstate + +# Android/IntelliJ +# +build/ +.idea +.gradle +local.properties +*.iml + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# BUCK +buck-out/ +\.buckd/ +*.keystore +!debug.keystore + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/ + +*/fastlane/report.xml +*/fastlane/Preview.html +*/fastlane/screenshots + +# Bundle artifact +*.jsbundle + +# CocoaPods +/ios/Pods/ diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..5c4de1a --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,6 @@ +module.exports = { + bracketSpacing: false, + jsxBracketSameLine: true, + singleQuote: true, + trailingComma: 'all', +}; diff --git a/.watchmanconfig b/.watchmanconfig new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.watchmanconfig @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/App.js b/App.js new file mode 100644 index 0000000..29d2ee1 --- /dev/null +++ b/App.js @@ -0,0 +1,162 @@ +/** + * Sample React Native App + * https://github.com/facebook/react-native + * + * @format + * @flow strict-local + */ + +import React, { useEffect } from 'react'; +import moment from 'moment'; +import messaging from '@react-native-firebase/messaging'; +import AsyncStorage from '@react-native-community/async-storage'; +import { StyleSheet, ScrollView, View, Text, StatusBar } from 'react-native'; +import { SafeAreaProvider } from 'react-native-safe-area-context'; +import { colors } from './src/assets/styles/colors-theme'; +import Router from './router'; +import { Provider } from 'mobx-react'; +import { ModalPortal } from 'react-native-modals'; +import Store from './src/stores/index'; +import { NavigationContainer, useFocusEffect } from '@react-navigation/native'; +import { createStackNavigator, HeaderBackButton } from '@react-navigation/stack'; +import { createMaterialBottomTabNavigator } from '@react-navigation/material-bottom-tabs'; +import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; +import { + Header, + LearnMoreLinks, + Colors, + DebugInstructions, + ReloadInstructions, +} from 'react-native/Libraries/NewAppScreen'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import SplashScreen from './src/pages/splash/splashScreen'; +import Main from './src/pages/main/main'; +import buyHistory from './src/pages/buyHistory/buyHistory'; +import Favorite from './src/pages/favorite/favorite'; +import Profile from './src/pages/profile/profile'; +import BuyHistory from './src/pages/buyHistory/buyHistory'; + +Icon.loadFont(); +console.disableYellowBox = true; +const Stack = createStackNavigator(); +const BottomTab = createBottomTabNavigator(); +const BottomTabScreen = () => ( + ({ + tabBarIcon: ({ focused, color, size }) => { + let iconName; + switch (route.name) { + case 'Main': + iconName = 'home-variant'; + break; + case 'BuyHistory': + iconName = 'cart'; + break; + case 'Favorite': + iconName = 'heart'; + break; + case 'Profile': + iconName = 'account-circle'; + break; + } + return ( + + ); + }, + })} + tabBarOptions={{ + activeTintColor: 'tomato', + inactiveTintColor: 'gray', + }}> + + + + + +); +const App: () => React$Node = () => { + + return ( + <> + + + + + Store.appStore.setRouterState(state)} + ref={navigatorRef => Store.appStore.setRouterRef(navigatorRef)}> + + + + + + + ); +}; + +const styles = StyleSheet.create({ + scrollView: { + backgroundColor: Colors.lighter, + }, + engine: { + position: 'absolute', + right: 0, + }, + body: { + backgroundColor: colors.bgc, + }, + sectionContainer: { + marginTop: 32, + paddingHorizontal: 24, + }, + sectionTitle: { + fontSize: 24, + fontWeight: '600', + color: Colors.black, + }, + sectionDescription: { + marginTop: 8, + fontSize: 18, + fontWeight: '400', + color: Colors.dark, + }, + highlight: { + fontWeight: '700', + }, + footer: { + color: Colors.dark, + fontSize: 12, + fontWeight: '600', + padding: 4, + paddingRight: 12, + textAlign: 'right', + }, +}); + +export default App; diff --git a/MyTabBar.js b/MyTabBar.js new file mode 100644 index 0000000..051c45e --- /dev/null +++ b/MyTabBar.js @@ -0,0 +1,170 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + TextInput, + Keyboard, +} from 'react-native'; +import { inject, observer } from 'mobx-react'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { observable } from 'mobx'; +import { colors } from './src/assets/styles/colors-theme'; +import { s, vs, ms } from 'react-native-size-matters'; +import DeviceInfo from 'react-native-device-info'; +Icon.loadFont(); +@inject('appStore') +@observer +export default class MyTabBar extends React.Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + + langLabelReturn(label) { + switch (label) { + case 'main': + return this.store.text.main; + break; + case 'myfavourite': + return this.store.text.myfavourite; + break; + + case 'ShoppingCart': + return this.store.text.shoppingcart; + break; + + case 'shoppingHistory': + return this.store.text.shoppingHistory; + break; + + case 'acAndSetting': + return this.store.text.acAndSetting; + break; + } + } + + render() { + var { state, descriptors, navigation, logined } = this.props; + return ( + + {state.routes.map((route, index) => { + const { options } = descriptors[route.key]; + const label = + options.tabBarLabel !== undefined + ? options.tabBarLabel + : options.title !== undefined + ? options.title + : route.name; + let iconName; + switch (route.name) { + case 'Main': + iconName = 'home-outline'; + break; + case 'BuyHistory': + iconName = 'history'; + break; + case 'ShoppingCart': + iconName = 'shopping-outline'; + break; + case 'Favorite': + iconName = 'heart-outline'; + break; + case 'Profile': + iconName = 'account-outline'; + break; + } + + const isFocused = state.index === index; + + const onPress = () => { + const event = navigation.emit({ + type: 'tabPress', + target: route.key, + }); + + if (!isFocused && !event.defaultPrevented) { + this.store.catalogueSelected = null; + console.log(route.name); + if (route.name == 'Profile' && !this.store.logined) { + navigation.navigate('Signin'); + } else if (route.name == 'Favorite' && !this.store.logined) { + navigation.navigate('Signin'); + } else if (route.name == 'BuyHistory' && !this.store.logined) { + navigation.navigate('Signin'); + } else { + navigation.navigate(route.name); + } + } else if (isFocused && route.name == 'Main') { + this.store.catalogueSelected = null; + } + }; + + const onLongPress = () => { + navigation.emit({ + type: 'tabLongPress', + target: route.key, + }); + }; + + return ( + + + + {this.langLabelReturn(label)} + + {label == 'ShoppingCart' ? ( + + + + {this.store.shoppingCartList.length} + + + ) : ( + + )} + + ); + })} + + ); + } +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..0087d85 --- /dev/null +++ b/README.md @@ -0,0 +1,95 @@ +## Pure Mall + +## Description + The mobile application is an online shopping platform that offers various features such as coupons, online payment, notifications, group shopping formation, group shopping discounts, monthly sales targets with shopping incentives, point rewards, and the ability for teams to use their exclusive points to redeem gifts. users can also check the shopping records of other members in their shopping group. + +### Screenshot + + + + + + + + + + +This is a new [**React Native**](https://reactnative.dev) project, bootstrapped using [`@react-native-community/cli`](https://github.com/react-native-community/cli). + +# Getting Started + +>**Note**: Make sure you have completed the [React Native - Environment Setup](https://reactnative.dev/docs/environment-setup) instructions till "Creating a new application" step, before proceeding. + +## Step 1: Start the Metro Server + +First, you will need to start **Metro**, the JavaScript _bundler_ that ships _with_ React Native. + +To start Metro, run the following command from the _root_ of your React Native project: + +```bash +# using npm +npm start + +# OR using Yarn +yarn start +``` + +## Step 2: Start your Application + +Let Metro Bundler run in its _own_ terminal. Open a _new_ terminal from the _root_ of your React Native project. Run the following command to start your _Android_ or _iOS_ app: + +### For Android + +```bash +# using npm +npm run android + +# OR using Yarn +yarn android +``` + +### For iOS + +```bash +# using npm +npm run ios + +# OR using Yarn +yarn ios +``` + +If everything is set up _correctly_, you should see your new app running in your _Android Emulator_ or _iOS Simulator_ shortly provided you have set up your emulator/simulator correctly. + +This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively. + +## Step 3: Modifying your App + +Now that you have successfully run the app, let's modify it. + +1. Open `App.tsx` in your text editor of choice and edit some lines. +2. For **Android**: Press the R key twice or select **"Reload"** from the **Developer Menu** (Ctrl + M (on Window and Linux) or Cmd ⌘ + M (on macOS)) to see your changes! + + For **iOS**: Hit Cmd ⌘ + R in your iOS Simulator to reload the app and see your changes! + +## Congratulations! :tada: + +You've successfully run and modified your React Native App. :partying_face: + +### Now what? + +- If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps). +- If you're curious to learn more about React Native, check out the [Introduction to React Native](https://reactnative.dev/docs/getting-started). + +# Troubleshooting + +If you can't get this to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page. + +# Learn More + +To learn more about React Native, take a look at the following resources: + +- [React Native Website](https://reactnative.dev) - learn more about React Native. +- [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment. +- [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**. +- [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts. +- [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native. diff --git a/__tests__/App-test.js b/__tests__/App-test.js new file mode 100644 index 0000000..1784766 --- /dev/null +++ b/__tests__/App-test.js @@ -0,0 +1,14 @@ +/** + * @format + */ + +import 'react-native'; +import React from 'react'; +import App from '../App'; + +// Note: test renderer must be required after react-native. +import renderer from 'react-test-renderer'; + +it('renders correctly', () => { + renderer.create(); +}); diff --git a/app.json b/app.json new file mode 100644 index 0000000..aab6c98 --- /dev/null +++ b/app.json @@ -0,0 +1,4 @@ +{ + "name": "puremall", + "displayName": "puremall" +} \ No newline at end of file diff --git a/appVersion.js b/appVersion.js new file mode 100644 index 0000000..5f958c6 --- /dev/null +++ b/appVersion.js @@ -0,0 +1,3 @@ +export default { + version: '1.0', +}; diff --git a/babel.config.js b/babel.config.js new file mode 100644 index 0000000..22b2abd --- /dev/null +++ b/babel.config.js @@ -0,0 +1,8 @@ +module.exports = { + presets: ['module:metro-react-native-babel-preset'], + plugins: [ + ['@babel/plugin-transform-flow-strip-types'], + ['@babel/plugin-proposal-decorators', {legacy: true}], + ['@babel/plugin-proposal-class-properties', {loose: true}], + ], +}; diff --git a/index.js b/index.js new file mode 100644 index 0000000..2e8c788 --- /dev/null +++ b/index.js @@ -0,0 +1,67 @@ +/** + * @format + */ +import React from 'react'; +import { AppRegistry, Platform } from 'react-native'; +import App from './App'; +import { name as appName } from './app.json'; +import codePush from 'react-native-code-push'; +import moment from 'moment'; +import messaging from '@react-native-firebase/messaging'; +import AsyncStorage from '@react-native-community/async-storage'; +var CheckisHeadless = true +messaging().setBackgroundMessageHandler(async remoteMessage => { + var notificationRecord = { + notifications: [], + unread: 0, + } + const data = { + id: remoteMessage.messageId, + date: moment().valueOf(), + title: remoteMessage.notification.title, + message: remoteMessage.notification.body, + read: false, + } + console.log(data) + try { + const jsonValue = await AsyncStorage.getItem('notification') + if (jsonValue != null) { + notificationRecord = JSON.parse(jsonValue) + } + console.log(notificationRecord) + + } catch (e) { + console.log(e) + } + + await notificationRecord.notifications.push(data); + notificationRecord.unread += 1; + console.log(notificationRecord) + try { + const saveItem = JSON.stringify(notificationRecord) + await AsyncStorage.setItem('notification', saveItem) + } catch (e) { + console.log(e) + } + +}); + + + +function HeadlessCheck({ isHeadless }) { + console.log(isHeadless) + if (isHeadless) { + // App has been launched in the background by iOS, ignore + return null; + } + + return +} +// HeadlessCheck()=> { +// return codePush(App); +// } +function RealApp() { + return codePush(App); +} + +AppRegistry.registerComponent(appName, () => RealApp()); diff --git a/metro.config copy.js b/metro.config copy.js new file mode 100644 index 0000000..13a9642 --- /dev/null +++ b/metro.config copy.js @@ -0,0 +1,17 @@ +/** + * Metro configuration for React Native + * https://github.com/facebook/react-native + * + * @format + */ + +module.exports = { + transformer: { + getTransformOptions: async () => ({ + transform: { + experimentalImportSupport: false, + inlineRequires: false, + }, + }), + }, +}; diff --git a/metro.config.js b/metro.config.js new file mode 100644 index 0000000..13a9642 --- /dev/null +++ b/metro.config.js @@ -0,0 +1,17 @@ +/** + * Metro configuration for React Native + * https://github.com/facebook/react-native + * + * @format + */ + +module.exports = { + transformer: { + getTransformOptions: async () => ({ + transform: { + experimentalImportSupport: false, + inlineRequires: false, + }, + }), + }, +}; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..82cb00e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,32562 @@ +{ + "name": "puremall", + "version": "0.0.1", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "0.0.1", + "dependencies": { + "@babel/plugin-proposal-decorators": "^7.12.1", + "@invertase/react-native-apple-authentication": "^2.1.2", + "@react-native-community/async-storage": "^1.12.1", + "@react-native-community/datetimepicker": "^3.5.2", + "@react-native-community/masked-view": "^0.1.10", + "@react-native-firebase/app": "^11.2.0", + "@react-native-firebase/messaging": "^11.2.0", + "@react-native-google-signin/google-signin": "^8.1.0", + "@react-navigation/bottom-tabs": "^5.11.2", + "@react-navigation/material-bottom-tabs": "^5.3.10", + "@react-navigation/native": "^5.8.10", + "@react-navigation/stack": "^5.12.8", + "axios": "^0.21.0", + "babel-plugin-transform-decorators-legacy": "^1.3.5", + "buffer": "^6.0.3", + "date-time-format-timezone": "^1.0.22", + "lodash": "^4.17.20", + "lottie-ios": "^3.2.3", + "lottie-react-native": "^4.0.3", + "mobx": "^5.15.4", + "mobx-react": "^6.2.2", + "moment": "^2.29.1", + "qs": "^6.9.4", + "query-string": "^6.13.7", + "react": "16.13.1", + "react-native": "0.63.4", + "react-native-app-intro-slider": "^4.0.4", + "react-native-base64": "^0.1.0", + "react-native-circular-progress": "^1.3.7", + "react-native-code-push": "^7.0.1", + "react-native-confirmation-code-field": "^6.5.1", + "react-native-countdown-component": "^2.7.1", + "react-native-credit-card-input": "^0.4.1", + "react-native-date-picker": "^4.1.1", + "react-native-device-info": "^8.4.8", + "react-native-dialog": "^8.2.0", + "react-native-easy-toast": "^1.2.0", + "react-native-elements": "^3.4.2", + "react-native-fast-image": "^8.3.4", + "react-native-gallery-swiper": "^1.26.4", + "react-native-general-statusbar": "^1.0.1", + "react-native-gesture-handler": "^1.10.3", + "react-native-htmlview": "^0.16.0", + "react-native-image-picker": "^3.2.1", + "react-native-image-viewing": "^0.2.0", + "react-native-keyboard-aware-scroll-view": "^0.9.3", + "react-native-loading-spinner-overlay": "^2.0.0", + "react-native-modal": "^12.0.2", + "react-native-modal-datetime-picker": "^10.2.0", + "react-native-modalize": "^2.0.8", + "react-native-modals": "^0.22.3", + "react-native-paper": "^4.4.1", + "react-native-popup-menu": "^0.15.9", + "react-native-progress": "^4.1.2", + "react-native-reanimated": "^1.13.2", + "react-native-safe-area-context": "^3.1.9", + "react-native-safe-area-view": "^1.1.1", + "react-native-screens": "^2.15.0", + "react-native-size-matters": "^0.3.1", + "react-native-status-bar-height": "^2.6.0", + "react-native-svg": "^12.1.1", + "react-native-swiper": "^1.6.0", + "react-native-switch-pro": "^1.0.5", + "react-native-tab-view": "^2.15.2", + "react-native-textinput-effects": "^0.6.1", + "react-native-uuid": "^1.4.9", + "react-native-vector-icons": "^7.1.0", + "underscore": "^1.12.0" + }, + "devDependencies": { + "@babel/core": "^7.8.4", + "@babel/runtime": "^7.8.4", + "@react-native-community/eslint-config": "^1.1.0", + "babel-jest": "^25.1.0", + "eslint": "^6.5.1", + "jest": "^25.1.0", + "metro-react-native-babel-preset": "^0.59.0", + "react-test-renderer": "16.13.1" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dependencies": { + "@babel/highlight": "7.10.4" + } + }, + "node_modules/@babel/core": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz", + "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@babel/generator": "7.12.11", + "@babel/helper-module-transforms": "7.12.1", + "@babel/helpers": "7.12.5", + "@babel/parser": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "convert-source-map": "1.7.0", + "debug": "4.3.1", + "gensync": "1.0.0-beta.2", + "json5": "2.1.3", + "lodash": "4.17.20", + "semver": "5.7.1", + "source-map": "0.5.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@babel/generator": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", + "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", + "dependencies": { + "@babel/types": "7.12.12", + "jsesc": "2.5.2", + "source-map": "0.5.7" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.10.tgz", + "integrity": "sha512-XplmVbC1n+KY6jL8/fgLVXXUauDIB+lD5+GsQEh6F6GBF1dq1qy4DP4yXWzDKcoqXB3X58t61e85Fitoww4JVQ==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", + "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "dependencies": { + "@babel/helper-explode-assignable-expression": "7.12.1", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz", + "integrity": "sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w==", + "dependencies": { + "@babel/helper-function-name": "7.12.11", + "@babel/helper-member-expression-to-functions": "7.12.7", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.7.tgz", + "integrity": "sha512-idnutvQPdpbduutvi3JVfEgcVIHooQnhvhx0Nk9isOINOIGYkZea1Pk2JlJRiUnMefrlvr0vkByATBY/mB4vjQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "7.12.10", + "regexpu-core": "4.7.1" + } + }, + "node_modules/@babel/helper-define-map": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", + "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "dependencies": { + "@babel/helper-function-name": "7.12.11", + "@babel/types": "7.12.12", + "lodash": "4.17.20" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.1.tgz", + "integrity": "sha512-dmUwH8XmlrUpVqgtZ737tK88v07l840z9j3OEhCLwKTkjlvKpfqXVIZ0wpK3aeOxspwGrf/5AP5qLx4rO3w5rA==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", + "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", + "dependencies": { + "@babel/helper-get-function-arity": "7.12.10", + "@babel/template": "7.12.7", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", + "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", + "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", + "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", + "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", + "dependencies": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-simple-access": "7.12.1", + "@babel/helper-split-export-declaration": "7.12.11", + "@babel/helper-validator-identifier": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "lodash": "4.17.20" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", + "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz", + "integrity": "sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A==", + "dependencies": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-wrap-function": "7.12.3", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", + "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", + "dependencies": { + "@babel/helper-member-expression-to-functions": "7.12.7", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", + "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", + "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", + "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.3.tgz", + "integrity": "sha512-Cvb8IuJDln3rs6tzjW3Y8UeelAOdnpB8xtQ4sme2MSZ9wOxrbThporC0y/EtE16VAtoyEfLM404Xr1e0OOp+ow==", + "dependencies": { + "@babel/helper-function-name": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/helpers": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", + "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", + "dependencies": { + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dependencies": { + "@babel/helper-validator-identifier": "7.12.11", + "chalk": "2.4.2", + "js-tokens": "4.0.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", + "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-external-helpers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-external-helpers/-/plugin-external-helpers-7.12.1.tgz", + "integrity": "sha512-5VBqan0daXhDSRjrq2miABuELRwWJWFdM42Jvs/CDuhp+Es+fW+ISA5l+co8d+9oN3WLz/N3VvzyeseL3AvjxA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.1.tgz", + "integrity": "sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.12.12.tgz", + "integrity": "sha512-fhkE9lJYpw2mjHelBpM2zCbaA11aov2GJs7q4cFaXNrWx0H3bW58H9Esy2rdtYOghFBEYUDRIpvlgi+ZD+AvvQ==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-decorators": "7.12.1" + } + }, + "node_modules/@babel/plugin-proposal-export-default-from": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.12.1.tgz", + "integrity": "sha512-z5Q4Ke7j0AexQRfgUvnD+BdCSgpTEKnqQ3kskk2jWtOBulxICzd1X9BGt7kmWftxZ2W3++OZdt5gtmC8KLxdRQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-export-default-from": "7.12.1" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.1.tgz", + "integrity": "sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-transform-parameters": "7.12.1" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.1.tgz", + "integrity": "sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-optional-catch-binding": "7.8.3" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz", + "integrity": "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "7.12.1", + "@babel/plugin-syntax-optional-chaining": "7.8.3" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz", + "integrity": "sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.1.tgz", + "integrity": "sha512-ir9YW5daRrTYiy9UJ2TzdNIJEZu8KclVzDcfSt4iEmOtwQ4llPtWInNKJyKnVXp1vE4bbVd5S31M/im3mYMO1w==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-export-default-from": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.12.1.tgz", + "integrity": "sha512-dP5eGg6tHEkhnRD2/vRG/KJKRSg8gtxu2i+P/8/yFPJn/CfPU5G0/7Gks2i3M6IOVAPQekmsLN9LPsmXFFL4Uw==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-flow": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.12.1.tgz", + "integrity": "sha512-1lBLLmtxrwpm4VKmtVFselI/P3pX+G63fAtUUt6b2Nzgao77KNDwyuRt90Mj2/9pKobtt68FdvjfqohZjg/FCA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz", + "integrity": "sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz", + "integrity": "sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.1.tgz", + "integrity": "sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A==", + "dependencies": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-remap-async-to-generator": "7.12.1" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.1.tgz", + "integrity": "sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.12.tgz", + "integrity": "sha512-VOEPQ/ExOVqbukuP7BYJtI5ZxxsmegTwzZ04j1aF0dkSypGo9XpDHuOrABsJu+ie+penpSJheDJ11x1BEZNiyQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.1.tgz", + "integrity": "sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog==", + "dependencies": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-define-map": "7.10.5", + "@babel/helper-function-name": "7.12.11", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11", + "globals": "11.12.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.1.tgz", + "integrity": "sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.1.tgz", + "integrity": "sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.1.tgz", + "integrity": "sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug==", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "7.10.4", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-flow-strip-types": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.12.10.tgz", + "integrity": "sha512-0ti12wLTLeUIzu9U7kjqIn4MyOL7+Wibc7avsHhj4o1l5C0ATs8p2IMHrVYjm9t9wzhfEO6S3kxax0Rpdo8LTg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-flow": "7.12.1" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.1.tgz", + "integrity": "sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.1.tgz", + "integrity": "sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw==", + "dependencies": { + "@babel/helper-function-name": "7.12.11", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.1.tgz", + "integrity": "sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.1.tgz", + "integrity": "sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz", + "integrity": "sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag==", + "dependencies": { + "@babel/helper-module-transforms": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-simple-access": "7.12.1", + "babel-plugin-dynamic-import-node": "2.3.3" + } + }, + "node_modules/@babel/plugin-transform-object-assign": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.12.1.tgz", + "integrity": "sha512-geUHn4XwHznRAFiuROTy0Hr7bKbpijJCmr1Svt/VNGhpxmp0OrdxURNpWbOAf94nUbL+xj6gbxRVPHWIbRpRoA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.1.tgz", + "integrity": "sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-replace-supers": "7.12.11" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.1.tgz", + "integrity": "sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.1.tgz", + "integrity": "sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.1.tgz", + "integrity": "sha512-cAzB+UzBIrekfYxyLlFqf/OagTvHLcVBb5vpouzkYkBclRPraiygVnafvAoipErZLI8ANv8Ecn6E/m5qPXD26w==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.12.12.tgz", + "integrity": "sha512-JDWGuzGNWscYcq8oJVCtSE61a5+XAOos+V0HrxnDieUus4UMnBEosDnY1VJqU5iZ4pA04QY7l0+JvHL1hZEfsw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.12.1.tgz", + "integrity": "sha512-FbpL0ieNWiiBB5tCldX17EtXgmzeEZjFrix72rQYeq9X6nUK38HCaxexzVQrZWXanxKJPKVVIU37gFjEQYkPkA==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.12.1.tgz", + "integrity": "sha512-keQ5kBfjJNRc6zZN1/nVHCd6LLIHq4aUKcVnvE/2l+ZZROSbqoiGFRtT5t3Is89XJxBQaP7NLZX2jgGHdZvvFQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.1.tgz", + "integrity": "sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng==", + "dependencies": { + "regenerator-transform": "0.14.5" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.12.10.tgz", + "integrity": "sha512-xOrUfzPxw7+WDm9igMgQCbO3cJKymX7dFdsgRr1eu9n3KjjyU4pptIXbXPseQDquw+W+RuJEJMHKHNsPNNm3CA==", + "dependencies": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "semver": "5.7.1" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.1.tgz", + "integrity": "sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.1.tgz", + "integrity": "sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "7.12.1" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz", + "integrity": "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.1.tgz", + "integrity": "sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz", + "integrity": "sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-typescript": "7.12.1" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.1.tgz", + "integrity": "sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "7.12.7", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "node_modules/@babel/register": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.12.10.tgz", + "integrity": "sha512-EvX/BvMMJRAA3jZgILWgbsrHwBQvllC5T8B29McyME8DvkdOxk4ujESfrMvME8IHSDvWXrmMXxPvA/lx2gqPLQ==", + "dependencies": { + "find-cache-dir": "2.1.0", + "lodash": "4.17.20", + "make-dir": "2.1.0", + "pirates": "4.0.1", + "source-map-support": "0.5.19" + } + }, + "node_modules/@babel/runtime": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.5.tgz", + "integrity": "sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==", + "dependencies": { + "regenerator-runtime": "0.13.7" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.12.5.tgz", + "integrity": "sha512-roGr54CsTmNPPzZoCP1AmDXuBoNao7tnSA83TXTwt+UK5QVyh1DIJnrgYRPWKCF2flqZQXwa7Yr8v7VmLzF0YQ==", + "dev": true, + "dependencies": { + "core-js-pure": "3.8.3", + "regenerator-runtime": "0.13.7" + } + }, + "node_modules/@babel/runtime-corejs3/node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", + "dev": true + }, + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + }, + "node_modules/@babel/template": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", + "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12" + } + }, + "node_modules/@babel/traverse": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", + "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@babel/generator": "7.12.11", + "@babel/helper-function-name": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12", + "debug": "4.3.1", + "globals": "11.12.0", + "lodash": "4.17.20" + } + }, + "node_modules/@babel/types": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", + "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", + "dependencies": { + "@babel/helper-validator-identifier": "7.12.11", + "lodash": "4.17.20", + "to-fast-properties": "2.0.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@callstack/react-theme-provider": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.5.tgz", + "integrity": "sha512-Iec+ybWN0FvNj87sD3oWo/49edGUP0UOSdMnzCJEFJIDYr992ECIuOV89burAAh2/ibPCxgLiK6dmgv2mO/8Tg==", + "dependencies": { + "deepmerge": "3.3.0", + "hoist-non-react-statics": "3.3.2" + } + }, + "node_modules/@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "dependencies": { + "exec-sh": "0.3.4", + "minimist": "1.2.5" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, + "node_modules/@egjs/hammerjs": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", + "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", + "dependencies": { + "@types/hammerjs": "2.0.36" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==" + }, + "node_modules/@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==" + }, + "node_modules/@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==" + }, + "node_modules/@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "dependencies": { + "@hapi/address": "2.1.4", + "@hapi/bourne": "1.3.2", + "@hapi/hoek": "8.5.1", + "@hapi/topo": "3.1.6" + } + }, + "node_modules/@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "dependencies": { + "@hapi/hoek": "8.5.1" + } + }, + "node_modules/@invertase/react-native-apple-authentication": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@invertase/react-native-apple-authentication/-/react-native-apple-authentication-2.1.2.tgz", + "integrity": "sha512-FzY+CApZLgGS9fmPBDB2kFBMePB37bH0+4h4e8gHtnHm/hF3/iqANAS6oXQq7W3SC+bgciuq38jeLFqNLgAmCA==" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "5.3.1", + "find-up": "4.1.0", + "get-package-type": "0.1.0", + "js-yaml": "3.14.1", + "resolve-from": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "dependencies": { + "@jest/source-map": "24.9.0", + "chalk": "2.4.2", + "slash": "2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/console/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@jest/core": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.5.4.tgz", + "integrity": "sha512-3uSo7laYxF00Dg/DMgbn4xMJKmDdWvZnf89n8Xj/5/AeQ2dOQmn6b6Hkj/MleyzZWXpwv+WSdYWl4cLsy2JsoA==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/reporters": "25.5.1", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "ansi-escapes": "4.3.1", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "jest-changed-files": "25.5.0", + "jest-config": "25.5.4", + "jest-haste-map": "25.5.1", + "jest-message-util": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-resolve-dependencies": "25.5.4", + "jest-runner": "25.5.4", + "jest-runtime": "25.5.4", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "jest-watcher": "25.5.0", + "micromatch": "4.0.2", + "p-each-series": "2.2.0", + "realpath-native": "2.0.0", + "rimraf": "3.0.2", + "slash": "3.0.0", + "strip-ansi": "6.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "dependencies": { + "type-fest": "0.11.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/core/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/core/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/core/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/@jest/core/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/@jest/core/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/core/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "7.1.6" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/@jest/core/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/core/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/environment": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.5.0.tgz", + "integrity": "sha512-U2VXPEqL07E/V7pSZMSQCvV5Ea4lqOlT+0ZFijl/i316cRMHvZ4qC+jBdryd+lmRetjQo0YIQr6cVPNxxK87mA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/environment/node_modules/@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/environment/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/environment/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/environment/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/environment/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/environment/node_modules/jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/environment/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/environment/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "dependencies": { + "@jest/types": "24.9.0", + "jest-message-util": "24.9.0", + "jest-mock": "24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/fake-timers/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/fake-timers/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/@jest/globals": { + "version": "25.5.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-25.5.2.tgz", + "integrity": "sha512-AgAS/Ny7Q2RCIj5kZ+0MuKM1wbF0WMLxbCVl/GOMoCNbODRdJ541IxJ98xnZdVSZXivKpJlNPIWa3QmY0l4CXA==", + "dev": true, + "dependencies": { + "@jest/environment": "25.5.0", + "@jest/types": "25.5.0", + "expect": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.5.1.tgz", + "integrity": "sha512-3jbd8pPDTuhYJ7vqiHXbSwTJQNavczPs+f1kRprRDxETeE3u6srJ+f0NPuwvOmk+lmunZzPkYWIFZDLHQPkviw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "0.2.3", + "@jest/console": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "collect-v8-coverage": "1.0.1", + "exit": "0.1.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "istanbul-lib-coverage": "3.0.0", + "istanbul-lib-instrument": "4.0.3", + "istanbul-lib-report": "3.0.0", + "istanbul-lib-source-maps": "4.0.0", + "istanbul-reports": "3.0.2", + "jest-haste-map": "25.5.1", + "jest-resolve": "25.5.1", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "slash": "3.0.0", + "source-map": "0.6.1", + "string-length": "3.1.0", + "terminal-link": "2.1.1", + "v8-to-istanbul": "4.1.4" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "node-notifier": "6.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/reporters/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/reporters/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/@jest/reporters/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/reporters/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/@jest/reporters/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/reporters/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/reporters/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "dependencies": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/source-map/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@jest/source-map/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "dependencies": { + "@jest/console": "24.9.0", + "@jest/types": "24.9.0", + "@types/istanbul-lib-coverage": "2.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/test-result/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/test-result/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.5.4.tgz", + "integrity": "sha512-pTJGEkSeg1EkCO2YWq6hbFvKNXk8ejqlxiOg1jBNLnWrgXOkdY6UmqZpwGFXNnRt9B8nO1uWMzLLZ4eCmhkPNA==", + "dev": true, + "dependencies": { + "@jest/test-result": "25.5.0", + "graceful-fs": "4.2.4", + "jest-haste-map": "25.5.1", + "jest-runner": "25.5.4", + "jest-runtime": "25.5.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/test-sequencer/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/test-sequencer/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/@jest/test-sequencer/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/test-sequencer/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/test-sequencer/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/transform": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.5.1.tgz", + "integrity": "sha512-Y8CEoVwXb4QwA6Y/9uDkn0Xfz0finGkieuV0xkdF9UtZGJeLukD5nLkaVrVsODB1ojRWlaoD0AJZpVHCSnJEvg==", + "dev": true, + "dependencies": { + "@babel/core": "7.12.10", + "@jest/types": "25.5.0", + "babel-plugin-istanbul": "6.0.0", + "chalk": "3.0.0", + "convert-source-map": "1.7.0", + "fast-json-stable-stringify": "2.1.0", + "graceful-fs": "4.2.4", + "jest-haste-map": "25.5.1", + "jest-regex-util": "25.2.6", + "jest-util": "25.5.0", + "micromatch": "4.0.2", + "pirates": "4.0.1", + "realpath-native": "2.0.0", + "slash": "3.0.0", + "source-map": "0.6.1", + "write-file-atomic": "3.0.3" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/transform/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/transform/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/@jest/transform/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/transform/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/transform/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/transform/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/transform/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@jest/transform/node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "0.1.4", + "is-typedarray": "1.0.0", + "signal-exit": "3.0.3", + "typedarray-to-buffer": "3.1.5" + } + }, + "node_modules/@jest/types": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "15.0.12", + "chalk": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/art": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@react-native-community/art/-/art-1.2.0.tgz", + "integrity": "sha512-a+ZcRGl/BzLa89yi33Mbn5SHavsEXqKUMdbfLf3U8MDLElndPqUetoJyGkv63+BcPO49UMWiQRP1YUz6/zfJ+A==", + "dependencies": { + "art": "0.10.3", + "invariant": "2.2.4", + "prop-types": "15.7.2" + } + }, + "node_modules/@react-native-community/async-storage": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@react-native-community/async-storage/-/async-storage-1.12.1.tgz", + "integrity": "sha512-70WGaH3PKYASi4BThuEEKMkyAgE9k7VytBqmgPRx3MzJx9/MkspwqJGmn3QLCgHLIFUgF1pit2mWICbRJ3T3lg==", + "dependencies": { + "deep-assign": "3.0.0" + } + }, + "node_modules/@react-native-community/cli-debugger-ui": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.13.1.tgz", + "integrity": "sha512-UFnkg5RTq3s2X15fSkrWY9+5BKOFjihNSnJjTV2H5PtTUFbd55qnxxPw8CxSfK0bXb1IrSvCESprk2LEpqr5cg==", + "dependencies": { + "serve-static": "1.14.1" + } + }, + "node_modules/@react-native-community/cli-hermes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-4.13.0.tgz", + "integrity": "sha512-oG+w0Uby6rSGsUkJGLvMQctZ5eVRLLfhf84lLyz942OEDxFRa9U19YJxOe9FmgCKtotbYiM3P/XhK+SVCuerPQ==", + "dependencies": { + "@react-native-community/cli-platform-android": "4.13.0", + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "hermes-profile-transformer": "0.0.6", + "ip": "1.1.5" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@react-native-community/cli-hermes/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-android": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-4.13.0.tgz", + "integrity": "sha512-3i8sX8GklEytUZwPnojuoFbCjIRzMugCdzDIdZ9UNmi/OhD4/8mLGO0dgXfT4sMWjZwu3qjy45sFfk2zOAgHbA==", + "dependencies": { + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "execa": "1.0.0", + "fs-extra": "8.1.0", + "glob": "7.1.6", + "jetifier": "1.6.6", + "lodash": "4.17.20", + "logkitty": "0.7.1", + "slash": "3.0.0", + "xmldoc": "1.1.2" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-ios": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-4.13.0.tgz", + "integrity": "sha512-6THlTu8zp62efkzimfGr3VIuQJ2514o+vScZERJCV1xgEi8XtV7mb/ZKt9o6Y9WGxKKkc0E0b/aVAtgy+L27CA==", + "dependencies": { + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "glob": "7.1.6", + "js-yaml": "3.14.1", + "lodash": "4.17.20", + "plist": "3.0.1", + "xcode": "2.1.0" + } + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-platform-ios/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-server-api": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-4.13.1.tgz", + "integrity": "sha512-vQzsFKD9CjHthA2ehTQX8c7uIzlI9A7ejaIow1I9RlEnLraPH2QqVDmzIdbdh5Od47UPbRzamCgAP8Bnqv3qwQ==", + "dependencies": { + "@react-native-community/cli-debugger-ui": "4.13.1", + "@react-native-community/cli-tools": "4.13.0", + "compression": "1.7.4", + "connect": "3.7.0", + "errorhandler": "1.5.1", + "nocache": "2.1.0", + "pretty-format": "25.5.0", + "serve-static": "1.14.1", + "ws": "1.1.5" + } + }, + "node_modules/@react-native-community/cli-server-api/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-server-api/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-server-api/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-server-api/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@react-native-community/cli-server-api/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/@react-native-community/cli-tools": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-4.13.0.tgz", + "integrity": "sha512-s4f489h5+EJksn4CfheLgv5PGOM0CDmK1UEBLw2t/ncWs3cW2VI7vXzndcd/WJHTv3GntJhXDcJMuL+Z2IAOgg==", + "dependencies": { + "chalk": "3.0.0", + "lodash": "4.17.20", + "mime": "2.5.0", + "node-fetch": "2.6.1", + "open": "6.4.0", + "shell-quote": "1.6.1" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/@react-native-community/cli-tools/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/mime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz", + "integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@react-native-community/cli-tools/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-types": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-4.10.1.tgz", + "integrity": "sha512-ael2f1onoPF3vF7YqHGWy7NnafzGu+yp88BbFbP0ydoCP2xGSUzmZVw0zakPTC040Id+JQ9WeFczujMkDy6jYQ==" + }, + "node_modules/@react-native-community/datetimepicker": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@react-native-community/datetimepicker/-/datetimepicker-3.5.2.tgz", + "integrity": "sha512-TWRuAtr/DnrEcRewqvXMLea2oB+YF+SbtuYLHguALLxNJQLl/RFB7aTNZeF+OoH75zKFqtXECXV1/uxQUpA+sg==", + "dependencies": { + "invariant": "^2.2.4" + } + }, + "node_modules/@react-native-community/eslint-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@react-native-community/eslint-config/-/eslint-config-1.1.0.tgz", + "integrity": "sha512-hwb1hC28BhkwLwnO6vDISV6XZbipw2RIEhBVBN+pE7AUG9HjFXxoksiiOSoYgox9C8g86VJwHnKpak/3NnVBkQ==", + "dev": true, + "dependencies": { + "@react-native-community/eslint-plugin": "1.1.0", + "@typescript-eslint/eslint-plugin": "2.34.0", + "@typescript-eslint/parser": "2.34.0", + "babel-eslint": "10.1.0", + "eslint-config-prettier": "6.15.0", + "eslint-plugin-eslint-comments": "3.2.0", + "eslint-plugin-flowtype": "2.50.3", + "eslint-plugin-jest": "22.4.1", + "eslint-plugin-prettier": "3.1.2", + "eslint-plugin-react": "7.19.0", + "eslint-plugin-react-hooks": "3.0.0", + "eslint-plugin-react-native": "3.8.1", + "prettier": "2.2.1" + } + }, + "node_modules/@react-native-community/eslint-plugin": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@react-native-community/eslint-plugin/-/eslint-plugin-1.1.0.tgz", + "integrity": "sha512-W/J0fNYVO01tioHjvYWQ9m6RgndVtbElzYozBq1ZPrHO/iCzlqoySHl4gO/fpCl9QEFjvJfjPgtPMTMlsoq5DQ==", + "dev": true + }, + "node_modules/@react-native-community/masked-view": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/@react-native-community/masked-view/-/masked-view-0.1.10.tgz", + "integrity": "sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ==" + }, + "node_modules/@react-native-firebase/app": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/@react-native-firebase/app/-/app-11.2.0.tgz", + "integrity": "sha512-TLrttjy6h5rhmRqnKFe67GNbYeB1VZphH5Gm+pYJzfIbMsh/m6q2Au1D4jmLnfjpqXAaTtAhetnODyT1TH/LzQ==", + "dependencies": { + "opencollective-postinstall": "2.0.3", + "superstruct": "0.6.2" + } + }, + "node_modules/@react-native-firebase/messaging": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/@react-native-firebase/messaging/-/messaging-11.2.0.tgz", + "integrity": "sha512-TSfEpTqZGf/eQ/5qTVyhX74YvOkk4Kx7Dq/y6XBz8rYFEyxayjpJ/RV9SXTUbDYunOyhC7EUJxcWvG6C5AjoTw==" + }, + "node_modules/@react-native-google-signin/google-signin": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@react-native-google-signin/google-signin/-/google-signin-8.1.0.tgz", + "integrity": "sha512-63o8iJrihAuGDxvm8k8Ghy2rHha+OsQ8XrcbsOEhV/R9HTZL2qRyNwvm/NaHCCpuf/bywA8WFGerw+d8REDBKQ==", + "peerDependencies": { + "@expo/config-plugins": "^4.1.0", + "react": "*", + "react-native": "*" + }, + "peerDependenciesMeta": { + "@expo/config-plugins": { + "optional": true + } + } + }, + "node_modules/@react-navigation/bottom-tabs": { + "version": "5.11.3", + "resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-5.11.3.tgz", + "integrity": "sha512-ez79zP21wtuHcnIm96fld4MXc9oOSpJCG78MTo/Jw+yZxZsQdF4N55ABiLfaQ/48QyZr8cfi0GkP/AYheZwm6A==", + "dependencies": { + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "node_modules/@react-navigation/core": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-5.15.0.tgz", + "integrity": "sha512-JesS2jRn6CC7ITzGaulZBVq7Z1EhFzT/9vXSFodJ1wDtprDJHLSjvPLuPcSw1dx9/1DRXj4iCeCBTIlDpNWJeA==", + "dependencies": { + "@react-navigation/routers": "5.7.0", + "escape-string-regexp": "4.0.0", + "nanoid": "3.1.20", + "query-string": "6.13.8", + "react-is": "16.13.1" + } + }, + "node_modules/@react-navigation/core/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@react-navigation/material-bottom-tabs": { + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/@react-navigation/material-bottom-tabs/-/material-bottom-tabs-5.3.11.tgz", + "integrity": "sha512-a/OcYDPFkM4WUpeSGXeLkN9kiCGAE7b6dX7aiiRZEguxrOiUAfo3pMnuFkaY3ZMFANsBNkR3O1V5rkVYj/yWCw==" + }, + "node_modules/@react-navigation/native": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-5.9.0.tgz", + "integrity": "sha512-IphWd6uITuEC4zEfWESPiM6EPUnpnYC4lsGK3m75mlxca/MWok4bUCX73OL/iBlCi9skFAGyP9XccFyrFEIHIg==", + "dependencies": { + "@react-navigation/core": "5.15.0", + "escape-string-regexp": "4.0.0", + "nanoid": "3.1.20" + } + }, + "node_modules/@react-navigation/native/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@react-navigation/routers": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@react-navigation/routers/-/routers-5.7.0.tgz", + "integrity": "sha512-Du1OsLtEF2EEWo7GeFNoBRBi4aX4eHdFQXztNxeL/N3Gl3f8wc6Ys0XTWHgWlWQIspqOfup5YF3WQcLArunjvg==", + "dependencies": { + "nanoid": "3.1.20" + } + }, + "node_modules/@react-navigation/stack": { + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/@react-navigation/stack/-/stack-5.13.0.tgz", + "integrity": "sha512-UorckfT7p7D5BLMJgpi8lY6duSV6WSG/NwidxWQK06u5bO0Uwxgx9sINjJZbS5+ijVJy8bB8SbG/I+H2bgT4eA==", + "dependencies": { + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.2.tgz", + "integrity": "sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.12", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz", + "integrity": "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==", + "dev": true, + "dependencies": { + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12", + "@types/babel__generator": "7.6.2", + "@types/babel__template": "7.4.0", + "@types/babel__traverse": "7.11.0" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", + "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", + "dev": true, + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", + "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", + "dev": true, + "dependencies": { + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.0.tgz", + "integrity": "sha512-kSjgDMZONiIfSH1Nxcr5JIRMwUetDki63FSQfpTCz8ogF3Ulqm8+mr5f78dUYs6vMiB6gBusQqfQmBvHZj/lwg==", + "dev": true, + "dependencies": { + "@babel/types": "7.12.12" + } + }, + "node_modules/@types/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", + "dev": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.4.tgz", + "integrity": "sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==", + "dev": true, + "dependencies": { + "@types/node": "14.14.21" + } + }, + "node_modules/@types/hammerjs": { + "version": "2.0.36", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.36.tgz", + "integrity": "sha512-7TUK/k2/QGpEAv/BCwSHlYu3NXZhQ9ZwBYpzr9tjlPIL2C5BeGhH3DmVavRx3ZNyELX5TLC91JTz/cen6AAtIQ==" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", + "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-lib-report": "3.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz", + "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==", + "dev": true + }, + "node_modules/@types/node": { + "version": "14.14.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.21.tgz", + "integrity": "sha512-cHYfKsnwllYhjOzuC5q1VpguABBeecUp24yFluHpn/BQaVxB1CuQ1FSRZCzrPxrkIfWISXV2LbeoBthLWg0+0A==", + "dev": true + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==", + "dev": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.3", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", + "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" + }, + "node_modules/@types/react": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.0.tgz", + "integrity": "sha512-aj/L7RIMsRlWML3YB6KZiXB3fV2t41+5RBGYF8z+tAKU43Px8C3cYUZsDvf1/+Bm4FK21QWBrDutu8ZJ/70qOw==", + "dependencies": { + "@types/prop-types": "15.7.3", + "csstype": "3.0.6" + } + }, + "node_modules/@types/react-native": { + "version": "0.63.46", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.63.46.tgz", + "integrity": "sha512-SnBnWRErpISIaWk4K8kAfIKqSPdZ8fdH6HIw7kVdz6jMl/5FAf6iXeIwRfVZg1bCMh+ymNPCpSENNNEVprxj/w==", + "dependencies": { + "@types/react": "17.0.0" + } + }, + "node_modules/@types/react-native-vector-icons": { + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/@types/react-native-vector-icons/-/react-native-vector-icons-6.4.6.tgz", + "integrity": "sha512-lAyxNfMd5L1xZvXWsGcJmNegDf61TAp40uL6ashNNWj9W3IrDJO59L9+9inh0Y2MsEZpLTdxzVU8Unb4/0FQng==", + "dependencies": { + "@types/react": "17.0.0", + "@types/react-native": "0.63.46" + } + }, + "node_modules/@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==" + }, + "node_modules/@types/yargs": { + "version": "15.0.12", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.12.tgz", + "integrity": "sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/@types/yargs-parser": { + "version": "20.2.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz", + "integrity": "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", + "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "2.34.0", + "functional-red-black-tree": "1.0.1", + "regexpp": "3.1.0", + "tsutils": "3.19.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", + "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", + "dev": true, + "dependencies": { + "@types/json-schema": "7.0.6", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-scope": "5.1.1", + "eslint-utils": "2.1.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", + "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", + "dev": true, + "dependencies": { + "@types/eslint-visitor-keys": "1.0.0", + "@typescript-eslint/experimental-utils": "2.34.0", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-visitor-keys": "1.3.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", + "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", + "dev": true, + "dependencies": { + "debug": "4.3.1", + "eslint-visitor-keys": "1.3.0", + "glob": "7.1.6", + "is-glob": "4.0.1", + "lodash": "4.17.20", + "semver": "7.3.4", + "tsutils": "3.19.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "5.0.1" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/absolute-path": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/absolute-path/-/absolute-path-0.0.0.tgz", + "integrity": "sha1-p4di+9rftSl76ZsV01p4Wy8JW/c=" + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "2.1.28", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", + "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "dev": true, + "dependencies": { + "acorn": "6.4.2", + "acorn-walk": "6.2.0" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true + }, + "node_modules/acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4.3.1" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "3.1.3", + "fast-json-stable-stringify": "2.1.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.4.1" + } + }, + "node_modules/anser": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz", + "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==" + }, + "node_modules/ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-fragments": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ansi-fragments/-/ansi-fragments-0.2.1.tgz", + "integrity": "sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==", + "dependencies": { + "colorette": "1.2.1", + "slice-ansi": "2.1.0", + "strip-ansi": "5.2.0" + } + }, + "node_modules/ansi-fragments/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-fragments/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "1.9.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dependencies": { + "micromatch": "3.1.10", + "normalize-path": "2.1.1" + } + }, + "node_modules/appcenter-file-upload-client": { + "version": "0.0.24", + "resolved": "https://registry.npmjs.org/appcenter-file-upload-client/-/appcenter-file-upload-client-0.0.24.tgz", + "integrity": "sha512-DqeXWXs68YYXdq7ieBfJ/lOmGvbFuzLrpe1SW5an2TDwkr1QfFfEpz5SHgwJirWfq/dXtGFbk2oTcsLyLFssQQ==", + "dependencies": { + "detect-node": "2.0.5", + "superagent": "5.1.0", + "url-parse": "1.5.1" + } + }, + "node_modules/appcenter-file-upload-client/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/appcenter-file-upload-client/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "2.0.4", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/appcenter-file-upload-client/node_modules/superagent": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.1.0.tgz", + "integrity": "sha512-7V6JVx5N+eTL1MMqRBX0v0bG04UjrjAvvZJTF/VDH/SH2GjSLqlrcYepFlpTrXpm37aSY6h3GGVWGxXl/98TKA==", + "dependencies": { + "component-emitter": "1.3.0", + "cookiejar": "2.1.2", + "debug": "4.3.1", + "fast-safe-stringify": "2.0.7", + "form-data": "2.3.3", + "formidable": "1.2.2", + "methods": "1.1.2", + "mime": "2.5.2", + "qs": "6.9.6", + "readable-stream": "3.6.0", + "semver": "6.3.0" + }, + "engines": { + "node": ">= 6.4.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "1.0.3" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "node_modules/array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" + }, + "node_modules/array-includes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", + "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "get-intrinsic": "1.0.2", + "is-string": "1.0.5" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" + }, + "node_modules/array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" + }, + "node_modules/array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/art": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/art/-/art-0.10.3.tgz", + "integrity": "sha512-HXwbdofRTiJT6qZX/FnchtldzJjS3vkLJxQilc3Xj+ma2MXjY4UAyQ0ls1XZYVnDvVIBiFZbC6QsvtW86TD6tQ==", + "engines": { + "node": "*" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "dependencies": { + "safer-buffer": "2.1.2" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dependencies": { + "tslib": "2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ast-types/node_modules/tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "4.17.20" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "node_modules/axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "dependencies": { + "follow-redirects": "1.13.1" + } + }, + "node_modules/babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dependencies": { + "chalk": "1.1.3", + "esutils": "2.0.3", + "js-tokens": "3.0.2" + } + }, + "node_modules/babel-code-frame/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dependencies": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "node_modules/babel-code-frame/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + } + }, + "node_modules/babel-core/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/babel-core/node_modules/json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/babel-core/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/babel-core/node_modules/slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "eslint-visitor-keys": "1.3.0", + "resolve": "1.19.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dependencies": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + } + }, + "node_modules/babel-generator/node_modules/jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/babel-jest": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.5.1.tgz", + "integrity": "sha512-9dA9+GmMjIzgPnYtkhBg73gOo/RHqPmLruP3BaGL4KEX3Dwz6pI8auSN8G8+iuEG90+GSswyKvslN+JYSaacaQ==", + "dev": true, + "dependencies": { + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "@types/babel__core": "7.1.12", + "babel-plugin-istanbul": "6.0.0", + "babel-preset-jest": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dependencies": { + "babel-runtime": "6.26.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dependencies": { + "object.assign": "4.1.2" + } + }, + "node_modules/babel-plugin-flow-react-proptypes": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-flow-react-proptypes/-/babel-plugin-flow-react-proptypes-9.2.0.tgz", + "integrity": "sha512-gmClrDpTB1H27mh+6/8iliV5BzGic5F9DO7INAd/30sSkg4XZd7LTbv4z06usuUHS8SzXibwotk8ct51IZ5OaQ==", + "dependencies": { + "babel-core": "^6.25.0", + "babel-template": "^6.25.0", + "babel-traverse": "^6.25.0", + "babel-types": "^6.25.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", + "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@istanbuljs/load-nyc-config": "1.1.0", + "@istanbuljs/schema": "0.1.2", + "istanbul-lib-instrument": "4.0.3", + "test-exclude": "6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.5.0.tgz", + "integrity": "sha512-u+/W+WAjMlvoocYGTwthAiQSxDcJAyHpQ6oWlHdFZaaN+Rlk8Q7iiwDPg2lN/FyJtAYnKjFxbn7xus4HCFkg5g==", + "dev": true, + "dependencies": { + "@babel/template": "7.12.7", + "@babel/types": "7.12.12", + "@types/babel__traverse": "7.11.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" + }, + "node_modules/babel-plugin-syntax-trailing-function-commas": { + "version": "7.0.0-beta.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz", + "integrity": "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==" + }, + "node_modules/babel-plugin-transform-decorators-legacy": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators-legacy/-/babel-plugin-transform-decorators-legacy-1.3.5.tgz", + "integrity": "sha512-jYHwjzRXRelYQ1uGm353zNzf3QmtdCfvJbuYTZ4gKveK7M9H1fs3a5AKdY1JUDl0z97E30ukORW1dzhWvsabtA==", + "dependencies": { + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.4.tgz", + "integrity": "sha512-5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "7.8.4", + "@babel/plugin-syntax-bigint": "7.8.3", + "@babel/plugin-syntax-class-properties": "7.12.1", + "@babel/plugin-syntax-import-meta": "7.10.4", + "@babel/plugin-syntax-json-strings": "7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3", + "@babel/plugin-syntax-numeric-separator": "7.10.4", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "7.8.3", + "@babel/plugin-syntax-optional-chaining": "7.8.3" + } + }, + "node_modules/babel-preset-fbjs": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.3.0.tgz", + "integrity": "sha512-7QTLTCd2gwB2qGoi5epSULMHugSVgpcVt5YAeiFO9ABLrutDQzKfGwzxgZHLpugq8qMdg/DhRZDZ5CLKxBkEbw==", + "dependencies": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-class-properties": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoped-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-member-expression-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-super": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-property-literals": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-template-literals": "7.12.1", + "babel-plugin-syntax-trailing-function-commas": "7.0.0-beta.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.5.0.tgz", + "integrity": "sha512-8ZczygctQkBU+63DtSOKGh7tFL0CeCuz+1ieud9lJ1WPQ9O6A1a/r+LGn6Y705PA6whHQ3T1XuB/PmpfNYf8Fw==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "25.5.0", + "babel-preset-current-node-syntax": "0.1.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dependencies": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + } + }, + "node_modules/babel-register/node_modules/source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dependencies": { + "core-js": "2.6.12", + "regenerator-runtime": "0.11.1" + } + }, + "node_modules/babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dependencies": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.20" + } + }, + "node_modules/babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dependencies": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.4", + "lodash": "4.17.20" + } + }, + "node_modules/babel-traverse/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/babel-traverse/node_modules/globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-traverse/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dependencies": { + "babel-runtime": "6.26.0", + "esutils": "2.0.3", + "lodash": "4.17.20", + "to-fast-properties": "1.0.3" + } + }, + "node_modules/babel-types/node_modules/to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "bin": { + "babylon": "bin/babylon.js" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dependencies": { + "cache-base": "1.0.1", + "class-utils": "0.3.6", + "component-emitter": "1.3.0", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.2", + "pascalcase": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "dependencies": { + "tweetnacl": "0.14.5" + } + }, + "node_modules/big-integer": { + "version": "1.6.48", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz", + "integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "node_modules/bplist-creator": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.8.tgz", + "integrity": "sha512-Za9JKzD6fjLC16oX2wsXfc+qBEhJBJB1YPInoAQpMLhDuj5aVOv1baGeIQSq1Fr3OCqzvsoQcSBSwGId/Ja2PA==", + "dependencies": { + "stream-buffers": "2.2.0" + } + }, + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "dependencies": { + "big-integer": "1.6.48" + }, + "engines": { + "node": ">= 5.10.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.3", + "snapdragon": "0.8.2", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "dependencies": { + "resolve": "1.1.7" + } + }, + "node_modules/browser-resolve/node_modules/resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dependencies": { + "node-int64": "0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dependencies": { + "base64-js": "1.5.1", + "ieee754": "1.2.1" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dependencies": { + "collection-visit": "1.0.0", + "component-emitter": "1.3.0", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.1", + "to-object-path": "0.3.0", + "union-value": "1.0.1", + "unset-value": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "1.1.1", + "get-intrinsic": "1.0.2" + } + }, + "node_modules/caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dependencies": { + "callsites": "2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dependencies": { + "caller-callsite": "2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "engines": { + "node": ">=4" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dependencies": { + "rsvp": "4.8.5" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/card-validator": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/card-validator/-/card-validator-3.0.1.tgz", + "integrity": "sha1-3ML6vWoc0h82GyU2Qjpy3pmgiU8=", + "dependencies": { + "credit-card-type": "5.0.4", + "lodash": "3.10.1" + } + }, + "node_modules/card-validator/node_modules/lodash": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dependencies": { + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "static-extend": "0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "0.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dependencies": { + "restore-cursor": "2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cli-spinners": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz", + "integrity": "sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + }, + "node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dependencies": { + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "wrap-ansi": "6.2.0" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", + "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", + "dependencies": { + "for-own": "1.0.0", + "is-plain-object": "2.0.4", + "kind-of": "6.0.3", + "shallow-clone": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/code-push": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/code-push/-/code-push-4.0.4.tgz", + "integrity": "sha512-CIxGvXt4o/iiYSSZT7mhkAz0EeCJms3255PIs3BMawHptnBRrXUAma4JKRwSlldmZhpO425WXHZRaHc9HorM3A==", + "dependencies": { + "appcenter-file-upload-client": "0.0.24", + "recursive-fs": "2.1.0", + "slash": "3.0.0", + "superagent": "5.3.1", + "superagent-proxy": "2.1.0", + "yazl": "2.5.1" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dependencies": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/color/-/color-3.1.3.tgz", + "integrity": "sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==", + "dependencies": { + "color-convert": "1.9.3", + "color-string": "1.5.4" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/color-string": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.4.tgz", + "integrity": "sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw==", + "dependencies": { + "color-name": "1.1.3", + "simple-swizzle": "0.2.2" + } + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": "1.45.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "1.3.7", + "bytes": "3.0.0", + "compressible": "2.0.18", + "debug": "2.6.9", + "on-headers": "1.0.2", + "safe-buffer": "5.1.2", + "vary": "1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "1.1.1", + "inherits": "2.0.4", + "readable-stream": "2.3.7", + "typedarray": "0.0.6" + } + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dependencies": { + "safe-buffer": "5.1.2" + } + }, + "node_modules/cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + }, + "node_modules/core-js-pure": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.8.3.tgz", + "integrity": "sha512-V5qQZVAr9K0xu7jXg1M7qTEwuxUgqr7dUOezGaNa7i+Xn9oXAU/d1fzqD9ObuwpVQOaorO5s70ckyi1woP9lVA==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dependencies": { + "import-fresh": "2.0.0", + "is-directory": "0.3.1", + "js-yaml": "3.14.1", + "parse-json": "4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/credit-card-type": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/credit-card-type/-/credit-card-type-5.0.4.tgz", + "integrity": "sha1-LdnfKAQRziu5Htlawx6BRgVxeu0=" + }, + "node_modules/cross-fetch": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.6.tgz", + "integrity": "sha512-KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==", + "dependencies": { + "node-fetch": "2.6.1" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "1.0.5", + "path-key": "2.0.1", + "semver": "5.7.1", + "shebang-command": "1.2.0", + "which": "1.3.1" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-tree/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "0.3.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/csstype": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.6.tgz", + "integrity": "sha512-+ZAmfyWMT7TiIlzdqJgjMb7S4f1beorDbWbsocyK4RaiqA5RTX3K14bnBWmmA9QEM0gRdsjyyrEmcyga8Zsxmw==" + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "dependencies": { + "assert-plus": "1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "dependencies": { + "abab": "2.0.5", + "whatwg-mimetype": "2.3.0", + "whatwg-url": "7.1.0" + } + }, + "node_modules/date-time-format-timezone": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/date-time-format-timezone/-/date-time-format-timezone-1.0.22.tgz", + "integrity": "sha512-4hEeKPpNlbFO05ldht9FwJEy2g1xL7kU3dTPY5hNSd1AyMjrrIeUS54kSWgt/KdttYshhjDMIonU+vCmL4NjVw==" + }, + "node_modules/dayjs": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.3.tgz", + "integrity": "sha512-/2fdLN987N8Ki7Id8BUN2nhuiRyxTLumQnSQf9CNncFCyqFsSKb9TNhzRYcC8K8eJSJOKvbvkImo/MKKhNi4iw==" + }, + "node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dedent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.6.0.tgz", + "integrity": "sha1-Dm2o8M5Sg471zsXI+TlrDBtko8s=" + }, + "node_modules/deep-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/deep-assign/-/deep-assign-3.0.0.tgz", + "integrity": "sha512-YX2i9XjJ7h5q/aQ/IM9PEwEnDqETAIYbggmdDB3HLTlSgo1CxPsj6pvhPG68rq6SVE0+p+6Ywsm5fTYNrYtBWw==", + "dependencies": { + "is-obj": "1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "node_modules/deepmerge": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-3.3.0.tgz", + "integrity": "sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dependencies": { + "clone": "1.0.4" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dependencies": { + "object-keys": "1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dependencies": { + "is-descriptor": "1.0.2", + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/degenerator": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-2.2.0.tgz", + "integrity": "sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg==", + "dependencies": { + "ast-types": "0.13.4", + "escodegen": "1.14.3", + "esprima": "4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/denodeify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz", + "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=" + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dependencies": { + "repeating": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz", + "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" + }, + "node_modules/diff-sequences": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", + "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "2.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "dependencies": { + "webidl-conversions": "4.0.2" + } + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "dependencies": { + "jsbn": "0.1.1", + "safer-buffer": "2.1.2" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dependencies": { + "iconv-lite": "0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dependencies": { + "safer-buffer": "2.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "1.4.0" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "node_modules/envinfo": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.3.tgz", + "integrity": "sha512-46+j5QxbPWza0PB1i15nZx0xQ4I/EfQxg9J8Had3b408SV63nEtor2e+oiY63amTo9KTuh2a3XLObNwduxYwwA==", + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "0.2.1" + } + }, + "node_modules/error-ex/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "node_modules/errorhandler": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz", + "integrity": "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==", + "dependencies": { + "accepts": "1.3.7", + "escape-html": "1.0.3" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "es-to-primitive": "1.2.1", + "function-bind": "1.1.1", + "get-intrinsic": "1.0.2", + "has": "1.0.3", + "has-symbols": "1.0.1", + "is-callable": "1.2.2", + "is-negative-zero": "2.0.1", + "is-regex": "1.1.1", + "object-inspect": "1.9.0", + "object-keys": "1.1.1", + "object.assign": "4.1.2", + "string.prototype.trimend": "1.0.3", + "string.prototype.trimstart": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "1.2.2", + "is-date-object": "1.0.2", + "is-symbol": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dependencies": { + "esprima": "4.0.1", + "estraverse": "4.3.0", + "esutils": "2.0.3", + "optionator": "0.8.3" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "ajv": "6.12.6", + "chalk": "2.4.2", + "cross-spawn": "6.0.5", + "debug": "4.3.1", + "doctrine": "3.0.0", + "eslint-scope": "5.1.1", + "eslint-utils": "1.4.3", + "eslint-visitor-keys": "1.3.0", + "espree": "6.2.1", + "esquery": "1.3.1", + "esutils": "2.0.3", + "file-entry-cache": "5.0.1", + "functional-red-black-tree": "1.0.1", + "glob-parent": "5.1.1", + "globals": "12.4.0", + "ignore": "4.0.6", + "import-fresh": "3.3.0", + "imurmurhash": "0.1.4", + "inquirer": "7.3.3", + "is-glob": "4.0.1", + "js-yaml": "3.14.1", + "json-stable-stringify-without-jsonify": "1.0.1", + "levn": "0.3.0", + "lodash": "4.17.20", + "minimatch": "3.0.4", + "mkdirp": "0.5.5", + "natural-compare": "1.4.0", + "optionator": "0.8.3", + "progress": "2.0.3", + "regexpp": "2.0.1", + "semver": "6.3.0", + "strip-ansi": "5.2.0", + "strip-json-comments": "3.1.1", + "table": "5.4.6", + "text-table": "0.2.0", + "v8-compile-cache": "2.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "dev": true, + "dependencies": { + "get-stdin": "6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + } + }, + "node_modules/eslint-plugin-eslint-comments": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", + "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "1.0.5", + "ignore": "5.1.8" + }, + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/eslint-plugin-flowtype": { + "version": "2.50.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz", + "integrity": "sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ==", + "dev": true, + "dependencies": { + "lodash": "4.17.20" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-jest": { + "version": "22.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.4.1.tgz", + "integrity": "sha512-gcLfn6P2PrFAVx3AobaOzlIEevpAEf9chTpFZz7bYfc7pz8XRv7vuKTIE4hxPKZSha6XWKKplDQ0x9Pq8xX2mg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz", + "integrity": "sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "1.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.19.0.tgz", + "integrity": "sha512-SPT8j72CGuAP+JFbT0sJHOB80TX/pu44gQ4vXH/cq+hQTiY2PuZ6IHkqXJV6x1b28GDdo1lbInjKUrrdUf0LOQ==", + "dev": true, + "dependencies": { + "array-includes": "3.1.2", + "doctrine": "2.1.0", + "has": "1.0.3", + "jsx-ast-utils": "2.4.1", + "object.entries": "1.1.3", + "object.fromentries": "2.0.3", + "object.values": "1.1.2", + "prop-types": "15.7.2", + "resolve": "1.19.0", + "semver": "6.3.0", + "string.prototype.matchall": "4.0.3", + "xregexp": "4.4.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-3.0.0.tgz", + "integrity": "sha512-EjxTHxjLKIBWFgDJdhKKzLh5q+vjTFrqNZX36uIxWS4OfyXe5DawqPj3U5qeJ1ngLwatjzQnmR0Lz0J0YH3kxw==", + "dev": true, + "engines": { + "node": ">=7" + } + }, + "node_modules/eslint-plugin-react-native": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-3.8.1.tgz", + "integrity": "sha512-6Z4s4nvgFRdda/1s1+uu4a6EMZwEjjJ9Bk/1yBImv0fd9U2CsGu2cUakAtV83cZKhizbWhSouXoaK4JtlScdFg==", + "dev": true, + "dependencies": { + "eslint-plugin-react-native-globals": "0.1.2" + } + }, + "node_modules/eslint-plugin-react-native-globals": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz", + "integrity": "sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==", + "dev": true + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "4.3.0", + "estraverse": "4.3.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "1.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "dependencies": { + "type-fest": "0.11.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/eslint/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "2.0.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "1.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "1.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "1.0.1", + "resolve-from": "4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "4.3.1", + "chalk": "4.1.0", + "cli-cursor": "3.1.0", + "cli-width": "3.0.0", + "external-editor": "3.1.0", + "figures": "3.2.0", + "lodash": "4.17.20", + "mute-stream": "0.0.8", + "run-async": "2.4.1", + "rxjs": "6.6.3", + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "through": "2.3.8" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint/node_modules/inquirer/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/eslint/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true, + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/eslint/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "5.1.2", + "signal-exit": "3.0.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "dependencies": { + "tslib": "1.14.1" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "dependencies": { + "acorn": "7.4.1", + "acorn-jsx": "5.3.1", + "eslint-visitor-keys": "1.3.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "dependencies": { + "estraverse": "5.2.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter2": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-1.0.5.tgz", + "integrity": "sha1-+YNhBRexc3wLncZDvsqTiTwE3xg=" + }, + "node_modules/eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, + "node_modules/exec-sh": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==" + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "6.0.5", + "get-stream": "4.1.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.3", + "strip-eof": "1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dependencies": { + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "0.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/expect": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz", + "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-styles": "4.3.0", + "jest-get-type": "25.2.6", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-regex-util": "25.2.6" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/expect/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/expect/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/expect/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/expect/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/expect/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/expect/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expect/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dependencies": { + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend-shallow/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dependencies": { + "is-plain-object": "2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/external-editor": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "dependencies": { + "chardet": "0.4.2", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dependencies": { + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dependencies": { + "ansi-gray": "0.1.1", + "color-support": "1.1.3", + "parse-node-version": "1.0.1", + "time-stamp": "1.1.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + }, + "node_modules/fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fbjs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-1.0.0.tgz", + "integrity": "sha512-MUgcMEJaFhCaF1QtWGnmq9ZDRAzECTCRAF7O6UZIlAlkTs1SasiX9aP0Iw7wfD2mJ7wDTNfg2w7u5fSCwJk1OA==", + "dependencies": { + "core-js": "2.6.12", + "fbjs-css-vars": "1.0.2", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.23" + } + }, + "node_modules/fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "node_modules/fbjs-scripts": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fbjs-scripts/-/fbjs-scripts-1.2.0.tgz", + "integrity": "sha512-5krZ8T0Bf8uky0abPoCLrfa7Orxd8UH4Qq8hRUF2RZYNMu+FmEOrBc7Ib3YVONmxTXTlLAvyrrdrVmksDb2OqQ==", + "dependencies": { + "@babel/core": "7.12.10", + "ansi-colors": "1.1.0", + "babel-preset-fbjs": "3.3.0", + "core-js": "2.6.12", + "cross-spawn": "5.1.0", + "fancy-log": "1.3.3", + "object-assign": "4.1.1", + "plugin-error": "0.1.2", + "semver": "5.7.1", + "through2": "2.0.5" + } + }, + "node_modules/fbjs-scripts/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dependencies": { + "lru-cache": "4.1.5", + "shebang-command": "1.2.0", + "which": "1.3.1" + } + }, + "node_modules/fbjs-scripts/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/fbjs/node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "2.0.6" + } + }, + "node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dependencies": { + "escape-string-regexp": "1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "dependencies": { + "flat-cache": "2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dependencies": { + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.3", + "statuses": "1.5.0", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dependencies": { + "commondir": "1.0.1", + "make-dir": "2.1.0", + "pkg-dir": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "5.0.0", + "path-exists": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "2.0.2", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "7.1.6" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dependencies": { + "for-in": "1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "0.4.0", + "combined-stream": "1.0.8", + "mime-types": "2.1.28" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dependencies": { + "map-cache": "0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dependencies": { + "graceful-fs": "4.2.4", + "jsonfile": "4.0.0", + "universalify": "0.1.2" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "1.5.0", + "nan": "2.14.2" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dependencies": { + "readable-stream": "1.1.14", + "xregexp": "2.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ftp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/ftp/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "1.0.2", + "inherits": "2.0.4", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "node_modules/ftp/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/ftp/node_modules/xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "engines": { + "node": "*" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz", + "integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==", + "dependencies": { + "function-bind": "1.1.1", + "has": "1.0.3", + "has-symbols": "1.0.1" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/get-uri": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz", + "integrity": "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==", + "dependencies": { + "@tootallnate/once": "1.1.2", + "data-uri-to-buffer": "3.0.1", + "debug": "4.3.1", + "file-uri-to-path": "2.0.0", + "fs-extra": "8.1.0", + "ftp": "0.3.10" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/get-uri/node_modules/file-uri-to-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz", + "integrity": "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "dependencies": { + "assert-plus": "1.0.0" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dependencies": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.4", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "dependencies": { + "is-glob": "4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + }, + "node_modules/growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true, + "optional": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "dependencies": { + "ajv": "6.12.6", + "har-schema": "2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dependencies": { + "ansi-regex": "2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dependencies": { + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dependencies": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hermes-engine": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.5.1.tgz", + "integrity": "sha512-hLwqh8dejHayjlpvZY40e1aDCDvyP98cWx/L5DhAjSJLH8g4z9Tp08D7y4+3vErDsncPOdf1bxm+zUWpx0/Fxg==" + }, + "node_modules/hermes-profile-transformer": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz", + "integrity": "sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==", + "dependencies": { + "source-map": "0.7.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/hermes-profile-transformer/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "16.13.1" + } + }, + "node_modules/home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "node_modules/html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "dependencies": { + "whatwg-encoding": "1.0.5" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2-without-node-native": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2-without-node-native/-/htmlparser2-without-node-native-3.9.2.tgz", + "integrity": "sha1-s+0FDYd9D/NGWWnjOYd7f59mMfY=", + "dependencies": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "eventemitter2": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dependencies": { + "depd": "1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": "1.5.0", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dependencies": { + "@tootallnate/once": "1.1.2", + "agent-base": "6.0.2", + "debug": "4.3.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "dependencies": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.16.1" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dependencies": { + "agent-base": "6.0.2", + "debug": "4.3.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": "2.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.6.3.tgz", + "integrity": "sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==", + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dependencies": { + "caller-path": "2.0.0", + "resolve-from": "3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, + "dependencies": { + "pkg-dir": "4.2.0", + "resolve-cwd": "3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dependencies": { + "ansi-escapes": "3.2.0", + "chalk": "2.4.2", + "cli-cursor": "2.1.0", + "cli-width": "2.2.1", + "external-editor": "2.2.0", + "figures": "2.0.0", + "lodash": "4.17.20", + "mute-stream": "0.0.7", + "run-async": "2.4.1", + "rx-lite": "4.0.8", + "rx-lite-aggregates": "4.0.8", + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dependencies": { + "ansi-regex": "3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/internal-slot": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", + "integrity": "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==", + "dev": true, + "dependencies": { + "es-abstract": "1.17.7", + "has": "1.0.3", + "side-channel": "1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/internal-slot/node_modules/es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "dependencies": { + "es-to-primitive": "1.2.1", + "function-bind": "1.1.1", + "has": "1.0.3", + "has-symbols": "1.0.1", + "is-callable": "1.2.2", + "is-regex": "1.1.1", + "object-inspect": "1.9.0", + "object-keys": "1.1.1", + "object.assign": "4.1.2", + "string.prototype.trimend": "1.0.3", + "string.prototype.trimstart": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dependencies": { + "loose-envify": "1.4.0" + } + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + }, + "node_modules/ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-callable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", + "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "dependencies": { + "has": "1.0.3" + } + }, + "node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", + "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", + "dev": true, + "optional": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "engines": { + "node": ">=4" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dependencies": { + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "dev": true, + "dependencies": { + "has-symbols": "1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "dependencies": { + "has-symbols": "1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "dependencies": { + "node-fetch": "1.7.3", + "whatwg-fetch": "3.5.0" + } + }, + "node_modules/isomorphic-fetch/node_modules/node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dependencies": { + "encoding": "0.1.13", + "is-stream": "1.1.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "7.12.10", + "@istanbuljs/schema": "0.1.2", + "istanbul-lib-coverage": "3.0.0", + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "3.0.0", + "make-dir": "3.1.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", + "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "dev": true, + "dependencies": { + "debug": "4.3.1", + "istanbul-lib-coverage": "3.0.0", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dev": true, + "dependencies": { + "html-escaper": "2.0.2", + "istanbul-lib-report": "3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest/-/jest-25.5.4.tgz", + "integrity": "sha512-hHFJROBTqZahnO+X+PMtT6G2/ztqAZJveGqz//FnWWHurizkD05PQGzRZOhF3XP6z7SJmL+5tCfW8qV06JypwQ==", + "dev": true, + "dependencies": { + "@jest/core": "25.5.4", + "import-local": "3.0.2", + "jest-cli": "25.5.4" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-changed-files": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.5.0.tgz", + "integrity": "sha512-EOw9QEqapsDT7mKF162m8HFzRPbmP8qJQny6ldVOdOVBz3ACgPm/1nAn5fPQ/NDaYhX/AHkrGwwkCncpAVSXcw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "execa": "3.4.0", + "throat": "5.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-changed-files/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "3.1.1", + "shebang-command": "2.0.0", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-changed-files/node_modules/execa": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", + "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", + "dev": true, + "dependencies": { + "cross-spawn": "7.0.3", + "get-stream": "5.2.0", + "human-signals": "1.1.1", + "is-stream": "2.0.0", + "merge-stream": "2.0.0", + "npm-run-path": "4.0.1", + "onetime": "5.1.2", + "p-finally": "2.0.1", + "signal-exit": "3.0.3", + "strip-final-newline": "2.0.0" + }, + "engines": { + "node": "^8.12.0 || >=9.7.0" + } + }, + "node_modules/jest-changed-files/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/jest-changed-files/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-changed-files/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "3.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-changed-files/node_modules/p-finally": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", + "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "node_modules/jest-changed-files/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-config": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.5.4.tgz", + "integrity": "sha512-SZwR91SwcdK6bz7Gco8qL7YY2sx8tFJYzvg216DLihTWf+LKY/DoJXpM9nTzYakSyfblbqeU48p/p7Jzy05Atg==", + "dev": true, + "dependencies": { + "@babel/core": "7.12.10", + "@jest/test-sequencer": "25.5.4", + "@jest/types": "25.5.0", + "babel-jest": "25.5.1", + "chalk": "3.0.0", + "deepmerge": "4.2.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "jest-environment-jsdom": "25.5.0", + "jest-environment-node": "25.5.0", + "jest-get-type": "25.2.6", + "jest-jasmine2": "25.5.4", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "micromatch": "4.0.2", + "pretty-format": "25.5.0", + "realpath-native": "2.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-config/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-config/node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-config/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-config/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-config/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-config/node_modules/jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-config/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-diff": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", + "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", + "dev": true, + "dependencies": { + "chalk": "3.0.0", + "diff-sequences": "25.2.6", + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-diff/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz", + "integrity": "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==", + "dev": true, + "dependencies": { + "detect-newline": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-each": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.5.0.tgz", + "integrity": "sha512-QBogUxna3D8vtiItvn54xXde7+vuzqRrEeaw8r1s+1TG9eZLVJE5ZkKoSUlqFwRjnlaA4hyKGiu9OlkFIuKnjA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "jest-util": "25.5.0", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-each/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-each/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-each/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.5.0.tgz", + "integrity": "sha512-7Jr02ydaq4jaWMZLY+Skn8wL5nVIYpWvmeatOHL3tOcV3Zw8sjnPpx+ZdeBfc457p8jCR9J6YCc+Lga0oIy62A==", + "dev": true, + "dependencies": { + "@jest/environment": "25.5.0", + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "jsdom": "15.2.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-jsdom/node_modules/@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-jsdom/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-environment-jsdom/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-environment-jsdom/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-jsdom/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-environment-node": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.5.0.tgz", + "integrity": "sha512-iuxK6rQR2En9EID+2k+IBs5fCFd919gVVK5BeND82fYeLWPqvRcFNPKu9+gxTwfB5XwBGBvZ0HFQa+cHtIoslA==", + "dev": true, + "dependencies": { + "@jest/environment": "25.5.0", + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "semver": "6.3.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-node/node_modules/@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-node/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-environment-node/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-environment-node/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-environment-node/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-node/node_modules/jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-environment-node/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-get-type": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "dependencies": { + "@jest/types": "24.9.0", + "anymatch": "2.0.0", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "invariant": "2.2.4", + "jest-serializer": "24.9.0", + "jest-util": "24.9.0", + "jest-worker": "24.9.0", + "micromatch": "3.1.10", + "sane": "4.1.0", + "walker": "1.0.7" + }, + "engines": { + "node": ">= 6" + }, + "optionalDependencies": { + "fsevents": "1.2.13" + } + }, + "node_modules/jest-haste-map/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-haste-map/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.5.4.tgz", + "integrity": "sha512-9acbWEfbmS8UpdcfqnDO+uBUgKa/9hcRh983IHdM+pKmJPL77G0sWAAK0V0kr5LK3a8cSBfkFSoncXwQlRZfkQ==", + "dev": true, + "dependencies": { + "@babel/traverse": "7.12.12", + "@jest/environment": "25.5.0", + "@jest/source-map": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "co": "4.6.0", + "expect": "25.5.0", + "is-generator-fn": "2.1.0", + "jest-each": "25.5.0", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-runtime": "25.5.4", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "pretty-format": "25.5.0", + "throat": "5.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/@jest/source-map": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz", + "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==", + "dev": true, + "dependencies": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-jasmine2/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-jasmine2/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-jasmine2/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "node_modules/jest-jasmine2/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-leak-detector": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.5.0.tgz", + "integrity": "sha512-rV7JdLsanS8OkdDpZtgBf61L5xZ4NnYLBq72r6ldxahJWWczZjXawRsoHyXzibM5ed7C2QRjpp6ypgwGdKyoVA==", + "dev": true, + "dependencies": { + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-leak-detector/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-matcher-utils": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.5.0.tgz", + "integrity": "sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==", + "dev": true, + "dependencies": { + "chalk": "3.0.0", + "jest-diff": "25.5.0", + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/test-result": "24.9.0", + "@jest/types": "24.9.0", + "@types/stack-utils": "1.0.1", + "chalk": "2.4.2", + "micromatch": "3.1.10", + "slash": "2.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-message-util/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-message-util/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "dependencies": { + "@jest/types": "24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-mock/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-mock/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-regex-util": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz", + "integrity": "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-resolve": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.5.1.tgz", + "integrity": "sha512-Hc09hYch5aWdtejsUZhA+vSzcotf7fajSlPA6EZPE1RmPBAD39XtJhvHWFStid58iit4IPDLI/Da4cwdDmAHiQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "browser-resolve": "1.11.3", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "jest-pnp-resolver": "1.2.2", + "read-pkg-up": "7.0.1", + "realpath-native": "2.0.0", + "resolve": "1.19.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.5.4.tgz", + "integrity": "sha512-yFmbPd+DAQjJQg88HveObcGBA32nqNZ02fjYmtL16t1xw9bAttSn5UGRRhzMHIQbsep7znWvAvnD4kDqOFM0Uw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-snapshot": "25.5.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.5.4.tgz", + "integrity": "sha512-V/2R7fKZo6blP8E9BL9vJ8aTU4TH2beuqGNxHbxi6t14XzTb+x90B3FRgdvuHm41GY8ch4xxvf0ATH4hdpjTqg==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/environment": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "jest-config": "25.5.4", + "jest-docblock": "25.3.0", + "jest-haste-map": "25.5.1", + "jest-jasmine2": "25.5.4", + "jest-leak-detector": "25.5.0", + "jest-message-util": "25.5.0", + "jest-resolve": "25.5.1", + "jest-runtime": "25.5.4", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "source-map-support": "0.5.19", + "throat": "5.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-runner/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runner/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-runner/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/jest-runner/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runner/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/jest-runner/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "node_modules/jest-runner/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-runner/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-runtime": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.5.4.tgz", + "integrity": "sha512-RWTt8LeWh3GvjYtASH2eezkc8AehVoWKK20udV6n3/gC87wlTbE1kIA+opCvNWyyPeBs6ptYsc6nyHUb1GlUVQ==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/environment": "25.5.0", + "@jest/globals": "25.5.2", + "@jest/source-map": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "@types/yargs": "15.0.12", + "chalk": "3.0.0", + "collect-v8-coverage": "1.0.1", + "exit": "0.1.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "jest-config": "25.5.4", + "jest-haste-map": "25.5.1", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "realpath-native": "2.0.0", + "slash": "3.0.0", + "strip-bom": "4.0.0", + "yargs": "15.4.1" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/@jest/source-map": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz", + "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==", + "dev": true, + "dependencies": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-runtime/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runtime/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-runtime/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + }, + "engines": { + "node": ">= 8.3" + }, + "optionalDependencies": { + "fsevents": "2.3.1" + } + }, + "node_modules/jest-runtime/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/jest-runtime/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-runtime/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-runtime/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-runtime/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-snapshot": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.5.1.tgz", + "integrity": "sha512-C02JE1TUe64p2v1auUJ2ze5vcuv32tkv9PyhEb318e8XOKF7MOyXdJ7kdjbvrp3ChPLU2usI7Rjxs97Dj5P0uQ==", + "dev": true, + "dependencies": { + "@babel/types": "7.12.12", + "@jest/types": "25.5.0", + "@types/prettier": "1.19.1", + "chalk": "3.0.0", + "expect": "25.5.0", + "graceful-fs": "4.2.4", + "jest-diff": "25.5.0", + "jest-get-type": "25.2.6", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-resolve": "25.5.1", + "make-dir": "3.1.0", + "natural-compare": "1.4.0", + "pretty-format": "25.5.0", + "semver": "6.3.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-snapshot/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-snapshot/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-snapshot/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "dependencies": { + "@jest/console": "24.9.0", + "@jest/fake-timers": "24.9.0", + "@jest/source-map": "24.9.0", + "@jest/test-result": "24.9.0", + "@jest/types": "24.9.0", + "callsites": "3.1.0", + "chalk": "2.4.2", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "mkdirp": "0.5.5", + "slash": "2.0.0", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-util/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-util/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/jest-util/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-util/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-util/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "dependencies": { + "@jest/types": "24.9.0", + "camelcase": "5.3.1", + "chalk": "2.4.2", + "jest-get-type": "24.9.0", + "leven": "3.1.0", + "pretty-format": "24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-validate/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-validate/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/jest-watcher": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.5.0.tgz", + "integrity": "sha512-XrSfJnVASEl+5+bb51V0Q7WQx65dTSk7NL4yDdVjPnRNpM0hG+ncFmDYJo9O8jaSRcAitVbuVawyXCRoxGrT5Q==", + "dev": true, + "dependencies": { + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "ansi-escapes": "4.3.1", + "chalk": "3.0.0", + "jest-util": "25.5.0", + "string-length": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-watcher/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-watcher/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-watcher/node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "dependencies": { + "type-fest": "0.11.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-watcher/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-watcher/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest-watcher/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-watcher/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dependencies": { + "merge-stream": "2.0.0", + "supports-color": "6.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-worker/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest/node_modules/@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "dependencies": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest/node_modules/jest-cli": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.5.4.tgz", + "integrity": "sha512-rG8uJkIiOUpnREh1768/N3n27Cm+xPFkSNFO91tgg+8o2rXeVLStz+vkXkGr4UtzH6t1SNbjwoiswd7p4AhHTw==", + "dev": true, + "dependencies": { + "@jest/core": "25.5.4", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "import-local": "3.0.2", + "is-ci": "2.0.0", + "jest-config": "25.5.4", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "prompts": "2.4.0", + "realpath-native": "2.0.0", + "yargs": "15.4.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "3.0.2", + "picomatch": "2.2.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jetifier": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/jetifier/-/jetifier-1.6.6.tgz", + "integrity": "sha512-JNAkmPeB/GS2tCRqUzRPsTOHpGDah7xP18vGJfIjZC+W2sxEHbxgJxetIjIqhjQ3yYbYNEELkM/spKLtwoOSUQ==", + "bin": { + "jetifier": "bin/jetify", + "jetifier-standalone": "bin/jetifier-standalone", + "jetify": "bin/jetify" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "1.0.10", + "esprima": "4.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "node_modules/jsc-android": { + "version": "245459.0.0", + "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-245459.0.0.tgz", + "integrity": "sha512-wkjURqwaB1daNkDi2OYYbsLnIdC/lUM2nPXQKRs5pqEU9chDg435bjvo+LSaHotDENygHQDHe+ntUkkw2gwMtg==" + }, + "node_modules/jsdom": { + "version": "15.2.1", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz", + "integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==", + "dev": true, + "dependencies": { + "abab": "2.0.5", + "acorn": "7.4.1", + "acorn-globals": "4.3.4", + "array-equal": "1.0.0", + "cssom": "0.4.4", + "cssstyle": "2.3.0", + "data-urls": "1.1.0", + "domexception": "1.0.1", + "escodegen": "1.14.3", + "html-encoding-sniffer": "1.0.2", + "nwsapi": "2.2.0", + "parse5": "5.1.0", + "pn": "1.1.0", + "request": "2.88.2", + "request-promise-native": "1.0.9", + "saxes": "3.1.11", + "symbol-tree": "3.2.4", + "tough-cookie": "3.0.1", + "w3c-hr-time": "1.0.2", + "w3c-xmlserializer": "1.1.2", + "webidl-conversions": "4.0.2", + "whatwg-encoding": "1.0.5", + "whatwg-mimetype": "2.3.0", + "whatwg-url": "7.1.0", + "ws": "7.4.2", + "xml-name-validator": "3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==", + "dev": true, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dependencies": { + "jsonify": "0.0.0" + } + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "node_modules/json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dependencies": { + "minimist": "1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dependencies": { + "graceful-fs": "4.2.4" + } + }, + "node_modules/jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "engines": { + "node": "*" + } + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/jsx-ast-utils": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz", + "integrity": "sha512-z1xSldJ6imESSzOjd3NNkieVJKRlKYSOtMG8SFyCj2FIrvSaSuli/WjpBkEzCBoR9bYYYFgqJw61Xhu7Lcgk+w==", + "dev": true, + "dependencies": { + "array-includes": "3.1.2", + "object.assign": "4.1.2" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klaw": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", + "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", + "dependencies": { + "graceful-fs": "4.2.4" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dependencies": { + "prelude-ls": "1.1.2", + "type-check": "0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + }, + "node_modules/lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" + }, + "node_modules/lodash.compact": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash.compact/-/lodash.compact-3.0.1.tgz", + "integrity": "sha1-VAzjg3dFl1gHRx4WtKK6IeclbKU=" + }, + "node_modules/lodash.every": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.every/-/lodash.every-4.6.0.tgz", + "integrity": "sha1-64mYS+vENkJ5uzrvu9HKGb+mxqc=" + }, + "node_modules/lodash.frompairs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.frompairs/-/lodash.frompairs-4.0.1.tgz", + "integrity": "sha1-vE5SB/onV8E25XNhTpZkUGsrG9I=" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + }, + "node_modules/lodash.omit": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", + "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=" + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "node_modules/lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "dependencies": { + "lodash._reinterpolate": "3.0.0", + "lodash.templatesettings": "4.2.0" + } + }, + "node_modules/lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "dependencies": { + "lodash._reinterpolate": "3.0.0" + } + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + }, + "node_modules/lodash.values": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz", + "integrity": "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=" + }, + "node_modules/log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dependencies": { + "chalk": "2.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/logkitty": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz", + "integrity": "sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==", + "dependencies": { + "ansi-fragments": "0.2.1", + "dayjs": "1.10.3", + "yargs": "15.4.1" + }, + "bin": { + "logkitty": "bin/logkitty.js" + } + }, + "node_modules/lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "1.8.2" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lottie-ios": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/lottie-ios/-/lottie-ios-3.2.3.tgz", + "integrity": "sha512-mubYMN6+1HXa8z3EJKBvNBkl4UoVM4McjESeB2PgvRMSngmJtC5yUMRdhbbrIAn5Liu3hFGao/14s5hQIgtkRQ==" + }, + "node_modules/lottie-react-native": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/lottie-react-native/-/lottie-react-native-4.0.3.tgz", + "integrity": "sha512-cmMt/HEwTTzF3PQcE4VVl7jpBYC9cZD9pGz7ZLxYV13e5jWBvMCFKsQYHlYAo69fjXZ2YCum1AqEuez6kSbmCA==", + "dependencies": { + "invariant": "^2.2.2", + "prop-types": "^15.5.10", + "react-native-safe-modules": "^1.0.3" + }, + "peerDependencies": { + "lottie-ios": "^3.2.3", + "react": "*", + "react-native": ">=0.46" + } + }, + "node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dependencies": { + "pify": "4.0.1", + "semver": "5.7.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dependencies": { + "tmpl": "1.0.4" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dependencies": { + "object-visit": "1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dependencies": { + "readable-stream": "2.3.7" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/metro": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro/-/metro-0.58.0.tgz", + "integrity": "sha512-yi/REXX+/s4r7RjzXht+E+qE6nzvFIrEXO5Q61h+70Q7RODMU8EnlpXx04JYk7DevHuMhFaX+NWhCtRINzR4zA==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@babel/core": "7.12.10", + "@babel/generator": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/plugin-external-helpers": "7.12.1", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "absolute-path": "0.0.0", + "async": "2.6.3", + "babel-preset-fbjs": "3.3.0", + "buffer-crc32": "0.2.13", + "chalk": "2.4.2", + "ci-info": "2.0.0", + "concat-stream": "1.6.2", + "connect": "3.7.0", + "debug": "2.6.9", + "denodeify": "1.2.1", + "eventemitter3": "3.1.2", + "fbjs": "1.0.0", + "fs-extra": "1.0.0", + "graceful-fs": "4.2.4", + "image-size": "0.6.3", + "invariant": "2.2.4", + "jest-haste-map": "24.9.0", + "jest-worker": "24.9.0", + "json-stable-stringify": "1.0.1", + "lodash.throttle": "4.1.1", + "merge-stream": "1.0.1", + "metro-babel-register": "0.58.0", + "metro-babel-transformer": "0.58.0", + "metro-cache": "0.58.0", + "metro-config": "0.58.0", + "metro-core": "0.58.0", + "metro-inspector-proxy": "0.58.0", + "metro-minify-uglify": "0.58.0", + "metro-react-native-babel-preset": "0.58.0", + "metro-resolver": "0.58.0", + "metro-source-map": "0.58.0", + "metro-symbolicate": "0.58.0", + "mime-types": "2.1.11", + "mkdirp": "0.5.5", + "node-fetch": "2.6.1", + "nullthrows": "1.1.1", + "resolve": "1.19.0", + "rimraf": "2.7.1", + "serialize-error": "2.1.0", + "source-map": "0.5.7", + "strip-ansi": "4.0.0", + "temp": "0.8.3", + "throat": "4.1.0", + "wordwrap": "1.0.0", + "write-file-atomic": "1.3.4", + "ws": "1.1.5", + "xpipe": "1.0.5", + "yargs": "14.2.3" + }, + "bin": { + "metro": "src/cli.js" + } + }, + "node_modules/metro-babel-register": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.59.0.tgz", + "integrity": "sha512-JtWc29erdsXO/V3loenXKw+aHUXgj7lt0QPaZKPpctLLy8kcEpI/8pfXXgVK9weXICCpCnYtYncIosAyzh0xjg==", + "dependencies": { + "@babel/core": "7.12.10", + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/register": "7.12.10", + "escape-string-regexp": "1.0.5" + } + }, + "node_modules/metro-babel-transformer": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.58.0.tgz", + "integrity": "sha512-yBX3BkRhw2TCNPhe+pmLSgsAEA3huMvnX08UwjFqSXXI1aiqzRQobn92uKd1U5MM1Vx8EtXVomlJb95ZHNAv6A==", + "dependencies": { + "@babel/core": "7.12.10", + "metro-source-map": "0.58.0" + } + }, + "node_modules/metro-babel-transformer/node_modules/metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "dependencies": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "node_modules/metro-cache": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.58.0.tgz", + "integrity": "sha512-jjW9zCTKxhgKcVkyQ6LHyna9Zdf4TK/45vvT1fPyyTk1RY82ZYjU1qs+84ycKEd08Ka4YcK9xcUew9SIDJYI8Q==", + "dependencies": { + "jest-serializer": "24.9.0", + "metro-core": "0.58.0", + "mkdirp": "0.5.5", + "rimraf": "2.7.1" + } + }, + "node_modules/metro-config": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.58.0.tgz", + "integrity": "sha512-4vgBliXwL56vjUlYplvGMVSNrJJpkHuLcD+O20trV3FvPxKg4ZsvuOcNSxqDSMU26FCtIEJ15ojcuCbRL7KY0w==", + "dependencies": { + "cosmiconfig": "5.2.1", + "jest-validate": "24.9.0", + "metro": "0.58.0", + "metro-cache": "0.58.0", + "metro-core": "0.58.0", + "pretty-format": "24.9.0" + } + }, + "node_modules/metro-core": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.58.0.tgz", + "integrity": "sha512-RzXUjGFmCLOyzUqcKDvr91AldGtIOxnzNZrWUIiG8uC3kerVLo0mQp4YH3+XVm6fMNiLMg6iER7HLqD+MbpUjQ==", + "dependencies": { + "jest-haste-map": "24.9.0", + "lodash.throttle": "4.1.1", + "metro-resolver": "0.58.0", + "wordwrap": "1.0.0" + } + }, + "node_modules/metro-inspector-proxy": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-inspector-proxy/-/metro-inspector-proxy-0.58.0.tgz", + "integrity": "sha512-oFqTyNTJdCdvcw1Ha6SKE7ITbSaoTbO4xpYownIoJR+WZ0ZfxbWpp225JkHuBJm9UcBAnG9c0CME924m3uBbaw==", + "dependencies": { + "connect": "3.7.0", + "debug": "2.6.9", + "rxjs": "5.5.12", + "ws": "1.1.5", + "yargs": "14.2.3" + }, + "bin": { + "metro-inspector-proxy": "src/cli.js" + } + }, + "node_modules/metro-inspector-proxy/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dependencies": { + "string-width": "3.1.0", + "strip-ansi": "5.2.0", + "wrap-ansi": "5.1.0" + } + }, + "node_modules/metro-inspector-proxy/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/metro-inspector-proxy/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/metro-inspector-proxy/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/metro-inspector-proxy/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "2.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/metro-inspector-proxy/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dependencies": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dependencies": { + "ansi-styles": "3.2.1", + "string-width": "3.1.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro-inspector-proxy/node_modules/yargs": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", + "dependencies": { + "cliui": "5.0.0", + "decamelize": "1.2.0", + "find-up": "3.0.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "3.1.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "15.0.1" + } + }, + "node_modules/metro-inspector-proxy/node_modules/yargs-parser": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", + "dependencies": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + } + }, + "node_modules/metro-minify-uglify": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-minify-uglify/-/metro-minify-uglify-0.58.0.tgz", + "integrity": "sha512-vRHsA7bCi7eCn3LXLm20EfY2NoWDyYOnmWaq/N8LB0OxL2L5DXRqMYAQK+prWGJ5S1yvVnDuuNVP+peQ9851TA==", + "dependencies": { + "uglify-es": "3.3.9" + } + }, + "node_modules/metro-react-native-babel-preset": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.59.0.tgz", + "integrity": "sha512-BoO6ncPfceIDReIH8pQ5tQptcGo5yRWQXJGVXfANbiKLq4tfgdZB1C1e2rMUJ6iypmeJU9dzl+EhPmIFKtgREg==", + "dependencies": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3", + "@babel/plugin-syntax-optional-chaining": "7.8.3", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-self": "7.12.1", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "node_modules/metro-react-native-babel-transformer": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.59.0.tgz", + "integrity": "sha512-1O3wrnMq4NcPQ1asEcl9lRDn/t+F1Oef6S9WaYVIKEhg9m/EQRGVrrTVP+R6B5Eeaj3+zNKbzM8Dx/NWy1hUbQ==", + "dependencies": { + "@babel/core": "7.12.10", + "babel-preset-fbjs": "3.3.0", + "metro-babel-transformer": "0.59.0", + "metro-react-native-babel-preset": "0.59.0", + "metro-source-map": "0.59.0" + } + }, + "node_modules/metro-react-native-babel-transformer/node_modules/metro-babel-transformer": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.59.0.tgz", + "integrity": "sha512-fdZJl8rs54GVFXokxRdD7ZrQ1TJjxWzOi/xSP25VR3E8tbm3nBZqS+/ylu643qSr/IueABR+jrlqAyACwGEf6w==", + "dependencies": { + "@babel/core": "7.12.10", + "metro-source-map": "0.59.0" + } + }, + "node_modules/metro-resolver": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.58.0.tgz", + "integrity": "sha512-XFbAKvCHN2iWqKeiRARzEXn69eTDdJVJC7lu16S4dPQJ+Dy82dZBr5Es12iN+NmbJuFgrAuIHbpWrdnA9tOf6Q==", + "dependencies": { + "absolute-path": "0.0.0" + } + }, + "node_modules/metro-source-map": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.59.0.tgz", + "integrity": "sha512-0w5CmCM+ybSqXIjqU4RiK40t4bvANL6lafabQ2GP2XD3vSwkLY+StWzCtsb4mPuyi9R/SgoLBel+ZOXHXAH0eQ==", + "dependencies": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.59.0", + "ob1": "0.59.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "node_modules/metro-source-map/node_modules/metro-symbolicate": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.59.0.tgz", + "integrity": "sha512-asLaF2A7rndrToGFIknL13aiohwPJ95RKHf0NM3hP/nipiLDoMzXT6ZnQvBqDxkUKyP+51AI75DMtb+Wcyw4Bw==", + "dependencies": { + "invariant": "2.2.4", + "metro-source-map": "0.59.0", + "source-map": "0.5.7", + "through2": "2.0.5", + "vlq": "1.0.1" + }, + "bin": { + "metro-symbolicate": "src/symbolicate.js" + }, + "engines": { + "node": ">=8.3" + } + }, + "node_modules/metro-source-map/node_modules/ob1": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.59.0.tgz", + "integrity": "sha512-opXMTxyWJ9m68ZglCxwo0OPRESIC/iGmKFPXEXzMZqsVIrgoRXOHmoMDkQzz4y3irVjbyPJRAh5pI9fd0MJTFQ==" + }, + "node_modules/metro-symbolicate": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.58.0.tgz", + "integrity": "sha512-uIVxUQC1E26qOMj13dKROhwAa2FmZk5eR0NcBqej/aXmQhpr8LjJg2sondkoLKUp827Tf/Fm9+pS4icb5XiqCw==", + "dependencies": { + "invariant": "2.2.4", + "metro-source-map": "0.58.0", + "source-map": "0.5.7", + "through2": "2.0.5", + "vlq": "1.0.1" + }, + "bin": { + "metro-symbolicate": "src/symbolicate.js" + }, + "engines": { + "node": ">=8.3" + } + }, + "node_modules/metro-symbolicate/node_modules/metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "dependencies": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "node_modules/metro/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "engines": { + "node": ">=4" + } + }, + "node_modules/metro/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dependencies": { + "string-width": "3.1.0", + "strip-ansi": "5.2.0", + "wrap-ansi": "5.1.0" + } + }, + "node_modules/metro/node_modules/cliui/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/cliui/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/metro/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/metro/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/fs-extra": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", + "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", + "dependencies": { + "graceful-fs": "4.2.4", + "jsonfile": "2.4.0", + "klaw": "1.3.1" + } + }, + "node_modules/metro/node_modules/jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "dependencies": { + "graceful-fs": "4.2.4" + } + }, + "node_modules/metro/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/metro-babel-register": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.58.0.tgz", + "integrity": "sha512-P5+G3ufhSYL6cA3a7xkbSJzzFBvtivj/PhWvGXFXnuFssDlMAX1CTktff+0gpka5Cd6B6QLt0UAMWulUAAE4Eg==", + "dependencies": { + "@babel/core": "7.12.10", + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-transform-async-to-generator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/register": "7.12.10", + "core-js": "2.6.12", + "escape-string-regexp": "1.0.5" + } + }, + "node_modules/metro/node_modules/metro-react-native-babel-preset": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.58.0.tgz", + "integrity": "sha512-MRriNW+fF6jxABsgPphocUY6mIhmCm8idcrQZ58fT3Iti2vCdtkaK32TyCGUNUptzhUe2/cbE57j4aC+eaodAA==", + "dependencies": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "node_modules/metro/node_modules/metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "dependencies": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "node_modules/metro/node_modules/mime-db": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz", + "integrity": "sha1-oxtAcK2uon1zLqMzdApk0OyaZlk=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/metro/node_modules/mime-types": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz", + "integrity": "sha1-wlnEcb2oCKhdbNGTtDCl+uRHOzw=", + "dependencies": { + "mime-db": "1.23.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/metro/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/metro/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "2.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/metro/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dependencies": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/string-width/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/string-width/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dependencies": { + "ansi-regex": "3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/metro/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dependencies": { + "ansi-styles": "3.2.1", + "string-width": "3.1.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/metro/node_modules/yargs": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", + "dependencies": { + "cliui": "5.0.0", + "decamelize": "1.2.0", + "find-up": "3.0.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "3.1.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "15.0.1" + } + }, + "node_modules/metro/node_modules/yargs-parser": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", + "dependencies": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + } + }, + "node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "extglob": "2.0.4", + "fragment-cache": "0.2.1", + "kind-of": "6.0.3", + "nanomatch": "1.2.13", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "dependencies": { + "mime-db": "1.45.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "1.1.11" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dependencies": { + "for-in": "1.0.2", + "is-extendable": "1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dependencies": { + "is-plain-object": "2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dependencies": { + "for-in": "0.1.8", + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mobx": { + "version": "5.15.7", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-5.15.7.tgz", + "integrity": "sha512-wyM3FghTkhmC+hQjyPGGFdpehrcX1KOXsDuERhfK2YbJemkUhEB+6wzEN639T21onxlfYBmriA1PFnvxTUhcKw==" + }, + "node_modules/mobx-react": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-6.3.1.tgz", + "integrity": "sha512-IOxdJGnRSNSJrL2uGpWO5w9JH5q5HoxEqwOF4gye1gmZYdjoYkkMzSGMDnRCUpN/BNzZcFoMdHXrjvkwO7KgaQ==", + "dependencies": { + "mobx-react-lite": "2.2.2" + } + }, + "node_modules/mobx-react-lite": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-2.2.2.tgz", + "integrity": "sha512-2SlXALHIkyUPDsV4VTKVR9DW7K3Ksh1aaIv3NrNJygTbhXe2A9GrcKHZ2ovIiOp/BXilOcTYemfHHZubP431dg==" + }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, + "node_modules/nan": { + "version": "2.14.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", + "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", + "optional": true + }, + "node_modules/nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dependencies": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "fragment-cache": "0.2.1", + "is-windows": "1.0.2", + "kind-of": "6.0.3", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/nocache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz", + "integrity": "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" + }, + "node_modules/node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-notifier": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz", + "integrity": "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==", + "dev": true, + "optional": true, + "dependencies": { + "growly": "1.3.0", + "is-wsl": "2.2.0", + "semver": "6.3.0", + "shellwords": "0.1.1", + "which": "1.3.1" + } + }, + "node_modules/node-notifier/node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "optional": true, + "dependencies": { + "is-docker": "2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-stream-zip": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.12.0.tgz", + "integrity": "sha512-HZ3XehqShTFj9gHauRJ3Bri9eiCTOII7/crtXzURtT14NdnOFs9Ia5E82W7z3izVBNx760tqwddxrBJVG52Y1Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "2.8.8", + "resolve": "1.19.0", + "semver": "5.7.1", + "validate-npm-package-license": "3.0.4" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dependencies": { + "remove-trailing-separator": "1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/nullthrows": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", + "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==" + }, + "node_modules/nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ob1": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.58.0.tgz", + "integrity": "sha512-uZP44cbowAfHafP1k4skpWItk5iHCoRevMfrnUvYCfyNNPPJd3rfDCyj0exklWi2gDXvjlj2ObsfiqP/bs/J7Q==" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dependencies": { + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "0.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", + "dev": true + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dependencies": { + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "has-symbols": "1.0.1", + "object-keys": "1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.entries": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", + "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", + "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dependencies": { + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", + "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1.0.2" + } + }, + "node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dependencies": { + "mimic-fn": "1.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/open": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", + "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", + "dependencies": { + "is-wsl": "1.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "bin": { + "opencollective-postinstall": "index.js" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dependencies": { + "deep-is": "0.1.3", + "fast-levenshtein": "2.0.6", + "levn": "0.3.0", + "prelude-ls": "1.1.2", + "type-check": "0.3.2", + "word-wrap": "1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ora": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz", + "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", + "dependencies": { + "chalk": "2.4.2", + "cli-cursor": "2.1.0", + "cli-spinners": "2.5.0", + "log-symbols": "2.2.0", + "strip-ansi": "5.2.0", + "wcwidth": "1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ora/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ora/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-each-series": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", + "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "2.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pac-proxy-agent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz", + "integrity": "sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q==", + "dependencies": { + "@tootallnate/once": "1.1.2", + "agent-base": "6.0.2", + "debug": "4.3.1", + "get-uri": "3.0.2", + "http-proxy-agent": "4.0.1", + "https-proxy-agent": "5.0.0", + "pac-resolver": "4.2.0", + "raw-body": "2.4.1", + "socks-proxy-agent": "5.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pac-resolver": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-4.2.0.tgz", + "integrity": "sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ==", + "dependencies": { + "degenerator": "2.2.0", + "ip": "1.1.5", + "netmask": "2.0.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "3.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dependencies": { + "error-ex": "1.3.2", + "json-parse-better-errors": "1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", + "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==", + "dev": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dependencies": { + "node-modules-regexp": "1.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dependencies": { + "find-up": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "2.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/plist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.1.tgz", + "integrity": "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==", + "dependencies": { + "base64-js": "1.5.1", + "xmlbuilder": "9.0.7", + "xmldom": "0.1.31" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dependencies": { + "ansi-cyan": "0.1.1", + "ansi-red": "0.1.1", + "arr-diff": "1.1.0", + "arr-union": "2.1.0", + "extend-shallow": "1.1.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dependencies": { + "arr-flatten": "1.1.0", + "array-slice": "0.2.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dependencies": { + "kind-of": "1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "1.2.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "dependencies": { + "@jest/types": "24.9.0", + "ansi-regex": "4.1.0", + "ansi-styles": "3.2.1", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pretty-format/node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pretty-format/node_modules/@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "dependencies": { + "@types/yargs-parser": "20.2.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", + "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==", + "dependencies": { + "asap": "2.0.6" + } + }, + "node_modules/prompts": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", + "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", + "dev": true, + "dependencies": { + "kleur": "3.0.3", + "sisteransi": "1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dependencies": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "react-is": "16.13.1" + } + }, + "node_modules/proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-4.0.1.tgz", + "integrity": "sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA==", + "dependencies": { + "agent-base": "6.0.2", + "debug": "4.3.1", + "http-proxy-agent": "4.0.1", + "https-proxy-agent": "5.0.0", + "lru-cache": "5.1.1", + "pac-proxy-agent": "4.1.0", + "proxy-from-env": "1.1.0", + "socks-proxy-agent": "5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "3.1.1" + } + }, + "node_modules/proxy-agent/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "1.4.4", + "once": "1.4.0" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/query-string": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.8.tgz", + "integrity": "sha512-jxJzQI2edQPE/NPUOusNjO/ZOGqr1o2OBa/3M00fU76FsLXDVbJDv/p7ng5OdQyorKrkRz1oqfwmbe5MAMePQg==", + "dependencies": { + "decode-uri-component": "0.2.0", + "split-on-first": "1.1.0", + "strict-uri-encode": "2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "5.1.2" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz", + "integrity": "sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==", + "dependencies": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "prop-types": "15.7.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-devtools-core": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.10.1.tgz", + "integrity": "sha512-sXbBjGAWcf9HAblTP/zMtFhGHqxAfIR+GPxONZsSGN9FHnF4635dx1s2LdQWG9rJ+Ehr3nWg+BUAB6P78my5PA==", + "dependencies": { + "shell-quote": "1.6.1", + "ws": "7.4.2" + } + }, + "node_modules/react-devtools-core/node_modules/ws": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==", + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-native": { + "version": "0.63.4", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.63.4.tgz", + "integrity": "sha512-I4kM8kYO2mWEYUFITMcpRulcy4/jd+j9T6PbIzR0FuMcz/xwd+JwHoLPa1HmCesvR1RDOw9o4D+OFLwuXXfmGw==", + "dependencies": { + "@babel/runtime": "7.12.5", + "@react-native-community/cli": "4.13.1", + "@react-native-community/cli-platform-android": "4.13.0", + "@react-native-community/cli-platform-ios": "4.13.0", + "abort-controller": "3.0.0", + "anser": "1.4.10", + "base64-js": "1.5.1", + "event-target-shim": "5.0.1", + "fbjs": "1.0.0", + "fbjs-scripts": "1.2.0", + "hermes-engine": "0.5.1", + "invariant": "2.2.4", + "jsc-android": "245459.0.0", + "metro-babel-register": "0.59.0", + "metro-react-native-babel-transformer": "0.59.0", + "metro-source-map": "0.59.0", + "nullthrows": "1.1.1", + "pretty-format": "24.9.0", + "promise": "8.1.0", + "prop-types": "15.7.2", + "react-devtools-core": "4.10.1", + "react-refresh": "0.4.3", + "regenerator-runtime": "0.13.7", + "scheduler": "0.19.1", + "stacktrace-parser": "0.1.10", + "use-subscription": "1.5.1", + "whatwg-fetch": "3.5.0" + }, + "bin": { + "react-native": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-animatable": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz", + "integrity": "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==", + "dependencies": { + "prop-types": "^15.7.2" + } + }, + "node_modules/react-native-app-intro-slider": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/react-native-app-intro-slider/-/react-native-app-intro-slider-4.0.4.tgz", + "integrity": "sha512-Zkjaol6X3BbZkHUpVDj2LjdidpS6rCgKi0fx80xgGKa0pHxBRd4swWTv2bHnnvu5k1/HXwYk0mY2TbK+2jHl5w==" + }, + "node_modules/react-native-base64": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/react-native-base64/-/react-native-base64-0.1.1.tgz", + "integrity": "sha512-BqqhMoP9bXBVlgi/PS9heOYxtfGU3mr1QSKdvHbcH/fxwocXZsp40JlfqoRonJBeAZhc07zgUpPhpTV2Qje/7Q==" + }, + "node_modules/react-native-circular-progress": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/react-native-circular-progress/-/react-native-circular-progress-1.3.7.tgz", + "integrity": "sha512-Lpe4Sb0Sdfdxopl6sEc3ooKnwlK5j1nKGq5lgi9UKDFKO6iBAszeH+PiUt6acGSRbKMH1av+9G9ni9r/6T0+nQ==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-native": ">=0.50.0", + "react-native-svg": ">=7.0.0" + } + }, + "node_modules/react-native-code-push": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/react-native-code-push/-/react-native-code-push-7.0.1.tgz", + "integrity": "sha512-9NOVuTnaoQO6ZDJKCmPvqIZ36GkXePc+EZE1NkQ+Qtsh2KbHvfBFBrUaw5NmXSzrFNUwwoSFoPpeQzW/yt8CAA==", + "dependencies": { + "code-push": "4.0.4", + "glob": "7.1.6", + "hoist-non-react-statics": "3.3.2", + "inquirer": "7.3.3", + "plist": "3.0.2", + "semver": "7.3.5", + "xcode": "3.0.1" + } + }, + "node_modules/react-native-code-push/node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "0.21.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-code-push/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/react-native-code-push/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/react-native-code-push/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/react-native-code-push/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/react-native-code-push/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/react-native-code-push/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "1.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dependencies": { + "ansi-escapes": "4.3.2", + "chalk": "4.1.1", + "cli-cursor": "3.1.0", + "cli-width": "3.0.0", + "external-editor": "3.1.0", + "figures": "3.2.0", + "lodash": "4.17.20", + "mute-stream": "0.0.8", + "run-async": "2.4.1", + "rxjs": "6.6.7", + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "through": "2.3.8" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/react-native-code-push/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-code-push/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/react-native-code-push/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/react-native-code-push/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/react-native-code-push/node_modules/plist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.2.tgz", + "integrity": "sha512-MSrkwZBdQ6YapHy87/8hDU8MnIcyxBKjeF+McXnr5A9MtffPewTs7G3hlpodT5TacyfIyFTaJEhh3GGcmasTgQ==", + "dependencies": { + "base64-js": "1.5.1", + "xmlbuilder": "9.0.7", + "xmldom": "0.5.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/react-native-code-push/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "5.1.2", + "signal-exit": "3.0.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "1.14.1" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/react-native-code-push/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-code-push/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native-code-push/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + } + }, + "node_modules/react-native-code-push/node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/react-native-code-push/node_modules/xcode": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz", + "integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==", + "dependencies": { + "simple-plist": "1.1.1", + "uuid": "7.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/react-native-code-push/node_modules/xmldom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.5.0.tgz", + "integrity": "sha512-Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/react-native-code-push/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/react-native-confirmation-code-field": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/react-native-confirmation-code-field/-/react-native-confirmation-code-field-6.5.1.tgz", + "integrity": "sha512-CjNx0G6CnwNKasQBVQCNdHsZU+RCPMQENgns65inR7AoOS6wcTdA3cuiPtx7mZJ+Z44c+mj3568xrEZVpd9EUg==" + }, + "node_modules/react-native-countdown-component": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/react-native-countdown-component/-/react-native-countdown-component-2.7.1.tgz", + "integrity": "sha512-H7D/YvMjY1hCJf9xFrNh5CsIwkcel/Suno2gYR6ulWwoa2xnUgmltFWoMyEIODsUy7lIK1KCPm+Zn26QajbRaw==", + "dependencies": { + "lodash": "4.17.20", + "prop-types": "15.7.2", + "sprintf-js": "1.1.2" + } + }, + "node_modules/react-native-countdown-component/node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "node_modules/react-native-credit-card-input": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/react-native-credit-card-input/-/react-native-credit-card-input-0.4.1.tgz", + "integrity": "sha1-5i3Rqb7qtnh+U3O6I7k4Mcv1894=", + "dependencies": { + "card-validator": "3.0.1", + "lodash.compact": "3.0.1", + "lodash.every": "4.6.0", + "lodash.pick": "4.4.0", + "lodash.values": "4.3.0", + "prop-types": "15.7.2", + "react-native-flip-card": "3.5.6" + } + }, + "node_modules/react-native-date-picker": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/react-native-date-picker/-/react-native-date-picker-4.1.1.tgz", + "integrity": "sha512-2KzwFZoPNmGCgDFP8FrrtIBrKMEzTkLG5Zq68CbyUxG7aFPmeP7ik//lSB0gPwfO9TKQyKFVqTod5jTp0PTnbw==" + }, + "node_modules/react-native-device-info": { + "version": "8.4.8", + "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-8.4.8.tgz", + "integrity": "sha512-92676ZWHZHsPM/EW1ulgb2MuVfjYfMWRTWMbLcrCsipkcMaZ9Traz5mpsnCS7KZpsOksnvUinzDIjsct2XGc6Q==", + "peerDependencies": { + "react-native": "*" + } + }, + "node_modules/react-native-dialog": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/react-native-dialog/-/react-native-dialog-8.2.0.tgz", + "integrity": "sha512-Unfx9curgyCfC6iHJwKVYgztKtE51A6x2pqI4RRt9SXqcurgCb6U6qe93cOY1Y2S7iRxNpgJkF3AS0QahKbPGQ==", + "peerDependencies": { + "react-native": ">=0.63.0" + } + }, + "node_modules/react-native-easy-guesture-responder": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/react-native-easy-guesture-responder/-/react-native-easy-guesture-responder-1.1.3.tgz", + "integrity": "sha512-/1yHMRcslMWQJc1iRNCSjJ32npPrY3Atme0lzKxmhYJg67E7Douowq2FalGEegdid8yeZVnPKk+BkyIGyx2dCw==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-easy-toast": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/react-native-easy-toast/-/react-native-easy-toast-1.2.0.tgz", + "integrity": "sha512-UtpxnRn1ME+035Uey4VR+9K0P4aVoTcWNOx5QkioWBe3LBKMPb/kZjrQ1LtvWzOyeGP4TeTUTtMX3IOPWv5MtA==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-easy-view-transformer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/react-native-easy-view-transformer/-/react-native-easy-view-transformer-1.2.0.tgz", + "integrity": "sha512-SawalQrXWQ6M5WOnWhTV8y3cyhRlrTgH2VC2+qPEk7GE10vLkH5/9ncM8lNjHKiXCgWrVk+0DI3pmEouDYd/GQ==", + "dependencies": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-scrolling": "1.0.3" + } + }, + "node_modules/react-native-elements": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/react-native-elements/-/react-native-elements-3.4.2.tgz", + "integrity": "sha512-m0eAWOn7JuR1wNTNY0WHuaqst4LI/gFE4N5Bbyfsc4DiryWsMST7aAg5w/Gos4IexWIzhLKCIkPxthND1m/8Xg==", + "hasInstallScript": true, + "dependencies": { + "@types/react-native-vector-icons": "^6.4.6", + "color": "^3.1.2", + "deepmerge": "^4.2.2", + "hoist-non-react-statics": "^3.3.2", + "lodash.isequal": "^4.5.0", + "opencollective-postinstall": "^2.0.3", + "react-native-ratings": "8.0.4", + "react-native-size-matters": "^0.3.1" + }, + "peerDependencies": { + "react-native-safe-area-context": "^3.1.9", + "react-native-vector-icons": ">7.0.0" + } + }, + "node_modules/react-native-elements/node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-native-fast-image": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.4.tgz", + "integrity": "sha512-LpzAdjUphihUpVEBn5fEv5AILe55rHav0YiZroPZ1rumKDhAl4u2cG01ku2Pb7l8sayjTsNu7FuURAlXUUDsow==" + }, + "node_modules/react-native-flip-card": { + "version": "3.5.6", + "resolved": "https://registry.npmjs.org/react-native-flip-card/-/react-native-flip-card-3.5.6.tgz", + "integrity": "sha512-lqsjl4vF5DyHD7mjBJpyBoaLKVxalzoKfCosE63QF+TaCF9MKdJrxmGFQj/i64GDiMJqeS/5sNDcICUXtgFsVA==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-gallery-swiper": { + "version": "1.26.4", + "resolved": "https://registry.npmjs.org/react-native-gallery-swiper/-/react-native-gallery-swiper-1.26.4.tgz", + "integrity": "sha512-EK0c1g+ZIafEfZEtQyS774QitOk/fxZtuR1j+Eu+QjTtBu9NcbDvd7sc45KB+h0zmE+k1iAk5YPnSwYEXgVD+A==", + "dependencies": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-image-transformer": "1.5.1", + "react-native-page-list": "1.1.3" + } + }, + "node_modules/react-native-general-statusbar": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-native-general-statusbar/-/react-native-general-statusbar-1.0.1.tgz", + "integrity": "sha512-k6DfgKG6ZxB0HwEGtZiCBQ9CM9C+tE4lRPjRJ6KYuGQwfplGL025KvZZqwqy4/hIMl1hacrrbcUPisaHc0H1Sg==", + "dependencies": { + "react-native-status-bar-height": "^2.4.0" + } + }, + "node_modules/react-native-gesture-handler": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-1.10.3.tgz", + "integrity": "sha512-cBGMi1IEsIVMgoox4RvMx7V2r6bNKw0uR1Mu1o7NbuHS6BRSVLq0dP34l2ecnPlC+jpWd3le6Yg1nrdCjby2Mw==", + "dependencies": { + "@egjs/hammerjs": "^2.0.17", + "fbjs": "^3.0.0", + "hoist-non-react-statics": "^3.3.0", + "invariant": "^2.2.4", + "prop-types": "^15.7.2" + } + }, + "node_modules/react-native-gesture-handler/node_modules/fbjs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.0.tgz", + "integrity": "sha512-dJd4PiDOFuhe7vk4F80Mba83Vr2QuK86FoxtgPmzBqEJahncp+13YCmfoa53KHCo6OnlXLG7eeMWPfB5CrpVKg==", + "dependencies": { + "cross-fetch": "3.0.6", + "fbjs-css-vars": "1.0.2", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.23" + } + }, + "node_modules/react-native-gesture-handler/node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "2.0.6" + } + }, + "node_modules/react-native-htmlview": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/react-native-htmlview/-/react-native-htmlview-0.16.0.tgz", + "integrity": "sha512-yUrzXje+kKKLkWkccKNBeg3CbvrodA7f4+1d/XRrrg0SDFfIdj7NnjRdH+WXqGze6R501bfRZOPaZx/M5HTz3A==", + "dependencies": { + "entities": "^1.1.1", + "htmlparser2-without-node-native": "^3.9.2" + } + }, + "node_modules/react-native-image-picker": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/react-native-image-picker/-/react-native-image-picker-3.2.1.tgz", + "integrity": "sha512-nOBZzYGmE5qZ8JBCvhWHQA+umYnQ8Jd3HGmgxBnmi0/82mU2nwCCnrzHsb29Q+DD7YasYr64rm8uWBBow8L5Fw==" + }, + "node_modules/react-native-image-transformer": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/react-native-image-transformer/-/react-native-image-transformer-1.5.1.tgz", + "integrity": "sha512-CNwjnJxf4DUqQu+vWi/a+MA8jgw46ss80UKeSjoHwdzlt9JnGA6z4VABLURTFytN15LaemZomUEwZ81B9I8SuA==", + "dependencies": { + "prop-types": "15.7.2", + "react-native-easy-view-transformer": "1.2.0" + } + }, + "node_modules/react-native-image-viewing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/react-native-image-viewing/-/react-native-image-viewing-0.2.0.tgz", + "integrity": "sha512-j2JXv86WRXGNme4LPsNCJ/2MgX+oVbmJ5ZLbGrYbKXcCPe9OshqlQI5L3SdbAxWu/F5pubcMaXp0zoYNaZVuzA==" + }, + "node_modules/react-native-iphone-x-helper": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz", + "integrity": "sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==" + }, + "node_modules/react-native-keyboard-aware-scroll-view": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/react-native-keyboard-aware-scroll-view/-/react-native-keyboard-aware-scroll-view-0.9.3.tgz", + "integrity": "sha512-EDyFp8wAJoKvi1T2pzoPRn8R0Inp3G+575jPAWEFTlXq26URMmk8760rzde2XLW+v/1+QwDyBg6d/5mz63/ZRA==", + "dependencies": { + "prop-types": "15.7.2", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "node_modules/react-native-loading-spinner-overlay": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-native-loading-spinner-overlay/-/react-native-loading-spinner-overlay-2.0.0.tgz", + "integrity": "sha512-V38M+N1Wk9GlpbfrD6znsJA1K2+09b3naxq3UjDjqNTA3MOBfj4W87alKSI3P+4ZawczQASTv2fTzhEQ7Z+SVA==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-modal": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/react-native-modal/-/react-native-modal-12.0.2.tgz", + "integrity": "sha512-UAQIqB3sg9b4LaQT3GY0JUtnXDonCzGv61JFQl9DZIBPgxrqoKmGtUcjBERu+xnBYJGogFFMyswQ8vLgAvh17w==", + "dependencies": { + "prop-types": "^15.6.2", + "react-native-animatable": "1.3.3" + }, + "peerDependencies": { + "react": "*", + "react-native": "*" + } + }, + "node_modules/react-native-modal-datetime-picker": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/react-native-modal-datetime-picker/-/react-native-modal-datetime-picker-10.2.0.tgz", + "integrity": "sha512-eMQb3EPqHx47WrlLPTrXvmLZDwGwGH//WTWiQBUvJ+6ehDeuTjIn8/v/ANv8wxCCrt4NeHem8FQY3Z5fa4fRgQ==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "@react-native-community/datetimepicker": ">=3.0.0" + } + }, + "node_modules/react-native-modalize": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/react-native-modalize/-/react-native-modalize-2.0.8.tgz", + "integrity": "sha512-OKdpFVExEe4YM2uFHL/aStS9p0JaC6gBupjaW1QVHkGq22T2ASYwkhDvTnMS8BLOLWPx2fC3xEBzOcn2rh7EYw==", + "peerDependencies": { + "react": "> 15.0.0", + "react-native": "> 0.50.0", + "react-native-gesture-handler": "> 1.0.0" + } + }, + "node_modules/react-native-modals": { + "version": "0.22.3", + "resolved": "https://registry.npmjs.org/react-native-modals/-/react-native-modals-0.22.3.tgz", + "integrity": "sha512-tdjUfvgBhXFTt9p5kQcuAc1BS83H1yrD3p6hHL62LCnJl9rwUdiPlMX0Hmoeac5jw88FzmZv1M20wxgV8mh3ng==", + "license": "MIT", + "dependencies": { + "babel-plugin-flow-react-proptypes": "^9.1.1", + "prop-types": "^15.6.0" + }, + "peerDependencies": { + "react-native": ">=0.50.0" + } + }, + "node_modules/react-native-page-list": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/react-native-page-list/-/react-native-page-list-1.1.3.tgz", + "integrity": "sha512-LvbU9qxxLTujQV6/IKUbzKkosSDGBG6enhf3cb/5oSy0wG50TTloXKaeZY75/ssp/mX7qSZiU9aayV7Q+Q8iUQ==", + "dependencies": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-scrolling": "1.0.3" + } + }, + "node_modules/react-native-paper": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/react-native-paper/-/react-native-paper-4.7.0.tgz", + "integrity": "sha512-RZwYZFFKry8LHHBYf5NENVaU2HaApERNcBLVzt4IE9AS0I+NkkLUyjKQYuLrgTF2EaZVEdeyUJwO7uQH/iNrnQ==", + "dependencies": { + "@callstack/react-theme-provider": "3.0.5", + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "node_modules/react-native-popup-menu": { + "version": "0.15.10", + "resolved": "https://registry.npmjs.org/react-native-popup-menu/-/react-native-popup-menu-0.15.10.tgz", + "integrity": "sha512-w7MaicsfpclK7g/omjMchNaXwhMi0apt/DC734AbHuJTWCfv5mF3JgL1UzRW19ncFMBRfQeYapPy/zUyJCGgEQ==" + }, + "node_modules/react-native-progress": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/react-native-progress/-/react-native-progress-4.1.2.tgz", + "integrity": "sha512-sFHs6k6npWDOyvQoL2NeyOyHb+q1s8iOAOeyzoObN77zkxOAsgJt9FcSJLRq70Mw7qSGNJMFDqCgvYR1huYRwQ==", + "dependencies": { + "@react-native-community/art": "1.2.0", + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-ratings": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/react-native-ratings/-/react-native-ratings-8.0.4.tgz", + "integrity": "sha512-Xczu5lskIIRD6BEdz9A0jDRpEck/SFxRqiglkXi0u67yAtI1/pcJC76P4MukCbT8K4BPVl+42w83YqXBoBRl7A==", + "dependencies": { + "lodash": "^4.17.15" + }, + "peerDependencies": { + "react": "*", + "react-native": "*" + } + }, + "node_modules/react-native-reanimated": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-1.13.2.tgz", + "integrity": "sha512-O+WhgxSjOIzcVdAAvx+h2DY331Ek1knKlaq+jsNLpC1fhRy9XTdOObovgob/aF2ve9uJfPEawCx8381g/tUJZQ==", + "dependencies": { + "fbjs": "1.0.0" + } + }, + "node_modules/react-native-safe-area-context": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-3.1.9.tgz", + "integrity": "sha512-wmcGbdyE/vBSL5IjDPReoJUEqxkZsywZw5gPwsVUV1NBpw5eTIdnL6Y0uNKHE25Z661moxPHQz6kwAkYQyorxA==" + }, + "node_modules/react-native-safe-area-view": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-native-safe-area-view/-/react-native-safe-area-view-1.1.1.tgz", + "integrity": "sha512-bbLCtF+tqECyPWlgkWbIwx4vDPb0GEufx/ZGcSS4UljMcrpwluachDXoW9DBxhbMCc6k1V0ccqHWN7ntbRdERQ==", + "dependencies": { + "hoist-non-react-statics": "2.5.5" + } + }, + "node_modules/react-native-safe-area-view/node_modules/hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + }, + "node_modules/react-native-safe-modules": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/react-native-safe-modules/-/react-native-safe-modules-1.0.3.tgz", + "integrity": "sha512-DUxti4Z+AgJ/ZsO5U7p3uSCUBko8JT8GvFlCeOXk9bMd+4qjpoDvMYpfbixXKgL88M+HwmU/KI1YFN6gsQZyBA==", + "dependencies": { + "dedent": "^0.6.0" + }, + "peerDependencies": { + "react-native": "*" + } + }, + "node_modules/react-native-screens": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.16.1.tgz", + "integrity": "sha512-WZ7m0sBDVaHbBnlHxwQnUlI6KNfQKHq+Unfw+VBuAlnSXvT+aw6Bb/K2bUlHzBgvrPjwY3Spc7ZERFuTwRLLwg==" + }, + "node_modules/react-native-scrolling": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/react-native-scrolling/-/react-native-scrolling-1.0.3.tgz", + "integrity": "sha512-V8ORRnRA4sdOREJlDHxnPfM/7IK6rj/HZejgTaym1ACjKr9a3Pej4ZDOQA9qnBgNac8kMVhDup40HgJxYG//EA==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-size-matters": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/react-native-size-matters/-/react-native-size-matters-0.3.1.tgz", + "integrity": "sha512-mKOfBLIBFBcs9br1rlZDvxD5+mAl8Gfr5CounwJtxI6Z82rGrMO+Kgl9EIg3RMVf3G855a85YVqHJL2f5EDRlw==" + }, + "node_modules/react-native-status-bar-height": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/react-native-status-bar-height/-/react-native-status-bar-height-2.6.0.tgz", + "integrity": "sha512-z3SGLF0mHT+OlJDq7B7h/jXPjWcdBT3V14Le5L2PjntjjWM3+EJzq2BcXDwV+v67KFNJic5pgA26cCmseYek6w==" + }, + "node_modules/react-native-svg": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/react-native-svg/-/react-native-svg-12.1.1.tgz", + "integrity": "sha512-NIAJ8jCnXGCqGWXkkJ1GTzO4a3Md5at5sagYV8Vh4MXYnL4z5Rh428Wahjhh+LIjx40EE5xM5YtwyJBqOIba2Q==", + "dependencies": { + "css-select": "^2.1.0", + "css-tree": "^1.0.0-alpha.39" + }, + "peerDependencies": { + "react": "*", + "react-native": ">=0.50.0" + } + }, + "node_modules/react-native-swiper": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/react-native-swiper/-/react-native-swiper-1.6.0.tgz", + "integrity": "sha512-OnkTTZi+9uZUgy0uz1I9oYDhCU3z36lZn+LFsk9FXPRelxb/KeABzvPs3r3SrHWy1aA67KGtSFj0xNK2QD0NJQ==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-switch-pro": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/react-native-switch-pro/-/react-native-switch-pro-1.0.5.tgz", + "integrity": "sha512-ZkS7/mRsJsG7heE12Y8emv3jAS2waLhk+3fyqoxq8k/r4Q4Uzzm3Q3gSECOJd5COJZT1B48c+xXW80FOrQpYtQ==", + "dependencies": { + "prop-types": "15.7.2" + } + }, + "node_modules/react-native-tab-view": { + "version": "2.15.2", + "resolved": "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-2.15.2.tgz", + "integrity": "sha512-2hxLkBnZtEKFDyfvNO5EUywhy3f/EiLOBO8SWqKj4BMBTO0QwnybaPE5MVF00Fhz+VA4+h/iI40Dkrrtq70dGg==" + }, + "node_modules/react-native-textinput-effects": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/react-native-textinput-effects/-/react-native-textinput-effects-0.6.1.tgz", + "integrity": "sha512-L4VCspAvxr6ug1OperVFnairQmSKes4dzRiHRzIOIJ7sJPDEpV3uSuvE5RiuNad6/SaPTLgfsjZSw4t7FWltRg==", + "dependencies": { + "@types/react-native-vector-icons": "6.4.6" + } + }, + "node_modules/react-native-uuid": { + "version": "1.4.9", + "resolved": "https://registry.npmjs.org/react-native-uuid/-/react-native-uuid-1.4.9.tgz", + "integrity": "sha1-pSZ0L4/d/mQUUAZVISyo0QnEAik=", + "dependencies": { + "randombytes": "2.1.0" + }, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/react-native-vector-icons": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-7.1.0.tgz", + "integrity": "sha512-V2a1zJ4i+kS8O4j183gIwX14St9AxxXabxwYpFBgRhvr2NDXyFcjHDEAgrOYYlt2W57e20aN1tBDU/I+wn9WtQ==", + "dependencies": { + "lodash.frompairs": "4.0.1", + "lodash.isequal": "4.5.0", + "lodash.isstring": "4.0.1", + "lodash.omit": "4.5.0", + "lodash.pick": "4.4.0", + "lodash.template": "4.5.0", + "prop-types": "15.7.2", + "yargs": "15.4.1" + }, + "bin": { + "fa5-upgrade": "bin/fa5-upgrade.sh", + "generate-icon": "bin/generate-icon.js" + } + }, + "node_modules/react-native/node_modules/@react-native-community/cli": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-4.13.1.tgz", + "integrity": "sha512-+/TeRVToADpQPSprsPkwi9KY8x64YcuJpjzMBVISwWP+aWzsIDuWJmyMXTADlCg2EBMJqJR7bn1W/IkfzVRCWA==", + "dependencies": { + "@hapi/joi": "15.1.1", + "@react-native-community/cli-debugger-ui": "4.13.1", + "@react-native-community/cli-hermes": "4.13.0", + "@react-native-community/cli-server-api": "4.13.1", + "@react-native-community/cli-tools": "4.13.0", + "@react-native-community/cli-types": "4.10.1", + "chalk": "3.0.0", + "command-exists": "1.2.9", + "commander": "2.20.3", + "cosmiconfig": "5.2.1", + "deepmerge": "3.3.0", + "envinfo": "7.7.3", + "execa": "1.0.0", + "find-up": "4.1.0", + "fs-extra": "8.1.0", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "inquirer": "3.3.0", + "leven": "3.1.0", + "lodash": "4.17.20", + "metro": "0.58.0", + "metro-config": "0.58.0", + "metro-core": "0.58.0", + "metro-react-native-babel-transformer": "0.58.0", + "metro-resolver": "0.58.0", + "minimist": "1.2.5", + "mkdirp": "0.5.5", + "node-stream-zip": "1.12.0", + "ora": "3.4.0", + "pretty-format": "25.5.0", + "semver": "6.3.0", + "serve-static": "1.14.1", + "strip-ansi": "5.2.0", + "sudo-prompt": "9.2.1", + "wcwidth": "1.0.1" + }, + "bin": { + "react-native": "build/bin.js" + }, + "engines": { + "node": ">=8.3" + } + }, + "node_modules/react-native/node_modules/@react-native-community/cli/node_modules/metro-react-native-babel-transformer": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.58.0.tgz", + "integrity": "sha512-3A73+cRq1eUPQ8g+hPNGgMUMCGmtQjwqHfoG1DwinAoJ/kr4WOXWWbGZo0xHJNBe/zdHGl0uHcDCp2knPglTdQ==", + "dependencies": { + "@babel/core": "7.12.10", + "babel-preset-fbjs": "3.3.0", + "metro-babel-transformer": "0.58.0", + "metro-react-native-babel-preset": "0.58.0", + "metro-source-map": "0.58.0" + } + }, + "node_modules/react-native/node_modules/@react-native-community/cli/node_modules/metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "dependencies": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "node_modules/react-native/node_modules/@react-native-community/cli/node_modules/pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dependencies": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + }, + "engines": { + "node": ">= 8.3" + } + }, + "node_modules/react-native/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/react-native/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/react-native/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-native/node_modules/metro-react-native-babel-preset": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.58.0.tgz", + "integrity": "sha512-MRriNW+fF6jxABsgPphocUY6mIhmCm8idcrQZ58fT3Iti2vCdtkaK32TyCGUNUptzhUe2/cbE57j4aC+eaodAA==", + "dependencies": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "node_modules/react-native/node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + }, + "node_modules/react-native/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/react-native/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/react-native/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-refresh": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", + "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-test-renderer": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.13.1.tgz", + "integrity": "sha512-Sn2VRyOK2YJJldOqoh8Tn/lWQ+ZiKhyZTPtaO0Q6yNj+QDbmRkVFap6pZPy3YQk8DScRDfyqm/KxKYP9gCMRiQ==", + "dev": true, + "dependencies": { + "object-assign": "4.1.1", + "prop-types": "15.7.2", + "react-is": "16.13.1", + "scheduler": "0.19.1" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "2.4.0", + "normalize-package-data": "2.5.0", + "parse-json": "5.2.0", + "type-fest": "0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "dependencies": { + "find-up": "4.1.0", + "read-pkg": "5.2.0", + "type-fest": "0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "error-ex": "1.3.2", + "json-parse-even-better-errors": "2.3.1", + "lines-and-columns": "1.1.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "1.0.2", + "inherits": "2.0.4", + "isarray": "1.0.0", + "process-nextick-args": "2.0.1", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "node_modules/realpath-native": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-2.0.0.tgz", + "integrity": "sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/recursive-fs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/recursive-fs/-/recursive-fs-2.1.0.tgz", + "integrity": "sha512-oed3YruYsD52Mi16s/07eYblQOLi5dTtxpIJNdfCEJ7S5v8dDgVcycar0pRWf4IBuPMIkoctC8RTqGJzIKMNAQ==", + "bin": { + "recursive-copy": "bin/recursive-copy", + "recursive-delete": "bin/recursive-delete" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "dependencies": { + "regenerate": "1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "node_modules/regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dependencies": { + "@babel/runtime": "7.12.5" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dependencies": { + "extend-shallow": "3.0.2", + "safe-regex": "1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/regexpu-core": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", + "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", + "dependencies": { + "regenerate": "1.4.2", + "regenerate-unicode-properties": "8.2.0", + "regjsgen": "0.5.2", + "regjsparser": "0.6.6", + "unicode-match-property-ecmascript": "1.0.4", + "unicode-match-property-value-ecmascript": "1.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==" + }, + "node_modules/regjsparser": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.6.tgz", + "integrity": "sha512-jjyuCp+IEMIm3N1H1LLTJW1EISEJV9+5oHdEyrt43Pg9cDSb6rrLZei2cVWpl0xTjmmlpec/lEQGYgM7xfpGCQ==", + "dependencies": { + "jsesc": "0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "node_modules/repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dependencies": { + "is-finite": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "dependencies": { + "aws-sign2": "0.7.0", + "aws4": "1.11.0", + "caseless": "0.12.0", + "combined-stream": "1.0.8", + "extend": "3.0.2", + "forever-agent": "0.6.1", + "form-data": "2.3.3", + "har-validator": "5.1.5", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.28", + "oauth-sign": "0.9.0", + "performance-now": "2.1.0", + "qs": "6.5.2", + "safe-buffer": "5.1.2", + "tough-cookie": "2.5.0", + "tunnel-agent": "0.6.0", + "uuid": "3.4.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dev": true, + "dependencies": { + "lodash": "4.17.20" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/request-promise-native": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "dev": true, + "dependencies": { + "request-promise-core": "1.1.4", + "stealthy-require": "1.1.1", + "tough-cookie": "2.5.0" + }, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/request-promise-native/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "1.8.0", + "punycode": "2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "1.8.0", + "punycode": "2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "node_modules/resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "dependencies": { + "is-core-module": "2.2.0", + "path-parse": "1.0.6" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dependencies": { + "onetime": "2.0.1", + "signal-exit": "3.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "7.1.6" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" + }, + "node_modules/rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dependencies": { + "rx-lite": "4.0.8" + } + }, + "node_modules/rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dependencies": { + "symbol-observable": "1.0.1" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dependencies": { + "ret": "0.1.15" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dependencies": { + "@cnakazawa/watch": "1.0.4", + "anymatch": "2.0.0", + "capture-exit": "2.0.0", + "exec-sh": "0.3.4", + "execa": "1.0.0", + "fb-watchman": "2.0.1", + "micromatch": "3.1.10", + "minimist": "1.2.5", + "walker": "1.0.7" + }, + "bin": { + "sane": "src/cli.js" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/saxes": { + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", + "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", + "dev": true, + "dependencies": { + "xmlchars": "2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/scheduler": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "dependencies": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dependencies": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.7.3", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "2.3.0", + "range-parser": "1.2.1", + "statuses": "1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + }, + "node_modules/serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dependencies": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.3", + "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dependencies": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "node_modules/shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "dependencies": { + "is-extendable": "0.1.1", + "kind-of": "5.1.0", + "mixin-object": "2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dependencies": { + "array-filter": "0.0.1", + "array-map": "0.0.0", + "array-reduce": "0.0.0", + "jsonify": "0.0.0" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true, + "optional": true + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "get-intrinsic": "1.0.2", + "object-inspect": "1.9.0" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "node_modules/simple-plist": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/simple-plist/-/simple-plist-1.1.1.tgz", + "integrity": "sha512-pKMCVKvZbZTsqYR6RKgLfBHkh2cV89GXcA/0CVPje3sOiNOnXA8+rp/ciAMZ7JRaUdLzlEM6JFfUn+fS6Nt3hg==", + "dependencies": { + "bplist-creator": "0.0.8", + "bplist-parser": "0.2.0", + "plist": "3.0.1" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dependencies": { + "is-arrayish": "0.3.2" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dependencies": { + "ansi-styles": "3.2.1", + "astral-regex": "1.0.0", + "is-fullwidth-code-point": "2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "engines": { + "node": "*" + } + }, + "node_modules/smart-buffer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", + "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dependencies": { + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.3", + "use": "3.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dependencies": { + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dependencies": { + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "0.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/socks": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "dependencies": { + "ip": "1.1.5", + "smart-buffer": "4.1.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", + "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", + "dependencies": { + "agent-base": "6.0.2", + "debug": "4.3.1", + "socks": "2.6.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dependencies": { + "atob": "2.1.2", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dependencies": { + "buffer-from": "1.1.1", + "source-map": "0.6.1" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "3.0.1", + "spdx-license-ids": "3.0.7" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "2.3.0", + "spdx-license-ids": "3.0.7" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", + "dev": true + }, + "node_modules/split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dependencies": { + "extend-shallow": "3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "dependencies": { + "asn1": "0.2.4", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.2", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.2", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "safer-buffer": "2.1.2", + "tweetnacl": "0.14.5" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stack-utils": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.4.tgz", + "integrity": "sha512-IPDJfugEGbfizBwBZRZ3xpccMdRyP5lqsBWXGQWimVjua/ccLCeMOAVjlc1R7LxFjo5sEDhyNIXd8mo/AiDS9w==", + "dependencies": { + "escape-string-regexp": "2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/stacktrace-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", + "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "dependencies": { + "type-fest": "0.7.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dependencies": { + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "0.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stream-buffers": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz", + "integrity": "sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ=", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "5.1.2" + } + }, + "node_modules/string-length": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz", + "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==", + "dev": true, + "dependencies": { + "astral-regex": "1.0.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-length/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/string-length/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dependencies": { + "emoji-regex": "8.0.0", + "is-fullwidth-code-point": "3.0.0", + "strip-ansi": "6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz", + "integrity": "sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has-symbols": "1.0.1", + "internal-slot": "1.0.2", + "regexp.prototype.flags": "1.3.1", + "side-channel": "1.0.4" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz", + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz", + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==", + "dev": true, + "dependencies": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/sudo-prompt": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", + "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==" + }, + "node_modules/superagent": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz", + "integrity": "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==", + "dependencies": { + "component-emitter": "1.3.0", + "cookiejar": "2.1.2", + "debug": "4.3.1", + "fast-safe-stringify": "2.0.7", + "form-data": "3.0.1", + "formidable": "1.2.2", + "methods": "1.1.2", + "mime": "2.5.2", + "qs": "6.9.6", + "readable-stream": "3.6.0", + "semver": "7.3.5" + }, + "engines": { + "node": ">= 7.0.0" + } + }, + "node_modules/superagent-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-2.1.0.tgz", + "integrity": "sha512-DnarpKN6Xn8e3pYlFV4Yvsj9yxLY4q5FIsUe5JvN7vjzP+YCfzXv03dTkZSD2yzrSadsNYHf0IgOUJwKjX457A==", + "dependencies": { + "debug": "3.2.7", + "proxy-agent": "4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/superagent-proxy/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "2.1.2" + } + }, + "node_modules/superagent/node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "0.4.0", + "combined-stream": "1.0.8", + "mime-types": "2.1.28" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/superagent/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/superagent/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/superagent/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "2.0.4", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/superagent/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/superagent/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/superstruct": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-0.6.2.tgz", + "integrity": "sha512-lvA97MFAJng3rfjcafT/zGTSWm6Tbpk++DP6It4Qg7oNaeM+2tdJMuVgGje21/bIpBEs6iQql1PJH6dKTjl4Ig==", + "dependencies": { + "clone-deep": "2.0.2", + "kind-of": "6.0.3" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", + "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0", + "supports-color": "7.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "6.12.6", + "lodash": "4.17.20", + "slice-ansi": "2.1.0", + "string-width": "3.1.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/table/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/table/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/table/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/temp": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", + "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", + "engines": [ + "node >=0.8.0" + ], + "dependencies": { + "os-tmpdir": "1.0.2", + "rimraf": "2.2.8" + } + }, + "node_modules/temp/node_modules/rimraf": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", + "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "4.3.1", + "supports-hyperlinks": "2.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/terminal-link/node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "dependencies": { + "type-fest": "0.11.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/terminal-link/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "0.1.2", + "glob": "7.1.6", + "minimatch": "3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "2.3.7", + "xtend": "4.0.2" + } + }, + "node_modules/time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dependencies": { + "kind-of": "3.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "1.1.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dependencies": { + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "regex-not": "1.0.2", + "safe-regex": "1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dependencies": { + "is-number": "3.0.0", + "repeat-string": "1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dev": true, + "dependencies": { + "ip-regex": "2.1.0", + "psl": "1.8.0", + "punycode": "2.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "dependencies": { + "punycode": "2.1.1" + } + }, + "node_modules/trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/tsutils": { + "version": "3.19.1", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz", + "integrity": "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==", + "dev": true, + "dependencies": { + "tslib": "1.14.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dependencies": { + "prelude-ls": "1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", + "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "1.0.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.23", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.23.tgz", + "integrity": "sha512-m4hvMLxgGHXG3O3fQVAyyAQpZzDOvwnhOTjYz5Xmr7r/+LpkNy3vJXdVRWgd1TkAb7NGROZuSy96CrlNVjA7KA==", + "engines": { + "node": "*" + } + }, + "node_modules/uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dependencies": { + "commander": "2.13.0", + "source-map": "0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/uglify-es/node_modules/commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "node_modules/uglify-es/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + }, + "node_modules/underscore": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz", + "integrity": "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "1.0.4", + "unicode-property-aliases-ecmascript": "1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dependencies": { + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dependencies": { + "has-value": "0.3.1", + "isobject": "3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dependencies": { + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "2.1.1" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "node_modules/url-parse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz", + "integrity": "sha512-HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==", + "dependencies": { + "querystringify": "2.2.0", + "requires-port": "1.0.0" + } + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/use-subscription": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", + "integrity": "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==", + "dependencies": { + "object-assign": "4.1.1" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz", + "integrity": "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "2.0.3", + "convert-source-map": "1.7.0", + "source-map": "0.7.3" + }, + "engines": { + "node": "8.x.x || >=10.10.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "3.1.1", + "spdx-expression-parse": "3.0.1" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, + "node_modules/vlq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz", + "integrity": "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==" + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "dependencies": { + "browser-process-hrtime": "1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz", + "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==", + "dev": true, + "dependencies": { + "domexception": "1.0.1", + "webidl-conversions": "4.0.2", + "xml-name-validator": "3.0.0" + } + }, + "node_modules/walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dependencies": { + "makeerror": "1.0.11" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dependencies": { + "defaults": "1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-fetch": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz", + "integrity": "sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A==" + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "dependencies": { + "lodash.sortby": "4.7.0", + "tr46": "1.0.1", + "webidl-conversions": "4.0.2" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "4.3.0", + "string-width": "4.2.0", + "strip-ansi": "6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "dependencies": { + "mkdirp": "0.5.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dependencies": { + "graceful-fs": "4.2.4", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } + }, + "node_modules/ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "dependencies": { + "options": "0.0.6", + "ultron": "1.0.2" + } + }, + "node_modules/xcode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-2.1.0.tgz", + "integrity": "sha512-uCrmPITrqTEzhn0TtT57fJaNaw8YJs1aCzs+P/QqxsDbvPZSv7XMPPwXrKvHtD6pLjBM/NaVwraWJm8q83Y4iQ==", + "dependencies": { + "simple-plist": "1.1.1", + "uuid": "3.4.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/xcode/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/xmldoc": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.1.2.tgz", + "integrity": "sha512-ruPC/fyPNck2BD1dpz0AZZyrEwMOrWTO5lDdIXS91rs3wtm4j+T8Rp2o+zoOYkkAxJTZRPOSnOGei1egoRmKMQ==", + "dependencies": { + "sax": "1.2.4" + } + }, + "node_modules/xmldom": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz", + "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==", + "engines": { + "node": ">=0.1" + } + }, + "node_modules/xpipe": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/xpipe/-/xpipe-1.0.5.tgz", + "integrity": "sha1-jdi/Rfw/f1Xw4FS4ePQ6YmFNr98=" + }, + "node_modules/xregexp": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.4.1.tgz", + "integrity": "sha512-2u9HwfadaJaY9zHtRRnH6BY6CQVNQKkYm3oLtC9gJXXzfsbACg5X5e4EZZGVAH+YIfa+QA9lsFQTTe3HURF3ag==", + "dev": true, + "dependencies": { + "@babel/runtime-corejs3": "7.12.5" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==" + }, + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dependencies": { + "cliui": "6.0.0", + "decamelize": "1.2.0", + "find-up": "4.1.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "4.2.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "18.1.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dependencies": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "dependencies": { + "buffer-crc32": "0.2.13" + } + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "requires": { + "@babel/highlight": "7.10.4" + } + }, + "@babel/core": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz", + "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==", + "requires": { + "@babel/code-frame": "7.12.11", + "@babel/generator": "7.12.11", + "@babel/helper-module-transforms": "7.12.1", + "@babel/helpers": "7.12.5", + "@babel/parser": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "convert-source-map": "1.7.0", + "debug": "4.3.1", + "gensync": "1.0.0-beta.2", + "json5": "2.1.3", + "lodash": "4.17.20", + "semver": "5.7.1", + "source-map": "0.5.7" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "@babel/generator": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", + "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", + "requires": { + "@babel/types": "7.12.12", + "jsesc": "2.5.2", + "source-map": "0.5.7" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.10.tgz", + "integrity": "sha512-XplmVbC1n+KY6jL8/fgLVXXUauDIB+lD5+GsQEh6F6GBF1dq1qy4DP4yXWzDKcoqXB3X58t61e85Fitoww4JVQ==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", + "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "requires": { + "@babel/helper-explode-assignable-expression": "7.12.1", + "@babel/types": "7.12.12" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz", + "integrity": "sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w==", + "requires": { + "@babel/helper-function-name": "7.12.11", + "@babel/helper-member-expression-to-functions": "7.12.7", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.7.tgz", + "integrity": "sha512-idnutvQPdpbduutvi3JVfEgcVIHooQnhvhx0Nk9isOINOIGYkZea1Pk2JlJRiUnMefrlvr0vkByATBY/mB4vjQ==", + "requires": { + "@babel/helper-annotate-as-pure": "7.12.10", + "regexpu-core": "4.7.1" + } + }, + "@babel/helper-define-map": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", + "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "requires": { + "@babel/helper-function-name": "7.12.11", + "@babel/types": "7.12.12", + "lodash": "4.17.20" + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.1.tgz", + "integrity": "sha512-dmUwH8XmlrUpVqgtZ737tK88v07l840z9j3OEhCLwKTkjlvKpfqXVIZ0wpK3aeOxspwGrf/5AP5qLx4rO3w5rA==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-function-name": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", + "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", + "requires": { + "@babel/helper-get-function-arity": "7.12.10", + "@babel/template": "7.12.7", + "@babel/types": "7.12.12" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", + "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", + "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-module-imports": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", + "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-module-transforms": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", + "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", + "requires": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-simple-access": "7.12.1", + "@babel/helper-split-export-declaration": "7.12.11", + "@babel/helper-validator-identifier": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "lodash": "4.17.20" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", + "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz", + "integrity": "sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A==", + "requires": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-wrap-function": "7.12.3", + "@babel/types": "7.12.12" + } + }, + "@babel/helper-replace-supers": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", + "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", + "requires": { + "@babel/helper-member-expression-to-functions": "7.12.7", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "@babel/helper-simple-access": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", + "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", + "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", + "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", + "requires": { + "@babel/types": "7.12.12" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + }, + "@babel/helper-wrap-function": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.3.tgz", + "integrity": "sha512-Cvb8IuJDln3rs6tzjW3Y8UeelAOdnpB8xtQ4sme2MSZ9wOxrbThporC0y/EtE16VAtoyEfLM404Xr1e0OOp+ow==", + "requires": { + "@babel/helper-function-name": "7.12.11", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "@babel/helpers": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", + "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", + "requires": { + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12" + } + }, + "@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "requires": { + "@babel/helper-validator-identifier": "7.12.11", + "chalk": "2.4.2", + "js-tokens": "4.0.0" + } + }, + "@babel/parser": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", + "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==" + }, + "@babel/plugin-external-helpers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-external-helpers/-/plugin-external-helpers-7.12.1.tgz", + "integrity": "sha512-5VBqan0daXhDSRjrq2miABuELRwWJWFdM42Jvs/CDuhp+Es+fW+ISA5l+co8d+9oN3WLz/N3VvzyeseL3AvjxA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.1.tgz", + "integrity": "sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w==", + "requires": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-proposal-decorators": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.12.12.tgz", + "integrity": "sha512-fhkE9lJYpw2mjHelBpM2zCbaA11aov2GJs7q4cFaXNrWx0H3bW58H9Esy2rdtYOghFBEYUDRIpvlgi+ZD+AvvQ==", + "requires": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-decorators": "7.12.1" + } + }, + "@babel/plugin-proposal-export-default-from": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.12.1.tgz", + "integrity": "sha512-z5Q4Ke7j0AexQRfgUvnD+BdCSgpTEKnqQ3kskk2jWtOBulxICzd1X9BGt7kmWftxZ2W3++OZdt5gtmC8KLxdRQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-export-default-from": "7.12.1" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.1.tgz", + "integrity": "sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-transform-parameters": "7.12.1" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.1.tgz", + "integrity": "sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-optional-catch-binding": "7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz", + "integrity": "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "7.12.1", + "@babel/plugin-syntax-optional-chaining": "7.8.3" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz", + "integrity": "sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-decorators": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.1.tgz", + "integrity": "sha512-ir9YW5daRrTYiy9UJ2TzdNIJEZu8KclVzDcfSt4iEmOtwQ4llPtWInNKJyKnVXp1vE4bbVd5S31M/im3mYMO1w==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-export-default-from": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.12.1.tgz", + "integrity": "sha512-dP5eGg6tHEkhnRD2/vRG/KJKRSg8gtxu2i+P/8/yFPJn/CfPU5G0/7Gks2i3M6IOVAPQekmsLN9LPsmXFFL4Uw==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-flow": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.12.1.tgz", + "integrity": "sha512-1lBLLmtxrwpm4VKmtVFselI/P3pX+G63fAtUUt6b2Nzgao77KNDwyuRt90Mj2/9pKobtt68FdvjfqohZjg/FCA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz", + "integrity": "sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz", + "integrity": "sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.1.tgz", + "integrity": "sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A==", + "requires": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-remap-async-to-generator": "7.12.1" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.1.tgz", + "integrity": "sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.12.tgz", + "integrity": "sha512-VOEPQ/ExOVqbukuP7BYJtI5ZxxsmegTwzZ04j1aF0dkSypGo9XpDHuOrABsJu+ie+penpSJheDJ11x1BEZNiyQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.1.tgz", + "integrity": "sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog==", + "requires": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-define-map": "7.10.5", + "@babel/helper-function-name": "7.12.11", + "@babel/helper-optimise-call-expression": "7.12.10", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-replace-supers": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11", + "globals": "11.12.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.1.tgz", + "integrity": "sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.1.tgz", + "integrity": "sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.1.tgz", + "integrity": "sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug==", + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "7.10.4", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-flow-strip-types": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.12.10.tgz", + "integrity": "sha512-0ti12wLTLeUIzu9U7kjqIn4MyOL7+Wibc7avsHhj4o1l5C0ATs8p2IMHrVYjm9t9wzhfEO6S3kxax0Rpdo8LTg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-flow": "7.12.1" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.1.tgz", + "integrity": "sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.1.tgz", + "integrity": "sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw==", + "requires": { + "@babel/helper-function-name": "7.12.11", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.1.tgz", + "integrity": "sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.1.tgz", + "integrity": "sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz", + "integrity": "sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag==", + "requires": { + "@babel/helper-module-transforms": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-simple-access": "7.12.1", + "babel-plugin-dynamic-import-node": "2.3.3" + } + }, + "@babel/plugin-transform-object-assign": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.12.1.tgz", + "integrity": "sha512-geUHn4XwHznRAFiuROTy0Hr7bKbpijJCmr1Svt/VNGhpxmp0OrdxURNpWbOAf94nUbL+xj6gbxRVPHWIbRpRoA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.1.tgz", + "integrity": "sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-replace-supers": "7.12.11" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.1.tgz", + "integrity": "sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.1.tgz", + "integrity": "sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.1.tgz", + "integrity": "sha512-cAzB+UzBIrekfYxyLlFqf/OagTvHLcVBb5vpouzkYkBclRPraiygVnafvAoipErZLI8ANv8Ecn6E/m5qPXD26w==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.12.12.tgz", + "integrity": "sha512-JDWGuzGNWscYcq8oJVCtSE61a5+XAOos+V0HrxnDieUus4UMnBEosDnY1VJqU5iZ4pA04QY7l0+JvHL1hZEfsw==", + "requires": { + "@babel/helper-annotate-as-pure": "7.12.10", + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/types": "7.12.12" + } + }, + "@babel/plugin-transform-react-jsx-self": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.12.1.tgz", + "integrity": "sha512-FbpL0ieNWiiBB5tCldX17EtXgmzeEZjFrix72rQYeq9X6nUK38HCaxexzVQrZWXanxKJPKVVIU37gFjEQYkPkA==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-react-jsx-source": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.12.1.tgz", + "integrity": "sha512-keQ5kBfjJNRc6zZN1/nVHCd6LLIHq4aUKcVnvE/2l+ZZROSbqoiGFRtT5t3Is89XJxBQaP7NLZX2jgGHdZvvFQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.1.tgz", + "integrity": "sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng==", + "requires": { + "regenerator-transform": "0.14.5" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.12.10.tgz", + "integrity": "sha512-xOrUfzPxw7+WDm9igMgQCbO3cJKymX7dFdsgRr1eu9n3KjjyU4pptIXbXPseQDquw+W+RuJEJMHKHNsPNNm3CA==", + "requires": { + "@babel/helper-module-imports": "7.12.5", + "@babel/helper-plugin-utils": "7.10.4", + "semver": "5.7.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.1.tgz", + "integrity": "sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.1.tgz", + "integrity": "sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "7.12.1" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz", + "integrity": "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.1.tgz", + "integrity": "sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz", + "integrity": "sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw==", + "requires": { + "@babel/helper-create-class-features-plugin": "7.12.1", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-syntax-typescript": "7.12.1" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.1.tgz", + "integrity": "sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "7.12.7", + "@babel/helper-plugin-utils": "7.10.4" + } + }, + "@babel/register": { + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.12.10.tgz", + "integrity": "sha512-EvX/BvMMJRAA3jZgILWgbsrHwBQvllC5T8B29McyME8DvkdOxk4ujESfrMvME8IHSDvWXrmMXxPvA/lx2gqPLQ==", + "requires": { + "find-cache-dir": "2.1.0", + "lodash": "4.17.20", + "make-dir": "2.1.0", + "pirates": "4.0.1", + "source-map-support": "0.5.19" + } + }, + "@babel/runtime": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.5.tgz", + "integrity": "sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==", + "requires": { + "regenerator-runtime": "0.13.7" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + } + } + }, + "@babel/runtime-corejs3": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.12.5.tgz", + "integrity": "sha512-roGr54CsTmNPPzZoCP1AmDXuBoNao7tnSA83TXTwt+UK5QVyh1DIJnrgYRPWKCF2flqZQXwa7Yr8v7VmLzF0YQ==", + "dev": true, + "requires": { + "core-js-pure": "3.8.3", + "regenerator-runtime": "0.13.7" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", + "dev": true + } + } + }, + "@babel/template": { + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", + "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", + "requires": { + "@babel/code-frame": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12" + } + }, + "@babel/traverse": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", + "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", + "requires": { + "@babel/code-frame": "7.12.11", + "@babel/generator": "7.12.11", + "@babel/helper-function-name": "7.12.11", + "@babel/helper-split-export-declaration": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12", + "debug": "4.3.1", + "globals": "11.12.0", + "lodash": "4.17.20" + } + }, + "@babel/types": { + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", + "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", + "requires": { + "@babel/helper-validator-identifier": "7.12.11", + "lodash": "4.17.20", + "to-fast-properties": "2.0.0" + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "@callstack/react-theme-provider": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.5.tgz", + "integrity": "sha512-Iec+ybWN0FvNj87sD3oWo/49edGUP0UOSdMnzCJEFJIDYr992ECIuOV89burAAh2/ibPCxgLiK6dmgv2mO/8Tg==", + "requires": { + "deepmerge": "3.3.0", + "hoist-non-react-statics": "3.3.2" + } + }, + "@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "requires": { + "exec-sh": "0.3.4", + "minimist": "1.2.5" + } + }, + "@egjs/hammerjs": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", + "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", + "requires": { + "@types/hammerjs": "2.0.36" + } + }, + "@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==" + }, + "@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==" + }, + "@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==" + }, + "@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "requires": { + "@hapi/address": "2.1.4", + "@hapi/bourne": "1.3.2", + "@hapi/hoek": "8.5.1", + "@hapi/topo": "3.1.6" + } + }, + "@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "requires": { + "@hapi/hoek": "8.5.1" + } + }, + "@invertase/react-native-apple-authentication": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@invertase/react-native-apple-authentication/-/react-native-apple-authentication-2.1.2.tgz", + "integrity": "sha512-FzY+CApZLgGS9fmPBDB2kFBMePB37bH0+4h4e8gHtnHm/hF3/iqANAS6oXQq7W3SC+bgciuq38jeLFqNLgAmCA==" + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "requires": { + "camelcase": "5.3.1", + "find-up": "4.1.0", + "get-package-type": "0.1.0", + "js-yaml": "3.14.1", + "resolve-from": "5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, + "@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "dev": true + }, + "@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "requires": { + "@jest/source-map": "24.9.0", + "chalk": "2.4.2", + "slash": "2.0.0" + }, + "dependencies": { + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + } + } + }, + "@jest/core": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.5.4.tgz", + "integrity": "sha512-3uSo7laYxF00Dg/DMgbn4xMJKmDdWvZnf89n8Xj/5/AeQ2dOQmn6b6Hkj/MleyzZWXpwv+WSdYWl4cLsy2JsoA==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/reporters": "25.5.1", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "ansi-escapes": "4.3.1", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "jest-changed-files": "25.5.0", + "jest-config": "25.5.4", + "jest-haste-map": "25.5.1", + "jest-message-util": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-resolve-dependencies": "25.5.4", + "jest-runner": "25.5.4", + "jest-runtime": "25.5.4", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "jest-watcher": "25.5.0", + "micromatch": "4.0.2", + "p-each-series": "2.2.0", + "realpath-native": "2.0.0", + "rimraf": "3.0.2", + "slash": "3.0.0", + "strip-ansi": "6.0.0" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "0.11.0" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "7.1.6" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "5.0.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "@jest/environment": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.5.0.tgz", + "integrity": "sha512-U2VXPEqL07E/V7pSZMSQCvV5Ea4lqOlT+0ZFijl/i316cRMHvZ4qC+jBdryd+lmRetjQo0YIQr6cVPNxxK87mA==", + "dev": true, + "requires": { + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0" + }, + "dependencies": { + "@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "requires": { + "@jest/types": "24.9.0", + "jest-message-util": "24.9.0", + "jest-mock": "24.9.0" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + } + } + }, + "@jest/globals": { + "version": "25.5.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-25.5.2.tgz", + "integrity": "sha512-AgAS/Ny7Q2RCIj5kZ+0MuKM1wbF0WMLxbCVl/GOMoCNbODRdJ541IxJ98xnZdVSZXivKpJlNPIWa3QmY0l4CXA==", + "dev": true, + "requires": { + "@jest/environment": "25.5.0", + "@jest/types": "25.5.0", + "expect": "25.5.0" + } + }, + "@jest/reporters": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.5.1.tgz", + "integrity": "sha512-3jbd8pPDTuhYJ7vqiHXbSwTJQNavczPs+f1kRprRDxETeE3u6srJ+f0NPuwvOmk+lmunZzPkYWIFZDLHQPkviw==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "0.2.3", + "@jest/console": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "collect-v8-coverage": "1.0.1", + "exit": "0.1.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "istanbul-lib-coverage": "3.0.0", + "istanbul-lib-instrument": "4.0.3", + "istanbul-lib-report": "3.0.0", + "istanbul-lib-source-maps": "4.0.0", + "istanbul-reports": "3.0.2", + "jest-haste-map": "25.5.1", + "jest-resolve": "25.5.1", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "node-notifier": "6.0.0", + "slash": "3.0.0", + "source-map": "0.6.1", + "string-length": "3.1.0", + "terminal-link": "2.1.1", + "v8-to-istanbul": "4.1.4" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "requires": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + }, + "dependencies": { + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "requires": { + "@jest/console": "24.9.0", + "@jest/types": "24.9.0", + "@types/istanbul-lib-coverage": "2.0.3" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + } + } + }, + "@jest/test-sequencer": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.5.4.tgz", + "integrity": "sha512-pTJGEkSeg1EkCO2YWq6hbFvKNXk8ejqlxiOg1jBNLnWrgXOkdY6UmqZpwGFXNnRt9B8nO1uWMzLLZ4eCmhkPNA==", + "dev": true, + "requires": { + "@jest/test-result": "25.5.0", + "graceful-fs": "4.2.4", + "jest-haste-map": "25.5.1", + "jest-runner": "25.5.4", + "jest-runtime": "25.5.4" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "@jest/transform": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.5.1.tgz", + "integrity": "sha512-Y8CEoVwXb4QwA6Y/9uDkn0Xfz0finGkieuV0xkdF9UtZGJeLukD5nLkaVrVsODB1ojRWlaoD0AJZpVHCSnJEvg==", + "dev": true, + "requires": { + "@babel/core": "7.12.10", + "@jest/types": "25.5.0", + "babel-plugin-istanbul": "6.0.0", + "chalk": "3.0.0", + "convert-source-map": "1.7.0", + "fast-json-stable-stringify": "2.1.0", + "graceful-fs": "4.2.4", + "jest-haste-map": "25.5.1", + "jest-regex-util": "25.2.6", + "jest-util": "25.5.0", + "micromatch": "4.0.2", + "pirates": "4.0.1", + "realpath-native": "2.0.0", + "slash": "3.0.0", + "source-map": "0.6.1", + "write-file-atomic": "3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "0.1.4", + "is-typedarray": "1.0.0", + "signal-exit": "3.0.3", + "typedarray-to-buffer": "3.1.5" + } + } + } + }, + "@jest/types": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "15.0.12", + "chalk": "3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "@react-native-community/art": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@react-native-community/art/-/art-1.2.0.tgz", + "integrity": "sha512-a+ZcRGl/BzLa89yi33Mbn5SHavsEXqKUMdbfLf3U8MDLElndPqUetoJyGkv63+BcPO49UMWiQRP1YUz6/zfJ+A==", + "requires": { + "art": "0.10.3", + "invariant": "2.2.4", + "prop-types": "15.7.2" + } + }, + "@react-native-community/async-storage": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@react-native-community/async-storage/-/async-storage-1.12.1.tgz", + "integrity": "sha512-70WGaH3PKYASi4BThuEEKMkyAgE9k7VytBqmgPRx3MzJx9/MkspwqJGmn3QLCgHLIFUgF1pit2mWICbRJ3T3lg==", + "requires": { + "deep-assign": "3.0.0" + } + }, + "@react-native-community/cli-debugger-ui": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.13.1.tgz", + "integrity": "sha512-UFnkg5RTq3s2X15fSkrWY9+5BKOFjihNSnJjTV2H5PtTUFbd55qnxxPw8CxSfK0bXb1IrSvCESprk2LEpqr5cg==", + "requires": { + "serve-static": "1.14.1" + } + }, + "@react-native-community/cli-hermes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-4.13.0.tgz", + "integrity": "sha512-oG+w0Uby6rSGsUkJGLvMQctZ5eVRLLfhf84lLyz942OEDxFRa9U19YJxOe9FmgCKtotbYiM3P/XhK+SVCuerPQ==", + "requires": { + "@react-native-community/cli-platform-android": "4.13.0", + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "hermes-profile-transformer": "0.0.6", + "ip": "1.1.5" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "@react-native-community/cli-platform-android": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-4.13.0.tgz", + "integrity": "sha512-3i8sX8GklEytUZwPnojuoFbCjIRzMugCdzDIdZ9UNmi/OhD4/8mLGO0dgXfT4sMWjZwu3qjy45sFfk2zOAgHbA==", + "requires": { + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "execa": "1.0.0", + "fs-extra": "8.1.0", + "glob": "7.1.6", + "jetifier": "1.6.6", + "lodash": "4.17.20", + "logkitty": "0.7.1", + "slash": "3.0.0", + "xmldoc": "1.1.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "@react-native-community/cli-platform-ios": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-4.13.0.tgz", + "integrity": "sha512-6THlTu8zp62efkzimfGr3VIuQJ2514o+vScZERJCV1xgEi8XtV7mb/ZKt9o6Y9WGxKKkc0E0b/aVAtgy+L27CA==", + "requires": { + "@react-native-community/cli-tools": "4.13.0", + "chalk": "3.0.0", + "glob": "7.1.6", + "js-yaml": "3.14.1", + "lodash": "4.17.20", + "plist": "3.0.1", + "xcode": "2.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "@react-native-community/cli-server-api": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-4.13.1.tgz", + "integrity": "sha512-vQzsFKD9CjHthA2ehTQX8c7uIzlI9A7ejaIow1I9RlEnLraPH2QqVDmzIdbdh5Od47UPbRzamCgAP8Bnqv3qwQ==", + "requires": { + "@react-native-community/cli-debugger-ui": "4.13.1", + "@react-native-community/cli-tools": "4.13.0", + "compression": "1.7.4", + "connect": "3.7.0", + "errorhandler": "1.5.1", + "nocache": "2.1.0", + "pretty-format": "25.5.0", + "serve-static": "1.14.1", + "ws": "1.1.5" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + } + } + }, + "@react-native-community/cli-tools": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-4.13.0.tgz", + "integrity": "sha512-s4f489h5+EJksn4CfheLgv5PGOM0CDmK1UEBLw2t/ncWs3cW2VI7vXzndcd/WJHTv3GntJhXDcJMuL+Z2IAOgg==", + "requires": { + "chalk": "3.0.0", + "lodash": "4.17.20", + "mime": "2.5.0", + "node-fetch": "2.6.1", + "open": "6.4.0", + "shell-quote": "1.6.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "mime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz", + "integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "@react-native-community/cli-types": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-4.10.1.tgz", + "integrity": "sha512-ael2f1onoPF3vF7YqHGWy7NnafzGu+yp88BbFbP0ydoCP2xGSUzmZVw0zakPTC040Id+JQ9WeFczujMkDy6jYQ==" + }, + "@react-native-community/datetimepicker": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@react-native-community/datetimepicker/-/datetimepicker-3.5.2.tgz", + "integrity": "sha512-TWRuAtr/DnrEcRewqvXMLea2oB+YF+SbtuYLHguALLxNJQLl/RFB7aTNZeF+OoH75zKFqtXECXV1/uxQUpA+sg==", + "requires": { + "invariant": "^2.2.4" + } + }, + "@react-native-community/eslint-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@react-native-community/eslint-config/-/eslint-config-1.1.0.tgz", + "integrity": "sha512-hwb1hC28BhkwLwnO6vDISV6XZbipw2RIEhBVBN+pE7AUG9HjFXxoksiiOSoYgox9C8g86VJwHnKpak/3NnVBkQ==", + "dev": true, + "requires": { + "@react-native-community/eslint-plugin": "1.1.0", + "@typescript-eslint/eslint-plugin": "2.34.0", + "@typescript-eslint/parser": "2.34.0", + "babel-eslint": "10.1.0", + "eslint-config-prettier": "6.15.0", + "eslint-plugin-eslint-comments": "3.2.0", + "eslint-plugin-flowtype": "2.50.3", + "eslint-plugin-jest": "22.4.1", + "eslint-plugin-prettier": "3.1.2", + "eslint-plugin-react": "7.19.0", + "eslint-plugin-react-hooks": "3.0.0", + "eslint-plugin-react-native": "3.8.1", + "prettier": "2.2.1" + } + }, + "@react-native-community/eslint-plugin": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@react-native-community/eslint-plugin/-/eslint-plugin-1.1.0.tgz", + "integrity": "sha512-W/J0fNYVO01tioHjvYWQ9m6RgndVtbElzYozBq1ZPrHO/iCzlqoySHl4gO/fpCl9QEFjvJfjPgtPMTMlsoq5DQ==", + "dev": true + }, + "@react-native-community/masked-view": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/@react-native-community/masked-view/-/masked-view-0.1.10.tgz", + "integrity": "sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ==" + }, + "@react-native-firebase/app": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/@react-native-firebase/app/-/app-11.2.0.tgz", + "integrity": "sha512-TLrttjy6h5rhmRqnKFe67GNbYeB1VZphH5Gm+pYJzfIbMsh/m6q2Au1D4jmLnfjpqXAaTtAhetnODyT1TH/LzQ==", + "requires": { + "opencollective-postinstall": "2.0.3", + "superstruct": "0.6.2" + } + }, + "@react-native-firebase/messaging": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/@react-native-firebase/messaging/-/messaging-11.2.0.tgz", + "integrity": "sha512-TSfEpTqZGf/eQ/5qTVyhX74YvOkk4Kx7Dq/y6XBz8rYFEyxayjpJ/RV9SXTUbDYunOyhC7EUJxcWvG6C5AjoTw==" + }, + "@react-native-google-signin/google-signin": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@react-native-google-signin/google-signin/-/google-signin-8.1.0.tgz", + "integrity": "sha512-63o8iJrihAuGDxvm8k8Ghy2rHha+OsQ8XrcbsOEhV/R9HTZL2qRyNwvm/NaHCCpuf/bywA8WFGerw+d8REDBKQ==", + "requires": {} + }, + "@react-navigation/bottom-tabs": { + "version": "5.11.3", + "resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-5.11.3.tgz", + "integrity": "sha512-ez79zP21wtuHcnIm96fld4MXc9oOSpJCG78MTo/Jw+yZxZsQdF4N55ABiLfaQ/48QyZr8cfi0GkP/AYheZwm6A==", + "requires": { + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "@react-navigation/core": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-5.15.0.tgz", + "integrity": "sha512-JesS2jRn6CC7ITzGaulZBVq7Z1EhFzT/9vXSFodJ1wDtprDJHLSjvPLuPcSw1dx9/1DRXj4iCeCBTIlDpNWJeA==", + "requires": { + "@react-navigation/routers": "5.7.0", + "escape-string-regexp": "4.0.0", + "nanoid": "3.1.20", + "query-string": "6.13.8", + "react-is": "16.13.1" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + } + } + }, + "@react-navigation/material-bottom-tabs": { + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/@react-navigation/material-bottom-tabs/-/material-bottom-tabs-5.3.11.tgz", + "integrity": "sha512-a/OcYDPFkM4WUpeSGXeLkN9kiCGAE7b6dX7aiiRZEguxrOiUAfo3pMnuFkaY3ZMFANsBNkR3O1V5rkVYj/yWCw==" + }, + "@react-navigation/native": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-5.9.0.tgz", + "integrity": "sha512-IphWd6uITuEC4zEfWESPiM6EPUnpnYC4lsGK3m75mlxca/MWok4bUCX73OL/iBlCi9skFAGyP9XccFyrFEIHIg==", + "requires": { + "@react-navigation/core": "5.15.0", + "escape-string-regexp": "4.0.0", + "nanoid": "3.1.20" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + } + } + }, + "@react-navigation/routers": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@react-navigation/routers/-/routers-5.7.0.tgz", + "integrity": "sha512-Du1OsLtEF2EEWo7GeFNoBRBi4aX4eHdFQXztNxeL/N3Gl3f8wc6Ys0XTWHgWlWQIspqOfup5YF3WQcLArunjvg==", + "requires": { + "nanoid": "3.1.20" + } + }, + "@react-navigation/stack": { + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/@react-navigation/stack/-/stack-5.13.0.tgz", + "integrity": "sha512-UorckfT7p7D5BLMJgpi8lY6duSV6WSG/NwidxWQK06u5bO0Uwxgx9sINjJZbS5+ijVJy8bB8SbG/I+H2bgT4eA==", + "requires": { + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "@sinonjs/commons": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.2.tgz", + "integrity": "sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + }, + "@types/babel__core": { + "version": "7.1.12", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz", + "integrity": "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==", + "dev": true, + "requires": { + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12", + "@types/babel__generator": "7.6.2", + "@types/babel__template": "7.4.0", + "@types/babel__traverse": "7.11.0" + } + }, + "@types/babel__generator": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", + "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", + "dev": true, + "requires": { + "@babel/types": "7.12.12" + } + }, + "@types/babel__template": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", + "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", + "dev": true, + "requires": { + "@babel/parser": "7.12.11", + "@babel/types": "7.12.12" + } + }, + "@types/babel__traverse": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.0.tgz", + "integrity": "sha512-kSjgDMZONiIfSH1Nxcr5JIRMwUetDki63FSQfpTCz8ogF3Ulqm8+mr5f78dUYs6vMiB6gBusQqfQmBvHZj/lwg==", + "dev": true, + "requires": { + "@babel/types": "7.12.12" + } + }, + "@types/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", + "dev": true + }, + "@types/graceful-fs": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.4.tgz", + "integrity": "sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==", + "dev": true, + "requires": { + "@types/node": "14.14.21" + } + }, + "@types/hammerjs": { + "version": "2.0.36", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.36.tgz", + "integrity": "sha512-7TUK/k2/QGpEAv/BCwSHlYu3NXZhQ9ZwBYpzr9tjlPIL2C5BeGhH3DmVavRx3ZNyELX5TLC91JTz/cen6AAtIQ==" + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3" + } + }, + "@types/istanbul-reports": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", + "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-lib-report": "3.0.0" + } + }, + "@types/json-schema": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz", + "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==", + "dev": true + }, + "@types/node": { + "version": "14.14.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.21.tgz", + "integrity": "sha512-cHYfKsnwllYhjOzuC5q1VpguABBeecUp24yFluHpn/BQaVxB1CuQ1FSRZCzrPxrkIfWISXV2LbeoBthLWg0+0A==", + "dev": true + }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, + "@types/prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==", + "dev": true + }, + "@types/prop-types": { + "version": "15.7.3", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", + "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" + }, + "@types/react": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.0.tgz", + "integrity": "sha512-aj/L7RIMsRlWML3YB6KZiXB3fV2t41+5RBGYF8z+tAKU43Px8C3cYUZsDvf1/+Bm4FK21QWBrDutu8ZJ/70qOw==", + "requires": { + "@types/prop-types": "15.7.3", + "csstype": "3.0.6" + } + }, + "@types/react-native": { + "version": "0.63.46", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.63.46.tgz", + "integrity": "sha512-SnBnWRErpISIaWk4K8kAfIKqSPdZ8fdH6HIw7kVdz6jMl/5FAf6iXeIwRfVZg1bCMh+ymNPCpSENNNEVprxj/w==", + "requires": { + "@types/react": "17.0.0" + } + }, + "@types/react-native-vector-icons": { + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/@types/react-native-vector-icons/-/react-native-vector-icons-6.4.6.tgz", + "integrity": "sha512-lAyxNfMd5L1xZvXWsGcJmNegDf61TAp40uL6ashNNWj9W3IrDJO59L9+9inh0Y2MsEZpLTdxzVU8Unb4/0FQng==", + "requires": { + "@types/react": "17.0.0", + "@types/react-native": "0.63.46" + } + }, + "@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==" + }, + "@types/yargs": { + "version": "15.0.12", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.12.tgz", + "integrity": "sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + }, + "@types/yargs-parser": { + "version": "20.2.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz", + "integrity": "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==" + }, + "@typescript-eslint/eslint-plugin": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", + "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "2.34.0", + "functional-red-black-tree": "1.0.1", + "regexpp": "3.1.0", + "tsutils": "3.19.1" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", + "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", + "dev": true, + "requires": { + "@types/json-schema": "7.0.6", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-scope": "5.1.1", + "eslint-utils": "2.1.0" + } + }, + "@typescript-eslint/parser": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", + "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", + "dev": true, + "requires": { + "@types/eslint-visitor-keys": "1.0.0", + "@typescript-eslint/experimental-utils": "2.34.0", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-visitor-keys": "1.3.0" + } + }, + "@typescript-eslint/typescript-estree": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", + "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", + "dev": true, + "requires": { + "debug": "4.3.1", + "eslint-visitor-keys": "1.3.0", + "glob": "7.1.6", + "is-glob": "4.0.1", + "lodash": "4.17.20", + "semver": "7.3.4", + "tsutils": "3.19.1" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "4.0.0" + } + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, + "abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "requires": { + "event-target-shim": "5.0.1" + } + }, + "absolute-path": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/absolute-path/-/absolute-path-0.0.0.tgz", + "integrity": "sha1-p4di+9rftSl76ZsV01p4Wy8JW/c=" + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "2.1.28", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "acorn-globals": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", + "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "dev": true, + "requires": { + "acorn": "6.4.2", + "acorn-walk": "6.2.0" + }, + "dependencies": { + "acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true + } + } + }, + "acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true + }, + "acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4.3.1" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "3.1.3", + "fast-json-stable-stringify": "2.1.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.4.1" + } + }, + "anser": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz", + "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==" + }, + "ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==" + }, + "ansi-fragments": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ansi-fragments/-/ansi-fragments-0.2.1.tgz", + "integrity": "sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==", + "requires": { + "colorette": "1.2.1", + "slice-ansi": "2.1.0", + "strip-ansi": "5.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "1.9.3" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "3.1.10", + "normalize-path": "2.1.1" + } + }, + "appcenter-file-upload-client": { + "version": "0.0.24", + "resolved": "https://registry.npmjs.org/appcenter-file-upload-client/-/appcenter-file-upload-client-0.0.24.tgz", + "integrity": "sha512-DqeXWXs68YYXdq7ieBfJ/lOmGvbFuzLrpe1SW5an2TDwkr1QfFfEpz5SHgwJirWfq/dXtGFbk2oTcsLyLFssQQ==", + "requires": { + "detect-node": "2.0.5", + "superagent": "5.1.0", + "url-parse": "1.5.1" + }, + "dependencies": { + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "2.0.4", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "superagent": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.1.0.tgz", + "integrity": "sha512-7V6JVx5N+eTL1MMqRBX0v0bG04UjrjAvvZJTF/VDH/SH2GjSLqlrcYepFlpTrXpm37aSY6h3GGVWGxXl/98TKA==", + "requires": { + "component-emitter": "1.3.0", + "cookiejar": "2.1.2", + "debug": "4.3.1", + "fast-safe-stringify": "2.0.7", + "form-data": "2.3.3", + "formidable": "1.2.2", + "methods": "1.1.2", + "mime": "2.5.2", + "qs": "6.9.6", + "readable-stream": "3.6.0", + "semver": "6.3.0" + } + } + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "1.0.3" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" + }, + "array-includes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", + "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "get-intrinsic": "1.0.2", + "is-string": "1.0.5" + } + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "art": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/art/-/art-0.10.3.tgz", + "integrity": "sha512-HXwbdofRTiJT6qZX/FnchtldzJjS3vkLJxQilc3Xj+ma2MXjY4UAyQ0ls1XZYVnDvVIBiFZbC6QsvtW86TD6tQ==" + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "2.1.2" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "requires": { + "tslib": "2.2.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==" + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "requires": { + "lodash": "4.17.20" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "requires": { + "follow-redirects": "1.13.1" + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.3", + "js-tokens": "3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + } + } + }, + "babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "eslint-visitor-keys": "1.3.0", + "resolve": "1.19.0" + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + } + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-jest": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.5.1.tgz", + "integrity": "sha512-9dA9+GmMjIzgPnYtkhBg73gOo/RHqPmLruP3BaGL4KEX3Dwz6pI8auSN8G8+iuEG90+GSswyKvslN+JYSaacaQ==", + "dev": true, + "requires": { + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "@types/babel__core": "7.1.12", + "babel-plugin-istanbul": "6.0.0", + "babel-preset-jest": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "slash": "3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "requires": { + "object.assign": "4.1.2" + } + }, + "babel-plugin-flow-react-proptypes": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-flow-react-proptypes/-/babel-plugin-flow-react-proptypes-9.2.0.tgz", + "integrity": "sha512-gmClrDpTB1H27mh+6/8iliV5BzGic5F9DO7INAd/30sSkg4XZd7LTbv4z06usuUHS8SzXibwotk8ct51IZ5OaQ==", + "requires": { + "babel-core": "^6.25.0", + "babel-template": "^6.25.0", + "babel-traverse": "^6.25.0", + "babel-types": "^6.25.0" + } + }, + "babel-plugin-istanbul": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", + "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@istanbuljs/load-nyc-config": "1.1.0", + "@istanbuljs/schema": "0.1.2", + "istanbul-lib-instrument": "4.0.3", + "test-exclude": "6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.5.0.tgz", + "integrity": "sha512-u+/W+WAjMlvoocYGTwthAiQSxDcJAyHpQ6oWlHdFZaaN+Rlk8Q7iiwDPg2lN/FyJtAYnKjFxbn7xus4HCFkg5g==", + "dev": true, + "requires": { + "@babel/template": "7.12.7", + "@babel/types": "7.12.12", + "@types/babel__traverse": "7.11.0" + } + }, + "babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "7.0.0-beta.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz", + "integrity": "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==" + }, + "babel-plugin-transform-decorators-legacy": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators-legacy/-/babel-plugin-transform-decorators-legacy-1.3.5.tgz", + "integrity": "sha512-jYHwjzRXRelYQ1uGm353zNzf3QmtdCfvJbuYTZ4gKveK7M9H1fs3a5AKdY1JUDl0z97E30ukORW1dzhWvsabtA==", + "requires": { + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-preset-current-node-syntax": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.4.tgz", + "integrity": "sha512-5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "7.8.4", + "@babel/plugin-syntax-bigint": "7.8.3", + "@babel/plugin-syntax-class-properties": "7.12.1", + "@babel/plugin-syntax-import-meta": "7.10.4", + "@babel/plugin-syntax-json-strings": "7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3", + "@babel/plugin-syntax-numeric-separator": "7.10.4", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "7.8.3", + "@babel/plugin-syntax-optional-chaining": "7.8.3" + } + }, + "babel-preset-fbjs": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.3.0.tgz", + "integrity": "sha512-7QTLTCd2gwB2qGoi5epSULMHugSVgpcVt5YAeiFO9ABLrutDQzKfGwzxgZHLpugq8qMdg/DhRZDZ5CLKxBkEbw==", + "requires": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-class-properties": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoped-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-member-expression-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-super": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-property-literals": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-template-literals": "7.12.1", + "babel-plugin-syntax-trailing-function-commas": "7.0.0-beta.0" + } + }, + "babel-preset-jest": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.5.0.tgz", + "integrity": "sha512-8ZczygctQkBU+63DtSOKGh7tFL0CeCuz+1ieud9lJ1WPQ9O6A1a/r+LGn6Y705PA6whHQ3T1XuB/PmpfNYf8Fw==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "25.5.0", + "babel-preset-current-node-syntax": "0.1.4" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.6.12", + "regenerator-runtime": "0.11.1" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.20" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.4", + "lodash": "4.17.20" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.3", + "lodash": "4.17.20", + "to-fast-properties": "1.0.3" + }, + "dependencies": { + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "1.0.1", + "class-utils": "0.3.6", + "component-emitter": "1.3.0", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.2", + "pascalcase": "0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "1.0.2" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + } + } + } + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "big-integer": { + "version": "1.6.48", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz", + "integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "bplist-creator": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.8.tgz", + "integrity": "sha512-Za9JKzD6fjLC16oX2wsXfc+qBEhJBJB1YPInoAQpMLhDuj5aVOv1baGeIQSq1Fr3OCqzvsoQcSBSwGId/Ja2PA==", + "requires": { + "stream-buffers": "2.2.0" + } + }, + "bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "requires": { + "big-integer": "1.6.48" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.3", + "snapdragon": "0.8.2", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "requires": { + "node-int64": "0.4.0" + } + }, + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "1.5.1", + "ieee754": "1.2.1" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "1.0.0", + "component-emitter": "1.3.0", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.1", + "to-object-path": "0.3.0", + "union-value": "1.0.1", + "unset-value": "1.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "1.1.1", + "get-intrinsic": "1.0.2" + } + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "requires": { + "callsites": "2.0.0" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "requires": { + "caller-callsite": "2.0.0" + } + }, + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "requires": { + "rsvp": "4.8.5" + } + }, + "card-validator": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/card-validator/-/card-validator-3.0.1.tgz", + "integrity": "sha1-3ML6vWoc0h82GyU2Qjpy3pmgiU8=", + "requires": { + "credit-card-type": "5.0.4", + "lodash": "3.10.1" + }, + "dependencies": { + "lodash": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" + } + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" + } + }, + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "static-extend": "0.1.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "requires": { + "restore-cursor": "2.0.0" + } + }, + "cli-spinners": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz", + "integrity": "sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==" + }, + "cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "requires": { + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "wrap-ansi": "6.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "5.0.0" + } + } + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + }, + "clone-deep": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", + "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", + "requires": { + "for-own": "1.0.0", + "is-plain-object": "2.0.4", + "kind-of": "6.0.3", + "shallow-clone": "1.0.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-push": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/code-push/-/code-push-4.0.4.tgz", + "integrity": "sha512-CIxGvXt4o/iiYSSZT7mhkAz0EeCJms3255PIs3BMawHptnBRrXUAma4JKRwSlldmZhpO425WXHZRaHc9HorM3A==", + "requires": { + "appcenter-file-upload-client": "0.0.24", + "recursive-fs": "2.1.0", + "slash": "3.0.0", + "superagent": "5.3.1", + "superagent-proxy": "2.1.0", + "yazl": "2.5.1" + } + }, + "collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + } + }, + "color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/color/-/color-3.1.3.tgz", + "integrity": "sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==", + "requires": { + "color-convert": "1.9.3", + "color-string": "1.5.4" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "color-string": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.4.tgz", + "integrity": "sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw==", + "requires": { + "color-name": "1.1.3", + "simple-swizzle": "0.2.2" + } + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + }, + "colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "1.0.0" + } + }, + "command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "requires": { + "mime-db": "1.45.0" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "requires": { + "accepts": "1.3.7", + "bytes": "3.0.0", + "compressible": "2.0.18", + "debug": "2.6.9", + "on-headers": "1.0.2", + "safe-buffer": "5.1.2", + "vary": "1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "1.1.1", + "inherits": "2.0.4", + "readable-stream": "2.3.7", + "typedarray": "0.0.6" + } + }, + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "1.3.3", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + }, + "core-js-pure": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.8.3.tgz", + "integrity": "sha512-V5qQZVAr9K0xu7jXg1M7qTEwuxUgqr7dUOezGaNa7i+Xn9oXAU/d1fzqD9ObuwpVQOaorO5s70ckyi1woP9lVA==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "requires": { + "import-fresh": "2.0.0", + "is-directory": "0.3.1", + "js-yaml": "3.14.1", + "parse-json": "4.0.0" + } + }, + "credit-card-type": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/credit-card-type/-/credit-card-type-5.0.4.tgz", + "integrity": "sha1-LdnfKAQRziu5Htlawx6BRgVxeu0=" + }, + "cross-fetch": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.6.tgz", + "integrity": "sha512-KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==", + "requires": { + "node-fetch": "2.6.1" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "1.0.5", + "path-key": "2.0.1", + "semver": "5.7.1", + "shebang-command": "1.2.0", + "which": "1.3.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==" + }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "requires": { + "cssom": "0.3.8" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + } + } + }, + "csstype": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.6.tgz", + "integrity": "sha512-+ZAmfyWMT7TiIlzdqJgjMb7S4f1beorDbWbsocyK4RaiqA5RTX3K14bnBWmmA9QEM0gRdsjyyrEmcyga8Zsxmw==" + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==" + }, + "data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "requires": { + "abab": "2.0.5", + "whatwg-mimetype": "2.3.0", + "whatwg-url": "7.1.0" + } + }, + "date-time-format-timezone": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/date-time-format-timezone/-/date-time-format-timezone-1.0.22.tgz", + "integrity": "sha512-4hEeKPpNlbFO05ldht9FwJEy2g1xL7kU3dTPY5hNSd1AyMjrrIeUS54kSWgt/KdttYshhjDMIonU+vCmL4NjVw==" + }, + "dayjs": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.3.tgz", + "integrity": "sha512-/2fdLN987N8Ki7Id8BUN2nhuiRyxTLumQnSQf9CNncFCyqFsSKb9TNhzRYcC8K8eJSJOKvbvkImo/MKKhNi4iw==" + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "dedent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.6.0.tgz", + "integrity": "sha1-Dm2o8M5Sg471zsXI+TlrDBtko8s=" + }, + "deep-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/deep-assign/-/deep-assign-3.0.0.tgz", + "integrity": "sha512-YX2i9XjJ7h5q/aQ/IM9PEwEnDqETAIYbggmdDB3HLTlSgo1CxPsj6pvhPG68rq6SVE0+p+6Ywsm5fTYNrYtBWw==", + "requires": { + "is-obj": "1.0.1" + } + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "deepmerge": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-3.3.0.tgz", + "integrity": "sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==" + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "requires": { + "clone": "1.0.4" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "requires": { + "object-keys": "1.1.1" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "1.0.2", + "isobject": "3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + } + } + } + }, + "degenerator": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-2.2.0.tgz", + "integrity": "sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg==", + "requires": { + "ast-types": "0.13.4", + "escodegen": "1.14.3", + "esprima": "4.0.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "denodeify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz", + "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=" + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "requires": { + "repeating": "^2.0.0" + } + }, + "detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true + }, + "detect-node": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz", + "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" + }, + "diff-sequences": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", + "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", + "dev": true + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "2.0.3" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + } + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "4.0.2" + } + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "0.1.1", + "safer-buffer": "2.1.2" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "requires": { + "iconv-lite": "0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "requires": { + "safer-buffer": "2.1.2" + } + } + } + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "1.4.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "envinfo": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.3.tgz", + "integrity": "sha512-46+j5QxbPWza0PB1i15nZx0xQ4I/EfQxg9J8Had3b408SV63nEtor2e+oiY63amTo9KTuh2a3XLObNwduxYwwA==" + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "0.2.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + } + } + }, + "errorhandler": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz", + "integrity": "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==", + "requires": { + "accepts": "1.3.7", + "escape-html": "1.0.3" + } + }, + "es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "es-to-primitive": "1.2.1", + "function-bind": "1.1.1", + "get-intrinsic": "1.0.2", + "has": "1.0.3", + "has-symbols": "1.0.1", + "is-callable": "1.2.2", + "is-negative-zero": "2.0.1", + "is-regex": "1.1.1", + "object-inspect": "1.9.0", + "object-keys": "1.1.1", + "object.assign": "4.1.2", + "string.prototype.trimend": "1.0.3", + "string.prototype.trimstart": "1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "1.2.2", + "is-date-object": "1.0.2", + "is-symbol": "1.0.3" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "requires": { + "esprima": "4.0.1", + "estraverse": "4.3.0", + "esutils": "2.0.3", + "optionator": "0.8.3", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, + "eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "ajv": "6.12.6", + "chalk": "2.4.2", + "cross-spawn": "6.0.5", + "debug": "4.3.1", + "doctrine": "3.0.0", + "eslint-scope": "5.1.1", + "eslint-utils": "1.4.3", + "eslint-visitor-keys": "1.3.0", + "espree": "6.2.1", + "esquery": "1.3.1", + "esutils": "2.0.3", + "file-entry-cache": "5.0.1", + "functional-red-black-tree": "1.0.1", + "glob-parent": "5.1.1", + "globals": "12.4.0", + "ignore": "4.0.6", + "import-fresh": "3.3.0", + "imurmurhash": "0.1.4", + "inquirer": "7.3.3", + "is-glob": "4.0.1", + "js-yaml": "3.14.1", + "json-stable-stringify-without-jsonify": "1.0.1", + "levn": "0.3.0", + "lodash": "4.17.20", + "minimatch": "3.0.4", + "mkdirp": "0.5.5", + "natural-compare": "1.4.0", + "optionator": "0.8.3", + "progress": "2.0.3", + "regexpp": "2.0.1", + "semver": "6.3.0", + "strip-ansi": "5.2.0", + "strip-json-comments": "3.1.1", + "table": "5.4.6", + "text-table": "0.2.0", + "v8-compile-cache": "2.2.0" + }, + "dependencies": { + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "3.1.0" + } + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "2.0.3" + } + }, + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "requires": { + "eslint-visitor-keys": "1.3.0" + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "0.8.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "1.0.1", + "resolve-from": "4.0.0" + } + }, + "inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "requires": { + "ansi-escapes": "4.3.1", + "chalk": "4.1.0", + "cli-cursor": "3.1.0", + "cli-width": "3.0.0", + "external-editor": "3.1.0", + "figures": "3.2.0", + "lodash": "4.17.20", + "mute-stream": "0.0.8", + "run-async": "2.4.1", + "rxjs": "6.6.3", + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "through": "2.3.8" + }, + "dependencies": { + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "5.0.0" + } + } + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "2.1.0" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "5.1.2", + "signal-exit": "3.0.3" + } + }, + "rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "requires": { + "tslib": "1.14.1" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } + } + }, + "eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "dev": true, + "requires": { + "get-stdin": "6.0.0" + } + }, + "eslint-plugin-eslint-comments": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", + "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "ignore": "5.1.8" + } + }, + "eslint-plugin-flowtype": { + "version": "2.50.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz", + "integrity": "sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ==", + "dev": true, + "requires": { + "lodash": "4.17.20" + } + }, + "eslint-plugin-jest": { + "version": "22.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.4.1.tgz", + "integrity": "sha512-gcLfn6P2PrFAVx3AobaOzlIEevpAEf9chTpFZz7bYfc7pz8XRv7vuKTIE4hxPKZSha6XWKKplDQ0x9Pq8xX2mg==", + "dev": true + }, + "eslint-plugin-prettier": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz", + "integrity": "sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA==", + "dev": true, + "requires": { + "prettier-linter-helpers": "1.0.0" + } + }, + "eslint-plugin-react": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.19.0.tgz", + "integrity": "sha512-SPT8j72CGuAP+JFbT0sJHOB80TX/pu44gQ4vXH/cq+hQTiY2PuZ6IHkqXJV6x1b28GDdo1lbInjKUrrdUf0LOQ==", + "dev": true, + "requires": { + "array-includes": "3.1.2", + "doctrine": "2.1.0", + "has": "1.0.3", + "jsx-ast-utils": "2.4.1", + "object.entries": "1.1.3", + "object.fromentries": "2.0.3", + "object.values": "1.1.2", + "prop-types": "15.7.2", + "resolve": "1.19.0", + "semver": "6.3.0", + "string.prototype.matchall": "4.0.3", + "xregexp": "4.4.1" + } + }, + "eslint-plugin-react-hooks": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-3.0.0.tgz", + "integrity": "sha512-EjxTHxjLKIBWFgDJdhKKzLh5q+vjTFrqNZX36uIxWS4OfyXe5DawqPj3U5qeJ1ngLwatjzQnmR0Lz0J0YH3kxw==", + "dev": true + }, + "eslint-plugin-react-native": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-3.8.1.tgz", + "integrity": "sha512-6Z4s4nvgFRdda/1s1+uu4a6EMZwEjjJ9Bk/1yBImv0fd9U2CsGu2cUakAtV83cZKhizbWhSouXoaK4JtlScdFg==", + "dev": true, + "requires": { + "eslint-plugin-react-native-globals": "0.1.2" + } + }, + "eslint-plugin-react-native-globals": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz", + "integrity": "sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==", + "dev": true + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "4.3.0", + "estraverse": "4.3.0" + } + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "1.3.0" + } + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + }, + "espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "requires": { + "acorn": "7.4.1", + "acorn-jsx": "5.3.1", + "eslint-visitor-keys": "1.3.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "requires": { + "estraverse": "5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" + }, + "eventemitter2": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-1.0.5.tgz", + "integrity": "sha1-+YNhBRexc3wLncZDvsqTiTwE3xg=" + }, + "eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, + "exec-sh": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==" + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "requires": { + "cross-spawn": "6.0.5", + "get-stream": "4.1.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.3", + "strip-eof": "1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "expect": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz", + "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-styles": "4.3.0", + "jest-get-type": "25.2.6", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-regex-util": "25.2.6" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, + "external-editor": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "requires": { + "chardet": "0.4.2", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "1.0.2" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "requires": { + "ansi-gray": "0.1.1", + "color-support": "1.1.3", + "parse-node-version": "1.0.1", + "time-stamp": "1.1.0" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + }, + "fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "requires": { + "bser": "2.1.1" + } + }, + "fbjs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-1.0.0.tgz", + "integrity": "sha512-MUgcMEJaFhCaF1QtWGnmq9ZDRAzECTCRAF7O6UZIlAlkTs1SasiX9aP0Iw7wfD2mJ7wDTNfg2w7u5fSCwJk1OA==", + "requires": { + "core-js": "2.6.12", + "fbjs-css-vars": "1.0.2", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.23" + }, + "dependencies": { + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + } + } + }, + "fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "fbjs-scripts": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fbjs-scripts/-/fbjs-scripts-1.2.0.tgz", + "integrity": "sha512-5krZ8T0Bf8uky0abPoCLrfa7Orxd8UH4Qq8hRUF2RZYNMu+FmEOrBc7Ib3YVONmxTXTlLAvyrrdrVmksDb2OqQ==", + "requires": { + "@babel/core": "7.12.10", + "ansi-colors": "1.1.0", + "babel-preset-fbjs": "3.3.0", + "core-js": "2.6.12", + "cross-spawn": "5.1.0", + "fancy-log": "1.3.3", + "object-assign": "4.1.1", + "plugin-error": "0.1.2", + "semver": "5.7.1", + "through2": "2.0.5" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "requires": { + "lru-cache": "4.1.5", + "shebang-command": "1.2.0", + "which": "1.3.1" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "2.0.1" + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.3", + "statuses": "1.5.0", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "requires": { + "commondir": "1.0.1", + "make-dir": "2.1.0", + "pkg-dir": "3.0.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "5.0.0", + "path-exists": "4.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "2.0.2", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "7.1.6" + } + } + } + }, + "flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "follow-redirects": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "requires": { + "for-in": "1.0.2" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.8", + "mime-types": "2.1.28" + } + }, + "formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "4.2.4", + "jsonfile": "4.0.0", + "universalify": "0.1.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true, + "requires": { + "bindings": "1.5.0", + "nan": "2.14.2" + } + }, + "ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "requires": { + "readable-stream": "1.1.14", + "xregexp": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.4", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=" + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==" + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-intrinsic": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz", + "integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==", + "requires": { + "function-bind": "1.1.1", + "has": "1.0.3", + "has-symbols": "1.0.1" + } + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "3.0.0" + } + }, + "get-uri": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz", + "integrity": "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==", + "requires": { + "@tootallnate/once": "1.1.2", + "data-uri-to-buffer": "3.0.1", + "debug": "4.3.1", + "file-uri-to-path": "2.0.0", + "fs-extra": "8.1.0", + "ftp": "0.3.10" + }, + "dependencies": { + "file-uri-to-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz", + "integrity": "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==" + } + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.4", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "requires": { + "is-glob": "4.0.1" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true, + "optional": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "requires": { + "ajv": "6.12.6", + "har-schema": "2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "hermes-engine": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.5.1.tgz", + "integrity": "sha512-hLwqh8dejHayjlpvZY40e1aDCDvyP98cWx/L5DhAjSJLH8g4z9Tp08D7y4+3vErDsncPOdf1bxm+zUWpx0/Fxg==" + }, + "hermes-profile-transformer": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz", + "integrity": "sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==", + "requires": { + "source-map": "0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + } + } + }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "16.13.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "1.0.5" + } + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "htmlparser2-without-node-native": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2-without-node-native/-/htmlparser2-without-node-native-3.9.2.tgz", + "integrity": "sha1-s+0FDYd9D/NGWWnjOYd7f59mMfY=", + "requires": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "eventemitter2": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + }, + "http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "requires": { + "depd": "1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": "1.5.0", + "toidentifier": "1.0.0" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "requires": { + "@tootallnate/once": "1.1.2", + "agent-base": "6.0.2", + "debug": "4.3.1" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.16.1" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "requires": { + "agent-base": "6.0.2", + "debug": "4.3.1" + } + }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": "2.1.2" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "image-size": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.6.3.tgz", + "integrity": "sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==" + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "requires": { + "caller-path": "2.0.0", + "resolve-from": "3.0.0" + } + }, + "import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, + "requires": { + "pkg-dir": "4.2.0", + "resolve-cwd": "3.0.0" + }, + "dependencies": { + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "4.1.0" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "requires": { + "ansi-escapes": "3.2.0", + "chalk": "2.4.2", + "cli-cursor": "2.1.0", + "cli-width": "2.2.1", + "external-editor": "2.2.0", + "figures": "2.0.0", + "lodash": "4.17.20", + "mute-stream": "0.0.7", + "run-async": "2.4.1", + "rx-lite": "4.0.8", + "rx-lite-aggregates": "4.0.8", + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "internal-slot": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", + "integrity": "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==", + "dev": true, + "requires": { + "es-abstract": "1.17.7", + "has": "1.0.3", + "side-channel": "1.0.4" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "1.2.1", + "function-bind": "1.1.1", + "has": "1.0.3", + "has-symbols": "1.0.1", + "is-callable": "1.2.2", + "is-regex": "1.1.1", + "object-inspect": "1.9.0", + "object-keys": "1.1.1", + "object.assign": "4.1.2", + "string.prototype.trimend": "1.0.3", + "string.prototype.trimstart": "1.0.3" + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "requires": { + "loose-envify": "1.4.0" + } + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-callable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", + "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", + "dev": true + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "requires": { + "ci-info": "2.0.0" + } + }, + "is-core-module": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "requires": { + "has": "1.0.3" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" + }, + "is-docker": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", + "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", + "dev": true, + "optional": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "3.0.1" + } + }, + "is-regex": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "dev": true, + "requires": { + "has-symbols": "1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "requires": { + "has-symbols": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "3.5.0" + }, + "dependencies": { + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.13", + "is-stream": "1.1.0" + } + } + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "requires": { + "@babel/core": "7.12.10", + "@istanbuljs/schema": "0.1.2", + "istanbul-lib-coverage": "3.0.0", + "semver": "6.3.0" + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "3.0.0", + "make-dir": "3.1.0", + "supports-color": "7.2.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", + "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "dev": true, + "requires": { + "debug": "4.3.1", + "istanbul-lib-coverage": "3.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dev": true, + "requires": { + "html-escaper": "2.0.2", + "istanbul-lib-report": "3.0.0" + } + }, + "jest": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest/-/jest-25.5.4.tgz", + "integrity": "sha512-hHFJROBTqZahnO+X+PMtT6G2/ztqAZJveGqz//FnWWHurizkD05PQGzRZOhF3XP6z7SJmL+5tCfW8qV06JypwQ==", + "dev": true, + "requires": { + "@jest/core": "25.5.4", + "import-local": "3.0.2", + "jest-cli": "25.5.4" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-cli": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.5.4.tgz", + "integrity": "sha512-rG8uJkIiOUpnREh1768/N3n27Cm+xPFkSNFO91tgg+8o2rXeVLStz+vkXkGr4UtzH6t1SNbjwoiswd7p4AhHTw==", + "dev": true, + "requires": { + "@jest/core": "25.5.4", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "import-local": "3.0.2", + "is-ci": "2.0.0", + "jest-config": "25.5.4", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "prompts": "2.4.0", + "realpath-native": "2.0.0", + "yargs": "15.4.1" + } + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-changed-files": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.5.0.tgz", + "integrity": "sha512-EOw9QEqapsDT7mKF162m8HFzRPbmP8qJQny6ldVOdOVBz3ACgPm/1nAn5fPQ/NDaYhX/AHkrGwwkCncpAVSXcw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "execa": "3.4.0", + "throat": "5.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "3.1.1", + "shebang-command": "2.0.0", + "which": "2.0.2" + } + }, + "execa": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", + "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", + "dev": true, + "requires": { + "cross-spawn": "7.0.3", + "get-stream": "5.2.0", + "human-signals": "1.1.1", + "is-stream": "2.0.0", + "merge-stream": "2.0.0", + "npm-run-path": "4.0.1", + "onetime": "5.1.2", + "p-finally": "2.0.1", + "signal-exit": "3.0.3", + "strip-final-newline": "2.0.0" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "3.0.0" + } + }, + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "3.1.1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "2.1.0" + } + }, + "p-finally": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", + "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "jest-config": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.5.4.tgz", + "integrity": "sha512-SZwR91SwcdK6bz7Gco8qL7YY2sx8tFJYzvg216DLihTWf+LKY/DoJXpM9nTzYakSyfblbqeU48p/p7Jzy05Atg==", + "dev": true, + "requires": { + "@babel/core": "7.12.10", + "@jest/test-sequencer": "25.5.4", + "@jest/types": "25.5.0", + "babel-jest": "25.5.1", + "chalk": "3.0.0", + "deepmerge": "4.2.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "jest-environment-jsdom": "25.5.0", + "jest-environment-node": "25.5.0", + "jest-get-type": "25.2.6", + "jest-jasmine2": "25.5.4", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "micromatch": "4.0.2", + "pretty-format": "25.5.0", + "realpath-native": "2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-diff": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", + "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", + "dev": true, + "requires": { + "chalk": "3.0.0", + "diff-sequences": "25.2.6", + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "jest-docblock": { + "version": "25.3.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz", + "integrity": "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==", + "dev": true, + "requires": { + "detect-newline": "3.1.0" + } + }, + "jest-each": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.5.0.tgz", + "integrity": "sha512-QBogUxna3D8vtiItvn54xXde7+vuzqRrEeaw8r1s+1TG9eZLVJE5ZkKoSUlqFwRjnlaA4hyKGiu9OlkFIuKnjA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "jest-util": "25.5.0", + "pretty-format": "25.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "jest-environment-jsdom": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.5.0.tgz", + "integrity": "sha512-7Jr02ydaq4jaWMZLY+Skn8wL5nVIYpWvmeatOHL3tOcV3Zw8sjnPpx+ZdeBfc457p8jCR9J6YCc+Lga0oIy62A==", + "dev": true, + "requires": { + "@jest/environment": "25.5.0", + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "jsdom": "15.2.1" + }, + "dependencies": { + "@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-environment-node": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.5.0.tgz", + "integrity": "sha512-iuxK6rQR2En9EID+2k+IBs5fCFd919gVVK5BeND82fYeLWPqvRcFNPKu9+gxTwfB5XwBGBvZ0HFQa+cHtIoslA==", + "dev": true, + "requires": { + "@jest/environment": "25.5.0", + "@jest/fake-timers": "25.5.0", + "@jest/types": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "semver": "6.3.0" + }, + "dependencies": { + "@jest/fake-timers": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz", + "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-util": "25.5.0", + "lolex": "5.1.2" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-get-type": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==" + }, + "jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "requires": { + "@jest/types": "24.9.0", + "anymatch": "2.0.0", + "fb-watchman": "2.0.1", + "fsevents": "1.2.13", + "graceful-fs": "4.2.4", + "invariant": "2.2.4", + "jest-serializer": "24.9.0", + "jest-util": "24.9.0", + "jest-worker": "24.9.0", + "micromatch": "3.1.10", + "sane": "4.1.0", + "walker": "1.0.7" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + } + } + }, + "jest-jasmine2": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.5.4.tgz", + "integrity": "sha512-9acbWEfbmS8UpdcfqnDO+uBUgKa/9hcRh983IHdM+pKmJPL77G0sWAAK0V0kr5LK3a8cSBfkFSoncXwQlRZfkQ==", + "dev": true, + "requires": { + "@babel/traverse": "7.12.12", + "@jest/environment": "25.5.0", + "@jest/source-map": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "co": "4.6.0", + "expect": "25.5.0", + "is-generator-fn": "2.1.0", + "jest-each": "25.5.0", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-runtime": "25.5.4", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "pretty-format": "25.5.0", + "throat": "5.0.0" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/source-map": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz", + "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==", + "dev": true, + "requires": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-leak-detector": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.5.0.tgz", + "integrity": "sha512-rV7JdLsanS8OkdDpZtgBf61L5xZ4NnYLBq72r6ldxahJWWczZjXawRsoHyXzibM5ed7C2QRjpp6ypgwGdKyoVA==", + "dev": true, + "requires": { + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + } + } + }, + "jest-matcher-utils": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.5.0.tgz", + "integrity": "sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==", + "dev": true, + "requires": { + "chalk": "3.0.0", + "jest-diff": "25.5.0", + "jest-get-type": "25.2.6", + "pretty-format": "25.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/test-result": "24.9.0", + "@jest/types": "24.9.0", + "@types/stack-utils": "1.0.1", + "chalk": "2.4.2", + "micromatch": "3.1.10", + "slash": "2.0.0", + "stack-utils": "1.0.4" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + } + } + }, + "jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "requires": { + "@jest/types": "24.9.0" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + } + } + }, + "jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true + }, + "jest-regex-util": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz", + "integrity": "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==", + "dev": true + }, + "jest-resolve": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.5.1.tgz", + "integrity": "sha512-Hc09hYch5aWdtejsUZhA+vSzcotf7fajSlPA6EZPE1RmPBAD39XtJhvHWFStid58iit4IPDLI/Da4cwdDmAHiQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "browser-resolve": "1.11.3", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "jest-pnp-resolver": "1.2.2", + "read-pkg-up": "7.0.1", + "realpath-native": "2.0.0", + "resolve": "1.19.0", + "slash": "3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.5.4.tgz", + "integrity": "sha512-yFmbPd+DAQjJQg88HveObcGBA32nqNZ02fjYmtL16t1xw9bAttSn5UGRRhzMHIQbsep7znWvAvnD4kDqOFM0Uw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-snapshot": "25.5.1" + } + }, + "jest-runner": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.5.4.tgz", + "integrity": "sha512-V/2R7fKZo6blP8E9BL9vJ8aTU4TH2beuqGNxHbxi6t14XzTb+x90B3FRgdvuHm41GY8ch4xxvf0ATH4hdpjTqg==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/environment": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "exit": "0.1.2", + "graceful-fs": "4.2.4", + "jest-config": "25.5.4", + "jest-docblock": "25.3.0", + "jest-haste-map": "25.5.1", + "jest-jasmine2": "25.5.4", + "jest-leak-detector": "25.5.0", + "jest-message-util": "25.5.0", + "jest-resolve": "25.5.1", + "jest-runtime": "25.5.4", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "source-map-support": "0.5.19", + "throat": "5.0.0" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "jest-runtime": { + "version": "25.5.4", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.5.4.tgz", + "integrity": "sha512-RWTt8LeWh3GvjYtASH2eezkc8AehVoWKK20udV6n3/gC87wlTbE1kIA+opCvNWyyPeBs6ptYsc6nyHUb1GlUVQ==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/environment": "25.5.0", + "@jest/globals": "25.5.2", + "@jest/source-map": "25.5.0", + "@jest/test-result": "25.5.0", + "@jest/transform": "25.5.1", + "@jest/types": "25.5.0", + "@types/yargs": "15.0.12", + "chalk": "3.0.0", + "collect-v8-coverage": "1.0.1", + "exit": "0.1.2", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "jest-config": "25.5.4", + "jest-haste-map": "25.5.1", + "jest-message-util": "25.5.0", + "jest-mock": "25.5.0", + "jest-regex-util": "25.2.6", + "jest-resolve": "25.5.1", + "jest-snapshot": "25.5.1", + "jest-util": "25.5.0", + "jest-validate": "25.5.0", + "realpath-native": "2.0.0", + "slash": "3.0.0", + "strip-bom": "4.0.0", + "yargs": "15.4.1" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/source-map": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz", + "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==", + "dev": true, + "requires": { + "callsites": "3.1.0", + "graceful-fs": "4.2.4", + "source-map": "0.6.1" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "3.0.0", + "picomatch": "2.2.2" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-haste-map": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz", + "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "@types/graceful-fs": "4.1.4", + "anymatch": "3.1.1", + "fb-watchman": "2.0.1", + "fsevents": "2.3.1", + "graceful-fs": "4.2.4", + "jest-serializer": "25.5.0", + "jest-util": "25.5.0", + "jest-worker": "25.5.0", + "micromatch": "4.0.2", + "sane": "4.1.0", + "walker": "1.0.7", + "which": "2.0.2" + } + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-mock": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz", + "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0" + } + }, + "jest-serializer": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz", + "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==", + "dev": true, + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "jest-validate": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz", + "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "camelcase": "5.3.1", + "chalk": "3.0.0", + "jest-get-type": "25.2.6", + "leven": "3.1.0", + "pretty-format": "25.5.0" + } + }, + "jest-worker": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", + "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", + "dev": true, + "requires": { + "merge-stream": "2.0.0", + "supports-color": "7.2.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + } + } + }, + "jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==" + }, + "jest-snapshot": { + "version": "25.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.5.1.tgz", + "integrity": "sha512-C02JE1TUe64p2v1auUJ2ze5vcuv32tkv9PyhEb318e8XOKF7MOyXdJ7kdjbvrp3ChPLU2usI7Rjxs97Dj5P0uQ==", + "dev": true, + "requires": { + "@babel/types": "7.12.12", + "@jest/types": "25.5.0", + "@types/prettier": "1.19.1", + "chalk": "3.0.0", + "expect": "25.5.0", + "graceful-fs": "4.2.4", + "jest-diff": "25.5.0", + "jest-get-type": "25.2.6", + "jest-matcher-utils": "25.5.0", + "jest-message-util": "25.5.0", + "jest-resolve": "25.5.1", + "make-dir": "3.1.0", + "natural-compare": "1.4.0", + "pretty-format": "25.5.0", + "semver": "6.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-get-type": { + "version": "25.2.6", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", + "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + } + } + }, + "jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "requires": { + "@jest/console": "24.9.0", + "@jest/fake-timers": "24.9.0", + "@jest/source-map": "24.9.0", + "@jest/test-result": "24.9.0", + "@jest/types": "24.9.0", + "callsites": "3.1.0", + "chalk": "2.4.2", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "mkdirp": "0.5.5", + "slash": "2.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "requires": { + "@jest/types": "24.9.0", + "camelcase": "5.3.1", + "chalk": "2.4.2", + "jest-get-type": "24.9.0", + "leven": "3.1.0", + "pretty-format": "24.9.0" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + } + } + }, + "jest-watcher": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.5.0.tgz", + "integrity": "sha512-XrSfJnVASEl+5+bb51V0Q7WQx65dTSk7NL4yDdVjPnRNpM0hG+ncFmDYJo9O8jaSRcAitVbuVawyXCRoxGrT5Q==", + "dev": true, + "requires": { + "@jest/test-result": "25.5.0", + "@jest/types": "25.5.0", + "ansi-escapes": "4.3.1", + "chalk": "3.0.0", + "jest-util": "25.5.0", + "string-length": "3.1.0" + }, + "dependencies": { + "@jest/console": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz", + "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "jest-message-util": "25.5.0", + "jest-util": "25.5.0", + "slash": "3.0.0" + } + }, + "@jest/test-result": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz", + "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==", + "dev": true, + "requires": { + "@jest/console": "25.5.0", + "@jest/types": "25.5.0", + "@types/istanbul-lib-coverage": "2.0.3", + "collect-v8-coverage": "1.0.1" + } + }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "0.11.0" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "7.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-message-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz", + "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@jest/types": "25.5.0", + "@types/stack-utils": "1.0.1", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "micromatch": "4.0.2", + "slash": "3.0.0", + "stack-utils": "1.0.4" + } + }, + "jest-util": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz", + "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==", + "dev": true, + "requires": { + "@jest/types": "25.5.0", + "chalk": "3.0.0", + "graceful-fs": "4.2.4", + "is-ci": "2.0.0", + "make-dir": "3.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "6.3.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "3.0.2", + "picomatch": "2.2.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "7.0.0" + } + }, + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "requires": { + "merge-stream": "2.0.0", + "supports-color": "6.1.0" + }, + "dependencies": { + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "requires": { + "has-flag": "3.0.0" + } + } + } + }, + "jetifier": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/jetifier/-/jetifier-1.6.6.tgz", + "integrity": "sha512-JNAkmPeB/GS2tCRqUzRPsTOHpGDah7xP18vGJfIjZC+W2sxEHbxgJxetIjIqhjQ3yYbYNEELkM/spKLtwoOSUQ==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "requires": { + "argparse": "1.0.10", + "esprima": "4.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsc-android": { + "version": "245459.0.0", + "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-245459.0.0.tgz", + "integrity": "sha512-wkjURqwaB1daNkDi2OYYbsLnIdC/lUM2nPXQKRs5pqEU9chDg435bjvo+LSaHotDENygHQDHe+ntUkkw2gwMtg==" + }, + "jsdom": { + "version": "15.2.1", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz", + "integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==", + "dev": true, + "requires": { + "abab": "2.0.5", + "acorn": "7.4.1", + "acorn-globals": "4.3.4", + "array-equal": "1.0.0", + "cssom": "0.4.4", + "cssstyle": "2.3.0", + "data-urls": "1.1.0", + "domexception": "1.0.1", + "escodegen": "1.14.3", + "html-encoding-sniffer": "1.0.2", + "nwsapi": "2.2.0", + "parse5": "5.1.0", + "pn": "1.1.0", + "request": "2.88.2", + "request-promise-native": "1.0.9", + "saxes": "3.1.11", + "symbol-tree": "3.2.4", + "tough-cookie": "3.0.1", + "w3c-hr-time": "1.0.2", + "w3c-xmlserializer": "1.1.2", + "webidl-conversions": "4.0.2", + "whatwg-encoding": "1.0.5", + "whatwg-mimetype": "2.3.0", + "whatwg-url": "7.1.0", + "ws": "7.4.2", + "xml-name-validator": "3.0.0" + }, + "dependencies": { + "ws": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==", + "dev": true + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "requires": { + "minimist": "1.2.5" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "4.2.4" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jsx-ast-utils": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz", + "integrity": "sha512-z1xSldJ6imESSzOjd3NNkieVJKRlKYSOtMG8SFyCj2FIrvSaSuli/WjpBkEzCBoR9bYYYFgqJw61Xhu7Lcgk+w==", + "dev": true, + "requires": { + "array-includes": "3.1.2", + "object.assign": "4.1.2" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + }, + "klaw": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", + "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", + "requires": { + "graceful-fs": "4.2.4" + } + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==" + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "1.1.2", + "type-check": "0.3.2" + } + }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "4.1.0" + } + }, + "lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" + }, + "lodash.compact": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash.compact/-/lodash.compact-3.0.1.tgz", + "integrity": "sha1-VAzjg3dFl1gHRx4WtKK6IeclbKU=" + }, + "lodash.every": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.every/-/lodash.every-4.6.0.tgz", + "integrity": "sha1-64mYS+vENkJ5uzrvu9HKGb+mxqc=" + }, + "lodash.frompairs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.frompairs/-/lodash.frompairs-4.0.1.tgz", + "integrity": "sha1-vE5SB/onV8E25XNhTpZkUGsrG9I=" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + }, + "lodash.omit": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", + "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "requires": { + "lodash._reinterpolate": "3.0.0", + "lodash.templatesettings": "4.2.0" + } + }, + "lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "requires": { + "lodash._reinterpolate": "3.0.0" + } + }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + }, + "lodash.values": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz", + "integrity": "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=" + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "requires": { + "chalk": "2.4.2" + } + }, + "logkitty": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz", + "integrity": "sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==", + "requires": { + "ansi-fragments": "0.2.1", + "dayjs": "1.10.3", + "yargs": "15.4.1" + } + }, + "lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "requires": { + "@sinonjs/commons": "1.8.2" + } + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "4.0.0" + } + }, + "lottie-ios": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/lottie-ios/-/lottie-ios-3.2.3.tgz", + "integrity": "sha512-mubYMN6+1HXa8z3EJKBvNBkl4UoVM4McjESeB2PgvRMSngmJtC5yUMRdhbbrIAn5Liu3hFGao/14s5hQIgtkRQ==" + }, + "lottie-react-native": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/lottie-react-native/-/lottie-react-native-4.0.3.tgz", + "integrity": "sha512-cmMt/HEwTTzF3PQcE4VVl7jpBYC9cZD9pGz7ZLxYV13e5jWBvMCFKsQYHlYAo69fjXZ2YCum1AqEuez6kSbmCA==", + "requires": { + "invariant": "^2.2.2", + "prop-types": "^15.5.10", + "react-native-safe-modules": "^1.0.3" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "4.0.1", + "semver": "5.7.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "requires": { + "tmpl": "1.0.4" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "1.0.1" + } + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "requires": { + "readable-stream": "2.3.7" + } + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "metro": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro/-/metro-0.58.0.tgz", + "integrity": "sha512-yi/REXX+/s4r7RjzXht+E+qE6nzvFIrEXO5Q61h+70Q7RODMU8EnlpXx04JYk7DevHuMhFaX+NWhCtRINzR4zA==", + "requires": { + "@babel/code-frame": "7.12.11", + "@babel/core": "7.12.10", + "@babel/generator": "7.12.11", + "@babel/parser": "7.12.11", + "@babel/plugin-external-helpers": "7.12.1", + "@babel/template": "7.12.7", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "absolute-path": "0.0.0", + "async": "2.6.3", + "babel-preset-fbjs": "3.3.0", + "buffer-crc32": "0.2.13", + "chalk": "2.4.2", + "ci-info": "2.0.0", + "concat-stream": "1.6.2", + "connect": "3.7.0", + "debug": "2.6.9", + "denodeify": "1.2.1", + "eventemitter3": "3.1.2", + "fbjs": "1.0.0", + "fs-extra": "1.0.0", + "graceful-fs": "4.2.4", + "image-size": "0.6.3", + "invariant": "2.2.4", + "jest-haste-map": "24.9.0", + "jest-worker": "24.9.0", + "json-stable-stringify": "1.0.1", + "lodash.throttle": "4.1.1", + "merge-stream": "1.0.1", + "metro-babel-register": "0.58.0", + "metro-babel-transformer": "0.58.0", + "metro-cache": "0.58.0", + "metro-config": "0.58.0", + "metro-core": "0.58.0", + "metro-inspector-proxy": "0.58.0", + "metro-minify-uglify": "0.58.0", + "metro-react-native-babel-preset": "0.58.0", + "metro-resolver": "0.58.0", + "metro-source-map": "0.58.0", + "metro-symbolicate": "0.58.0", + "mime-types": "2.1.11", + "mkdirp": "0.5.5", + "node-fetch": "2.6.1", + "nullthrows": "1.1.1", + "resolve": "1.19.0", + "rimraf": "2.7.1", + "serialize-error": "2.1.0", + "source-map": "0.5.7", + "strip-ansi": "4.0.0", + "temp": "0.8.3", + "throat": "4.1.0", + "wordwrap": "1.0.0", + "write-file-atomic": "1.3.4", + "ws": "1.1.5", + "xpipe": "1.0.5", + "yargs": "14.2.3" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "3.1.0", + "strip-ansi": "5.2.0", + "wrap-ansi": "5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "3.0.0" + } + }, + "fs-extra": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", + "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", + "requires": { + "graceful-fs": "4.2.4", + "jsonfile": "2.4.0", + "klaw": "1.3.1" + } + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "requires": { + "graceful-fs": "4.2.4" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + } + }, + "metro-babel-register": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.58.0.tgz", + "integrity": "sha512-P5+G3ufhSYL6cA3a7xkbSJzzFBvtivj/PhWvGXFXnuFssDlMAX1CTktff+0gpka5Cd6B6QLt0UAMWulUAAE4Eg==", + "requires": { + "@babel/core": "7.12.10", + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-transform-async-to-generator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/register": "7.12.10", + "core-js": "2.6.12", + "escape-string-regexp": "1.0.5" + } + }, + "metro-react-native-babel-preset": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.58.0.tgz", + "integrity": "sha512-MRriNW+fF6jxABsgPphocUY6mIhmCm8idcrQZ58fT3Iti2vCdtkaK32TyCGUNUptzhUe2/cbE57j4aC+eaodAA==", + "requires": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "requires": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "mime-db": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz", + "integrity": "sha1-oxtAcK2uon1zLqMzdApk0OyaZlk=" + }, + "mime-types": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz", + "integrity": "sha1-wlnEcb2oCKhdbNGTtDCl+uRHOzw=", + "requires": { + "mime-db": "1.23.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "2.3.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "3.2.1", + "string-width": "3.1.0", + "strip-ansi": "5.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "yargs": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", + "requires": { + "cliui": "5.0.0", + "decamelize": "1.2.0", + "find-up": "3.0.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "3.1.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "15.0.1" + } + }, + "yargs-parser": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", + "requires": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + } + } + } + }, + "metro-babel-register": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.59.0.tgz", + "integrity": "sha512-JtWc29erdsXO/V3loenXKw+aHUXgj7lt0QPaZKPpctLLy8kcEpI/8pfXXgVK9weXICCpCnYtYncIosAyzh0xjg==", + "requires": { + "@babel/core": "7.12.10", + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/register": "7.12.10", + "escape-string-regexp": "1.0.5" + } + }, + "metro-babel-transformer": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.58.0.tgz", + "integrity": "sha512-yBX3BkRhw2TCNPhe+pmLSgsAEA3huMvnX08UwjFqSXXI1aiqzRQobn92uKd1U5MM1Vx8EtXVomlJb95ZHNAv6A==", + "requires": { + "@babel/core": "7.12.10", + "metro-source-map": "0.58.0" + }, + "dependencies": { + "metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "requires": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + } + } + }, + "metro-cache": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.58.0.tgz", + "integrity": "sha512-jjW9zCTKxhgKcVkyQ6LHyna9Zdf4TK/45vvT1fPyyTk1RY82ZYjU1qs+84ycKEd08Ka4YcK9xcUew9SIDJYI8Q==", + "requires": { + "jest-serializer": "24.9.0", + "metro-core": "0.58.0", + "mkdirp": "0.5.5", + "rimraf": "2.7.1" + } + }, + "metro-config": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.58.0.tgz", + "integrity": "sha512-4vgBliXwL56vjUlYplvGMVSNrJJpkHuLcD+O20trV3FvPxKg4ZsvuOcNSxqDSMU26FCtIEJ15ojcuCbRL7KY0w==", + "requires": { + "cosmiconfig": "5.2.1", + "jest-validate": "24.9.0", + "metro": "0.58.0", + "metro-cache": "0.58.0", + "metro-core": "0.58.0", + "pretty-format": "24.9.0" + } + }, + "metro-core": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.58.0.tgz", + "integrity": "sha512-RzXUjGFmCLOyzUqcKDvr91AldGtIOxnzNZrWUIiG8uC3kerVLo0mQp4YH3+XVm6fMNiLMg6iER7HLqD+MbpUjQ==", + "requires": { + "jest-haste-map": "24.9.0", + "lodash.throttle": "4.1.1", + "metro-resolver": "0.58.0", + "wordwrap": "1.0.0" + } + }, + "metro-inspector-proxy": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-inspector-proxy/-/metro-inspector-proxy-0.58.0.tgz", + "integrity": "sha512-oFqTyNTJdCdvcw1Ha6SKE7ITbSaoTbO4xpYownIoJR+WZ0ZfxbWpp225JkHuBJm9UcBAnG9c0CME924m3uBbaw==", + "requires": { + "connect": "3.7.0", + "debug": "2.6.9", + "rxjs": "5.5.12", + "ws": "1.1.5", + "yargs": "14.2.3" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "3.1.0", + "strip-ansi": "5.2.0", + "wrap-ansi": "5.1.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "2.3.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "3.2.1", + "string-width": "3.1.0", + "strip-ansi": "5.2.0" + } + }, + "yargs": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", + "requires": { + "cliui": "5.0.0", + "decamelize": "1.2.0", + "find-up": "3.0.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "3.1.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "15.0.1" + } + }, + "yargs-parser": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", + "requires": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + } + } + } + }, + "metro-minify-uglify": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-minify-uglify/-/metro-minify-uglify-0.58.0.tgz", + "integrity": "sha512-vRHsA7bCi7eCn3LXLm20EfY2NoWDyYOnmWaq/N8LB0OxL2L5DXRqMYAQK+prWGJ5S1yvVnDuuNVP+peQ9851TA==", + "requires": { + "uglify-es": "3.3.9" + } + }, + "metro-react-native-babel-preset": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.59.0.tgz", + "integrity": "sha512-BoO6ncPfceIDReIH8pQ5tQptcGo5yRWQXJGVXfANbiKLq4tfgdZB1C1e2rMUJ6iypmeJU9dzl+EhPmIFKtgREg==", + "requires": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-syntax-nullish-coalescing-operator": "7.8.3", + "@babel/plugin-syntax-optional-chaining": "7.8.3", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-self": "7.12.1", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "metro-react-native-babel-transformer": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.59.0.tgz", + "integrity": "sha512-1O3wrnMq4NcPQ1asEcl9lRDn/t+F1Oef6S9WaYVIKEhg9m/EQRGVrrTVP+R6B5Eeaj3+zNKbzM8Dx/NWy1hUbQ==", + "requires": { + "@babel/core": "7.12.10", + "babel-preset-fbjs": "3.3.0", + "metro-babel-transformer": "0.59.0", + "metro-react-native-babel-preset": "0.59.0", + "metro-source-map": "0.59.0" + }, + "dependencies": { + "metro-babel-transformer": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.59.0.tgz", + "integrity": "sha512-fdZJl8rs54GVFXokxRdD7ZrQ1TJjxWzOi/xSP25VR3E8tbm3nBZqS+/ylu643qSr/IueABR+jrlqAyACwGEf6w==", + "requires": { + "@babel/core": "7.12.10", + "metro-source-map": "0.59.0" + } + } + } + }, + "metro-resolver": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.58.0.tgz", + "integrity": "sha512-XFbAKvCHN2iWqKeiRARzEXn69eTDdJVJC7lu16S4dPQJ+Dy82dZBr5Es12iN+NmbJuFgrAuIHbpWrdnA9tOf6Q==", + "requires": { + "absolute-path": "0.0.0" + } + }, + "metro-source-map": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.59.0.tgz", + "integrity": "sha512-0w5CmCM+ybSqXIjqU4RiK40t4bvANL6lafabQ2GP2XD3vSwkLY+StWzCtsb4mPuyi9R/SgoLBel+ZOXHXAH0eQ==", + "requires": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.59.0", + "ob1": "0.59.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + }, + "dependencies": { + "metro-symbolicate": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.59.0.tgz", + "integrity": "sha512-asLaF2A7rndrToGFIknL13aiohwPJ95RKHf0NM3hP/nipiLDoMzXT6ZnQvBqDxkUKyP+51AI75DMtb+Wcyw4Bw==", + "requires": { + "invariant": "2.2.4", + "metro-source-map": "0.59.0", + "source-map": "0.5.7", + "through2": "2.0.5", + "vlq": "1.0.1" + } + }, + "ob1": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.59.0.tgz", + "integrity": "sha512-opXMTxyWJ9m68ZglCxwo0OPRESIC/iGmKFPXEXzMZqsVIrgoRXOHmoMDkQzz4y3irVjbyPJRAh5pI9fd0MJTFQ==" + } + } + }, + "metro-symbolicate": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.58.0.tgz", + "integrity": "sha512-uIVxUQC1E26qOMj13dKROhwAa2FmZk5eR0NcBqej/aXmQhpr8LjJg2sondkoLKUp827Tf/Fm9+pS4icb5XiqCw==", + "requires": { + "invariant": "2.2.4", + "metro-source-map": "0.58.0", + "source-map": "0.5.7", + "through2": "2.0.5", + "vlq": "1.0.1" + }, + "dependencies": { + "metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "requires": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "extglob": "2.0.4", + "fragment-cache": "0.2.1", + "kind-of": "6.0.3", + "nanomatch": "1.2.13", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==" + }, + "mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "requires": { + "mime-db": "1.45.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.11" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "requires": { + "for-in": "1.0.2", + "is-extendable": "1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "requires": { + "for-in": "0.1.8", + "is-extendable": "0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" + } + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "requires": { + "minimist": "1.2.5" + } + }, + "mobx": { + "version": "5.15.7", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-5.15.7.tgz", + "integrity": "sha512-wyM3FghTkhmC+hQjyPGGFdpehrcX1KOXsDuERhfK2YbJemkUhEB+6wzEN639T21onxlfYBmriA1PFnvxTUhcKw==" + }, + "mobx-react": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-6.3.1.tgz", + "integrity": "sha512-IOxdJGnRSNSJrL2uGpWO5w9JH5q5HoxEqwOF4gye1gmZYdjoYkkMzSGMDnRCUpN/BNzZcFoMdHXrjvkwO7KgaQ==", + "requires": { + "mobx-react-lite": "2.2.2" + } + }, + "mobx-react-lite": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-2.2.2.tgz", + "integrity": "sha512-2SlXALHIkyUPDsV4VTKVR9DW7K3Ksh1aaIv3NrNJygTbhXe2A9GrcKHZ2ovIiOp/BXilOcTYemfHHZubP431dg==" + }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, + "nan": { + "version": "2.14.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", + "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", + "optional": true + }, + "nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==" + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "fragment-cache": "0.2.1", + "is-windows": "1.0.2", + "kind-of": "6.0.3", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "nocache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz", + "integrity": "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==" + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" + }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=" + }, + "node-notifier": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz", + "integrity": "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==", + "dev": true, + "optional": true, + "requires": { + "growly": "1.3.0", + "is-wsl": "2.2.0", + "semver": "6.3.0", + "shellwords": "0.1.1", + "which": "1.3.1" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "optional": true, + "requires": { + "is-docker": "2.1.1" + } + } + } + }, + "node-stream-zip": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.12.0.tgz", + "integrity": "sha512-HZ3XehqShTFj9gHauRJ3Bri9eiCTOII7/crtXzURtT14NdnOFs9Ia5E82W7z3izVBNx760tqwddxrBJVG52Y1Q==" + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "2.8.8", + "resolve": "1.19.0", + "semver": "5.7.1", + "validate-npm-package-license": "3.0.4" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "2.0.1" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "nullthrows": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", + "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==" + }, + "nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "ob1": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.58.0.tgz", + "integrity": "sha512-uZP44cbowAfHafP1k4skpWItk5iHCoRevMfrnUvYCfyNNPPJd3rfDCyj0exklWi2gDXvjlj2ObsfiqP/bs/J7Q==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "3.0.1" + } + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "has-symbols": "1.0.1", + "object-keys": "1.1.1" + } + }, + "object.entries": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", + "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + } + }, + "object.fromentries": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", + "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "3.0.1" + } + }, + "object.values": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", + "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has": "1.0.3" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "requires": { + "mimic-fn": "1.2.0" + } + }, + "open": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", + "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", + "requires": { + "is-wsl": "1.1.0" + } + }, + "opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==" + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "requires": { + "deep-is": "0.1.3", + "fast-levenshtein": "2.0.6", + "levn": "0.3.0", + "prelude-ls": "1.1.2", + "type-check": "0.3.2", + "word-wrap": "1.2.3" + } + }, + "options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" + }, + "ora": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz", + "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", + "requires": { + "chalk": "2.4.2", + "cli-cursor": "2.1.0", + "cli-spinners": "2.5.0", + "log-symbols": "2.2.0", + "strip-ansi": "5.2.0", + "wcwidth": "1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "p-each-series": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", + "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "2.2.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "2.3.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "pac-proxy-agent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz", + "integrity": "sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q==", + "requires": { + "@tootallnate/once": "1.1.2", + "agent-base": "6.0.2", + "debug": "4.3.1", + "get-uri": "3.0.2", + "http-proxy-agent": "4.0.1", + "https-proxy-agent": "5.0.0", + "pac-resolver": "4.2.0", + "raw-body": "2.4.1", + "socks-proxy-agent": "5.0.0" + } + }, + "pac-resolver": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-4.2.0.tgz", + "integrity": "sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ==", + "requires": { + "degenerator": "2.2.0", + "ip": "1.1.5", + "netmask": "2.0.2" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "3.1.0" + }, + "dependencies": { + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + } + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "1.3.2", + "json-parse-better-errors": "1.0.2" + } + }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==" + }, + "parse5": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", + "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "requires": { + "node-modules-regexp": "1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "3.0.0", + "path-exists": "3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "2.3.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + } + } + }, + "plist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.1.tgz", + "integrity": "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==", + "requires": { + "base64-js": "1.5.1", + "xmlbuilder": "9.0.7", + "xmldom": "0.1.31" + } + }, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "requires": { + "ansi-cyan": "0.1.1", + "ansi-red": "0.1.1", + "arr-diff": "1.1.0", + "arr-union": "2.1.0", + "extend-shallow": "1.1.4" + }, + "dependencies": { + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "requires": { + "arr-flatten": "1.1.0", + "array-slice": "0.2.3" + } + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=" + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "requires": { + "kind-of": "1.1.0" + } + }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=" + } + } + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "1.2.0" + } + }, + "pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "requires": { + "@jest/types": "24.9.0", + "ansi-regex": "4.1.0", + "ansi-styles": "3.2.1", + "react-is": "16.13.1" + }, + "dependencies": { + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "@types/istanbul-reports": "1.1.2", + "@types/yargs": "13.0.11" + } + }, + "@types/yargs": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz", + "integrity": "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==", + "requires": { + "@types/yargs-parser": "20.2.0" + } + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", + "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==", + "requires": { + "asap": "2.0.6" + } + }, + "prompts": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", + "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", + "dev": true, + "requires": { + "kleur": "3.0.3", + "sisteransi": "1.0.5" + } + }, + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "requires": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "react-is": "16.13.1" + } + }, + "proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-4.0.1.tgz", + "integrity": "sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA==", + "requires": { + "agent-base": "6.0.2", + "debug": "4.3.1", + "http-proxy-agent": "4.0.1", + "https-proxy-agent": "5.0.0", + "lru-cache": "5.1.1", + "pac-proxy-agent": "4.1.0", + "proxy-from-env": "1.1.0", + "socks-proxy-agent": "5.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "3.1.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "1.4.4", + "once": "1.4.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" + }, + "query-string": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.8.tgz", + "integrity": "sha512-jxJzQI2edQPE/NPUOusNjO/ZOGqr1o2OBa/3M00fU76FsLXDVbJDv/p7ng5OdQyorKrkRz1oqfwmbe5MAMePQg==", + "requires": { + "decode-uri-component": "0.2.0", + "split-on-first": "1.1.0", + "strict-uri-encode": "2.0.0" + } + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + } + } + }, + "react": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz", + "integrity": "sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==", + "requires": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "prop-types": "15.7.2" + } + }, + "react-devtools-core": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.10.1.tgz", + "integrity": "sha512-sXbBjGAWcf9HAblTP/zMtFhGHqxAfIR+GPxONZsSGN9FHnF4635dx1s2LdQWG9rJ+Ehr3nWg+BUAB6P78my5PA==", + "requires": { + "shell-quote": "1.6.1", + "ws": "7.4.2" + }, + "dependencies": { + "ws": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==" + } + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "react-native": { + "version": "0.63.4", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.63.4.tgz", + "integrity": "sha512-I4kM8kYO2mWEYUFITMcpRulcy4/jd+j9T6PbIzR0FuMcz/xwd+JwHoLPa1HmCesvR1RDOw9o4D+OFLwuXXfmGw==", + "requires": { + "@babel/runtime": "7.12.5", + "@react-native-community/cli": "4.13.1", + "@react-native-community/cli-platform-android": "4.13.0", + "@react-native-community/cli-platform-ios": "4.13.0", + "abort-controller": "3.0.0", + "anser": "1.4.10", + "base64-js": "1.5.1", + "event-target-shim": "5.0.1", + "fbjs": "1.0.0", + "fbjs-scripts": "1.2.0", + "hermes-engine": "0.5.1", + "invariant": "2.2.4", + "jsc-android": "245459.0.0", + "metro-babel-register": "0.59.0", + "metro-react-native-babel-transformer": "0.59.0", + "metro-source-map": "0.59.0", + "nullthrows": "1.1.1", + "pretty-format": "24.9.0", + "promise": "8.1.0", + "prop-types": "15.7.2", + "react-devtools-core": "4.10.1", + "react-refresh": "0.4.3", + "regenerator-runtime": "0.13.7", + "scheduler": "0.19.1", + "stacktrace-parser": "0.1.10", + "use-subscription": "1.5.1", + "whatwg-fetch": "3.5.0" + }, + "dependencies": { + "@react-native-community/cli": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-4.13.1.tgz", + "integrity": "sha512-+/TeRVToADpQPSprsPkwi9KY8x64YcuJpjzMBVISwWP+aWzsIDuWJmyMXTADlCg2EBMJqJR7bn1W/IkfzVRCWA==", + "requires": { + "@hapi/joi": "15.1.1", + "@react-native-community/cli-debugger-ui": "4.13.1", + "@react-native-community/cli-hermes": "4.13.0", + "@react-native-community/cli-server-api": "4.13.1", + "@react-native-community/cli-tools": "4.13.0", + "@react-native-community/cli-types": "4.10.1", + "chalk": "3.0.0", + "command-exists": "1.2.9", + "commander": "2.20.3", + "cosmiconfig": "5.2.1", + "deepmerge": "3.3.0", + "envinfo": "7.7.3", + "execa": "1.0.0", + "find-up": "4.1.0", + "fs-extra": "8.1.0", + "glob": "7.1.6", + "graceful-fs": "4.2.4", + "inquirer": "3.3.0", + "leven": "3.1.0", + "lodash": "4.17.20", + "metro": "0.58.0", + "metro-config": "0.58.0", + "metro-core": "0.58.0", + "metro-react-native-babel-transformer": "0.58.0", + "metro-resolver": "0.58.0", + "minimist": "1.2.5", + "mkdirp": "0.5.5", + "node-stream-zip": "1.12.0", + "ora": "3.4.0", + "pretty-format": "25.5.0", + "semver": "6.3.0", + "serve-static": "1.14.1", + "strip-ansi": "5.2.0", + "sudo-prompt": "9.2.1", + "wcwidth": "1.0.1" + }, + "dependencies": { + "metro-react-native-babel-transformer": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.58.0.tgz", + "integrity": "sha512-3A73+cRq1eUPQ8g+hPNGgMUMCGmtQjwqHfoG1DwinAoJ/kr4WOXWWbGZo0xHJNBe/zdHGl0uHcDCp2knPglTdQ==", + "requires": { + "@babel/core": "7.12.10", + "babel-preset-fbjs": "3.3.0", + "metro-babel-transformer": "0.58.0", + "metro-react-native-babel-preset": "0.58.0", + "metro-source-map": "0.58.0" + } + }, + "metro-source-map": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz", + "integrity": "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==", + "requires": { + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "invariant": "2.2.4", + "metro-symbolicate": "0.58.0", + "ob1": "0.58.0", + "source-map": "0.5.7", + "vlq": "1.0.1" + } + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "requires": { + "@jest/types": "25.5.0", + "ansi-regex": "5.0.0", + "ansi-styles": "4.3.0", + "react-is": "16.13.1" + } + } + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "metro-react-native-babel-preset": { + "version": "0.58.0", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.58.0.tgz", + "integrity": "sha512-MRriNW+fF6jxABsgPphocUY6mIhmCm8idcrQZ58fT3Iti2vCdtkaK32TyCGUNUptzhUe2/cbE57j4aC+eaodAA==", + "requires": { + "@babel/plugin-proposal-class-properties": "7.12.1", + "@babel/plugin-proposal-export-default-from": "7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-proposal-optional-catch-binding": "7.12.1", + "@babel/plugin-proposal-optional-chaining": "7.12.7", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-export-default-from": "7.12.1", + "@babel/plugin-syntax-flow": "7.12.1", + "@babel/plugin-transform-arrow-functions": "7.12.1", + "@babel/plugin-transform-block-scoping": "7.12.12", + "@babel/plugin-transform-classes": "7.12.1", + "@babel/plugin-transform-computed-properties": "7.12.1", + "@babel/plugin-transform-destructuring": "7.12.1", + "@babel/plugin-transform-exponentiation-operator": "7.12.1", + "@babel/plugin-transform-flow-strip-types": "7.12.10", + "@babel/plugin-transform-for-of": "7.12.1", + "@babel/plugin-transform-function-name": "7.12.1", + "@babel/plugin-transform-literals": "7.12.1", + "@babel/plugin-transform-modules-commonjs": "7.12.1", + "@babel/plugin-transform-object-assign": "7.12.1", + "@babel/plugin-transform-parameters": "7.12.1", + "@babel/plugin-transform-react-display-name": "7.12.1", + "@babel/plugin-transform-react-jsx": "7.12.12", + "@babel/plugin-transform-react-jsx-source": "7.12.1", + "@babel/plugin-transform-regenerator": "7.12.1", + "@babel/plugin-transform-runtime": "7.12.10", + "@babel/plugin-transform-shorthand-properties": "7.12.1", + "@babel/plugin-transform-spread": "7.12.1", + "@babel/plugin-transform-sticky-regex": "7.12.7", + "@babel/plugin-transform-template-literals": "7.12.1", + "@babel/plugin-transform-typescript": "7.12.1", + "@babel/plugin-transform-unicode-regex": "7.12.1", + "@babel/template": "7.12.7", + "react-refresh": "0.4.3" + } + }, + "regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + } + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "react-native-animatable": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz", + "integrity": "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-native-app-intro-slider": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/react-native-app-intro-slider/-/react-native-app-intro-slider-4.0.4.tgz", + "integrity": "sha512-Zkjaol6X3BbZkHUpVDj2LjdidpS6rCgKi0fx80xgGKa0pHxBRd4swWTv2bHnnvu5k1/HXwYk0mY2TbK+2jHl5w==" + }, + "react-native-base64": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/react-native-base64/-/react-native-base64-0.1.1.tgz", + "integrity": "sha512-BqqhMoP9bXBVlgi/PS9heOYxtfGU3mr1QSKdvHbcH/fxwocXZsp40JlfqoRonJBeAZhc07zgUpPhpTV2Qje/7Q==" + }, + "react-native-circular-progress": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/react-native-circular-progress/-/react-native-circular-progress-1.3.7.tgz", + "integrity": "sha512-Lpe4Sb0Sdfdxopl6sEc3ooKnwlK5j1nKGq5lgi9UKDFKO6iBAszeH+PiUt6acGSRbKMH1av+9G9ni9r/6T0+nQ==", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-native-code-push": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/react-native-code-push/-/react-native-code-push-7.0.1.tgz", + "integrity": "sha512-9NOVuTnaoQO6ZDJKCmPvqIZ36GkXePc+EZE1NkQ+Qtsh2KbHvfBFBrUaw5NmXSzrFNUwwoSFoPpeQzW/yt8CAA==", + "requires": { + "code-push": "4.0.4", + "glob": "7.1.6", + "hoist-non-react-statics": "3.3.2", + "inquirer": "7.3.3", + "plist": "3.0.2", + "semver": "7.3.5", + "xcode": "3.0.1" + }, + "dependencies": { + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "requires": { + "type-fest": "0.21.3" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "4.3.0", + "supports-color": "7.2.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "requires": { + "restore-cursor": "3.1.0" + } + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "requires": { + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "requires": { + "ansi-escapes": "4.3.2", + "chalk": "4.1.1", + "cli-cursor": "3.1.0", + "cli-width": "3.0.0", + "external-editor": "3.1.0", + "figures": "3.2.0", + "lodash": "4.17.20", + "mute-stream": "0.0.8", + "run-async": "2.4.1", + "rxjs": "6.6.7", + "string-width": "4.2.0", + "strip-ansi": "6.0.0", + "through": "2.3.8" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "4.0.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "2.1.0" + } + }, + "plist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.2.tgz", + "integrity": "sha512-MSrkwZBdQ6YapHy87/8hDU8MnIcyxBKjeF+McXnr5A9MtffPewTs7G3hlpodT5TacyfIyFTaJEhh3GGcmasTgQ==", + "requires": { + "base64-js": "1.5.1", + "xmlbuilder": "9.0.7", + "xmldom": "0.5.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "requires": { + "onetime": "5.1.2", + "signal-exit": "3.0.3" + } + }, + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "requires": { + "tslib": "1.14.1" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "5.0.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "4.0.0" + } + }, + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" + }, + "uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" + }, + "xcode": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz", + "integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==", + "requires": { + "simple-plist": "1.1.1", + "uuid": "7.0.3" + } + }, + "xmldom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.5.0.tgz", + "integrity": "sha512-Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "react-native-confirmation-code-field": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/react-native-confirmation-code-field/-/react-native-confirmation-code-field-6.5.1.tgz", + "integrity": "sha512-CjNx0G6CnwNKasQBVQCNdHsZU+RCPMQENgns65inR7AoOS6wcTdA3cuiPtx7mZJ+Z44c+mj3568xrEZVpd9EUg==" + }, + "react-native-countdown-component": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/react-native-countdown-component/-/react-native-countdown-component-2.7.1.tgz", + "integrity": "sha512-H7D/YvMjY1hCJf9xFrNh5CsIwkcel/Suno2gYR6ulWwoa2xnUgmltFWoMyEIODsUy7lIK1KCPm+Zn26QajbRaw==", + "requires": { + "lodash": "4.17.20", + "prop-types": "15.7.2", + "sprintf-js": "1.1.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + } + } + }, + "react-native-credit-card-input": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/react-native-credit-card-input/-/react-native-credit-card-input-0.4.1.tgz", + "integrity": "sha1-5i3Rqb7qtnh+U3O6I7k4Mcv1894=", + "requires": { + "card-validator": "3.0.1", + "lodash.compact": "3.0.1", + "lodash.every": "4.6.0", + "lodash.pick": "4.4.0", + "lodash.values": "4.3.0", + "prop-types": "15.7.2", + "react-native-flip-card": "3.5.6" + } + }, + "react-native-date-picker": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/react-native-date-picker/-/react-native-date-picker-4.1.1.tgz", + "integrity": "sha512-2KzwFZoPNmGCgDFP8FrrtIBrKMEzTkLG5Zq68CbyUxG7aFPmeP7ik//lSB0gPwfO9TKQyKFVqTod5jTp0PTnbw==" + }, + "react-native-device-info": { + "version": "8.4.8", + "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-8.4.8.tgz", + "integrity": "sha512-92676ZWHZHsPM/EW1ulgb2MuVfjYfMWRTWMbLcrCsipkcMaZ9Traz5mpsnCS7KZpsOksnvUinzDIjsct2XGc6Q==", + "requires": {} + }, + "react-native-dialog": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/react-native-dialog/-/react-native-dialog-8.2.0.tgz", + "integrity": "sha512-Unfx9curgyCfC6iHJwKVYgztKtE51A6x2pqI4RRt9SXqcurgCb6U6qe93cOY1Y2S7iRxNpgJkF3AS0QahKbPGQ==", + "requires": {} + }, + "react-native-easy-guesture-responder": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/react-native-easy-guesture-responder/-/react-native-easy-guesture-responder-1.1.3.tgz", + "integrity": "sha512-/1yHMRcslMWQJc1iRNCSjJ32npPrY3Atme0lzKxmhYJg67E7Douowq2FalGEegdid8yeZVnPKk+BkyIGyx2dCw==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-easy-toast": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/react-native-easy-toast/-/react-native-easy-toast-1.2.0.tgz", + "integrity": "sha512-UtpxnRn1ME+035Uey4VR+9K0P4aVoTcWNOx5QkioWBe3LBKMPb/kZjrQ1LtvWzOyeGP4TeTUTtMX3IOPWv5MtA==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-easy-view-transformer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/react-native-easy-view-transformer/-/react-native-easy-view-transformer-1.2.0.tgz", + "integrity": "sha512-SawalQrXWQ6M5WOnWhTV8y3cyhRlrTgH2VC2+qPEk7GE10vLkH5/9ncM8lNjHKiXCgWrVk+0DI3pmEouDYd/GQ==", + "requires": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-scrolling": "1.0.3" + } + }, + "react-native-elements": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/react-native-elements/-/react-native-elements-3.4.2.tgz", + "integrity": "sha512-m0eAWOn7JuR1wNTNY0WHuaqst4LI/gFE4N5Bbyfsc4DiryWsMST7aAg5w/Gos4IexWIzhLKCIkPxthND1m/8Xg==", + "requires": { + "@types/react-native-vector-icons": "^6.4.6", + "color": "^3.1.2", + "deepmerge": "^4.2.2", + "hoist-non-react-statics": "^3.3.2", + "lodash.isequal": "^4.5.0", + "opencollective-postinstall": "^2.0.3", + "react-native-ratings": "8.0.4", + "react-native-size-matters": "^0.3.1" + }, + "dependencies": { + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" + } + } + }, + "react-native-fast-image": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.4.tgz", + "integrity": "sha512-LpzAdjUphihUpVEBn5fEv5AILe55rHav0YiZroPZ1rumKDhAl4u2cG01ku2Pb7l8sayjTsNu7FuURAlXUUDsow==" + }, + "react-native-flip-card": { + "version": "3.5.6", + "resolved": "https://registry.npmjs.org/react-native-flip-card/-/react-native-flip-card-3.5.6.tgz", + "integrity": "sha512-lqsjl4vF5DyHD7mjBJpyBoaLKVxalzoKfCosE63QF+TaCF9MKdJrxmGFQj/i64GDiMJqeS/5sNDcICUXtgFsVA==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-gallery-swiper": { + "version": "1.26.4", + "resolved": "https://registry.npmjs.org/react-native-gallery-swiper/-/react-native-gallery-swiper-1.26.4.tgz", + "integrity": "sha512-EK0c1g+ZIafEfZEtQyS774QitOk/fxZtuR1j+Eu+QjTtBu9NcbDvd7sc45KB+h0zmE+k1iAk5YPnSwYEXgVD+A==", + "requires": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-image-transformer": "1.5.1", + "react-native-page-list": "1.1.3" + } + }, + "react-native-general-statusbar": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-native-general-statusbar/-/react-native-general-statusbar-1.0.1.tgz", + "integrity": "sha512-k6DfgKG6ZxB0HwEGtZiCBQ9CM9C+tE4lRPjRJ6KYuGQwfplGL025KvZZqwqy4/hIMl1hacrrbcUPisaHc0H1Sg==", + "requires": { + "react-native-status-bar-height": "^2.4.0" + } + }, + "react-native-gesture-handler": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-1.10.3.tgz", + "integrity": "sha512-cBGMi1IEsIVMgoox4RvMx7V2r6bNKw0uR1Mu1o7NbuHS6BRSVLq0dP34l2ecnPlC+jpWd3le6Yg1nrdCjby2Mw==", + "requires": { + "@egjs/hammerjs": "^2.0.17", + "fbjs": "^3.0.0", + "hoist-non-react-statics": "^3.3.0", + "invariant": "^2.2.4", + "prop-types": "^15.7.2" + }, + "dependencies": { + "fbjs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.0.tgz", + "integrity": "sha512-dJd4PiDOFuhe7vk4F80Mba83Vr2QuK86FoxtgPmzBqEJahncp+13YCmfoa53KHCo6OnlXLG7eeMWPfB5CrpVKg==", + "requires": { + "cross-fetch": "3.0.6", + "fbjs-css-vars": "1.0.2", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.23" + } + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + } + } + }, + "react-native-htmlview": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/react-native-htmlview/-/react-native-htmlview-0.16.0.tgz", + "integrity": "sha512-yUrzXje+kKKLkWkccKNBeg3CbvrodA7f4+1d/XRrrg0SDFfIdj7NnjRdH+WXqGze6R501bfRZOPaZx/M5HTz3A==", + "requires": { + "entities": "^1.1.1", + "htmlparser2-without-node-native": "^3.9.2" + } + }, + "react-native-image-picker": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/react-native-image-picker/-/react-native-image-picker-3.2.1.tgz", + "integrity": "sha512-nOBZzYGmE5qZ8JBCvhWHQA+umYnQ8Jd3HGmgxBnmi0/82mU2nwCCnrzHsb29Q+DD7YasYr64rm8uWBBow8L5Fw==" + }, + "react-native-image-transformer": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/react-native-image-transformer/-/react-native-image-transformer-1.5.1.tgz", + "integrity": "sha512-CNwjnJxf4DUqQu+vWi/a+MA8jgw46ss80UKeSjoHwdzlt9JnGA6z4VABLURTFytN15LaemZomUEwZ81B9I8SuA==", + "requires": { + "prop-types": "15.7.2", + "react-native-easy-view-transformer": "1.2.0" + } + }, + "react-native-image-viewing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/react-native-image-viewing/-/react-native-image-viewing-0.2.0.tgz", + "integrity": "sha512-j2JXv86WRXGNme4LPsNCJ/2MgX+oVbmJ5ZLbGrYbKXcCPe9OshqlQI5L3SdbAxWu/F5pubcMaXp0zoYNaZVuzA==" + }, + "react-native-iphone-x-helper": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz", + "integrity": "sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==" + }, + "react-native-keyboard-aware-scroll-view": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/react-native-keyboard-aware-scroll-view/-/react-native-keyboard-aware-scroll-view-0.9.3.tgz", + "integrity": "sha512-EDyFp8wAJoKvi1T2pzoPRn8R0Inp3G+575jPAWEFTlXq26URMmk8760rzde2XLW+v/1+QwDyBg6d/5mz63/ZRA==", + "requires": { + "prop-types": "15.7.2", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "react-native-loading-spinner-overlay": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-native-loading-spinner-overlay/-/react-native-loading-spinner-overlay-2.0.0.tgz", + "integrity": "sha512-V38M+N1Wk9GlpbfrD6znsJA1K2+09b3naxq3UjDjqNTA3MOBfj4W87alKSI3P+4ZawczQASTv2fTzhEQ7Z+SVA==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-modal": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/react-native-modal/-/react-native-modal-12.0.2.tgz", + "integrity": "sha512-UAQIqB3sg9b4LaQT3GY0JUtnXDonCzGv61JFQl9DZIBPgxrqoKmGtUcjBERu+xnBYJGogFFMyswQ8vLgAvh17w==", + "requires": { + "prop-types": "^15.6.2", + "react-native-animatable": "1.3.3" + } + }, + "react-native-modal-datetime-picker": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/react-native-modal-datetime-picker/-/react-native-modal-datetime-picker-10.2.0.tgz", + "integrity": "sha512-eMQb3EPqHx47WrlLPTrXvmLZDwGwGH//WTWiQBUvJ+6ehDeuTjIn8/v/ANv8wxCCrt4NeHem8FQY3Z5fa4fRgQ==", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-native-modalize": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/react-native-modalize/-/react-native-modalize-2.0.8.tgz", + "integrity": "sha512-OKdpFVExEe4YM2uFHL/aStS9p0JaC6gBupjaW1QVHkGq22T2ASYwkhDvTnMS8BLOLWPx2fC3xEBzOcn2rh7EYw==", + "requires": {} + }, + "react-native-modals": { + "version": "0.22.3", + "resolved": "https://registry.npmjs.org/react-native-modals/-/react-native-modals-0.22.3.tgz", + "integrity": "sha512-tdjUfvgBhXFTt9p5kQcuAc1BS83H1yrD3p6hHL62LCnJl9rwUdiPlMX0Hmoeac5jw88FzmZv1M20wxgV8mh3ng==", + "requires": { + "babel-plugin-flow-react-proptypes": "^9.1.1", + "prop-types": "^15.6.0" + } + }, + "react-native-page-list": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/react-native-page-list/-/react-native-page-list-1.1.3.tgz", + "integrity": "sha512-LvbU9qxxLTujQV6/IKUbzKkosSDGBG6enhf3cb/5oSy0wG50TTloXKaeZY75/ssp/mX7qSZiU9aayV7Q+Q8iUQ==", + "requires": { + "prop-types": "15.7.2", + "react-native-easy-guesture-responder": "1.1.3", + "react-native-scrolling": "1.0.3" + } + }, + "react-native-paper": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/react-native-paper/-/react-native-paper-4.7.0.tgz", + "integrity": "sha512-RZwYZFFKry8LHHBYf5NENVaU2HaApERNcBLVzt4IE9AS0I+NkkLUyjKQYuLrgTF2EaZVEdeyUJwO7uQH/iNrnQ==", + "requires": { + "@callstack/react-theme-provider": "3.0.5", + "color": "3.1.3", + "react-native-iphone-x-helper": "1.3.1" + } + }, + "react-native-popup-menu": { + "version": "0.15.10", + "resolved": "https://registry.npmjs.org/react-native-popup-menu/-/react-native-popup-menu-0.15.10.tgz", + "integrity": "sha512-w7MaicsfpclK7g/omjMchNaXwhMi0apt/DC734AbHuJTWCfv5mF3JgL1UzRW19ncFMBRfQeYapPy/zUyJCGgEQ==" + }, + "react-native-progress": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/react-native-progress/-/react-native-progress-4.1.2.tgz", + "integrity": "sha512-sFHs6k6npWDOyvQoL2NeyOyHb+q1s8iOAOeyzoObN77zkxOAsgJt9FcSJLRq70Mw7qSGNJMFDqCgvYR1huYRwQ==", + "requires": { + "@react-native-community/art": "1.2.0", + "prop-types": "15.7.2" + } + }, + "react-native-ratings": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/react-native-ratings/-/react-native-ratings-8.0.4.tgz", + "integrity": "sha512-Xczu5lskIIRD6BEdz9A0jDRpEck/SFxRqiglkXi0u67yAtI1/pcJC76P4MukCbT8K4BPVl+42w83YqXBoBRl7A==", + "requires": { + "lodash": "^4.17.15" + } + }, + "react-native-reanimated": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-1.13.2.tgz", + "integrity": "sha512-O+WhgxSjOIzcVdAAvx+h2DY331Ek1knKlaq+jsNLpC1fhRy9XTdOObovgob/aF2ve9uJfPEawCx8381g/tUJZQ==", + "requires": { + "fbjs": "1.0.0" + } + }, + "react-native-safe-area-context": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-3.1.9.tgz", + "integrity": "sha512-wmcGbdyE/vBSL5IjDPReoJUEqxkZsywZw5gPwsVUV1NBpw5eTIdnL6Y0uNKHE25Z661moxPHQz6kwAkYQyorxA==" + }, + "react-native-safe-area-view": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-native-safe-area-view/-/react-native-safe-area-view-1.1.1.tgz", + "integrity": "sha512-bbLCtF+tqECyPWlgkWbIwx4vDPb0GEufx/ZGcSS4UljMcrpwluachDXoW9DBxhbMCc6k1V0ccqHWN7ntbRdERQ==", + "requires": { + "hoist-non-react-statics": "2.5.5" + }, + "dependencies": { + "hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + } + } + }, + "react-native-safe-modules": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/react-native-safe-modules/-/react-native-safe-modules-1.0.3.tgz", + "integrity": "sha512-DUxti4Z+AgJ/ZsO5U7p3uSCUBko8JT8GvFlCeOXk9bMd+4qjpoDvMYpfbixXKgL88M+HwmU/KI1YFN6gsQZyBA==", + "requires": { + "dedent": "^0.6.0" + } + }, + "react-native-screens": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.16.1.tgz", + "integrity": "sha512-WZ7m0sBDVaHbBnlHxwQnUlI6KNfQKHq+Unfw+VBuAlnSXvT+aw6Bb/K2bUlHzBgvrPjwY3Spc7ZERFuTwRLLwg==" + }, + "react-native-scrolling": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/react-native-scrolling/-/react-native-scrolling-1.0.3.tgz", + "integrity": "sha512-V8ORRnRA4sdOREJlDHxnPfM/7IK6rj/HZejgTaym1ACjKr9a3Pej4ZDOQA9qnBgNac8kMVhDup40HgJxYG//EA==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-size-matters": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/react-native-size-matters/-/react-native-size-matters-0.3.1.tgz", + "integrity": "sha512-mKOfBLIBFBcs9br1rlZDvxD5+mAl8Gfr5CounwJtxI6Z82rGrMO+Kgl9EIg3RMVf3G855a85YVqHJL2f5EDRlw==" + }, + "react-native-status-bar-height": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/react-native-status-bar-height/-/react-native-status-bar-height-2.6.0.tgz", + "integrity": "sha512-z3SGLF0mHT+OlJDq7B7h/jXPjWcdBT3V14Le5L2PjntjjWM3+EJzq2BcXDwV+v67KFNJic5pgA26cCmseYek6w==" + }, + "react-native-svg": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/react-native-svg/-/react-native-svg-12.1.1.tgz", + "integrity": "sha512-NIAJ8jCnXGCqGWXkkJ1GTzO4a3Md5at5sagYV8Vh4MXYnL4z5Rh428Wahjhh+LIjx40EE5xM5YtwyJBqOIba2Q==", + "requires": { + "css-select": "^2.1.0", + "css-tree": "^1.0.0-alpha.39" + } + }, + "react-native-swiper": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/react-native-swiper/-/react-native-swiper-1.6.0.tgz", + "integrity": "sha512-OnkTTZi+9uZUgy0uz1I9oYDhCU3z36lZn+LFsk9FXPRelxb/KeABzvPs3r3SrHWy1aA67KGtSFj0xNK2QD0NJQ==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-switch-pro": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/react-native-switch-pro/-/react-native-switch-pro-1.0.5.tgz", + "integrity": "sha512-ZkS7/mRsJsG7heE12Y8emv3jAS2waLhk+3fyqoxq8k/r4Q4Uzzm3Q3gSECOJd5COJZT1B48c+xXW80FOrQpYtQ==", + "requires": { + "prop-types": "15.7.2" + } + }, + "react-native-tab-view": { + "version": "2.15.2", + "resolved": "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-2.15.2.tgz", + "integrity": "sha512-2hxLkBnZtEKFDyfvNO5EUywhy3f/EiLOBO8SWqKj4BMBTO0QwnybaPE5MVF00Fhz+VA4+h/iI40Dkrrtq70dGg==" + }, + "react-native-textinput-effects": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/react-native-textinput-effects/-/react-native-textinput-effects-0.6.1.tgz", + "integrity": "sha512-L4VCspAvxr6ug1OperVFnairQmSKes4dzRiHRzIOIJ7sJPDEpV3uSuvE5RiuNad6/SaPTLgfsjZSw4t7FWltRg==", + "requires": { + "@types/react-native-vector-icons": "6.4.6" + } + }, + "react-native-uuid": { + "version": "1.4.9", + "resolved": "https://registry.npmjs.org/react-native-uuid/-/react-native-uuid-1.4.9.tgz", + "integrity": "sha1-pSZ0L4/d/mQUUAZVISyo0QnEAik=", + "requires": { + "randombytes": "2.1.0" + } + }, + "react-native-vector-icons": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-7.1.0.tgz", + "integrity": "sha512-V2a1zJ4i+kS8O4j183gIwX14St9AxxXabxwYpFBgRhvr2NDXyFcjHDEAgrOYYlt2W57e20aN1tBDU/I+wn9WtQ==", + "requires": { + "lodash.frompairs": "4.0.1", + "lodash.isequal": "4.5.0", + "lodash.isstring": "4.0.1", + "lodash.omit": "4.5.0", + "lodash.pick": "4.4.0", + "lodash.template": "4.5.0", + "prop-types": "15.7.2", + "yargs": "15.4.1" + } + }, + "react-refresh": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", + "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==" + }, + "react-test-renderer": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.13.1.tgz", + "integrity": "sha512-Sn2VRyOK2YJJldOqoh8Tn/lWQ+ZiKhyZTPtaO0Q6yNj+QDbmRkVFap6pZPy3YQk8DScRDfyqm/KxKYP9gCMRiQ==", + "dev": true, + "requires": { + "object-assign": "4.1.1", + "prop-types": "15.7.2", + "react-is": "16.13.1", + "scheduler": "0.19.1" + } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "2.4.0", + "normalize-package-data": "2.5.0", + "parse-json": "5.2.0", + "type-fest": "0.6.0" + }, + "dependencies": { + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "error-ex": "1.3.2", + "json-parse-even-better-errors": "2.3.1", + "lines-and-columns": "1.1.6" + } + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "4.1.0", + "read-pkg": "5.2.0", + "type-fest": "0.8.1" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.4", + "isarray": "1.0.0", + "process-nextick-args": "2.0.1", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "realpath-native": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-2.0.0.tgz", + "integrity": "sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==", + "dev": true + }, + "recursive-fs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/recursive-fs/-/recursive-fs-2.1.0.tgz", + "integrity": "sha512-oed3YruYsD52Mi16s/07eYblQOLi5dTtxpIJNdfCEJ7S5v8dDgVcycar0pRWf4IBuPMIkoctC8RTqGJzIKMNAQ==" + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "requires": { + "regenerate": "1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "requires": { + "@babel/runtime": "7.12.5" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "3.0.2", + "safe-regex": "1.1.0" + } + }, + "regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + } + }, + "regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true + }, + "regexpu-core": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", + "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", + "requires": { + "regenerate": "1.4.2", + "regenerate-unicode-properties": "8.2.0", + "regjsgen": "0.5.2", + "regjsparser": "0.6.6", + "unicode-match-property-ecmascript": "1.0.4", + "unicode-match-property-value-ecmascript": "1.2.0" + } + }, + "regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==" + }, + "regjsparser": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.6.tgz", + "integrity": "sha512-jjyuCp+IEMIm3N1H1LLTJW1EISEJV9+5oHdEyrt43Pg9cDSb6rrLZei2cVWpl0xTjmmlpec/lEQGYgM7xfpGCQ==", + "requires": { + "jsesc": "0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" + } + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "^1.0.0" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.11.0", + "caseless": "0.12.0", + "combined-stream": "1.0.8", + "extend": "3.0.2", + "forever-agent": "0.6.1", + "form-data": "2.3.3", + "har-validator": "5.1.5", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.28", + "oauth-sign": "0.9.0", + "performance-now": "2.1.0", + "qs": "6.5.2", + "safe-buffer": "5.1.2", + "tough-cookie": "2.5.0", + "tunnel-agent": "0.6.0", + "uuid": "3.4.0" + }, + "dependencies": { + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "1.8.0", + "punycode": "2.1.1" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + } + } + }, + "request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dev": true, + "requires": { + "lodash": "4.17.20" + } + }, + "request-promise-native": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "dev": true, + "requires": { + "request-promise-core": "1.1.4", + "stealthy-require": "1.1.1", + "tough-cookie": "2.5.0" + }, + "dependencies": { + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "1.8.0", + "punycode": "2.1.1" + } + } + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "requires": { + "is-core-module": "2.2.0", + "path-parse": "1.0.6" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "requires": { + "onetime": "2.0.1", + "signal-exit": "3.0.3" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "7.1.6" + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" + }, + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "requires": { + "rx-lite": "4.0.8" + } + }, + "rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "requires": { + "symbol-observable": "1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "0.1.15" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "requires": { + "@cnakazawa/watch": "1.0.4", + "anymatch": "2.0.0", + "capture-exit": "2.0.0", + "exec-sh": "0.3.4", + "execa": "1.0.0", + "fb-watchman": "2.0.1", + "micromatch": "3.1.10", + "minimist": "1.2.5", + "walker": "1.0.7" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "saxes": { + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", + "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", + "dev": true, + "requires": { + "xmlchars": "2.2.0" + } + }, + "scheduler": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "requires": { + "loose-envify": "1.4.0", + "object-assign": "4.1.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.7.3", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "2.3.0", + "range-parser": "1.2.1", + "statuses": "1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + } + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=" + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.3", + "send": "0.17.1" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "requires": { + "is-extendable": "0.1.1", + "kind-of": "5.1.0", + "mixin-object": "2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "requires": { + "array-filter": "0.0.1", + "array-map": "0.0.0", + "array-reduce": "0.0.0", + "jsonify": "0.0.0" + } + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true, + "optional": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "get-intrinsic": "1.0.2", + "object-inspect": "1.9.0" + } + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "simple-plist": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/simple-plist/-/simple-plist-1.1.1.tgz", + "integrity": "sha512-pKMCVKvZbZTsqYR6RKgLfBHkh2cV89GXcA/0CVPje3sOiNOnXA8+rp/ciAMZ7JRaUdLzlEM6JFfUn+fS6Nt3hg==", + "requires": { + "bplist-creator": "0.0.8", + "bplist-parser": "0.2.0", + "plist": "3.0.1" + } + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "requires": { + "is-arrayish": "0.3.2" + } + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "requires": { + "ansi-styles": "3.2.1", + "astral-regex": "1.0.0", + "is-fullwidth-code-point": "2.0.0" + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=" + }, + "smart-buffer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", + "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==" + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.3", + "use": "3.1.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "1.0.2" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.3" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.3" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "socks": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "requires": { + "ip": "1.1.5", + "smart-buffer": "4.1.0" + } + }, + "socks-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", + "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", + "requires": { + "agent-base": "6.0.2", + "debug": "4.3.1", + "socks": "2.6.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "requires": { + "atob": "2.1.2", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" + } + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "requires": { + "buffer-from": "1.1.1", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "3.0.1", + "spdx-license-ids": "3.0.7" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "2.3.0", + "spdx-license-ids": "3.0.7" + } + }, + "spdx-license-ids": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", + "dev": true + }, + "split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "3.0.2" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "0.2.4", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.2", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.2", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "safer-buffer": "2.1.2", + "tweetnacl": "0.14.5" + } + }, + "stack-utils": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.4.tgz", + "integrity": "sha512-IPDJfugEGbfizBwBZRZ3xpccMdRyP5lqsBWXGQWimVjua/ccLCeMOAVjlc1R7LxFjo5sEDhyNIXd8mo/AiDS9w==", + "requires": { + "escape-string-regexp": "2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + } + } + }, + "stacktrace-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", + "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "requires": { + "type-fest": "0.7.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "stream-buffers": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz", + "integrity": "sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ=" + }, + "strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "string-length": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz", + "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==", + "dev": true, + "requires": { + "astral-regex": "1.0.0", + "strip-ansi": "5.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "8.0.0", + "is-fullwidth-code-point": "3.0.0", + "strip-ansi": "6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "5.0.0" + } + } + } + }, + "string.prototype.matchall": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz", + "integrity": "sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3", + "es-abstract": "1.18.0-next.2", + "has-symbols": "1.0.1", + "internal-slot": "1.0.2", + "regexp.prototype.flags": "1.3.1", + "side-channel": "1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz", + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + } + }, + "string.prototype.trimstart": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz", + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==", + "dev": true, + "requires": { + "call-bind": "1.0.2", + "define-properties": "1.1.3" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "sudo-prompt": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", + "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==" + }, + "superagent": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz", + "integrity": "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==", + "requires": { + "component-emitter": "1.3.0", + "cookiejar": "2.1.2", + "debug": "4.3.1", + "fast-safe-stringify": "2.0.7", + "form-data": "3.0.1", + "formidable": "1.2.2", + "methods": "1.1.2", + "mime": "2.5.2", + "qs": "6.9.6", + "readable-stream": "3.6.0", + "semver": "7.3.5" + }, + "dependencies": { + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.8", + "mime-types": "2.1.28" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "4.0.0" + } + }, + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "2.0.4", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "superagent-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-2.1.0.tgz", + "integrity": "sha512-DnarpKN6Xn8e3pYlFV4Yvsj9yxLY4q5FIsUe5JvN7vjzP+YCfzXv03dTkZSD2yzrSadsNYHf0IgOUJwKjX457A==", + "requires": { + "debug": "3.2.7", + "proxy-agent": "4.0.1" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "2.1.2" + } + } + } + }, + "superstruct": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-0.6.2.tgz", + "integrity": "sha512-lvA97MFAJng3rfjcafT/zGTSWm6Tbpk++DP6It4Qg7oNaeM+2tdJMuVgGje21/bIpBEs6iQql1PJH6dKTjl4Ig==", + "requires": { + "clone-deep": "2.0.2", + "kind-of": "6.0.3" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "3.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", + "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", + "dev": true, + "requires": { + "has-flag": "4.0.0", + "supports-color": "7.2.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "4.0.0" + } + } + } + }, + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=" + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "requires": { + "ajv": "6.12.6", + "lodash": "4.17.20", + "slice-ansi": "2.1.0", + "string-width": "3.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "7.0.3", + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "5.2.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "4.1.0" + } + } + } + }, + "temp": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", + "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", + "requires": { + "os-tmpdir": "1.0.2", + "rimraf": "2.2.8" + }, + "dependencies": { + "rimraf": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", + "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=" + } + } + }, + "terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "requires": { + "ansi-escapes": "4.3.1", + "supports-hyperlinks": "2.1.0" + }, + "dependencies": { + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "0.11.0" + } + }, + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "0.1.2", + "glob": "7.1.6", + "minimatch": "3.0.4" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "requires": { + "readable-stream": "2.3.7", + "xtend": "4.0.2" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "requires": { + "os-tmpdir": "1.0.2" + } + }, + "tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "regex-not": "1.0.2", + "safe-regex": "1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "3.0.0", + "repeat-string": "1.6.1" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + }, + "tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dev": true, + "requires": { + "ip-regex": "2.1.0", + "psl": "1.8.0", + "punycode": "2.1.1" + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "2.1.1" + } + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "tsutils": { + "version": "3.19.1", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz", + "integrity": "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==", + "dev": true, + "requires": { + "tslib": "1.14.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "type-fest": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", + "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "1.0.0" + } + }, + "ua-parser-js": { + "version": "0.7.23", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.23.tgz", + "integrity": "sha512-m4hvMLxgGHXG3O3fQVAyyAQpZzDOvwnhOTjYz5Xmr7r/+LpkNy3vJXdVRWgd1TkAb7NGROZuSy96CrlNVjA7KA==" + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "2.13.0", + "source-map": "0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + }, + "underscore": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz", + "integrity": "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==" + }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==" + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "requires": { + "unicode-canonical-property-names-ecmascript": "1.0.4", + "unicode-property-aliases-ecmascript": "1.1.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==" + }, + "unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==" + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "requires": { + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "2.0.1" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "0.3.1", + "isobject": "3.0.1" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz", + "integrity": "sha512-HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==", + "requires": { + "querystringify": "2.2.0", + "requires-port": "1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "use-subscription": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", + "integrity": "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==", + "requires": { + "object-assign": "4.1.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "dev": true + }, + "v8-to-istanbul": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz", + "integrity": "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "2.0.3", + "convert-source-map": "1.7.0", + "source-map": "0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + } + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "3.1.1", + "spdx-expression-parse": "3.0.1" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, + "vlq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz", + "integrity": "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==" + }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "requires": { + "browser-process-hrtime": "1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz", + "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==", + "dev": true, + "requires": { + "domexception": "1.0.1", + "webidl-conversions": "4.0.2", + "xml-name-validator": "3.0.0" + } + }, + "walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "requires": { + "makeerror": "1.0.11" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "requires": { + "defaults": "1.0.3" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-fetch": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz", + "integrity": "sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A==" + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "requires": { + "lodash.sortby": "4.7.0", + "tr46": "1.0.1", + "webidl-conversions": "4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "requires": { + "ansi-styles": "4.3.0", + "string-width": "4.2.0", + "strip-ansi": "6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "5.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "0.5.5" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "requires": { + "graceful-fs": "4.2.4", + "imurmurhash": "0.1.4", + "slide": "1.1.6" + } + }, + "ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "requires": { + "options": "0.0.6", + "ultron": "1.0.2" + } + }, + "xcode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-2.1.0.tgz", + "integrity": "sha512-uCrmPITrqTEzhn0TtT57fJaNaw8YJs1aCzs+P/QqxsDbvPZSv7XMPPwXrKvHtD6pLjBM/NaVwraWJm8q83Y4iQ==", + "requires": { + "simple-plist": "1.1.1", + "uuid": "3.4.0" + }, + "dependencies": { + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "xmldoc": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.1.2.tgz", + "integrity": "sha512-ruPC/fyPNck2BD1dpz0AZZyrEwMOrWTO5lDdIXS91rs3wtm4j+T8Rp2o+zoOYkkAxJTZRPOSnOGei1egoRmKMQ==", + "requires": { + "sax": "1.2.4" + } + }, + "xmldom": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz", + "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==" + }, + "xpipe": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/xpipe/-/xpipe-1.0.5.tgz", + "integrity": "sha1-jdi/Rfw/f1Xw4FS4ePQ6YmFNr98=" + }, + "xregexp": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.4.1.tgz", + "integrity": "sha512-2u9HwfadaJaY9zHtRRnH6BY6CQVNQKkYm3oLtC9gJXXzfsbACg5X5e4EZZGVAH+YIfa+QA9lsFQTTe3HURF3ag==", + "dev": true, + "requires": { + "@babel/runtime-corejs3": "7.12.5" + } + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "requires": { + "cliui": "6.0.0", + "decamelize": "1.2.0", + "find-up": "4.1.0", + "get-caller-file": "2.0.5", + "require-directory": "2.1.1", + "require-main-filename": "2.0.0", + "set-blocking": "2.0.0", + "string-width": "4.2.0", + "which-module": "2.0.0", + "y18n": "4.0.1", + "yargs-parser": "18.1.3" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "requires": { + "camelcase": "5.3.1", + "decamelize": "1.2.0" + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "requires": { + "buffer-crc32": "0.2.13" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..340ef8f --- /dev/null +++ b/package.json @@ -0,0 +1,95 @@ +{ + "name": "puremall", + "version": "0.0.1", + "private": true, + "scripts": { + "android": "react-native run-android", + "ios": "react-native run-ios", + "start": "react-native start", + "test": "jest", + "lint": "eslint ." + }, + "dependencies": { + "@babel/plugin-proposal-decorators": "^7.12.1", + "@invertase/react-native-apple-authentication": "^2.1.2", + "@react-native-community/async-storage": "^1.12.1", + "@react-native-community/datetimepicker": "^3.5.2", + "@react-native-community/masked-view": "^0.1.10", + "@react-native-firebase/app": "^11.2.0", + "@react-native-firebase/messaging": "^11.2.0", + "@react-native-google-signin/google-signin": "^8.1.0", + "@react-navigation/bottom-tabs": "^5.11.2", + "@react-navigation/material-bottom-tabs": "^5.3.10", + "@react-navigation/native": "^5.8.10", + "@react-navigation/stack": "^5.12.8", + "axios": "^0.21.0", + "babel-plugin-transform-decorators-legacy": "^1.3.5", + "buffer": "^6.0.3", + "date-time-format-timezone": "^1.0.22", + "lodash": "^4.17.20", + "lottie-ios": "^3.2.3", + "lottie-react-native": "^4.0.3", + "mobx": "^5.15.4", + "mobx-react": "^6.2.2", + "moment": "^2.29.1", + "qs": "^6.9.4", + "query-string": "^6.13.7", + "react": "16.13.1", + "react-native": "0.63.4", + "react-native-app-intro-slider": "^4.0.4", + "react-native-base64": "^0.1.0", + "react-native-circular-progress": "^1.3.7", + "react-native-code-push": "^7.0.1", + "react-native-confirmation-code-field": "^6.5.1", + "react-native-countdown-component": "^2.7.1", + "react-native-credit-card-input": "^0.4.1", + "react-native-date-picker": "^4.1.1", + "react-native-device-info": "^8.4.8", + "react-native-dialog": "^8.2.0", + "react-native-easy-toast": "^1.2.0", + "react-native-elements": "^3.4.2", + "react-native-fast-image": "^8.3.4", + "react-native-gallery-swiper": "^1.26.4", + "react-native-general-statusbar": "^1.0.1", + "react-native-gesture-handler": "^1.10.3", + "react-native-htmlview": "^0.16.0", + "react-native-image-picker": "^3.2.1", + "react-native-image-viewing": "^0.2.0", + "react-native-keyboard-aware-scroll-view": "^0.9.3", + "react-native-loading-spinner-overlay": "^2.0.0", + "react-native-modal": "^12.0.2", + "react-native-modal-datetime-picker": "^10.2.0", + "react-native-modalize": "^2.0.8", + "react-native-modals": "^0.22.3", + "react-native-paper": "^4.4.1", + "react-native-popup-menu": "^0.15.9", + "react-native-progress": "^4.1.2", + "react-native-reanimated": "^1.13.2", + "react-native-safe-area-context": "^3.1.9", + "react-native-safe-area-view": "^1.1.1", + "react-native-screens": "^2.15.0", + "react-native-size-matters": "^0.3.1", + "react-native-status-bar-height": "^2.6.0", + "react-native-svg": "^12.1.1", + "react-native-swiper": "^1.6.0", + "react-native-switch-pro": "^1.0.5", + "react-native-tab-view": "^2.15.2", + "react-native-textinput-effects": "^0.6.1", + "react-native-uuid": "^1.4.9", + "react-native-vector-icons": "^7.1.0", + "underscore": "^1.12.0" + }, + "devDependencies": { + "@babel/core": "^7.8.4", + "@babel/runtime": "^7.8.4", + "@react-native-community/eslint-config": "^1.1.0", + "babel-jest": "^25.1.0", + "eslint": "^6.5.1", + "jest": "^25.1.0", + "metro-react-native-babel-preset": "^0.59.0", + "react-test-renderer": "16.13.1" + }, + "jest": { + "preset": "react-native" + } +} diff --git a/router.js b/router.js new file mode 100644 index 0000000..63ddced --- /dev/null +++ b/router.js @@ -0,0 +1,336 @@ +/** + * Sample React Native App + * https://github.com/facebook/react-native + * + * @format + * @flow strict-local + */ + + +import React, { useEffect } from 'react'; +import messaging from '@react-native-firebase/messaging'; +import { colors } from './src/assets/styles/colors-theme'; +import { + StyleSheet, + ScrollView, + View, + Text, + StatusBar, + TouchableOpacity, +} from 'react-native'; +import SafeAreaView from 'react-native-safe-area-view'; +import { Provider } from 'mobx-react'; +import Store from './src/stores/index'; +import { NavigationContainer, useFocusEffect } from '@react-navigation/native'; +import { createStackNavigator, HeaderBackButton } from '@react-navigation/stack'; +import { createMaterialBottomTabNavigator } from '@react-navigation/material-bottom-tabs'; +import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; +import { + Header, + LearnMoreLinks, + Colors, + DebugInstructions, + ReloadInstructions, +} from 'react-native/Libraries/NewAppScreen'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import SplashScreen from './src/pages/splash/splashScreen'; +import Main from './src/pages/main/main'; +import Search from './src/pages/search/search'; +import Favorite from './src/pages/favorite/favorite'; +import MyTabBar from './MyTabBar'; +import Order from './src/pages/order/order'; +import Profile from './src/pages/profile/profile'; +import Setting from './src/pages/profile/Setting'; +import AddName from './src/pages/profile/addName'; +import CreditCard from './src/pages/profile/creditCard'; +import AddressSetting from './src/pages/profile/addressSetting'; +import BuyHistory from './src/pages/buyHistory/buyHistory'; +import HistoryDetails from './src/pages/buyHistory/historyDetails'; +import ProductsDetails from './src/pages/productsDetails/productsDetails'; +import ShoppingCart from './src/pages/shoppingCart/shoppingCart'; +import Signin from './src/pages/signin/signin'; +import Signup from './src/pages/signup/signup'; +import News from './src/pages/news/news'; +import SignUpVerify from './src/pages/signup/signUpVerify'; +import ForgotPassword from './src/pages/signup/forgotPassword'; +import GroupDetails from './src/pages/group/groupDetails'; +import RedeemGifts from './src/pages/group/redeemGifts'; +import ManageMembers from './src/pages/group/manageMembers'; +import SalesRecord from './src/pages/group/salesRecord'; +import GroupList from './src/pages/group/groupList'; +import RedeemRecord from './src/pages/profile/redeemRecord' +import FullScreen from './src/pages/fullScreen/fullScreen' +import Notification from './src/pages/notificaation/notification' +import Tutorial from './src/pages/tutorial/tutorial' +Icon.loadFont(); + +const Stack = createStackNavigator(); +const BottomTab = createBottomTabNavigator(); + +import { inject, observer } from 'mobx-react'; + +@inject('appStore') +@observer +class Router extends React.Component { + + constructor(props) { + super(props); + this.store = props.appStore; + // this.handleFrontNotification = this.handleFrontNotification.bind(this); + } + + + handleFrontNotification() { + const unsubscribe = messaging().onMessage(async remoteMessage => { + console.log('A new FCM message arrived!', JSON.stringify(remoteMessage)); + }); + } + + async componentDidMount() { + this.messageListener = messaging().onMessage(async message => this.store.saveNotification(message)) + } + + componentWillUnmount() { + this.messageListener(); + } + BottomTabScreen = () => { + return ( + }> + + + + + + + + + ); + }; + render() { + return ( + + + {!this.store.splash ? ( + <> + + + ) : ( + <> + + + + + + + + + + + + + + + + + + + + + + + + + + + + )} + + + ); + } +} + +const styles = StyleSheet.create({ + scrollView: { + backgroundColor: Colors.lighter, + }, + engine: { + position: 'absolute', + right: 0, + }, + body: { + backgroundColor: Colors.white, + }, + sectionContainer: { + marginTop: 32, + paddingHorizontal: 24, + }, + sectionTitle: { + fontSize: 24, + fontWeight: '600', + color: Colors.black, + }, + sectionDescription: { + marginTop: 8, + fontSize: 18, + fontWeight: '400', + color: Colors.dark, + }, + highlight: { + fontWeight: '700', + }, + footer: { + color: Colors.dark, + fontSize: 12, + fontWeight: '600', + padding: 4, + paddingRight: 12, + textAlign: 'right', + }, +}); + +export default Router; diff --git a/src/assets/images/Alcoholic@2x.png b/src/assets/images/Alcoholic@2x.png new file mode 100755 index 0000000..ef6604c Binary files /dev/null and b/src/assets/images/Alcoholic@2x.png differ diff --git a/src/assets/images/Alcoholic@3x.png b/src/assets/images/Alcoholic@3x.png new file mode 100755 index 0000000..699a0fe Binary files /dev/null and b/src/assets/images/Alcoholic@3x.png differ diff --git a/src/assets/images/BFF1F6B722E6659C0BD539867C8BBAC8.txt b/src/assets/images/BFF1F6B722E6659C0BD539867C8BBAC8.txt new file mode 100644 index 0000000..1d415f4 --- /dev/null +++ b/src/assets/images/BFF1F6B722E6659C0BD539867C8BBAC8.txt @@ -0,0 +1 @@ +F81D0BFFE116347EE09EF84A5EF84824DB8EE17AD9FF86FB240BFDFEA61EF0FD comodoca.com 5fd97c3b2d29c \ No newline at end of file diff --git a/src/assets/images/Bitmap.png b/src/assets/images/Bitmap.png new file mode 100644 index 0000000..9e09a3b Binary files /dev/null and b/src/assets/images/Bitmap.png differ diff --git a/src/assets/images/Frozenmeat@2x.png b/src/assets/images/Frozenmeat@2x.png new file mode 100755 index 0000000..8500fc1 Binary files /dev/null and b/src/assets/images/Frozenmeat@2x.png differ diff --git a/src/assets/images/Frozenmeat@3x.png b/src/assets/images/Frozenmeat@3x.png new file mode 100755 index 0000000..c656a82 Binary files /dev/null and b/src/assets/images/Frozenmeat@3x.png differ diff --git a/src/assets/images/Icon_Magnifier@2x.png b/src/assets/images/Icon_Magnifier@2x.png new file mode 100644 index 0000000..4ee3e38 Binary files /dev/null and b/src/assets/images/Icon_Magnifier@2x.png differ diff --git a/src/assets/images/Icon_Magnifier@3x.png b/src/assets/images/Icon_Magnifier@3x.png new file mode 100644 index 0000000..87c7cab Binary files /dev/null and b/src/assets/images/Icon_Magnifier@3x.png differ diff --git a/src/assets/images/Icon_Magnifier_Small@2x.png b/src/assets/images/Icon_Magnifier_Small@2x.png new file mode 100644 index 0000000..60fcb01 Binary files /dev/null and b/src/assets/images/Icon_Magnifier_Small@2x.png differ diff --git a/src/assets/images/Icon_Magnifier_Small@3x.png b/src/assets/images/Icon_Magnifier_Small@3x.png new file mode 100644 index 0000000..a014a7c Binary files /dev/null and b/src/assets/images/Icon_Magnifier_Small@3x.png differ diff --git a/src/assets/images/comment@2x.png b/src/assets/images/comment@2x.png new file mode 100644 index 0000000..8627809 Binary files /dev/null and b/src/assets/images/comment@2x.png differ diff --git a/src/assets/images/comment@3x.png b/src/assets/images/comment@3x.png new file mode 100644 index 0000000..22b5805 Binary files /dev/null and b/src/assets/images/comment@3x.png differ diff --git a/src/assets/images/craft@2x.png b/src/assets/images/craft@2x.png new file mode 100755 index 0000000..b11060f Binary files /dev/null and b/src/assets/images/craft@2x.png differ diff --git a/src/assets/images/craft@3x.png b/src/assets/images/craft@3x.png new file mode 100755 index 0000000..18d7de1 Binary files /dev/null and b/src/assets/images/craft@3x.png differ diff --git a/src/assets/images/creditcardicon@2x.png b/src/assets/images/creditcardicon@2x.png new file mode 100755 index 0000000..9efdb34 Binary files /dev/null and b/src/assets/images/creditcardicon@2x.png differ diff --git a/src/assets/images/creditcardicon@3x.png b/src/assets/images/creditcardicon@3x.png new file mode 100755 index 0000000..1863317 Binary files /dev/null and b/src/assets/images/creditcardicon@3x.png differ diff --git a/src/assets/images/drink@2x.png b/src/assets/images/drink@2x.png new file mode 100755 index 0000000..283463e Binary files /dev/null and b/src/assets/images/drink@2x.png differ diff --git a/src/assets/images/drink@3x.png b/src/assets/images/drink@3x.png new file mode 100755 index 0000000..497a018 Binary files /dev/null and b/src/assets/images/drink@3x.png differ diff --git a/src/assets/images/facebook@2x.png b/src/assets/images/facebook@2x.png new file mode 100755 index 0000000..059081a Binary files /dev/null and b/src/assets/images/facebook@2x.png differ diff --git a/src/assets/images/facebook@3x.png b/src/assets/images/facebook@3x.png new file mode 100755 index 0000000..84ae786 Binary files /dev/null and b/src/assets/images/facebook@3x.png differ diff --git a/src/assets/images/favourite@2x.png b/src/assets/images/favourite@2x.png new file mode 100644 index 0000000..9a10b98 Binary files /dev/null and b/src/assets/images/favourite@2x.png differ diff --git a/src/assets/images/favourite@3x.png b/src/assets/images/favourite@3x.png new file mode 100644 index 0000000..f3b5a5e Binary files /dev/null and b/src/assets/images/favourite@3x.png differ diff --git a/src/assets/images/foodcat@2x.png b/src/assets/images/foodcat@2x.png new file mode 100644 index 0000000..f3b4580 Binary files /dev/null and b/src/assets/images/foodcat@2x.png differ diff --git a/src/assets/images/foodcat@3x.png b/src/assets/images/foodcat@3x.png new file mode 100644 index 0000000..6828780 Binary files /dev/null and b/src/assets/images/foodcat@3x.png differ diff --git a/src/assets/images/frozenfood@2x.png b/src/assets/images/frozenfood@2x.png new file mode 100755 index 0000000..9c850da Binary files /dev/null and b/src/assets/images/frozenfood@2x.png differ diff --git a/src/assets/images/frozenfood@3x.png b/src/assets/images/frozenfood@3x.png new file mode 100755 index 0000000..8dd765d Binary files /dev/null and b/src/assets/images/frozenfood@3x.png differ diff --git a/src/assets/images/fruit@2x.png b/src/assets/images/fruit@2x.png new file mode 100755 index 0000000..e62ef35 Binary files /dev/null and b/src/assets/images/fruit@2x.png differ diff --git a/src/assets/images/fruit@3x.png b/src/assets/images/fruit@3x.png new file mode 100755 index 0000000..622b937 Binary files /dev/null and b/src/assets/images/fruit@3x.png differ diff --git a/src/assets/images/goldenApple@2x.png b/src/assets/images/goldenApple@2x.png new file mode 100644 index 0000000..7608cc5 Binary files /dev/null and b/src/assets/images/goldenApple@2x.png differ diff --git a/src/assets/images/goldenApple@3x.png b/src/assets/images/goldenApple@3x.png new file mode 100644 index 0000000..90d08ed Binary files /dev/null and b/src/assets/images/goldenApple@3x.png differ diff --git a/src/assets/images/google@2x.png b/src/assets/images/google@2x.png new file mode 100755 index 0000000..ec4db61 Binary files /dev/null and b/src/assets/images/google@2x.png differ diff --git a/src/assets/images/google@3x.png b/src/assets/images/google@3x.png new file mode 100755 index 0000000..07dbf01 Binary files /dev/null and b/src/assets/images/google@3x.png differ diff --git a/src/assets/images/illustration@2x.png b/src/assets/images/illustration@2x.png new file mode 100644 index 0000000..078f080 Binary files /dev/null and b/src/assets/images/illustration@2x.png differ diff --git a/src/assets/images/illustration@3x.png b/src/assets/images/illustration@3x.png new file mode 100644 index 0000000..cf8bab2 Binary files /dev/null and b/src/assets/images/illustration@3x.png differ diff --git a/src/assets/images/imageIndex.js b/src/assets/images/imageIndex.js new file mode 100644 index 0000000..49caf03 --- /dev/null +++ b/src/assets/images/imageIndex.js @@ -0,0 +1,48 @@ +export const images = { + productCatalogue: { + alcoholic: require('./Alcoholic.png'), + frozenmeat: require('./Frozenmeat.png'), + drink: require('./drink.png'), + frozenfood: require('./frozenfood.png'), + fruit: require('./fruit.png'), + pasta: require('./pasta.png'), + seafood: require('./seafood.png'), + sneck: require('./sneck.png'), + vegetables: require('./vegetables.png'), + }, + main: { + mostcheapstar: require('./mostcheapstar.png'), + ranking: require('./ranking.png'), + whiteStar: require('./whitestar.png'), + yellowStar: require('./yellowstar.png'), + goldenApple: require('./goldenApple.png'), + youmaylike: require('./youmaylike.png'), + template: require('./template.png'), + foodcat: require('./foodcat.png'), + }, + details: { + share: require('./share.png'), + favourite: require('./favourite.png'), + comment: require('./comment.png'), + }, + signIn: { + illustration: require('./illustration.png'), + facebook: require('./facebook.png'), + google: require('./google.png'), + bitMap: require('./Bitmap.png'), + logo: require('./logo.png'), + }, + profile: { + creditCardIcon: require('./creditcardicon.png'), + profileShare: require('./profileshare.png'), + }, + search: { + greenMagnifier: require('./Icon_Magnifier.png'), + smallGreenMagnifier: require('./Icon_Magnifier_Small.png'), + }, + tutorial:{ + tut1:require('./tut1.png'), + tut2:require('./tut2.png'), + tut3:require('./tut3.png'), + } +}; diff --git a/src/assets/images/logo@2x.png b/src/assets/images/logo@2x.png new file mode 100644 index 0000000..55bdb05 Binary files /dev/null and b/src/assets/images/logo@2x.png differ diff --git a/src/assets/images/logo@3x.png b/src/assets/images/logo@3x.png new file mode 100644 index 0000000..b4df570 Binary files /dev/null and b/src/assets/images/logo@3x.png differ diff --git a/src/assets/images/mostcheapstar@2x.png b/src/assets/images/mostcheapstar@2x.png new file mode 100755 index 0000000..fc3adc2 Binary files /dev/null and b/src/assets/images/mostcheapstar@2x.png differ diff --git a/src/assets/images/mostcheapstar@3x.png b/src/assets/images/mostcheapstar@3x.png new file mode 100755 index 0000000..83250da Binary files /dev/null and b/src/assets/images/mostcheapstar@3x.png differ diff --git a/src/assets/images/noimage.png b/src/assets/images/noimage.png new file mode 100644 index 0000000..4640a25 Binary files /dev/null and b/src/assets/images/noimage.png differ diff --git a/src/assets/images/pasta@2x.png b/src/assets/images/pasta@2x.png new file mode 100755 index 0000000..11f3246 Binary files /dev/null and b/src/assets/images/pasta@2x.png differ diff --git a/src/assets/images/pasta@3x.png b/src/assets/images/pasta@3x.png new file mode 100755 index 0000000..6f563aa Binary files /dev/null and b/src/assets/images/pasta@3x.png differ diff --git a/src/assets/images/profileshare@2x.png b/src/assets/images/profileshare@2x.png new file mode 100644 index 0000000..57560fd Binary files /dev/null and b/src/assets/images/profileshare@2x.png differ diff --git a/src/assets/images/profileshare@3x.png b/src/assets/images/profileshare@3x.png new file mode 100644 index 0000000..22676b2 Binary files /dev/null and b/src/assets/images/profileshare@3x.png differ diff --git a/src/assets/images/puremall301.png b/src/assets/images/puremall301.png new file mode 100644 index 0000000..078f080 Binary files /dev/null and b/src/assets/images/puremall301.png differ diff --git a/src/assets/images/puremall601.png b/src/assets/images/puremall601.png new file mode 100644 index 0000000..cf8bab2 Binary files /dev/null and b/src/assets/images/puremall601.png differ diff --git a/src/assets/images/ranking@2x.png b/src/assets/images/ranking@2x.png new file mode 100755 index 0000000..a2c5503 Binary files /dev/null and b/src/assets/images/ranking@2x.png differ diff --git a/src/assets/images/ranking@3x.png b/src/assets/images/ranking@3x.png new file mode 100755 index 0000000..1a3c19d Binary files /dev/null and b/src/assets/images/ranking@3x.png differ diff --git a/src/assets/images/seafood@2x.png b/src/assets/images/seafood@2x.png new file mode 100755 index 0000000..b218418 Binary files /dev/null and b/src/assets/images/seafood@2x.png differ diff --git a/src/assets/images/seafood@3x.png b/src/assets/images/seafood@3x.png new file mode 100755 index 0000000..ef2999c Binary files /dev/null and b/src/assets/images/seafood@3x.png differ diff --git a/src/assets/images/search@2x.png b/src/assets/images/search@2x.png new file mode 100755 index 0000000..79b3e5f Binary files /dev/null and b/src/assets/images/search@2x.png differ diff --git a/src/assets/images/search@3x.png b/src/assets/images/search@3x.png new file mode 100755 index 0000000..57b3057 Binary files /dev/null and b/src/assets/images/search@3x.png differ diff --git a/src/assets/images/share@2x.png b/src/assets/images/share@2x.png new file mode 100644 index 0000000..ea70748 Binary files /dev/null and b/src/assets/images/share@2x.png differ diff --git a/src/assets/images/share@3x.png b/src/assets/images/share@3x.png new file mode 100644 index 0000000..cac958b Binary files /dev/null and b/src/assets/images/share@3x.png differ diff --git a/src/assets/images/sneck@2x.png b/src/assets/images/sneck@2x.png new file mode 100755 index 0000000..e61a7c3 Binary files /dev/null and b/src/assets/images/sneck@2x.png differ diff --git a/src/assets/images/sneck@3x.png b/src/assets/images/sneck@3x.png new file mode 100755 index 0000000..e81ce78 Binary files /dev/null and b/src/assets/images/sneck@3x.png differ diff --git a/src/assets/images/template.png b/src/assets/images/template.png new file mode 100644 index 0000000..3c3072f Binary files /dev/null and b/src/assets/images/template.png differ diff --git a/src/assets/images/tut1.png b/src/assets/images/tut1.png new file mode 100644 index 0000000..5f50c6f Binary files /dev/null and b/src/assets/images/tut1.png differ diff --git a/src/assets/images/tut2.png b/src/assets/images/tut2.png new file mode 100644 index 0000000..f65cef9 Binary files /dev/null and b/src/assets/images/tut2.png differ diff --git a/src/assets/images/tut3.png b/src/assets/images/tut3.png new file mode 100644 index 0000000..463b6ba Binary files /dev/null and b/src/assets/images/tut3.png differ diff --git a/src/assets/images/vegetables@2x.png b/src/assets/images/vegetables@2x.png new file mode 100755 index 0000000..6bdc7e3 Binary files /dev/null and b/src/assets/images/vegetables@2x.png differ diff --git a/src/assets/images/vegetables@3x.png b/src/assets/images/vegetables@3x.png new file mode 100755 index 0000000..6329567 Binary files /dev/null and b/src/assets/images/vegetables@3x.png differ diff --git a/src/assets/images/whitestar@2x.png b/src/assets/images/whitestar@2x.png new file mode 100644 index 0000000..7139eae Binary files /dev/null and b/src/assets/images/whitestar@2x.png differ diff --git a/src/assets/images/whitestar@3x.png b/src/assets/images/whitestar@3x.png new file mode 100644 index 0000000..855f589 Binary files /dev/null and b/src/assets/images/whitestar@3x.png differ diff --git a/src/assets/images/yellowstar@2x.png b/src/assets/images/yellowstar@2x.png new file mode 100644 index 0000000..143c8bf Binary files /dev/null and b/src/assets/images/yellowstar@2x.png differ diff --git a/src/assets/images/yellowstar@3x.png b/src/assets/images/yellowstar@3x.png new file mode 100644 index 0000000..ff26cde Binary files /dev/null and b/src/assets/images/yellowstar@3x.png differ diff --git a/src/assets/images/youmaylike@2x.png b/src/assets/images/youmaylike@2x.png new file mode 100644 index 0000000..36ef1d7 Binary files /dev/null and b/src/assets/images/youmaylike@2x.png differ diff --git a/src/assets/images/youmaylike@3x.png b/src/assets/images/youmaylike@3x.png new file mode 100644 index 0000000..0d6df69 Binary files /dev/null and b/src/assets/images/youmaylike@3x.png differ diff --git a/src/assets/lottie/782-check-mark-success.json b/src/assets/lottie/782-check-mark-success.json new file mode 100644 index 0000000..85ae52d --- /dev/null +++ b/src/assets/lottie/782-check-mark-success.json @@ -0,0 +1,981 @@ +{ + "v": "4.10.1", + "fr": 30, + "ip": 0, + "op": 40, + "w": 80, + "h": 80, + "nm": "Success Checkmark", + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "Check Mark", + "sr": 1, + "ks": { + "o": { + "a": 0, + "k": 100, + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 0, + "k": [ + 40, + 40, + 0 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + -1.312, + 6, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100, + 100 + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [ + 0, + 0 + ], + [ + 0, + 0 + ], + [ + 0, + 0 + ] + ], + "o": [ + [ + 0, + 0 + ], + [ + 0, + 0 + ], + [ + 0, + 0 + ] + ], + "v": [ + [ + -15.75, + 8 + ], + [ + -8, + 16 + ], + [ + 13.125, + -4 + ] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.667 + ], + "y": [ + 1 + ] + }, + "o": { + "x": [ + 0.333 + ], + "y": [ + 0 + ] + }, + "n": [ + "0p667_1_0p333_0" + ], + "t": 25, + "s": [ + 0 + ], + "e": [ + 100 + ] + }, + { + "t": 33 + } + ], + "ix": 1 + }, + "e": { + "a": 0, + "k": 0, + "ix": 2 + }, + "o": { + "a": 0, + "k": 0, + "ix": 3 + }, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [ + 1, + 1, + 1, + 1 + ], + "ix": 3 + }, + "o": { + "a": 0, + "k": 100, + "ix": 4 + }, + "w": { + "a": 0, + "k": 3, + "ix": 5 + }, + "lc": 2, + "lj": 2, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100 + ], + "ix": 3 + }, + "r": { + "a": 0, + "k": 0, + "ix": 6 + }, + "o": { + "a": 0, + "k": 100, + "ix": 7 + }, + "sk": { + "a": 0, + "k": 0, + "ix": 4 + }, + "sa": { + "a": 0, + "k": 0, + "ix": 5 + }, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 3, + "cix": 2, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 40, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Circle Flash", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.833 + ], + "y": [ + 0.833 + ] + }, + "o": { + "x": [ + 0.167 + ], + "y": [ + 0.167 + ] + }, + "n": [ + "0p833_0p833_0p167_0p167" + ], + "t": 25, + "s": [ + 0 + ], + "e": [ + 98 + ] + }, + { + "i": { + "x": [ + 0.833 + ], + "y": [ + 0.833 + ] + }, + "o": { + "x": [ + 0.167 + ], + "y": [ + 0.167 + ] + }, + "n": [ + "0p833_0p833_0p167_0p167" + ], + "t": 30, + "s": [ + 98 + ], + "e": [ + 0 + ] + }, + { + "t": 38 + } + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 0, + "k": [ + 40, + 40, + 0 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.667, + 0.667, + 0.667 + ], + "y": [ + 1, + 1, + 1 + ] + }, + "o": { + "x": [ + 0.333, + 0.333, + 0.333 + ], + "y": [ + 0, + 0, + 0 + ] + }, + "n": [ + "0p667_1_0p333_0", + "0p667_1_0p333_0", + "0p667_1_0p333_0" + ], + "t": 25, + "s": [ + 0, + 0, + 100 + ], + "e": [ + 100, + 100, + 100 + ] + }, + { + "t": 30 + } + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 64, + 64 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [ + 0.529866635799, + 0.961458325386, + 0.448091417551, + 1 + ], + "ix": 4 + }, + "o": { + "a": 0, + "k": 100, + "ix": 5 + }, + "r": 1, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + } + ], + "ip": 0, + "op": 40, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Circle Stroke", + "sr": 1, + "ks": { + "o": { + "a": 0, + "k": 100, + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 0, + "k": [ + 39.022, + 39.022, + 0 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.667, + 0.667, + 0.667 + ], + "y": [ + 1, + 1, + 1 + ] + }, + "o": { + "x": [ + 0.333, + 0.333, + 0.333 + ], + "y": [ + 0, + 0, + 0 + ] + }, + "n": [ + "0p667_1_0p333_0", + "0p667_1_0p333_0", + "0p667_1_0p333_0" + ], + "t": 16, + "s": [ + 100, + 100, + 100 + ], + "e": [ + 80, + 80, + 100 + ] + }, + { + "i": { + "x": [ + 0.667, + 0.667, + 0.667 + ], + "y": [ + 1, + 1, + 1 + ] + }, + "o": { + "x": [ + 0.333, + 0.333, + 0.333 + ], + "y": [ + 0, + 0, + 0 + ] + }, + "n": [ + "0p667_1_0p333_0", + "0p667_1_0p333_0", + "0p667_1_0p333_0" + ], + "t": 22, + "s": [ + 80, + 80, + 100 + ], + "e": [ + 120, + 120, + 100 + ] + }, + { + "i": { + "x": [ + 0.667, + 0.667, + 0.667 + ], + "y": [ + 1, + 1, + 1 + ] + }, + "o": { + "x": [ + 0.333, + 0.333, + 0.333 + ], + "y": [ + 0, + 0, + 0 + ] + }, + "n": [ + "0p667_1_0p333_0", + "0p667_1_0p333_0", + "0p667_1_0p333_0" + ], + "t": 25, + "s": [ + 120, + 120, + 100 + ], + "e": [ + 100, + 100, + 100 + ] + }, + { + "t": 29 + } + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 60, + 60 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.667 + ], + "y": [ + 1 + ] + }, + "o": { + "x": [ + 0.333 + ], + "y": [ + 0 + ] + }, + "n": [ + "0p667_1_0p333_0" + ], + "t": 0, + "s": [ + 0 + ], + "e": [ + 100 + ] + }, + { + "t": 16 + } + ], + "ix": 1 + }, + "e": { + "a": 0, + "k": 0, + "ix": 2 + }, + "o": { + "a": 0, + "k": 0, + "ix": 3 + }, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [ + 0.427450984716, + 0.800000011921, + 0.35686275363, + 1 + ], + "ix": 3 + }, + "o": { + "a": 0, + "k": 100, + "ix": 4 + }, + "w": { + "a": 0, + "k": 3, + "ix": 5 + }, + "lc": 2, + "lj": 2, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": { + "a": 0, + "k": [ + 0.978, + 0.978 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100 + ], + "ix": 3 + }, + "r": { + "a": 0, + "k": 0, + "ix": 6 + }, + "o": { + "a": 0, + "k": 100, + "ix": 7 + }, + "sk": { + "a": 0, + "k": 0, + "ix": 4 + }, + "sa": { + "a": 0, + "k": 0, + "ix": 5 + }, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 3, + "cix": 2, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 40, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 4, + "ty": 4, + "nm": "Circle Green Fill", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.833 + ], + "y": [ + 0.833 + ] + }, + "o": { + "x": [ + 0.167 + ], + "y": [ + 0.167 + ] + }, + "n": [ + "0p833_0p833_0p167_0p167" + ], + "t": 21, + "s": [ + 0 + ], + "e": [ + 98 + ] + }, + { + "t": 28 + } + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 0, + "k": [ + 40, + 40, + 0 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 1, + "k": [ + { + "i": { + "x": [ + 0.667, + 0.667, + 0.667 + ], + "y": [ + 1, + 1, + 1 + ] + }, + "o": { + "x": [ + 0.333, + 0.333, + 0.333 + ], + "y": [ + 0, + 0, + 0 + ] + }, + "n": [ + "0p667_1_0p333_0", + "0p667_1_0p333_0", + "0p667_1_0p333_0" + ], + "t": 21, + "s": [ + 0, + 0, + 100 + ], + "e": [ + 100, + 100, + 100 + ] + }, + { + "t": 28 + } + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 64, + 64 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [ + 0.427450984716, + 0.800000011921, + 0.35686275363, + 1 + ], + "ix": 4 + }, + "o": { + "a": 0, + "k": 100, + "ix": 5 + }, + "r": 1, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + } + ], + "ip": 0, + "op": 40, + "st": 0, + "bm": 0 + } + ] +} \ No newline at end of file diff --git a/src/assets/lottie/loading.json b/src/assets/lottie/loading.json new file mode 100644 index 0000000..76cbb09 --- /dev/null +++ b/src/assets/lottie/loading.json @@ -0,0 +1,708 @@ +{ + "v": "5.6.10", + "fr": 120, + "ip": 0, + "op": 160, + "w": 1000, + "h": 1000, + "nm": "Composição 1", + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "Left", + "sr": 1, + "ks": { + "o": { + "a": 0, + "k": 100, + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 1, + "k": [ + { + "i": { + "x": 0.833, + "y": 0.833 + }, + "o": { + "x": 0.333, + "y": 0.333 + }, + "t": 0, + "s": [ + 650, + 500, + 0 + ], + "e": [ + 650, + 500, + 0 + ], + "to": [ + 0, + 0, + 0 + ], + "ti": [ + 0, + 0, + 0 + ] + }, + { + "i": { + "x": 0.667, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 20, + "s": [ + 650, + 500, + 0 + ], + "e": [ + 650, + 300, + 0 + ], + "to": [ + 0, + -33.333, + 0 + ], + "ti": [ + -3.333, + 0, + 0 + ] + }, + { + "i": { + "x": 0.209, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 70, + "s": [ + 650, + 300, + 0 + ], + "e": [ + 650, + 500, + 0 + ], + "to": [ + 3.329, + 0, + 0 + ], + "ti": [ + -0.005, + -0.047, + 0 + ] + }, + { + "t": 120 + } + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + -233, + -9, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100, + 100 + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 90, + 90 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Caminho da elipse 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [ + 0, + 0, + 0, + 1 + ], + "ix": 4 + }, + "o": { + "a": 0, + "k": 100, + "ix": 5 + }, + "r": 1, + "bm": 0, + "nm": "Preenchimento 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": { + "a": 0, + "k": [ + -233, + -9 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100 + ], + "ix": 3 + }, + "r": { + "a": 0, + "k": 0, + "ix": 6 + }, + "o": { + "a": 0, + "k": 100, + "ix": 7 + }, + "sk": { + "a": 0, + "k": 0, + "ix": 4 + }, + "sa": { + "a": 0, + "k": 0, + "ix": 5 + }, + "nm": "Transformar" + } + ], + "nm": "Elipse 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 160, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Center", + "sr": 1, + "ks": { + "o": { + "a": 0, + "k": 100, + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 1, + "k": [ + { + "i": { + "x": 0.607, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 10, + "s": [ + 500, + 500, + 0 + ], + "e": [ + 500, + 300, + 0 + ], + "to": [ + 0, + -33.333, + 0 + ], + "ti": [ + 0, + 0, + 0 + ] + }, + { + "i": { + "x": 0.121, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 55, + "s": [ + 500, + 300, + 0 + ], + "e": [ + 500, + 500, + 0 + ], + "to": [ + 0, + 0, + 0 + ], + "ti": [ + 0, + -33.333, + 0 + ] + }, + { + "t": 115 + } + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + -233, + -9, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100, + 100 + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 90, + 90 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Caminho da elipse 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [ + 0, + 0, + 0, + 1 + ], + "ix": 4 + }, + "o": { + "a": 0, + "k": 100, + "ix": 5 + }, + "r": 1, + "bm": 0, + "nm": "Preenchimento 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": { + "a": 0, + "k": [ + -233, + -9 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100 + ], + "ix": 3 + }, + "r": { + "a": 0, + "k": 0, + "ix": 6 + }, + "o": { + "a": 0, + "k": 100, + "ix": 7 + }, + "sk": { + "a": 0, + "k": 0, + "ix": 4 + }, + "sa": { + "a": 0, + "k": 0, + "ix": 5 + }, + "nm": "Transformar" + } + ], + "nm": "Elipse 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 160, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Rigth", + "sr": 1, + "ks": { + "o": { + "a": 0, + "k": 100, + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10 + }, + "p": { + "a": 1, + "k": [ + { + "i": { + "x": 0.667, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 0, + "s": [ + 360, + 500, + 0 + ], + "e": [ + 360, + 300, + 0 + ], + "to": [ + 0, + -13.366, + 0 + ], + "ti": [ + 0, + 36.899, + 0 + ] + }, + { + "i": { + "x": 0.163, + "y": 1 + }, + "o": { + "x": 0.333, + "y": 0 + }, + "t": 35, + "s": [ + 360, + 300, + 0 + ], + "e": [ + 360, + 500, + 0 + ], + "to": [ + 0, + -55.126, + 0 + ], + "ti": [ + 0, + -33.333, + 0 + ] + }, + { + "t": 95 + } + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + -233, + -9, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100, + 100 + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": { + "a": 0, + "k": [ + 90, + 90 + ], + "ix": 2 + }, + "p": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 3 + }, + "nm": "Caminho da elipse 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [ + 0, + 0, + 0, + 1 + ], + "ix": 4 + }, + "o": { + "a": 0, + "k": 100, + "ix": 5 + }, + "r": 1, + "bm": 0, + "nm": "Preenchimento 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": { + "a": 0, + "k": [ + -233, + -9 + ], + "ix": 2 + }, + "a": { + "a": 0, + "k": [ + 0, + 0 + ], + "ix": 1 + }, + "s": { + "a": 0, + "k": [ + 100, + 100 + ], + "ix": 3 + }, + "r": { + "a": 0, + "k": 0, + "ix": 6 + }, + "o": { + "a": 0, + "k": 100, + "ix": 7 + }, + "sk": { + "a": 0, + "k": 0, + "ix": 4 + }, + "sa": { + "a": 0, + "k": 0, + "ix": 5 + }, + "nm": "Transformar" + } + ], + "nm": "Elipse 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 160, + "st": 0, + "bm": 0 + } + ], + "markers": [] +} \ No newline at end of file diff --git a/src/assets/screenshot/1.png b/src/assets/screenshot/1.png new file mode 100644 index 0000000..a05d945 Binary files /dev/null and b/src/assets/screenshot/1.png differ diff --git a/src/assets/screenshot/2.png b/src/assets/screenshot/2.png new file mode 100644 index 0000000..77bd9ad Binary files /dev/null and b/src/assets/screenshot/2.png differ diff --git a/src/assets/screenshot/3.png b/src/assets/screenshot/3.png new file mode 100644 index 0000000..2036c29 Binary files /dev/null and b/src/assets/screenshot/3.png differ diff --git a/src/assets/screenshot/4.png b/src/assets/screenshot/4.png new file mode 100644 index 0000000..317dea4 Binary files /dev/null and b/src/assets/screenshot/4.png differ diff --git a/src/assets/screenshot/5.png b/src/assets/screenshot/5.png new file mode 100644 index 0000000..7d6c668 Binary files /dev/null and b/src/assets/screenshot/5.png differ diff --git a/src/assets/screenshot/6.png b/src/assets/screenshot/6.png new file mode 100644 index 0000000..d6bcfea Binary files /dev/null and b/src/assets/screenshot/6.png differ diff --git a/src/assets/screenshot/7.png b/src/assets/screenshot/7.png new file mode 100644 index 0000000..f35b8a6 Binary files /dev/null and b/src/assets/screenshot/7.png differ diff --git a/src/assets/screenshot/banner.png b/src/assets/screenshot/banner.png new file mode 100644 index 0000000..e538cc3 Binary files /dev/null and b/src/assets/screenshot/banner.png differ diff --git a/src/assets/styles/colors-theme.js b/src/assets/styles/colors-theme.js new file mode 100755 index 0000000..a0c1853 --- /dev/null +++ b/src/assets/styles/colors-theme.js @@ -0,0 +1,30 @@ +/** + * 控制全app的颜色 + * @type {{statusBarColor: string}} + */ +export const colors = { + backgroundColor:'#4AB066', + labelColor: '#A4A3A7', + bgc: 'white', + catColor: '#D0B895', + historyListColor: '#F6EFE0', + statusBarColor: '#23A2FF', + inputBgc: '#E6E7E8', + signupInputBgc: '#F0E1C9', + shoppingcartColor: '#F0DEC1', + inputText: '#4D4D4D', + profileBg: '#D29686', + mainColor: '#3EB873', + otherGreen: '#6EB7A0', + maingray: '#888A8D', + lineColor: '#E5E5E5', + textColor: '#000000', + subTextColor: '#98AD86', + baseColor: '#1BBC9B', + line2Color: '#9EA3A6', + borderLineColor: '#E6E6E6', + loginButtonColor: '#3E9B42', + titleColor: '#57A75A', + grayTextColor: '#E9E9E9', + shoppingGroupColor: '#F7F7F7', +}; diff --git a/src/components/Loading.js b/src/components/Loading.js new file mode 100644 index 0000000..cc1b9c3 --- /dev/null +++ b/src/components/Loading.js @@ -0,0 +1,91 @@ +import React, {Component} from 'react'; +import { + Platform, + StyleSheet, + Text, + View, + Modal, + ActivityIndicator, +} from 'react-native'; +import Spinner from 'react-native-loading-spinner-overlay'; +import {colors} from '../assets/styles/colors-theme'; +import LottieView from 'lottie-react-native'; +import {width, height} from '../services/screen'; + +export default class Loading extends Component { + state = { + spinner: false, + }; + + render() { + return ( + { + console.log('c lose modal'); + }}> + + + {/* */} + { + this.animation = animation; + }} + colorFilters={[ + { + keypath: 'Left', + color: colors.mainColor, + }, + { + keypath: 'Center', + color: colors.mainColor, + }, + { + keypath: 'Rigth', + color: colors.mainColor, + }, + ]} + style={{height: 150, width: 150}} + source={require('../assets/lottie/loading')} + autoPlay + loop + /> + + + + ); + } +} + +const styles = StyleSheet.flatten({ + wrapper: { + position: 'absolute', + top: 0, + left: 0, + width: width, + height: height, + }, + loading: { + position: 'absolute', + top: height / 2 - 100, + left: width / 2 - 70, + width: 140, + height: 140, + }, + modalBackground: { + flex: 1, + alignItems: 'center', + flexDirection: 'column', + justifyContent: 'center', + }, + activityIndicatorWrapper: { + height: 200, + width: 200, + borderRadius: 10, + display: 'flex', + alignItems: 'center', + justifyContent: 'space-around', + }, +}); diff --git a/src/components/categoriesItems.js b/src/components/categoriesItems.js new file mode 100644 index 0000000..ddd9664 --- /dev/null +++ b/src/components/categoriesItems.js @@ -0,0 +1,306 @@ +import React, { Component } from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + Platform, + Image, +} from 'react-native'; +import FastImage from 'react-native-fast-image' +import { colors } from '../assets/styles/colors-theme'; +import CountDown from 'react-native-countdown-component'; +import { scale, verticalScale, moderateScale } from 'react-native-size-matters'; +import { width, height } from '../services/screen'; +import { observable } from 'mobx'; +import { images } from '../assets/images/imageIndex'; +import Rank from './rank'; +import Icon from 'react-native-vector-icons/dist/Feather'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { inject, observer } from 'mobx-react'; +import { s, vs, ms } from 'react-native-size-matters'; +Icon.loadFont(); +MaterialCommunityIcons.loadFont(); +@inject('appStore') +@observer +class CategoriesItems extends Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return 'HKD ' + priceInt.toString(); + } + + navigationAction() { + this.props.navigation.navigate('ProductsDetails', { data: this.props.data }); + } + + renderTimer() { + if (this.props.sale) { + return ( + + ); + } + } + + renderOriPrice() { + if (this.props.data.hasOwnProperty('oriPrice')) { + if (this.props.data.oriPrice > this.props.data.price) { + return ( + + {this.priceHandler(this.props.data.oriPrice)} + + ) + } + } else { + + } + } + + renderGroupBuy() { + if (this.props.groupBuy) { + var index = this.props.data.attributes.findIndex( + element => element.name == 'groupbuy', + ); + return ( + + {this.store.text.alreadyHave + + this.props.data.attributes[index].options[0] + + this.store.text.joinedGroupBuying} + + ); + } + } + + render() { + return ( + { + this.navigationAction(); + }}> + + + {this.props.data.images.length > 0 ? ( + + ) : ( + + + No Image Yet + + )} + {this.props.data.inventory == 0 ? ( + + + {this.store.text.outOfStock} + + ) : ()} + + + + {this.props.data.name} + + + {/* + {this.props.data.on_sale + ? this.store.text.originalPrice + + this.priceHandler(this.props.data.regular_price) + : ''} + */} + {/* */} + + + + {'4 (300)'} + + + {this.renderOriPrice()} + this.props.data.price ? 'red' : 'black', + fontWeight: 'bold', + marginLeft: 5, + }}> + {this.priceHandler(this.props.data.price)} + + + + this.props.onPress && this.props.onPress()}> + + + {this.store.text.addToShoppingCart} + + + + + + {this.props.showFav ? ( + { + this.props.addfav && this.props.addfav(); + }}> + + + ) : ( + + )} + + {this.props.showSelected ? ( + { + this.props.select && this.props.select(); + }}> + {this.props.selected ? ( + + ) : ( + + )} + + ) : ( + + )} + + ); + } +} +export default CategoriesItems; diff --git a/src/components/checkAnimate.js b/src/components/checkAnimate.js new file mode 100644 index 0000000..9a669e3 --- /dev/null +++ b/src/components/checkAnimate.js @@ -0,0 +1,65 @@ +import React, { Component } from 'react' +import {View, Dimensions, StyleSheet,ActivityIndicator,Modal,TouchableOpacity} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import LottieView from 'lottie-react-native'; +import {observable} from 'mobx'; +import {inject, observer} from 'mobx-react'; +const { width, height } = Dimensions.get('window') +@inject('appStore') +@observer +export default class CheckAnimate extends Component { + + constructor(props) { + super(props); + this.store = props.appStore; + } + + render(){ + return ( + {console.log('c lose modal')}}> + + + + + ) + } + +} + +const styles = StyleSheet.flatten({ + wrapper: { + position: 'absolute', + top: 0, + left: 0, + width: width, + height: height, + backgroundColor: 'rgba(0, 0, 0, 0.2)' + }, + loading:{ + position: 'absolute', + top: height / 2 - 100, + left: width / 2 - 70, + width: 140, + height: 140 + }, + modalBackground: { + flex: 1, + alignItems: 'center', + flexDirection: 'column', + justifyContent: 'center', + //backgroundColor: '#00000040' + }, + activityIndicatorWrapper: { + backgroundColor: '#FFFFFF', + height: 100, + width: 100, + borderRadius: 10, + display: 'flex', + alignItems: 'center', + justifyContent: 'space-around' + } +}); \ No newline at end of file diff --git a/src/components/commonTextInput.js b/src/components/commonTextInput.js new file mode 100755 index 0000000..5fea8f6 --- /dev/null +++ b/src/components/commonTextInput.js @@ -0,0 +1,49 @@ +import React from 'react'; +import {TextInput, View} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; + +const CommonTextInput = props => { + return ( + + props.inputRef && props.inputRef(input)} + returnKeyType={props.returnKeyType} + onSubmitEditing={props.onSubmitEditing && props.onSubmitEditing} + onFocus={props.onFocus} + /> + + ); +}; + +export default CommonTextInput; diff --git a/src/components/customLoginButton.js b/src/components/customLoginButton.js new file mode 100644 index 0000000..a5885d1 --- /dev/null +++ b/src/components/customLoginButton.js @@ -0,0 +1,33 @@ +import React, {Component} from 'react'; +import {View, Text, TextInput, TouchableOpacity, Platform} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; + +class CustomLoginButton extends Component { + render() { + return ( + this.props.onPress && this.props.onPress()} + style={{ + backgroundColor: + this.props.color != null ? this.props.color : colors.mainColor, + height: 50, + borderRadius: 30, + width: width - 150, + justifyContent: 'center', + alignItems: 'center', + marginTop: 10, + }}> + + {this.props.title} + + + ); + } +} +export default CustomLoginButton; diff --git a/src/components/customSignupInput.js b/src/components/customSignupInput.js new file mode 100644 index 0000000..054ef32 --- /dev/null +++ b/src/components/customSignupInput.js @@ -0,0 +1,46 @@ +import React, {Component} from 'react'; +import {View, Text, TextInput, TouchableOpacity, Platform} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; + +class CustomSignupInput extends Component { + render() { + return ( + + this.props.inputRef && this.props.inputRef(input)} + returnKeyType={this.props.returnKeyType} + onSubmitEditing={ + this.props.onSubmitEditing && this.props.onSubmitEditing + } + onFocus={this.props.onFocus} + placeholder={this.props.title} + value={this.props.content} + style={{ + color: colors.inputText, + fontSize: 14, + + marginBottom: Platform.OS === 'ios' ? 3 : 0, + paddingVertical: 0, + marginLeft: 15, + }} + /> + + ); + } +} +export default CustomSignupInput; diff --git a/src/components/customSmallButton.js b/src/components/customSmallButton.js new file mode 100644 index 0000000..bce33d3 --- /dev/null +++ b/src/components/customSmallButton.js @@ -0,0 +1,40 @@ +import React, {Component} from 'react'; +import {View, Text, TextInput, TouchableOpacity, Platform} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; + +MaterialCommunityIcons.loadFont(); +class CustomSmallButton extends Component { + render() { + return ( + this.props.onPress && this.props.onPress()} + style={{ + backgroundColor: + this.props.color != null + ? this.props.color + : colors.shoppingGroupColor, + height: 35, + borderRadius: 15, + width: 120, + justifyContent: 'center', + alignItems: 'center', + + flexDirection: 'row', + }}> + + + {this.props.title} + + + ); + } +} +export default CustomSmallButton; diff --git a/src/components/customTextInput.js b/src/components/customTextInput.js new file mode 100644 index 0000000..83f3ad0 --- /dev/null +++ b/src/components/customTextInput.js @@ -0,0 +1,48 @@ +import React, {Component} from 'react'; +import {View, Text, TextInput, TouchableOpacity, Platform} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; + +class CustomTextInput extends Component { + render() { + return ( + + this.props.inputRef && this.props.inputRef(input)} + returnKeyType={this.props.returnKeyType} + onSubmitEditing={ + this.props.onSubmitEditing && this.props.onSubmitEditing + } + onFocus={this.props.onFocus} + placeholder={this.props.title} + value={this.props.content} + style={{ + color: colors.inputText, + fontSize: 14, + + marginBottom: Platform.OS === 'ios' ? 3 : 0, + paddingVertical: 0, + marginLeft: 15, + }} + /> + + ); + } +} +export default CustomTextInput; diff --git a/src/components/hoshiTextInput.js b/src/components/hoshiTextInput.js new file mode 100644 index 0000000..0632782 --- /dev/null +++ b/src/components/hoshiTextInput.js @@ -0,0 +1,49 @@ +import React, { Component } from 'react' +import { TextInput, View, TouchableOpacity } from 'react-native'; +import { colors } from '../assets/styles/colors-theme'; +import { width, height } from '../services/screen'; +import { Hoshi } from 'react-native-textinput-effects'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import { inject, observer } from 'mobx-react'; + +@inject('appStore') +@observer +export default class HoshiTextInput extends Component { + @observable + pwDisable = true + constructor(props) { + super(props); + this.store = props.appStore; + } + render() { + return ( + + this.props.inputRef && this.props.inputRef(input)} + onFocus={this.props.onFocus} + onSubmitEditing={this.props.onSubmitEditing && this.props.onSubmitEditing} /> + {this.props.password ? ( { this.pwDisable = !this.pwDisable }}> + + ) : ()} + + // /> + + ); + } +}; + diff --git a/src/components/imageSwiper.js b/src/components/imageSwiper.js new file mode 100644 index 0000000..d5a3732 --- /dev/null +++ b/src/components/imageSwiper.js @@ -0,0 +1,40 @@ +import React, { Component } from 'react'; +import { View, Text, TextInput, TouchableOpacity, Platform } from 'react-native'; +import { colors } from '../assets/styles/colors-theme'; +import { width, height } from '../services/screen'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import Swiper from 'react-native-swiper' +import FastImage from 'react-native-fast-image' +import { s, vs, ms } from 'react-native-size-matters'; +MaterialCommunityIcons.loadFont(); +class ImageSwiper extends Component { + render() { + return ( + } activeDot={} autoplay={true} style={{ height: 300, alignItems: 'center' }}> + {this.props.images.map((items, index) => { + return ( + {this.props.navigation.navigate('FullScreen',{uri:items.uri})}} + style={{ + justifyContent: 'center', + alignItems: 'center', + }}> + + + ); + })} + + ); + } +} +export default ImageSwiper; diff --git a/src/components/mostcheaplist.js b/src/components/mostcheaplist.js new file mode 100644 index 0000000..73cb636 --- /dev/null +++ b/src/components/mostcheaplist.js @@ -0,0 +1,132 @@ +import React, {Component} from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + Platform, + Image, +} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; +import {observable} from 'mobx'; +import {images} from '../assets/images/imageIndex'; +import Rank from './rank'; +import Icon from 'react-native-vector-icons/dist/Feather'; +import {inject, observer} from 'mobx-react'; +Icon.loadFont(); +@inject('appStore') +@observer +class Mostcheaplist extends Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return '$' + priceInt.toString(); + } + + navigationAction() { + this.props.navigation.navigate('ProductsDetails', {data: this.props.data}); + } + + render() { + return ( + { + this.navigationAction(); + }}> + + + + + + {this.props.data.name} + + + + {this.props.data.on_sale + ? this.store.text.originalPrice + + this.priceHandler(this.props.data.regular_price) + : ''} + + + {this.priceHandler(this.props.data.price)} + + this.props.onPress && this.props.onPress()}> + + + {this.store.text.addToShoppingCart} + + + + + + + + {this.props.index + 1} + + + + + ); + } +} +export default Mostcheaplist; diff --git a/src/components/rank.js b/src/components/rank.js new file mode 100644 index 0000000..00b3244 --- /dev/null +++ b/src/components/rank.js @@ -0,0 +1,49 @@ +import React, {Component} from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + Platform, + Image, +} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; +import {images} from '../assets/images/imageIndex'; + +class Rank extends Component { + constructor(props) { + super(props); + } + + renderStar() { + var whiteStar = 0; + var yelloStar = 0; + var whitestarView = []; + var yellowStarView = []; + var ranking = Math.round(this.props.ranking); + + if (ranking >= 5) { + yelloStar = 5; + } else { + whiteStar = 5 - ranking; + yelloStar = 5 - whiteStar; + } + for (var i = 0; i < yelloStar; i++) { + yellowStarView.push(); + } + for (var i = 0; i < whiteStar; i++) { + whitestarView.push(); + } + return ( + + {yellowStarView} + {whitestarView} + + ); + } + render() { + return {this.renderStar()}; + } +} +export default Rank; diff --git a/src/components/rating.js b/src/components/rating.js new file mode 100644 index 0000000..d2c82f3 --- /dev/null +++ b/src/components/rating.js @@ -0,0 +1,66 @@ +import React, {Component} from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + Platform, + Image, +} from 'react-native'; +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; +import {images} from '../assets/images/imageIndex'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +class Rating extends Component { + constructor(props) { + super(props); + } + + renderStar() { + var whiteStar = 0; + var yelloStar = 0; + var whitestarView = []; + var yellowStarView = []; + + if (this.props.rating >= 5) { + yelloStar = 5; + } else { + whiteStar = 5 - this.props.rating; + yelloStar = 5 - whiteStar; + } + for (var i = 0; i < yelloStar; i++) { + yellowStarView.push( + this.props.onPress && this.props.onPress(i + 1)}> + + , + ); + } + for (var i = 0; i < whiteStar; i++) { + whitestarView.push( + + this.props.onPress && this.props.onPress(i + this.props.rating + 1) + }> + + , + ); + } + return ( + + {yellowStarView} + {whitestarView} + + ); + } + render() { + return {this.renderStar()}; + } +} +export default Rating; diff --git a/src/components/titleBar.js b/src/components/titleBar.js new file mode 100644 index 0000000..3e3fce7 --- /dev/null +++ b/src/components/titleBar.js @@ -0,0 +1,223 @@ +import React, { Component } from 'react'; +import { + View, + Text, + StyleSheet, + Dimensions, + TouchableOpacity, + Platform, + Image, + Linking +} from 'react-native'; +import { colors } from '../assets/styles/colors-theme'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import Ionicons from 'react-native-vector-icons/dist/Ionicons'; +import { inject, observer } from 'mobx-react'; +import { observable } from 'mobx'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +const { width } = Dimensions.get('window'); +Icon.loadFont(); +Ionicons.loadFont(); +@inject('appStore') +@observer +export default class TitleBar extends Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + + renderShoppingGroupButton() { + + if (this.store.loginUserData == null || this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + return ( + + + + ) + } else { + return ( + { this.props.self.props.navigation.navigate('GroupList') }}> + + + + + {this.store.recommendShoppingGroup.length} + + + + ) + } + } + + + render() { + return ( + + {this.props.showBack ? ( + + { + this.props.self.props.navigation.goBack(); + }}> + + + + + {this.props.title} + + + + {this.props.notification ? ( this.props.onPress && this.props.onPress()}> + + ) : ()} + + + ) : ( + + + {this.props.showSearch ? ( + + + this.props.self.props.navigation.navigate('Search') + } + style={{ + flexDirection: 'row', + flex: 0.8, + justifyContent: 'center', + + + }}> + + + + {this.store.text.search} + + + + + {this.renderShoppingGroupButton()} + { this.props.self.props.navigation.navigate('Notification') }}> + + + + + {this.store.notificationRecord.unread} + + + + { Linking.openURL('http://api.whatsapp.com/send?phone=852' + '55019209') }}> + + + + + ) : ( + + + {this.props.title} + + + )} + + )} + + ); + } +} + +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, +}); diff --git a/src/components/youMayLikeItems.js b/src/components/youMayLikeItems.js new file mode 100644 index 0000000..94327bc --- /dev/null +++ b/src/components/youMayLikeItems.js @@ -0,0 +1,176 @@ +import React, {Component} from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + Platform, + Image, +} from 'react-native'; +import FastImage from 'react-native-fast-image' +import {colors} from '../assets/styles/colors-theme'; +import {width, height} from '../services/screen'; +import {observable} from 'mobx'; +import {images} from '../assets/images/imageIndex'; +import Rank from './rank'; +import Icon from 'react-native-vector-icons/dist/Feather'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import {inject, observer} from 'mobx-react'; + +Icon.loadFont(); +MaterialCommunityIcons.loadFont(); +@inject('appStore') +@observer +class YouMayLikeItems extends Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return '$' + priceInt.toString(); + } + + navigationAction() { + this.props.navigation.navigate('ProductsDetails', {data: this.props.data}); + } + + render() { + return ( + { + this.navigationAction(); + }}> + + + {this.props.data.hasOwnProperty('images') ? ( + + ) : ( + // + + + + No Image Yet + + + )} + + + + {this.props.data.name} + + + {/* + {this.props.data.on_sale + ? this.store.text.originalPrice + + this.priceHandler(this.props.data.regular_price) + : ''} + */} + + {this.priceHandler(this.props.data.price)} + + + + this.props.onPress && this.props.onPress()}> + + + {this.store.text.addToShoppingCart} + + + + + + + ); + } +} +export default YouMayLikeItems; diff --git a/src/pages/buyHistory/buyHistory.js b/src/pages/buyHistory/buyHistory.js new file mode 100644 index 0000000..faf1740 --- /dev/null +++ b/src/pages/buyHistory/buyHistory.js @@ -0,0 +1,346 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + ScrollView, + Keyboard, + TouchableWithoutFeedback, + StyleSheet, + TextInput, + RefreshControl, + BackHandler, +} from 'react-native'; +var _ = require('lodash'); +import { inject, observer } from 'mobx-react'; +import { observable } from 'mobx'; +import TitleBar from '../../components/titleBar'; +import { images } from '../../assets/images/imageIndex'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CheckAnimate from '../../components/checkAnimate'; +import moment from 'moment'; +import { width, height } from '../../services/screen'; +import Loading from '../../components/Loading'; +import { colors } from '../../assets/styles/colors-theme'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import IonIcon from 'react-native-vector-icons/dist/Ionicons'; +import CustomTextInput from '../../components/customTextInput'; +import CustomLoginButton from '../../components/customLoginButton'; + +Icon.loadFont(); +@inject('appStore') +@observer +export default class BuyHistory extends React.Component { + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + componentDidMount() { + this._unsubscribe = this.props.navigation.addListener('focus', () => { + this.store.getOrders(); + }); + } + handleBackButtonClick() { + this.props.navigation.navigate('Main'); + return true + } + + componentWillUnmount() { + this._unsubscribe(); + this.store.getOrders(); + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + } + + paymentMethodStringReturn(value) { + switch (value) { + case 'COD': + return this.store.text.cashOnDelivery; + break; + case 'Credit Card': + return this.store.text.creditCard; + break; + default: + return value; + break; + } + } + + shippingMethodHandler(type) { + switch (type) { + case 0: + return '門市自取'; + break; + case 1: + return '送到上門'; + break; + case '3': + return '送到上門'; + break; + } + } + + statusHandler(text) { + const lang = this.store.text; + switch (text) { + case 'PC': + return lang.pc; + break; + case 'PP': + return lang.pp; + break; + case 'PRV': + return lang.prv; + break; + case 'PRJ': + return lang.prj; + break; + case 'PA': + return lang.pa; + break; + case 'ARV': + return lang.arv; + break; + case 'FIN': + return lang.fin; + break; + case 'CAN': + return lang.can; + break; + case 'EXP': + return lang.exp; + break; + case 'VO': + return lang.vo; + break; + } + } + + shippingFeeHandler(items) { + if (items.hasOwnProperty('shoppingGroup')) { + if (items.status == 'PC') { + return '待截單'; + } else { + return this.store.priceFormatReturn(items.shippingFee); + } + } else { + return this.store.priceFormatReturn(items.shippingFee); + } + } + + OrderList() { + var orderList = this.store.orderList.sort((a, b) => { + return b.created - a.created; + }); + if (orderList.length > 0) { + return orderList.map((items, index) => { + return this.renderList(items); + }); + } else { + return ; + } + } + + productsList(items) { + console.log(items); + if (items.hasOwnProperty('items')) { + return items.items.map((itemsData, itemsIndex) => { + if (itemsIndex < 2) { + return ( + + {itemsIndex == 1 && items.items.length > 2 + ? itemsData.name + 'x' + itemsData.qty + '...' + : itemsData.name + 'x' + itemsData.qty} + + ); + } + }); + } else { + return ; + } + } + renderDot(items) { + if (items.hasOwnProperty('line_items')) { + if (items.line_items.length > 4) { + return ; + } else { + return ; + } + } + } + renderList(items) { + return ( + + this.props.navigation.navigate('Order', { + order: false, + data: _.cloneDeep(items), + }) + }> + + + + {this.store.text.orderNumber + ' : ' + items.receiptId} + + + {moment(items.created).format('hh:mm DD-MM-YYYY')} + + + + + {this.store.text.shippingPrice} + + + {this.shippingFeeHandler(items)} + + + + + {this.store.text.total} + + + {this.store.priceFormatReturn(parseFloat(items.amount))} + + + + + + {this.productsList(items)} + {/* {this.renderDot(items)} */} + + + + {this.statusHandler(items.status)} + + + + + + + + + ); + } + + render() { + return ( + + + + + + this.store.getOrders()} + /> + }> + {this.OrderList()} + + + + ); + } +} +const styles = StyleSheet.flatten({ + textStyle: { + fontSize: 11, + color: colors.mainColor, + }, +}); diff --git a/src/pages/buyHistory/historyDetails.js b/src/pages/buyHistory/historyDetails.js new file mode 100644 index 0000000..8ddb9ca --- /dev/null +++ b/src/pages/buyHistory/historyDetails.js @@ -0,0 +1,941 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + ScrollView, + Keyboard, + TouchableWithoutFeedback, + StyleSheet, + TextInput, +} from 'react-native'; +var _ = require('lodash'); +import {inject, observer} from 'mobx-react'; +import TitleBar from '../../components/titleBar'; +import {observable} from 'mobx'; +import moment from 'moment'; +import {images} from '../../assets/images/imageIndex'; +import {KeyboardAwareScrollView} from 'react-native-keyboard-aware-scroll-view'; +import CheckAnimate from '../../components/checkAnimate'; +import {width, height} from '../../services/screen'; +import Loading from '../../components/Loading'; +import {colors} from '../../assets/styles/colors-theme'; +import Toast, {DURATION} from 'react-native-easy-toast'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import IonIcon from 'react-native-vector-icons/dist/Ionicons'; +import CustomTextInput from '../../components/customTextInput'; +import CustomLoginButton from '../../components/customLoginButton'; + + +Icon.loadFont(); +@inject('appStore') +@observer +export default class HistoryDetails extends React.Component { + @observable + paymentseletion = [ + {label: 'Visa', value: 0}, + {label: this.store.text.cashOnDelivery, value: 1}, + + // {label: 'Alipay', value: 1}, + ]; + + @observable + shippingSelection = [ + {label: '門市自取', value: 0, price: 0, freeShippingPrice: 0}, + { + label: '送到上門(滿' + '200' + '免運費)', + value: 1, + price: 20, + freeShippingPrice: 1000, + }, + ]; + + @observable + paymentSelected = 0; + + @observable + shippingSelected = 0; + @observable + payDisable = false; + @observable + coupon1 = ''; + @observable + coupon2 = ''; + @observable + coupon2Correct = false; + @observable + coupon2Index = null; + @observable + shippingPrice = 50; + @observable + totalProductsPrice = 0; + @observable + discountProducts = []; + @observable + normalProducts = []; + @observable + discountTotalPrice = 0; + @observable + discountProductsEnable = false; + @observable + totalPrice = 0; + @observable + data = this.props.route.params.data; + + @observable + freeShip = false; + + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + await this.store.getPoints(); + if (this.store.creditCardinfo != null) { + this.paymentseletion[0].label = + this.store.text.creditCard + + ' **** **** **** ' + + this.store.creditCardinfo.last4; + } + this.countTotalPrice(); + } + + componentDidMount() { + this.shippingPriceReturn(); + } + + statusHandler(text) { + switch (text) { + case 'pending': + return '等待付款中'; + break; + case 'processing': + return '處理中'; + break; + case 'on-hold': + return '擱置中'; + break; + case 'completed': + return '已完成'; + break; + case 'cancelled': + return '已取消'; + break; + case 'refunded': + return '已退款'; + break; + case 'shipped': + return '已出貨 '; + break; + } + } + + shippingMethodHandler(type) { + switch (type) { + case 0: + return '門市自取'; + break; + case 1: + return '送到上門'; + break; + case '3': + return '送到上門'; + break; + } + } + + paymentMethodStringReturn(value) { + switch (value) { + case 'COD': + return this.store.text.cashOnDelivery; + break; + case 'Credit Card': + return this.store.text.creditCard; + break; + default: + return value; + break; + } + } + + shippingPriceReturn(which) { + if (this.store.shippingMethods.length > 0) { + var shippingPriceIndex = this.store.shippingMethods.findIndex( + element => element.id == 11, + ); + var totalPriceForFreeShippingIndex = this.store.shippingMethods.findIndex( + element => element.id == 3, + ); + console.log(shippingPriceIndex); + + if (shippingPriceIndex != -1 && totalPriceForFreeShippingIndex != -1) { + this.shippingSelection = [ + { + label: '門市自取', + value: 0, + price: 0, + freeShippingPrice: parseFloat( + this.store.shippingMethods[totalPriceForFreeShippingIndex] + .settings.min_amount.value, + ), + }, + { + freeShippingPrice: parseFloat( + this.store.shippingMethods[totalPriceForFreeShippingIndex] + .settings.min_amount.value, + ), + label: + '送到上門(滿' + + this.store.priceFormatReturn( + parseFloat( + this.store.shippingMethods[totalPriceForFreeShippingIndex] + .settings.min_amount.value, + ), + ) + + '免運費)', + value: 1, + price: parseFloat( + this.store.shippingMethods[shippingPriceIndex].settings.cost + .value, + ), + }, + ]; + } + } + } + + renderShippingSelection(items) { + return ( + { + this.shippingSelected = items.value; + this.countTotalPrice(); + }}> + + {items.value === this.shippingSelected ? ( + + ) : ( + + )} + {items.label} + + + + {this.store.priceFormatReturn(items.price)} + + + + ); + } + + cloneOrderList() { + this.normalProducts = []; + this.store.orderList.map((items, index) => { + this.normalProducts.push(_.cloneDeep(items)); + }); + } + + renderPaymentSelection(items) { + return ( + (this.paymentSelected = items.value)}> + {items.value === this.paymentSelected ? ( + + ) : ( + + )} + + {items.label} + + + ); + } + + async orderAction() { + if (this.store.creditCardinfo != null || this.paymentSelected != 0) { + if (this.paymentSelected == 0) { + this.store.payByCreditCard(this.data.id, this.coupon1, this); + } else { + // this.store.payByWeChat(this.data.id, this.coupon1, this); + this.store.payBycash(this.data.id, this.coupon1, this); + } + } else { + this.refs.toast.show('請先加入信用卡'); + } + } + + async coupon2OnChangeText(text) { + this.coupon2 = text; + console.log(this.coupon2); + console.log(this.store.coupons); + var index = this.store.coupons.findIndex(element => element.code === text); + console.log(index); + if (index != -1) { + console.log('index != -1'); + var coupon = this.store.coupons[index]; + + if ( + coupon.excluded_product_ids.length == 0 && + coupon.product_ids.length == 0 && + coupon.product_categories.length == 0 && + !coupon.exclude_sale_items + ) { + if (this.totalProductsPrice >= coupon.minimum_amount) { + this.coupon2Correct = true; + this.coupon2Index = index; + console.log(index); + } else { + this.coupon2 = ''; + this.refs.toast.show( + '此優惠券需要購買總數超過' + + this.store.priceFormatReturn(parseFloat(coupon.minimum_amount)) + + '的産品', + ); + } + } else { + if (coupon.exclude_sale_items) { + this.coupon2Correct = true; + this.coupon2Index = index; + this.discountProductsEnable = true; + await this.exclude_sale_itemsHandler(); + console.log(index); + this.checkPrice(this.discountTotalPrice); + // do exclude sale item + } else { + if (coupon.product_ids.length > 0) { + console.log('coupon.product_ids.length > 0'); + + this.discountProductsEnable = true; + this.coupon2Index = index; + this.discountProductsHandler(true, coupon.product_ids); + this.coupon2Correct = true; + console.log(index); + this.checkPrice(this.discountTotalPrice); + } else if (coupon.product_categories.length > 0) { + this.discountProductsEnable = true; + this.coupon2Index = index; + this.discountProductsHandler(false, coupon.product_categories); + this.coupon2Correct = true; + console.log(index); + this.checkPrice(this.discountTotalPrice); + } + } + } + } else { + this.coupon2Correct = false; + this.coupon2Index = null; + this.discountProductsEnable = false; + this.discountProducts = []; + this.discountTotalPrice = 0; + this.cloneOrderList(); + } + this.countTotalPrice(); + } + + onlyDigits(s) { + for (let i = s.length - 1; i >= 0; i--) { + const d = s.charCodeAt(i); + if (d < 48 || d > 57) return false; + } + return true; + } + + usePoints(text) { + console.log(text); + if (this.onlyDigits(text)) { + var numbers = parseInt(text); + if (numbers > this.store.points) { + this.coupon1 = ''; + } else { + this.coupon1 = text; + } + } else { + console.log('must numbers'); + this.coupon1 = ''; + } + } + + checkPrice(price) { + if (price <= this.store.coupons[this.coupon2Index].minimum_amount) { + this.coupon2 = ''; + this.refs.toast.show( + '此優惠券需要購買總數超過' + + this.store.priceFormatReturn( + parseFloat(this.store.coupons[this.coupon2Index].minimum_amount), + ) + + '的優惠券支持的産品價格', + ); + this.coupon2Correct = false; + this.coupon2Index = null; + this.discountProductsEnable = false; + this.discountProducts = []; + this.discountTotalPrice = 0; + this.cloneOrderList(); + } + } + + async discountProductsHandler(which, ids) { + this.discountTotalPrice = 0; + this.discountProducts = []; + if (which) { + await ids.forEach(element => { + this.store.orderList.map((items, index) => { + if (items.id == element) { + this.normalProducts.splice( + this.normalProducts.findIndex( + normalItem => normalItem.id == element, + ), + 1, + ); + this.discountTotalPrice += parseFloat(items.price) * items.buyCount; + this.discountProducts.push(_.cloneDeep(items)); + } + }); + }); + console.log(this.discountProducts); + } else { + await ids.forEach(element => { + this.store.orderList.map((items, index) => { + items.categories.map((categoriesItems, index) => { + if (categoriesItems.id == element) { + this.normalProducts.splice( + this.normalProducts.findIndex( + normalItem => normalItem.id == items.id, + ), + 1, + ); + this.discountTotalPrice += + parseFloat(items.price) * items.buyCount; + this.discountProducts.push(_.cloneDeep(items)); + } + }); + }); + }); + console.log(this.discountProducts); + this.store.removeDuplicates(this.discountProducts, it => it.id); + } + } + + async exclude_sale_itemsHandler() { + this.x = 0; + this.discountProducts = []; + await this.store.orderList.map(async (items, index) => { + if (!items.on_sale) { + await this.normalProducts.splice( + this.normalProducts.findIndex(element => element.id == items.id), + 1, + ); + await this.discountProducts.push(_.cloneDeep(items)); + this.discountTotalPrice += parseFloat(items.price) * items.buyCount; + } + }); + console.log(this.discountProducts); + } + + renderCoupon2SubValue() { + if (this.coupon2Index != null) { + if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + return ( + + {'-' + this.store.coupons[this.coupon2Index].amount + '%'} + + ); + } else { + return ( + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.store.coupons[this.coupon2Index].amount), + )} + + ); + } + } + } + + // totalPrice() { + // var totalPrice = 0; + // this.normalProducts.map(async (items, index) => { + // console.log(items.price); + // totalPrice += parseFloat(items.price) * items.buyCount; + // }); + // this.totalProductsPrice = totalPrice; + // // returnthis.store.priceFormatReturn( + // // ((totalPrice - parseInt(this.coupon1)) * (100 - parseInt(this.coupon2))) / + // // 100 + + // // this.shippingPrice, + // // ); + // if (this.coupon2Index != null) { + // if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + // totalPrice = + // ((totalPrice - parseFloat(0)) * + // (100 - parseFloat(this.store.coupons[this.coupon2Index].amount))) / + // 100; + // } else { + // totalPrice = + // totalPrice - + // parseFloat(0) - + // parseFloat(this.store.coupons[this.coupon2Index].amount); + // } + // } + // returnthis.store.priceFormatReturn(totalPrice); + // } + + renderDiscountProduct() { + console.log('here' + this.discountProducts); + return this.discountProducts.map((items, index) => { + return this.renderItems(items); + }); + } + + renderItems(items) { + return ( + + + + {items.name} + + + + + {'x' + items.quantity} + + + + + {this.store.priceFormatReturn(parseFloat(items.subtotal))} + + + + ); + } + + payAction() { + var data = { + coupon_lines: [], + shipping: { + first_name: '', + last_name: '', + company: '', + address_1: '', + address_2: '', + city: '', + state: '', + postcode: '', + country: 'hong kong', + }, + line_items: [], + }; + } + + countTotalPrice() { + console.log(this.shippingSelection[this.shippingSelected]); + this.totalPrice = 0; + this.normalProducts.map((items, index) => { + this.totalPrice += parseFloat(items.price) * items.buyCount; + }); + this.totalPrice += this.discountProductsTotalPriceHandler( + this.discountTotalPrice, + ); + if (this.discountProductsEnable == false && this.coupon2Correct == true) { + if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + this.totalPrice = + this.totalPrice * + ((100 - parseFloat(this.store.coupons[this.coupon2Index].amount)) / + 100); + } else { + this.totalPrice -= parseFloat( + this.store.coupons[this.coupon2Index].amount, + ); + } + } + if ( + this.totalPrice < + parseFloat( + this.shippingSelection[this.shippingSelected].freeShippingPrice, + ) + ) { + this.freeShip = false; + this.totalPrice += this.shippingSelection[this.shippingSelected].price; + } else { + this.freeShip = true; + } + } + + orderTotal() { + if (this.coupon1 != '' && this.coupon1 != '0') { + return this.data.total - parseInt(this.coupon1) / this.store.pointsMemony; + } else { + return this.data.total; + } + } + + discountProductsTotalPriceHandler(price) { + console.log(this.store.coupons[this.coupon2Index]); + if (this.coupon2Index != null) { + if ( + this.store.coupons[this.coupon2Index].discount_type != undefined || + this.store.coupons[this.coupon2Index].discount_type != null || + this.coupon2Index != null + ) { + if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + return ( + price * + ((100 - parseFloat(this.store.coupons[this.coupon2Index].amount)) / + 100) + ); + } else { + return ( + price - parseFloat(this.store.coupons[this.coupon2Index].amount) + ); + } + } + } else { + return 0; + } + } + renderShippingPrice() { + if (!this.freeShip) { + returnthis.store.priceFormatReturn( + this.shippingSelection[this.shippingSelected].price, + ); + } else { + returnthis.store.priceFormatReturn(0); + } + } + + render() { + return ( + + + + + + + + {this.store.text.orderNumber + ':' + this.data.id} + + + { + this.props.navigation.goBack(); + }}> + + + + + + {this.store.text.date + + ' : ' + + moment(this.data.date_created).format('DD/MM/YYYY')} + + + {this.store.text.progressRate + + ' : ' + + this.statusHandler(this.data.status)} + + + + + {this.store.text.products} + + + + + {this.data.line_items.map((items, index) => { + return this.renderItems(items); + })} + + + + + {this.store.text.shippingPrice} + + + + + {this.shippingMethodHandler( + this.data.shipping.shipping_method_type, + )} + + + + + {this.store.priceFormatReturn( + parseFloat(this.data.shipping.fee), + )} + + + + + + {/* {this.data.coupon_lines.length > 0 ? ( + + + + {this.store.text.discount} + + + + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.data.coupon_lines[0].discount), + )} + + + + + + ) : ( + + )} */} + {/* {this.data.fee_lines.length > 0 ? ( + + + + {this.store.text.pointsDiscount} + + + + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.data.fee_lines[0].amount), + )} + + + + + + ) : ( + + )} */} + + + + {' ' + this.store.text.total + ': '} + + + + + {this.store.text.orderTotal + + ': ' + + this.store.priceFormatReturn(this.orderTotal())} + + + + + + {this.shippingMethodHandler( + this.data.shipping.shipping_method_type, + )} + + {this.data.shipping.shipping_method_type == 1 ? ( + + {this.data.shipping.region_name + + ', ' + + this.data.shipping.district_name + + ', ' + + this.data.shipping.address} + + ) : ( + + )} + + {this.data.status == 'pending' ? ( + + + + {this.store.text.paymentMethods} + + {this.paymentseletion.map((items, index) => { + return this.renderPaymentSelection(items); + })} + + + {'積分(' + this.store.points + ') : '} + + + { + this.usePoints(text); + }} + /> + + + + + { + this.orderAction(); + }} + style={{ + backgroundColor: colors.mainColor, + height: 28, + borderRadius: 5, + width: 250, + justifyContent: 'center', + alignItems: 'center', + marginTop: 20, + }}> + + {this.paymentSelected == 0 + ? this.store.text.confirmPayment + : this.store.text.confirmOrder} + + + + + ) : ( + + {this.store.text.paymentMethod} + + {this.paymentMethodStringReturn( + this.data.payment_method_title, + )} + + + )} + + + + + ); + } +} +const styles = StyleSheet.flatten({ + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.line2Color, + marginTop: 10, + }, +}); diff --git a/src/pages/doc/doc.js b/src/pages/doc/doc.js new file mode 100644 index 0000000..e69de29 diff --git a/src/pages/favorite/favorite.js b/src/pages/favorite/favorite.js new file mode 100644 index 0000000..49a536d --- /dev/null +++ b/src/pages/favorite/favorite.js @@ -0,0 +1,631 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + BackHandler +} from 'react-native'; +import FastImage from 'react-native-fast-image' +var _ = require('lodash'); +import { width, height } from '../../services/screen'; +import CategoriesItems from '../../components/categoriesItems'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { observable, transaction } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import { ScrollView } from 'react-native-gesture-handler'; +@inject('appStore') +@observer +export default class Favorite extends React.Component { + @observable + allSelected = false; + @observable + edit = false; + @observable + deleteAble = false; + @observable + newProductItem = []; + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return '$' + priceInt.toString(); + } + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + } + handleBackButtonClick() { + this.props.navigation.navigate('Main'); + return true + } + async componentDidMount() { + this.store.getFavourite(); + // await this.checkAllSelected(); + this._unsubscribe = this.props.navigation.addListener('focus', async () => { + // this.store.getFavourite(); + }); + } + renderCheckBox() { + if (!this.allSelected) { + return ( + + ); + } else { + return ( + + ); + } + } + + async addShoppingCartSingleItem(item) { + var data = []; + data.push(_.cloneDeep(item)); + item.buyCount = 1; + this.store.addShoppingCart(data); + } + + async addShoppingCart() { + var cartdata = []; + var originData = []; + await this.store.favorite.map(async (items, index) => { + if (items.selected) { + console.log(items) + var itemIndex = await this.store.shoppingCartList.findIndex( + element => element.id === items.id, + ); + // var newData = _.cloneDeep(items); + if (itemIndex != -1) { + // newData.buyCount = + // parseInt(newData.buyCount) + + // parseInt(this.store.shoppingCartList[itemIndex].buyCount); + // console.log(newData.buyCount); + this.store.shoppingCartList[itemIndex].buyCount += parseInt( + items.buyCount, + ); + this.store.shoppingCartIds[ + await this.store.shoppingCartIds.findIndex( + element => element.itemId === items.id, + ) + ].qty += parseInt(items.buyCount); + } else { + var data = { + itemId: items.id, + qty: items.buyCount, + }; + items.selected = false; + this.store.shoppingCartList.push(items); + this.store.shoppingCartIds.push(data); + } + this.store.favorite[index].selected = false; + + items.buyCount = 1; + } + }); + + this.deleteAble = false; + + this.store.addShoppingCart(this); + } + + allSelectClickAction() { + if (this.allSelected) { + this.store.favorite.map((items, index) => { + this.store.favorite[index].selected = false; + }); + this.allSelected = false; + this.deleteAble = false; + } else { + this.store.favorite.map((items, index) => { + this.store.favorite[index].selected = true; + }); + this.allSelected = true; + this.deleteAble = true; + } + } + + async checkAllSelected() { + var allSelected = true; + this.deleteAble = false; + await this.store.favorite.map((items, index) => { + if (!items.selected) { + allSelected = false; + } else { + this.deleteAble = true; + } + }); + this.allSelected = allSelected; + } + + clickItemCheckBoxAction(id) { + console.log(this.store.favorite.findIndex(element => element.id == id)); + this.store.favorite[ + this.store.favorite.findIndex(element => element.id == id) + ].selected = !this.store.favorite[ + this.store.favorite.findIndex(element => element.id == id) + ].selected; + + this.checkAllSelected(); + } + + deleteIconColorReturn() { + if (this.deleteAble) { + return colors.mainColor; + } else { + return colors.lineColor; + } + } + + async deleteAction() { + var deleteIndex = []; + var deleteId = []; + + await this.store.favorite.map((items, index) => { + if (items.selected) { + deleteIndex.push(index); + deleteId.push(items.id); + } + }); + + await this.store.deleteFavourite(deleteIndex, deleteId, this); + } + + allSelectOrAllUnselect() { } + + renderItemSelectBox(select, index) { + if (select) { + return ( + { + this.clickItemCheckBoxAction(index); + }}> + + + ); + } else { + return ( + { + this.clickItemCheckBoxAction(index); + }}> + + + ); + } + } + + async goToOrder() { + this.store.orderList = []; + await this.store.favorite.map(async (items, index) => { + if (items.selected) { + await this.store.orderList.push(_.cloneDeep(items)); + items.buyCount = 1; + this.store.favorite[index].selected = false; + } + }); + this.deleteAble = false; + console.log(this.store.orderList); + if (this.store.orderList.length > 0) { + this.props.navigation.navigate('Order', { order: true }); + } + } + + renderFavorites() { + var productItem = []; + var matrix = []; + var newProductItem = []; + this.newProductItem = []; + var count = 0; + // productItem = this.store.allProducts.filter( + // items => items.categories[0].name == this.catalogueSelected, + // ); + productItem = this.store.favorite; + productItem.map((items, index) => { + count += 1; + matrix.push(items); + if (count % 2 == 0) { + newProductItem.push(matrix); + matrix = []; + console.log(matrix); + } + }); + if (matrix.length > 0) { + newProductItem.push(matrix); + + matrix = []; + } + + return newProductItem.map((items, index) => { + return ( + + {items.map((item, index) => { + return ( + + this.clickItemCheckBoxAction(item.id)} + onPress={() => { + item.selected = true; + this.addShoppingCart(); + }} + /> + + ); + })} + + ); + }); + } + + renderFavorite() { + return this.store.favorite.map((items, index) => { + return ( + { + this.navigationAction(); + }}> + + + {this.renderItemSelectBox(items.selected, index)} + + + this.props.navigation.navigate('ProductsDetails', { data: items }) + }> + {items.hasOwnProperty('images') ? ( + + ) : ( + + + No Image Yet + + )} + + + + + {items.name} + + + {items.on_sale ? ( + + {items.on_sale + ? this.store.text.originalPrice + + ' ' + + this.priceHandler(items.regular_price) + : ''} + + ) : ( + + )} + + {this.priceHandler(items.price)} + + + + + + { + if (this.store.favorite[index].buyCount > 1) + this.store.favorite[index].buyCount -= 1; + }} + style={{ + height: 17, + width: 17, + borderRadius: 4, + backgroundColor: colors.mainColor, + alignItems: 'center', + justifyContent: 'center', + }}> + - + {/* */} + + + {items.buyCount} + + { + this.store.favorite[index].buyCount += 1; + }} + style={{ + height: 17, + width: 17, + borderRadius: 4, + backgroundColor: colors.mainColor, + alignItems: 'center', + justifyContent: 'center', + }}> + + + {/* */} + + + {/* { + + items.selected = true; + this.addShoppingCart(); + }}> + + */} + + { + items.selected = true; + this.addShoppingCart(); + }}> + + + {this.store.text.addToShoppingCart} + + + + + + + + + ); + }); + } + + render() { + return ( + + + + {this.edit ? ( + + this.allSelectClickAction()}> + {this.renderCheckBox()} + + {this.store.text.selectAll} + + + { + this.deleteAction(); + }}> + + + {this.store.text.remove} + + + { + this.addShoppingCart(); + }} + style={[styles.topBarButton, { flex: 0.25 }]}> + + + {this.store.text.addToShoppingCart} + + + + ) : ( + + )} + + { + this.edit = !this.edit; + }} + style={[styles.topBarButton, { flex: 0.25 }]}> + + + {' '} + {this.edit + ? this.store.text.cancel + this.store.text.edit + : this.store.text.edit} + + + + {this.renderFavorites()} + + + ); + } +} +const styles = StyleSheet.create({ + topBarButton: { + justifyContent: 'center', + alignItems: 'center', + height: 25, + + flexDirection: 'row', + }, + topBarText: { + fontSize: 10, + color: colors.mainColor, + }, +}); diff --git a/src/pages/fullScreen/fullScreen.js b/src/pages/fullScreen/fullScreen.js new file mode 100644 index 0000000..7d813e8 --- /dev/null +++ b/src/pages/fullScreen/fullScreen.js @@ -0,0 +1,161 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, +} from 'react-native'; +import FastImage from 'react-native-fast-image' +var _ = require('lodash'); +import Toast, { DURATION } from 'react-native-easy-toast'; +import Switch from 'react-native-switch-pro'; +import { width, height } from '../../services/screen'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +//import Adyen from 'adyen-react-native'; + + +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class FullScreen extends React.Component { + @observable + select = false; + @observable + data = []; + + constructor(props) { + super(props); + this.store = props.appStore; + this.data = this.props.route.params.data; + } + + + + async componentWillMount() { } + + render() { + return ( + + + + + + { + this.props.navigation.goBack(); + }}> + + + + {/* + {this.store.text.manageMembers} + */} + + (this.select = !this.select)} + > + {/* + {this.select ? this.store.text.cancel : this.store.text.select} + */} + + + + + + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, + pointsTextView: { + fontSize: 25, + fontWeight: '800', + }, +}); diff --git a/src/pages/group/groupDetails.js b/src/pages/group/groupDetails.js new file mode 100644 index 0000000..d200309 --- /dev/null +++ b/src/pages/group/groupDetails.js @@ -0,0 +1,851 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, + useRef, + TouchableWithoutFeedback, + Keyboard, + TextInput, + BackHandler, +} from 'react-native'; +var _ = require('lodash'); +import Toast, { DURATION } from 'react-native-easy-toast'; +import moment from 'moment'; +import { Hoshi, Kaede, Kohana } from 'react-native-textinput-effects'; +import Switch from 'react-native-switch-pro'; +import { width, height } from '../../services/screen'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import HoshiTextInput from '../../components/hoshiTextInput'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import Modal from 'react-native-modal'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import HTMLView from 'react-native-htmlview'; +import { Modalize } from 'react-native-modalize'; +// import Modal, { ModalContent } from 'react-native-modals'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; + +const { SlideInMenu } = renderers; +const langList = [ + { label: '中文', value: 'hk' }, + { label: 'English', value: 'en' }, +]; + +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; + +FontAwesomeIcon.loadFont(); + + +@inject('appStore') +@observer +export default class GroupDetails extends React.Component { + @observable notification = true; + @observable lang = '中文'; + @observable data = null; + @observable otherData = null; + @observable isRecommend = true; + @observable totalamount = 0 + @observable totalDiscount = 0 + @observable introVisable = false + @observable modalizeRef = useRef(null); + @observable phone = '' + @observable signCheck = false + @observable salesRecord = [] + constructor(props) { + super(props); + this.store = props.appStore; + this.data = this.props.route.params.data; + // await this.store.getShippingOrderDate(); + + console.log(this.data) + this.isRecommend = this.props.route.params.isRecommend; + if (!this.isRecommend) { + this.otherData = this.props.route.params.otherShoppingGroupData; + this.findThisMonthTotalAmount() + } + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + if (this.otherData != null) { + this.init() + } + + } + + init() { + this.salesRecord = [] + this.otherData.members.map((member, index) => { + member.orders.map((items, itemsIndex) => { + console.log(moment(items.cutoffDate).format('DD-MM-YYYY HH:mm')) + if (moment(items.cutoffDate).valueOf() > moment().valueOf() && items.status == 'PA') { + this.salesRecord.push(items); + } + }); + }); + console.log(this.salesRecord) + } + + async componentWillMount() { } + async componentDidMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + + } + handleBackButtonClick() { + if (this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + this.props.navigation.navigate('Main') + } else { + this.props.navigation.goBack() + } + return true + } + + statusHandler(text) { + const lang = this.store.text; + switch (text) { + case 'PC': + return lang.pc; + break; + case 'PP': + return lang.pp; + break; + case 'PRV': + return lang.prv; + break; + case 'PRJ': + return lang.prj; + break; + case 'PA': + return lang.pa; + break; + case 'ARV': + return lang.arv; + break; + case 'FIN': + return lang.fin; + break; + case 'CAN': + return lang.can; + break; + case 'EXP': + return lang.exp; + case "VO": + return lang.vo; + break; + } + } + + + introOpen() { + this.modalizeRef.current ?.open(); + //this.refs.modalize.current ?.open(); + } + + addMemberAction() { + if (this.phone == '' || this.phone.length < 8) { + this.refs.toast.show('Please input the correct phone number ') + } else { + this.store.addMemberToGroup(this.phone, this) + } + } + + async findThisMonthTotalAmount() { + var index = await this.otherData.summaries.findIndex(element => element.month == moment().format('YYYYMM')) + console.log(index) + this.totalamount = this.otherData.summaries[index].amount + console.log(this.totalamount) + this.handleShoppingGroupMemberDiscount() + } + + + renderFreeShip(data) { + var price = 0 + if (moment(data.cutoffDate).valueOf() > moment().valueOf()) { + this.salesRecord.map((item, index) => { + if (data.deliveryDate == item.deliveryDate) { + price += item.totalPrice + } + }) + return ( + + {this.freeShipStringHandler(price)} + + ) + } + } + + freeShipStringHandler(price) { + if (price < this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == 4)].freeShippingMinAmount) { + var finalPrice = this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == 4)].freeShippingMinAmount - price + return (this.store.text.groupFreeShippingMessage1 + finalPrice + this.store.text.groupFreeShippingMessage2) + } else { + return (this.store.text.freeShipping) + } + } + + + renderMembers() { + if (this.otherData != null) { + var allSalesRecord = []; + this.otherData.members.map((member, index) => { + member.orders.map((items, itemsIndex) => { + var salesData = { + data: items, + name: member.member.name, + }; + allSalesRecord.push(salesData); + }); + }); + + allSalesRecord.sort((a, b) => { + return moment(b.data.deliveryDate).valueOf() - moment(a.data.deliveryDate).valueOf(); + }); + return allSalesRecord.map((items, index) => { + return ( + + + {this.store.text.member + ": " + items.name} + {this.store.text.orderStatus + ": " + this.statusHandler(items.data.status)} + {this.store.text.shippingDate + ": " + moment(items.data.deliveryDate).format('DD/MM/YYYY')} + {this.renderFreeShip(items.data)} + + {/* + {moment(items.date).format('DD/MM/YYYY hh:mm')} + */} + + {this.data.hasOwnProperty('head') && this.data.head.id == this.store.loginUserData.data.id ? ( + {this.store.priceHandler(items.data.totalPrice)} + ) : ()} + + + + ); + }); + } + } + + renderleaderOptionsButtons() { + const buttons = [ + { + id: 0, + icon: 'gift-outline', + name: this.store.text.redeemGifts, + }, + { + id: 1, + icon: 'account-outline', + name: this.store.text.manageMembers, + }, + { + id: 2, + icon: 'file-document-outline', + name: this.store.text.salesRecord, + }, + ]; + if (this.data.hasOwnProperty('head') && this.data.head.id == this.store.loginUserData.data.id) { + return buttons.map((item, index) => { + return ( + + { + const navigation = this.props.navigation; + switch (item.id) { + case 0: + navigation.navigate('RedeemGifts'); + break; + case 1: + navigation.navigate('ManageMembers', { + data: this.otherData.members, + }); + break; + case 2: + // if (this.otherData != null) { + // var allSalesRecord = []; + // this.otherData.members.map((member, index) => { + // member.orders.map((items, itemsIndex) => { + // var data = items; + // items.member = member; + // allSalesRecord.push(data); + // }); + // }); + // navigation.navigate('SalesRecord', { + // data: allSalesRecord, + // }); + // } + this.goToSalesRecordPageAction(); + + break; + } + }}> + + + {item.name} + + + + ); + }); + } + } + + renderInvateMember() { + if (this.data.hasOwnProperty('head') && this.data.head.id == this.store.loginUserData.data.id) { + return ( + + + this.phone = text} /> + + + { this.addMemberAction() }}> + + {this.store.text.addGroupMemeber} + + + + + ) + } + } + + async goToSalesRecordPageAction() { + const records = [ + { + record: [], + }, + { + record: [], + }, + { + record: [], + }, + { + record: [], + }, + { + record: [], + }, + ]; + + const dateType = ['today', 'yesterday', 'this week', 'this month', 'all']; + + await this.otherData.members.map(async (member, index) => { + await member.orders.map(async (items, itemsIndex) => { + items.member = member.member; + await dateType.forEach(async (dateItems, dateIndex) => { + if (this.recordFilter(dateItems, items.created)) { + await records[dateIndex].record.push(items); + } + }); + }); + }); + await console.log(records); + await this.props.navigation.navigate('SalesRecord', { + data: records, + }); + } + + recordFilter(which, date) { + switch (which) { + case 'today': + return moment().format('DDMMYYYY') == moment(date).format('DDMMYYYY'); + break; + case 'yesterday': + return ( + moment() + .subtract(1, 'days') + .format('DDMMYYYY') == moment(date).format('DDMMYYYY') + ); + break; + case 'this week': + return moment(date).isSame(new Date(), 'week'); + break; + case 'this month': + return moment(date).isSame(new Date(), 'month'); + break; + case 'all': + return true; + break; + } + } + + async joinAction() { + if (this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + this.store.quitShoppingGroup(this); + } else { + + this.introVisable = true + + } + } + + headNameReturn() { + if (this.data.hasOwnProperty('head')) { + return this.data.head.name + } else { + return this.store.text.notExist + } + } + + renderJoinButton() { + if (this.data.hasOwnProperty('head')) { + if (this.data.head.id != this.store.loginUserData.data.id) { + return ( + { + this.joinAction(); + }}> + + {this.store.loginUserData.data.hasOwnProperty('shoppingGroup') + ? this.store.text.leave + : this.store.text.join} + + + ) + } + } else { + return ( + { + this.joinAction(); + }}> + + {this.store.loginUserData.data.hasOwnProperty('shoppingGroup') + ? this.store.text.leave + : this.store.text.join} + + + ) + } + + } + + async handleShoppingGroupMemberDiscount() { + var total = 0; + await this.otherData.groupTargets.map(async (items, index) => { + if (moment().format('YYYYMM') == items.month) { + if (this.totalamount >= items.target) { + total += items.memberPercentAdd + } + } + }) + this.totalDiscount = total + this.data.memberBaseDiscountPercent + } + + async join() { + if (this.signCheck) { + await this.store.joinShoppingGroup(this.data.id, this); + this.introVisable = false + this.findThisMonthTotalAmount() + } else { + //this.refs.toast.show(this.store.text.pleaseAgreeFirst) + Alert.alert( + '', + this.store.text.pleaseAgreeFirst, + [ + { + text: this.store.text.sure, + style: "cancel", + }, + ], + { + cancelable: true, + onDismiss: () => { } + } + ); + } + } + + renderProgressBar() { + + if (!this.isRecommend) { + return ( + + {this.otherData.groupTargets.map((items, index) => { + console.log(items); + if (moment().format('YYYYMM') == items.month) { + return ( + + + {this.store.text.pointsGoal + + ' ' + + items.description + + ' ' + + this.totalamount + + ' / ' + + items.target} + + + + {/* + + {'+0.5%' + this.store.text.discount} + + */} + + + {items.memberPercentAdd + '%' + this.store.text.discount} + + + + + ); + } + })} + + ); + } + } + + render() { + return ( + + + + + + { + if (this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + this.props.navigation.navigate('Main') + } else { + this.props.navigation.goBack() + } + }}> + + + + + {this.data.name} + + + + + + + {this.renderleaderOptionsButtons()} + + {this.renderInvateMember()} + + + + + {this.data.name} + + + {this.otherData != null + ? this.store.text.numberOfMember + + ': ' + + this.otherData.members.length + : this.store.text.numberOfMember + ': --'} + + + + + {this.store.text.grpLeader + ': ' + this.headNameReturn()} + + {this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? ( { + Linking.openURL(`tel:${this.data.mobile}`); + }}> + + {this.store.text.grpLeader + + this.store.text.mobilephone + + ': '} + + {this.data.mobile} + + + ) : ( + + {this.store.text.grpLeader + + this.store.text.mobilephone + + ': '} + + {"--"} + + + )} + + {this.store.text.address + ": " + this.data.region.name + ', ' + this.data.district.name + ', ' + this.data.addr} + + + {this.renderJoinButton()} + + + + + {/* + + {'hihihihihi'} + + */} + + {/* */} + + + {this.store.text.groupDiscount} + + + + + {this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? this.totalDiscount + '%' : this.data.memberBaseDiscountPercent + "%"} + + + {this.renderProgressBar()} + + + + + + {this.store.text.member + this.store.text.shoppingHistory} + + {this.renderMembers()} + + + + + + {/* + {this.store.text.shoppingGroup} + */} + + this.introVisable = false}> + + + + + + + + + + + + { this.signCheck = !this.signCheck }}> + + + + {this.store.text.acceptShoppingGroup} + + + { + this.join() + }}> + + {this.store.text.join} + + + + + + + + + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, +}); diff --git a/src/pages/group/groupList.js b/src/pages/group/groupList.js new file mode 100644 index 0000000..a122f4a --- /dev/null +++ b/src/pages/group/groupList.js @@ -0,0 +1,216 @@ +import React, { Component } from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, + Image, + FlatList, + ScrollView +} from 'react-native'; +import { observable, action, transaction } from 'mobx'; +import { observer, inject } from 'mobx-react'; +var _ = require('lodash'); +import moment from 'moment' +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import GallerySwiper from 'react-native-gallery-swiper'; +import { colors } from '../../assets/styles/colors-theme'; +import TitleBar from '../../components/titleBar'; +import HTMLView from 'react-native-htmlview'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +// function +import { width, height } from '../../services/screen'; +Icon.loadFont(); + +//const log = new Log() +@inject('appStore') +@observer +export default class GroupList extends Component { + + + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + + } + componentDidMount() { + + } + + + + renderShoppingGroups() { + return this.store.recommendShoppingGroup.map((items, index) => { + return ( + { + this.props.navigation.navigate('GroupDetails', { + data: items, + isRecommend: true, + }); + }}> + + + {items.name} + + + + {/* + + {4 + '/' + 20} + */} + + + + + + ); + }); + } + + + + render() { + return ( + + + + {this.store.recommendShoppingGroup.length > 0 ? ( + + {this.renderShoppingGroups()} + ) : ( + + {this.store.text.noShoppingGroup} + + )} + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/group/manageMembers.js b/src/pages/group/manageMembers.js new file mode 100644 index 0000000..b77a69f --- /dev/null +++ b/src/pages/group/manageMembers.js @@ -0,0 +1,276 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, +} from 'react-native'; +var _ = require('lodash'); +import Toast, { DURATION } from 'react-native-easy-toast'; +import Switch from 'react-native-switch-pro'; +import { width, height } from '../../services/screen'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +const langList = [ + { label: '中文', value: 'hk' }, + { label: 'English', value: 'en' }, +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; + +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class ManageMembers extends React.Component { + @observable + select = false; + @observable + data = []; + @observable + fakeMembers = [ + { + name: 'Cilla Mok', + price: 1000, + date: '01/02/2021', + selected: false, + phone: 96783313, + }, + { + name: 'Kelly Chan', + price: 1250, + date: '01/02/2021', + selected: false, + phone: 54121355, + }, + { + name: 'Tommy Wong', + price: 5000, + date: '01/02/2021', + selected: false, + phone: 90213476, + }, + { + name: 'Rex Cheung', + price: 4000, + date: '02/02/2021', + selected: false, + phone: 50912345, + }, + { + name: 'Herry Cheung', + price: 2000, + date: '02/02/2021', + selected: false, + phone: 6543212, + }, + ]; + constructor(props) { + super(props); + this.store = props.appStore; + this.data = this.props.route.params.data; + } + + kickMemberAction(member) { + console.log(member); + } + + renderMember() { + return this.data.map((items, index) => { + return ( + + + + + {items.member.name} + + + + + {this.store.text.mobilephone} + + {items.member.mobile} + + + {/* + {this.store.text.spendingAmount} + + + {this.store.priceHandler(items.price)} + */} + + + + { + this.kickMemberAction(value); + }}> + + + + + {/* */} + + + + + + + ); + }); + } + + async componentWillMount() { } + + render() { + return ( + + + + + + { + this.props.navigation.goBack(); + }}> + + + + + {this.store.text.manageMembers} + + + (this.select = !this.select)} + > + {/* + {this.select ? this.store.text.cancel : this.store.text.select} + */} + + + + {this.renderMember()} + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, + pointsTextView: { + fontSize: 25, + fontWeight: '800', + }, +}); diff --git a/src/pages/group/redeemGifts.js b/src/pages/group/redeemGifts.js new file mode 100644 index 0000000..da9325d --- /dev/null +++ b/src/pages/group/redeemGifts.js @@ -0,0 +1,390 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, +} from 'react-native'; +var _ = require('lodash'); +import Toast, { DURATION } from 'react-native-easy-toast'; +import Switch from 'react-native-switch-pro'; +import { width, height } from '../../services/screen'; +import CustomLoginButon from '../../components/customLoginButton'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import Ionicons from 'react-native-vector-icons/dist/Ionicons'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +const langList = [ + { label: '中文', value: 'hk' }, + { label: 'English', value: 'en' }, +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; + +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class RedeemGifts extends React.Component { + @observable data = null; + @observable points = 1000; + @observable + fakeGifts = [ + { + id: 0, + name: '百佳500元現金卷', + points: 500, + qty: 0, + }, + { + id: 1, + name: '百佳300元現金卷', + points: 300, + qty: 0, + }, + { + id: 2, + name: '百佳100元現金卷', + points: 100, + qty: 0, + }, + { + id: 3, + name: '一田500元現金卷', + points: 500, + qty: 0, + }, + { + id: 4, + name: '一田300元現金卷', + points: 300, + qty: 0, + }, + ]; + + constructor(props) { + super(props); + this.store = props.appStore; + } + + async componentWillMount() { + this.store.getRedeemHistory() + } + + async componentDidMount() { + await this.store.getGiftList() + } + renderRemainPoints() { + var value = _.cloneDeep(this.store.loginUserData.data.shoppingGroupPoints); + this.store.gift.map((items, index) => { + value -= items.qty * items.price; + }); + return value; + } + + addAction(item) { + var value = _.cloneDeep(this.store.loginUserData.data.shoppingGroupPoints); + this.store.gift.map((items, index) => { + value -= items.qty * items.price; + }); + console.log(value); + value -= item.price; + + if (value >= 0) { + item.qty += 1; + } + } + + async redeemAction() { + var data = { items: [] } + await this.store.gift.map(async (items, index) => { + if (items.qty > 0) { + var gift = { giftId: items.id, qty: items.qty } + await data.items.push(gift) + } + }) + console.log(data) + if (data.items.length > 0) { + this.store.redeemGift(data, this); + } else { + this.refs.toast.show('Please Select the gifts') + } + } + + renderGifts() { + return this.store.gift.map((items, index) => { + return ( + + + + {items.name} + + + {'' + items.price + this.store.text.giftPoints} + + + + + + { + if (items.qty > 0) { + items.qty -= 1; + } + }} + style={{ + height: 50, + width: 25, + borderWidth: 1, + borderColor: colors.lineColor, + borderTopLeftRadius: 10, + borderBottomLeftRadius: 10, + backgroundColor: 'white', + alignItems: 'center', + justifyContent: 'center', + }}> + + - + + {/* */} + + + + {items.qty} + + + { + this.addAction(items); + }} + style={{ + height: 50, + width: 25, + borderWidth: 1, + backgroundColor: 'white', + borderColor: colors.lineColor, + borderTopRightRadius: 10, + borderBottomRightRadius: 10, + alignItems: 'center', + justifyContent: 'center', + }}> + + + + + {/* */} + + + + + + ); + }); + } + + render() { + return ( + + + + + { + this.props.navigation.goBack(); + }}> + + + + + + {this.store.text.redeemGifts} + + + {this.props.navigation.navigate('RedeemRecord')}} + style={{ + flex: 0.2, + justifyContent: 'center', + alignItems: 'center', + }}> + + {this.store.text.redeemRecord} + + + + + + + {'' + this.store.loginUserData.data.shoppingGroupPoints} + {this.store.text.yourPoints} + + + + {'' + this.renderRemainPoints()} + + + {this.store.text.remainingPoints} + + + + + {this.renderGifts()} + + { this.redeemAction() }} /> + + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + marginRight: 20, + marginLeft: 20, + // marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, + pointsTextView: { + fontSize: 25, + fontWeight: '800', + }, +}); diff --git a/src/pages/group/salesRecord.js b/src/pages/group/salesRecord.js new file mode 100644 index 0000000..8939275 --- /dev/null +++ b/src/pages/group/salesRecord.js @@ -0,0 +1,373 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, + Dimensions, +} from 'react-native'; +var _ = require('lodash'); +import Toast, {DURATION} from 'react-native-easy-toast'; +import {TabView, SceneMap, TabBar} from 'react-native-tab-view'; +import Switch from 'react-native-switch-pro'; +import {width, height} from '../../services/screen'; +import {images} from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import {inject, observer} from 'mobx-react'; +import {colors} from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import {getStatusBarHeight} from 'react-native-status-bar-height'; +import {observable} from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import SalesRecordPage from './salesRecordPage'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const {SlideInMenu} = renderers; +const initialLayout = {width: width}; +const langList = [ + {label: '中文', value: 'hk'}, + {label: 'English', value: 'en'}, +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; + +const renderTabBar = props => ( + +); +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class SalesRecord extends React.Component { + @observable + select = false; + @observable + data = null; + @observable + tabData = { + index: 0, + setIndex: 0, + }; + + @observable + fakeMembers = [ + { + name: 'Cilla Mok', + price: 1000, + date: '01/02/2021', + selected: false, + phone: 96783313, + }, + { + name: 'Kelly Chan', + price: 1250, + date: '01/02/2021', + selected: false, + phone: 54121355, + }, + { + name: 'Tommy Wong', + price: 5000, + date: '01/02/2021', + selected: false, + phone: 90213476, + }, + { + name: 'Rex Cheung', + price: 4000, + date: '02/02/2021', + selected: false, + phone: 50912345, + }, + { + name: 'Herry Cheung', + price: 2000, + date: '02/02/2021', + selected: false, + phone: 6543212, + }, + ]; + constructor(props) { + super(props); + this.store = props.appStore; + this.data = this.props.route.params.data; + console.log(this.data); + } + + kickMemberAction(member) { + console.log(member); + } + + recordView = record => ( + + {this.renderMember(record)} + + ); + + sortDate(data) { + return data.sort((a, b) => { + return b.created - a.created; + }); + } + + renderScene = ({route}) => { + switch (route.key) { + case '0': + //today + return ( + + ); + case '1': + //yesterday + return ( + + ); + case '2': + //this week + return ( + + ); + case '3': + //this month + return ( + + ); + case '4': + //all + return ( + + ); + default: + return null; + } + }; + + handleIndexChange = index => { + this.tabData.setIndex = index; + }; + + renderMember(record) { + return record.map((items, index) => { + return ( + + + + + {items.name} + + + + + {this.store.text.mobilephone} + + {items.phone} + + + + {this.store.text.spendingAmount} + + + {this.store.priceHandler(items.price)} + + + + + { + this.kickMemberAction(value); + }}> + + + + + + + + + + + + ); + }); + } + + async componentWillMount() {} + + render() { + return ( + + + + + + { + this.props.navigation.goBack(); + }}> + + + + + {this.store.text.salesRecord} + + + (this.select = !this.select)} + > + {/* + {this.select ? this.store.text.cancel : this.store.text.select} + */} + + + + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, + pointsTextView: { + fontSize: 25, + fontWeight: '800', + }, +}); diff --git a/src/pages/group/salesRecordPage.js b/src/pages/group/salesRecordPage.js new file mode 100644 index 0000000..d08abbf --- /dev/null +++ b/src/pages/group/salesRecordPage.js @@ -0,0 +1,167 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, + Dimensions, +} from 'react-native'; +var _ = require('lodash'); +import moment from 'moment'; +import Toast, {DURATION} from 'react-native-easy-toast'; +import {TabView, SceneMap} from 'react-native-tab-view'; +import Switch from 'react-native-switch-pro'; +import {width, height} from '../../services/screen'; +import {images} from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import {inject, observer} from 'mobx-react'; +import {colors} from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import {getStatusBarHeight} from 'react-native-status-bar-height'; +import {observable} from 'mobx'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import * as Progress from 'react-native-progress'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +import MaterialIcon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const {SlideInMenu} = renderers; +const initialLayout = {width: width}; +const langList = [ + {label: '中文', value: 'hk'}, + {label: 'English', value: 'en'}, +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; + +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class SalesRecordPage extends React.Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + + async componentWillMount() {} + + render() { + return ( + + + {this.props.record.map((items, index) => { + return ( + { + this.props.navigation.navigate('Order', { + order: false, + data: items, + }); + }} + style={{flex: 1, height: 70, justifyContent: 'center'}}> + + + + {items.member.name} + + + + + {this.store.text.orderDate} + + + {moment(items.created).format('DD/MM/YYYY hh:mm')} + + + + + {this.store.text.spendingAmount} + + + {' '} + {this.store.priceHandler(items.amount)} + + + + + + ); + })} + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + subView: { + marginTop: 20, + width: width - 40, + }, + labelText: { + color: colors.labelColor, + fontSize: 12, + }, + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.lineColor, + marginTop: 20, + }, + pointsTextView: { + fontSize: 25, + fontWeight: '800', + }, +}); diff --git a/src/pages/main/main.js b/src/pages/main/main.js new file mode 100644 index 0000000..809557a --- /dev/null +++ b/src/pages/main/main.js @@ -0,0 +1,805 @@ +import React, { useEffect } from 'react'; +import TitleBar from '../../components/titleBar'; +import { colors } from '../../assets/styles/colors-theme'; +import { + SafeAreaView, + Text, + Image, + ImageBackground, + View, + ScrollView, + TouchableOpacity, + RefreshControl, + StyleSheet, + BackHandler, + AppState +} from 'react-native'; +import { inject, observer } from 'mobx-react'; +var _ = require('lodash'); +import FastImage from 'react-native-fast-image' +import Toast, { DURATION } from 'react-native-easy-toast'; +import CategoriesItems from '../../components/categoriesItems'; +import { width, height } from '../../services/screen'; +import Loading from '../../components/Loading'; +import Ionicons from 'react-native-vector-icons/dist/Ionicons'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import { images } from '../../assets/images/imageIndex'; +import Swiper from 'react-native-swiper'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import Mostcheaplist from '../../components/mostcheaplist'; +import YouMayLike from '../../components/youMayLikeItems'; +import AsyncStorage from '@react-native-community/async-storage'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +import YouMayLikeItems from '../../components/youMayLikeItems'; +import { s, vs, ms } from 'react-native-size-matters'; + +const { SlideInMenu } = renderers; + +@inject('appStore') +@observer +export default class Main extends React.Component { + @observable + catalogue = []; + @observable + subCatalogue = [{ name: '全部', id: '1234' }]; + @observable + subCatalogueName = '全部'; + @observable + catalogueImageUri = ''; + @observable + productItems = []; + @observable + appState: AppState.currentState; + @observable + sortUpDown = false; + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + async componentDidMount() { + + AppState.addEventListener('change', this._handleAppStateChange); + this._unsubscribe = this.props.navigation.addListener('focus', () => { + this.store.getNotificationsMessage(); + }); + const value = await AsyncStorage.getItem('first'); + if (value !== null) { + + } else { + this.props.navigation.navigate('Tutorial') + AsyncStorage.setItem('first', 'true'); + + } + + } + _handleAppStateChange = (nextAppState) => { + this.store.getNotificationsMessage(); + this.appState = nextAppState + } + + + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + componentWillUnmount() { + AppState.removeEventListener('change', this._handleAppStateChange); + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + this._unsubscribe(); + this.store.getNotificationsMessage(); + + } + + handleBackButtonClick() { + this.sortUpDown = false; + this.productItems = []; + this.subCatalogue = [{ name: '全部', id: '1234' }]; + this.subCatalogueName = '全部'; + this.store.catalogueSelected = null; + this.props.navigation.navigate('Main') + return true; + } + + async addFavouriteAction(item) { + if ( + (await this.store.favorite.findIndex(element => element.id == item.id)) != + -1 + ) { + this.refs.toast.show(this.store.text.alreadyExistsInMyList); + } else { + console.log('addFavourite'); + this.store.addFavouritePost(item, this); + } + } + + renderShoppingGroups() { + return this.store.recommendShoppingGroup.map((items, index) => { + return ( + { + this.props.navigation.navigate('GroupDetails', { + data: items, + isRecommend: true, + }); + }}> + + + {items.name} + + + + {/* + + {4 + '/' + 20} + */} + + + + + + ); + }); + } + + sortProduct() { + var newArray = [...this.productItems]; + if (this.sortUpDown) { + this.productItems = newArray.sort((a, b) => + a.price < b.price ? 1 : b.price < a.price ? -1 : 0, + ); + } else { + this.productItems = newArray.sort((a, b) => + a.price > b.price ? 1 : b.price > a.price ? -1 : 0, + ); + } + } + + renderCatalogueFilter() { + if (this.store.catalogueSelected != null) { + var productItem = []; + var matrix = []; + var newProductItem = []; + var count = 0; + // productItem = this.store.allProducts.filter( + // items => items.categories[0].name == this.store.catalogueSelected, + // ); + productItem = this.productItems; + productItem.map((items, index) => { + count += 1; + matrix.push(items); + if (count % 2 == 0) { + newProductItem.push(matrix); + matrix = []; + console.log(matrix); + } + }); + if (matrix.length > 0) { + newProductItem.push(matrix); + matrix = []; + } + + console.log(newProductItem); + + return newProductItem.map((items, index) => { + return ( + + {items.map((item, index) => { + return ( + + { + this.addFavouriteAction(item); + }} + onPress={() => { + console.log(item); + var newData = _.cloneDeep(item); + newData.buyCount = 1; + this.store.addSingleItemToShoppingCart( + _.cloneDeep(newData), + this, + ); + }} + /> + + ); + })} + + ); + }); + } + } + + renderYouMayLike() { + if (this.store.youMayLikeList.length > 0) { + return this.store.youMayLikeList.map((items, index) => { + return ( + { + var newData = _.cloneDeep(items); + newData.buyCount = 1; + this.store.addSingleItemToShoppingCart( + _.cloneDeep(newData), + this, + ); + }} + /> + ); + }); + } else { + return ; + } + } + + renderList() { + if (this.store.topSale != null) { + return this.store.topSale.map((items, index) => { + return ( + { + var newData = _.cloneDeep(items); + newData.buyCount = 1; + this.store.addSingleItemToShoppingCart( + _.cloneDeep(newData), + this, + ); + }} + /> + ); + }); + } else { + return ; + } + } + + addSubCatalogue(item) { + if (item.subCat.length > 1) { + item.subCat.map((items, index) => { + this.subCatalogue.push(items); + }); + console.log(this.subCatalogue); + } + } + + renderCatalogue() { + return this.store.allCategories.map((items, index) => { + var showImage = false; + if (items.hasOwnProperty('imgURL')) { + showImage = true; + } + return ( + { + this.sortUpDown = false; + console.log(this.sortUpDown); + this.store.getcategoriesProducts(items.id, this); + //this.addSubCatalogue(items); + this.store.catalogueSelected = items.name; + if (items.hasOwnProperty('imgURL')) { + this.catalogueImageUri = ''; + } else { + this.catalogueImageUri = items.images[0].src; + } + }} + style={{ + justifyContent: 'center', + margin: 5, + borderRadius: 10, + width: s(90), + height: s(90), + backgroundColor: colors.inputBgc, + alignItems: 'center', + }}> + {showImage ? ( + + + + + + {items.name} + + + + ) : ( + + + + {items.name} + + + + )} + + ); + }); + } + + async productsSubfilter(id) { + console.log(id); + if (id == '1234') { + this.productItems = [...this.store.allProducts]; + this.sortProduct(); + } else { + var newData = await this.store.allProducts.filter(function (item) { + return item.categories[0].id == id; + }); + this.productItems = [...newData]; + this.sortProduct(); + } + } + + renderShoppingGroup() { + if (this.store.loginUserData == null || this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + return ( + + ) + } else { + return ( + + + + {this.store.text.shoppingGroup + + this.store.text.recommend} + + + + {this.renderShoppingGroups()} + + + ) + } + } + + render() { + return ( + + + {this.store.catalogueSelected == null ? ( + + ) : ( + + + { + this.sortUpDown = false; + this.productItems = []; + this.subCatalogue = [{ name: '全部', id: '1234' }]; + this.subCatalogueName = '全部'; + this.store.catalogueSelected = null; + }}> + + + + + {this.store.catalogueSelected} + + + + { this.props.navigation.navigate('Search') }}> + + + { this.props.navigation.navigate('ShoppingCart') }}> + + + + + {this.store.shoppingCartList.length} + + + + + + + )} + + this.store.getAllProductFromStart(this)} + // /> + // } + > + {this.store.catalogueSelected == null ? ( + + + + + {this.store.banners.map((items, index) => { + return ( + { + if (items.hasOwnProperty('tags')) { + this.store.SearchTag(items.tags, this); + this.store.catalogueSelected = items.tags; + } + }} + style={{ + justifyContent: 'center', + alignItems: 'center', + }}> + + + ); + })} + + + + {this.store.text.categories} + + + + + + {this.renderCatalogue()} + + + + + {this.store.news.map((items, index) => { + return ( + { this.props.navigation.navigate('News', { data: items }) }} + style={{ + justifyContent: 'center', + alignItems: 'center', + }}> + + + ); + })} + + + + + {/* {this.renderShoppingGroup()} */} + + ) : ( + + + {/* { + this.sortUpDown = false; + this.productItems = []; + this.subCatalogue = [{name: '全部', id: '1234'}]; + this.subCatalogueName = '全部'; + this.store.catalogueSelected = null; + console.log(this.sortUpDown); + }}> + + + {this.store.catalogueSelected} + + */} + {/* + { + + this.subCatalogueName = value.name; + this.productsSubfilter(value.id); + }}> + + + + + {'分類:'} + + + {this.subCatalogueName} + + + + + + {this.subCatalogue.map((obj, i) => { + return ; + })} + + + + */} + { + this.sortUpDown = !this.sortUpDown; + console.log(this.sortUpDown); + this.sortProduct(); + }}> + + {this.store.text.sortby} + + + + + + {this.store.text.price} + + + {/* */} + + + {this.renderCatalogueFilter()} + + )} + + + + ); + } +} +const styles = StyleSheet.flatten({ + shoppingGroupText: { + fontWeight: '800', + fontSize: 15, + }, + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, +}); diff --git a/src/pages/news/news.js b/src/pages/news/news.js new file mode 100644 index 0000000..851b392 --- /dev/null +++ b/src/pages/news/news.js @@ -0,0 +1,204 @@ +import React, { Component } from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, + Image, + ScrollView +} from 'react-native'; +import { observable, action, transaction } from 'mobx'; +import { observer, inject } from 'mobx-react'; +var _ = require('lodash'); +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import GallerySwiper from 'react-native-gallery-swiper'; +import { colors } from '../../assets/styles/colors-theme'; +import TitleBar from '../../components/titleBar'; +import HTMLView from 'react-native-htmlview'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +// function +import { width, height } from '../../services/screen'; +Icon.loadFont(); + +//const log = new Log() +@inject('appStore') +@observer +export default class News extends Component { + @observable + data = this.props.route.params.data; + @observable + imageData = []; + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + this.data.images.map((items, index) => { + var data = { + uri: items.imageURL, + }; + this.imageData.push(data); + }); + } + componentDidMount() { + console.log(this.data) + } + + saveAction() { + if (this.data.last_name != '') { + if (this.data.first_name != '') { + this.store.editName(this.data, this); + } else { + this.refs.toast.show(this.store.text.pleaseInputFirstName); + } + } else { + this.refs.toast.show(this.store.text.pleaseInputLastName); + } + } + + render() { + return ( + + + + + + {/* */} + + + + + + + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/notificaation/notification.js b/src/pages/notificaation/notification.js new file mode 100644 index 0000000..3931b03 --- /dev/null +++ b/src/pages/notificaation/notification.js @@ -0,0 +1,229 @@ +import React, { Component } from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, + Image, + FlatList +} from 'react-native'; +import { observable, action, transaction } from 'mobx'; +import { observer, inject } from 'mobx-react'; +var _ = require('lodash'); +import moment from 'moment' +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import GallerySwiper from 'react-native-gallery-swiper'; +import { colors } from '../../assets/styles/colors-theme'; +import TitleBar from '../../components/titleBar'; +import HTMLView from 'react-native-htmlview'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +// function +import { width, height } from '../../services/screen'; +Icon.loadFont(); + +//const log = new Log() +@inject('appStore') +@observer +export default class Notification extends Component { + + + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + this.store.getNotificationsMessage(); + } + componentDidMount() { + this.store.allRead() + } + renderItem = ({ item }) => { + + return ( + { this.showMessage(item) }}> + + + {item.title} + + + + + {moment(item.date).format('DD/MM/YYYY')} + + + + ); + }; + + sortDate(data) { + return data.sort((a, b) => { + return moment(b.date).format('YYYYMMDDhhmmss') - moment(a.date).format('YYYYMMDDhhmmss') + }); + } + + + showMessage(data) { + Alert.alert( + data.title, + data.message, + [ + { + text: this.store.text.sure, + style: "cancel", + }, + ], + { + cancelable: true, + onDismiss: () => + Alert.alert( + "This alert was dismissed by tapping outside of the alert dialog." + ), + } + ); + } + + + render() { + return ( + + + { this.store.deleteNotifications() }} + /> + + + + {this.store.text.title} + + + + + {this.store.text.date} + + + + item.id} + + /> + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/order/order.js b/src/pages/order/order.js new file mode 100644 index 0000000..588df99 --- /dev/null +++ b/src/pages/order/order.js @@ -0,0 +1,2152 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + ScrollView, + Keyboard, + TouchableWithoutFeedback, + StyleSheet, + TextInput, + Alert, + Platform, + Linking +} from 'react-native'; +var _ = require('lodash'); +import Modal from 'react-native-modal'; +import HoshiTextInput from '../../components/hoshiTextInput'; +import Dialog from "react-native-dialog"; +import { inject, observer } from 'mobx-react'; +import moment from 'moment'; +import { observable } from 'mobx'; +import { images } from '../../assets/images/imageIndex'; +import DatePicker from 'react-native-date-picker'; +import FastImage from 'react-native-fast-image'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import DateTimePicker from '@react-native-community/datetimepicker'; +import CheckAnimate from '../../components/checkAnimate'; +import { width, height } from '../../services/screen'; +import Loading from '../../components/Loading'; +import CustomLoginButon from '../../components/customLoginButton'; +import { colors } from '../../assets/styles/colors-theme'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { launchCamera, launchImageLibrary } from 'react-native-image-picker'; +import IonIcon from 'react-native-vector-icons/dist/Ionicons'; +import CustomTextInput from '../../components/customTextInput'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +Icon.loadFont(); +@inject('appStore') +@observer +export default class Order extends React.Component { + @observable + paymentseletion = [ + { label: 'Visa', value: 0 }, + // { label: this.store.text.cashOnDelivery, value: 1 }, + { label: this.store.text.fpsorpayme, value: 2 }, + // {label: 'Alipay', value: 1}, + ]; + + @observable + isOrder = true; + @observable + selectDateCheck = false; + @observable + usingDiscount = false + @observable + data = null; + @observable + discountPrice = '0' + @observable + shippingSelection = [ + // { label: '門市自取', value: 0, price: 0, freeShippingPrice: 0 }, + { + label: '送到上門(滿' + '200' + '免運費)', + value: 0, + price: 0, + freeShippingPrice: 0, + }, + ]; + + @observable + paymentSelected = 0; + + @observable + payDisable = false; + + @observable + shippingSelected = 0; + + @observable + coupon1 = '0'; + @observable + coupon2 = ''; + @observable + coupon2Correct = false; + @observable + coupon2Index = null; + @observable + shippingPrice = 50; + @observable + totalProductsPrice = 0; + @observable + discountProducts = []; + @observable + normalProducts = []; + @observable + discountTotalPrice = 0; + @observable + discountProductsEnable = false; + @observable + totalPrice = 0; + @observable + shippingDate = new Date(); + @observable + freeShip = false; + @observable showDatePicker = false; + @observable + uploadImage = null; + @observable + dateWithoutHoliday = []; + @observable + shoppingGroup = null; + @observable + totalamount = 0; + @observable + totalDiscount = 0; + @observable + discountTitle = '' + @observable + cancelOrderVisable = false + @observable + cancelOrderReason = '' + + constructor(props) { + super(props); + this.store = props.appStore; + this.isOrder = this.props.route.params.order; + if (!this.isOrder) { + this.data = this.props.route.params.data; + console.log(this.data) + this.data.items.map((products, index) => { + if (products.hasOwnProperty('discount')) { + console.log('test') + this.discountTitle = products.discount.name + this.discountTotalPrice += products.discount.discountAmount + } + }) + if (this.data.discounts.length > 0) { + console.log('test1') + this.discountTitle = this.data.discounts[0].name + this.discountTotalPrice = this.data.discounts[0].discountAmount + + } + if (this.data.status == 'PRJ') { + this.paymentSelected = 2 + } + } + } + statusHandler(text) { + const lang = this.store.text; + switch (text) { + case 'PC': + return lang.pc; + break; + case 'PP': + return lang.pp; + break; + case 'PRV': + return lang.prv; + break; + case 'PRJ': + return lang.prj; + break; + case 'PA': + return lang.pa; + break; + case 'ARV': + return lang.arv; + break; + case 'FIN': + return lang.fin; + break; + case 'CAN': + return lang.can; + break; + case 'EXP': + return lang.exp; + case "VO": + return lang.vo; + break; + } + } + + async componentWillMount() { + await this.store.getShippingOrderDate(); + await this.getUserShoppingGroup(); + await this.store.getPoints(); + await this.cloneOrderList(); + await this.store.getCoupons(this); + await this.store.getDiscount(); + await this.store.getShipppingMethods(this); + this.shippingDate = await this.minOrderDateHandler(); + if (this.store.creditCardinfo != null) { + this.paymentseletion[0].label = + this.store.text.creditCard + + ' ' + + '**** **** **** ' + + this.store.creditCardinfo.number; + } + this.countTotalPrice(); + if (this.store.orderList.findIndex(element => element.on_sale == true) > -1) { + this.usingDiscount = true + + } + + if (this.usingDiscount) { + this.countDiscount() + } + console.log(this.discountPrice) + + } + + componentDidMount() { + this.shippingPriceReturn(); + } + + async getUserShoppingGroup() { + await this.store.getOwnShoppingGroup(this, true, false); + this.findThisMonthTotalAmount() + } + + saveImageHandler(image) { + var photoId = this.store.idGenerator(); + console.log(photoId); + return { + id: photoId, + name: photoId + '.jpg', + createDate: new Date(), + uri: image.uri, + mime: image.type, + height: image.height, + width: image.width, + }; + } + + saveAndroidImageHandler(image) { + var photoId = this.store.idGenerator(); + return { + id: photoId, + name: photoId + '.jpg', + createDate: new Date(), + uri: image.uri, + mime: image.type, + height: image.height, + width: image.width, + }; + } + + minOrderDateHandler() { + if (this.store.shippingOrderDate.order_cutoff_time != null) { + if (parseInt(moment().format('HHmm')) < parseInt(this.store.shippingOrderDate.order_cutoff_time)) { + return moment(this.store.dateWithoutHoliday[0].date).toDate(); + } else { + return moment(this.store.dateWithoutHoliday[0].date).add('days', 1).toDate() + } + } else { + return moment(this.store.dateWithoutHoliday[0].date).toDate(); + } + + } + + maxOrderDateHandler() { + return moment( + this.store.dateWithoutHoliday[this.store.dateWithoutHoliday.length - 1].date, + ).toDate(); + } + + changeDate(date) { + var selectedDateIndex = this.store.shippingOrderDate.available_delivery_dates.findIndex( + element => element.date == moment(date).format('YYYY-MM-DD'), + ); + console.log(selectedDateIndex); + if ( + this.store.shippingOrderDate.available_delivery_dates[selectedDateIndex] + .holiday + ) { + this.shippingDate = this.minOrderDateHandler(); + this.refs.toast.show( + this.store.shippingOrderDate.available_delivery_dates[selectedDateIndex] + .description, + ); + } else { + this.shippingDate = moment(date).toDate(); + } + } + + shippingPriceReturn(which) { + if (this.store.shippingMethods.length > 0) { + var shipToHome = this.store.shippingMethods.findIndex( + element => element.type == 1, + ); + + var takeGoodsInShop = this.store.shippingMethods.findIndex( + element => element.type == 0, + ); + + if (takeGoodsInShop != -1) { + this.shippingSelection = [ + { + label: '門市自取', + value: 0, + price: 0, + id: this.store.shippingMethods[takeGoodsInShop].id, + freeShippingPrice: parseFloat( + this.store.shippingMethods[shipToHome].free_shipping_min_amount, + ), + }, + { + freeShippingPrice: parseFloat( + this.store.shippingMethods[shipToHome].free_shipping_min_amount, + ), + id: this.store.shippingMethods[shipToHome].id, + label: + '送到上門(滿' + + this.store.priceFormatReturn( + parseFloat( + this.store.shippingMethods[shipToHome] + .free_shipping_min_amount, + ), + ) + + '免運費)', + value: 1, + price: parseFloat(this.store.shippingMethods[shipToHome].fee), + }, + ]; + } + } + } + + renderShippingSelection(items) { + return ( + { + this.shippingSelected = items.value; + this.countTotalPrice(); + }}> + + {items.value === this.shippingSelected ? ( + + ) : ( + + )} + {items.label} + + + + {this.store.priceFormatReturn(items.price)} + + + + ); + } + + cloneOrderList() { + this.normalProducts = []; + this.store.orderList.map((items, index) => { + this.normalProducts.push(_.cloneDeep(items)); + }); + } + + renderPaymentSelection(items) { + return ( + (this.paymentSelected = items.value)}> + {items.value === this.paymentSelected ? ( + + ) : ( + + )} + {items.label} + + ); + } + + + async orderAction() { + var cutoffDate = []; + if (this.store.nowDate != null && + parseInt(moment(this.store.nowDate).format('DD')) == parseInt(moment().format('DD'))) { + if (this.store.loginUserData.data.mobile != null) { + if (this.store.addresses.length > 0) { + // if (this.store.creditCardinfo != null || this.paymentSelected != 0) { + + var data = { + usePoints: this.coupon1, + deliveryDate: moment(this.shippingDate).format('YYYY-MM-DD'), + items: [], + // coupons: { + // couponsId: this.coupon2, + // }, + discounts: [], + coupons: [], + }; + + if (this.store.discount.length > 0) { + if (this.store.discount[0].type == 0) { + const on_saleIndex = await this.store.orderList.findIndex(e => e.on_sale == true) + if (on_saleIndex >= 0) { + var discountData = { + discountId: this.store.discount[0].id + } + data.discounts.push(discountData) + } + } + } + if (this.coupon2 != '' && this.coupon2Correct) { + var coupon = { + couponId: this.coupon2, + }; + data.coupons.push(coupon); + } + await this.store.orderList.map(async (items, index) => { + var orderData = { + itemId: items.id, + qty: items.buyCount, + }; + if (this.store.discount.length > 0 && items.on_sale) { + if (this.store.discount[0].type > 0) { + orderData.discount = { + discountId: this.store.discount[0].id + } + } + } + if (items.hasOwnProperty('deliveryCutoffDate')) { + cutoffDate.push(items) + } + await data.items.push(orderData); + }); + console.log(data); + if (this.props.route.params.order) { + if (this.selectDateCheck) { + if (cutoffDate.length > 0) { + var cutoffIndex = 1; + cutoffIndex = await cutoffDate.findIndex(e => moment(this.shippingDate).valueOf() > moment(e.deliveryCutoffDate).valueOf()) + console.log(moment(cutoffDate[0].deliveryCutoffDate).valueOf()) + console.log(moment(this.shippingDate).valueOf()) + console.log(cutoffIndex) + if (cutoffIndex >= 0) { + Alert.alert( + this.store.text.pleaseSelectAnotherDeiveryDate, + cutoffDate[cutoffIndex].name + " " + this.store.text.lastDeliveryDate + " " + moment(cutoffDate[cutoffIndex].deliveryCutoffDate).format('DD/MM/YYYY'), + [ + { + text: "OK", + onPress: () => { }, + style: "cancel", + }, + ], + + ); + } else { + if (parseInt(moment(this.shippingDate).format('DD')) != parseInt(moment(this.store.dateWithoutHoliday[0].date).format('DD'))) { + this.store.postOrder(data, this); + } else { + if (parseInt(moment().format('HHmm')) < parseInt(this.store.shippingOrderDate.order_cutoff_time)) { + this.store.postOrder(data, this); + } else { + Alert.alert('', 'Error', [ + { + text: this.store.text.sure, + onPress: () => { + this.props.navigation.goBack() + }, + }, + ]); + } + } + } + } else { + if (parseInt(moment(this.shippingDate).format('DD')) != parseInt(moment(this.store.dateWithoutHoliday[0].date).format('DD'))) { + this.store.postOrder(data, this); + } else { + if (parseInt(moment().format('HHmm')) < parseInt(this.store.shippingOrderDate.order_cutoff_time)) { + this.store.postOrder(data, this); + } else { + Alert.alert('', 'Error', [ + { + text: this.store.text.sure, + onPress: () => { + this.props.navigation.goBack() + }, + }, + ]); + } + } + } + + } else { + this.refs.toast.show(this.store.text.pleasePickTheShippingDate) + } + } else { + if (this.paymentSelected == 0) { + if (this.store.creditCardinfo != null || this.paymentSelected != 0) { + this.store.payByCreditCard(this.data.id, this) + } else { + this.refs.toast.show('請先加入信用卡'); + } + } else if (this.paymentSelected == 1) { + this.store.payBycash(this.data.id, this) + } else { + if (this.uploadImage != null) { + this.store.payByBank(this.data.id, this.uploadImage.uri, this) + } else { + this.refs.toast.show('Please upload image') + } + } + } + // } else { + // this.refs.toast.show('請先加入信用卡'); + // } + } else { + this.refs.toast.show('請先加入地址'); + } + } else { + Alert.alert('', '請先加入電話號碼', [ + { text: '取消', onPress: () => console.log('Cancel') }, + { + text: '加入', + onPress: () => { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + }, + }, + ]); + } + } else { + Alert.alert('', 'Error', [ + { + text: this.store.text.sure, + onPress: () => { + this.props.navigation.goBack() + }, + }, + ]); + } + + } + + async coupon2OnChangeText(text) { + this.coupon2 = text; + console.log(this.coupon2); + console.log(this.store.coupons); + var index = this.store.coupons.findIndex(element => element.id === text); + console.log(index); + if (index != -1) { + console.log('index != -1'); + var coupon = this.store.coupons[index]; + + if (coupon.limitPerUser > coupon.userUsed || coupon.limitPerUser == 0) { + if (this.totalProductsPrice >= coupon.minAmount) { + this.coupon2Correct = true; + this.coupon2Index = index; + console.log(index); + console.log(this.totalProductsPrice); + } else { + console.log(this.totalProductsPrice); + + this.coupon2 = ''; + this.refs.toast.show( + '此優惠券需要購買總數超過' + + this.store.priceFormatReturn(parseFloat(coupon.minAmount)) + + '的産品', + ); + } + } else { + this.coupon2 = ''; + this.refs.toast.show('已超過優惠券使用次數'); + } + } else { + this.coupon2Correct = false; + this.coupon2Index = null; + this.discountProductsEnable = false; + this.discountProducts = []; + this.discountTotalPrice = 0; + this.cloneOrderList(); + } + this.countTotalPrice(); + } + + checkPrice(price) { + if (price <= this.store.coupons[this.coupon2Index].minAmount) { + this.coupon2 = ''; + this.refs.toast.show( + '此優惠券需要購買總數超過' + + this.store.priceFormatReturn( + parseFloat(this.store.coupons[this.coupon2Index].minAmount), + ) + + '的優惠券支持的産品價格', + ); + this.coupon2Correct = false; + this.coupon2Index = null; + this.discountProductsEnable = false; + this.discountProducts = []; + this.discountTotalPrice = 0; + this.cloneOrderList(); + } + } + + async discountProductsHandler(which, ids) { + this.discountTotalPrice = 0; + this.discountProducts = []; + if (which) { + await ids.forEach(element => { + this.store.orderList.map((items, index) => { + if (items.id == element) { + this.normalProducts.splice( + this.normalProducts.findIndex( + normalItem => normalItem.id == element, + ), + 1, + ); + this.discountTotalPrice += parseFloat(items.price) * items.buyCount; + this.discountProducts.push(_.cloneDeep(items)); + } + }); + }); + console.log(this.discountProducts); + } else { + await ids.forEach(element => { + this.store.orderList.map((items, index) => { + items.categories.map((categoriesItems, index) => { + if (categoriesItems.id == element) { + this.normalProducts.splice( + this.normalProducts.findIndex( + normalItem => normalItem.id == items.id, + ), + 1, + ); + this.discountTotalPrice += + parseFloat(items.price) * items.buyCount; + this.discountProducts.push(_.cloneDeep(items)); + } + }); + }); + }); + console.log(this.discountProducts); + this.store.removeDuplicates(this.discountProducts, it => it.id); + } + } + + async exclude_sale_itemsHandler() { + this.x = 0; + this.discountProducts = []; + await this.store.orderList.map(async (items, index) => { + if (!items.on_sale) { + await this.normalProducts.splice( + this.normalProducts.findIndex(element => element.id == items.id), + 1, + ); + await this.discountProducts.push(_.cloneDeep(items)); + this.discountTotalPrice += parseFloat(items.price) * items.buyCount; + } + }); + console.log(this.discountProducts); + } + + imagepick(which) { + if (which == 1) { + + launchCamera({ mediaType: 'photo' }, response => { + console.log(response); + //var response = image; + if (response.hasOwnProperty('errorMessage')) { + Alert.alert( + "", + this.store.text.openCamera, + [ + { + text: "ok", + onPress: () => Linking.openSettings(), + }, + ] + ); + + } else { + if (Platform.OS === 'ios') { + // const uri = this.store.convertLocalIdentifierToAssetLibrary( + // response.localIdentifier, + // 'JPG', + // ); + // response.path = uri; + // console.log(response.path); + this.uploadImage = this.saveImageHandler(response); + console.log(this.uploadImage); + } else { + this.uploadImage = this.saveAndroidImageHandler(response); + } + } + }); + } else { + // ImagePicker.openPicker({ + // includeExif: true, + // includeBase64: false, + // writeTempFile: false, + // multiple: false, + // mediaType: 'photo', + // cropping: false, + // }).then(image => { + // console.log(image); + // var response = image; + + // if (Platform.OS === 'ios') { + // // const uri = this.store.convertLocalIdentifierToAssetLibrary( + // // response.localIdentifier, + // // 'JPG', + // // ); + // // response.path = uri; + // // console.log(response.path); + // this.uploadImage = this.saveImageHandler(response); + // console.log(this.uploadImage); + // } else { + // this.uploadImage = this.saveAndroidImageHandler(response); + // } + // }); + launchImageLibrary({ mediaType: 'photo' }, response => { + console.log(response); + //var response = image; + + if (Platform.OS === 'ios') { + // const uri = this.store.convertLocalIdentifierToAssetLibrary( + // response.localIdentifier, + // 'JPG', + // ); + // response.path = uri; + // console.log(response.path); + this.uploadImage = this.saveImageHandler(response); + console.log(this.uploadImage); + } else { + this.uploadImage = this.saveAndroidImageHandler(response); + } + }); + } + } + + renderPaymeOrFps() { + const picker = [ + { + value: 0, + label: this.store.text.album, + }, + { + value: 1, + label: this.store.text.camera, + }, + ]; + + if (this.paymentSelected == 2) { + return ( + + {this.store.text.bank + ': 035 華僑永亨銀行'} + {this.store.text.accountName + ': Asian Mea Inc Limited'} + {this.store.text.accountnumber + ': 822-403841-051'} + + { + this.imagepick(value); + }}> + + {this.uploadImage != null ? ( + + ) : ( + + + + {this.store.text.uploadreceipt} + + + )} + + + + {picker.map((obj, i) => { + return ; + })} + + + + + ); + } + } + + renderCoupon2SubValue() { + if (this.coupon2Index != null) { + if (this.store.coupons[this.coupon2Index].percent > 0) { + return ( + + {'-' + this.store.coupons[this.coupon2Index].percent + '%'} + + ); + } else { + return ( + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.store.coupons[this.coupon2Index].amount), + )} + + ); + } + } + } + + async findThisMonthTotalAmount() { + console.log(this.shoppingGroup) + var index = await this.shoppingGroup.summaries.findIndex(element => element.month == moment().format('YYYYMM')) + console.log(index) + this.totalamount = this.shoppingGroup.summaries[index].amount + console.log(this.totalamount) + this.handleShoppingGroupMemberDiscount() + } + + + async handleShoppingGroupMemberDiscount() { + var total = 0; + await this.shoppingGroup.groupTargets.map(async (items, index) => { + if (moment().format('YYYYMM') == items.month) { + if (this.totalamount >= items.target) { + total += items.memberPercentAdd + } + } + }) + this.totalDiscount = total + this.shoppingGroup.shoppingGroup.memberBaseDiscountPercent + } + + + renderShoppingGroupDiscount() { + return ( + + {'-' + this.totalDiscount + '%'} + + ); + } + + async countDiscount() { + var discountPrice = 0 + this.store.orderList.map(async (items, index) => { + if (items.on_sale) { + discountPrice += (items.originalPrice - items.price) * items.buyCount + console.log(discountPrice) + } + }) + console.log(discountPrice) + this.discountPrice = this.store.priceHandler(discountPrice) + } + + renderDiscountInfo() { + if (this.usingDiscount) { + return ( + + + {this.store.discount.length > 0 ? this.store.discount[0].name : ''} + + + + + {'-' + this.discountPrice} + + + + ) + } + } + + // totalPrice() { + // var totalPrice = 0; + // this.normalProducts.map(async (items, index) => { + // console.log(items.price); + // totalPrice += parseFloat(items.price) * items.buyCount; + // }); + // this.totalProductsPrice = totalPrice; + // // return this.store.priceFormatReturn( + // // ((totalPrice - parseInt(this.coupon1)) * (100 - parseInt(this.coupon2))) / + // // 100 + + // // this.shippingPrice, + // // ); + // if (this.coupon2Index != null) { + // if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + // totalPrice = + // ((totalPrice - parseFloat(0)) * + // (100 - parseFloat(this.store.coupons[this.coupon2Index].amount))) / + // 100; + // } else { + // totalPrice = + // totalPrice - + // parseFloat(0) - + // parseFloat(this.store.coupons[this.coupon2Index].amount); + // } + // } + // return this.store.priceFormatReturn(totalPrice); + // } + + renderDiscountProduct() { + console.log('here' + this.discountProducts); + return this.discountProducts.map((items, index) => { + return this.renderItems(items); + }); + } + + renderNoDiscountTotalPrice(data) { + var total = 0; + data.map((items, index) => { + //total += items.on_sale ? (items.originalPrice * this.isOrder ? items.buyCount : items.qty) : (items.price * this.isOrder ? items.buyCount : items.qty) + if (items.on_sale) { + if (this.isOrder) { + total += items.originalPrice * items.buyCount + } else { + total += items.originalPrice * items.qty + } + } else { + if (this.isOrder) { + total += items.price * items.buyCount + } else { + total += items.price * items.qty + } + } + }) + console.log(total) + return ( + + + {this.store.text.subTotal + " " + this.store.priceFormatReturn(total)} + + + ) + } + + renderItems(items) { + return ( + + + {items.name} + + + + {this.isOrder ? 'x' + items.buyCount : 'x' + items.qty} + + + + {items.hasOwnProperty('discount') || items.hasOwnProperty('on_sale') ? ( + {this.store.priceFormatReturn( + this.isOrder + ? items.originalPrice * items.buyCount + : items.originalPrice * items.qty, + )} + ) : ()} + + {this.store.priceFormatReturn( + this.isOrder + ? items.price * items.buyCount + : items.price * items.qty, + )} + + + + ); + } + + payAction() { + var data = { + coupon_lines: [], + shipping: { + first_name: '', + last_name: '', + company: '', + address_1: '', + address_2: '', + city: '', + state: '', + postcode: '', + country: 'hong kong', + }, + line_items: [], + }; + } + + onlyDigits(s) { + for (let i = s.length - 1; i >= 0; i--) { + const d = s.charCodeAt(i); + if (d < 48 || d > 57) return false; + } + return true; + } + + usePoints(text) { + if (this.onlyDigits(text)) { + var numbers = parseInt(text); + if (numbers > this.store.points) { + this.coupon1 = ''; + this.countTotalPrice(); + } else { + this.coupon1 = text; + this.countTotalPrice(); + } + } else { + console.log('must numbers'); + this.coupon1 = ''; + this.countTotalPrice(); + } + } + + countTotalPrice() { + console.log(this.shippingSelection[this.shippingSelected]); + this.totalPrice = 0; + this.totalProductsPrice = 0; + this.normalProducts.map((items, index) => { + this.totalPrice += parseFloat(items.price) * items.buyCount; + //this.totalProductsPrice += parseFloat(items.price) * items.buyCount; + this.totalProductsPrice = _.cloneDeep(this.totalPrice); + }); + console.log(this.totalPrice); + // this.totalPrice += this.discountProductsTotalPriceHandler( + // this.discountTotalPrice, + // ); + console.log(this.totalPrice); + + if (this.discountProductsEnable == false && this.coupon2Correct == true) { + if (this.store.coupons[this.coupon2Index].percent > 0) { + console.log('testing2'); + this.totalPrice = + this.totalPrice * + ((100 - parseFloat(this.store.coupons[this.coupon2Index].percent)) / + 100); + } else { + console.log('testing'); + console.log(this.totalPrice); + console.log(this.store.coupons[this.coupon2Index].amount); + this.totalPrice -= parseFloat( + this.store.coupons[this.coupon2Index].amount, + ); + console.log(this.totalPrice); + } + } + if ( + this.totalProductsPrice < + parseFloat( + this.shippingSelection[this.shippingSelected].freeShippingPrice, + ) + ) { + this.freeShip = false; + this.totalPrice += this.shippingSelection[this.shippingSelected].price; + } else { + this.freeShip = true; + } + + if (this.shoppingGroup != null) { + this.totalPrice -= + (this.totalProductsPrice * + this.totalDiscount / + 100) + } + + if (parseInt(this.coupon1) != 0 || this.coupon1 != '') { + if (parseInt(this.coupon1) / this.store.pointsMemony <= this.totalPrice) { + this.totalPrice -= parseInt(this.coupon1) / this.store.pointsMemony; + } + } + console.log(this.totalPrice); + } + + discountProductsTotalPriceHandler(price) { + console.log(this.store.coupons[this.coupon2Index]); + if (this.coupon2Index != null) { + if ( + this.store.coupons[this.coupon2Index].discount_type != undefined || + this.store.coupons[this.coupon2Index].discount_type != null || + this.coupon2Index != null + ) { + if (this.store.coupons[this.coupon2Index].discount_type == 'percent') { + return ( + price * + ((100 - parseFloat(this.store.coupons[this.coupon2Index].amount)) / + 100) + ); + } else { + return ( + price - parseFloat(this.store.coupons[this.coupon2Index].amount) + ); + } + } + } else { + return 0; + } + } + renderShippingPrice() { + if (this.isOrder) { + if (this.shoppingGroup != null) { + return this.store.text.undetermined; + } else { + if (!this.freeShip) { + return this.store.priceFormatReturn( + this.shippingSelection[this.shippingSelected].price, + ); + } else { + return this.store.priceFormatReturn(0); + } + } + } else { + return this.data.shippingFee + } + } + + countCoupon1() { + if (this.coupon1 == '0' || this.coupon1 == '') { + return '-HK$0.0'; + } else { + return ( + '-' + + this.store.priceFormatReturn( + parseFloat(this.coupon1) / this.store.pointsMemony, + ) + ); + } + } + + renderAddress() { + if (this.isOrder) { + return ( + + {/* {this.shippingSelection.map((items, index) => { + return this.renderShippingSelection(items); + })} */} + + {this.shoppingGroup == null + ? this.store.text.shippingAddress + : this.store.text.shippingAddress + + '(' + + this.store.text.ShoppingGroupShippingAddress + + ')'} + + {this.shoppingGroup != null ? ( + + + {this.shoppingGroup.shoppingGroup.district.parent.name + + ', ' + + this.shoppingGroup.shoppingGroup.district.name + + ', ' + + this.shoppingGroup.shoppingGroup.addr} + + + + ) : ( + + + {this.store.addresses.length > 0 + ? this.store.addresses[0].region.name + + ', ' + + this.store.addresses[0].district.name + + ', ' + + this.store.addresses[0].addr + : ''} + + + {this.isOrder ? ( + + this.props.navigation.navigate('AddressSetting') + } + style={{ + justifyContent: 'center', + alignItems: 'center', + backgroundColor: colors.mainColor, + width: 60, + height: 15, + marginLeft: 8, + borderRadius: 5, + }}> + + {this.store.addresses.length > 0 + ? this.store.text.changeAddress + : this.store.text.addAddress} + + + ) : ( + + )} + + + )} + + ); + } else { + return ( + + + {this.data.hasOwnProperty('shoppingGroup') + ? this.store.text.shippingAddress + + '(' + + this.store.text.ShoppingGroupShippingAddress + + ')' + : this.store.text.shippingAddress} + + {this.data.hasOwnProperty('shoppingGroup') ? ( + + + {this.data.shipping.regionName + + ', ' + + this.data.shipping.districtName + + ', ' + + this.data.shipping.addr} + + + + ) : ( + + + {this.store.addresses.length > 0 + ? this.store.addresses[0].region.name + + ', ' + + this.store.addresses[0].district.name + + ', ' + + this.store.addresses[0].addr + : ''} + + + {this.isOrder ? ( + + this.props.navigation.navigate('AddressSetting') + } + style={{ + justifyContent: 'center', + alignItems: 'center', + backgroundColor: colors.mainColor, + width: 60, + height: 15, + marginLeft: 8, + borderRadius: 5, + }}> + + {this.store.addresses.length > 0 + ? this.store.text.changeAddress + : this.store.text.addAddress} + + + ) : ( + + )} + + + )} + + ); + } + } + + renderReceipt() { + if (!this.isOrder) { + + if (this.data.status == "PRV") { + return ( + + + {this.store.text.rotp} + + + + ) + } else if (this.data.status == 'PRJ') { + + return ( + + + {this.store.text.resendReceipt} + + {this.renderPaymeOrFps()} + + { + if (this.uploadImage != null) { + this.store.uploadBankReceipt(this.data.id, this.uploadImage.uri, this) + } else { + this.refs.toast.show('Please upload image') + } + }} + /> + + + + ) + } + + } else { + + } + } + pointHandler(points, which) { + var int_part = Math.trunc(points); + + if (which) { + return int_part + } else { + console.log(Number((points - int_part).toFixed(2))) + return Number((points - int_part).toFixed(2)); + } + } + + shippingDateStringHandler() { + if (this.selectDateCheck) { + return moment(this.shippingDate).format('DD/MM/YYYY') + } else { + return this.store.text.pleasePickTheShippingDate + } + } + + renderShippingMessage() { + + if (this.isOrder) { + if (this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? 4 : 2))].freeShippingMinAmount > this.totalPrice) { + return ( + + + {this.store.text.shippingMessage1 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.shoppingGroup != null ? 4 : 2))].freeShippingMinAmount) + + this.store.text.shippingMessage2 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.shoppingGroup != null ? 4 : 2))].fee) + + this.store.text.shippingMessage3 + } + + {this.shoppingGroup != null ? ( + {this.store.text.groupShippingMessage1 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.shoppingGroup != null ? 4 : 2))].freeShippingMinAmount) + + this.store.text.groupShippingMessage2 + } + ) : ()} + + + ) + } + } + } + + renderDatePicker() { + if (this.isOrder) { + return ( + + { + this.showDatePicker = !this.showDatePicker;// this.selectDateCheck = true + }}> + + + {this.store.text.shippingDate + + ': ' + + this.shippingDateStringHandler()} + + + + + + + + ); + } + } + + renderPointsAndCouponsInput() { + if (this.isOrder) { + return ( + + + + + + {this.store.text.usePoints} + + + + + {this.store.text.yourPoints + ' ' + this.pointHandler(this.store.points, true)} + + + + + + { + this.usePoints(text); + }} + /> + + + + + + + {this.store.text.coupon} + + + + + + + { + this.coupon2OnChangeText(text); + }} + /> + + + + ); + } + } + + renderItemsAndPrice() { + if (this.isOrder) { + return ( + + {this.normalProducts.map((items, index) => { + return this.renderItems(items); + })} + {this.renderNoDiscountTotalPrice(this.normalProducts)} + {/* + + + {this.store.text.shippingPrice} + + + + {this.shoppingGroup != null + ? this.store.text.shoppingGroupShippingPrice + : ''} + + + + {this.renderShippingPrice()} + + */} + + + + {this.store.text.discount} + + + + {this.countCoupon1()} + + + {this.coupon2Correct ? ( + + + + {this.store.text.coupon} + + + + {this.renderCoupon2SubValue()} + + + {this.discountProductsEnable ? ( + + {this.store.text.productsThatCanUseCoupons} + {this.renderDiscountProduct()} + + + + {this.store.text.totalNumberOfDiscountedProducts + + ': '} + + {this.store.priceFormatReturn( + this.discountProductsTotalPriceHandler( + this.discountTotalPrice, + ), + )} + + + + ) : ( + + )} + + ) : ( + + )} + {this.shoppingGroup != null ? ( + + + + {this.store.text.shoppingGroupDiscount} + + + + {this.renderShoppingGroupDiscount()} + + + + ) : ( + + )} + {this.renderDiscountInfo()} + + + + + {' ' + this.store.text.total + ': '} + + + + {this.store.priceFormatReturn(this.totalPrice)} + + + + + ); + } else { + return ( + + {this.data.items.map((items, index) => { + return this.renderItems(items); + })} + {this.renderNoDiscountTotalPrice(this.data.items)} + {/* + + + {this.store.text.shippingPrice} + + + + {this.shoppingGroup != null + ? this.store.text.shoppingGroupShippingPrice + : ''} + + + + {this.renderShippingPrice()} + + */} + + + + {this.store.text.pointsDiscount} + + + + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.data.pointsDiscount), + )} + + + + + {this.data.hasOwnProperty('couponDiscount') ? ( + + + {this.store.text.couponDiscount} + + + + + {'-' + + this.store.priceFormatReturn( + parseFloat(this.data.couponDiscount), + )} + + + + ) : ()} + + + {this.data.hasOwnProperty('shoppingGroup') ? ( + + + + {this.store.text.shoppingGroupDiscount} + + + + + {'-' + + this.store.priceFormatReturn( + this.data.shoppingGroupDiscount, + )} + + + + + ) : ( + + )} + {this.discountTitle !== '' ? ( + + + {this.discountTitle} + + + + + {'-' + + this.store.priceFormatReturn( + this.discountTotalPrice, + )} + + + + ) : ()} + + {/* here */} + + + + + {' ' + this.store.text.total + ': '} + + + + {this.store.priceFormatReturn(this.data.amount)} + + + + + ); + } + } + + renderOrderHistoryDetails() { + if (!this.isOrder) { + return ( + + + {this.store.text.orderNumber + ': ' + this.data.receiptId} + + + {this.store.text.orderDate + + ': ' + + moment(this.data.created).format('DD-MM-YYYY hh:mm')} + + + {this.store.text.cutoffDate + + ': ' + + moment(this.data.cutoffDate).format('DD-MM-YYYY hh:mm')} + + + {this.store.text.shippingDate + + ': ' + + moment(this.data.deliveryDate).format('DD-MM-YYYY hh:mm')} + + + {this.store.text.paymentDieline + + ': ' + + moment(this.data.paymentDeadline).format('DD-MM-YYYY hh:mm')} + + + + {this.store.text.orderStatus + + ': ' + + this.statusHandler(this.data.status)} + + + {this.renderCancelOrder()} + + + + + ); + } + } + + renderCancelOrder() { + if (!this.isOrder) { + if (this.data.status == 'PC' || this.data.status == 'PP' || this.data.status == 'PA' || this.data.status == 'PRV' || this.data.status == 'PRJ') { + return ( + { this.cancelOrderAction() }}> + + {this.store.text.requestToCancelOrder} + + + ) + } + } + } + + cancelOrderAction() { + if (this.data.status == "PA") { + // Alert.prompt( + // this.store.text.requestToCancelOrder, + // this.store.text.cancelOrderReason, + // [ + // { + // text: this.store.text.cancel, + // onPress: () => console.log("Cancel Pressed"), + // style: "cancel" + // }, + // { + // text: this.store.text.requestToCancelOrder, + // onPress: text => { this.sendTheCancelRequest(text, true) } + // } + // ], + + // ); + this.cancelOrderVisable = true + } else { + // Alert.prompt( + // this.store.text.requestToCancelOrder, + // this.store.text.cancelOrderReason, + // [ + // { + // text: this.store.text.cancel, + // onPress: () => console.log("Cancel Pressed"), + // style: "cancel" + // }, + // { + // text: this.store.text.requestToCancelOrder, + // onPress: text => { this.sendTheCancelRequest(text, false) } + // } + // ], + + // ); + this.cancelOrderVisable = true + } + + } + + sendTheCancelRequest(reason, which) { + if (reason.length == 0) { + this.refs.toast.show(this.store.text.pleaseInputReason) + } else { + if (which) { + this.store.cancelOrderRequest(this.data.id, reason, this) + } else { + this.store.cancelOrderRequestWithNotPay(this.data.id, this) + } + } + } + + renderPaymentMethod() { + if (!this.props.route.params.order) { + if (this.data.status == 'PP') { + return ( + + + + {this.store.text.paymentMethods} + + {this.paymentseletion.map((items, index) => { + if (!this.store.loginUserData.data.hasOwnProperty('shoppingGroup') && items.value == 1) { + return + } else { + return this.renderPaymentSelection(items); + } + + })} + + {this.renderPaymeOrFps()} + + ); + } + } + } + + + + renderOrderButton() { + if (this.props.route.params.order) { + return ( + { + this.orderAction(); + }} + /> + ); + } else { + if (this.data.status == 'PP') { + return ( + { + this.orderAction(); + }} + /> + ); + } + } + } + + render() { + return ( + + + + + + + + + + {this.renderOrderHistoryDetails()} + {this.store.text.products} + + {this.renderItemsAndPrice()} + {this.renderPointsAndCouponsInput()} + {this.renderDatePicker()} + + {this.renderAddress()} + {this.renderPaymentMethod()} + + {this.renderShippingMessage()} + {this.renderReceipt()} + + {this.renderOrderButton()} + + + + + { + this.changeDate(date); + }} + mode={'date'} + locale={'zh_HK'} + minimumDate={this.minOrderDateHandler()} + maximumDate={this.maxOrderDateHandler()} + /> + { this.showDatePicker = false; this.selectDateCheck = true }}> + + {this.store.text.sure} + + + + + + + + + {this.store.text.cancelOrderReason} + + { + this.cancelOrderReason = text; + }} + + /> + + { this.cancelOrderReason = ''; this.cancelOrderVisable = false }}> + + {this.store.text.cancel} + + + + { + if (this.data.status == "PA") { + this.sendTheCancelRequest(this.cancelOrderReason, true) + + } else { + this.sendTheCancelRequest(this.cancelOrderReason, false) + + } + + this.cancelOrderReason = ''; + this.cancelOrderVisable = false; + }}> + + {this.store.text.sure} + + + + + + + + + ); + } +} +const styles = StyleSheet.flatten({ + lineView: { + height: 1, + width: width - 40, + backgroundColor: colors.line2Color, + marginTop: 10, + }, + label: { + color: colors.labelColor, + }, + inputView: { + marginTop: 10, + width: width - 40, + height: 40, + borderRadius: 10, + justifyContent: 'center', + shadowColor: '#000', + backgroundColor: 'white', + shadowOffset: { + width: 0, + height: 1, + }, + shadowOpacity: 0.2, + shadowRadius: 1.41, + + elevation: 2, + }, +}); diff --git a/src/pages/productsDetails/productsDetails.js b/src/pages/productsDetails/productsDetails.js new file mode 100644 index 0000000..9f47c55 --- /dev/null +++ b/src/pages/productsDetails/productsDetails.js @@ -0,0 +1,896 @@ +import React from 'react'; +import TitleBar from '../../components/titleBar'; +import { colors } from '../../assets/styles/colors-theme'; +import { + SafeAreaView, + Text, + Image, + View, + ScrollView, + TouchableHighlight, + TouchableOpacity, + TextInput, + Share, + Linking, + StyleSheet, + BackHandler +} from 'react-native'; +var _ = require('lodash'); +import ImageSwiper from '../../components/imageSwiper' +import GallerySwiper from 'react-native-gallery-swiper'; +import Rating from '../../components/rating'; +import { inject, observer } from 'mobx-react'; +import HTMLView from 'react-native-htmlview'; +import { width, height } from '../../services/screen'; +import CustomLoginButton from '../../components/customLoginButton'; +import CustomSmallButton from '../../components/customSmallButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import Rank from '../../components/rank'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import MaterialCommunityIcons from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { observable, action } from 'mobx'; +import { images } from '../../assets/images/imageIndex'; +import Mostcheaplist from '../../components/mostcheaplist'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +Icon.loadFont(); +FeatherIcon.loadFont(); +MaterialCommunityIcons.loadFont(); +@inject('appStore') +@observer +export default class ProductsDetails extends React.Component { + @observable + catalogue = []; + @observable + data = this.props.route.params.data; + @observable + imageData = []; + @observable + origin = ''; + @observable + qry = 1; + @observable + showWriteComment = false; + @observable + showComment = true; + @observable + commentPage = 1; + @observable + productComment = []; + @observable + review = { + // product_id: null, + review: '', + // reviewer: '', + // reviewer_email: '', + rating: 3, + // status: 'hold', + }; + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + async componentDidMount() { + console.log(this.data); + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + + } + + handleBackButtonClick() { + this.props.navigation.goBack(); + return true + } + + + commentAction() { + if (this.review.review == '') { + this.refs.toast.show(this.store.text.pleaseEnterReview); + } else { + this.review.product_id = this.data.id; + this.review.reviewer = this.store.loginUserData.data.display_name; + this.review.reviewer_email = this.store.loginUserData.data.email; + this.store.postComment(this.data.id, _.cloneDeep(this.review), this); + this.review = { + product_id: null, + review: '', + reviewer: '', + reviewer_email: '', + rating: 3, + status: 'hold', + }; + this.showWriteComment = false; + } + } + + async descHandler() { + // var pToBr = await desc.replaceAll('

', '
') + // pToBr = await pToBr.replaceAll('

', '
') + // console.log(pToBr) + // return pToBr + this.data.desc = await this.data.desc.replaceAll('

', '
') + this.data.desc = await this.data.desc.replaceAll('

', '
') + console.log(this.data.desc) + } + + comments(items) { + return ( + + + {items.name} + + + + {this.store.text.rating + ': '} + + + + + {this.store.text.review + ': '} + + {items.review} + + + + + + ); + } + + showshowWriteCommentAction() { + if (this.store.logined) { + this.showWriteComment = !this.showWriteComment; + } else { + this.refs.toast.show(this.store.text.pleaseLogin); + } + } + + renderComments() { + if (this.productComment.length > 0) { + return this.productComment.map((items, index) => { + console.log(items.reviewer); + return this.comments(items); + }); + } else { + return ; + } + } + + async componentWillMount() { + this.data.images.map((items, index) => { + var data = { + uri: items.imageURL, + }; + this.imageData.push(data); + }); + // await this.originHandler(); + + // (this.productComment = this.store.getComment( + // this.data.id, + // this.commentPage, + // this, + // )), + this.store.getComment(this.data.id, this.commentPage, this); + console.log(this.productComment); + } + + async originHandler() { + if (this.data.attributes.length > 0) { + await this.data.attributes.map(async (items, index) => { + if (items.name === 'origin') { + console.log(items.options[0]); + this.origin = items.options[0]; + } else { + this.origin = 'N/A'; + } + }); + } else { + this.origin = 'N/A'; + } + } + + renderStar() { + var whiteStar = 0; + var yelloStar = 0; + var whitestarView = []; + var yellowStarView = []; + + if (this.review.rating >= 5) { + yelloStar = 5; + } else { + whiteStar = 5 - this.review.rating; + yelloStar = 5 - whiteStar; + } + for (var i = 1; i <= yelloStar; i++) { + var value = i; + + yellowStarView.push(i); + } + for (var i = 1; i <= whiteStar; i++) { + var value = i; + + whitestarView.push(this.review.rating + i); + } + return ( + + {yellowStarView.map((items, index) => { + return ( + { + console.log(items); + this.review.rating = items; + // console.log(this.review.rating); + }}> + + + ); + })} + {whitestarView.map((items, index) => { + return ( + { + console.log(items); + this.review.rating = items; + // console.log(this.review.rating); + }}> + + + ); + })} + + ); + } + + share() { + Share.share({ + message: + 'pure mall', + title: 'Pure Mall', + url: 'http://onelink.to/3nqphw', + }); + } + + @action + clickstarAction(value) { + this.review.rating = value; + } + + renderOriPrice() { + if (this.data.hasOwnProperty('oriPrice')) { + if (this.data.oriPrice > this.data.price) { + return ( + + {this.store.priceHandler(this.data.oriPrice)} + + ) + } + } else { + + } + } + + + async addFavouriteAction() { + if ( + (await this.store.favorite.findIndex( + element => element.id == this.data.id, + )) != -1 + ) { + this.refs.toast.show(this.store.text.alreadyExistsInMyList); + } else { + console.log('addFavourite'); + this.store.addFavouritePost(this.data, this); + } + } + + renderStockStatus() { + if (this.data.stock_quantity > 0) { + return this.store.text.instock; + } else { + return this.store.text.outOfStock; + } + } + + returnContent(content) { + const regex = /(<([^>]+)>)/gi; + return content.replace(regex, ''); + } + + menuSelection(which) { + if (which == '1') { + Linking.canOpenURL('https://puremall.com.hk/tnc.html').then( + supported => { + if (supported) { + Linking.openURL('https://puremall.com.hk/tnc.html'); + } else { + console.log( + "Don't know how to open URI: " + + response.data.wechat.qr_code_url, + ); + } + }) + } else { + Linking.canOpenURL('https://puremall.com.hk/privacy.html').then( + supported => { + if (supported) { + Linking.openURL('https://puremall.com.hk/privacy.html'); + } else { + console.log( + "Don't know how to open URI: " + + response.data.wechat.qr_code_url, + ); + } + }) + } + + } + + render() { + return ( + + + + + + { + this.props.navigation.goBack(); + }}> + + + + + {this.data.categories[0].name} + + + + { + this.menuSelection(value); + }}> + + + + + + + + + + + + + {this.data.images.length > 0 ? ( + // + + ) : ( + + + No Image Yet + + )} + + + + + {this.data.name} + + + + { + this.share(); + }}> + + + { + this.addFavouriteAction(); + }}> + + + + {/* origin and tag */} + {/* + + + + {this.data.weight + ' ' + this.store.text.kg + ' '} + + | + + {' ' + this.store.text.origin + ' : ' + this.origin} + + + + + */} + + + {this.data.inventory == 0 ? ( + + + {this.store.text.outOfStock} + + ) : ()} + {/* line */} + + + + {'4 (300)'} + + + + + + {this.renderOriPrice()} + this.data.price ? 'red' : 'black', + fontWeight: 'bold', + }}> + {this.store.priceHandler(this.data.price)} + + + {/* + { + if (this.qry > 0) { + this.qry -= 1; + } + }} + style={{ + height: 17, + width: 17, + borderRadius: 4, + backgroundColor: colors.mainColor, + alignItems: 'center', + justifyContent: 'center', + }}> + + + + + {this.qry.toString()} + + { + if (this.qry < 99) { + this.qry += 1; + } + }}> + + + */} + + + {/* + {this.renderStockStatus()} + */} + { + var newData = _.cloneDeep(this.data); + newData.buyCount = _.cloneDeep(this.qry); + this.store.addSingleItemToShoppingCart(newData, this); + }} + /> + + + + + + + {this.store.text.productDescription} + + {/* + {this.returnContent(this.data.short_description)} + */} + {/* + {this.data.desc} + */} + + + + + + {/* this.showshowWriteCommentAction()} + style={{ + flexDirection: 'row', + justifyContent: 'center', + alignItems: 'center', + }}> + + + {this.store.text.writeAReview} + + {this.showWriteComment ? ( + + ) : ( + + )} + */} + + {this.showWriteComment ? ( + + + + {this.store.text.rating + ':'} + + + {this.renderStar()} + + + {this.store.text.review + ':'} + + (this.review.review = text)} + style={{ width: width - 60 }} + multiline={true} + fontSize={12} + placeholder={this.store.text.pleaseEnterReview} + maxLength={100} + /> + + this.commentAction()}> + + {this.store.text.send + ' '} + + + + + + {this.review.review.length + '/100 '} + + + + + ) : ( + + )} + + + {/* { + Linking.canOpenURL('https://www.hosunsin.com/tnc.html').then( + supported => { + if (supported) { + Linking.openURL('https://www.hosunsin.com/tnc.html'); + } else { + console.log( + "Don't know how to open URI: " + + response.data.wechat.qr_code_url, + ); + } + }, + ); + }}> + + + {this.store.text.regulations + + ', ' + + this.store.text.refunds} + + + + + + */} + { + this.showComment = !this.showComment; + }}> + + + {this.store.text.comments} + + + + {this.showComment ? ( + + ) : ( + + )} + + + + {this.showComment ? ( + + {this.renderComments()} + { + this.commentPage += 1; + this.store.getComment(this.data.id, this.commentPage, this); + }}> + + {this.store.text.more} + + + + ) : ( + + )} + + + + + ); + } +} +const styles = StyleSheet.flatten({ + naviBar: { + width, + height: Platform.OS === 'ios' ? 70 : 75, + backgroundColor: 'white', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginTop: Platform.OS === 'ios' ? 0 : getStatusBarHeight(), + }, + barAreaView: { + flex: 1, + marginRight: 20, + marginLeft: 20, + marginTop: Platform.OS === 'ios' ? -5 : 15, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + + circle: { + width: 40, + height: 40, + borderRadius: 30, + marginLeft: 10, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: colors.shoppingGroupColor, + }, +}); +const richTextStyles = StyleSheet.create({ + p: { + + marginBottom: -80 + } +}) \ No newline at end of file diff --git a/src/pages/profile/Setting.js b/src/pages/profile/Setting.js new file mode 100644 index 0000000..bc5add5 --- /dev/null +++ b/src/pages/profile/Setting.js @@ -0,0 +1,689 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + Linking, +} from 'react-native'; +var _ = require('lodash'); +import Modal from 'react-native-modal'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import Switch from 'react-native-switch-pro'; +import { width, height } from '../../services/screen'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import HTMLView from 'react-native-htmlview'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +const langList = [ + { label: '繁體中文', value: 'hk' }, + { label: 'English', value: 'en' }, + { label: '簡體中文', value: 'zh' } +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class Setting extends React.Component { + @observable notification = true; + @observable lang = '繁體中文'; + @observable introVisable = false + + @observable + data = [ + { + title: 'name', + icon: 'account', + content: this.store.loginUserData.data.display_name, + width1: 0.2, + width2: 0.8, + }, + { + title: 'email', + icon: 'email', + content: this.store.loginUserData.data.email, + width1: 0.2, + width2: 0.8, + }, + { + title: 'mobilephone', + icon: 'phone', + content: + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile, + width1: 0.3, + width2: 0.7, + }, + { + title: 'points', + icon: 'gift', + content: this.store.points, + width1: 0.5, + width2: 0.5, + }, + { + title: 'address', + icon: 'store', + content: this.addressReturn(), + width1: 0.2, + width2: 0.8, + }, + ]; + constructor(props) { + super(props); + this.store = props.appStore; + // Adyen.onRequestPaymentSession(this.onRequestPaymentSession); + // Adyen.onPaymentResult((code, payload) =>{ + // this.setState({status: 'success'}), + // console.log(code) + // console.log(payload) + // } + // ); + // Adyen.onError((code, error) => this.setState({status: 'failure'})); + } + + // onRequestPaymentSession(token, returnUrl) { + // console.log(token, returnUrl); + // fetch('https://checkout-test.adyen.com/v41/paymentSession', { + // method: 'POST', + // headers: { + // 'Content-Type': 'application/json', + // 'x-API-key': API_KEY, + // }, + // body: JSON.stringify({ + // amount: { + // value: 1747, + // currency: 'HKD', + // }, + // reference: 'Test payments', + // countryCode: 'HK', + // shopperReference: 'demo@demo.com', + // returnUrl: 'return-url://', + // token, + // merchantAccount: MERCHANT_ACCOUNT, + // }), + // }) + // .then(response => response.json()) + // .then(responseData => Adyen.confirmPayment(responseData.paymentSession)) + // .done(); + // } + + async selectLangAction(value) { + console.log(value); + this.store.changeLanguage(value.value); + this.lang = value.label; + try { + await AsyncStorage.setItem('lang', value.value); + } catch (e) { + // saving error + } + } + + async componentWillMount() { + await this.store.getPoints(); + this.data[0].content = this.store.loginUserData.data.display_name; + this.data[1].content = this.store.loginUserData.data.email; + this.data[2].content = + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile; + this.data[4].content = this.addressReturn(); + try { + const value = await AsyncStorage.getItem('lang'); + if (value !== null) { + console.log(value); + if (value == 'hk') { + this.lang = '繁體中文'; + } else if (value == 'en') { + this.lang = 'English'; + } else { + this.lang = '簡體中文'; + } + } else { + this.lang = '繁體中文'; + } + } catch (e) { + // error reading value + } + } + + addressReturn() { + // if (this.store.loginUserData.data.shipping.address_1 != '') { + // return ( + // this.store.loginUserData.data.shipping.address_1 + + // ', ' + + // this.store.loginUserData.data.shipping.address_2 + // ); + // } else { + //return this.store.text.clickHereToEnterTheAddress; + //} + if (this.store.addresses.length > 0) { + return ( + this.store.addresses[0].region.name + + ', ' + + this.store.addresses[0].district.name + + ', ' + + this.store.addresses[0].address + ); + } else { + return this.store.text.clickHereToEnterTheAddress; + } + } + + userDataClickAction(index) { + switch (index) { + case 0: + this.props.navigation.navigate('AddName'); + break; + case 4: + this.props.navigation.navigate('AddressSetting'); + break; + case 2: + if (this.store.loginUserData.data.mobile == null) { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + } else { + } + break; + } + } + + titleStringReturn(title) { + switch (title) { + case 'name': + return this.store.text.name; + break; + case 'email': + return this.store.text.email; + break; + case 'mobilephone': + return this.store.text.mobilephone; + break; + case 'points': + return this.store.text.points; + break; + case 'address': + return this.store.text.address; + break; + } + } + + share() { + Share.share({ + message: + '本公司專門為客人從日本空運到港 提供最新鮮時令水果及急凍海產 客人可以安坐家享受日本味道既幸福 公司屋企party 大量優質食品供應 開張節日時令果籃為你度身訂造送到你客人手上', + title: '好新鮮APP', + url: 'http://onelink.to/3nqphw', + }); + } + + renderUserDetailList(data, index) { + return ( + this.userDataClickAction(index)} + style={{ + flexDirection: 'row', + height: 40, + width: width - 40, + borderBottomColor: colors.lineColor, + borderBottomWidth: 1, + }}> + + + + {this.titleStringReturn(data.title)} + + + + + {this.contentReturn(index, data)} + + + + ); + } + + contentReturn(index, data) { + // if (index == 4) { + // return this.addressReturn(); + // } else if (index == 3) { + // return this.store.points; + // } else { + // return data.content; + // } + switch (index) { + case 0: + if (this.store.loginUserData.data.display_name == '') { + return this.store.text.clickHereToEnterYourName; + } else { + return this.store.loginUserData.data.display_name; + } + break; + + case 1: + return this.store.loginUserData.data.email; + break; + case 2: + if (this.store.loginUserData.data.country_code == null) { + return this.store.text.clickHereToEnterYourMobile; + } else { + return ( + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile + ); + } + + break; + case 3: + return this.store.points; + break; + case 4: + return this.addressReturn(); + break; + } + } + + render() { + return ( + + + + + + { + this.selectLangAction(value); + }}> + + + + {this.store.text.language} + + + + + {this.lang} + + + + + {langList.map((obj, i) => { + return ; + })} + + + + + + + {this.store.text.notification} + + + + { + (this.notification = value), + console.log(value + ' ' + this.notification); + }} + /> + + + { + Linking.canOpenURL('https://puremall.com.hk/tnc.html').then( + supported => { + if (supported) { + Linking.openURL('https://puremall.com.hk/tnc.html'); + } else { + console.log( + "Don't know how to open URI: " + + response.data.wechat.qr_code_url, + ); + } + }) + }}> + + + {this.store.text.tearmsOfService} + + + + + + + { + Linking.canOpenURL('https://puremall.com.hk/privacy.html').then( + supported => { + if (supported) { + Linking.openURL('https://puremall.com.hk/privacy.html'); + } else { + console.log( + "Don't know how to open URI: " + + response.data.wechat.qr_code_url, + ); + } + }) + }}> + + + {this.store.text.privacyPolicy} + + + + + + + { + this.props.navigation.navigate('Tutorial') + }}> + + + {this.store.text.tutorial} + + + + + + + { + this.introVisable = true + }}> + + + {this.store.text.shopppingGroupIntroduction} + + + + + + + + {this.store.loginUserData.data.mobile != null ? ( { + console.log('forgotPW') + if (this.store.loginUserData.data.mobile != null) { + this.props.navigation.navigate('ForgotPassword'); + } else { + Alert.alert('', '請先加入電話號碼', [ + { text: '取消', onPress: () => console.log('Cancel') }, + { + text: '加入', + onPress: () => { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + }, + }, + ]); + } + }}> + + + {this.store.text.forgotPassword} + + + + + + ) : ( { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + }}> + + + {this.store.text.addMobile} + + + + + + )} + { + this.store.logoutPost(this); + }}> + + {this.store.text.logout} + + + + + + + + {/* { + this.store.logoutPost(this); + }} + /> */} + + + + + {/* + {this.store.text.shoppingGroup} + */} + + this.introVisable = false}> + + + + + + + + + + + + + + + + ); + } +} + +const styles = StyleSheet.create({ + lineSytle: { + flexDirection: 'row', + height: 60, + width: width - 40, + borderBottomColor: colors.lineColor, + borderBottomWidth: 1, + }, + textStyle: { + fontWeight: '800', + fontSize: 15, + marginLeft: 10, + }, +}); diff --git a/src/pages/profile/addName.js b/src/pages/profile/addName.js new file mode 100644 index 0000000..dbaf3a8 --- /dev/null +++ b/src/pages/profile/addName.js @@ -0,0 +1,250 @@ +import React, {Component} from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, +} from 'react-native'; +import {observable, action, transaction} from 'mobx'; +import {observer, inject} from 'mobx-react'; +var _ = require('lodash'); +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import {KeyboardAwareScrollView} from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, {DURATION} from 'react-native-easy-toast'; +import {colors} from '../../assets/styles/colors-theme'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const {SlideInMenu} = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +// function +import {width, height} from '../../services/screen'; +Icon.loadFont(); + +//const log = new Log() +@inject('appStore') +@observer +export default class AddName extends Component { + @observable + data = { + last_name: '', + first_name: '', + }; + static navigationOptions = { + drawerLabel: 'Account', + }; + + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + this.data = { + last_name: this.store.loginUserData.data.last_name, + first_name: this.store.loginUserData.data.first_name, + }; + } + + saveAction() { + if (this.data.last_name != '') { + if (this.data.first_name != '') { + this.store.editName(this.data, this); + } else { + this.refs.toast.show(this.store.text.pleaseInputFirstName); + } + } else { + this.refs.toast.show(this.store.text.pleaseInputLastName); + } + } + + render() { + return ( + + + + {this.store.text.name} + + + + + { + this.props.navigation.goBack(); + }}> + + + + + + + {this.store.text.lastName + ' '} + + + + + (this.data.last_name = text)} + /> + + + + + + + {this.store.text.firstName + ' '} + + + + + (this.data.first_name = text)} + /> + + + + + { + this.saveAction(); + }} + /> + + + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/profile/addressSetting.js b/src/pages/profile/addressSetting.js new file mode 100644 index 0000000..0d14cdf --- /dev/null +++ b/src/pages/profile/addressSetting.js @@ -0,0 +1,719 @@ +import React, { Component } from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, +} from 'react-native'; +import { observable, action, transaction } from 'mobx'; +import { observer, inject } from 'mobx-react'; +var _ = require('lodash'); +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { colors } from '../../assets/styles/colors-theme'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +const fakeData = [ + { + label: '香港島', + sub: [{ label: '中西區', }, + { + label: '灣仔區', + sub: [ + { label: '灣仔運動場', }, + { label: '修頓球場', }, + { label: '堅拿道', }, + { label: '堅尼地道', }, + { label: '寶雲道', }, + ] + }, + { label: '東區', }, + { label: '南區', },] + }, + { + label: '九龍', + sub: [ + { label: '深水埗區', }, + { label: '油尖旺區', }, + { label: '九龍城區', }, + { label: '黃大仙區', }, + { label: '觀塘區', }, + ] + }, + + { + label: '新界', + sub: [{ label: '葵青區', }, + { label: '荃灣區', }, + { label: '屯門區', }, + { label: '元朗區', }, + { + label: '北區', + sub: [ + { label: '上水' }, + { label: '粉嶺' }, + ] + }, + { label: '大埔區', }, + { + label: '沙田區', + sub: [ + + { label: '名城', }, + { label: '好運中心', }, + { label: '河畔花園', }, + { label: '富豪花園', }, + { label: '駿景園', }, + + ] + }, + { label: '西貢區', }, + { label: '離島區', },] + }, +] + +const areaData = [ + { label: '香港島', value: 0 }, + { label: '九龍', value: 1 }, + { label: '新界', value: 2 }, +]; + +const area1Data = [ + { label: '中西區', value: 0 }, + { label: '灣仔區', value: 1 }, + { label: '東區', value: 2 }, + { label: '南區', value: 3 }, +]; +const area2Data = [ + { label: '深水埗區', value: 0 }, + { label: '油尖旺區', value: 1 }, + { label: '九龍城區', value: 2 }, + { label: '黃大仙區', value: 3 }, + { label: '觀塘區', value: 4 }, +]; +const area3Data = [ + { label: '葵青區', value: 0 }, + { label: '荃灣區', value: 1 }, + { label: '屯門區', value: 2 }, + { label: '元朗區', value: 3 }, + { label: '北區', value: 4 }, + { label: '大埔區', value: 5 }, + { label: '沙田區', value: 6 }, + { label: '西貢區', value: 7 }, + { label: '離島區', value: 8 }, +]; + +// function +import { width, height } from '../../services/screen'; + + +Icon.loadFont(); + +//const log = new Log() +@inject('appStore') +@observer +export default class AddressSetting extends Component { + @observable + selectAddress = [] + @observable + area1 = ''; + @observable + area2 = ''; + @observable + selectOptionsVisable = false + @observable + areaSelectIndex = null; + @observable + area1Data = []; + @observable + area2Data = []; + @observable + address = ''; + + @observable + addressData = { + district: { id: null }, + addr: '', + mobile: '', + receiver: '', + }; + + static navigationOptions = { + drawerLabel: 'Account', + }; + + constructor(props) { + super(props); + this.store = props.appStore; + this.addrSelectionInit() + if (this.store.addresses.length == 0) { + this.selectOptionsVisable = true + } + } + + + async componentWillMount() { + await this.store.regions.map(async (items, index) => { + if (!items.hasOwnProperty('parent')) { + console.log(items); + await this.area1Data.push(items); + } else { + if (this.store.addresses.length > 0) { + if (items.parent.id == this.store.addresses[0].region.id) { + console.log(items); + await this.area2Data.push(items); + } + } + } + }); + + if (this.store.addresses.length > 0) { + this.area1 = this.store.addresses[0].region.name; + this.area2 = this.store.addresses[0].district.name; + this.addressData.district.id = this.store.addresses[0].district.id; + this.addressData.receiver = this.store.addresses[0].receiver; + this.addressData.mobile = this.store.addresses[0].mobile; + this.addressData.addr = this.store.addresses[0].addr; + } + } + + async addrSelectionInit() { + this.selectAddress = [] + var data = { + addr: [], + selected: '', + name: '', + } + console.log(this.store.regionsArray) + Promise.all(this.store.regionsArray.map(async (item, index) => { + await data.addr.push(item) + })) + this.selectAddress.push(data) + console.log(this.selectAddress) + } + + async selectAction(value, which) { + if (which) { + this.area1 = value.name; + this.area2 = ''; + this.addressData.district.id = null; + var newArea2Data = []; + await this.store.regions.map(async (items, index) => { + if (items.hasOwnProperty('parent')) { + if (items.parent.id === value.id) { + console.log(items); + await newArea2Data.push(items); + } + } + }); + this.area2Data = newArea2Data; + } else { + this.addressData.district.id = value.id; + this.area2 = value.name; + } + } + + saveAction() { + if (this.addressData.mobile !== '') { + if (this.addressData.receiver !== '') { + if (this.addressData.addr !== '') { + if (this.selectAddress[this.selectAddress.length - 1].selected != '') { + + //this.store.editAddress(_.cloneDeep(this.addressData), this); + if (this.store.addresses.length > 0) { + this.store.editAddress( + _.cloneDeep(this.addressData), + this.store.addresses[0].id, + this, + ); + } else { + this.store.addAddress(_.cloneDeep(this.addressData), this); + } + + } else { + this.refs.toast.show(this.store.text.pleaseSelectTheRegion); + } + } else { + this.refs.toast.show(this.store.text.pleaseFillInTheAddress); + } + } else { + this.refs.toast.show(this.store.text.pleaseFillInTheRecipientName); + } + } else { + this.refs.toast.show(this.store.text.pleaseFillInTheRecipientMobile); + } + } + + addressSelectAction(data, index) { + console.log(data) + if (this.selectAddress[index].selected != data.id) { + if (this.selectAddress[index].selected == '') { + if (data.hasOwnProperty('children')) { + var addrData = { addr: data.children, selected: '' } + this.selectAddress.push(addrData) + this.selectAddress[index].selected = data.id + this.selectAddress[index].name = data.name + this.addressData.district.id = data.id + } else { + this.selectAddress[index].selected = data.id + this.selectAddress[index].name = data.name + this.addressData.district.id = data.id + } + } else { + this.selectAddress.splice(index + 1, this.selectAddress.length - index) + if (data.hasOwnProperty('children')) { + var addrData = { addr: data.children, selected: '' } + this.selectAddress.push(addrData) + this.selectAddress[index].selected = data.id + this.selectAddress[index].name = data.name + this.addressData.district.id = data.id + } else { + this.selectAddress[index].selected = data.id + this.selectAddress[index].name = data.name + this.addressData.district.id = data.id + } + } + } + } + + renderAddrSelection() { + if (this.selectOptionsVisable) { + return this.selectAddress.map((item, index) => { + return ( + { + this.addressSelectAction(value, index) + }}> + + + + {index == 0 ? (this.store.text.district + ' ') : (this.selectAddress[index - 1].name + '分區 ')} + + + + + + {item.selected == '' ? (this.store.text.pleaseSelectTheDistrict) : (item.name)} + + + + + + + + + + {item.addr.map((obj, i) => { + return ; + })} + + + ) + }) + } + } + renderDistrictAddress() { + if (!this.selectOptionsVisable && this.store.addresses.length > 0) { + return ( + + + {this.store.text.district + " : " + this.store.addresses[0].district.name} + + { this.selectOptionsVisable = true }}> + + {'變更'} + + + + ) + } + } + + render() { + return ( + + + + + {this.store.text.addressSetting} + + + + + + { + this.props.navigation.goBack(); + }}> + + + + + + {this.renderDistrictAddress()} + {this.renderAddrSelection()} + + {/* { + this.selectAction(value, true); + }}> + + { + // this.area1 = ''; + // this.area2 = ''; + // this.areaData = ['香港島', '九龍', '新界']; + // this.picker.toggle(); + // }} + > + + {this.store.text.district + ' '} + + + + + + {this.area1} + + + + + + + + + + {this.area1Data.map((obj, i) => { + return ; + })} + + + { + this.selectAction(value, false); + }}> + + { + // this.area1 = ''; + // this.area2 = ''; + // this.areaData = ['香港島', '九龍', '新界']; + // this.picker.toggle(); + // }} + > + + {this.store.text.region + ' '} + + + + + + {this.area2} + + + + + + + + + + {this.area2Data.map((obj, i) => { + return ; + })} + + */} + + + + {this.store.text.addressDetails + ' '} + + + + + (this.addressData.addr = text)} + /> + + + + + + + {this.store.text.TheRecipientName + ' '} + + + + + (this.addressData.receiver = text)} + /> + + + + + + {this.store.text.TheRecipientPhone + ' '} + + + + + (this.addressData.mobile = text)} + /> + + + + + { + this.saveAction(); + }} + /> + + + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/profile/creditCard.js b/src/pages/profile/creditCard.js new file mode 100644 index 0000000..9f65064 --- /dev/null +++ b/src/pages/profile/creditCard.js @@ -0,0 +1,373 @@ +import React, {Component} from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, +} from 'react-native'; +import {observable, action, transaction} from 'mobx'; +import {observer, inject} from 'mobx-react'; +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import Toast, {DURATION} from 'react-native-easy-toast'; +import {colors} from '../../assets/styles/colors-theme'; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component + +// function +import {width, height} from '../../services/screen'; +Icon.loadFont(); +//const log = new Log() +@inject('appStore') +@observer +export default class CreditCard extends Component { + @observable + menu = false; + @observable + addCard = false; + cardData = null; + + static navigationOptions = { + drawerLabel: 'Account', + }; + + constructor(props) { + super(props); + this.store = props.appStore; + } + + addCardAction() { + var BreakException = {}; + if (this.cardData != null) { + if (this.cardData.valid) { + var expiry = this.cardData.values.expiry.replace('/', ''); + let data = { + number: this.cardData.values.number.replace(/\s/g, ''), + expMonth: parseInt(expiry.substring(0, 2)), + expYear: parseInt(expiry.substring(2, 4)) + 2000, + cvc: this.cardData.values.cvc, + }; + + console.log(data); + // log.firebaseLog('press_add_button_on_creditCard_progress',{}) + this.store.postCreditCard(this, data); + } else { + try { + Object.keys(this.cardData.status).forEach(e => { + console.log(e + ' - ' + this.cardData.status[e]); + if ( + this.cardData.status[e] == 'incomplete' || + this.cardData.status[e] == 'invalid' + ) { + this.refs.toast.show(e + ' ' + this.cardData.status[e]); + throw BreakException; + } + }); + } catch (e) { + if (e !== BreakException) throw e; + } + } + } else { + console.log('error'); + this.refs.toast.show('please insert card number'); + } + } + + testing(token, data) { + Alert.alert(token, data, {text: 'ok', onPress: () => console.log('ok')}); + } + @action + removeCard() { + Alert.alert('', 'Are you sure? ', [ + {text: 'Cancel', onPress: () => console.log('Cancel')}, + { + text: 'Sure', + onPress: () => this.store.deleCreditCard(this), + }, + ]); + } + + render() { + return ( + + + + + {this.store.text.creditCardSettings} + + + + + + { + this.props.navigation.goBack(); + }}> + + + + + {this.store.creditCardinfo == null ? ( + + + + + + { + this.addCard = true; + // log.firebaseLog('press_add_creditCard_button',{}) + }}> + + {this.store.text.addCreditCard} + + + + {this.addCard ? ( + + (this.cardData = form)} + /> + + + { + this.addCardAction(); + }}> + {this.store.text.add} + + { + this.addCard = false; + this.cardData = null; + // log.firebaseLog('press_cancel_button_on_creditCard_progress',{}) + }}> + + {this.store.text.cancel} + + + + + ) : ( + + )} + + ) : ( + + + + + + { + this.addCard = true; + }}> + + {this.store.creditCardinfo.number} + + (this.menu = !this.menu)}> + + + + + )} + + {this.menu ? ( + + { + this.removeCard(); + this.menu = !this.menu; + // log.firebaseLog('press_remove_card_button',{}) + }}> + + {this.store.text.removeCreditCard} + + + { + this.menu = !this.menu; + }}> + + {this.store.text.cancel} + + + + ) : ( + + )} + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + welcome: { + fontSize: 20, + textAlign: 'center', + margin: 10, + }, + instructions: { + textAlign: 'center', + color: '#333333', + marginBottom: 5, + }, + buttonView: { + width: '80%', + height: 60, + marginTop: 10, + alignItems: 'center', + justifyContent: 'center', + borderColor: 'black', + borderWidth: 1, + }, + textView: { + color: colors.mainColor, + }, + label: { + color: 'black', + fontSize: 12, + }, + input: { + fontSize: 16, + color: 'black', + }, +}); diff --git a/src/pages/profile/profile.js b/src/pages/profile/profile.js new file mode 100644 index 0000000..72bb5ce --- /dev/null +++ b/src/pages/profile/profile.js @@ -0,0 +1,1014 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + ScrollView, + Share, + Alert, + TextInput, + BackHandler +} from 'react-native'; +var _ = require('lodash'); +import { AnimatedCircularProgress } from 'react-native-circular-progress'; +import CommonTextInput from '../../components/commonTextInput' +import Toast, { DURATION } from 'react-native-easy-toast'; +import Switch from 'react-native-switch-pro'; +import Modal from 'react-native-modal'; +import { width, height } from '../../services/screen'; +import { images } from '../../assets/images/imageIndex'; +import AsyncStorage from '@react-native-community/async-storage'; +import Loading from '../../components/Loading'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import FontAwesomeIcon from 'react-native-vector-icons/dist/FontAwesome'; +//import Adyen from 'adyen-react-native'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +const langList = [ + { label: '繁體中文', value: 'hk' }, + { label: 'English', value: 'en' }, + { label: '簡體中文', value: 'zh' } +]; +const API_KEY = + //'AQEhhmfuXNWTK0Qc+iSem3Y3qfffgjkjOauoEZcB7q2DToV3EMFdWw2+5HzctViMSCJMYAc=-kpW/CqOWAmOBWEEhFHdHKKV/dcUBco7qbCGV+/U6KDE=-F?6e&d8kq%7)?D6H'; + 'AQEkhmfuXNWTK0Qc+iSem3Y3qffCENhaJNh8FEMlEb7DNf3Ae1UzEMFdWw2+5HzctViMSCJMYAc=-SmX/AHu3xTVV2+Uek0ZHC2MxuW1df26lENMn6T4DVPw=-f3A?_6;kbd&pgK4g'; +const MERCHANT_ACCOUNT = + //'NironsECOM'; + 'Nirons983ECOM'; +FontAwesomeIcon.loadFont(); +@inject('appStore') +@observer +export default class Profile extends React.Component { + @observable notification = true; + @observable lang = '中文'; + @observable editNameVisable = false + @observable name = '' + + @observable + data = [ + { + title: 'name', + icon: 'account', + content: this.store.loginUserData.data.display_name, + width1: 0.2, + width2: 0.8, + }, + { + title: 'email', + icon: 'email', + content: this.store.loginUserData.data.email, + width1: 0.2, + width2: 0.8, + }, + { + title: 'mobilephone', + icon: 'phone', + content: + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile, + width1: 0.3, + width2: 0.7, + }, + { + title: 'points', + icon: 'gift', + content: this.store.points, + width1: 0.5, + width2: 0.5, + }, + { + title: 'address', + icon: 'store', + content: this.addressReturn(), + width1: 0.2, + width2: 0.8, + }, + ]; + constructor(props) { + super(props); + this.store = props.appStore; + // Adyen.onRequestPaymentSession(this.onRequestPaymentSession); + // Adyen.onPaymentResult((code, payload) =>{ + // this.setState({status: 'success'}), + // console.log(code) + // console.log(payload) + // } + // ); + // Adyen.onError((code, error) => this.setState({status: 'failure'})); + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + this.name = this.store.loginUserData.data.hasOwnProperty('member') + ? this.store.loginUserData.data.member.name + : this.store.loginUserData.data.name + } + + // onRequestPaymentSession(token, returnUrl) { + // console.log(token, returnUrl); + // fetch('https://checkout-test.adyen.com/v41/paymentSession', { + // method: 'POST', + // headers: { + // 'Content-Type': 'application/json', + // 'x-API-key': API_KEY, + // }, + // body: JSON.stringify({ + // amount: { + // value: 1747, + // currency: 'HKD', + // }, + // reference: 'Test payments', + // countryCode: 'HK', + // shopperReference: 'demo@demo.com', + // returnUrl: 'return-url://', + // token, + // merchantAccount: MERCHANT_ACCOUNT, + // }), + // }) + // .then(response => response.json()) + // .then(responseData => Adyen.confirmPayment(responseData.paymentSession)) + // .done(); + // } + + async selectLangAction(value) { + console.log(value); + this.store.changeLanguage(value.value); + this.lang = value.label; + try { + await AsyncStorage.setItem('lang', value.value); + } catch (e) { + // saving error + } + } + + async getuserData() { + var data = await this.store.getLocalData('logindata'); + if (data != null) { + var userloginData = { + token: data.token, + device: data.device, + }; + // this.store.userData = userloginData; + console.log(data); + this.store.token = data.token; + this.store.uuid = data.device; + await this.store.getUserData(this, userloginData, false); + } + } + + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + await this.store.getPoints(); + this.data[0].content = this.store.loginUserData.data.display_name; + this.data[1].content = this.store.loginUserData.data.email; + this.data[2].content = + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile; + this.data[4].content = this.addressReturn(); + try { + const value = await AsyncStorage.getItem('lang'); + if (value !== null) { + console.log(value); + if (value == 'hk') { + this.lang = '中文'; + } else { + this.lang = 'English'; + } + } else { + this.lang = '中文'; + } + } catch (e) { + // error reading value + } + } + componentDidMount() { + this._unsubscribe = this.props.navigation.addListener('focus', () => { + this.getuserData(); + }); + } + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + this._unsubscribe(); + } + handleBackButtonClick() { + this.props.navigation.navigate('Main'); + return true + } + + addressReturn() { + // if (this.store.loginUserData.data.shipping.address_1 != '') { + // return ( + // this.store.loginUserData.data.shipping.address_1 + + // ', ' + + // this.store.loginUserData.data.shipping.address_2 + // ); + // } else { + //return this.store.text.clickHereToEnterTheAddress; + //} + if (this.store.addresses.length > 0) { + return ( + this.store.addresses[0].region.name + + ', ' + + this.store.addresses[0].district.name + + ', ' + + this.store.addresses[0].address + ); + } else { + return this.store.text.clickHereToEnterTheAddress; + } + } + + userDataClickAction(index) { + switch (index) { + case 0: + this.props.navigation.navigate('AddName'); + break; + case 4: + this.props.navigation.navigate('AddressSetting'); + break; + case 2: + if (this.store.loginUserData.data.mobile == null) { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + } else { + } + break; + } + } + + titleStringReturn(title) { + switch (title) { + case 'name': + return this.store.text.name; + break; + case 'email': + return this.store.text.email; + break; + case 'mobilephone': + return this.store.text.mobilephone; + break; + case 'points': + return this.store.text.points; + break; + case 'address': + return this.store.text.address; + break; + } + } + + + renderUserDetailList(data, index) { + return ( + this.userDataClickAction(index)} + style={{ + flexDirection: 'row', + height: 40, + width: width - 40, + borderBottomColor: colors.lineColor, + borderBottomWidth: 1, + }}> + + + + {this.titleStringReturn(data.title)} + + + + + {this.contentReturn(index, data)} + + + + ); + } + + contentReturn(index, data) { + // if (index == 4) { + // return this.addressReturn(); + // } else if (index == 3) { + // return this.store.points; + // } else { + // return data.content; + // } + switch (index) { + case 0: + if (this.store.loginUserData.data.display_name == '') { + return this.store.text.clickHereToEnterYourName; + } else { + return this.store.loginUserData.data.display_name; + } + break; + + case 1: + return this.store.loginUserData.data.email; + break; + case 2: + if (this.store.loginUserData.data.country_code == null) { + return this.store.text.clickHereToEnterYourMobile; + } else { + return ( + this.store.loginUserData.data.country_code + + ' ' + + this.store.loginUserData.data.mobile + ); + } + + break; + case 3: + return this.store.points; + break; + case 4: + return this.addressReturn(); + break; + } + } + + accessShoppingGroup() { + if (this.store.loginUserData.data.hasOwnProperty('shoppingGroup')) { + this.store.getOwnShoppingGroup(this, false, false); + } else { + this.refs.toast.show(this.store.text.pleaseJoinShoppingGroup); + } + } + + editNameAction() { + const name = this.store.loginUserData.data.hasOwnProperty('member') + ? this.store.loginUserData.data.member.name + : this.store.loginUserData.data.name + + if (this.name === name) { + this.editNameVisable = false + } else { + if (this.name != '') { + this.store.editUserName(this.name, this) + } else { + this.refs.toast.show(this.store.text.pleaseInputFirstName) + } + } + } + + pointHandler(points, which) { + var int_part = Math.trunc(points); + + if (which) { + return int_part + } else { + console.log(Number((points - int_part).toFixed(2))) + return Number((points - int_part).toFixed(2)); + } + } + + render() { + return ( + + + + { this.editNameVisable = true }}> + + + + + + + {this.store.loginUserData.data.hasOwnProperty('member') + ? this.store.loginUserData.data.member.name + : this.store.loginUserData.data.name} + + + + + + { + this.props.navigation.navigate('Setting'); + }}> + + + + + + + + + console.log('onAnimationComplete')} + backgroundColor={colors.line2Color} /> + + + {this.store.loginUserData.data.hasOwnProperty('member') + ? this.pointHandler(this.store.loginUserData.data.member.points, true) + : this.pointHandler(this.store.loginUserData.data.points, true)} + + + {this.store.text.countPoints} + + + + + + {/* + + + {this.store.text.pointsChangeGift} + + */} + + { + this.accessShoppingGroup(); + }} + style={{ + flexDirection: 'row', + height: 50, + marginTop: 20, + width: width, + borderBottomColor: colors.lineColor, + borderTopColor: colors.lineColor, + borderBottomWidth: 1, + borderTopWidth: 1, + }}> + + + + {this.store.text.shoppingGroup} + + + + + + + + + + {this.store.text.shippingAddress} + + + + { + this.props.navigation.navigate('AddressSetting'); + }}> + + {this.store.text.edit} + + + + + + + + {this.store.text.TheRecipientName} + + + {this.store.addresses.length > 0 + ? this.store.addresses[0].receiver + : '--'} + + + + + {this.store.text.TheRecipientPhone} + + + {this.store.addresses.length > 0 + ? this.store.addresses[0].mobile + : '--'} + + + + + + {this.store.text.address} + + + {this.store.addresses.length > 0 + ? this.store.addresses[0].region.name + + ', ' + + this.store.addresses[0].district.name + + ', ' + + this.store.addresses[0].addr + : '--'} + + + + + + + + {this.store.text.creditCardInfo} + + + + { + this.props.navigation.navigate('CreditCard'); + }}> + + {this.store.text.edit} + + + + + + + {this.store.creditCardinfo != null + ? this.store.creditCardinfo.number + : '--'} + + + + + {/* + + + */} + + {/* + + {this.data.map((items, index) => { + return this.renderUserDetailList(items, index); + })} + + */} + + {/* + { + this.selectLangAction(value); + }}> + + + + {this.store.text.language} + + + + + {this.lang} + + + + + {langList.map((obj, i) => { + return ; + })} + + + + + + + {this.store.text.notification} + + + + { + (this.notification = value), + console.log(value + ' ' + this.notification); + }} + /> + + + this.props.navigation.navigate('CreditCard')} + style={{ + flexDirection: 'row', + height: 40, + width: width - 40, + borderBottomColor: colors.lineColor, + borderBottomWidth: 1, + }}> + + + {this.store.text.creditCardInfo} + + + + + + + + + { + this.share(); + }} + style={{flex: 0.5, justifyContent: 'center'}}> + + {this.store.text.share} + + + + + + + { + if (this.store.loginUserData.data.mobile != null) { + this.props.navigation.navigate('ForgotPassword'); + } else { + Alert.alert('', '請先加入電話號碼', [ + {text: '取消', onPress: () => console.log('Cancel')}, + { + text: '加入', + onPress: () => { + this.props.navigation.navigate('SignUpVerify', { + data: { + first_name: '', + last_name: '', + welcome_code: '', + country_code: '+852', + mobile: '', + email: '', + ver_code: '', + password: '', + }, + addMobile: true, + }); + }, + }, + ]); + } + }}> + + {this.store.text.forgotPassword} + + + */} + + {/* { + this.store.logoutPost(this); + }} + /> */} + + + this.editNameVisable = false} + deviceWidth={width} + deviceHeight={height}> + + + + + {/* (this.name = text)}/> */} + (this.name = text)} + /> + + + + + + { this.editNameAction() }} /> + + + + + ); + } +} +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: 250, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 30, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, +}); diff --git a/src/pages/profile/redeemRecord.js b/src/pages/profile/redeemRecord.js new file mode 100644 index 0000000..fb47780 --- /dev/null +++ b/src/pages/profile/redeemRecord.js @@ -0,0 +1,315 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + ScrollView, + Keyboard, + TouchableWithoutFeedback, + StyleSheet, + TextInput, + RefreshControl, +} from 'react-native'; +var _ = require('lodash'); +import {inject, observer} from 'mobx-react'; +import {observable} from 'mobx'; +import TitleBar from '../../components/titleBar'; +import {images} from '../../assets/images/imageIndex'; +import {KeyboardAwareScrollView} from 'react-native-keyboard-aware-scroll-view'; +import CheckAnimate from '../../components/checkAnimate'; +import moment from 'moment'; +import {width, height} from '../../services/screen'; +import Loading from '../../components/Loading'; +import {colors} from '../../assets/styles/colors-theme'; +import Toast, {DURATION} from 'react-native-easy-toast'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import IonIcon from 'react-native-vector-icons/dist/Ionicons'; +import CustomTextInput from '../../components/customTextInput'; +import CustomLoginButton from '../../components/customLoginButton'; + +Icon.loadFont(); +@inject('appStore') +@observer +export default class RedeemRecord extends React.Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + + componentDidMount() { + this._unsubscribe = this.props.navigation.addListener('focus', () => { + this.store.getRedeemHistory(); + }); + } + + componentWillUnmount() { + this._unsubscribe(); + // this.store.getOrders(); + } + + paymentMethodStringReturn(value) { + switch (value) { + case 'COD': + return this.store.text.cashOnDelivery; + break; + case 'Credit Card': + return this.store.text.creditCard; + break; + default: + return value; + break; + } + } + + shippingMethodHandler(type) { + switch (type) { + case 0: + return '門市自取'; + break; + case 1: + return '送到上門'; + break; + case '3': + return '送到上門'; + break; + } + } + + statusHandler(text) { + const lang = this.store.text; + switch (text) { + case 'PC': + return lang.pc; + break; + case 'PP': + return lang.pp; + break; + case 'PRV': + return lang.prv; + break; + case 'PRJ': + return lang.prj; + break; + case 'PA': + return lang.pa; + break; + case 'ARV': + return lang.arv; + break; + case 'FIN': + return lang.fin; + break; + case 'CAN': + return lang.can; + break; + case 'EXP': + return lang.exp; + break; + } + } + + shippingFeeHandler(items) { + if (items.hasOwnProperty('shoppingGroup')) { + if (items.status == 'PC') { + return '待截單'; + }else{ + return this.store.priceFormatReturn(items.shippingFee); + } + } else { + return this.store.priceFormatReturn(items.shippingFee); + } + } + + OrderList() { + var redeemRecord = this.store.redeemHistory.sort((a, b) => { + return b.created - a.created; + }); + if (redeemRecord.length > 0) { + return redeemRecord.map((items, index) => { + return this.renderList(items); + }); + } else { + return ; + } + } + + productsList(items) { + console.log(items); + if (items.hasOwnProperty('items')) { + return items.items.map((itemsData, itemsIndex) => { + if (itemsIndex < 2) { + return ( + + {itemsIndex == 1 && items.items.length > 2 + ? itemsData.name + 'x' + itemsData.qty + '...' + : itemsData.name + 'x' + itemsData.qty} + + ); + } + }); + } else { + return ; + } + } + renderDot(items) { + if (items.hasOwnProperty('line_items')) { + if (items.line_items.length > 4) { + return ; + } else { + return ; + } + } + } + renderList(items) { + return ( + + + + + {this.store.text.orderNumber + ' : ' + items.id} + + + {moment(items.created).format('hh:mm DD-MM-YYYY')} + + + + + + + + {this.store.text.usePoints} + + + {items.totalPrice} + + + + + + {this.productsList(items)} + {/* {this.renderDot(items)} */} + + + + {this.statusHandler(items.status)} + + + + + + + + + ); + } + + render() { + return ( + + + + + + this.store.getOrders()} + /> + }> + {this.OrderList()} + + + + ); + } +} +const styles = StyleSheet.flatten({ + textStyle: { + fontSize: 11, + color: colors.mainColor, + }, +}); diff --git a/src/pages/search/search.js b/src/pages/search/search.js new file mode 100644 index 0000000..3f54ea8 --- /dev/null +++ b/src/pages/search/search.js @@ -0,0 +1,292 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + TextInput, + BackHandler, +} from 'react-native'; +var _ = require('lodash'); +import Toast, { DURATION } from 'react-native-easy-toast'; +import { width, height } from '../../services/screen'; +import { inject, observer } from 'mobx-react'; +import { s, vs, ms } from 'react-native-size-matters'; +import { colors } from '../../assets/styles/colors-theme'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import CategoriesItems from '../../components/categoriesItems'; +import { observable } from 'mobx'; +import { images } from '../../assets/images/imageIndex'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import { ScrollView } from 'react-native-gesture-handler'; +import { Input } from 'react-native-elements'; +@inject('appStore') +@observer +export default class Search extends React.Component { + @observable + searchText = ''; + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + + } + handleBackButtonClick() { + this.props.navigation.goBack() + return true; + } + + searchAction() { + if (this.searchText !== '') { + this.store.searchProductsAction(this.searchText); + } else { + } + } + + renderSearchHistory() { + if (this.store.searchHistory == null) { + } else { + return this.store.searchHistory.map((items, index) => { + return ( + { + this.store.searchProductsAction(items); + this.searchText = items; + }} + style={{ + flexDirection: 'row', + marginLeft: 40, + marginRight: 40, + justifyContent: 'space-between', + alignItems: 'center', + marginTop: 10, + }}> + + + {items} + + + + ); + }); + } + } + + renderResult() { + if (this.store.searchResult.length > 0) { + return {this.renderItems()}; + } else { + return ( + + + {this.store.text.searchRecords} + this.store.removeSearchHistory()}> + + {'X ' + this.store.text.clearHistory} + + + + + {this.renderSearchHistory()} + + + ); + } + } + + async addShoppingCart(item) { + var itemIndex = await this.store.shoppingCartList.findIndex( + element => element.id === item.id, + ); + + if (itemIndex != -1) { + this.store.shoppingCartList[itemIndex].buyCount += 1; + + this.store.shoppingCartIds[ + await this.store.shoppingCartIds.findIndex( + element => element.itemId === item.id, + ) + ].qty += 1; + } else { + var data = { + itemId: item.id, + qty: 1, + }; + item.buyCount = 1; + this.store.shoppingCartList.push(item); + this.store.shoppingCartIds.push(data); + } + + this.store.addShoppingCart(this); + } + + renderItems() { + var matrix = []; + var newSearchItems = []; + var count = 0; + var searchItemsCopy = []; + searchItemsCopy = this.store.removeDuplicates( + this.store.searchResult, + it => it.id, + ); + + searchItemsCopy.map((items, index) => { + count += 1; + matrix.push(items); + if (count % 2 == 0) { + newSearchItems.push(matrix); + matrix = []; + } + }); + if (matrix.length > 0) { + newSearchItems.push(matrix); + matrix = []; + } + + return newSearchItems.map((items, index) => { + return ( + + {items.map((item, index) => { + return ( + + { + this.addShoppingCart(item); + }} + navigation={this.props.navigation} + /> + + ); + })} + + ); + }); + } + + render() { + return ( + + + + + + {this.store.text.searchTitle} + + + + + {/* this.setState({comment: value})} + returnKeyType={'done'} + onSubmitEditing={event => { + this.searchAction(); + }} + value={this.searchText} + onChangeText={text => (this.searchText = text)} + /> */} + + this.setState({ comment: value })} + returnKeyType={'search'} + onSubmitEditing={event => { + this.searchAction(); + }} + value={this.searchText} + onChangeText={text => (this.searchText = text)} /> + { this.searchAction(); }}> + + + + + + {this.renderResult()} + + + ); + } +} +const styles = StyleSheet.create({ + topBarButton: { + justifyContent: 'center', + alignItems: 'center', + height: 25, + borderColor: colors.lineColor, + borderBottomWidth: 1, + borderTopWidth: 1, + flexDirection: 'row', + }, + topBarText: { + fontSize: 9, + }, +}); diff --git a/src/pages/shoppingCart/shoppingCart.js b/src/pages/shoppingCart/shoppingCart.js new file mode 100644 index 0000000..39fdf0b --- /dev/null +++ b/src/pages/shoppingCart/shoppingCart.js @@ -0,0 +1,1075 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + StyleSheet, + Image, + TextInput, + RefreshControl, + BackHandler, + TouchableHighlight +} from 'react-native'; +var _ = require('lodash'); +import { width, height } from '../../services/screen'; +import FastImage from 'react-native-fast-image' +import Toast, { DURATION } from 'react-native-easy-toast'; +//import Modal, { ModalContent } from 'react-native-modals'; +import Modal from 'react-native-modal'; +import { inject, observer } from 'mobx-react'; +import { colors } from '../../assets/styles/colors-theme'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomSmallButton from '../../components/customSmallButton'; +import CustomLoginButon from '../../components/customLoginButton'; +import Rank from '../../components/rank'; +import TitleBar from '../../components/titleBar'; +import { observable } from 'mobx'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { s, vs, ms } from 'react-native-size-matters'; +import FeatherIcon from 'react-native-vector-icons/dist/Feather'; +import { ScrollView } from 'react-native-gesture-handler'; +@inject('appStore') +@observer +export default class ShoppingCart extends React.Component { + @observable + item1Exist = false; + @observable + allSelected = false; + @observable + deleteAble = false; + @observable + shippingPrice = 50; + @observable + modifyQuantityVisable = false; + @observable + addItemsVisable = false; + @observable + productIndex = null; + @observable + productQuantity = 0; + @observable + qtytemp = ''; + @observable + edit = false; + + constructor(props) { + super(props); + this.store = props.appStore; + this.handleBackButtonClick = this.handleBackButtonClick.bind(this); + } + + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return 'HKD ' + priceInt.toString(); + } + + totalPriceHandler() { + var totalPrice = 0; + this.store.shoppingCartList.map((items, index) => { + totalPrice = totalPrice + items.price * items.buyCount; + }); + console.log(totalPrice); + return totalPrice; + } + async componentDidMount() { + this._unsubscribe = this.props.navigation.addListener('focus', async () => { + await this.init() + }); + + } + async componentWillMount() { + BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick); + } + + componentWillUnmount() { + BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick); + } + handleBackButtonClick() { + this.props.navigation.navigate('Main'); + return true + } + + async init() { + await this.checkAllSelected(); + await this.store.getDiscount(); + await this.store.getShoppingCart(); + await this.store.discountHandler(this) + this.checkItems1Exist() + } + renderCheckBox() { + if (!this.allSelected) { + return ( + + ); + } else { + return ( + + ); + } + } + + checkItems1Exist() { + this.item1Exist = false + if (this.store.discount.length > 0) { + if (this.store.discount[0].type == 2) { + this.store.discount[0].items1.map((items, index) => { + var itemsindex = this.store.shoppingCartList.findIndex(element => items.id == element.id) + if (itemsindex >= 0) { + this.item1Exist = true + } + }) + } + } + } + + renderAddButton() { + if (this.store.discount.length > 0) { + if (this.store.discount[0].type == 2) { + if (this.item1Exist) { + return ( + { this.addItemsVisable = true }}> + + + {this.store.text.add + " HKD " + this.store.discount[0].value + " " + this.store.text.redeem + "....."} + + + + + ) + + } + } + } + } + allSelectClickAction() { + if (this.allSelected) { + this.store.shoppingCartList.map((items, index) => { + this.store.shoppingCartList[index].selected = false; + }); + this.allSelected = false; + this.deleteAble = false; + } else { + this.store.shoppingCartList.map((items, index) => { + this.store.shoppingCartList[index].selected = true; + }); + this.allSelected = true; + this.deleteAble = true; + } + } + async addFavouriteAction(items) { + if ( + (await this.store.favorite.findIndex( + element => element.id == items.id, + )) != -1 + ) { + this.refs.toast.show('商品已存在我的清單'); + } else { + console.log('addFavourite'); + this.store.addFavouritePost(_.cloneDeep(items), this); + } + } + + modifyQuantityAction() { + if (parseInt(this.productQuantity) > 0) { + + //action + if (parseInt(this.productQuantity) != this.store.shoppingCartList[this.productIndex].buyCount) + this.store.modifyShoppingCart( + this.productIndex, + this, + this.productQuantity, + ) + } else { + this.refs.toast.show(this.store.text.quantityCannotBeZero); + } + this.modifyQuantityVisable = false; + } + + addOrSubQtyAction(subOrAdd) { + var qty = _.cloneDeep(parseInt(this.productQuantity)) + if (subOrAdd) { + qty += 1 + } else { + qty -= 1 + } + if (parseInt(qty) > 0) { + console.log(qty) + console.log(this.productIndex) + //action + this.store.modifyShoppingCart( + this.productIndex, + this, + qty, + ) + } else { + this.refs.toast.show(this.store.text.quantityCannotBeZero); + } + } + + async checkAllSelected() { + var allSelected = true; + this.deleteAble = false; + await this.store.shoppingCartList.map((items, index) => { + if (!items.selected) { + allSelected = false; + } else { + this.deleteAble = true; + } + }); + this.allSelected = allSelected; + } + + clickItemCheckBoxAction(index) { + this.store.shoppingCartList.[index].selected = !this.store.shoppingCartList[index].selected; + this.checkAllSelected(); + } + + deleteIconColorReturn() { + if (this.deleteAble) { + return colors.mainColor; + } else { + return colors.lineColor; + } + } + + async deleteAction() { + console.log('test') + var deleteIndex = []; + var idsIndex = []; + await this.store.shoppingCartList.map((items, index) => { + if (items.selected) { + deleteIndex.push(index); + idsIndex.push(this.store.shoppingCartIds.findIndex(element => element.itemId == items.id)); + } + }); + + await this.store.deleteShoppingCartItem(deleteIndex, idsIndex, this); + } + + renderItemSelectBox(select, index) { + if (select) { + return ( + { + this.clickItemCheckBoxAction(index); + }}> + + + ); + } else { + return ( + { + this.clickItemCheckBoxAction(index); + }}> + + + ); + } + } + + renderOriPrice(items) { + if (items.hasOwnProperty('oriPrice')) { + if (items.oriPrice > items.price) { + return ( + + {this.priceHandler(items.oriPrice)} + + ) + } + } else { + + } + } + + + async goToOrder() { + var data = [] + data = await this.store.shoppingCartList.filter(e => e.inventory == 0) + if (data.length > 0) { + this.refs.toast.show(data[0].name + this.store.text.outOfStock) + } else { + this.store.orderList = []; + await this.store.shoppingCartList.map(async (items, index) => { + await this.store.orderList.push(_.cloneDeep(items)); + }); + + if (this.store.orderList.length > 0) { + this.props.navigation.navigate('Order', { order: true }); + } + } + } + + renderShoppingCartItems() { + return this.store.shoppingCartList.map((items, index) => { + return ( + + this.props.navigation.navigate('ProductsDetails', { data: items }) + }> + + {this.edit ? ( + + {this.renderItemSelectBox(items.selected, index)} + + ) : ( + + )} + + + + + + {items.hasOwnProperty('images') ? ( + + ) : ( + + + No Image Yet + + )} + + + + {items.name} + + {/* */} + + + + {'4 (300)'} + + + {this.renderOriPrice(items)} + items.price ? 'red' : 'black', + fontWeight: 'bold', + }}> + {this.priceHandler(items.price)} + + {/* { + this.modifyQuantityVisable = true; + this.productIndex = index; + this.productQuantity = _.cloneDeep(items.buyCount); + //this.productCountInput.focus(); + }}> + + {this.store.text.quantity + ':' + items.buyCount + ' '} + + + {'| '} + + + {this.priceHandler(items.price * items.buyCount)} + + + + {' ' + this.store.text.changeQuantity} + + */} + {/* */} + + + + {/* + { + this.modifyQuantityVisable = true; + this.productIndex = index; + this.productQuantity = _.cloneDeep(items.buyCount); + //this.productCountInput.focus(); + }}> + + {this.store.text.changeQuantity} + + + + {' | '} + + this.addFavouriteAction(items)}> + + {this.store.text.addToFavourite} + + + + {' | '} + + { + this.store.deleteShoppingCartItem(index, this); + }}> + + + */} + + + + {items.redeem ? ( + + + + ) : ( + { + this.productIndex = index + this.productQuantity = _.cloneDeep(items.buyCount); + this.addOrSubQtyAction(false) + }} + style={{ + height: s(40), + width: s(25), + borderWidth: 1, + borderColor: colors.lineColor, + borderTopLeftRadius: s(10), + borderBottomLeftRadius: s(10), + backgroundColor: 'white', + alignItems: 'center', + justifyContent: 'center', + }}> + - + {/* */} + + { + this.modifyQuantityVisable = true; + this.productIndex = index; + this.productQuantity = _.cloneDeep(items.buyCount); + }}> + {items.buyCount} + + { + this.productIndex = index + this.productQuantity = _.cloneDeep(items.buyCount); + this.addOrSubQtyAction(true) + }} + style={{ + height: s(40), + width: s(25), + borderWidth: 1, + backgroundColor: 'white', + borderColor: colors.lineColor, + borderTopRightRadius: s(10), + borderBottomRightRadius: s(10), + alignItems: 'center', + justifyContent: 'center', + }}> + + + {/* */} + + )} + + + + + + + + ); + }); + } + renderShippingMessage() { + if (this.store.shoppingCartList.length > 0) { + if (this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? 4 : 2))].freeShippingMinAmount > this.totalPriceHandler()) { + return ( + + + {this.store.text.shippingMessage1 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? 4 : 2))].freeShippingMinAmount) + + this.store.text.shippingMessage2 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? 4 : 2))].fee) + + this.store.text.shippingMessage3 + } + + {this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? ( + {this.store.text.groupShippingMessage1 + + this.store.priceHandler(this.store.shippingMethods.content[this.store.shippingMethods.content.findIndex(e => e.id == (this.store.loginUserData.data.hasOwnProperty('shoppingGroup') ? 4 : 2))].freeShippingMinAmount) + + this.store.text.groupShippingMessage2 + } + ) : ()} + + + ) + } + } + } + + + renderAddOptions() { + if (this.store.discount.length > 0 && this.item1Exist) { + return ( + + + {/* + {this.store.text.shoppingGroup} + */} + + + {this.store.text.add + " HKD " + this.store.discount[0].value + " " + this.store.text.redeem} + + this.addItemsVisable = false}> + + + + + + + {this.store.discount[0].items2.map((items, index) => { + return ( + + + + + + + { this.props.navigation.navigate('ProductsDetails', { data: items }); this.addItemsVisable = false }}> + {items.hasOwnProperty('images') ? ( + + ) : ( + + + No Image Yet + + )} + + + + + {items.name} + + + this.store.addRedeemItemAction(items, this)}> + + {this.store.text.redeem} + + + + + + + + + + + + {/* + + + + */} + + + + ) + })} + + + + + + + ) + } + } + + render() { + return ( + + + {this.renderShippingMessage()} + + + + {this.store.text.shoppingCartHave + + ' ' + + this.store.shoppingCartList.length + + ' ' + + this.store.text.products} + + + {this.edit ? ( + + this.allSelectClickAction()}> + {this.renderCheckBox()} + + {this.store.text.selectAll} + + + { + this.deleteAction(); + }}> + + + {this.store.text.remove} + + + + ) : ( + + )} + + { + this.edit = !this.edit; + }} + style={[ + styles.topBarButton, + { flex: 0.3, borderLeftWidth: this.edit ? 1 : 0 }, + ]}> + + + {this.edit + ? this.store.text.cancel + this.store.text.edit + : this.store.text.edit} + + + + + {this.store.shoppingCartList.length > 0 ? ( + + + + this.store.getShoppingCart()} + /> + }> + {this.renderAddButton()} + {this.renderShoppingCartItems()} + + + + + + + + + + {this.store.text.subTotal} + + + + + {this.priceHandler(this.totalPriceHandler())} + + + + + + + {this.store.text.total} + + + + + {this.priceHandler(this.totalPriceHandler())} + + + + + { this.goToOrder(); }} /> + + + + + ) : ( + + {this.store.text.shoppingcartEmpty} + + )} + + + + + {this.productIndex != null ? ( + { + this.productCountInput = input; + }} + onChangeText={text => (this.productQuantity = text)} + /> + ) : ( + + )} + + this.modifyQuantityAction()}> + {this.store.text.sure} + + + + + + {/* { + this.modifyQuantityVisable = false; + }} + swipeDirection={['up', 'down']} // can be string or an array + swipeThreshold={200} // default 100 + onSwipeOut={event => { + this.modifyQuantityVisable = false; + }}> + + + + {this.productIndex != null ? ( + { + this.productCountInput = input; + }} + onChangeText={text => (this.productQuantity = text)} + /> + ) : ( + + )} + + this.modifyQuantityAction()}> + {this.store.text.sure} + + + + */} + + {this.renderAddOptions()} + + + + ); + } +} +const styles = StyleSheet.create({ + topBarButton: { + justifyContent: 'center', + alignItems: 'center', + height: 25, + borderColor: colors.mainColor, + flexDirection: 'row', + }, + topBarText: { + fontSize: 10, + color: colors.mainColor, + }, +}); diff --git a/src/pages/signin/signin.js b/src/pages/signin/signin.js new file mode 100644 index 0000000..485153f --- /dev/null +++ b/src/pages/signin/signin.js @@ -0,0 +1,535 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + Keyboard, + Platform, + TouchableWithoutFeedback, + ImageBackground, + ScrollView, +} from 'react-native'; +import { inject, observer } from 'mobx-react'; +import { observable } from 'mobx'; +import FastImage from 'react-native-fast-image' +import { Input } from 'react-native-elements'; +import { Hoshi } from 'react-native-textinput-effects'; +import TitleBar from '../../components/titleBar'; +import { GoogleSignin, statusCodes } from '@react-native-google-signin/google-signin'; +import { images } from '../../assets/images/imageIndex'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { width, height } from '../../services/screen'; +import { colors } from '../../assets/styles/colors-theme'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import FontAwsome from 'react-native-vector-icons/FontAwesome'; +import CustomTextInput from '../../components/customTextInput'; +import HoshiTextInput from '../../components/hoshiTextInput'; +import CustomLoginButton from '../../components/customLoginButton'; +import { getStatusBarHeight } from 'react-native-status-bar-height'; +// import { +// AccessToken, +// GraphRequest, +// GraphRequestManager, +// LoginManager, +// } from 'react-native-fbsdk'; +import appleAuth, { + AppleButton, + AppleAuthRequestOperation, + AppleAuthRequestScope, +} from '@invertase/react-native-apple-authentication'; + + +Icon.loadFont(); +FontAwsome.loadFont(); +@inject('appStore') +@observer +export default class Signin extends React.Component { + @observable + loginUserData = { + username: '', + password: '', + }; + + constructor(props) { + super(props); + this.store = props.appStore; + + } + + isNumeric(value) { + return /^\d+$/.test(value); + } + + loginAction() { + if (this.loginUserData.username !== '') { + if (this.loginUserData.password !== '') { + if (this.isNumeric(this.loginUserData.username)) { + this.loginUserData.username = this.loginUserData.username.slice(0, 0) + '852' + this.loginUserData.username.slice(0); + } + var loginData = { + email: this.loginUserData.username, + pwd: this.loginUserData.password + } + this.store.loginPost(this, loginData, true); + } else { + this.refs.toast.show(this.store.text.pleaseInputYourPassword); + } + } else { + this.refs.toast.show(this.store.text.pleaseInputYourEmail); + } + } + + componentDidMount() { + this._configureGoogleSignIn(); + } + + _configureGoogleSignIn() { + GoogleSignin.configure({ + webClientId: + '966559802795-nogv7cmugqkk4ocuev818u5hicpnrhaf.apps.googleusercontent.com', + offlineAccess: false, + }); + } + + async loginWithGoogle() { + try { + await GoogleSignin.hasPlayServices(); + const userInfo = await GoogleSignin.signIn(); + console.log(userInfo.idToken); + const isSignedIn = await GoogleSignin.getTokens(); + var data = { + platform: 'google', + token: isSignedIn.accessToken, + }; + this.store.thirdPartyLogin(data, this, false); + console.log(isSignedIn); + } catch (error) { + console.log(error); + if (error.code === statusCodes.SIGN_IN_CANCELLED) { + // user cancelled the login flow + } else if (error.code === statusCodes.IN_PROGRESS) { + // operation (e.g. sign in) is in progress already + } else if (error.code === statusCodes.PLAY_SERVICES_NOT_AVAILABLE) { + // play services not available or outdated + } else { + // some other error happened + } + } + } + async onAppleButtonPress() { + + const appleAuthRequestResponse = await appleAuth.performRequest({ + requestedOperation: appleAuth.Operation.LOGIN, + requestedScopes: [appleAuth.Scope.EMAIL, appleAuth.Scope.FULL_NAME], + }); + // get current authentication state for user + // /!\ This method must be tested on a real device. On the iOS simulator it always throws an error. + const credentialState = await appleAuth.getCredentialStateForUser( + appleAuthRequestResponse.user, + ); + // use credentialState response to ensure the user is authenticated + if (credentialState === appleAuth.State.AUTHORIZED) { + this.store.loginWithApple( + appleAuthRequestResponse.identityToken, + this, + false, + ); + // user is authenticated + } + } + + async handleResponse() { + try { + + const appleAuthRequestResponse = await appleAuth.performRequest({ + requestedOperation: AppleAuthRequestOperation.LOGIN, + requestedScopes: [ + AppleAuthRequestScope.EMAIL, + AppleAuthRequestScope.FULL_NAME, + ], + }); + if (appleAuthRequestResponse['realUserStatus']) { + console.log(appleAuthRequestResponse); + this.store.loginWithApple( + appleAuthRequestResponse.identityToken, + this, + false, + ); + } + } catch (error) { + console.log(error); + // if (error.code === AppleAuthError.CANCELED) { + // } + // if (error.code === AppleAuthError.FAILED) { + // alert('Touch ID wrong'); + // } + // if (error.code === AppleAuthError.INVALID_RESPONSE) { + // alert('Touch ID wrong'); + // } + // if (error.code === AppleAuthError.NOT_HANDLED) { + // } + // if (error.code === AppleAuthError.UNKNOWN) { + // alert('Touch ID wrong'); + // } + } + } + + loginWithFacebook() { + // Attempt a login using the Facebook login dialog asking for default permissions. + // LoginManager.logInWithPermissions(['public_profile', 'email']).then( + // login => { + // if (login.isCancelled) { + // console.log('Login cancelled'); + // } else { + // AccessToken.getCurrentAccessToken().then(data => { + // const accessToken = data.accessToken.toString(); + // data = { + // platform: 'facebook', + // token: accessToken, + // }; + // this.store.loading = false; + // this.store.thirdPartyLogin(data, this, false); + // // this.store.thirdPartyLogin( + // // data, + // // this, + // // !this.props.navigation.state.params.icon, + // // ); + // // Alert.alert( JSON.stringify(accessToken)) + // console.log(accessToken); + // // this.getInfoFromToken(accessToken); + // }); + // } + // }, + // error => { + // console.log('Login fail with error: ' + JSON.stringify(error)); + // Alert.alert('fblogin', JSON.stringify(error)); + // }, + // ); + } + + renderThirdPartyLogin(name) { + return ( + { + if (name == 'google') { + console.log('google'); + this.loginWithGoogle(); + } else { + this.loginWithFacebook(); + } + }} + style={{ + borderColor: name === 'facebook' ? '#3E5C9A' : '#DF4B39', + height: 50, + borderWidth: 1, + borderRadius: 30, + width: width - 60, + justifyContent: 'center', + alignItems: 'center', + marginTop: 10, + flexDirection: 'row', + }}> + + + + + + {name === 'facebook' + ? 'Facebook' + this.store.text.login + : 'Google' + this.store.text.login} + + + + + ); + } + render() { + return ( + + + + {/* + { + this.props.navigation.goBack(); + }}> + + + */} + + + + + + {/* {this.renderThirdPartyLogin('google')} + {this.renderThirdPartyLogin('facebook')} + {Platform.OS === 'ios' ? ( + { + this.handleResponse(); + }}> + + + + Sign in with Apple + + + ) : ( + + )} */} + + {/* this.handleResponse()} + style={{ + width: 300, + height: 50, + margin: 10, + }} + /> */} + + + + + { + this.loginUserData.username = text; + }} + returnKeyType={'next'} + secureTextEntry={false} + onSubmitEditing={event => { + this.passwordinput.focus(); + }} + /> + { + this.loginUserData.password = text; + }} + secureTextEntry={true} + returnKeyType={'done'} + inputRef={input => { + this.passwordinput = input; + }} + onSubmitEditing={event => { + Keyboard.dismiss(); + }} + /> + + { + this.props.navigation.navigate('ForgotPassword'); + }}> + + {this.store.text.forgotPassword + '?'} + + + + + { + this.loginAction(); + }} + /> + + {/* {this.renderThirdPartyLogin('facebook')} */} + + {this.renderThirdPartyLogin('google')} + + + {Platform.OS == 'ios' ? ( + + {/* { + this.onAppleButtonPress(); + }} + /> */} + + { + this.onAppleButtonPress(); + }} + style={{ + borderColor: 'black', + height: 50, + borderWidth: 1, + borderRadius: 30, + width: width - 60, + justifyContent: 'center', + alignItems: 'center', + marginTop: 10, + flexDirection: 'row', + }}> + + + + + + {'Sign in with Apple'} + + + + + + + ) : ( + + )} + + { + this.props.navigation.navigate('Signup'); + }}> + + {this.store.text.noAcountSignUp} + + + + + + + + + ); + } +} diff --git a/src/pages/signup/forgotPassword.js b/src/pages/signup/forgotPassword.js new file mode 100644 index 0000000..8244004 --- /dev/null +++ b/src/pages/signup/forgotPassword.js @@ -0,0 +1,491 @@ +import React, { Component } from 'react'; +import { + View, + Text, + TouchableHighlight, + StyleSheet, + TouchableOpacity, + Keyboard, + Linking, + TextInput, +} from 'react-native'; +import Loading from '../../components/Loading'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import { width, height } from '../../services/screen'; +import Icon from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { colors } from '../../assets/styles/colors-theme'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import HoshiTextInput from '../../components/hoshiTextInput'; +import CommonTextInput from '../../components/commonTextInput'; +import { inject, observer } from 'mobx-react'; +import { observable } from 'mobx'; +const countryCodeDropDownData = [ + { value: '852', label: '+852' }, + { value: '86', label: '+86' }, + { value: '886', label: '+886' }, +]; + +@inject('appStore') +@observer +export default class ForgotPassword extends Component { + @observable + phoneVerification = ''; + @observable + sendstate = true; + @observable + countryCode = '852'; + @observable + phone = ''; + @observable + newPassword = ''; + @observable + confirmPassword = ''; + constructor(props) { + super(props); + this.store = props.appStore; + this.state = { + countryCode: '852', + }; + } + componentWillMount() { + // this.signupData = this.props.navigation.state.params.signupData; + } + + ForgotPasswordAction() { + if (this.phoneVerification != '') { + if (this.phone != '') { + if (this.newPassword.length >= 8) { + if (this.confirmPassword.length >= 8) { + if (this.newPassword == this.confirmPassword) { + var data = { + verCode: this.phoneVerification.toString(), + mobile: this.phone.toString(), + countryCode: '852', + pwd: this.newPassword, + }; + console.log(data) + this.store.forgotPassword(data, this); + } else { + this.refs.toast.show( + this.store.text + .theNewPasswordDoesNotMatchTheNwConfirmedPassword, + ); + } + } else { + this.refs.toast.show( + this.store.text + .yourNewConfirmationPasswordMustBeAtLeast8Characters, + ); + } + } else { + this.refs.toast.show( + this.store.text.yourNewConfirmationPasswordMustBeAtLeast8Characters, + ); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterYourPhoneNumber); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterVerificationCode); + } + } + + navigatieAction(page) { + this.props.navigation.navigate(page); + } + + startToCount() { + this.interval = setInterval(() => { + this.count(); + }, 1000); + } + resendAction() { + this.store.countdown = 10; + this.resend = false; + this.startToCount(); + } + + count() { + this.store.timer -= 1; + if (this.store.timer == 0) { + this.sendstate = true; + clearInterval(this.interval); + } + } + + componentWillUnmount() { + clearInterval(this.interval); + } + + handleClickCountdown() { + var data = { + countryCode: '852', + mobile: this.phone.toString(), + }; + this.store.sendsmsVerify(data, this); + } + + startToCountDown = () => { + this.countdown && this.countdown.startCountdown(); + }; + + handleNetworkFailed = () => alert('network failed'); + + sendTextReturn() { + if (this.sendstate) { + return this.store.text.requestVerfiyCode; + } else { + return this.store.timer.toString(); + } + } + + sendAction() { + if (this.phone != '') { + if (this.newPassword.length >= 8) { + if (this.confirmPassword.length >= 8) { + if (this.newPassword == this.confirmPassword) { + if (this.sendstate) { + this.handleClickCountdown(); + clearInterval(this.interval); + this.store.timer = 60; + this.sendstate = false; + this.startToCount(); + } + } else { + this.refs.toast.show( + this.store.text.theNewPasswordDoesNotMatchTheNwConfirmedPassword, + ); + } + } else { + this.refs.toast.show( + this.store.text.yourNewConfirmationPasswordMustBeAtLeast8Characters, + ); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterYourPhoneNumber); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterYourPhoneNumber); + } + } + + handleStopCountdown = () => this.countdown && this.countdown.stopCountdown(); + + countDownButton() { + return ; + } + + render() { + return ( + + + {/* + + + */} + + + + + + + {this.store.text.pleasePressTheSendButton} + + {/* + (this.phone = phone)} + placeholder={this.store.text.mobilephone} + placeholderStyle={{fontWeight: 'bold'}} + placeholderTextColor={colors.textColor} + blurOnSubmit={false} + returnKeyType={'next'} + onSubmitEditing={event => { + this.passwordInput.focus(); + }} + /> + */} + { + this.phone = text; + }} + // returnKeyType={'next'} + secureTextEntry={false} + // onSubmitEditing={event => { + // this.passwordinput.focus(); + // }} + /> + + + {/* { + this.passwordInput = input; + }} + secureTextEntry={true} + value={this.password} + onChangeText={password => (this.newPassword = password)} + onSubmitEditing={event => { + this.confirmPasswordInput.focus(); + }} + /> */} + (this.newPassword = password)} + returnKeyType={'next'} + secureTextEntry={true} + onSubmitEditing={event => { + this.confirmPasswordInput.focus(); + }} + /> + + + {/* + { + this.confirmPasswordInput = input; + }} + secureTextEntry={true} + value={this.confirmPassword} + onChangeText={confirmPassword => + (this.confirmPassword = confirmPassword) + } + /> + */} + + { + this.confirmPasswordInput = input; + }} + placeholder={this.store.text.repeatNewPassword} + value={this.confirmPassword} + onChangeText={password => (this.confirmPassword = password)} + returnKeyType={'done'} + secureTextEntry={true} + + /> + + { + this.sendAction(); + }} + style={{ + width: 150, + height: 50, + marginTop: 20, + borderRadius: 10, + backgroundColor: colors.mainColor, + justifyContent: 'center', + alignItems: 'center', + }}> + {this.sendTextReturn()} + + + + + + (this.phoneVerification = text.toString()) + } + keyboardType={'numeric'} + underlineColorAndroid="rgba(0,0,0,0)" + placeholder={this.store.text.verificationCode} + placeholderStyle={{ + fontWeight: 'bold', + + fontSize: 10, + }} + placeholderTextColor={colors.textColor} + /> + + + + + + + { + this.ForgotPasswordAction(); + }}> + {this.store.text.sure} + + + + + ); + } +} + +const styles = StyleSheet.flatten({ + textView: { + color: colors.textColor, + + fontSize: 13, + }, + buttonText: { + color: '#fff', + }, + buttonView: { + backgroundColor: colors.mainColor, + marginRight: 30, + marginLeft: 30, + marginTop: 30, + marginBottom: 30, + height: 50, + justifyContent: 'center', + alignItems: 'center', + borderRadius: 10, + }, + buttonText: { + fontSize: 15, + + color: 'white', + }, + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + mainContainer: { + width: width, + flex: 1, + }, + + loginButton: { + width: 200, + height: 50, + marginTop: 30, + }, + + signupButton: { + width: width, + height: 50, + }, + phoneCell: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + paddingHorizontal: 15, + height: 40, + borderBottomWidth: 1, + borderColor: '#ebebeb', + width: width, + backgroundColor: '#fff', + }, + phoneInfo: { + flexDirection: 'row', + alignItems: 'center', + }, + input: { + height: 30, + width: width * 0.4, + marginLeft: 10, + padding: 0, + fontSize: 14, + }, + countdown: { + borderRadius: 5, + borderWidth: 2, + borderColor: colors.textColor, + height: 40, + justifyContent: 'center', + alignItems: 'center', + }, + countdownTitle: { + color: colors.textColor, + fontSize: 12, + }, + signupButton: { + backgroundColor: colors.textColor, + width: width, + height: 60, + justifyContent: 'center', + alignItems: 'center', + }, +}); diff --git a/src/pages/signup/signUpVerify.js b/src/pages/signup/signUpVerify.js new file mode 100644 index 0000000..5b1f9df --- /dev/null +++ b/src/pages/signup/signUpVerify.js @@ -0,0 +1,469 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + TouchableHighlight, + Image, + TextInput, + Keyboard, + StyleSheet, +} from 'react-native'; +import { inject, observer } from 'mobx-react'; +import { images } from '../../assets/images/imageIndex'; +import TitleBar from '../../components/titleBar'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import { width, height } from '../../services/screen'; +import { colors } from '../../assets/styles/colors-theme'; +var _ = require('lodash'); +import Icon from 'react-native-vector-icons/dist/MaterialIcons'; +import Icon2 from 'react-native-vector-icons/dist/Ionicons'; +import CustomTextInput from '../../components/customTextInput'; +import CustomLoginButton from '../../components/customLoginButton'; +import { observable } from 'mobx'; +Icon.loadFont(); +@inject('appStore') +@observer +export default class SignUpVerify extends React.Component { + @observable + phoneVerification = ''; + @observable + signupData = this.props.route.params.data; + @observable + addMobile = this.props.route.params.addMobile; + @observable + sendstate = true; + @observable + countryCode = '852'; + @observable + thirdParty = false; + @observable + backupMobile = ''; + + constructor(props) { + super(props); + this.store = props.appStore; + this.state = { + countryCode: '852', + }; + } + componentWillMount() { } + + navigatieAction(page) { + this.props.navigation.navigate(page); + } + + startToCount() { + this.interval = setInterval(() => { + this.count(); + }, 1000); + } + resendAction() { + this.store.timer = 60; + this.resend = false; + this.startToCount(); + } + + count() { + this.store.timer -= 1; + if (this.store.timer == 0) { + this.sendstate = true; + clearInterval(this.interval); + } + } + + componentWillUnmount() { + clearInterval(this.interval); + } + + handleClickCountdown() { + var smsData = { + mobile: this.signupData.mobile.toString(), + countryCode: '+852', + }; + this.store.sendsmsVerify(smsData, this); + this.backupMobile = _.cloneDeep(this.signupData.mobile.toString()); + } + + startToCountDown = () => { + this.countdown && this.countdown.startCountdown(); + }; + + handleNetworkFailed = () => alert('network failed'); + + sendTextReturn() { + if (this.sendstate) { + return this.store.text.requestVerfiyCode; + } else { + return this.store.timer.toString(); + } + } + + sendAction() { + if (this.sendstate) { + if (this.signupData.mobile.length > 6) { + this.handleClickCountdown(); + clearInterval(this.interval); + this.store.timer = 60; + this.sendstate = false; + this.startToCount(); + } else { + this.refs.toast.show(this.store.text.pleaseEnterYourPhoneNumber); + } + } + } + + handleStopCountdown = () => this.countdown && this.countdown.stopCountdown(); + + signupAction() { + console.log(this.signupData.mobile); + console.log(this.backupMobile); + if (!this.addMobile) { + if (this.signupData.verCode.length > 0) { + if (this.backupMobile == this.signupData.mobile) { + if (this.signupData.name != '') { + //action + + if(this.signupData.email == ''){ + delete this.signupData.email; + } + console.log(this.signupData); + this.store.signupPost(this, this.signupData); + } else { + this.refs.toast.show(this.store.text.pleaseInputLastName); + } + } else { + this.refs.toast.show('與SMS的電話號碼不符'); + } + } else { + this.refs.toast.show(this.store.text.pleaseInputVerificationCode); + } + } else { + if (this.backupMobile == this.signupData.mobile) { + const data = { + countryCode: '852', + mobile: this.signupData.mobile, + verCode: this.signupData.verCode, + }; + this.store.bindMobile(data, this); + } else { + this.refs.toast.show('與SMS的電話號碼不符'); + } + } + } + + render() { + return ( + + + + + + + {this.store.text.pleasePressTheSendButton} + + + {this.addMobile ? ( + + + (this.signupData.mobile = phone)} + placeholder={this.store.text.mobilephone} + placeholderStyle={{ fontWeight: 'bold' }} + placeholderTextColor={colors.textColor} + secureTextEntry={false} + blurOnSubmit={false} + /> + + {/* + + (this.signupData.first_name = first_name) + } + placeholder={this.store.text.firstName} + placeholderStyle={{fontWeight: 'bold'}} + placeholderTextColor={colors.textColor} + secureTextEntry={false} + blurOnSubmit={false} + /> + + + + (this.signupData.last_name = last_name) + } + placeholder={this.store.text.lastName} + placeholderStyle={{fontWeight: 'bold'}} + placeholderTextColor={colors.textColor} + secureTextEntry={false} + blurOnSubmit={false} + /> + */} + + ) : ( + + {this.signupData.countryCode + ' ' + this.signupData.mobile} + + )} + + + + + (this.signupData.verCode = text.toString()) + } + value={this.signupData.verCode} + keyboardType={'numeric'} + underlineColorAndroid="rgba(0,0,0,0)" + placeholder={this.store.text.verificationCode} + placeholderStyle={{ + fontWeight: 'bold', + fontSize: 10, + }} + placeholderTextColor={colors.textColor} + /> + + + { + this.sendAction(); + }} + /> + + + + + + + { + this.signupAction(); + }} + title={this.addMobile ? 'Add mobile' : this.store.text.register} + /> + + + + + ); + } +} + +const styles = StyleSheet.flatten({ + textView: { + fontSize: 13, + }, + buttonText: { + color: '#fff', + }, + buttonView: { + backgroundColor: colors.mainColor, + marginRight: 30, + marginLeft: 30, + marginTop: 30, + marginBottom: 30, + height: 50, + justifyContent: 'center', + alignItems: 'center', + borderRadius: 10, + }, + buttonText: { + fontSize: 15, + + color: 'white', + }, + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + mainContainer: { + width: width, + flex: 1, + }, + + loginButton: { + width: 200, + height: 50, + marginTop: 30, + }, + + signupButton: { + width: width, + height: 50, + }, + phoneCell: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + paddingHorizontal: 15, + height: 40, + borderBottomWidth: 1, + borderColor: '#ebebeb', + width: width, + backgroundColor: '#fff', + }, + phoneInfo: { + flexDirection: 'row', + alignItems: 'center', + }, + input: { + height: 30, + width: width * 0.4, + marginLeft: 10, + padding: 0, + fontSize: 14, + }, + countdown: { + borderRadius: 5, + borderWidth: 2, + borderColor: colors.textColor, + height: 40, + justifyContent: 'center', + alignItems: 'center', + }, + countdownTitle: { + color: colors.textColor, + fontSize: 12, + }, + signupButton: { + backgroundColor: colors.textColor, + width: width, + height: 60, + justifyContent: 'center', + alignItems: 'center', + }, +}); diff --git a/src/pages/signup/signup.js b/src/pages/signup/signup.js new file mode 100644 index 0000000..edd7e11 --- /dev/null +++ b/src/pages/signup/signup.js @@ -0,0 +1,340 @@ +import React from 'react'; +import { + SafeAreaView, + Text, + View, + TouchableOpacity, + Image, + TextInput, + Keyboard, + Linking +} from 'react-native'; +import { inject, observer } from 'mobx-react'; +import { images } from '../../assets/images/imageIndex'; +import FastImage from 'react-native-fast-image' +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import { width, height } from '../../services/screen'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import { colors } from '../../assets/styles/colors-theme'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import AntDesignIcon from 'react-native-vector-icons/AntDesign'; +import CustomTextInput from '../../components/customTextInput'; +import HoshiTextInput from '../../components/hoshiTextInput'; +import CustomSignupInput from '../../components/customSignupInput'; +import CustomLoginButton from '../../components/customLoginButton'; +import TitleBar from '../../components/titleBar'; +import { observable } from 'mobx'; +import { Colors } from 'react-native-paper'; + +Icon.loadFont(); +AntDesignIcon.loadFont(); +@inject('appStore') +@observer +export default class Signup extends React.Component { + @observable + signupData = { + name: '', + countryCode: '+852', + mobile: '', + email: '', + verCode: '', + pwd: '', + }; + @observable + confirmPassword = ''; + @observable + signCheck = false; + + constructor(props) { + super(props); + this.store = props.appStore; + } + renderThirdPartyLogin(name) { + return ( + + {name === 'facebook' ? ( + + ) : ( + + )} + + {name === 'facebook' ? 'Facebook Login' : 'Google Login'} + + + ); + } + + signupAction() { + if (this.signCheck) { + if (this.signupData.mobile.length >= 8) { + if (this.signupData.pwd != null || this.signupData.pwd != '') { + if (this.signupData.pwd.length >= 8) { + if (this.confirmPassword != null || this.confirmPassword != '') { + if (this.confirmPassword == this.signupData.pwd) { + if (this.signupData.first_name != '') { + if (this.signupData.last_name != '') { + //action + console.log(this.signupData); + this.store.checkMember(this.signupData, this); + } else { + this.refs.toast.show(this.store.text.pleaseInputLastName); + } + } else { + this.refs.toast.show(this.store.text.pleaseInputFirstName); + } + } else { + this.refs.toast.show( + this.store.text.thePasswordDoesNotMatchTheConfirmedPassword, + ); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterConfirmPassword); + } + } else { + this.refs.toast.show( + this.store.text.yourPasswordMustBeAtLeast8Characters, + ); + } + } else { + this.refs.toast.show(this.store.text.pleaseEnterPassword); + } + } else { + this.refs.toast.show( + this.store.text.PleaseInputYourRightMobilePhoneNumber, + ); + } + } else { + this.refs.toast.show( + this.store.text.pleaseAccept + " " + this.store.text.tearmsOfService + " " + this.store.text.and + " " + this.store.text.privacyPolicy + ); + } + } + render() { + return ( + + {/* + { + this.props.navigation.goBack(); + }}> + + + */} + + + + + { + this.signupData.name = text; + }} + returnKeyType={'next'} + secureTextEntry={false} + onSubmitEditing={event => { + this.emailInput.focus(); + }} + /> + {/* { + this.signupData.last_name = text; + }} + returnKeyType={'next'} + secureTextEntry={false} + onSubmitEditing={event => { + this.emailInput.focus(); + }} + inputRef={input => { + this.lastnameInput = input; + }} + /> */} + { + this.signupData.email = text; + }} + returnKeyType={'next'} + secureTextEntry={false} + onSubmitEditing={event => { + this.phoneInput.focus(); + }} + inputRef={input => { + this.emailInput = input; + }} + /> + { + this.signupData.mobile = text; + }} + returnKeyType={'next'} + secureTextEntry={false} + onSubmitEditing={event => { + this.passwordInput.focus(); + }} + inputRef={input => { + this.phoneInput = input; + }} + /> + { + this.signupData.pwd = text; + }} + returnKeyType={'next'} + secureTextEntry={true} + onSubmitEditing={event => { + this.confirmPasswordInput.focus(); + }} + inputRef={input => { + this.passwordInput = input; + }} + /> + { + this.confirmPassword = text; + }} + returnKeyType={'done'} + secureTextEntry={true} + onSubmitEditing={event => { + Keyboard.dismiss(); + }} + inputRef={input => { + this.confirmPasswordInput = input; + }} + /> + + + { + this.signCheck = !this.signCheck + }}> + + + + { + // // this.navigatieAction("SignUpVerify"); + // Linking.openURL( + // "https://www.hangryfood.co/privacy-statement" + // ); + // }} + > + {this.store.text.bryato} + { + Linking.openURL( + "https://puremall.com.hk/#mu-tnc" + ); + }} + > + {" " + this.store.text.tearmsOfService + " "} + + + {" " + this.store.text.and + " "} + + { + Linking.openURL( + "https://puremall.com.hk/#mu-privacy" + ); + }} + > + {this.store.text.privacyPolicy + "."} + + + + + + + { + this.signupAction(); + }} + /> + + + + + ); + } +} diff --git a/src/pages/splash/splashScreen.js b/src/pages/splash/splashScreen.js new file mode 100644 index 0000000..265ae86 --- /dev/null +++ b/src/pages/splash/splashScreen.js @@ -0,0 +1,118 @@ +import React from 'react'; +import {SafeAreaView, Text, Image, Alert,Linking} from 'react-native'; +import {images} from '../../assets/images/imageIndex'; +import messaging from '@react-native-firebase/messaging'; +import {colors} from '../../assets/styles/colors-theme'; +import {inject, observer} from 'mobx-react'; +import AppVersion from '../../../appVersion'; +import AsyncStorage from '@react-native-community/async-storage'; +@inject('appStore') +@observer +export default class SplashScreen extends React.Component { + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentDidMount() { + // await this.performTimeConsumingTask(); + console.log(AppVersion.version); + // if ((await this.store.checkVersion()) == AppVersion.version) { + this.init(); + // } else { + // Alert.alert( + // '請更新', + // '好新鮮已有新版本,這到APP STORE更新', + // [ + // { + // text: '更新', + // onPress: () => { + // Linking.canOpenURL('http://onelink.to/3nqphw').then( + // supported => { + // if (supported) { + // Linking.openURL('http://onelink.to/3nqphw'); + // } else { + // console.log( + // "Don't know how to open URI: " + + // response.data.wechat.qr_code_url, + // ); + // } + // }, + // ); + // }, + // }, + // ], + // {cancelable: false}, + // ); + // } + //this.init(); + // this.props.navigation.navigate('BottomTabScreen'); + } + + performTimeConsumingTask = async () => { + return new Promise(resolve => + setTimeout(() => { + resolve('result'); + }, 1500), + ); + }; + + // async requestUserPermission() { + // const authStatus = await messaging().requestPermission(); + // const enabled = + // authStatus === messaging.AuthorizationStatus.AUTHORIZED || + // authStatus === messaging.AuthorizationStatus.PROVISIONAL; + + // if (enabled) { + // console.log('Authorization status:', authStatus); + // } + // } + + async init() { + try { + const value = await AsyncStorage.getItem('lang'); + if (value !== null) { + this.store.changeLanguage(value); + } else { + } + } catch (e) { + // error reading value + } + this.store.notificationInit(); + this.store.getNotificationsMessage() + var data = await this.store.getLocalData('logindata'); + var searchHistoryData = await this.store.getLocalData('searchHistory'); + if (searchHistoryData != null) { + this.store.searchHistory = searchHistoryData; + console.log(this.store.searchHistoryData); + } else { + console.log('null'); + } + // this.store.removeValue('searchHistory'); + if (data != null) { + var userloginData = { + token: data.token, + device: data.device, + }; + // this.store.userData = userloginData; + console.log(data); + this.store.token = data.token; + this.store.uuid = data.device; + await this.store.getUserData(this, userloginData, false); + } + await this.store.getCategories(); + this.store.getDiscount() + } + render() { + return ( + + + + ); + } +} diff --git a/src/pages/tutorial/tutorial.js b/src/pages/tutorial/tutorial.js new file mode 100644 index 0000000..7439584 --- /dev/null +++ b/src/pages/tutorial/tutorial.js @@ -0,0 +1,224 @@ +import React, { Component } from 'react'; +import { + Platform, + StyleSheet, + View, + TouchableOpacity, + Alert, + SafeAreaView, + Text, + TextInput, + Image, + FlatList, + StatusBar +} from 'react-native'; +import { observable, action, transaction } from 'mobx'; +import { observer, inject } from 'mobx-react'; +var _ = require('lodash'); +import moment from 'moment' +import Loading from '../../components/Loading'; +import Icon from 'react-native-vector-icons/dist/Ionicons'; +import Icon2 from 'react-native-vector-icons/dist/MaterialCommunityIcons'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; +import CustomLoginButton from '../../components/customLoginButton'; +import Toast, { DURATION } from 'react-native-easy-toast'; +import GallerySwiper from 'react-native-gallery-swiper'; +import images from '../../assets/images/imageIndex' +import { colors } from '../../assets/styles/colors-theme'; +import TitleBar from '../../components/titleBar'; +import HTMLView from 'react-native-htmlview'; +import Menu, { + MenuProvider, + MenuTrigger, + MenuOptions, + MenuOption, + renderers, +} from 'react-native-popup-menu'; +const { SlideInMenu } = renderers; +import { + CreditCardInput, + LiteCreditCardInput, +} from 'react-native-credit-card-input'; +//component +import AppIntroSlider from 'react-native-app-intro-slider'; +// function +import { width, height } from '../../services/screen'; +import { Colors } from 'react-native/Libraries/NewAppScreen'; +Icon.loadFont(); + +const slides = [ + { + key: '1', + title: '', + text: '', + image: require('../../assets/images/tut1.png'), + }, + + { + key: '2', + title: '', + text: '', + image: require('../../assets/images/tut2.png'), + + }, + { + key: '3', + title: '', + text: '', + image: require('../../assets/images/tut3.png'), + + } +]; +const MyStatusBar = ({ backgroundColor, ...props }) => ( + + + + + +); +const STATUSBAR_HEIGHT = StatusBar.currentHeight; +const APPBAR_HEIGHT = Platform.OS === 'ios' ? 44 : 56; +//const log = new Log() +@inject('appStore') +@observer +export default class Tutorial extends Component { + + + constructor(props) { + super(props); + this.store = props.appStore; + } + async componentWillMount() { + + } + componentDidMount() { + + } + + _keyExtractor = (item: Item) => item.title; + + + _renderItem = ({ item }) => { + return ( + + + + + + + ); + } + + _onDone = () => { + this.props.navigation.goBack() + } + + render() { + return ( + + {/* */} + + + + + ); + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + alignItems: 'center', + backgroundColor: 'white', + }, + + button: { + marginTop: 20, + width: width, + height: 60, + alignItems: 'center', + justifyContent: 'center', + backgroundColor: colors.statusBarColor, + }, + inputTextView: { + width: width - 40, + marginTop: 20, + borderBottomWidth: 1, + borderBottomColor: colors.line2Color, + height: 50, + }, + inputTextTitleView: { + fontSize: 14, + color: colors.line2Color, + }, + title: { + fontSize: 17, + marginTop: 20, + }, + subtitle: { + fontSize: 14, + }, + buttonText: { + color: '#fff', + }, + picker: { + fontSize: 20, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'black', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + textView: { + color: colors.mainColor, + + fontSize: 20, + fontWeight: 'bold', + }, +}); +const pickerSelectStyles = StyleSheet.create({ + inputIOS: { + fontSize: 16, + paddingVertical: 12, + paddingHorizontal: 10, + borderWidth: 1, + borderColor: 'gray', + borderRadius: 4, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + inputAndroid: { + fontSize: 16, + paddingHorizontal: 10, + paddingVertical: 8, + borderWidth: 0.5, + borderColor: 'black', + borderRadius: 8, + color: 'black', + paddingRight: 30, // to ensure the text is never behind the icon + }, + container: { + flex: 1, + }, + statusBar: { + height: STATUSBAR_HEIGHT, + }, + appBar: { + backgroundColor: '#79B45D', + height: APPBAR_HEIGHT, + }, + content: { + flex: 1, + backgroundColor: '#33373B', + }, +}); diff --git a/src/services/api.js b/src/services/api.js new file mode 100644 index 0000000..6fc4c0f --- /dev/null +++ b/src/services/api.js @@ -0,0 +1,48 @@ +const testing = false; +const host = 'https://puremall.com.hk/api/' +// ? //? 'http://tc.nirons.com/retailposbackend/app/' +// //'https://tc.nirons.com/puremall-api/' +// 'http://tc.nirons.com/puremall-api/' +// : 'https://puremall.com.hk/api/'; + +const api = { + addMemberToMyGroup: host + 'shopping-group/add-member-to-my-group/', + getShoppingGroupAgreement: host + 'setting', + gift: host + 'gift/', + redeem: host + 'redemption', + getShoppingGroup: host + 'shopping-group/', + getOwnShoppingGroup: host + 'member/me/shopping-group/', + joinShoppingGroup: host + 'member/me/join-shopping-group/', + quitShoppingGroup: host + 'member/me/quit-shopping-group/', + getAllProducts: host + 'item/', + getcategories: host + 'category/', + banner: host + 'banner', + login: host + 'app-login/', + smsVerify: host + 'sms_verify_start', + check: host + 'check', + signup: host + 'reg', + news: host + 'news/', + creditCard: host + 'credit-card/', + editAddress: host + 'member/me/', + address: host + 'addr/', + regions: host + 'region/', + shippingOrderDate: host + 'shopping-group-settings/', + tag: 'https://www.hosunsin.com/wp-json/es/v1/products/tags', + getShippingMethods: host + 'shipping-method', + getCoupons: host + 'coupon/', + discount: host + 'discount', + favourite: host + 'fav/', + shoppingCart: host + 'cart/', + review: 'review/', + order: host + 'order/', + item: host + 'item/', + forgotPassword: host + 'forgot/', + points: host + 'points-settings/', + fcmToken: host + '/reg-push-token/', + thirdPartyLogin: host + '3rd-party-oauth', + checkVersion: 'https://www.hosunsin.com/wp-json/es/v1/versions', + signInWithApple: host + 'sign-in-with-apple', + bindMobile: host + 'bind-mobile', +}; + +export default api; diff --git a/src/services/language.js b/src/services/language.js new file mode 100644 index 0000000..92cd3b6 --- /dev/null +++ b/src/services/language.js @@ -0,0 +1,759 @@ +export default { + en: { + openCamera: 'Please turn on camera permission', + freeShipping: 'Free Shipping', + groupFreeShippingMessage1: 'Free shipping will be offered if purchase $', + groupFreeShippingMessage2: ' or more.', + shippingMessage1: 'Since the total purchase amount is less than ', + shippingMessage2: ', the estimated freight is ', + shippingMessage3: ', which will be charged when you pick up the goods. ', + groupShippingMessage1: '* If the total purchase amount of the group exceeds ', + groupShippingMessage2: ' after the closing of the order, all customers in the group are not required to pay the shipping fee.', + notExist: 'Not Exist', + noShoppingGroup: 'There are no shopping group in your district at the moment.', + pleaseSelectTheDistrict: 'Please select the district', + pleaseAgreeFirst: 'Please agree first', + acceptShoppingGroup: 'readed and agree to the above', + pleaseJoinShoppingGroup: 'Please join the shopping group first', + outOfStock: 'Out Of Stock', + shopppingGroupIntroduction: 'Shopping Group Introduction', + tutorial: 'Tutorial', + accountName: 'Account Name', + bank: 'Bank', + accountnumber: 'Account number', + pleaseSelectAnotherDeiveryDate: 'Please Select Another Delivery Date', + lastDeliveryDate: 'Last Delivery Date', + reason: 'Reason', + title: 'Title', + notification: "Notifications", + alreadyRequest: 'Already Request', + sentRequest: 'Sent request', + sendRequestFail: 'Send request failed', + cancelOrderReason: 'Why you want to cancel the order?', + pleaseInputReason: 'Please input reasons', + requestToCancelOrder: 'Request Cancel Order', + addGroupMemeber: 'Add Group Member', + membersPhoneNumber: "Member's phone number", + pleasePickTheShippingDate: 'Please pick the shipping date', + pleaseAccept: 'Please accept', + requestVerfiyCode: 'Request Verfiy Code', + add: 'Add', + addMobile: 'Add Mobile Number', + redeemRecord: 'Redeem Record', + redeem: 'Redeem', + emailorphone: 'Email or Phone Number', + resendReceipt: 'Resend Receipt', + rotp: 'Receipt of the payment', + orderStatus: 'Order status', + cutoffDate: 'Cutoff Date', + paymentDieline: 'Payment Dieline', + orderDate: 'Order Date', + pc: 'Pending Cutoff', + pp: 'Pending Payment', + pa: 'Paid', + prv: 'Payment Review', + prj: 'Payment Refected', + arv: 'Arrived', + fin: 'Finish', + can: 'Cancelled', + exp: 'Exp', + vo: 'Cancelled', + undetermined: 'Undetermined', + ShoppingGroupShippingAddress: 'Shopping Group Shipping Address', + shoppingGroupDiscount: 'Shopping Group Discount', + shoppingGroupShippingPrice: 'Shopping Group Shipping Fee', + leave: 'Leave', + today: 'Today', + yesterday: 'Yesterday', + thisWeek: 'This Week', + thisMonth: 'This Month', + all: 'All', + spendingAmount: 'Spending Amount', + select: 'Select', + giftPoints: 'Points', + remainingPoints: 'Remaining Points', + redeemGifts: 'Redeem Gifts', + manageMembers: 'Group Members', + salesRecord: 'Sales Record', + shippingDate: 'Shipping Date', + album: 'Photo album', + camera: 'Camera', + uploadreceipt: 'Upload Receipt', + fpsorpayme: 'FPS and other payment vouchers', + member: 'members', + pointsGoal: 'Ponints goal for this month', + groupDiscount: 'Group Discounts', + join: 'Join', + grpLeader: 'Group Leader', + numberOfMember: 'Number Of Member', + usePoints: 'Use Points', + yourPoints: 'Your Points', + logout: 'Logout', + bryato: 'By registering you agree to our', + and: 'and', + tearmsOfService: 'Tearms Of Service', + privacyPolicy: 'Privacy Policy', + shippingAddress: 'Shipping Address', + subTotal: 'Sub Total', + total: 'Total', + searchTitle: 'Please enter a search term', + createAc: 'Create Account', + shoppingGroup: 'Shopping Group', + recommend: 'Recommend', + search: 'Search', + shoppingcart: 'Basket', + edit: 'Edit', + price: 'Price', + sortby: 'Sort by', + welcomeBack: 'Welcome Back', + ltyea: 'Login to your existing account', + categories: 'Categories', + news: 'News', + cashOnDelivery: 'Cash on delivery', + clickHereToEnterTheAddress: 'Click here to enter the address', + clickHereToEnterYourName: 'Click here to enter your name', + clickHereToEnterYourMobile: 'Click here to enter your Mobile', + english: 'English', + chinese: 'Chinese', + main: 'Main', + myfavourite: 'My Favourite', + shoppingHistory: 'History', + acAndSetting: 'AC/Setting', + name: 'Name', + email: 'Email', + mobilephone: 'Mobile Phone', + points: 'Points', + countPoints: 'Points', + pointsChangeGift: '積分換領', + address: 'Address', + language: 'Language', + personalFile: 'Personal file', + contactInformation: 'Contact information', + setting: 'Settings', + notification: 'Notification', + creditCardInfo: 'Credit Card Info', + share: 'Share', + editName: 'Edit name', + forgotPassword: 'Forgot Password', + groupbuy: 'Group buying discount', + groupbuytitle: 'Best deals by group buying', + limitedTimeOffers: 'limited-time offers', + limitedTimetitle: 'Buy the best deals for a limited time', + cheapestThisWeek: 'Cheapest this week', + cheapestThisWeekTitle: + 'We will launch you the most valuable items every week', + youMightLike: 'You might like.....', + youMightLikeTitle: 'Recommended list of favorites for you', + alreadyHave: '', + joinedGroupBuying: ' members joined', + originalPrice: 'Original price ', + addToShoppingCart: '+ to Cart', + addToFavourite: 'Add to favourite', + quantity: 'qty', + orderNumber: 'Order number', + date: 'Date', + shippingPrice: 'Shipping', + total: 'Total', + progressRate: 'Progress rate', + products: 'Items', + orderTotal: 'Order Total', + paymentMethod: 'Payment Method', + paymentMethods: 'Payment Methods', + confirmPayment: 'Confirm payment', + confirmOrder: 'Confirm Order', + selectAll: 'Select all', + remove: 'Remove', + buy: 'Buy', + paymentDetails: 'Order Details', + discount: 'Discount', + coupon: 'Coupon', + couponDiscount: 'Coupon Discount', + productsThatCanUseCoupons: 'Products that can use coupons', + totalNumberOfDiscountedProducts: 'Total number of discounted products', + changeAddress: 'CHG addr', + addAddress: 'Add addr', + rating: 'Rating', + review: 'Review', + pleaseEnterReview: 'Please enter review', + pleaseLogin: 'Please login', + alreadyExistsInMyList: 'Already exists in MY Favourite', + instock: 'In stock', + outOfStock: 'Out of stock', + kg: 'kg', + origin: 'origin', + productDescription: 'Product Description', + send: 'Send', + more: 'more', + refunds: 'Refunds', + regulations: 'Regulations', + comments: 'Comments', + writeAReview: 'Write a review', + pleaseFillInTheRecipientName: "Please fill in the recipient's name", + pleaseFillInTheRecipientMobile: "Please fill in the recipient's mobileå", + pleaseFillInTheAddress: 'Please fill in the address', + pleaseSelectTheDistrict: 'Please select the district', + pleaseSelectTheRegion: 'Please select the Region', + addressSetting: 'Address Setting', + district: 'District', + region: 'Region', + addressDetails: 'Address Details', + TheRecipientName: "The recipient's name", + TheRecipientPhone: "The recipient's Phone", + save: 'Save', + creditCard: 'Credit Card', + creditCardSettings: 'Credit card settings', + addCreditCard: 'Add credit card', + add: 'Add', + cancel: 'Cencel', + removeCreditCard: 'Remove Credit Card', + searchRecords: 'Search records', + clearHistory: 'Clear Search History', + searchForYourFavoriteProducts: 'Search for your favorite products', + popularSearches: 'Popular searches', + quantityCannotBeGreaterThanInventory: + 'Quantity cannot be greater than inventory', + quantityCannotBeZero: 'Quantity cannot be zero', + changeQuantity: 'Change quantity', + shoppingCartHave: 'Cart have', + productPrice: 'Product price', + pay: 'Pay', + shoppingcartEmpty: 'Shoppingcart empty', + sure: 'ok', + pleaseInputYourPassword: 'Please input your password', + pleaseInputYourEmail: 'Please input your Email or Phone Number', + password: 'Password', + login: 'Login', + noAcountSignUp: 'No Account? Sign Up', + theNewPasswordDoesNotMatchTheNwConfirmedPassword: + 'The new password does not match the new confirmed password', + yourNewConfirmationPasswordMustBeAtLeast8Characters: + 'Your new confirmation password must be at least 8 characters', + pleaseEnterYourPhoneNumber: 'Please enter your phone number', + pleaseEnterVerificationCode: 'please enter verification code', + pleasePressTheSendButton: + 'Please press the "Send" button and we will send you a verification code via SMS to verify your mobile number', + newPassword: 'New Password', + repeatNewPassword: 'Repeat new password', + verificationCode: 'Verification code', + pleaseInputLastName: 'Please input your name', + pleaseInputFirstName: 'Please input First name', + thePasswordDoesNotMatchTheConfirmedPassword: + 'The password does not match the confirmed password', + pleaseEnterConfirmPassword: 'Please enter confirm password', + yourPasswordMustBeAtLeast8Characters: + 'Your password must be at least 8 characters', + pleaseEnterPassword: 'Please enter password', + PleaseInputYourRightMobilePhoneNumber: + 'Please input your right mobile phone number', + firstName: 'First Name', + lastName: 'Last name', + confirmPassword: 'Confirm Password', + referralCode: 'Referral Code', + next: 'Next', + register: 'Register', + pleaseInputVerificationCode: 'Please input verification code', + pointsDiscount: 'Points Discount', + }, + + hk: { + openCamera: '請開啟相機權限', + freeShipping: '免運費', + groupFreeShippingMessage1: '此團還差$', + groupFreeShippingMessage2: ' 便可免運費了!', + shippingMessage1: '由於購買總額未滿 ', + shippingMessage2: ' ,所以預計運費為 ', + shippingMessage3: ',運費將會在取貨時再收取。', + groupShippingMessage1: '* 如果在截單後該團總購買金額滿 ', + groupShippingMessage2: ',團內所有顧客均不需支付運費。', + notExist: '暫時不存在 ', + noShoppingGroup: '你居住的區域暫時未有購物團', + pleaseSelectTheDistrict: '請選擇地區', + pleaseAgreeFirst: '請先同意', + acceptShoppingGroup: '已閱讀並同意上述內容', + pleaseJoinShoppingGroup: '請先加入購物團', + outOfStock: '售罄', + shopppingGroupIntroduction: '購物團介紹', + tutorial: '教學', + accountName: '帳戶名稱', + bank: '銀行', + accountnumber: '帳戶號碼', + pleaseSelectAnotherDeiveryDate: '請重新輸入送貨日期', + lastDeliveryDate: '最後送貨時間', + reason: '原因', + title: '標題', + notification: "消息", + alreadyRequest: '己要求了', + sentRequest: '己傳送要求', + sendRequestFail: '傳送要求失敗', + cancelOrderReason: '為何要取消訂單?', + pleaseInputReason: '請輸入原因', + requestToCancelOrder: '要求取消訂單', + addGroupMemeber: '新增團友', + membersPhoneNumber: "會員電話號碼", + pleasePickTheShippingDate: '請選擇送貨日期', + pleaseAccept: '請接受', + requestVerfiyCode: '要求傳送驗證碼', + add: '加', + addMobile: '加入電話', + redeemRecord: '換購記錄', + redeem: '換購', + emailorphone: '電郵或電話', + resendReceipt: '重傳收據', + rotp: '匯款收據', + orderStatus: '訂單狀態', + cutoffDate: '截單日期', + orderDate: '下單日期', + paymentDieline: '付款期限', + pc: '待截單', + pp: '待付款', + pa: '已支付', + prv: '支付審查', + prj: '支付拒絶', + arv: '已到貨', + fin: '已完成', + can: '已取消', + exp: '已過期', + vo: '單訂取消', + undetermined: '待定', + ShoppingGroupShippingAddress: '購物團送貨地址', + shoppingGroupDiscount: '購物團折扣', + shoppingGroupShippingPrice: '購物團運費', + leave: '離開', + today: '今天', + yesterday: '昨天', + thisWeek: '本周', + thisMonth: '本月', + all: '累計', + spendingAmount: '累積消費金額', + select: '選取', + giftPoints: '分', + remainingPoints: '換領後剩餘', + redeemGifts: '換領禮品', + manageMembers: '團員管理', + salesRecord: '銷售紀錄', + shippingDate: '送貨日期', + album: '相冊', + camera: '相機', + uploadreceipt: '上傳單據', + fpsorpayme: '轉數快及其它支付憑證', + member: '團員', + pointsGoal: '今月積分目標', + groupDiscount: '團員折扣', + join: '加入', + grpLeader: '團長', + numberOfMember: '人數', + usePoints: '使用積分', + yourPoints: '你的現有積分', + logout: '登出', + bryato: '注冊前請先閲讀和同意', + and: '和', + tearmsOfService: '服務條款', + privacyPolicy: '私隱政策', + shippingAddress: '送貨資料', + subTotal: '小計', + total: '總計', + searchTitle: '請輸入關鍵字', + createAc: '創建帳號', + shoppingGroup: '購物團', + recommend: '推介', + search: '搜索', + shoppingcart: '購物籃', + edit: '編輯', + price: '價錢 ', + sortby: '排序', + welcomeBack: '歡迎回來', + ltyea: '請登入你的帳號', + categories: '商品分類', + news: '最新消息', + cashOnDelivery: '貨到付款', + clickHereToEnterTheAddress: '按此處輸入地址', + clickHereToEnterYourName: '按此處輸入姓名', + clickHereToEnterYourMobile: '按此處輸入手機號碼', + english: '英文', + chinese: '中文', + main: '主頁', + myfavourite: '我的清單', + shoppingHistory: '購買紀錄', + acAndSetting: '賬號/設定', + name: '姓名', + email: '電郵 ', + mobilephone: '手機號碼', + points: '優惠積分', + countPoints: '累積積分', + pointsChangeGift: '積分換領', + address: '地址', + language: '語言', + personalFile: '個人檔案', + contactInformation: '聯絡資訊', + setting: '設定', + notification: '通知', + editName: '更改姓名', + creditCardInfo: '信用卡資料', + creditCard: '信用卡', + share: '分享', + forgotPassword: '忘記密碼', + groupbuy: '團購優惠', + groupbuytitle: '以團購方式買最優惠商品', + limitedTimeOffers: '限時購買', + limitedTimetitle: '限時購買最優惠商品', + cheapestThisWeek: '本週最抵', + cheapestThisWeekTitle: '每週為你推出最抵貨品', + youMightLike: '你可能會喜歡.......', + youMightLikeTitle: '為你推薦的心水清單', + alreadyHave: '已有', + joinedGroupBuying: '人參與此團購', + originalPrice: '原價 ', + addToShoppingCart: '加入購物車', + addToFavourite: '加入我的清單', + quantity: '數量', + orderNumber: '訂單編號', + date: '日期', + shippingPrice: '運費', + total: '總數', + progressRate: '進度', + products: '貨品', + orderTotal: '訂單總額', + paymentMethod: '付款方法', + paymentMethods: '付款方法', + confirmPayment: '確認付款', + confirmOrder: '確認訂單', + selectAll: '全選', + remove: '移除', + buy: '立即購買', + paymentDetails: '訂單詳情', + discount: '優惠折扣', + coupon: '優惠碼', + couponDiscount: '優惠碼折扣', + productsThatCanUseCoupons: '能使用優惠券的貨品', + totalNumberOfDiscountedProducts: '優惠貨品總數', + changeAddress: '更改地址', + addAddress: '加入地址', + rating: '評分', + review: '評論', + pleaseEnterReview: '請輸入評論', + pleaseLogin: '請先登入', + alreadyExistsInMyList: '商品已存在我的清單', + instock: '有現貨', + outOfStock: '缺貨', + kg: '公斤', + origin: '產地', + productDescription: '商品簡介', + send: '傅送', + more: '更多評論', + refunds: '送貨及退貨', + regulations: '商店條例', + comments: '買家評論', + writeAReview: '撰寫評論', + pleaseFillInTheRecipientName: '請填寫收件人姓名', + pleaseFillInTheRecipientMobile: '請填寫收件人電話', + pleaseFillInTheAddress: '請填寫地址', + pleaseSelectTheDistrict: '請選擇地區', + pleaseSelectTheRegion: '請選擇分區', + addressSetting: '地址設定', + district: '地區', + region: '分區', + addressDetails: '詳細地址', + TheRecipientName: '收件人姓名', + TheRecipientPhone: '收件人電話', + save: '儲存', + creditCardSettings: '信用卡設定', + addCreditCard: '添加信用卡', + add: '添加', + cancel: '取消', + removeCreditCard: '删除信用卡', + searchRecords: '搜索記錄', + clearHistory: '清除記錄', + searchForYourFavoriteProducts: '搜尋你的心水產品', + popularSearches: '熱門搜索', + quantityCannotBeGreaterThanInventory: '數量不能大於貨存', + quantityCannotBeZero: '數量不能是零', + changeQuantity: '更改數量', + shoppingCartHave: '購物車共', + productPrice: '貨品價格', + pay: '前往付款', + shoppingcartEmpty: '購物車空', + sure: '確定', + pleaseInputYourPassword: 'Please input your password', + pleaseInputYourEmail: '請輸入您的電子郵件或電話', + password: '密碼', + login: '登錄', + noAcountSignUp: '沒有賬戶? 註冊', + theNewPasswordDoesNotMatchTheNwConfirmedPassword: + '新密碼和新確認密碼不匹配', + yourNewConfirmationPasswordMustBeAtLeast8Characters: + '您的新確認密碼必須至少為8個字符', + pleaseEnterYourPhoneNumber: '請輸入電話號碼', + pleaseEnterVerificationCode: '請輸入驗證碼', + pleasePressTheSendButton: + '請按“傳送”按鈕,我們將通過短信向您發送驗證碼以驗證手機號碼', + newPassword: '新密碼', + repeatNewPassword: '重覆輸入新密碼', + verificationCode: '驗證碼', + pleaseInputLastName: '請輸入姓氏', + pleaseInputFirstName: '請輸入名字', + thePasswordDoesNotMatchTheConfirmedPassword: '密碼和確認密碼不匹配', + pleaseEnterConfirmPassword: '請輸入確認密碼', + yourPasswordMustBeAtLeast8Characters: '您的密碼必須至少為8個字符', + pleaseEnterPassword: '請輸入密碼', + PleaseInputYourRightMobilePhoneNumber: '請輸入正確的手機號碼', + firstName: '名字', + lastName: '姓', + confirmPassword: '確認密碼', + referralCode: '推薦代碼', + next: '下一步', + register: '註冊', + pleaseInputVerificationCode: '請輸入驗證碼', + pointsDiscount: '積分折扣', + }, + zh: { + openCamera: '请开启相机权限', + freeShipping: '免运费', + groupFreeShippingMessage1: '此团还差$', + groupFreeShippingMessage2: ' 便可免运费了!', + shippingMessage1: '由于购买总额未满 ', + shippingMessage2: ' ,所以预计运费为 ', + shippingMessage3: ',运费将会在取货时再收取。 ', + groupShippingMessage1: '* 如果在截单后该团总购买金额满 ', + groupShippingMessage2: ',团内所有顾客均不需支付运费。 ', + notExist: '暂时不存在 ', + noShoppingGroup: '你居住的区域暂时未有购物团', + pleaseSelectTheDistrict: '请选择地区', + pleaseAgreeFirst: '请先同意', + acceptShoppingGroup: '已阅读并同意上述内容', + pleaseJoinShoppingGroup: '请先加入购物团', + outOfStock: '售罄', + shopppingGroupIntroduction: '购物团介绍', + tutorial: '教学', + accountName: '帐户名称', + bank: '银行', + accountnumber: '帐户号码', + pleaseSelectAnotherDeiveryDate: '请重新输入送货日期', + lastDeliveryDate: '最后送货时间', + reason: '原因', + title: '标题', + notification: "消息", + alreadyRequest: '己要求了', + sentRequest: '己传送要求', + sendRequestFail: '传送要求失败', + cancelOrderReason: '为何要取消订单? ', + pleaseInputReason: '请输入原因', + requestToCancelOrder: '要求取消订单', + addGroupMemeber: '新增团友', + membersPhoneNumber: "会员电话号码", + pleasePickTheShippingDate: '请选择送货日期', + pleaseAccept: '请接受', + requestVerfiyCode: '要求传送验证码', + add: '加', + addMobile: '加入电话', + redeemRecord: '换购记录', + redeem: '换购', + emailorphone: '电邮或电话', + resendReceipt: '重传收据', + rotp: '汇款收据', + orderStatus: '订单状态', + cutoffDate: '截单日期', + orderDate: '下单日期', + paymentDieline: '付款期限', + pc: '待截单', + pp: '待付款', + pa: '已支付', + prv: '支付审查', + prj: '支付拒绝', + arv: '已到货', + fin: '已完成', + can: '已取消', + exp: '已过期', + vo: '单订取消', + undetermined: '待定', + ShoppingGroupShippingAddress: '购物团送货地址', + shoppingGroupDiscount: '购物团折扣', + shoppingGroupShippingPrice: '购物团运费', + leave: '离开', + today: '今天', + yesterday: '昨天', + thisWeek: '本周', + thisMonth: '本月', + all: '累计', + spendingAmount: '累积消费金额', + select: '选取', + giftPoints: '分', + remainingPoints: '换领后剩余', + redeemGifts: '换领礼品', + manageMembers: '团员管理', + salesRecord: '销售纪录', + shippingDate: '送货日期', + album: '相册', + camera: '相机', + uploadreceipt: '上传单据', + fpsorpayme: '转数快及其它支付凭证', + member: '团员', + pointsGoal: '今月积分目标', + groupDiscount: '团员折扣', + join: '加入', + grpLeader: '团长', + numberOfMember: '人数', + usePoints: '使用积分', + yourPoints: '你的现有积分', + logout: '登出', + bryato: '注册前请先阅读和同意', + and: '和', + tearmsOfService: '服务条款', + privacyPolicy: '私隐政策', + shippingAddress: '送货资料', + subTotal: '小计', + total: '总计', + searchTitle: '请输入关键字', + createAc: '创建帐号', + shoppingGroup: '购物团', + recommend: '推介', + search: '搜索', + shoppingcart: '购物篮', + edit: '编辑', + price: '价钱 ', + sortby: '排序', + welcomeBack: '欢迎回来', + ltyea: '请登入你的帐号', + categories: '商品分类', + news: '最新消息', + cashOnDelivery: '货到付款', + clickHereToEnterTheAddress: '按此处输入地址', + clickHereToEnterYourName: '按此处输入姓名', + clickHereToEnterYourMobile: '按此处输入手机号码', + english: '英文', + chinese: '中文', + main: '主页', + myfavourite: '我的清单', + shoppingHistory: '购买纪录', + acAndSetting: '账号/设定', + name: '姓名', + email: '电邮 ', + mobilephone: '手机号码', + points: '优惠积分', + countPoints: '累积积分', + pointsChangeGift: '积分换领', + address: '地址', + language: '语言', + personalFile: '个人档案', + contactInformation: '联络资讯', + setting: '设定', + notification: '通知', + editName: '更改姓名', + creditCardInfo: '信用卡资料', + creditCard: '信用卡', + share: '分享', + forgotPassword: '忘记密码', + groupbuy: '团购优惠', + groupbuytitle: '以团购方式买最优惠商品', + limitedTimeOffers: '限时购买', + limitedTimetitle: '限时购买最优惠商品', + cheapestThisWeek: '本周最抵', + cheapestThisWeekTitle: '每周为你推出最抵货品', + youMightLike: '你可能会喜欢.......', + youMightLikeTitle: '为你推荐的心水清单', + alreadyHave: '已有', + joinedGroupBuying: '人参与此团购', + originalPrice: '原价 ', + addToShoppingCart: '加入购物车', + addToFavourite: '加入我的清单', + quantity: '数量', + orderNumber: '订单编号', + date: '日期', + shippingPrice: '运费', + total: '总数', + progressRate: '进度', + products: '货品', + orderTotal: '订单总额', + paymentMethod: '付款方法', + paymentMethods: '付款方法', + confirmPayment: '确认付款', + confirmOrder: '确认订单', + selectAll: '全选', + remove: '移除', + buy: '立即购买', + paymentDetails: '订单详程', + discount: '优惠折扣', + coupon: '优惠码', + couponDiscount: '优惠码折扣', + productsThatCanUseCoupons: '能使用优惠券的货品', + totalNumberOfDiscountedProducts: '优惠货品总数', + changeAddress: '更改地址', + addAddress: '加入地址', + rating: '评分', + review: '评论', + pleaseEnterReview: '请输入评论', + pleaseLogin: '请先登入', + alreadyExistsInMyList: '商品已存在我的清单', + instock: '有现货', + outOfStock: '缺货', + kg: '公斤', + origin: '产地', + productDescription: '商品简介', + send: '傅送', + more: '更多评论', + refunds: '送货及退货', + regulations: '商店条例', + comments: '买家评论', + writeAReview: '撰写评论', + pleaseFillInTheRecipientName: '请填写收件人姓名', + pleaseFillInTheRecipientMobile: '请填写收件人电话', + pleaseFillInTheAddress: '请填写地址', + pleaseSelectTheDistrict: '请选择地区', + pleaseSelectTheRegion: '请选择分区', + addressSetting: '地址设定', + district: '地区', + region: '分区', + addressDetails: '详细地址', + TheRecipientName: '收件人姓名', + TheRecipientPhone: '收件人电话', + save: '储存', + creditCardSettings: '信用卡设定', + addCreditCard: '添加信用卡', + add: '添加', + cancel: '取消', + removeCreditCard: '删除信用卡', + searchRecords: '搜索记录', + clearHistory: '清除记录', + searchForYourFavoriteProducts: '搜寻你的心水产品', + popularSearches: '热门搜索', + quantityCannotBeGreaterThanInventory: '数量不能大于货存', + quantityCannotBeZero: '数量不能是零', + changeQuantity: '更改数量', + shoppingCartHave: '购物车共', + productPrice: '货品价格', + pay: '前往付款', + shoppingcartEmpty: '购物车空', + sure: '确定', + pleaseInputYourPassword: 'Please input your password', + pleaseInputYourEmail: '请输入您的电子邮件或电话', + password: '密码', + login: '登录', + noAcountSignUp: '没有账户?注册', + theNewPasswordDoesNotMatchTheNwConfirmedPassword: + '新密码和新确认密码不匹配', + yourNewConfirmationPasswordMustBeAtLeast8Characters: + '您的新确认密码必须至少为8个字符', + pleaseEnterYourPhoneNumber: '请输入电话号码', + pleaseEnterVerificationCode: '请输入验证码', + pleasePressTheSendButton: + '请按“传送”按钮,我们将通过短信向您发送验证码以验证手机号码', + newPassword: '新密码', + repeatNewPassword: '重覆输入新密码', + verificationCode: '验证码', + pleaseInputLastName: '请输入姓氏', + pleaseInputFirstName: '请输入名字', + thePasswordDoesNotMatchTheConfirmedPassword: '密码和确认密码不匹配', + pleaseEnterConfirmPassword: '请输入确认密码', + yourPasswordMustBeAtLeast8Characters: '您的密码必须至少为8个字符', + pleaseEnterPassword: '请输入密码', + PleaseInputYourRightMobilePhoneNumber: '请输入正确的手机号码', + firstName: '名字', + lastName: '姓', + confirmPassword: '确认密码', + referralCode: '推荐代码', + next: '下一步', + register: '注册', + pleaseInputVerificationCode: '请输入验证码', + pointsDiscount: '积分折扣', + }, + +}; diff --git a/src/services/screen.js b/src/services/screen.js new file mode 100755 index 0000000..e82618c --- /dev/null +++ b/src/services/screen.js @@ -0,0 +1,4 @@ +import {Dimensions} from 'react-native' + +export const width = Dimensions.get('window').width; +export const height = Dimensions.get('window').height; \ No newline at end of file diff --git a/src/stores/app-store.js b/src/stores/app-store.js new file mode 100644 index 0000000..903308f --- /dev/null +++ b/src/stores/app-store.js @@ -0,0 +1,3322 @@ +import { observable, computed, action, transaction } from 'mobx'; +import language from '../services/language'; +import AsyncStorage from '@react-native-community/async-storage'; +import messaging from '@react-native-firebase/messaging'; +import axios from 'axios'; +import { Alert, Platform, Animated, Easing, Linking } from 'react-native'; +import base64 from 'react-native-base64'; +import api from '../services/api'; +import moment from 'moment'; +const qs = require('qs'); +var _ = require('lodash'); +var uuid = require('react-native-uuid'); +var underscore = require('underscore'); + + +class Stores { + routerRef; + @observable + animateStatus = { + progress: new Animated.Value(0), + show: false, + }; + + @observable + token = ''; + @observable + uuid = ''; + @observable + addedCard = false; + @observable + searchHistory = []; + @observable + discountItems = []; + @observable shoppingGroupIntro = '' + @observable dateWithoutHoliday = [] + @observable routerState; + @observable userData = {}; + @observable regions = []; + @observable regionsArray = []; + @observable addresses = []; + @observable currentScene = 'Main'; + @observable splash = false; + @observable logined = false; + @observable groupBuyList = []; + @observable loginUserData = null; + @observable saleProduct = []; + @observable allProducts = []; + @observable topSale = []; + @observable categories = []; + @observable mainCategories = []; + @observable allCategories = []; + @observable categoriesForSearch = []; + @observable youMayLikeList = []; + @observable tagForSearch = []; + @observable favorite = []; + @observable favoriteIds = []; + @observable shoppingCartList = []; + @observable shoppingCartIds = []; + @observable orderList = []; + @observable banners = []; + @observable news = []; + @observable coupons = []; + @observable discount = []; + @observable shippingMethods = []; + @observable searchResult = []; + @observable recommendShoppingGroup = []; + @observable nowDate = null; + @observable loading = false; + @observable + creditCardinfo = null; + @observable timer = 60; + @observable + text = language.hk; + @observable + languageSelection = 'hk'; + @observable + points = 0; + @observable + pointsMemony = 0; + @observable + shippingOrderDate = null; + @observable + redeemHistory = []; + @observable + notificationRecord = null + @observable + catalogueSelected = null + + @observable + gift = [] + + async descHandler(desc) { + var pToBr = '' + pToBr = await desc.replaceAll('

', '
') + pToBr = await desc.replaceAll('

', '
') + + return pToBr + } + + @action + async editUserName(name, self) { + this.loading = true; + var url = api.editAddress; + var data = this.loginUserData.data.hasOwnProperty('member') + ? this.loginUserData.data.member + : this.loginUserData.data; + data.name = name + console.log(data) + try { + const response = await axios.put(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.editNameVisable = false + } catch (error) { + console.log(error.response); + this.loading = false; + } + } + + @action + async getShoppingGroupIntro() { + const url = api.getShoppingGroupAgreement + try { + const response = await axios.get(url, { + params: { + keys: 'shopping_group_intro' + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + this.shoppingGroupIntro = response.data[0].value + + + } catch (error) { + console.log(error); + + } + } + + @action + async allRead() { + this.notificationRecord.unread = 0; + try { + const saveItem = JSON.stringify(this.notificationRecord) + await AsyncStorage.setItem('notification', saveItem) + } catch (e) { + // saving error + } + } + + @action + async deleteNotifications() { + this.notificationRecord = { + notifications: [], + unread: 0, + } + try { + const saveItem = JSON.stringify(this.notificationRecord) + await AsyncStorage.setItem('notification', saveItem) + } catch (e) { + // saving error + } + } + + @action + async saveNotification(notif) { + var notificationRecord = { + notifications: [], + unread: 0, + } + const data = { + id: notif.messageId, + date: moment(), + title: notif.notification.title, + message: notif.notification.body, + read: false, + } + try { + const jsonValue = await AsyncStorage.getItem('notification') + if (jsonValue != null) { + notificationRecord = JSON.parse(jsonValue) + } + console.log(jsonValue) + } catch (e) { + console.log(e) + } + console.log(notificationRecord) + await notificationRecord.notifications.push(data); + notificationRecord.unread += 1; + try { + const saveItem = JSON.stringify(notificationRecord) + await AsyncStorage.setItem('notification', saveItem) + } catch (e) { + // saving error + } + + this.notificationRecord = notificationRecord + console.log(this.notificationRecord) + + } + + @action + async getNotificationsMessage() { + var notificationRecord = { + notifications: [], + unread: 0, + } + try { + const jsonValue = await AsyncStorage.getItem('notification') + if (jsonValue != null) { + notificationRecord = JSON.parse(jsonValue) + } + console.log(jsonValue) + } catch (e) { + console.log(e) + } + this.notificationRecord = notificationRecord + console.log(this.notificationRecord) + + } + + + @action + async getGiftList() { + this.gift = [] + var url = api.gift; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + var gift = [] + await response.data.content.map(async (items, index) => { + items.qty = 0 + await gift.push(items) + }) + this.gift = gift + + } catch (error) { + console.log(error.response); + self.shoppingGroup = null; + } + } + + @action async quitShoppingGroup(self) { + this.loading = true; + var url = api.quitShoppingGroup; + var data = {}; + try { + const response = await axios.put(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + this.loginUserData = response; + console.log(response); + self.refs.toast.show('已離開購物團'); + } catch (error) { + console.log(error.response); + this.loading = false; + } + } + + @action async joinShoppingGroup(id, self) { + this.loading = true; + var url = api.joinShoppingGroup; + var data = { + shoppingGroup: id, + }; + try { + const response = await axios.put(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + this.loginUserData = response; + this.getOwnShoppingGroup(self, true, true); + console.log(response); + self.refs.toast.show('已加入購物團'); + } catch (error) { + console.log(error.response); + this.loading = false; + } + } + + + @action async getOwnShoppingGroup(self, isOrder, join) { + var url = api.getOwnShoppingGroup; + console.log('Basic ' + base64.encode(`${this.uuid}:${this.token}`)) + try { + const response = await axios.get(url, { + + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 20000, + }); + console.log(response); + if (isOrder) { + if (join) { + self.data = response.data.shoppingGroup; + self.otherData = response.data; + self.isRecommend = false; + self.findThisMonthTotalAmount() + } else { + self.shoppingGroup = response.data; + } + } else { + var otherData = response.data; + self.props.navigation.navigate('GroupDetails', { + data: response.data.shoppingGroup, + isRecommend: false, + otherShoppingGroupData: otherData, + }); + } + } catch (error) { + console.log(JSON.stringify(error)); + self.shoppingGroup = null; + } + } + + @action async getShoppingGroup() { + this.getShoppingGroupIntro() + var url = api.getShoppingGroup; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.getShipppingMethods() + console.log(response); + if (this.addresses.length > 0) { + this.recommendShoppingGroup = await response.data.content.filter(e => this.addresses[0].district.id === e.district.id); + } + } catch (error) { + console.log(error); + } + } + + + @action async redeemGift(data, self) { + + this.loading = true; + var url = api.redeem; + try { + const response = await axios.post(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + this.loginUserData.data.shoppingGroupPoints -= response.data.itemsTotalPrice + self.props.navigation.goBack() + + } catch (error) { + this.loading = false; + + console.log(error.response); + self.refs.toast.show(error.response.data[0]) + } + } + + @action async getRedeemHistory() { + var url = api.redeem; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + console.log(response); + this.redeemHistory = response.data.content + + } catch (error) { + + console.log(error); + } + } + + @action async getShippingOrderDate() { + this.loading = true; + var url = api.shippingOrderDate; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + + console.log(response); + this.shippingOrderDate = response.data; + this.nowDate = (moment(response.headers.date).toDate()) + console.log(moment(response.headers.date).format('DD-MM-YYYY HH:mm')) + this.dateWithoutHoliday = await this.shippingOrderDate.available_delivery_dates.filter( + function (item) { + return item.holiday == false; + }, + ); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action setCurrentScene = () => { + let routeName = this.currentRoute; + if (routeName) { + this.currentScene = routeName; + } + }; + + timeout(ms, promise) { + return new Promise((resolve, reject) => { + setTimeout(() => { + reject(new Error('timeout')); + }, ms); + promise.then(resolve, reject); + }); + } + + @action setRouterRef = ref => { + this.routerRef = ref; + }; + + priceHandler(price) { + var priceInt = parseFloat(price).toFixed(2); + return 'HKD ' + priceInt.toString(); + } + + setRouterState = state => { + this.routerState = state; + }; + + @action + changeLanguage(lang) { + console.log(lang); + if (lang == 'en') { + console.log(lang); + this.text = language.en; + this.languageSelection = 'en'; + } else if (lang == 'hk') { + console.log(lang); + this.text = language.hk; + this.languageSelection = 'hk'; + } else { + console.log(lang); + this.text = language.zh; + this.languageSelection = 'zh'; + } + } + + @action navigate = routeName => { + this.routerRef.navigate(routeName); + }; + + @computed get currentRoute() { + if (this.routerState) { + return this.routerState.routeNames[this.routerState.index]; + } else { + return null; + } + } + + @action + async startAnimate() { + this.animateStatus.show = true; + await Animated.timing(this.animateStatus.progress, { + toValue: 1, + duration: 1000, + easing: Easing.linear, + }).start(); + //this.animateStatus.show = false; + var self = this; + setTimeout(function () { + self.animateStatus.show = false; + self.animateStatus.progress = new Animated.Value(0); + }, 1000); + } + + @action + async addMemberToGroup(phone, self) { + + this.loading = true; + var url = api.check; + var checkData = { + countryCode: '852', + mobile: phone + } + try { + const checkresponse = await axios.post(url, checkData, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + + console.log(checkresponse.data); + const data = checkresponse.data[Object.keys(checkresponse.data)[0]] + console.log(data); + if (data == true) { + self.refs.toast.show('Member no exist') + } else { + if (data.hasOwnProperty('shoppingGroup')) { + self.refs.toast.show('This member have shopping group already') + } else { + this.loading = true + memberId = { + id: data.id + } + console.log(memberId) + try { + const addresponse = await axios.put(api.addMemberToMyGroup, memberId, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(addresponse) + self.refs.toast.show('Add group member success') + + try { + + const response = await axios.get(api.getOwnShoppingGroup, { + + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + + self.otherData = response.data; + self.data = response.data.shoppingGroup; + + } catch (error) { + console.log(error.response); + + } + + } catch (error) { + this.loading = false; + self.refs.toast.show('加入失敗'); + console.log(error.response); + } + } + } + } catch (error) { + this.loading = false; + self.refs.toast.show('加入失敗'); + console.log(error.response); + } + } + + @action + priceFormatReturn(price) { + var floatPrice = parseFloat(price); + return 'HKD ' + floatPrice.toFixed(1); + } + + @action async discountHandler(self) { + console.log(this.discount[0]) + if (this.discount.length > 0) { + switch (this.discount[0].type) { + case 3: + var newArray = [] + this.discount[0].items1.map(async (items, index) => { + const findProductIndex = await this.shoppingCartList.findIndex((element) => element.id === items.id); + if (findProductIndex > -1) { + this.shoppingCartList[findProductIndex].on_sale = true + this.shoppingCartList[findProductIndex].originalPrice = this.shoppingCartList[findProductIndex].price + this.shoppingCartList[findProductIndex].price = await this.discountPriceHandler(this.discount[0].discount, this.discount[0].value, this.shoppingCartList[findProductIndex].price) + } + }) + console.log(this.shoppingCartList) + break; + case 2: + //handle in shoppingCart page, checkItems1Exist() + this.discountItems = []; + break; + + case 1: + var newArray = [] + var item1index = -1 + await this.discount[0].items1.map(async (items, index) => { + item1index = await this.shoppingCartList.findIndex((element) => element.id === items.id); + }) + console.log(item1index) + if (item1index >= 0) { + this.discount[0].items2.map(async (items, index) => { + const findProductIndex = await this.shoppingCartList.findIndex((element) => element.id === items.id); + if (findProductIndex > -1) { + this.shoppingCartList[findProductIndex].on_sale = true + this.shoppingCartList[findProductIndex].originalPrice = this.shoppingCartList[findProductIndex].price + this.shoppingCartList[findProductIndex].price = await this.discountPriceHandler(this.discount[0].discount, this.discount[0].value, this.shoppingCartList[findProductIndex].price) + } + + }) + } + console.log(this.shoppingCartList) + break; + case 0: + this.discountTypeZeroHandler(); + break; + + default: + break; + } + } + } + + + @action async discountTypeZeroHandler() { + + if (this.discount.length > 0) { + if (this.discount[0].type == 0) { + var totalPrice = 0 + await this.discount[0].items1.map(async (items, index) => { + const findProductIndex = await this.shoppingCartList.findIndex((element) => element.id === items.id); + if (findProductIndex > -1) { + if (this.shoppingCartList[findProductIndex].on_sale) { + totalPrice += this.shoppingCartList[findProductIndex].originalPrice * this.shoppingCartList[findProductIndex].buyCount + } else { + totalPrice += this.shoppingCartList[findProductIndex].price * this.shoppingCartList[findProductIndex].buyCount + } + } + }) + console.log(totalPrice) + if (totalPrice >= this.discount[0].minAmount) { + + this.discount[0].items1.map(async (items, index) => { + const findProductIndex = await this.shoppingCartList.findIndex((element) => element.id === items.id); + if (findProductIndex > -1) { + if (!this.shoppingCartList[findProductIndex].on_sale) { + this.shoppingCartList[findProductIndex].on_sale = true + this.shoppingCartList[findProductIndex].originalPrice = this.shoppingCartList[findProductIndex].price + this.shoppingCartList[findProductIndex].price = await this.discountPriceHandler(this.discount[0].discount, this.discount[0].value, this.shoppingCartList[findProductIndex].price) + } + } + }) + } else { + this.discount[0].items1.map(async (items, index) => { + const findProductIndex = await this.shoppingCartList.findIndex((element) => element.id === items.id); + if (findProductIndex > -1) { + if (this.shoppingCartList[findProductIndex].on_sale) { + this.shoppingCartList[findProductIndex].on_sale = false + //this.shoppingCartList[findProductIndex].originalPrice = this.shoppingCartList[findProductIndex].price + this.shoppingCartList[findProductIndex].price = this.shoppingCartList[findProductIndex].originalPrice + } + } + }) + } + } + } + } + + @action async discountPriceHandler(type, value, price) { + var itemPrice = 0 + switch (type) { + case 0: + itemPrice = price * (100 - value) / 100 + console.log(itemPrice) + return itemPrice + break; + + case 1: + itemPrice = price - value + console.log(itemPrice) + return itemPrice + + case 2: + itemPrice = value + console.log(itemPrice) + return itemPrice + default: + break; + } + } + + @action + async cancelOrderRequest(id, reasonData, self) { + this.loading = true; + var url = api.order + id + "/void-req/"; + var data = { + reason: reasonData + } + console.log(data) + try { + const response = await axios.post(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.refs.toast.show(this.text.sentRequest); + } catch (error) { + this.loading = false; + if (error.response.data[0] == "req_exists") { + self.refs.toast.show(this.text.alreadyRequest); + + } else { + self.refs.toast.show(this.text.sendRequestFail); + } + console.log(error.response); + } + } + + @action + async cancelOrderRequestWithNotPay(id, self) { + this.loading = true; + var url = api.order + id + "/cancel/"; + var data = { + + } + console.log(data) + try { + const response = await axios.put(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.refs.toast.show(this.text.sentRequest); + } catch (error) { + this.loading = false; + if (error.response.data[0] == "invalid_order_status") { + self.refs.toast.show(this.text.alreadyRequest); + + } else { + self.refs.toast.show(this.text.sendRequestFail); + } + console.log(error.response); + } + } + + @action + async getShoppingCart() { + this.shoppingCartIds = []; + this.shoppingCartList = []; + console.log(this.token); + this.loading = true; + var url = api.shoppingCart; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + + console.log(response.data); + // this.shoppingCartIds = response.data; + // await response.data.map((items, index) => { + // items.selected = false; + // items.buyCount = 1; + // this.favorite.push(items); + // }); + var products = await this.productPriceHandler(response.data, true) + + transaction(() => { + if (products.length > 0) { + products.map((items, index) => { + items.item.selected = false; + items.item.buyCount = items.qty; + this.shoppingCartList.push(items.item); + var ids = { + itemId: items.item.id, + qty: items.qty, + }; + this.shoppingCartIds.push(ids); + }); + } + }); + console.log(this.shoppingCartList) + } catch (error) { + this.loading = false; + console.log(error.response); + } + } + + @action + async modifyShoppingCart(index, self, itemsQty) { + console.log(this.shoppingCartList[index]); + console.log( + this.shoppingCartIds[ + this.shoppingCartIds.findIndex( + element => element.itemId === this.shoppingCartList[index].id, + ) + ], + ); + + var oldQty = this.shoppingCartIds[ + this.shoppingCartIds.findIndex( + element => element.itemId === this.shoppingCartList[index].id, + ) + ].qty; + + this.shoppingCartIds[ + this.shoppingCartIds.findIndex( + element => element.itemId === this.shoppingCartList[index].id, + ) + ].qty = parseInt(itemsQty); + console.log( + this.shoppingCartIds[ + this.shoppingCartIds.findIndex( + element => element.itemId === this.shoppingCartList[index].id, + ) + ].qty, + ); + + this.loading = true; + var url = api.shoppingCart; + try { + const response = await axios.put(url, this.shoppingCartIds, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.refs.toast.show('已更改數量'); + this.shoppingCartList[index].buyCount = itemsQty; + this.discountTypeZeroHandler() + } catch (error) { + this.loading = false; + self.refs.toast.show('更改數量失敗'); + this.shoppingCartIds[ + this.shoppingCartIds.findIndex( + element => element.product_id === this.shoppingCartList[index].id, + ) + ].qty = oldQty; + Alert.alert( + 'Alert Title', + JSON.stringify(error.message), + [ + { + text: 'Cancel', + onPress: () => console.log('Cancel Pressed'), + style: 'cancel', + }, + { text: 'OK', onPress: () => console.log('OK Pressed') }, + ], + { cancelable: false }, + ); + console.log(error.response); + } + } + + @action + async addSingleItemToShoppingCart(items, self) { + if (this.loginUserData != null) { + if (items.inventory > 0) { + var itemIndex = await this.shoppingCartList.findIndex( + element => element.id === items.id, + ); + var shoppcartIdIndex = await this.shoppingCartIds.findIndex( + element => element.itemId === items.id, + ); + if (itemIndex != -1) { + this.shoppingCartList[itemIndex].buyCount = + parseInt(items.buyCount) + + parseInt(this.shoppingCartList[itemIndex].buyCount); + } else { + this.shoppingCartList.push(items); + } + if (shoppcartIdIndex != -1) { + this.shoppingCartIds[itemIndex].qty = + parseInt(items.buyCount) + + parseInt(this.shoppingCartIds[shoppcartIdIndex].qty); + } else { + var data = { + itemId: items.id, + qty: items.buyCount, + }; + this.shoppingCartIds.push(data); + } + + this.addShoppingCart(self); + } else { + self.refs.toast.show(this.text.outOfStock) + } + } else { + Alert.alert( + this.text.pleaseLogin, + this.text.pleaseLogin, + [ + { + text: this.text.cancel, + onPress: () => console.log('Cancel Pressed'), + style: 'cancel', + }, + { text: this.text.login, onPress: () => self.props.navigation.navigate('Signin') }, + ], + { cancelable: false }, + ); + } + } + + @action + async addRedeemItemAction(data, self) { + console.log('Redeem') + var itemIndex = await this.shoppingCartList.findIndex( + element => element.id === data.id, + ); + if (itemIndex != -1) { + this.shoppingCartList[itemIndex].buyCount = 1 + this.shoppingCartList[itemIndex].redeem = true + this.shoppingCartList[itemIndex].on_sale = true + this.shoppingCartList[itemIndex].originalPrice = this.shoppingCartList[itemIndex].price + this.shoppingCartList[itemIndex].price = this.discount[0].value + } else { + data.buyCount = 1 + data.redeem = true + data.on_sale = true + data.originalPrice = data.price + data.price = this.discount[0].value + this.shoppingCartList.push(data); + } + self.addItemsVisable = false + } + + @action + async addShoppingCart(self) { + this.loading = true; + var url = api.shoppingCart; + try { + const response = await axios.put(url, this.shoppingCartIds, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.refs.toast.show('已加入購物車'); + console.log(response) + } catch (error) { + this.loading = false; + self.refs.toast.show('加入失敗'); + // Alert.alert( + // 'Alert Title', + // JSON.stringify(error.message), + // [ + // { + // text: 'Cancel', + // onPress: () => console.log('Cancel Pressed'), + // style: 'cancel', + // }, + // {text: 'OK', onPress: () => console.log('OK Pressed')}, + // ], + // {cancelable: false}, + // ); + console.log(error.response); + } + } + + @action + async getCategories() { + this.loading = true; + this.categories = []; + this.allCategories = []; + this.mainCategories = []; + var categories = []; + var url = api.getcategories; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 20000, + params: { page: 1, per_page: 100 }, + }); + console.log(response); + + this.loading = false; + this.splash = true; + await transaction(() => { + Promise.all(response.data.content.map(async (items, index) => { + if (items.status == 'A') { + await this.allCategories.push(items) + } + }) + ) + + this.allCategories = this.allCategories.sort((a, b) => + a.ordering > b.ordering ? 1 : b.ordering > a.ordering ? -1 : 0, + ); + }) + + //this.getRandamFavourite(categories.length); + + this.getbanners(); + this.getNews(); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async getNews() { + this.news = []; + var url = api.news; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 20000, + }); + console.log(response); + this.news = response.data.content; + } catch (error) { + this.loading = false; + console.log(error); + return 0; + } + } + + @action + async getTags(tagpage) { + var url = api.tag; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { page: tagpage, per_page: 100 }, + timeout: 5000, + }); + console.log(response); + response.data.map((items, index) => { + var data = { + id: items.id, + name: items.name, + }; + this.tagForSearch.push(data); + }); + return response.data.length; + } catch (error) { + console.log(error); + return 0; + } + } + @action + async getAllTag() { + var page = 1; + this.tagForSearch = []; + + while ((await this.getTags(page)) == 100) { + page += 1; + } + console.log(this.tagForSearch); + } + @action + async searchByCategories(value) { + // var index = await this.categoriesForSearch.findIndex( + // element => element.name == value, + // ); + var searchindex = []; + await this.categoriesForSearch.forEach((items, index) => { + console.log(items.name); + var charindex = items.name.indexOf(value); + if (charindex != -1) { + searchindex.push(items.id); + } + }); + if (searchindex.length > 0) { + this.searchItems(searchindex, 0); + } else { + console.log('No'); + } + } + @action + async searchByTag(value) { + var searchindex = []; + await this.tagForSearch.forEach((items, index) => { + console.log(items.name); + var charindex = items.name.indexOf(value); + if (charindex != -1) { + searchindex.push(items.id); + } + }); + if (searchindex.length > 0) { + this.searchItems(searchindex, 1); + } else { + console.log('No'); + } + } + + @action + async searchProductsAction(value) { + this.searchResult = []; + // await this.searchByCategories(value); + // await this.searchByTag(value); + //await this.searchItems(value, 2); + this.searchProducts(value); + var searchIndex = await this.searchHistory.findIndex( + element => element === value, + ); + if (searchIndex === -1) { + this.searchHistory.push(value); + this.saveDataToLocal('searchHistory', _.cloneDeep(this.searchHistory)); + } + } + + @action + async deleteShoppingCartItem(deleteIndex, idsIndex, self) { + const indexSet = new Set(deleteIndex); + const idsIndexSet = new Set(idsIndex); + const deletedShoppingcartList = this.shoppingCartList.filter( + (value, i) => !indexSet.has(i), + ); + const delectShoppingCartIds = this.shoppingCartIds.filter( + (value, i) => !idsIndexSet.has(i), + ); + console.log(deletedShoppingcartList); + console.log(this.shoppingCartList); + console.log(delectShoppingCartIds); + console.log(this.shoppingCartIds); + + this.loading = true; + var url = api.shoppingCart; + try { + const response = await axios.put(url, delectShoppingCartIds, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + self.refs.toast.show('刪除成功'); + this.shoppingCartIds = delectShoppingCartIds; + this.shoppingCartList = deletedShoppingcartList; + self.deleteAble = false; + self.checkItems1Exist() + this.discountTypeZeroHandler() + if (this.discount.length > 0) { + if (this.discount[0].type == 1) { + //herehere + var item1index = -1 + await this.discount[0].items1.map(async (items, index) => { + item1index = await this.shoppingCartList.findIndex((element) => element.id === items.id); + }) + if (item1index == -1) { + self.init() + } + } + } + } catch (error) { + this.loading = false; + self.refs.toast.show('刪除失敗'); + + console.log(error.response); + } + + //this.loading = true; + // var url = api.shoppingCart; + // try { + // const response = await axios.delete(url, { + // data: deleteId, + // headers: { + // 'Content-Type': 'application/json', + // Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + // }, + + // timeout: 5000, + // }); + // this.loading = false; + // console.log(response); + // self.refs.toast.show('刪除成功'); + // this.shoppingCartList.splice(index, 1); + // } catch (error) { + // this.loading = false; + // self.refs.toast.show('刪除失敗'); + // console.log(error); + // } + } + + @action + async deleteAllShoppingCartItem() { + this.loading = true; + var url = api.shoppingCart; + try { + const response = await axios.put(url, [], { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + + this.shoppingCartIds = []; + this.shoppingCartList = []; + } catch (error) { + this.loading = false; + + console.log(error.response); + } + } + + @action + async getPoints() { + this.loading = true; + + var url = api.points; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + this.getPointsfromUser(); + this.points = parseInt(response.data.member_points); + this.pointsMemony = parseInt(response.data.point_2_amount); + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async checkVersion() { + this.loading = true; + console.log(this.token); + var url = api.checkVersion; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + return response.data.app; + + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + return '0.0'; + } + } + + @action + async getCreditCard() { + this.loading = true; + console.log(this.token); + var url = api.creditCard; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + if (response.data.content.length > 0) { + this.creditCardinfo = response.data.content[0]; + } + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async deleCreditCard(self) { + this.loading = true; + console.log(); + var requestURL = api.creditCard + this.creditCardinfo.id; + try { + const response = await axios.delete(requestURL, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.creditCardinfo = null; + this.loading = false; + this.addedCard = false; + console.log(response); + } catch (e) { + this.loading = false; + console.log(e); + } + } + + @action + async postCreditCard(self, data) { + console.log(data); + this.loading = true; + var requestURL = api.creditCard; + + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + transaction(() => { + this.creditCardinfo = response.data; + this.loading = false; + this.addedCard = true; + }); + console.log(response); + self.addCard = false; + self.cardData = null; + //navigation.goBack(); + // self.navigatieAction("menu"); + } catch (e) { + this.loading = false; + console.log(JSON.stringify(e)); + // self.refs.toast.show(e.message); + } + } + + @action + async addToFavorite(item, self) { + let dataIndex = await this.favorite.findIndex( + element => element.id === item.id, + ); + if (dataIndex === -1) { + self.refs.toast.show('己加入我的清單'); + this.favorite.push(item); + } else { + self.refs.toast.show('此産品己在我的清單'); + } + } + + @action + httpsHandler(link) { + return link.substr(0, 4) + link.substring(5); + } + + @action + async getProductById(which) { + this.loading = true; + var url = api.getAllProducts; + var ids = []; + var productsId = ''; + if (which) { + this.shoppingCartList = []; + await this.shoppingCartIds.map((items, index) => { + ids.push(items.product_id); + }); + } else { + this.favorite = []; + await this.favoriteIds.map((items, index) => { + ids.push(items.item.id); + if (index > 0) { + productsId += '&id=' + items.item.id; + } else { + productsId += 'id=' + items.item.id; + } + }); + } + console.log(ids); + console.log(productsId); + url = url + '?' + productsId; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + + params: { + // 'id[]': ids + //id: productsId, + }, + // paramsSerializer: function(params) { + // return qs.stringify(params, {arrayFormat: 'repeat'}); + // }, + timeout: 5000, + }); + this.loading = false; + console.log(response); + transaction(async () => { + if (which) { + await response.data.map(async (items, index) => { + items.buyCount = this.shoppingCartIds[ + await this.shoppingCartIds.findIndex( + element => element.product_id === items.id, + ) + ].qty; + items.selected = false; + this.shoppingCartList.push(items); + }); + } else { + await response.data.map(async (items, index) => { + items.buyCount = 1; + items.selected = false; + this.favorite.push(items); + }); + } + }); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async getFavourite() { + this.loading = true; + this.favorite = []; + var url = api.favourite; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + + console.log(response.data); + + if (response.data.length > 0) { + // this.favoriteIds = response.data; + // this.getProductById(false); + var products = await this.productPriceHandler(response.data, true) + + await products.map(async (items, index) => { + items.item.buyCount = 1; + items.item.selected = false; + this.favorite.push(items.item); + }); + } + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async deleteFavourite(deleteIndex, deleteId, self) { + console.log(deleteIndex); + + this.loading = true; + var url = api.favourite; + try { + const response = await axios.delete(url, { + data: deleteId, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + self.refs.toast.show('刪除成功'); + const indexSet = new Set(deleteIndex); + // const idsIndexSet = new Set(idsIndex); + this.favorite = this.favorite.filter((value, i) => !indexSet.has(i)); + // this.favoriteIds = this.favoriteIds.filter( + // (value, i) => !idsIndexSet.has(i), + // ); + self.deleteAble = false; + } catch (error) { + this.loading = false; + self.refs.toast.show('刪除失敗'); + console.log(error); + } + } + @action + async addFavouritePost(data, self) { + if (this.loginUserData != null) { + var uploadData = { + itemId: '' + data.id, + }; + console.log(uploadData); + this.loading = true; + var url = api.favourite; + try { + const response = await axios.post(url, uploadData, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + self.refs.toast.show('已加入我的清單'); + var newData = _.cloneDeep(data); + newData.selected = false; + newData.buyCount = 1; + this.favorite.push(newData); + this.favoriteIds.push({ product_id: '' + data.id }); + console.log(response); + } catch (error) { + this.loading = false; + self.refs.toast.show('加入失敗'); + console.log(error.response); + } + } else { + Alert.alert( + this.text.pleaseLogin, + this.text.pleaseLogin, + [ + { + text: this.text.cancel, + onPress: () => console.log('Cancel Pressed'), + style: 'cancel', + }, + { text: this.text.login, onPress: () => self.props.navigation.navigate('Signin') }, + ], + { cancelable: false }, + ); + } + } + + @action + getTopSale(items) { + // var topSaleList = underscore + // .sortBy(this.allProducts, 'total_sales') + // .reverse(); + // for (var i = 0; i < 3; i++) { + // this.topSale.push(topSaleList[i]); + // } + // console.log(topSaleList); + // // this.allProducts.map((items, index) => { + // // this.topSale.push(_.cloneDeep(items)); + // // }); + + var index = items.attributes.findIndex(element => element.name == 'top'); + if (index != -1) { + items.top = items.attributes[index].options; + console.log(items.top); + this.topSale.push(_.cloneDeep(items)); + } + } + + getRandomItem(arr) { + return arr[Math.floor(Math.random() * arr.length)]; + } + + @action + async getRandamFavourite(catIndex) { + this.youMayLikeList = []; + var randomNumbers = []; + for (var i = 0; i < 2; i++) { + // randomNumbers.push(Math.random() * (catIndex - 0) + 0); + randomNumbers.push(Math.floor(Math.random() * catIndex) + 0); + } + console.log(catIndex); + console.log(randomNumbers); + randomNumbers.map((value, index) => { + this.getRandamFavouriteResult(this.mainCategories[value].id); + }); + } + + @action + async getRandamFavouriteResult(categoryID) { + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { category: categoryID, page_no: 1, page_size: 15 }, + timeout: 20000, + }); + console.log(response); + response.data.map((items, index) => { + this.youMayLikeList.push(items); + }); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async getcategoriesProducts(categoryID, self) { + this.loading = true; + console.log(categoryID); + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { category: categoryID }, + timeout: 20000, + }); + console.log(response); + this.loading = false; + this.allProducts = await this.productPriceHandler(response.data.content, false); + // self.productItems = [...this.allProducts]; + var newArray = [...this.allProducts]; + self.productItems = newArray.sort((a, b) => + a.price > b.price ? 1 : b.price > a.price ? -1 : 0, + ); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async productPriceHandler(products, shoppingCart) { + console.log(this.loginUserData) + + var newProducts = [] + if (this.loginUserData != null) { + if (this.loginUserData.data.hasOwnProperty('shoppingGroup')) { + if (shoppingCart) { + await products.map(async (items, index) => { + if (items.item.clazzPrices.length > 0) { + items.item.clazzPrices.map(async (price, priceIndex) => { + if (price.clazz == this.loginUserData.data.shoppingGroup.priceClazz) { + items.item.price = price.price + } + }) + if (items.item.status == 'A') { + + await newProducts.push(items) + } + } else { + if (items.item.status == 'A') { + + await newProducts.push(items) + } + } + }) + } else { + await products.map(async (items, index) => { + if (items.clazzPrices.length > 0) { + items.clazzPrices.map(async (price, priceIndex) => { + if (price.clazz == this.loginUserData.data.shoppingGroup.priceClazz) { + items.price = price.price + } + }) + if (items.status == 'A') { + + await newProducts.push(items) + } + } else { + if (items.status == 'A') { + + await newProducts.push(items) + } + } + }) + } console.log(newProducts) + return newProducts + } else { + await products.map(async (items, index) => { + + if (shoppingCart) { + if (items.item.status == 'A') { + + await newProducts.push(items) + } + } else { + if (items.status == 'A') { + + await newProducts.push(items) + } + } + }) + + return newProducts + } + } else { + await products.map(async (items, index) => { + if (items.status == 'A') { + + await newProducts.push(items) + } + }) + return newProducts + } + } + + @action + async getProducts(page) { + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { page: page, per_page: 100 }, + timeout: 20000, + }); + console.log(response); + response.data.map((items, index) => { + if (items.purchasable) { + this.allProducts.push(items); + this.getGroupBuyItems(items); + this.getTopSale(items); + if (items.on_sale) { + if ( + items.date_on_sale_from != null && + items.date_on_sale_to != null + ) { + let today = moment(); + let dateOnSale = moment(items.date_on_sale_to); + console.log(dateOnSale.month()); + if (dateOnSale.unix() > today.unix()) { + //console.log(dateOnSale.unix() - today.unix()); + items.unix = dateOnSale.unix() - today.unix(); + this.saleProduct.push(items); + console.log('time sale:' + items.name); + } + } + } + } + }); + + return response.data.length; + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + return 0; + } + } + + @action + getGroupBuyItems(items) { + var index = items.attributes.findIndex( + element => element.name == 'groupbuy', + ); + if (index != -1) { + this.groupBuyList.push(_.cloneDeep(items)); + } + console.log(this.groupBuyList); + } + + @action + async getAllProductFromStart(self) { + this.groupBuyList = []; + this.saleProduct = []; + this.topSale = []; + this.loading = true; + var productPage = 1; + this.allProducts = []; + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { page: productPage, per_page: 100 }, + timeout: 5000, + }); + this.loading = false; + console.log(response); + response.data.map((items, index) => { + if (items.purchasable) { + this.allProducts.push(items); + } + this.getGroupBuyItems(items); + this.getTopSale(items); + if (items.on_sale) { + if ( + items.date_on_sale_from != null && + items.date_on_sale_to != null + ) { + let today = moment(); + let dateOnSale = moment(items.date_on_sale_to); + console.log(dateOnSale.month()); + if (dateOnSale.unix() > today.unix()) { + //console.log(dateOnSale.unix() - today.unix()); + items.unix = dateOnSale.unix() - today.unix(); + this.saleProduct.push(items); + console.log('time test'); + } + } + } + }); + + productPage += 1; + while ((await this.getProducts(productPage)) == 100) { + console.log(productPage); + productPage += 1; + } + console.log('testing'); + //this.getTopSale(); + + transaction(() => { + this.getCategories(); + //this.getAllTag(); + this.getRandamFavourite(); + this.getbanners(); + //this.sortTopSale(); + if (this.logined) { + this.getFavourite(); + this.getShoppingCart(); + this.getOrders(); + } + }); + this.splash = true; + + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + sortTopSale() { + this.topSale = underscore.sortBy(this.topSale, 'top'); + } + + @action + async getbanners() { + this.banners = []; + var url = api.banner; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 20000, + }); + console.log(response); + // this.banners = response.data.content; + response.data.content.map((item, index) => { + if (item.status == 'A') { + this.banners.push(item) + } + }) + } catch (error) { + this.loading = false; + console.log(error); + return 0; + } + } + + @action + removeSearchHistory() { + this.removeValue('searchHistory'); + this.searchHistory = []; + } + + async searchParamsReturn(value, which) { + var params = {}; + switch (which) { + case 0: + var categoryData = ''; + await value.map((items, index) => { + if (index > 0) { + categoryData += ',' + items; + } else { + categoryData += items; + } + }); + params = { + page: 1, + per_page: 100, + category: categoryData, + }; + break; + + case 1: + var tagData = ''; + await value.map((items, index) => { + if (index > 0) { + tagData += ',' + items; + } else { + tagData += items; + } + }); + params = { + page: 1, + per_page: 100, + tag: tagData, + }; + break; + + case 2: + params = { + page: 1, + per_page: 100, + search: value, + }; + break; + } + return params; + } + + @action + removeDuplicates(data, key) { + return [...new Map(data.map(x => [key(x), x])).values()]; + } + + @action + async postOrder(data, self) { + console.log(data); + this.loading = true; + var url = api.order; + try { + const response = await axios.post(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + this.deleteAllShoppingCartItem(); + // if (paymentMethod == 0) { + // this.payByCreditCard(response.data.id, points, self); + // } else { + // //this.payByWeChat(response.data.id, points, self); + // this.payBycash(response.data.id, points, self); + // } + + await this.startAnimate(); + setTimeout(async function () { + self.payDisable = false; + self.coupon2Index = null + // self.props.navigation.navigate('BuyHistory'); + await self.props.navigation.replace('Order', { + order: false, + data: _.cloneDeep(response.data), + }) + }, 1000); + } catch (error) { + this.loading = false; + self.refs.toast.show('下單失敗'); + console.log(error.response); + } + } + + @action + async searchProducts(value) { + this.loading = true; + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { keyword: value }, + timeout: 20000, + }); + this.loading = false; + console.log(response); + this.searchResult = await this.productPriceHandler(response.data.content, false) + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async SearchTag(value, self) { + this.loading = true; + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { keyword: value }, + timeout: 20000, + }); + this.loading = false; + console.log(response); + this.allProducts = await this.productPriceHandler(response.data.content, false); + // self.productItems = [...this.allProducts]; + var newArray = [...this.allProducts]; + self.productItems = newArray.sort((a, b) => + a.price > b.price ? 1 : b.price > a.price ? -1 : 0, + ); + console.log() + } catch (error) { + this.loading = false; + console.log(error); + } + } + + + @action + idGenerator() { + return uuid.v4(); + } + + @action + convertLocalIdentifierToAssetLibrary(localIdentifier, ext) { + const hash = localIdentifier.split('/')[0]; + return `assets-library://asset/asset.${ext}?id=${hash}&ext=${ext}`; + //return 'photos://asset/' + localIdentifier; + } + + @action + async searchItems(value, which) { + this.loading = true; + var searchParams = await this.searchParamsReturn(value, which); + var url = api.getAllProducts; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: searchParams, + timeout: 20000, + }); + this.loading = false; + console.log(response); + if (response.data.length > 0) { + } + + transaction(() => { + response.data.map((items, index) => { + this.searchResult.push(items); + }); + }); + + // self.props.navigation.navigate('BottomTabScreen'); + } catch (error) { + this.loading = false; + console.log(error); + } + } + @action + shippingPriceReturn(self) { + if (this.shippingMethods.length > 0) { + var shippingPriceIndex = this.shippingMethods.findIndex( + element => element.id == 11, + ); + var totalPriceForFreeShippingIndex = this.shippingMethods.findIndex( + element => element.id == 3, + ); + console.log(shippingPriceIndex); + if (shippingPriceIndex != -1 && totalPriceForFreeShippingIndex != -1) { + self.shippingSelection = [ + { + label: '門市自取', + value: 0, + price: 0, + freeShippingPrice: parseFloat( + this.shippingMethods[totalPriceForFreeShippingIndex].settings + .min_amount.value, + ), + }, + { + label: + '送到上門(滿' + + this.priceFormatReturn( + parseFloat( + this.shippingMethods[totalPriceForFreeShippingIndex].settings + .min_amount.value, + ), + ) + + '免運費)', + value: 1, + freeShippingPrice: parseFloat( + this.shippingMethods[totalPriceForFreeShippingIndex].settings + .min_amount.value, + ), + price: parseFloat( + this.shippingMethods[shippingPriceIndex].settings.cost.value, + ), + }, + ]; + } + } + } + + @action + async getShipppingMethods(self) { + this.loading = true; + var url = api.getShippingMethods; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + + this.loading = false; + this.shippingMethods = response.data; + self.shippingPriceReturn(); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async bindMobile(data, self) { + this.loading = true; + var requestURL = api.bindMobile; + console.log(data) + + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + }); + this.loading = false; + console.log(response); + this.loginUserData.data.countryCode = response.data.country_code; + this.loginUserData.data.mobile = response.data.mobile; + self.props.navigation.goBack(); + } catch (e) { + this.loading = false; + self.refs.toast.show('add mobile fail'); + console.log(e.response); + } + } + + @action + async checkMember(data, self) { + this.loading = true; + var requestURL = api.check; + var checkData = { + email: data.email, + mobile: data.mobile, + countryCode: data.countryCode, + }; + try { + const response = await axios.post(requestURL, checkData, { + headers: { + 'Content-Type': 'application/json', + }, + }); + this.loading = false; + console.log(response); + console.log(response.data[Object.keys(response.data)[0]]); + if (response.data[Object.keys(response.data)[0]]) { + // data.thirdParty = false; + // history.push(self, '/signUpVerify', {signupData: data}); + self.props.navigation.navigate('SignUpVerify', { + data: data, + addMobile: false, + }); + } else { + self.refs.toast.show('Signup fail'); + this.loading = false; + } + } catch (e) { + self.refs.toast.show('SignUp Fail'); + this.loading = false; + console.log(e); + } + } + + async saveDataToLocal(key, data) { + try { + const jsonValue = JSON.stringify(data); + await AsyncStorage.setItem(key, jsonValue); + } catch (e) { + console.log(e); + } + } + + async getLocalData(key) { + try { + const jsonValue = await AsyncStorage.getItem(key); + return jsonValue != null ? JSON.parse(jsonValue) : null; + } catch (e) { + // error reading value + console.log(e); + } + } + + @action + async postComment(productId, data, self) { + console.log(data); + this.loading = true; + var url = api.item + productId + '/review/'; + try { + const response = await axios.post(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + this.loading = false; + console.log(response); + // if (response.data.verified) { + // this.checkCommentRepeat(data, response.data.id, self); + // } else { + // self.refs.toast.show('需要購買過此産品才能評論'); + // } + self.refs.toast.show('評論成功'); + } catch (error) { + this.loading = false; + self.refs.toast.show('評論失敗,網絡問題'); + console.log(error.response); + if (error.response.data[0] == "review_exists") { + self.refs.toast.show('已在此產品評論過'); + } else { + self.refs.toast.show('需要購買過此産品才能評論'); + } + } + } + + @action + async checkCommentRepeat(data, commentId, self) { + this.loading = true; + var url = api.review; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { + page: 1, + per_page: 100, + orderby: 'date', + product: data.product_id, + status: 'approved', + reviewer_email: data.reviewer_email, + }, + timeout: 5000, + }); + console.log(response); + if (response.data.length > 0) { + self.refs.toast.show('已在此產品評論過'); + } else { + this.commentStatusChange(commentId, data.product_id, self); + } + this.loading = false; + } catch (error) { + this.loading = false; + console.log(error); + self.refs.toast.show('評論失敗,網絡問題'); + } + } + + @action + async commentStatusChange(commentId, product_id, self) { + this.loading = true; + var requestURL = api.review + commentId; + var data = { + status: 'approved', + }; + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + self.commentPage = 1; + self.productComment = []; + self.refs.toast.show('評論成功'); + this.getComment(product_id, 1, self); + } catch (e) { + console.log(e); + this.loading = false; + self.refs.toast.show('評論失敗,網絡問題'); + // self.refs.toast.show(e.response); + } + } + + @action + async getComment(productId, pageValue, self) { + this.loading = true; + var url = api.item + productId + "/review/"; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + }, + params: { + page: pageValue, + per_page: 5, + orderby: 'date', + //product: productId, + status: 'approved', + //reviewer_email: 'ronny1@gmail.com', + }, + timeout: 5000, + }); + console.log(pageValue) + console.log(response); + this.loading = false; + var newArray = []; + response.data.content.map((items, index) => { + newArray.push(_.cloneDeep(items)); + }); + if (response.data.totalPages > 1) { + self.productComment = self.productComment.concat(response.data.content); + } else { + if (pageValue == 1) { + self.productComment = self.productComment.concat(response.data.content); + } + } + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async getOrders() { + this.orderList = []; + this.loading = true; + var url = api.order; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + params: { + page: 1, + per_page: 20, + orderby: 'date', + }, + paramsSerializer: params => { + return qs.stringify(params); + }, + timeout: 5000, + }); + + this.loading = false; + this.orderList = response.data.content; + console.log(response.data); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + getObjects(obj, key, val) { + var objects = []; + for (var i in obj) { + console.log(i) + if (!obj.hasOwnProperty(i)) continue; + if (typeof obj[i] == 'object') { + objects = objects.concat(this.getObjects(obj[i], key, val)); + } else + //if key matches and value matches or if key matches and value is not passed (eliminating the case where key matches but passed value does not) + if (i == key && obj[i] == val || i == key && val == '') { // + objects.push(obj); + } else if (obj[i] == val && key == '') { + //only add if the object is not already in the array + if (objects.lastIndexOf(obj) == -1) { + objects.push(obj); + } + } + } + return objects; + } + + @action + async getRegions() { + + this.regions = []; + // this.loading = true; + var url = api.regions; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + // console.log(this.getObjects(response.data.content, 'id', 1)) + // this.loading = false; + this.regions = await response.data.content.filter(e => e.status == "A"); + console.log(this.regions) + console.log(this.regions.filter(e => !e.hasOwnProperty('parent'))) + var level0 = await this.regions.filter(e => !e.hasOwnProperty('parent')) + console.log(level0) + level0.forEach(e => { + this.find_children(this.regions, e) + }) + + this.regionsArray = _.cloneDeep(this.regions) + this.regionsArray = this.regionsArray.filter(e => !e.hasOwnProperty('parent')) + + } catch (error) { + // this.loading = false; + console.log(error); + } + } + find_children(arr, obj) { + try { + var children = arr.filter(e => e.hasOwnProperty('parent') && e.parent.id == obj.id); + if (children.length) { + obj.children = children; + children.forEach(child => { + this.find_children(arr, child); + }); + } + } catch (e) { + console.log(e) + } + } + + + @action + async getAddress() { + this.getRegions(); + this.addresses = []; + this.loading = true; + var url = api.address; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + console.log(response); + this.loading = false; + this.addresses = response.data; + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async payByWeChat(id, points, self) { + this.loading = true; + var requestURL = api.order + id + '/pay'; + console.log(requestURL); + var point = 0; + if (parseInt(points) != 0 || points != '') { + point = parseInt(points); + } + var data = { + use_points: point, + payment_method: 'stripe_wechat', + card_token: this.creditCardinfo.token, + }; + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + Linking.canOpenURL(response.data.wechat.qr_code_url).then(supported => { + if (supported) { + Linking.openURL(response.data.wechat.qr_code_url); + } else { + console.log( + "Don't know how to open URI: " + response.data.wechat.qr_code_url, + ); + } + }); + // var storeSelf = this; + // this.startAnimate(); + // setTimeout(function() { + // // self.props.navigation.popToTop(); + // self.props.navigation.navigate('Main'); + // }, 1000); + // self.props.navigation.navigate('BuyHistory'); + } catch (e) { + console.log(e.response); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action async loginWithApple(idToken, self, navAction) { + var requestURL = api.signInWithApple; + var data = { + identityToken: idToken, + device: uuid.v4(), + }; + // data.device = uuid.v4(); + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 5000, + }); + this.loading = false; + console.log(response); + // if (response.data.hasOwnProperty('nomember')) { + // var min = 0; + // var max = 99999999; + // var random = Math.floor(Math.random() * (+max - +min)) + +min; + // var ans = random.toString(); + // console.log(ans); + + // var signupData = { + // thirdParty: true, + // first_name: '', + // last_name: '', + // country_code: '+852', + // mobile: '', + // email: response.data.nomember.email, + // ver_code: '', + // welcome_code: '', + // password: ans, + // }; + // this.loading = false; + // self.props.navigation.navigate('SignUpVerify', {data: signupData}); + // } else { + this.loading = false; + this.logined = true; + this.loginUserData = response; + this.userData = data; + var saveData = { + token: response.data.token, + device: data.device, + }; + this.saveDataToLocal('logindata', saveData); + + self.props.navigation.popToTop(); + + this.token = response.data.token; + this.uuid = data.device; + this.getAddress(); + this.getShoppingCart(); + this.notificationInit(); + this.getCreditCard(); + this.getShoppingGroup(); + this.getShippingOrderDate(); + // } + } catch (e) { + self.refs.toast.show('Login Fail'); + this.loading = false; + //connectFail.fail(); + console.log(e); + } + } + + @action + async thirdPartyLogin(data, self, navAction) { + // this.loading = true; + var requestURL = api.thirdPartyLogin; + data.device = uuid.v4(); + console.log(data) + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 5000, + }); + this.loading = false; + + console.log(response); + // if (response.data.hasOwnProperty('nomember')) { + // var min = 0; + // var max = 99999999; + // var random = Math.floor(Math.random() * (+max - +min)) + +min; + // var ans = random.toString(); + // console.log(ans); + + // var signupData = { + // thirdParty: true, + // first_name: '', + // last_name: response.data.nomember.name, + // country_code: '+852', + // mobile: '', + // email: response.data.nomember.email, + // ver_code: '', + // welcome_code: '', + // password: ans, + // }; + // this.loading = false; + // self.props.navigation.navigate('SignUpVerify', {data: signupData}); + // } else { + this.loading = false; + this.logined = true; + var userdata = { data: null }; + userdata.data = response.data.member + this.loginUserData = userdata; + this.userData = data; + var saveData = { + token: response.data.token, + device: data.device, + }; + this.saveDataToLocal('logindata', saveData); + + self.props.navigation.popToTop(); + + this.token = response.data.token; + this.uuid = data.device; + await this.getAddress(); + await this.getShoppingCart(); + await this.notificationInit(); + await this.getCreditCard(); + await this.getShoppingGroup(); + await this.getShippingOrderDate(); + // } + } catch (e) { + self.refs.toast.show('Login Fail'); + // this.loading = false; + //connectFail.fail(); + console.log(e.response); + } + } + @action + async payBycash(id, self) { + self.payDisable = true; + this.loading = true; + var requestURL = api.order + id + '/pay'; + console.log(requestURL); + var data = { + paymentMethod: 'cod', + }; + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + var storeSelf = this; + this.startAnimate(); + setTimeout(function () { + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + // self.props.navigation.navigate('BuyHistory'); + } catch (e) { + self.refs.toast.show('下單失敗'); + setTimeout(function () { + // self.props.navigation.popToTop(); + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + console.log(e.response); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async payByBank(id, imageLink, self) { + self.payDisable = true; + this.loading = true; + var requestURL = api.order + id + '/pay'; + var uploadURL = api.order + id + '/upload-receipt'; + console.log(requestURL); + var data = { + paymentMethod: 'bank', + }; + const date = moment().format('DDMMYYYYssmmhh'); + const fileData = new FormData(); + fileData.append('file', { + uri: imageLink, + name: 'bank' + date + '.png', + type: 'image/png', + }); + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + console.log(response); + + try { + const uploadImageResponse = await axios.post(uploadURL, fileData, { + headers: { + 'Content-Type': 'multipart/form-data', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + timeout: 5000, + }) + this.loading = false; + console.log(uploadImageResponse); + this.startAnimate(); + setTimeout(function () { + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + } catch (error) { + this.loading = false; + console.log(error.response) + } + + + } catch (e) { + self.refs.toast.show('下單失敗'); + console.log(e.response); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async uploadBankReceipt(id, imageLink, self) { + this.loading = true; + var uploadURL = api.order + id + '/upload-receipt'; + const date = moment().format('DDMMYYYYssmmhh'); + const fileData = new FormData(); + fileData.append('file', { + uri: imageLink, + name: 'bank' + date + '.png', + type: 'image/png', + }); + try { + const uploadImageResponse = await axios.post(uploadURL, fileData, { + headers: { + 'Content-Type': 'multipart/form-data', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + timeout: 5000, + }) + this.loading = false; + console.log(uploadImageResponse); + this.startAnimate(); + setTimeout(function () { + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + } catch (error) { + this.loading = false; + console.log(error.response) + } + + } + @action + async payByCreditCard(id, self) { + self.payDisable = true; + this.loading = true; + var requestURL = api.order + id + '/pay'; + // console.log(requestURL); + // var point = 0; + // if (parseInt(points) != 0 || points != '') { + // point = parseInt(points); + // } + var data = { + // use_points: point, + paymentMethod: 'stripe', + creditcard: this.creditCardinfo.id, + //card_token: this.creditCardinfo.token, + }; + console.log(requestURL); + console.log(data); + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + var storeSelf = this; + this.startAnimate(); + setTimeout(function () { + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + // self.props.navigation.navigate('BuyHistory'); + } catch (e) { + self.refs.toast.show('付款失敗'); + setTimeout(function () { + // self.props.navigation.popToTop(); + self.payDisable = false; + self.props.navigation.navigate('BuyHistory'); + }, 1000); + console.log(e.response); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async orderProducts() { } + + async removeValue(key) { + try { + await AsyncStorage.removeItem(key); + } catch (e) { + // remove error + } + + console.log('Done.'); + } + + @action + async getFcmToken() { + messaging() + .getToken() + .then(token => { + console.log(token); + if (this.logined) { + this.postFcmToken(token); + } + }); + } + @action + async requestUserPermission() { + const authorizationStatus = await messaging().requestPermission(); + if (authorizationStatus) { + console.log('Permission status:', authorizationStatus); + if (authorizationStatus === messaging.AuthorizationStatus.AUTHORIZED) { + console.log('User has notification permissions enabled.'); + this.getFcmToken(); + } + } + } + + @action async notificationInit() { + const authorizationStatus = await messaging().requestPermission(); + console.log(authorizationStatus); + if (authorizationStatus === messaging.AuthorizationStatus.AUTHORIZED) { + console.log('User has notification permissions enabled.'); + this.getFcmToken(); + } else if ( + authorizationStatus === messaging.AuthorizationStatus.PROVISIONAL + ) { + console.log('User has provisional notification permissions.'); + } else if ( + authorizationStatus === messaging.AuthorizationStatus.NOT_DETERMINED + ) { + console.log( + 'Permission has not yet been requested for your application.', + ); + this.requestUserPermission(); + } else { + console.log('User has notification permissions disabled'); + } + } + + @action + async postFcmToken(fcmtoken) { + + var url = api.fcmToken; + var data = { + memberId: this.loginUserData.data.id, + token: fcmtoken, + }; + try { + const response = await axios.put(url, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + timeout: 5000, + }); + + console.log(response); + } catch (error) { + + console.log(error); + } + } + + @action + async logoutPost(self) { + this.postFcmToken(''); + this.logined = false; + await this.removeValue('logindata'); + self.props.navigation.navigate('Main'); + } + + @action + async getDiscount() { + this.discount = []; + var url = api.discount; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + params: { page: 1, per_page: 100 }, + timeout: 5000, + }); + console.log(response); + this.loading = false; + await response.data.content.map((items, index) => { + if (moment() > moment(items.start) && items.status == 'A') { + if (items.end != null) { + console.log('date: ' + moment(items.end).format('DD/MM/YYYY')); + if (moment() < moment(items.end)) { + this.discount.push(items); + } + } else { + this.discount.push(items); + } + } + }); + console.log(this.discount); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async getCoupons(self) { + this.coupons = []; + this.loading = true; + var url = api.getCoupons; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + params: { page: 1, per_page: 100 }, + timeout: 5000, + }); + console.log(response); + this.loading = false; + await response.data.content.map((items, index) => { + if (items.expiry != null) { + console.log('date: ' + moment(items.expiry).format('DD/MM/YYYY')); + if (moment() < moment(items.expiry)) { + this.coupons.push(items); + } + } else { + this.coupons.push(items); + } + }); + console.log(this.coupons); + } catch (error) { + this.loading = false; + console.log(error); + } + } + + @action + async loginPost(self, data, nav) { + data.device = uuid.v4(); + //this.loading = true; + var url = api.login; + var loginData = _.cloneDeep(data); + console.log(loginData); + try { + const response = await axios.post(url, loginData, { + headers: { + company: 'calihealthylife', + 'Content-Type': 'application/json', + }, + timeout: 5000, + }); + // this.loading = false; + this.logined = true; + var userdata = { data: null }; + userdata.data = response.data.member + this.loginUserData = userdata; + this.userData = data; + var saveData = { + token: response.data.token, + device: data.device, + }; + this.saveDataToLocal('logindata', saveData); + if (nav) { + self.props.navigation.popToTop(); + } + console.log(response); + this.token = response.data.token; + this.uuid = data.device; + this.getAddress(); + this.getShoppingCart(); + this.notificationInit(); + this.getCreditCard(); + this.getShoppingGroup(); + this.getShippingOrderDate(); + //this.getPoints(); + } catch (e) { + self.refs.toast.show('Login Fail'); + // this.loading = false; + //connectFail.fail(); + console.log(e.response); + + self.loginUserData = { + username: '', + password: '', + }; + } + } + + @action + async getPointsfromUser() { + var url = api.editAddress; + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + timeout: 5000, + }); + this.points = response.data.points; + } catch (e) { + //self.refs.toast.show('Login Fail'); + + //connectFail.fail(); + console.log(e.response); + } + } + + @action + async getUserData(self, data, nav) { + this.loading = true; + var url = api.editAddress; + console.log(this.uuid); + console.log(this.token); + console.log('Basic ' + base64.encode(`${this.uuid}:${this.token}`)); + try { + const response = await axios.get(url, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + timeout: 5000, + }); + + this.loading = false; + this.logined = true; + this.loginUserData = response; + if (nav) { + self.props.navigation.popToTop(); + } + console.log(response); + this.getAddress(); + this.getShoppingCart(); + this.notificationInit(); + this.getCreditCard(); + this.getShoppingGroup(); + this.getShippingOrderDate(); + } catch (e) { + //self.refs.toast.show('Login Fail'); + this.loading = false; + //connectFail.fail(); + console.log(e.response); + } + } + + @action + async signupPost(self, data) { + var jsonData = _.cloneDeep(data); + + var requestURL = api.signup; + try { + const response = await axios.post(requestURL, jsonData, { + headers: { + 'Content-Type': 'application/json', + }, + }); + this.loading = false; + // transaction(() => { + // this.loading = false; + // this.logined = true; + // this.loginUserData = response; + // }); + + console.log(response); + + var loginUserData = { + email: '852' + data.mobile, + pwd: data.pwd, + }; + this.loginPost(self, loginUserData, true); + // self.navigatieAction("menu"); + // var data = {id: response.data.member.id, token: response.data.token}; + + //this.loginPost(data, self, true); + } catch (e) { + console.log(e.response); + self.refs.toast.show('SignUp Fail: ' + e.response.data); + this.loading = false; + } + } + + @action + async addAddress(data, self) { + this.loading = true; + var requestURL = api.address; + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + //this.loginUserData.data.address = response.data.address; + this.addresses.push(response.data); + this.getAddress() + this.getShoppingGroup() + self.props.navigation.goBack(); + } catch (e) { + console.log(e); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async editAddress(data, id, self) { + this.loading = true; + var requestURL = api.address + id; + data.id = id; + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + this.addresses[0] = response.data; + this.getShoppingGroup() + self.props.navigation.goBack(); + } catch (e) { + console.log(e); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async editName(data, self) { + this.loading = true; + var requestURL = api.editAddress; + + try { + const response = await axios.put(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic ' + base64.encode(`${this.uuid}:${this.token}`), + }, + + timeout: 5000, + }); + + this.loading = false; + console.log(response); + this.loginUserData.data.last_name = response.data.last_name; + this.loginUserData.data.first_name = response.data.first_name; + self.props.navigation.goBack(); + } catch (e) { + console.log(e); + this.loading = false; + // self.refs.toast.show(e.response); + } + } + + @action + async forgotPassword(data, self) { + // this.loading = true; + var requestURL = api.forgotPassword; + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + }, + }); + //this.loading = false; + + this.logoutPost(self); + console.log(response); + } catch (e) { + console.log(e.response.data); + self.refs.toast.show('Reset Password Fail'); + // this.loading = false; + } + } + + @action + async sendsmsVerify(data, self) { + this.loading = true; + var requestURL = api.smsVerify; + console.log(data) + try { + const response = await axios.post(requestURL, data, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 5000, + }); + + this.loading = false; + console.log(response); + } catch (e) { + console.log(e.response); + this.loading = false; + // self.refs.toast.show(e.response); + } + } +} +export default new Stores(); diff --git a/src/stores/index.js b/src/stores/index.js new file mode 100644 index 0000000..3cb2ac9 --- /dev/null +++ b/src/stores/index.js @@ -0,0 +1,5 @@ +import appStore from './app-store'; + +export default { + appStore, +}; diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..fc93723 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,8681 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" + "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/highlight" "7.10.4" + +"@babel/core@^7.8.4", "@babel/core@7.12.10": + "integrity" "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==" + "resolved" "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/code-frame" "7.12.11" + "@babel/generator" "7.12.11" + "@babel/helper-module-transforms" "7.12.1" + "@babel/helpers" "7.12.5" + "@babel/parser" "7.12.11" + "@babel/template" "7.12.7" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "convert-source-map" "1.7.0" + "debug" "4.3.1" + "gensync" "1.0.0-beta.2" + "json5" "2.1.3" + "lodash" "4.17.20" + "semver" "5.7.1" + "source-map" "0.5.7" + +"@babel/generator@7.12.11": + "integrity" "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==" + "resolved" "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/types" "7.12.12" + "jsesc" "2.5.2" + "source-map" "0.5.7" + +"@babel/helper-annotate-as-pure@7.12.10": + "integrity" "sha512-XplmVbC1n+KY6jL8/fgLVXXUauDIB+lD5+GsQEh6F6GBF1dq1qy4DP4yXWzDKcoqXB3X58t61e85Fitoww4JVQ==" + "resolved" "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-builder-binary-assignment-operator-visitor@7.10.4": + "integrity" "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==" + "resolved" "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz" + "version" "7.10.4" + dependencies: + "@babel/helper-explode-assignable-expression" "7.12.1" + "@babel/types" "7.12.12" + +"@babel/helper-create-class-features-plugin@7.12.1": + "integrity" "sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w==" + "resolved" "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-function-name" "7.12.11" + "@babel/helper-member-expression-to-functions" "7.12.7" + "@babel/helper-optimise-call-expression" "7.12.10" + "@babel/helper-replace-supers" "7.12.11" + "@babel/helper-split-export-declaration" "7.12.11" + +"@babel/helper-create-regexp-features-plugin@7.12.7": + "integrity" "sha512-idnutvQPdpbduutvi3JVfEgcVIHooQnhvhx0Nk9isOINOIGYkZea1Pk2JlJRiUnMefrlvr0vkByATBY/mB4vjQ==" + "resolved" "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.7.tgz" + "version" "7.12.7" + dependencies: + "@babel/helper-annotate-as-pure" "7.12.10" + "regexpu-core" "4.7.1" + +"@babel/helper-define-map@7.10.5": + "integrity" "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==" + "resolved" "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz" + "version" "7.10.5" + dependencies: + "@babel/helper-function-name" "7.12.11" + "@babel/types" "7.12.12" + "lodash" "4.17.20" + +"@babel/helper-explode-assignable-expression@7.12.1": + "integrity" "sha512-dmUwH8XmlrUpVqgtZ737tK88v07l840z9j3OEhCLwKTkjlvKpfqXVIZ0wpK3aeOxspwGrf/5AP5qLx4rO3w5rA==" + "resolved" "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-function-name@7.12.11": + "integrity" "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==" + "resolved" "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/helper-get-function-arity" "7.12.10" + "@babel/template" "7.12.7" + "@babel/types" "7.12.12" + +"@babel/helper-get-function-arity@7.12.10": + "integrity" "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==" + "resolved" "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-member-expression-to-functions@7.12.7": + "integrity" "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==" + "resolved" "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz" + "version" "7.12.7" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-module-imports@7.12.5": + "integrity" "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==" + "resolved" "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz" + "version" "7.12.5" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-module-transforms@7.12.1": + "integrity" "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==" + "resolved" "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-module-imports" "7.12.5" + "@babel/helper-replace-supers" "7.12.11" + "@babel/helper-simple-access" "7.12.1" + "@babel/helper-split-export-declaration" "7.12.11" + "@babel/helper-validator-identifier" "7.12.11" + "@babel/template" "7.12.7" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "lodash" "4.17.20" + +"@babel/helper-optimise-call-expression@7.12.10": + "integrity" "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==" + "resolved" "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-plugin-utils@7.10.4": + "integrity" "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + "resolved" "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz" + "version" "7.10.4" + +"@babel/helper-remap-async-to-generator@7.12.1": + "integrity" "sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A==" + "resolved" "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-annotate-as-pure" "7.12.10" + "@babel/helper-wrap-function" "7.12.3" + "@babel/types" "7.12.12" + +"@babel/helper-replace-supers@7.12.11": + "integrity" "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==" + "resolved" "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/helper-member-expression-to-functions" "7.12.7" + "@babel/helper-optimise-call-expression" "7.12.10" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + +"@babel/helper-simple-access@7.12.1": + "integrity" "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==" + "resolved" "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-skip-transparent-expression-wrappers@7.12.1": + "integrity" "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==" + "resolved" "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-split-export-declaration@7.12.11": + "integrity" "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==" + "resolved" "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/types" "7.12.12" + +"@babel/helper-validator-identifier@7.12.11": + "integrity" "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz" + "version" "7.12.11" + +"@babel/helper-wrap-function@7.12.3": + "integrity" "sha512-Cvb8IuJDln3rs6tzjW3Y8UeelAOdnpB8xtQ4sme2MSZ9wOxrbThporC0y/EtE16VAtoyEfLM404Xr1e0OOp+ow==" + "resolved" "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.3.tgz" + "version" "7.12.3" + dependencies: + "@babel/helper-function-name" "7.12.11" + "@babel/template" "7.12.7" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + +"@babel/helpers@7.12.5": + "integrity" "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==" + "resolved" "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz" + "version" "7.12.5" + dependencies: + "@babel/template" "7.12.7" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + +"@babel/highlight@7.10.4": + "integrity" "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==" + "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz" + "version" "7.10.4" + dependencies: + "@babel/helper-validator-identifier" "7.12.11" + "chalk" "2.4.2" + "js-tokens" "4.0.0" + +"@babel/parser@7.12.11": + "integrity" "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==" + "resolved" "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz" + "version" "7.12.11" + +"@babel/plugin-external-helpers@7.12.1": + "integrity" "sha512-5VBqan0daXhDSRjrq2miABuELRwWJWFdM42Jvs/CDuhp+Es+fW+ISA5l+co8d+9oN3WLz/N3VvzyeseL3AvjxA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-external-helpers/-/plugin-external-helpers-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-proposal-class-properties@7.12.1": + "integrity" "sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-create-class-features-plugin" "7.12.1" + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-proposal-decorators@^7.12.1": + "integrity" "sha512-fhkE9lJYpw2mjHelBpM2zCbaA11aov2GJs7q4cFaXNrWx0H3bW58H9Esy2rdtYOghFBEYUDRIpvlgi+ZD+AvvQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.12.12.tgz" + "version" "7.12.12" + dependencies: + "@babel/helper-create-class-features-plugin" "7.12.1" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-decorators" "7.12.1" + +"@babel/plugin-proposal-export-default-from@7.12.1": + "integrity" "sha512-z5Q4Ke7j0AexQRfgUvnD+BdCSgpTEKnqQ3kskk2jWtOBulxICzd1X9BGt7kmWftxZ2W3++OZdt5gtmC8KLxdRQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-export-default-from" "7.12.1" + +"@babel/plugin-proposal-nullish-coalescing-operator@7.12.1": + "integrity" "sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "7.8.3" + +"@babel/plugin-proposal-object-rest-spread@7.12.1": + "integrity" "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-object-rest-spread" "7.8.3" + "@babel/plugin-transform-parameters" "7.12.1" + +"@babel/plugin-proposal-optional-catch-binding@7.12.1": + "integrity" "sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-optional-catch-binding" "7.8.3" + +"@babel/plugin-proposal-optional-chaining@7.12.7": + "integrity" "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz" + "version" "7.12.7" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-skip-transparent-expression-wrappers" "7.12.1" + "@babel/plugin-syntax-optional-chaining" "7.8.3" + +"@babel/plugin-syntax-async-generators@7.8.4": + "integrity" "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz" + "version" "7.8.4" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-bigint@7.8.3": + "integrity" "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-class-properties@7.12.1": + "integrity" "sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-decorators@7.12.1": + "integrity" "sha512-ir9YW5daRrTYiy9UJ2TzdNIJEZu8KclVzDcfSt4iEmOtwQ4llPtWInNKJyKnVXp1vE4bbVd5S31M/im3mYMO1w==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-dynamic-import@7.8.3": + "integrity" "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-export-default-from@7.12.1": + "integrity" "sha512-dP5eGg6tHEkhnRD2/vRG/KJKRSg8gtxu2i+P/8/yFPJn/CfPU5G0/7Gks2i3M6IOVAPQekmsLN9LPsmXFFL4Uw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-flow@7.12.1": + "integrity" "sha512-1lBLLmtxrwpm4VKmtVFselI/P3pX+G63fAtUUt6b2Nzgao77KNDwyuRt90Mj2/9pKobtt68FdvjfqohZjg/FCA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-import-meta@7.10.4": + "integrity" "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz" + "version" "7.10.4" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-json-strings@7.8.3": + "integrity" "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-jsx@7.12.1": + "integrity" "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-logical-assignment-operators@7.10.4": + "integrity" "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz" + "version" "7.10.4" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@7.8.3": + "integrity" "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-numeric-separator@7.10.4": + "integrity" "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz" + "version" "7.10.4" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-object-rest-spread@7.8.3": + "integrity" "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-optional-catch-binding@7.8.3": + "integrity" "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-optional-chaining@7.8.3": + "integrity" "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz" + "version" "7.8.3" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-syntax-typescript@7.12.1": + "integrity" "sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-arrow-functions@7.12.1": + "integrity" "sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-async-to-generator@7.12.1": + "integrity" "sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-module-imports" "7.12.5" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-remap-async-to-generator" "7.12.1" + +"@babel/plugin-transform-block-scoped-functions@7.12.1": + "integrity" "sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-block-scoping@7.12.12": + "integrity" "sha512-VOEPQ/ExOVqbukuP7BYJtI5ZxxsmegTwzZ04j1aF0dkSypGo9XpDHuOrABsJu+ie+penpSJheDJ11x1BEZNiyQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.12.tgz" + "version" "7.12.12" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-classes@7.12.1": + "integrity" "sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-annotate-as-pure" "7.12.10" + "@babel/helper-define-map" "7.10.5" + "@babel/helper-function-name" "7.12.11" + "@babel/helper-optimise-call-expression" "7.12.10" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-replace-supers" "7.12.11" + "@babel/helper-split-export-declaration" "7.12.11" + "globals" "11.12.0" + +"@babel/plugin-transform-computed-properties@7.12.1": + "integrity" "sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-destructuring@7.12.1": + "integrity" "sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-exponentiation-operator@7.12.1": + "integrity" "sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "7.10.4" + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-flow-strip-types@7.12.10": + "integrity" "sha512-0ti12wLTLeUIzu9U7kjqIn4MyOL7+Wibc7avsHhj4o1l5C0ATs8p2IMHrVYjm9t9wzhfEO6S3kxax0Rpdo8LTg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-flow" "7.12.1" + +"@babel/plugin-transform-for-of@7.12.1": + "integrity" "sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-function-name@7.12.1": + "integrity" "sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-function-name" "7.12.11" + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-literals@7.12.1": + "integrity" "sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-member-expression-literals@7.12.1": + "integrity" "sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-modules-commonjs@7.12.1": + "integrity" "sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-module-transforms" "7.12.1" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-simple-access" "7.12.1" + "babel-plugin-dynamic-import-node" "2.3.3" + +"@babel/plugin-transform-object-assign@7.12.1": + "integrity" "sha512-geUHn4XwHznRAFiuROTy0Hr7bKbpijJCmr1Svt/VNGhpxmp0OrdxURNpWbOAf94nUbL+xj6gbxRVPHWIbRpRoA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-object-super@7.12.1": + "integrity" "sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-replace-supers" "7.12.11" + +"@babel/plugin-transform-parameters@7.12.1": + "integrity" "sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-property-literals@7.12.1": + "integrity" "sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-react-display-name@7.12.1": + "integrity" "sha512-cAzB+UzBIrekfYxyLlFqf/OagTvHLcVBb5vpouzkYkBclRPraiygVnafvAoipErZLI8ANv8Ecn6E/m5qPXD26w==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-react-jsx-self@7.12.1": + "integrity" "sha512-FbpL0ieNWiiBB5tCldX17EtXgmzeEZjFrix72rQYeq9X6nUK38HCaxexzVQrZWXanxKJPKVVIU37gFjEQYkPkA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-react-jsx-source@7.12.1": + "integrity" "sha512-keQ5kBfjJNRc6zZN1/nVHCd6LLIHq4aUKcVnvE/2l+ZZROSbqoiGFRtT5t3Is89XJxBQaP7NLZX2jgGHdZvvFQ==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-react-jsx@7.12.12": + "integrity" "sha512-JDWGuzGNWscYcq8oJVCtSE61a5+XAOos+V0HrxnDieUus4UMnBEosDnY1VJqU5iZ4pA04QY7l0+JvHL1hZEfsw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.12.12.tgz" + "version" "7.12.12" + dependencies: + "@babel/helper-annotate-as-pure" "7.12.10" + "@babel/helper-module-imports" "7.12.5" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-jsx" "7.12.1" + "@babel/types" "7.12.12" + +"@babel/plugin-transform-regenerator@7.12.1": + "integrity" "sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "regenerator-transform" "0.14.5" + +"@babel/plugin-transform-runtime@7.12.10": + "integrity" "sha512-xOrUfzPxw7+WDm9igMgQCbO3cJKymX7dFdsgRr1eu9n3KjjyU4pptIXbXPseQDquw+W+RuJEJMHKHNsPNNm3CA==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "@babel/helper-module-imports" "7.12.5" + "@babel/helper-plugin-utils" "7.10.4" + "semver" "5.7.1" + +"@babel/plugin-transform-shorthand-properties@7.12.1": + "integrity" "sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-spread@7.12.1": + "integrity" "sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@babel/helper-skip-transparent-expression-wrappers" "7.12.1" + +"@babel/plugin-transform-sticky-regex@7.12.7": + "integrity" "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz" + "version" "7.12.7" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-template-literals@7.12.1": + "integrity" "sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/plugin-transform-typescript@7.12.1": + "integrity" "sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-create-class-features-plugin" "7.12.1" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-syntax-typescript" "7.12.1" + +"@babel/plugin-transform-unicode-regex@7.12.1": + "integrity" "sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg==" + "resolved" "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.1.tgz" + "version" "7.12.1" + dependencies: + "@babel/helper-create-regexp-features-plugin" "7.12.7" + "@babel/helper-plugin-utils" "7.10.4" + +"@babel/register@7.12.10": + "integrity" "sha512-EvX/BvMMJRAA3jZgILWgbsrHwBQvllC5T8B29McyME8DvkdOxk4ujESfrMvME8IHSDvWXrmMXxPvA/lx2gqPLQ==" + "resolved" "https://registry.npmjs.org/@babel/register/-/register-7.12.10.tgz" + "version" "7.12.10" + dependencies: + "find-cache-dir" "2.1.0" + "lodash" "4.17.20" + "make-dir" "2.1.0" + "pirates" "4.0.1" + "source-map-support" "0.5.19" + +"@babel/runtime-corejs3@7.12.5": + "integrity" "sha512-roGr54CsTmNPPzZoCP1AmDXuBoNao7tnSA83TXTwt+UK5QVyh1DIJnrgYRPWKCF2flqZQXwa7Yr8v7VmLzF0YQ==" + "resolved" "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.12.5.tgz" + "version" "7.12.5" + dependencies: + "core-js-pure" "3.8.3" + "regenerator-runtime" "0.13.7" + +"@babel/runtime@^7.8.4", "@babel/runtime@7.12.5": + "integrity" "sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==" + "resolved" "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.5.tgz" + "version" "7.12.5" + dependencies: + "regenerator-runtime" "0.13.7" + +"@babel/template@7.12.7": + "integrity" "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==" + "resolved" "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz" + "version" "7.12.7" + dependencies: + "@babel/code-frame" "7.12.11" + "@babel/parser" "7.12.11" + "@babel/types" "7.12.12" + +"@babel/traverse@7.12.12": + "integrity" "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==" + "resolved" "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz" + "version" "7.12.12" + dependencies: + "@babel/code-frame" "7.12.11" + "@babel/generator" "7.12.11" + "@babel/helper-function-name" "7.12.11" + "@babel/helper-split-export-declaration" "7.12.11" + "@babel/parser" "7.12.11" + "@babel/types" "7.12.12" + "debug" "4.3.1" + "globals" "11.12.0" + "lodash" "4.17.20" + +"@babel/types@7.12.12": + "integrity" "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==" + "resolved" "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz" + "version" "7.12.12" + dependencies: + "@babel/helper-validator-identifier" "7.12.11" + "lodash" "4.17.20" + "to-fast-properties" "2.0.0" + +"@bcoe/v8-coverage@0.2.3": + "integrity" "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + "resolved" "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" + "version" "0.2.3" + +"@callstack/react-theme-provider@3.0.5": + "integrity" "sha512-Iec+ybWN0FvNj87sD3oWo/49edGUP0UOSdMnzCJEFJIDYr992ECIuOV89burAAh2/ibPCxgLiK6dmgv2mO/8Tg==" + "resolved" "https://registry.npmjs.org/@callstack/react-theme-provider/-/react-theme-provider-3.0.5.tgz" + "version" "3.0.5" + dependencies: + "deepmerge" "3.3.0" + "hoist-non-react-statics" "3.3.2" + +"@cnakazawa/watch@1.0.4": + "integrity" "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==" + "resolved" "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "exec-sh" "0.3.4" + "minimist" "1.2.5" + +"@egjs/hammerjs@^2.0.17": + "integrity" "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==" + "resolved" "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz" + "version" "2.0.17" + dependencies: + "@types/hammerjs" "2.0.36" + +"@hapi/address@2.1.4": + "integrity" "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==" + "resolved" "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz" + "version" "2.1.4" + +"@hapi/bourne@1.3.2": + "integrity" "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==" + "resolved" "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz" + "version" "1.3.2" + +"@hapi/hoek@8.5.1": + "integrity" "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==" + "resolved" "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz" + "version" "8.5.1" + +"@hapi/joi@15.1.1": + "integrity" "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==" + "resolved" "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz" + "version" "15.1.1" + dependencies: + "@hapi/address" "2.1.4" + "@hapi/bourne" "1.3.2" + "@hapi/hoek" "8.5.1" + "@hapi/topo" "3.1.6" + +"@hapi/topo@3.1.6": + "integrity" "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==" + "resolved" "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz" + "version" "3.1.6" + dependencies: + "@hapi/hoek" "8.5.1" + +"@invertase/react-native-apple-authentication@^2.1.2": + "integrity" "sha512-FzY+CApZLgGS9fmPBDB2kFBMePB37bH0+4h4e8gHtnHm/hF3/iqANAS6oXQq7W3SC+bgciuq38jeLFqNLgAmCA==" + "resolved" "https://registry.npmjs.org/@invertase/react-native-apple-authentication/-/react-native-apple-authentication-2.1.2.tgz" + "version" "2.1.2" + +"@istanbuljs/load-nyc-config@1.1.0": + "integrity" "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==" + "resolved" "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "camelcase" "5.3.1" + "find-up" "4.1.0" + "get-package-type" "0.1.0" + "js-yaml" "3.14.1" + "resolve-from" "5.0.0" + +"@istanbuljs/schema@0.1.2": + "integrity" "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==" + "resolved" "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz" + "version" "0.1.2" + +"@jest/console@24.9.0": + "integrity" "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==" + "resolved" "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/source-map" "24.9.0" + "chalk" "2.4.2" + "slash" "2.0.0" + +"@jest/console@25.5.0": + "integrity" "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==" + "resolved" "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "jest-message-util" "25.5.0" + "jest-util" "25.5.0" + "slash" "3.0.0" + +"@jest/core@25.5.4": + "integrity" "sha512-3uSo7laYxF00Dg/DMgbn4xMJKmDdWvZnf89n8Xj/5/AeQ2dOQmn6b6Hkj/MleyzZWXpwv+WSdYWl4cLsy2JsoA==" + "resolved" "https://registry.npmjs.org/@jest/core/-/core-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/console" "25.5.0" + "@jest/reporters" "25.5.1" + "@jest/test-result" "25.5.0" + "@jest/transform" "25.5.1" + "@jest/types" "25.5.0" + "ansi-escapes" "4.3.1" + "chalk" "3.0.0" + "exit" "0.1.2" + "graceful-fs" "4.2.4" + "jest-changed-files" "25.5.0" + "jest-config" "25.5.4" + "jest-haste-map" "25.5.1" + "jest-message-util" "25.5.0" + "jest-regex-util" "25.2.6" + "jest-resolve" "25.5.1" + "jest-resolve-dependencies" "25.5.4" + "jest-runner" "25.5.4" + "jest-runtime" "25.5.4" + "jest-snapshot" "25.5.1" + "jest-util" "25.5.0" + "jest-validate" "25.5.0" + "jest-watcher" "25.5.0" + "micromatch" "4.0.2" + "p-each-series" "2.2.0" + "realpath-native" "2.0.0" + "rimraf" "3.0.2" + "slash" "3.0.0" + "strip-ansi" "6.0.0" + +"@jest/environment@25.5.0": + "integrity" "sha512-U2VXPEqL07E/V7pSZMSQCvV5Ea4lqOlT+0ZFijl/i316cRMHvZ4qC+jBdryd+lmRetjQo0YIQr6cVPNxxK87mA==" + "resolved" "https://registry.npmjs.org/@jest/environment/-/environment-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/fake-timers" "25.5.0" + "@jest/types" "25.5.0" + "jest-mock" "25.5.0" + +"@jest/fake-timers@24.9.0": + "integrity" "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==" + "resolved" "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/types" "24.9.0" + "jest-message-util" "24.9.0" + "jest-mock" "24.9.0" + +"@jest/fake-timers@25.5.0": + "integrity" "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==" + "resolved" "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "jest-message-util" "25.5.0" + "jest-mock" "25.5.0" + "jest-util" "25.5.0" + "lolex" "5.1.2" + +"@jest/globals@25.5.2": + "integrity" "sha512-AgAS/Ny7Q2RCIj5kZ+0MuKM1wbF0WMLxbCVl/GOMoCNbODRdJ541IxJ98xnZdVSZXivKpJlNPIWa3QmY0l4CXA==" + "resolved" "https://registry.npmjs.org/@jest/globals/-/globals-25.5.2.tgz" + "version" "25.5.2" + dependencies: + "@jest/environment" "25.5.0" + "@jest/types" "25.5.0" + "expect" "25.5.0" + +"@jest/reporters@25.5.1": + "integrity" "sha512-3jbd8pPDTuhYJ7vqiHXbSwTJQNavczPs+f1kRprRDxETeE3u6srJ+f0NPuwvOmk+lmunZzPkYWIFZDLHQPkviw==" + "resolved" "https://registry.npmjs.org/@jest/reporters/-/reporters-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@bcoe/v8-coverage" "0.2.3" + "@jest/console" "25.5.0" + "@jest/test-result" "25.5.0" + "@jest/transform" "25.5.1" + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "collect-v8-coverage" "1.0.1" + "exit" "0.1.2" + "glob" "7.1.6" + "graceful-fs" "4.2.4" + "istanbul-lib-coverage" "3.0.0" + "istanbul-lib-instrument" "4.0.3" + "istanbul-lib-report" "3.0.0" + "istanbul-lib-source-maps" "4.0.0" + "istanbul-reports" "3.0.2" + "jest-haste-map" "25.5.1" + "jest-resolve" "25.5.1" + "jest-util" "25.5.0" + "jest-worker" "25.5.0" + "slash" "3.0.0" + "source-map" "0.6.1" + "string-length" "3.1.0" + "terminal-link" "2.1.1" + "v8-to-istanbul" "4.1.4" + optionalDependencies: + "node-notifier" "6.0.0" + +"@jest/source-map@24.9.0": + "integrity" "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==" + "resolved" "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "callsites" "3.1.0" + "graceful-fs" "4.2.4" + "source-map" "0.6.1" + +"@jest/source-map@25.5.0": + "integrity" "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==" + "resolved" "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "callsites" "3.1.0" + "graceful-fs" "4.2.4" + "source-map" "0.6.1" + +"@jest/test-result@24.9.0": + "integrity" "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==" + "resolved" "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/console" "24.9.0" + "@jest/types" "24.9.0" + "@types/istanbul-lib-coverage" "2.0.3" + +"@jest/test-result@25.5.0": + "integrity" "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==" + "resolved" "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/console" "25.5.0" + "@jest/types" "25.5.0" + "@types/istanbul-lib-coverage" "2.0.3" + "collect-v8-coverage" "1.0.1" + +"@jest/test-sequencer@25.5.4": + "integrity" "sha512-pTJGEkSeg1EkCO2YWq6hbFvKNXk8ejqlxiOg1jBNLnWrgXOkdY6UmqZpwGFXNnRt9B8nO1uWMzLLZ4eCmhkPNA==" + "resolved" "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/test-result" "25.5.0" + "graceful-fs" "4.2.4" + "jest-haste-map" "25.5.1" + "jest-runner" "25.5.4" + "jest-runtime" "25.5.4" + +"@jest/transform@25.5.1": + "integrity" "sha512-Y8CEoVwXb4QwA6Y/9uDkn0Xfz0finGkieuV0xkdF9UtZGJeLukD5nLkaVrVsODB1ojRWlaoD0AJZpVHCSnJEvg==" + "resolved" "https://registry.npmjs.org/@jest/transform/-/transform-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@babel/core" "7.12.10" + "@jest/types" "25.5.0" + "babel-plugin-istanbul" "6.0.0" + "chalk" "3.0.0" + "convert-source-map" "1.7.0" + "fast-json-stable-stringify" "2.1.0" + "graceful-fs" "4.2.4" + "jest-haste-map" "25.5.1" + "jest-regex-util" "25.2.6" + "jest-util" "25.5.0" + "micromatch" "4.0.2" + "pirates" "4.0.1" + "realpath-native" "2.0.0" + "slash" "3.0.0" + "source-map" "0.6.1" + "write-file-atomic" "3.0.3" + +"@jest/types@24.9.0": + "integrity" "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==" + "resolved" "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@types/istanbul-lib-coverage" "2.0.3" + "@types/istanbul-reports" "1.1.2" + "@types/yargs" "13.0.11" + +"@jest/types@25.5.0": + "integrity" "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==" + "resolved" "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@types/istanbul-lib-coverage" "2.0.3" + "@types/istanbul-reports" "1.1.2" + "@types/yargs" "15.0.12" + "chalk" "3.0.0" + +"@react-native-community/art@1.2.0": + "integrity" "sha512-a+ZcRGl/BzLa89yi33Mbn5SHavsEXqKUMdbfLf3U8MDLElndPqUetoJyGkv63+BcPO49UMWiQRP1YUz6/zfJ+A==" + "resolved" "https://registry.npmjs.org/@react-native-community/art/-/art-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "art" "0.10.3" + "invariant" "2.2.4" + "prop-types" "15.7.2" + +"@react-native-community/async-storage@^1.12.1": + "integrity" "sha512-70WGaH3PKYASi4BThuEEKMkyAgE9k7VytBqmgPRx3MzJx9/MkspwqJGmn3QLCgHLIFUgF1pit2mWICbRJ3T3lg==" + "resolved" "https://registry.npmjs.org/@react-native-community/async-storage/-/async-storage-1.12.1.tgz" + "version" "1.12.1" + dependencies: + "deep-assign" "3.0.0" + +"@react-native-community/cli-debugger-ui@4.13.1": + "integrity" "sha512-UFnkg5RTq3s2X15fSkrWY9+5BKOFjihNSnJjTV2H5PtTUFbd55qnxxPw8CxSfK0bXb1IrSvCESprk2LEpqr5cg==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.13.1.tgz" + "version" "4.13.1" + dependencies: + "serve-static" "1.14.1" + +"@react-native-community/cli-hermes@4.13.0": + "integrity" "sha512-oG+w0Uby6rSGsUkJGLvMQctZ5eVRLLfhf84lLyz942OEDxFRa9U19YJxOe9FmgCKtotbYiM3P/XhK+SVCuerPQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-4.13.0.tgz" + "version" "4.13.0" + dependencies: + "@react-native-community/cli-platform-android" "4.13.0" + "@react-native-community/cli-tools" "4.13.0" + "chalk" "3.0.0" + "hermes-profile-transformer" "0.0.6" + "ip" "1.1.5" + +"@react-native-community/cli-platform-android@4.13.0": + "integrity" "sha512-3i8sX8GklEytUZwPnojuoFbCjIRzMugCdzDIdZ9UNmi/OhD4/8mLGO0dgXfT4sMWjZwu3qjy45sFfk2zOAgHbA==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-4.13.0.tgz" + "version" "4.13.0" + dependencies: + "@react-native-community/cli-tools" "4.13.0" + "chalk" "3.0.0" + "execa" "1.0.0" + "fs-extra" "8.1.0" + "glob" "7.1.6" + "jetifier" "1.6.6" + "lodash" "4.17.20" + "logkitty" "0.7.1" + "slash" "3.0.0" + "xmldoc" "1.1.2" + +"@react-native-community/cli-platform-ios@4.13.0": + "integrity" "sha512-6THlTu8zp62efkzimfGr3VIuQJ2514o+vScZERJCV1xgEi8XtV7mb/ZKt9o6Y9WGxKKkc0E0b/aVAtgy+L27CA==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-4.13.0.tgz" + "version" "4.13.0" + dependencies: + "@react-native-community/cli-tools" "4.13.0" + "chalk" "3.0.0" + "glob" "7.1.6" + "js-yaml" "3.14.1" + "lodash" "4.17.20" + "plist" "3.0.1" + "xcode" "2.1.0" + +"@react-native-community/cli-server-api@4.13.1": + "integrity" "sha512-vQzsFKD9CjHthA2ehTQX8c7uIzlI9A7ejaIow1I9RlEnLraPH2QqVDmzIdbdh5Od47UPbRzamCgAP8Bnqv3qwQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-4.13.1.tgz" + "version" "4.13.1" + dependencies: + "@react-native-community/cli-debugger-ui" "4.13.1" + "@react-native-community/cli-tools" "4.13.0" + "compression" "1.7.4" + "connect" "3.7.0" + "errorhandler" "1.5.1" + "nocache" "2.1.0" + "pretty-format" "25.5.0" + "serve-static" "1.14.1" + "ws" "1.1.5" + +"@react-native-community/cli-tools@4.13.0": + "integrity" "sha512-s4f489h5+EJksn4CfheLgv5PGOM0CDmK1UEBLw2t/ncWs3cW2VI7vXzndcd/WJHTv3GntJhXDcJMuL+Z2IAOgg==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-4.13.0.tgz" + "version" "4.13.0" + dependencies: + "chalk" "3.0.0" + "lodash" "4.17.20" + "mime" "2.5.0" + "node-fetch" "2.6.1" + "open" "6.4.0" + "shell-quote" "1.6.1" + +"@react-native-community/cli-types@4.10.1": + "integrity" "sha512-ael2f1onoPF3vF7YqHGWy7NnafzGu+yp88BbFbP0ydoCP2xGSUzmZVw0zakPTC040Id+JQ9WeFczujMkDy6jYQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-4.10.1.tgz" + "version" "4.10.1" + +"@react-native-community/cli@4.13.1": + "integrity" "sha512-+/TeRVToADpQPSprsPkwi9KY8x64YcuJpjzMBVISwWP+aWzsIDuWJmyMXTADlCg2EBMJqJR7bn1W/IkfzVRCWA==" + "resolved" "https://registry.npmjs.org/@react-native-community/cli/-/cli-4.13.1.tgz" + "version" "4.13.1" + dependencies: + "@hapi/joi" "15.1.1" + "@react-native-community/cli-debugger-ui" "4.13.1" + "@react-native-community/cli-hermes" "4.13.0" + "@react-native-community/cli-server-api" "4.13.1" + "@react-native-community/cli-tools" "4.13.0" + "@react-native-community/cli-types" "4.10.1" + "chalk" "3.0.0" + "command-exists" "1.2.9" + "commander" "2.20.3" + "cosmiconfig" "5.2.1" + "deepmerge" "3.3.0" + "envinfo" "7.7.3" + "execa" "1.0.0" + "find-up" "4.1.0" + "fs-extra" "8.1.0" + "glob" "7.1.6" + "graceful-fs" "4.2.4" + "inquirer" "3.3.0" + "leven" "3.1.0" + "lodash" "4.17.20" + "metro" "0.58.0" + "metro-config" "0.58.0" + "metro-core" "0.58.0" + "metro-react-native-babel-transformer" "0.58.0" + "metro-resolver" "0.58.0" + "minimist" "1.2.5" + "mkdirp" "0.5.5" + "node-stream-zip" "1.12.0" + "ora" "3.4.0" + "pretty-format" "25.5.0" + "semver" "6.3.0" + "serve-static" "1.14.1" + "strip-ansi" "5.2.0" + "sudo-prompt" "9.2.1" + "wcwidth" "1.0.1" + +"@react-native-community/datetimepicker@^3.5.2", "@react-native-community/datetimepicker@>=3.0.0": + "integrity" "sha512-TWRuAtr/DnrEcRewqvXMLea2oB+YF+SbtuYLHguALLxNJQLl/RFB7aTNZeF+OoH75zKFqtXECXV1/uxQUpA+sg==" + "resolved" "https://registry.npmjs.org/@react-native-community/datetimepicker/-/datetimepicker-3.5.2.tgz" + "version" "3.5.2" + dependencies: + "invariant" "^2.2.4" + +"@react-native-community/eslint-config@^1.1.0": + "integrity" "sha512-hwb1hC28BhkwLwnO6vDISV6XZbipw2RIEhBVBN+pE7AUG9HjFXxoksiiOSoYgox9C8g86VJwHnKpak/3NnVBkQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/eslint-config/-/eslint-config-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "@react-native-community/eslint-plugin" "1.1.0" + "@typescript-eslint/eslint-plugin" "2.34.0" + "@typescript-eslint/parser" "2.34.0" + "babel-eslint" "10.1.0" + "eslint-config-prettier" "6.15.0" + "eslint-plugin-eslint-comments" "3.2.0" + "eslint-plugin-flowtype" "2.50.3" + "eslint-plugin-jest" "22.4.1" + "eslint-plugin-prettier" "3.1.2" + "eslint-plugin-react" "7.19.0" + "eslint-plugin-react-hooks" "3.0.0" + "eslint-plugin-react-native" "3.8.1" + "prettier" "2.2.1" + +"@react-native-community/eslint-plugin@1.1.0": + "integrity" "sha512-W/J0fNYVO01tioHjvYWQ9m6RgndVtbElzYozBq1ZPrHO/iCzlqoySHl4gO/fpCl9QEFjvJfjPgtPMTMlsoq5DQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/eslint-plugin/-/eslint-plugin-1.1.0.tgz" + "version" "1.1.0" + +"@react-native-community/masked-view@^0.1.10": + "integrity" "sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ==" + "resolved" "https://registry.npmjs.org/@react-native-community/masked-view/-/masked-view-0.1.10.tgz" + "version" "0.1.10" + +"@react-native-firebase/app@^11.2.0": + "integrity" "sha512-TLrttjy6h5rhmRqnKFe67GNbYeB1VZphH5Gm+pYJzfIbMsh/m6q2Au1D4jmLnfjpqXAaTtAhetnODyT1TH/LzQ==" + "resolved" "https://registry.npmjs.org/@react-native-firebase/app/-/app-11.2.0.tgz" + "version" "11.2.0" + dependencies: + "opencollective-postinstall" "2.0.3" + "superstruct" "0.6.2" + +"@react-native-firebase/messaging@^11.2.0": + "integrity" "sha512-TSfEpTqZGf/eQ/5qTVyhX74YvOkk4Kx7Dq/y6XBz8rYFEyxayjpJ/RV9SXTUbDYunOyhC7EUJxcWvG6C5AjoTw==" + "resolved" "https://registry.npmjs.org/@react-native-firebase/messaging/-/messaging-11.2.0.tgz" + "version" "11.2.0" + +"@react-native-google-signin/google-signin@^8.1.0": + "integrity" "sha512-63o8iJrihAuGDxvm8k8Ghy2rHha+OsQ8XrcbsOEhV/R9HTZL2qRyNwvm/NaHCCpuf/bywA8WFGerw+d8REDBKQ==" + "resolved" "https://registry.npmjs.org/@react-native-google-signin/google-signin/-/google-signin-8.1.0.tgz" + "version" "8.1.0" + +"@react-navigation/bottom-tabs@^5.11.2": + "integrity" "sha512-ez79zP21wtuHcnIm96fld4MXc9oOSpJCG78MTo/Jw+yZxZsQdF4N55ABiLfaQ/48QyZr8cfi0GkP/AYheZwm6A==" + "resolved" "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-5.11.3.tgz" + "version" "5.11.3" + dependencies: + "color" "3.1.3" + "react-native-iphone-x-helper" "1.3.1" + +"@react-navigation/core@5.15.0": + "integrity" "sha512-JesS2jRn6CC7ITzGaulZBVq7Z1EhFzT/9vXSFodJ1wDtprDJHLSjvPLuPcSw1dx9/1DRXj4iCeCBTIlDpNWJeA==" + "resolved" "https://registry.npmjs.org/@react-navigation/core/-/core-5.15.0.tgz" + "version" "5.15.0" + dependencies: + "@react-navigation/routers" "5.7.0" + "escape-string-regexp" "4.0.0" + "nanoid" "3.1.20" + "query-string" "6.13.8" + "react-is" "16.13.1" + +"@react-navigation/material-bottom-tabs@^5.3.10": + "integrity" "sha512-a/OcYDPFkM4WUpeSGXeLkN9kiCGAE7b6dX7aiiRZEguxrOiUAfo3pMnuFkaY3ZMFANsBNkR3O1V5rkVYj/yWCw==" + "resolved" "https://registry.npmjs.org/@react-navigation/material-bottom-tabs/-/material-bottom-tabs-5.3.11.tgz" + "version" "5.3.11" + +"@react-navigation/native@^5.8.10": + "integrity" "sha512-IphWd6uITuEC4zEfWESPiM6EPUnpnYC4lsGK3m75mlxca/MWok4bUCX73OL/iBlCi9skFAGyP9XccFyrFEIHIg==" + "resolved" "https://registry.npmjs.org/@react-navigation/native/-/native-5.9.0.tgz" + "version" "5.9.0" + dependencies: + "@react-navigation/core" "5.15.0" + "escape-string-regexp" "4.0.0" + "nanoid" "3.1.20" + +"@react-navigation/routers@5.7.0": + "integrity" "sha512-Du1OsLtEF2EEWo7GeFNoBRBi4aX4eHdFQXztNxeL/N3Gl3f8wc6Ys0XTWHgWlWQIspqOfup5YF3WQcLArunjvg==" + "resolved" "https://registry.npmjs.org/@react-navigation/routers/-/routers-5.7.0.tgz" + "version" "5.7.0" + dependencies: + "nanoid" "3.1.20" + +"@react-navigation/stack@^5.12.8": + "integrity" "sha512-UorckfT7p7D5BLMJgpi8lY6duSV6WSG/NwidxWQK06u5bO0Uwxgx9sINjJZbS5+ijVJy8bB8SbG/I+H2bgT4eA==" + "resolved" "https://registry.npmjs.org/@react-navigation/stack/-/stack-5.13.0.tgz" + "version" "5.13.0" + dependencies: + "color" "3.1.3" + "react-native-iphone-x-helper" "1.3.1" + +"@sinonjs/commons@1.8.2": + "integrity" "sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw==" + "resolved" "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.2.tgz" + "version" "1.8.2" + dependencies: + "type-detect" "4.0.8" + +"@tootallnate/once@1.1.2": + "integrity" "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + "resolved" "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz" + "version" "1.1.2" + +"@types/babel__core@7.1.12": + "integrity" "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==" + "resolved" "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz" + "version" "7.1.12" + dependencies: + "@babel/parser" "7.12.11" + "@babel/types" "7.12.12" + "@types/babel__generator" "7.6.2" + "@types/babel__template" "7.4.0" + "@types/babel__traverse" "7.11.0" + +"@types/babel__generator@7.6.2": + "integrity" "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==" + "resolved" "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz" + "version" "7.6.2" + dependencies: + "@babel/types" "7.12.12" + +"@types/babel__template@7.4.0": + "integrity" "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==" + "resolved" "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz" + "version" "7.4.0" + dependencies: + "@babel/parser" "7.12.11" + "@babel/types" "7.12.12" + +"@types/babel__traverse@7.11.0": + "integrity" "sha512-kSjgDMZONiIfSH1Nxcr5JIRMwUetDki63FSQfpTCz8ogF3Ulqm8+mr5f78dUYs6vMiB6gBusQqfQmBvHZj/lwg==" + "resolved" "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.0.tgz" + "version" "7.11.0" + dependencies: + "@babel/types" "7.12.12" + +"@types/eslint-visitor-keys@1.0.0": + "integrity" "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==" + "resolved" "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz" + "version" "1.0.0" + +"@types/graceful-fs@4.1.4": + "integrity" "sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==" + "resolved" "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.4.tgz" + "version" "4.1.4" + dependencies: + "@types/node" "14.14.21" + +"@types/hammerjs@2.0.36": + "integrity" "sha512-7TUK/k2/QGpEAv/BCwSHlYu3NXZhQ9ZwBYpzr9tjlPIL2C5BeGhH3DmVavRx3ZNyELX5TLC91JTz/cen6AAtIQ==" + "resolved" "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.36.tgz" + "version" "2.0.36" + +"@types/istanbul-lib-coverage@2.0.3": + "integrity" "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + "resolved" "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" + "version" "2.0.3" + +"@types/istanbul-lib-report@3.0.0": + "integrity" "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==" + "resolved" "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "@types/istanbul-lib-coverage" "2.0.3" + +"@types/istanbul-reports@1.1.2": + "integrity" "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==" + "resolved" "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "@types/istanbul-lib-coverage" "2.0.3" + "@types/istanbul-lib-report" "3.0.0" + +"@types/json-schema@7.0.6": + "integrity" "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==" + "resolved" "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz" + "version" "7.0.6" + +"@types/node@14.14.21": + "integrity" "sha512-cHYfKsnwllYhjOzuC5q1VpguABBeecUp24yFluHpn/BQaVxB1CuQ1FSRZCzrPxrkIfWISXV2LbeoBthLWg0+0A==" + "resolved" "https://registry.npmjs.org/@types/node/-/node-14.14.21.tgz" + "version" "14.14.21" + +"@types/normalize-package-data@2.4.0": + "integrity" "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" + "resolved" "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz" + "version" "2.4.0" + +"@types/prettier@1.19.1": + "integrity" "sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==" + "resolved" "https://registry.npmjs.org/@types/prettier/-/prettier-1.19.1.tgz" + "version" "1.19.1" + +"@types/prop-types@15.7.3": + "integrity" "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" + "resolved" "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz" + "version" "15.7.3" + +"@types/react-native-vector-icons@^6.4.6", "@types/react-native-vector-icons@6.4.6": + "integrity" "sha512-lAyxNfMd5L1xZvXWsGcJmNegDf61TAp40uL6ashNNWj9W3IrDJO59L9+9inh0Y2MsEZpLTdxzVU8Unb4/0FQng==" + "resolved" "https://registry.npmjs.org/@types/react-native-vector-icons/-/react-native-vector-icons-6.4.6.tgz" + "version" "6.4.6" + dependencies: + "@types/react" "17.0.0" + "@types/react-native" "0.63.46" + +"@types/react-native@0.63.46": + "integrity" "sha512-SnBnWRErpISIaWk4K8kAfIKqSPdZ8fdH6HIw7kVdz6jMl/5FAf6iXeIwRfVZg1bCMh+ymNPCpSENNNEVprxj/w==" + "resolved" "https://registry.npmjs.org/@types/react-native/-/react-native-0.63.46.tgz" + "version" "0.63.46" + dependencies: + "@types/react" "17.0.0" + +"@types/react@17.0.0": + "integrity" "sha512-aj/L7RIMsRlWML3YB6KZiXB3fV2t41+5RBGYF8z+tAKU43Px8C3cYUZsDvf1/+Bm4FK21QWBrDutu8ZJ/70qOw==" + "resolved" "https://registry.npmjs.org/@types/react/-/react-17.0.0.tgz" + "version" "17.0.0" + dependencies: + "@types/prop-types" "15.7.3" + "csstype" "3.0.6" + +"@types/stack-utils@1.0.1": + "integrity" "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==" + "resolved" "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz" + "version" "1.0.1" + +"@types/yargs-parser@20.2.0": + "integrity" "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==" + "resolved" "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz" + "version" "20.2.0" + +"@types/yargs@13.0.11": + "integrity" "sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==" + "resolved" "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz" + "version" "13.0.11" + dependencies: + "@types/yargs-parser" "20.2.0" + +"@types/yargs@15.0.12": + "integrity" "sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw==" + "resolved" "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.12.tgz" + "version" "15.0.12" + dependencies: + "@types/yargs-parser" "20.2.0" + +"@typescript-eslint/eslint-plugin@2.34.0": + "integrity" "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz" + "version" "2.34.0" + dependencies: + "@typescript-eslint/experimental-utils" "2.34.0" + "functional-red-black-tree" "1.0.1" + "regexpp" "3.1.0" + "tsutils" "3.19.1" + +"@typescript-eslint/experimental-utils@2.34.0": + "integrity" "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz" + "version" "2.34.0" + dependencies: + "@types/json-schema" "7.0.6" + "@typescript-eslint/typescript-estree" "2.34.0" + "eslint-scope" "5.1.1" + "eslint-utils" "2.1.0" + +"@typescript-eslint/parser@2.34.0": + "integrity" "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz" + "version" "2.34.0" + dependencies: + "@types/eslint-visitor-keys" "1.0.0" + "@typescript-eslint/experimental-utils" "2.34.0" + "@typescript-eslint/typescript-estree" "2.34.0" + "eslint-visitor-keys" "1.3.0" + +"@typescript-eslint/typescript-estree@2.34.0": + "integrity" "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz" + "version" "2.34.0" + dependencies: + "debug" "4.3.1" + "eslint-visitor-keys" "1.3.0" + "glob" "7.1.6" + "is-glob" "4.0.1" + "lodash" "4.17.20" + "semver" "7.3.4" + "tsutils" "3.19.1" + +"abab@2.0.5": + "integrity" "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==" + "resolved" "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz" + "version" "2.0.5" + +"abort-controller@3.0.0": + "integrity" "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==" + "resolved" "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "event-target-shim" "5.0.1" + +"absolute-path@0.0.0": + "integrity" "sha1-p4di+9rftSl76ZsV01p4Wy8JW/c=" + "resolved" "https://registry.npmjs.org/absolute-path/-/absolute-path-0.0.0.tgz" + "version" "0.0.0" + +"accepts@1.3.7": + "integrity" "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==" + "resolved" "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz" + "version" "1.3.7" + dependencies: + "mime-types" "2.1.28" + "negotiator" "0.6.2" + +"acorn-globals@4.3.4": + "integrity" "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==" + "resolved" "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz" + "version" "4.3.4" + dependencies: + "acorn" "6.4.2" + "acorn-walk" "6.2.0" + +"acorn-jsx@5.3.1": + "integrity" "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==" + "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz" + "version" "5.3.1" + +"acorn-walk@6.2.0": + "integrity" "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==" + "resolved" "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz" + "version" "6.2.0" + +"acorn@6.4.2": + "integrity" "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==" + "resolved" "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz" + "version" "6.4.2" + +"acorn@7.4.1": + "integrity" "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "resolved" "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" + "version" "7.4.1" + +"agent-base@6.0.2": + "integrity" "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==" + "resolved" "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz" + "version" "6.0.2" + dependencies: + "debug" "4.3.1" + +"ajv@6.12.6": + "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + "version" "6.12.6" + dependencies: + "fast-deep-equal" "3.1.3" + "fast-json-stable-stringify" "2.1.0" + "json-schema-traverse" "0.4.1" + "uri-js" "4.4.1" + +"anser@1.4.10": + "integrity" "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==" + "resolved" "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz" + "version" "1.4.10" + +"ansi-colors@1.1.0": + "integrity" "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==" + "resolved" "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "ansi-wrap" "0.1.0" + +"ansi-cyan@0.1.1": + "integrity" "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=" + "resolved" "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz" + "version" "0.1.1" + dependencies: + "ansi-wrap" "0.1.0" + +"ansi-escapes@3.2.0": + "integrity" "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==" + "resolved" "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz" + "version" "3.2.0" + +"ansi-escapes@4.3.1": + "integrity" "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==" + "resolved" "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz" + "version" "4.3.1" + dependencies: + "type-fest" "0.11.0" + +"ansi-escapes@4.3.2": + "integrity" "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==" + "resolved" "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" + "version" "4.3.2" + dependencies: + "type-fest" "0.21.3" + +"ansi-fragments@0.2.1": + "integrity" "sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==" + "resolved" "https://registry.npmjs.org/ansi-fragments/-/ansi-fragments-0.2.1.tgz" + "version" "0.2.1" + dependencies: + "colorette" "1.2.1" + "slice-ansi" "2.1.0" + "strip-ansi" "5.2.0" + +"ansi-gray@0.1.1": + "integrity" "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=" + "resolved" "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz" + "version" "0.1.1" + dependencies: + "ansi-wrap" "0.1.0" + +"ansi-red@0.1.1": + "integrity" "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=" + "resolved" "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz" + "version" "0.1.1" + dependencies: + "ansi-wrap" "0.1.0" + +"ansi-regex@2.1.1": + "integrity" "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" + "version" "2.1.1" + +"ansi-regex@3.0.0": + "integrity" "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + "version" "3.0.0" + +"ansi-regex@4.1.0": + "integrity" "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz" + "version" "4.1.0" + +"ansi-regex@5.0.0": + "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" + "version" "5.0.0" + +"ansi-styles@2.2.1": + "integrity" "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" + "version" "2.2.1" + +"ansi-styles@3.2.1": + "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "color-convert" "1.9.3" + +"ansi-styles@4.3.0": + "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "color-convert" "2.0.1" + +"ansi-wrap@0.1.0": + "integrity" "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" + "resolved" "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz" + "version" "0.1.0" + +"anymatch@2.0.0": + "integrity" "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==" + "resolved" "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "micromatch" "3.1.10" + "normalize-path" "2.1.1" + +"anymatch@3.1.1": + "integrity" "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==" + "resolved" "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz" + "version" "3.1.1" + dependencies: + "normalize-path" "3.0.0" + "picomatch" "2.2.2" + +"appcenter-file-upload-client@0.0.24": + "integrity" "sha512-DqeXWXs68YYXdq7ieBfJ/lOmGvbFuzLrpe1SW5an2TDwkr1QfFfEpz5SHgwJirWfq/dXtGFbk2oTcsLyLFssQQ==" + "resolved" "https://registry.npmjs.org/appcenter-file-upload-client/-/appcenter-file-upload-client-0.0.24.tgz" + "version" "0.0.24" + dependencies: + "detect-node" "2.0.5" + "superagent" "5.1.0" + "url-parse" "1.5.1" + +"argparse@1.0.10": + "integrity" "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==" + "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + "version" "1.0.10" + dependencies: + "sprintf-js" "1.0.3" + +"arr-diff@1.1.0": + "integrity" "sha1-aHwydYFjWI/vfeezb6vklesaOZo=" + "resolved" "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "arr-flatten" "1.1.0" + "array-slice" "0.2.3" + +"arr-diff@4.0.0": + "integrity" "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "resolved" "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" + "version" "4.0.0" + +"arr-flatten@1.1.0": + "integrity" "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + "resolved" "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" + "version" "1.1.0" + +"arr-union@2.1.0": + "integrity" "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=" + "resolved" "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz" + "version" "2.1.0" + +"arr-union@3.1.0": + "integrity" "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + "resolved" "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" + "version" "3.1.0" + +"array-equal@1.0.0": + "integrity" "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" + "resolved" "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz" + "version" "1.0.0" + +"array-filter@0.0.1": + "integrity" "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" + "resolved" "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz" + "version" "0.0.1" + +"array-includes@3.1.2": + "integrity" "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==" + "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz" + "version" "3.1.2" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "es-abstract" "1.18.0-next.2" + "get-intrinsic" "1.0.2" + "is-string" "1.0.5" + +"array-map@0.0.0": + "integrity" "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" + "resolved" "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz" + "version" "0.0.0" + +"array-reduce@0.0.0": + "integrity" "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" + "resolved" "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz" + "version" "0.0.0" + +"array-slice@0.2.3": + "integrity" "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=" + "resolved" "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz" + "version" "0.2.3" + +"array-unique@0.3.2": + "integrity" "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "resolved" "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" + "version" "0.3.2" + +"art@0.10.3": + "integrity" "sha512-HXwbdofRTiJT6qZX/FnchtldzJjS3vkLJxQilc3Xj+ma2MXjY4UAyQ0ls1XZYVnDvVIBiFZbC6QsvtW86TD6tQ==" + "resolved" "https://registry.npmjs.org/art/-/art-0.10.3.tgz" + "version" "0.10.3" + +"asap@2.0.6": + "integrity" "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "resolved" "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" + "version" "2.0.6" + +"asn1@0.2.4": + "integrity" "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==" + "resolved" "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz" + "version" "0.2.4" + dependencies: + "safer-buffer" "2.1.2" + +"assert-plus@1.0.0": + "integrity" "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "resolved" "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + "version" "1.0.0" + +"assign-symbols@1.0.0": + "integrity" "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + "resolved" "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" + "version" "1.0.0" + +"ast-types@0.13.4": + "integrity" "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==" + "resolved" "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz" + "version" "0.13.4" + dependencies: + "tslib" "2.2.0" + +"astral-regex@1.0.0": + "integrity" "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==" + "resolved" "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz" + "version" "1.0.0" + +"async@2.6.3": + "integrity" "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==" + "resolved" "https://registry.npmjs.org/async/-/async-2.6.3.tgz" + "version" "2.6.3" + dependencies: + "lodash" "4.17.20" + +"asynckit@0.4.0": + "integrity" "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" + "version" "0.4.0" + +"atob@2.1.2": + "integrity" "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + "resolved" "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" + "version" "2.1.2" + +"aws-sign2@0.7.0": + "integrity" "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + "resolved" "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz" + "version" "0.7.0" + +"aws4@1.11.0": + "integrity" "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + "resolved" "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz" + "version" "1.11.0" + +"axios@^0.21.0": + "integrity" "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==" + "resolved" "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz" + "version" "0.21.1" + dependencies: + "follow-redirects" "1.13.1" + +"babel-code-frame@^6.26.0", "babel-code-frame@6.26.0": + "integrity" "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=" + "resolved" "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "chalk" "1.1.3" + "esutils" "2.0.3" + "js-tokens" "3.0.2" + +"babel-core@^6.25.0", "babel-core@^6.26.0": + "integrity" "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==" + "resolved" "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz" + "version" "6.26.3" + dependencies: + "babel-code-frame" "^6.26.0" + "babel-generator" "^6.26.0" + "babel-helpers" "^6.24.1" + "babel-messages" "^6.23.0" + "babel-register" "^6.26.0" + "babel-runtime" "^6.26.0" + "babel-template" "^6.26.0" + "babel-traverse" "^6.26.0" + "babel-types" "^6.26.0" + "babylon" "^6.18.0" + "convert-source-map" "^1.5.1" + "debug" "^2.6.9" + "json5" "^0.5.1" + "lodash" "^4.17.4" + "minimatch" "^3.0.4" + "path-is-absolute" "^1.0.1" + "private" "^0.1.8" + "slash" "^1.0.0" + "source-map" "^0.5.7" + +"babel-eslint@10.1.0": + "integrity" "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==" + "resolved" "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz" + "version" "10.1.0" + dependencies: + "@babel/code-frame" "7.12.11" + "@babel/parser" "7.12.11" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "eslint-visitor-keys" "1.3.0" + "resolve" "1.19.0" + +"babel-generator@^6.26.0": + "integrity" "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==" + "resolved" "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz" + "version" "6.26.1" + dependencies: + "babel-messages" "^6.23.0" + "babel-runtime" "^6.26.0" + "babel-types" "^6.26.0" + "detect-indent" "^4.0.0" + "jsesc" "^1.3.0" + "lodash" "^4.17.4" + "source-map" "^0.5.7" + "trim-right" "^1.0.1" + +"babel-helpers@^6.24.1": + "integrity" "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=" + "resolved" "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz" + "version" "6.24.1" + dependencies: + "babel-runtime" "^6.22.0" + "babel-template" "^6.24.1" + +"babel-jest@^25.1.0", "babel-jest@25.5.1": + "integrity" "sha512-9dA9+GmMjIzgPnYtkhBg73gOo/RHqPmLruP3BaGL4KEX3Dwz6pI8auSN8G8+iuEG90+GSswyKvslN+JYSaacaQ==" + "resolved" "https://registry.npmjs.org/babel-jest/-/babel-jest-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@jest/transform" "25.5.1" + "@jest/types" "25.5.0" + "@types/babel__core" "7.1.12" + "babel-plugin-istanbul" "6.0.0" + "babel-preset-jest" "25.5.0" + "chalk" "3.0.0" + "graceful-fs" "4.2.4" + "slash" "3.0.0" + +"babel-messages@^6.23.0", "babel-messages@6.23.0": + "integrity" "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=" + "resolved" "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz" + "version" "6.23.0" + dependencies: + "babel-runtime" "6.26.0" + +"babel-plugin-dynamic-import-node@2.3.3": + "integrity" "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==" + "resolved" "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz" + "version" "2.3.3" + dependencies: + "object.assign" "4.1.2" + +"babel-plugin-flow-react-proptypes@^9.1.1": + "integrity" "sha512-gmClrDpTB1H27mh+6/8iliV5BzGic5F9DO7INAd/30sSkg4XZd7LTbv4z06usuUHS8SzXibwotk8ct51IZ5OaQ==" + "resolved" "https://registry.npmjs.org/babel-plugin-flow-react-proptypes/-/babel-plugin-flow-react-proptypes-9.2.0.tgz" + "version" "9.2.0" + dependencies: + "babel-core" "^6.25.0" + "babel-template" "^6.25.0" + "babel-traverse" "^6.25.0" + "babel-types" "^6.25.0" + +"babel-plugin-istanbul@6.0.0": + "integrity" "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==" + "resolved" "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@istanbuljs/load-nyc-config" "1.1.0" + "@istanbuljs/schema" "0.1.2" + "istanbul-lib-instrument" "4.0.3" + "test-exclude" "6.0.0" + +"babel-plugin-jest-hoist@25.5.0": + "integrity" "sha512-u+/W+WAjMlvoocYGTwthAiQSxDcJAyHpQ6oWlHdFZaaN+Rlk8Q7iiwDPg2lN/FyJtAYnKjFxbn7xus4HCFkg5g==" + "resolved" "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@babel/template" "7.12.7" + "@babel/types" "7.12.12" + "@types/babel__traverse" "7.11.0" + +"babel-plugin-syntax-decorators@6.13.0": + "integrity" "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" + "resolved" "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz" + "version" "6.13.0" + +"babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0": + "integrity" "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==" + "resolved" "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz" + "version" "7.0.0-beta.0" + +"babel-plugin-transform-decorators-legacy@^1.3.5": + "integrity" "sha512-jYHwjzRXRelYQ1uGm353zNzf3QmtdCfvJbuYTZ4gKveK7M9H1fs3a5AKdY1JUDl0z97E30ukORW1dzhWvsabtA==" + "resolved" "https://registry.npmjs.org/babel-plugin-transform-decorators-legacy/-/babel-plugin-transform-decorators-legacy-1.3.5.tgz" + "version" "1.3.5" + dependencies: + "babel-plugin-syntax-decorators" "6.13.0" + "babel-runtime" "6.26.0" + "babel-template" "6.26.0" + +"babel-preset-current-node-syntax@0.1.4": + "integrity" "sha512-5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==" + "resolved" "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.4.tgz" + "version" "0.1.4" + dependencies: + "@babel/plugin-syntax-async-generators" "7.8.4" + "@babel/plugin-syntax-bigint" "7.8.3" + "@babel/plugin-syntax-class-properties" "7.12.1" + "@babel/plugin-syntax-import-meta" "7.10.4" + "@babel/plugin-syntax-json-strings" "7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "7.8.3" + "@babel/plugin-syntax-numeric-separator" "7.10.4" + "@babel/plugin-syntax-object-rest-spread" "7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "7.8.3" + "@babel/plugin-syntax-optional-chaining" "7.8.3" + +"babel-preset-fbjs@3.3.0": + "integrity" "sha512-7QTLTCd2gwB2qGoi5epSULMHugSVgpcVt5YAeiFO9ABLrutDQzKfGwzxgZHLpugq8qMdg/DhRZDZ5CLKxBkEbw==" + "resolved" "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "@babel/plugin-proposal-class-properties" "7.12.1" + "@babel/plugin-proposal-object-rest-spread" "7.12.1" + "@babel/plugin-syntax-class-properties" "7.12.1" + "@babel/plugin-syntax-flow" "7.12.1" + "@babel/plugin-syntax-jsx" "7.12.1" + "@babel/plugin-syntax-object-rest-spread" "7.8.3" + "@babel/plugin-transform-arrow-functions" "7.12.1" + "@babel/plugin-transform-block-scoped-functions" "7.12.1" + "@babel/plugin-transform-block-scoping" "7.12.12" + "@babel/plugin-transform-classes" "7.12.1" + "@babel/plugin-transform-computed-properties" "7.12.1" + "@babel/plugin-transform-destructuring" "7.12.1" + "@babel/plugin-transform-flow-strip-types" "7.12.10" + "@babel/plugin-transform-for-of" "7.12.1" + "@babel/plugin-transform-function-name" "7.12.1" + "@babel/plugin-transform-literals" "7.12.1" + "@babel/plugin-transform-member-expression-literals" "7.12.1" + "@babel/plugin-transform-modules-commonjs" "7.12.1" + "@babel/plugin-transform-object-super" "7.12.1" + "@babel/plugin-transform-parameters" "7.12.1" + "@babel/plugin-transform-property-literals" "7.12.1" + "@babel/plugin-transform-react-display-name" "7.12.1" + "@babel/plugin-transform-react-jsx" "7.12.12" + "@babel/plugin-transform-shorthand-properties" "7.12.1" + "@babel/plugin-transform-spread" "7.12.1" + "@babel/plugin-transform-template-literals" "7.12.1" + "babel-plugin-syntax-trailing-function-commas" "7.0.0-beta.0" + +"babel-preset-jest@25.5.0": + "integrity" "sha512-8ZczygctQkBU+63DtSOKGh7tFL0CeCuz+1ieud9lJ1WPQ9O6A1a/r+LGn6Y705PA6whHQ3T1XuB/PmpfNYf8Fw==" + "resolved" "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "babel-plugin-jest-hoist" "25.5.0" + "babel-preset-current-node-syntax" "0.1.4" + +"babel-register@^6.26.0": + "integrity" "sha1-btAhFz4vy0htestFxgCahW9kcHE=" + "resolved" "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "babel-core" "^6.26.0" + "babel-runtime" "^6.26.0" + "core-js" "^2.5.0" + "home-or-tmp" "^2.0.0" + "lodash" "^4.17.4" + "mkdirp" "^0.5.1" + "source-map-support" "^0.4.15" + +"babel-runtime@^6.22.0", "babel-runtime@^6.26.0", "babel-runtime@6.26.0": + "integrity" "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=" + "resolved" "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "core-js" "2.6.12" + "regenerator-runtime" "0.11.1" + +"babel-template@^6.24.1", "babel-template@^6.25.0", "babel-template@^6.26.0", "babel-template@6.26.0": + "integrity" "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=" + "resolved" "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "babel-runtime" "6.26.0" + "babel-traverse" "6.26.0" + "babel-types" "6.26.0" + "babylon" "6.18.0" + "lodash" "4.17.20" + +"babel-traverse@^6.25.0", "babel-traverse@^6.26.0", "babel-traverse@6.26.0": + "integrity" "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=" + "resolved" "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "babel-code-frame" "6.26.0" + "babel-messages" "6.23.0" + "babel-runtime" "6.26.0" + "babel-types" "6.26.0" + "babylon" "6.18.0" + "debug" "2.6.9" + "globals" "9.18.0" + "invariant" "2.2.4" + "lodash" "4.17.20" + +"babel-types@^6.25.0", "babel-types@^6.26.0", "babel-types@6.26.0": + "integrity" "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=" + "resolved" "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz" + "version" "6.26.0" + dependencies: + "babel-runtime" "6.26.0" + "esutils" "2.0.3" + "lodash" "4.17.20" + "to-fast-properties" "1.0.3" + +"babylon@^6.18.0", "babylon@6.18.0": + "integrity" "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + "resolved" "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz" + "version" "6.18.0" + +"balanced-match@1.0.0": + "integrity" "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz" + "version" "1.0.0" + +"base@0.11.2": + "integrity" "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==" + "resolved" "https://registry.npmjs.org/base/-/base-0.11.2.tgz" + "version" "0.11.2" + dependencies: + "cache-base" "1.0.1" + "class-utils" "0.3.6" + "component-emitter" "1.3.0" + "define-property" "1.0.0" + "isobject" "3.0.1" + "mixin-deep" "1.3.2" + "pascalcase" "0.1.1" + +"base64-js@1.5.1": + "integrity" "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + "resolved" "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" + "version" "1.5.1" + +"bcrypt-pbkdf@1.0.2": + "integrity" "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=" + "resolved" "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "tweetnacl" "0.14.5" + +"big-integer@1.6.48": + "integrity" "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==" + "resolved" "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz" + "version" "1.6.48" + +"bindings@1.5.0": + "integrity" "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==" + "resolved" "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz" + "version" "1.5.0" + dependencies: + "file-uri-to-path" "1.0.0" + +"boolbase@^1.0.0", "boolbase@~1.0.0": + "integrity" "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + "resolved" "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" + "version" "1.0.0" + +"bplist-creator@0.0.8": + "integrity" "sha512-Za9JKzD6fjLC16oX2wsXfc+qBEhJBJB1YPInoAQpMLhDuj5aVOv1baGeIQSq1Fr3OCqzvsoQcSBSwGId/Ja2PA==" + "resolved" "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.8.tgz" + "version" "0.0.8" + dependencies: + "stream-buffers" "2.2.0" + +"bplist-parser@0.2.0": + "integrity" "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==" + "resolved" "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz" + "version" "0.2.0" + dependencies: + "big-integer" "1.6.48" + +"brace-expansion@1.1.11": + "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" + "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + "version" "1.1.11" + dependencies: + "balanced-match" "1.0.0" + "concat-map" "0.0.1" + +"braces@2.3.2": + "integrity" "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==" + "resolved" "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" + "version" "2.3.2" + dependencies: + "arr-flatten" "1.1.0" + "array-unique" "0.3.2" + "extend-shallow" "2.0.1" + "fill-range" "4.0.0" + "isobject" "3.0.1" + "repeat-element" "1.1.3" + "snapdragon" "0.8.2" + "snapdragon-node" "2.1.1" + "split-string" "3.1.0" + "to-regex" "3.0.2" + +"braces@3.0.2": + "integrity" "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==" + "resolved" "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "fill-range" "7.0.1" + +"browser-process-hrtime@1.0.0": + "integrity" "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" + "resolved" "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz" + "version" "1.0.0" + +"browser-resolve@1.11.3": + "integrity" "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==" + "resolved" "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz" + "version" "1.11.3" + dependencies: + "resolve" "1.1.7" + +"bser@2.1.1": + "integrity" "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==" + "resolved" "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "node-int64" "0.4.0" + +"buffer-crc32@0.2.13": + "integrity" "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + "resolved" "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" + "version" "0.2.13" + +"buffer-from@1.1.1": + "integrity" "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "resolved" "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz" + "version" "1.1.1" + +"buffer@^6.0.3": + "integrity" "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==" + "resolved" "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" + "version" "6.0.3" + dependencies: + "base64-js" "1.5.1" + "ieee754" "1.2.1" + +"bytes@3.0.0": + "integrity" "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + "resolved" "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz" + "version" "3.0.0" + +"bytes@3.1.0": + "integrity" "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + "resolved" "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz" + "version" "3.1.0" + +"cache-base@1.0.1": + "integrity" "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==" + "resolved" "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "collection-visit" "1.0.0" + "component-emitter" "1.3.0" + "get-value" "2.0.6" + "has-value" "1.0.0" + "isobject" "3.0.1" + "set-value" "2.0.1" + "to-object-path" "0.3.0" + "union-value" "1.0.1" + "unset-value" "1.0.0" + +"call-bind@1.0.2": + "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" + "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "function-bind" "1.1.1" + "get-intrinsic" "1.0.2" + +"caller-callsite@2.0.0": + "integrity" "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=" + "resolved" "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "callsites" "2.0.0" + +"caller-path@2.0.0": + "integrity" "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=" + "resolved" "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "caller-callsite" "2.0.0" + +"callsites@2.0.0": + "integrity" "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" + "resolved" "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz" + "version" "2.0.0" + +"callsites@3.1.0": + "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + "version" "3.1.0" + +"camelcase@5.3.1": + "integrity" "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + "resolved" "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" + "version" "5.3.1" + +"capture-exit@2.0.0": + "integrity" "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==" + "resolved" "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "rsvp" "4.8.5" + +"card-validator@3.0.1": + "integrity" "sha1-3ML6vWoc0h82GyU2Qjpy3pmgiU8=" + "resolved" "https://registry.npmjs.org/card-validator/-/card-validator-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "credit-card-type" "5.0.4" + "lodash" "3.10.1" + +"caseless@0.12.0": + "integrity" "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + "resolved" "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" + "version" "0.12.0" + +"chalk@1.1.3": + "integrity" "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "ansi-styles" "2.2.1" + "escape-string-regexp" "1.0.5" + "has-ansi" "2.0.0" + "strip-ansi" "3.0.1" + "supports-color" "2.0.0" + +"chalk@2.4.2": + "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "ansi-styles" "3.2.1" + "escape-string-regexp" "1.0.5" + "supports-color" "5.5.0" + +"chalk@3.0.0": + "integrity" "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "ansi-styles" "4.3.0" + "supports-color" "7.2.0" + +"chalk@4.1.0": + "integrity" "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "ansi-styles" "4.3.0" + "supports-color" "7.2.0" + +"chalk@4.1.1": + "integrity" "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz" + "version" "4.1.1" + dependencies: + "ansi-styles" "4.3.0" + "supports-color" "7.2.0" + +"chardet@0.4.2": + "integrity" "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" + "resolved" "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz" + "version" "0.4.2" + +"chardet@0.7.0": + "integrity" "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + "resolved" "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz" + "version" "0.7.0" + +"ci-info@2.0.0": + "integrity" "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + "resolved" "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz" + "version" "2.0.0" + +"class-utils@0.3.6": + "integrity" "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==" + "resolved" "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" + "version" "0.3.6" + dependencies: + "arr-union" "3.1.0" + "define-property" "0.2.5" + "isobject" "3.0.1" + "static-extend" "0.1.2" + +"cli-cursor@2.1.0": + "integrity" "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=" + "resolved" "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "restore-cursor" "2.0.0" + +"cli-cursor@3.1.0": + "integrity" "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==" + "resolved" "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "restore-cursor" "3.1.0" + +"cli-spinners@2.5.0": + "integrity" "sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==" + "resolved" "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz" + "version" "2.5.0" + +"cli-width@2.2.1": + "integrity" "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + "resolved" "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz" + "version" "2.2.1" + +"cli-width@3.0.0": + "integrity" "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" + "resolved" "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz" + "version" "3.0.0" + +"cliui@5.0.0": + "integrity" "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "string-width" "3.1.0" + "strip-ansi" "5.2.0" + "wrap-ansi" "5.1.0" + +"cliui@6.0.0": + "integrity" "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "string-width" "4.2.0" + "strip-ansi" "6.0.0" + "wrap-ansi" "6.2.0" + +"clone-deep@2.0.2": + "integrity" "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==" + "resolved" "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "for-own" "1.0.0" + "is-plain-object" "2.0.4" + "kind-of" "6.0.3" + "shallow-clone" "1.0.0" + +"clone@1.0.4": + "integrity" "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + "resolved" "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz" + "version" "1.0.4" + +"co@4.6.0": + "integrity" "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + "resolved" "https://registry.npmjs.org/co/-/co-4.6.0.tgz" + "version" "4.6.0" + +"code-push@4.0.4": + "integrity" "sha512-CIxGvXt4o/iiYSSZT7mhkAz0EeCJms3255PIs3BMawHptnBRrXUAma4JKRwSlldmZhpO425WXHZRaHc9HorM3A==" + "resolved" "https://registry.npmjs.org/code-push/-/code-push-4.0.4.tgz" + "version" "4.0.4" + dependencies: + "appcenter-file-upload-client" "0.0.24" + "recursive-fs" "2.1.0" + "slash" "3.0.0" + "superagent" "5.3.1" + "superagent-proxy" "2.1.0" + "yazl" "2.5.1" + +"collect-v8-coverage@1.0.1": + "integrity" "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==" + "resolved" "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz" + "version" "1.0.1" + +"collection-visit@1.0.0": + "integrity" "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=" + "resolved" "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "map-visit" "1.0.0" + "object-visit" "1.0.1" + +"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" + dependencies: + "color-name" "1.1.3" + +"color-convert@2.0.1": + "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "color-name" "1.1.4" + +"color-name@1.1.3": + "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + "version" "1.1.3" + +"color-name@1.1.4": + "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + "version" "1.1.4" + +"color-string@1.5.4": + "integrity" "sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw==" + "resolved" "https://registry.npmjs.org/color-string/-/color-string-1.5.4.tgz" + "version" "1.5.4" + dependencies: + "color-name" "1.1.3" + "simple-swizzle" "0.2.2" + +"color-support@1.1.3": + "integrity" "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + "resolved" "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz" + "version" "1.1.3" + +"color@^3.1.2", "color@3.1.3": + "integrity" "sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==" + "resolved" "https://registry.npmjs.org/color/-/color-3.1.3.tgz" + "version" "3.1.3" + dependencies: + "color-convert" "1.9.3" + "color-string" "1.5.4" + +"colorette@1.2.1": + "integrity" "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" + "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz" + "version" "1.2.1" + +"combined-stream@1.0.8": + "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==" + "resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" + "version" "1.0.8" + dependencies: + "delayed-stream" "1.0.0" + +"command-exists@1.2.9": + "integrity" "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" + "resolved" "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz" + "version" "1.2.9" + +"commander@2.13.0": + "integrity" "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + "resolved" "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz" + "version" "2.13.0" + +"commander@2.20.3": + "integrity" "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "resolved" "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" + "version" "2.20.3" + +"commondir@1.0.1": + "integrity" "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + "resolved" "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz" + "version" "1.0.1" + +"component-emitter@1.3.0": + "integrity" "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + "resolved" "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" + "version" "1.3.0" + +"compressible@2.0.18": + "integrity" "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==" + "resolved" "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz" + "version" "2.0.18" + dependencies: + "mime-db" "1.45.0" + +"compression@1.7.4": + "integrity" "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==" + "resolved" "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz" + "version" "1.7.4" + dependencies: + "accepts" "1.3.7" + "bytes" "3.0.0" + "compressible" "2.0.18" + "debug" "2.6.9" + "on-headers" "1.0.2" + "safe-buffer" "5.1.2" + "vary" "1.1.2" + +"concat-map@0.0.1": + "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "version" "0.0.1" + +"concat-stream@1.6.2": + "integrity" "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==" + "resolved" "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz" + "version" "1.6.2" + dependencies: + "buffer-from" "1.1.1" + "inherits" "2.0.4" + "readable-stream" "2.3.7" + "typedarray" "0.0.6" + +"connect@3.7.0": + "integrity" "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==" + "resolved" "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz" + "version" "3.7.0" + dependencies: + "debug" "2.6.9" + "finalhandler" "1.1.2" + "parseurl" "1.3.3" + "utils-merge" "1.0.1" + +"convert-source-map@^1.5.1", "convert-source-map@1.7.0": + "integrity" "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==" + "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz" + "version" "1.7.0" + dependencies: + "safe-buffer" "5.1.2" + +"cookiejar@2.1.2": + "integrity" "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" + "resolved" "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz" + "version" "2.1.2" + +"copy-descriptor@0.1.1": + "integrity" "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + "resolved" "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" + "version" "0.1.1" + +"core-js-pure@3.8.3": + "integrity" "sha512-V5qQZVAr9K0xu7jXg1M7qTEwuxUgqr7dUOezGaNa7i+Xn9oXAU/d1fzqD9ObuwpVQOaorO5s70ckyi1woP9lVA==" + "resolved" "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.8.3.tgz" + "version" "3.8.3" + +"core-js@^2.5.0", "core-js@2.6.12": + "integrity" "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + "resolved" "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz" + "version" "2.6.12" + +"core-util-is@1.0.2": + "integrity" "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "resolved" "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" + "version" "1.0.2" + +"cosmiconfig@5.2.1": + "integrity" "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==" + "resolved" "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz" + "version" "5.2.1" + dependencies: + "import-fresh" "2.0.0" + "is-directory" "0.3.1" + "js-yaml" "3.14.1" + "parse-json" "4.0.0" + +"credit-card-type@5.0.4": + "integrity" "sha1-LdnfKAQRziu5Htlawx6BRgVxeu0=" + "resolved" "https://registry.npmjs.org/credit-card-type/-/credit-card-type-5.0.4.tgz" + "version" "5.0.4" + +"cross-fetch@3.0.6": + "integrity" "sha512-KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==" + "resolved" "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.6.tgz" + "version" "3.0.6" + dependencies: + "node-fetch" "2.6.1" + +"cross-spawn@5.1.0": + "integrity" "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz" + "version" "5.1.0" + dependencies: + "lru-cache" "4.1.5" + "shebang-command" "1.2.0" + "which" "1.3.1" + +"cross-spawn@6.0.5": + "integrity" "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz" + "version" "6.0.5" + dependencies: + "nice-try" "1.0.5" + "path-key" "2.0.1" + "semver" "5.7.1" + "shebang-command" "1.2.0" + "which" "1.3.1" + +"cross-spawn@7.0.3": + "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + "version" "7.0.3" + dependencies: + "path-key" "3.1.1" + "shebang-command" "2.0.0" + "which" "2.0.2" + +"css-select@^2.1.0": + "integrity" "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==" + "resolved" "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "boolbase" "^1.0.0" + "css-what" "^3.2.1" + "domutils" "^1.7.0" + "nth-check" "^1.0.2" + +"css-tree@^1.0.0-alpha.39": + "integrity" "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==" + "resolved" "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "mdn-data" "2.0.14" + "source-map" "^0.6.1" + +"css-what@^3.2.1": + "integrity" "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==" + "resolved" "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz" + "version" "3.4.2" + +"cssom@0.3.8": + "integrity" "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + "resolved" "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz" + "version" "0.3.8" + +"cssom@0.4.4": + "integrity" "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==" + "resolved" "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz" + "version" "0.4.4" + +"cssstyle@2.3.0": + "integrity" "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==" + "resolved" "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "cssom" "0.3.8" + +"csstype@3.0.6": + "integrity" "sha512-+ZAmfyWMT7TiIlzdqJgjMb7S4f1beorDbWbsocyK4RaiqA5RTX3K14bnBWmmA9QEM0gRdsjyyrEmcyga8Zsxmw==" + "resolved" "https://registry.npmjs.org/csstype/-/csstype-3.0.6.tgz" + "version" "3.0.6" + +"dashdash@1.14.1": + "integrity" "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=" + "resolved" "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" + "version" "1.14.1" + dependencies: + "assert-plus" "1.0.0" + +"data-uri-to-buffer@3.0.1": + "integrity" "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==" + "resolved" "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz" + "version" "3.0.1" + +"data-urls@1.1.0": + "integrity" "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==" + "resolved" "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "abab" "2.0.5" + "whatwg-mimetype" "2.3.0" + "whatwg-url" "7.1.0" + +"date-time-format-timezone@^1.0.22": + "integrity" "sha512-4hEeKPpNlbFO05ldht9FwJEy2g1xL7kU3dTPY5hNSd1AyMjrrIeUS54kSWgt/KdttYshhjDMIonU+vCmL4NjVw==" + "resolved" "https://registry.npmjs.org/date-time-format-timezone/-/date-time-format-timezone-1.0.22.tgz" + "version" "1.0.22" + +"dayjs@1.10.3": + "integrity" "sha512-/2fdLN987N8Ki7Id8BUN2nhuiRyxTLumQnSQf9CNncFCyqFsSKb9TNhzRYcC8K8eJSJOKvbvkImo/MKKhNi4iw==" + "resolved" "https://registry.npmjs.org/dayjs/-/dayjs-1.10.3.tgz" + "version" "1.10.3" + +"debug@^2.6.9": + "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" + "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + "version" "2.6.9" + dependencies: + "ms" "2.0.0" + +"debug@2.6.9": + "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" + "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + "version" "2.6.9" + dependencies: + "ms" "2.0.0" + +"debug@3.2.7": + "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + "version" "3.2.7" + dependencies: + "ms" "2.1.2" + +"debug@4.3.1": + "integrity" "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz" + "version" "4.3.1" + dependencies: + "ms" "2.1.2" + +"decamelize@1.2.0": + "integrity" "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + "resolved" "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" + "version" "1.2.0" + +"decode-uri-component@0.2.0": + "integrity" "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + "resolved" "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz" + "version" "0.2.0" + +"dedent@^0.6.0": + "integrity" "sha1-Dm2o8M5Sg471zsXI+TlrDBtko8s=" + "resolved" "https://registry.npmjs.org/dedent/-/dedent-0.6.0.tgz" + "version" "0.6.0" + +"deep-assign@3.0.0": + "integrity" "sha512-YX2i9XjJ7h5q/aQ/IM9PEwEnDqETAIYbggmdDB3HLTlSgo1CxPsj6pvhPG68rq6SVE0+p+6Ywsm5fTYNrYtBWw==" + "resolved" "https://registry.npmjs.org/deep-assign/-/deep-assign-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "is-obj" "1.0.1" + +"deep-is@0.1.3": + "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" + "version" "0.1.3" + +"deepmerge@^4.2.2": + "integrity" "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" + "resolved" "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz" + "version" "4.2.2" + +"deepmerge@3.3.0": + "integrity" "sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==" + "resolved" "https://registry.npmjs.org/deepmerge/-/deepmerge-3.3.0.tgz" + "version" "3.3.0" + +"deepmerge@4.2.2": + "integrity" "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" + "resolved" "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz" + "version" "4.2.2" + +"defaults@1.0.3": + "integrity" "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=" + "resolved" "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "clone" "1.0.4" + +"define-properties@1.1.3": + "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" + "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "object-keys" "1.1.1" + +"define-property@0.2.5": + "integrity" "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=" + "resolved" "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" + "version" "0.2.5" + dependencies: + "is-descriptor" "0.1.6" + +"define-property@1.0.0": + "integrity" "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=" + "resolved" "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "is-descriptor" "1.0.2" + +"define-property@2.0.2": + "integrity" "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==" + "resolved" "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "is-descriptor" "1.0.2" + "isobject" "3.0.1" + +"degenerator@2.2.0": + "integrity" "sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg==" + "resolved" "https://registry.npmjs.org/degenerator/-/degenerator-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "ast-types" "0.13.4" + "escodegen" "1.14.3" + "esprima" "4.0.1" + +"delayed-stream@1.0.0": + "integrity" "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + "version" "1.0.0" + +"denodeify@1.2.1": + "integrity" "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=" + "resolved" "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz" + "version" "1.2.1" + +"depd@1.1.2": + "integrity" "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + "resolved" "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" + "version" "1.1.2" + +"destroy@1.0.4": + "integrity" "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "resolved" "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz" + "version" "1.0.4" + +"detect-indent@^4.0.0": + "integrity" "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=" + "resolved" "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "repeating" "^2.0.0" + +"detect-newline@3.1.0": + "integrity" "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==" + "resolved" "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz" + "version" "3.1.0" + +"detect-node@2.0.5": + "integrity" "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" + "resolved" "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz" + "version" "2.0.5" + +"diff-sequences@25.2.6": + "integrity" "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==" + "resolved" "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz" + "version" "25.2.6" + +"doctrine@2.1.0": + "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "esutils" "2.0.3" + +"doctrine@3.0.0": + "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "esutils" "2.0.3" + +"dom-serializer@0": + "integrity" "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==" + "resolved" "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz" + "version" "0.2.2" + dependencies: + "domelementtype" "^2.0.1" + "entities" "^2.0.0" + +"domelementtype@^1.3.0", "domelementtype@1": + "integrity" "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + "resolved" "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz" + "version" "1.3.1" + +"domelementtype@^2.0.1": + "integrity" "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" + "resolved" "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz" + "version" "2.2.0" + +"domexception@1.0.1": + "integrity" "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==" + "resolved" "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "webidl-conversions" "4.0.2" + +"domhandler@^2.3.0": + "integrity" "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==" + "resolved" "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "domelementtype" "1" + +"domutils@^1.5.1", "domutils@^1.7.0": + "integrity" "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==" + "resolved" "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz" + "version" "1.7.0" + dependencies: + "dom-serializer" "0" + "domelementtype" "1" + +"ecc-jsbn@0.1.2": + "integrity" "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=" + "resolved" "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" + "version" "0.1.2" + dependencies: + "jsbn" "0.1.1" + "safer-buffer" "2.1.2" + +"ee-first@1.1.1": + "integrity" "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "resolved" "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" + "version" "1.1.1" + +"emoji-regex@7.0.3": + "integrity" "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz" + "version" "7.0.3" + +"emoji-regex@8.0.0": + "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + "version" "8.0.0" + +"encodeurl@1.0.2": + "integrity" "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + "resolved" "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" + "version" "1.0.2" + +"encoding@0.1.13": + "integrity" "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==" + "resolved" "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz" + "version" "0.1.13" + dependencies: + "iconv-lite" "0.6.2" + +"end-of-stream@1.4.4": + "integrity" "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==" + "resolved" "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" + "version" "1.4.4" + dependencies: + "once" "1.4.0" + +"entities@^1.1.1": + "integrity" "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + "resolved" "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz" + "version" "1.1.2" + +"entities@^2.0.0": + "integrity" "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + "resolved" "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz" + "version" "2.2.0" + +"envinfo@7.7.3": + "integrity" "sha512-46+j5QxbPWza0PB1i15nZx0xQ4I/EfQxg9J8Had3b408SV63nEtor2e+oiY63amTo9KTuh2a3XLObNwduxYwwA==" + "resolved" "https://registry.npmjs.org/envinfo/-/envinfo-7.7.3.tgz" + "version" "7.7.3" + +"error-ex@1.3.2": + "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" + "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + "version" "1.3.2" + dependencies: + "is-arrayish" "0.2.1" + +"errorhandler@1.5.1": + "integrity" "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==" + "resolved" "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz" + "version" "1.5.1" + dependencies: + "accepts" "1.3.7" + "escape-html" "1.0.3" + +"es-abstract@1.17.7": + "integrity" "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==" + "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz" + "version" "1.17.7" + dependencies: + "es-to-primitive" "1.2.1" + "function-bind" "1.1.1" + "has" "1.0.3" + "has-symbols" "1.0.1" + "is-callable" "1.2.2" + "is-regex" "1.1.1" + "object-inspect" "1.9.0" + "object-keys" "1.1.1" + "object.assign" "4.1.2" + "string.prototype.trimend" "1.0.3" + "string.prototype.trimstart" "1.0.3" + +"es-abstract@1.18.0-next.2": + "integrity" "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==" + "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz" + "version" "1.18.0-next.2" + dependencies: + "call-bind" "1.0.2" + "es-to-primitive" "1.2.1" + "function-bind" "1.1.1" + "get-intrinsic" "1.0.2" + "has" "1.0.3" + "has-symbols" "1.0.1" + "is-callable" "1.2.2" + "is-negative-zero" "2.0.1" + "is-regex" "1.1.1" + "object-inspect" "1.9.0" + "object-keys" "1.1.1" + "object.assign" "4.1.2" + "string.prototype.trimend" "1.0.3" + "string.prototype.trimstart" "1.0.3" + +"es-to-primitive@1.2.1": + "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" + "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "is-callable" "1.2.2" + "is-date-object" "1.0.2" + "is-symbol" "1.0.3" + +"escape-html@1.0.3": + "integrity" "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "resolved" "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" + "version" "1.0.3" + +"escape-string-regexp@1.0.5": + "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + "version" "1.0.5" + +"escape-string-regexp@2.0.0": + "integrity" "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" + "version" "2.0.0" + +"escape-string-regexp@4.0.0": + "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + "version" "4.0.0" + +"escodegen@1.14.3": + "integrity" "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==" + "resolved" "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz" + "version" "1.14.3" + dependencies: + "esprima" "4.0.1" + "estraverse" "4.3.0" + "esutils" "2.0.3" + "optionator" "0.8.3" + optionalDependencies: + "source-map" "0.6.1" + +"eslint-config-prettier@6.15.0": + "integrity" "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==" + "resolved" "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz" + "version" "6.15.0" + dependencies: + "get-stdin" "6.0.0" + +"eslint-plugin-eslint-comments@3.2.0": + "integrity" "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "escape-string-regexp" "1.0.5" + "ignore" "5.1.8" + +"eslint-plugin-flowtype@2.50.3": + "integrity" "sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz" + "version" "2.50.3" + dependencies: + "lodash" "4.17.20" + +"eslint-plugin-jest@22.4.1": + "integrity" "sha512-gcLfn6P2PrFAVx3AobaOzlIEevpAEf9chTpFZz7bYfc7pz8XRv7vuKTIE4hxPKZSha6XWKKplDQ0x9Pq8xX2mg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.4.1.tgz" + "version" "22.4.1" + +"eslint-plugin-prettier@3.1.2": + "integrity" "sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA==" + "resolved" "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz" + "version" "3.1.2" + dependencies: + "prettier-linter-helpers" "1.0.0" + +"eslint-plugin-react-hooks@3.0.0": + "integrity" "sha512-EjxTHxjLKIBWFgDJdhKKzLh5q+vjTFrqNZX36uIxWS4OfyXe5DawqPj3U5qeJ1ngLwatjzQnmR0Lz0J0YH3kxw==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-3.0.0.tgz" + "version" "3.0.0" + +"eslint-plugin-react-native-globals@0.1.2": + "integrity" "sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz" + "version" "0.1.2" + +"eslint-plugin-react-native@3.8.1": + "integrity" "sha512-6Z4s4nvgFRdda/1s1+uu4a6EMZwEjjJ9Bk/1yBImv0fd9U2CsGu2cUakAtV83cZKhizbWhSouXoaK4JtlScdFg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-3.8.1.tgz" + "version" "3.8.1" + dependencies: + "eslint-plugin-react-native-globals" "0.1.2" + +"eslint-plugin-react@7.19.0": + "integrity" "sha512-SPT8j72CGuAP+JFbT0sJHOB80TX/pu44gQ4vXH/cq+hQTiY2PuZ6IHkqXJV6x1b28GDdo1lbInjKUrrdUf0LOQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.19.0.tgz" + "version" "7.19.0" + dependencies: + "array-includes" "3.1.2" + "doctrine" "2.1.0" + "has" "1.0.3" + "jsx-ast-utils" "2.4.1" + "object.entries" "1.1.3" + "object.fromentries" "2.0.3" + "object.values" "1.1.2" + "prop-types" "15.7.2" + "resolve" "1.19.0" + "semver" "6.3.0" + "string.prototype.matchall" "4.0.3" + "xregexp" "4.4.1" + +"eslint-scope@5.1.1": + "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" + "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "esrecurse" "4.3.0" + "estraverse" "4.3.0" + +"eslint-utils@1.4.3": + "integrity" "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz" + "version" "1.4.3" + dependencies: + "eslint-visitor-keys" "1.3.0" + +"eslint-utils@2.1.0": + "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "eslint-visitor-keys" "1.3.0" + +"eslint-visitor-keys@1.3.0": + "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + "version" "1.3.0" + +"eslint@^6.5.1": + "integrity" "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==" + "resolved" "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz" + "version" "6.8.0" + dependencies: + "@babel/code-frame" "7.12.11" + "ajv" "6.12.6" + "chalk" "2.4.2" + "cross-spawn" "6.0.5" + "debug" "4.3.1" + "doctrine" "3.0.0" + "eslint-scope" "5.1.1" + "eslint-utils" "1.4.3" + "eslint-visitor-keys" "1.3.0" + "espree" "6.2.1" + "esquery" "1.3.1" + "esutils" "2.0.3" + "file-entry-cache" "5.0.1" + "functional-red-black-tree" "1.0.1" + "glob-parent" "5.1.1" + "globals" "12.4.0" + "ignore" "4.0.6" + "import-fresh" "3.3.0" + "imurmurhash" "0.1.4" + "inquirer" "7.3.3" + "is-glob" "4.0.1" + "js-yaml" "3.14.1" + "json-stable-stringify-without-jsonify" "1.0.1" + "levn" "0.3.0" + "lodash" "4.17.20" + "minimatch" "3.0.4" + "mkdirp" "0.5.5" + "natural-compare" "1.4.0" + "optionator" "0.8.3" + "progress" "2.0.3" + "regexpp" "2.0.1" + "semver" "6.3.0" + "strip-ansi" "5.2.0" + "strip-json-comments" "3.1.1" + "table" "5.4.6" + "text-table" "0.2.0" + "v8-compile-cache" "2.2.0" + +"espree@6.2.1": + "integrity" "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==" + "resolved" "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz" + "version" "6.2.1" + dependencies: + "acorn" "7.4.1" + "acorn-jsx" "5.3.1" + "eslint-visitor-keys" "1.3.0" + +"esprima@4.0.1": + "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + "version" "4.0.1" + +"esquery@1.3.1": + "integrity" "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==" + "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "estraverse" "5.2.0" + +"esrecurse@4.3.0": + "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" + "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "estraverse" "5.2.0" + +"estraverse@4.3.0": + "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + "version" "4.3.0" + +"estraverse@5.2.0": + "integrity" "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" + "version" "5.2.0" + +"esutils@2.0.3": + "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + "version" "2.0.3" + +"etag@1.8.1": + "integrity" "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "resolved" "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" + "version" "1.8.1" + +"event-target-shim@5.0.1": + "integrity" "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" + "resolved" "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" + "version" "5.0.1" + +"eventemitter2@^1.0.0": + "integrity" "sha1-+YNhBRexc3wLncZDvsqTiTwE3xg=" + "resolved" "https://registry.npmjs.org/eventemitter2/-/eventemitter2-1.0.5.tgz" + "version" "1.0.5" + +"eventemitter3@3.1.2": + "integrity" "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + "resolved" "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz" + "version" "3.1.2" + +"exec-sh@0.3.4": + "integrity" "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==" + "resolved" "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz" + "version" "0.3.4" + +"execa@1.0.0": + "integrity" "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==" + "resolved" "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "cross-spawn" "6.0.5" + "get-stream" "4.1.0" + "is-stream" "1.1.0" + "npm-run-path" "2.0.2" + "p-finally" "1.0.0" + "signal-exit" "3.0.3" + "strip-eof" "1.0.0" + +"execa@3.4.0": + "integrity" "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==" + "resolved" "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz" + "version" "3.4.0" + dependencies: + "cross-spawn" "7.0.3" + "get-stream" "5.2.0" + "human-signals" "1.1.1" + "is-stream" "2.0.0" + "merge-stream" "2.0.0" + "npm-run-path" "4.0.1" + "onetime" "5.1.2" + "p-finally" "2.0.1" + "signal-exit" "3.0.3" + "strip-final-newline" "2.0.0" + +"exit@0.1.2": + "integrity" "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=" + "resolved" "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz" + "version" "0.1.2" + +"expand-brackets@2.1.4": + "integrity" "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=" + "resolved" "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" + "version" "2.1.4" + dependencies: + "debug" "2.6.9" + "define-property" "0.2.5" + "extend-shallow" "2.0.1" + "posix-character-classes" "0.1.1" + "regex-not" "1.0.2" + "snapdragon" "0.8.2" + "to-regex" "3.0.2" + +"expect@25.5.0": + "integrity" "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==" + "resolved" "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "ansi-styles" "4.3.0" + "jest-get-type" "25.2.6" + "jest-matcher-utils" "25.5.0" + "jest-message-util" "25.5.0" + "jest-regex-util" "25.2.6" + +"extend-shallow@1.1.4": + "integrity" "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=" + "resolved" "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "kind-of" "1.1.0" + +"extend-shallow@2.0.1": + "integrity" "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=" + "resolved" "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "is-extendable" "0.1.1" + +"extend-shallow@3.0.2": + "integrity" "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=" + "resolved" "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "assign-symbols" "1.0.0" + "is-extendable" "1.0.1" + +"extend@3.0.2": + "integrity" "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "resolved" "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" + "version" "3.0.2" + +"external-editor@2.2.0": + "integrity" "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==" + "resolved" "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "chardet" "0.4.2" + "iconv-lite" "0.4.24" + "tmp" "0.0.33" + +"external-editor@3.1.0": + "integrity" "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==" + "resolved" "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "chardet" "0.7.0" + "iconv-lite" "0.4.24" + "tmp" "0.0.33" + +"extglob@2.0.4": + "integrity" "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==" + "resolved" "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" + "version" "2.0.4" + dependencies: + "array-unique" "0.3.2" + "define-property" "1.0.0" + "expand-brackets" "2.1.4" + "extend-shallow" "2.0.1" + "fragment-cache" "0.2.1" + "regex-not" "1.0.2" + "snapdragon" "0.8.2" + "to-regex" "3.0.2" + +"extsprintf@1.3.0": + "integrity" "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + "resolved" "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" + "version" "1.3.0" + +"fancy-log@1.3.3": + "integrity" "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==" + "resolved" "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz" + "version" "1.3.3" + dependencies: + "ansi-gray" "0.1.1" + "color-support" "1.1.3" + "parse-node-version" "1.0.1" + "time-stamp" "1.1.0" + +"fast-deep-equal@3.1.3": + "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + "version" "3.1.3" + +"fast-diff@1.2.0": + "integrity" "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" + "resolved" "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz" + "version" "1.2.0" + +"fast-json-stable-stringify@2.1.0": + "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + "version" "2.1.0" + +"fast-levenshtein@2.0.6": + "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + "version" "2.0.6" + +"fast-safe-stringify@2.0.7": + "integrity" "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + "resolved" "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz" + "version" "2.0.7" + +"fb-watchman@2.0.1": + "integrity" "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==" + "resolved" "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "bser" "2.1.1" + +"fbjs-css-vars@1.0.2": + "integrity" "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + "resolved" "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz" + "version" "1.0.2" + +"fbjs-scripts@1.2.0": + "integrity" "sha512-5krZ8T0Bf8uky0abPoCLrfa7Orxd8UH4Qq8hRUF2RZYNMu+FmEOrBc7Ib3YVONmxTXTlLAvyrrdrVmksDb2OqQ==" + "resolved" "https://registry.npmjs.org/fbjs-scripts/-/fbjs-scripts-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "@babel/core" "7.12.10" + "ansi-colors" "1.1.0" + "babel-preset-fbjs" "3.3.0" + "core-js" "2.6.12" + "cross-spawn" "5.1.0" + "fancy-log" "1.3.3" + "object-assign" "4.1.1" + "plugin-error" "0.1.2" + "semver" "5.7.1" + "through2" "2.0.5" + +"fbjs@^3.0.0": + "integrity" "sha512-dJd4PiDOFuhe7vk4F80Mba83Vr2QuK86FoxtgPmzBqEJahncp+13YCmfoa53KHCo6OnlXLG7eeMWPfB5CrpVKg==" + "resolved" "https://registry.npmjs.org/fbjs/-/fbjs-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "cross-fetch" "3.0.6" + "fbjs-css-vars" "1.0.2" + "loose-envify" "1.4.0" + "object-assign" "4.1.1" + "promise" "7.3.1" + "setimmediate" "1.0.5" + "ua-parser-js" "0.7.23" + +"fbjs@1.0.0": + "integrity" "sha512-MUgcMEJaFhCaF1QtWGnmq9ZDRAzECTCRAF7O6UZIlAlkTs1SasiX9aP0Iw7wfD2mJ7wDTNfg2w7u5fSCwJk1OA==" + "resolved" "https://registry.npmjs.org/fbjs/-/fbjs-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "core-js" "2.6.12" + "fbjs-css-vars" "1.0.2" + "isomorphic-fetch" "2.2.1" + "loose-envify" "1.4.0" + "object-assign" "4.1.1" + "promise" "7.3.1" + "setimmediate" "1.0.5" + "ua-parser-js" "0.7.23" + +"figures@2.0.0": + "integrity" "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=" + "resolved" "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "escape-string-regexp" "1.0.5" + +"figures@3.2.0": + "integrity" "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==" + "resolved" "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "escape-string-regexp" "1.0.5" + +"file-entry-cache@5.0.1": + "integrity" "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==" + "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "flat-cache" "2.0.1" + +"file-uri-to-path@1.0.0": + "integrity" "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + "resolved" "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz" + "version" "1.0.0" + +"file-uri-to-path@2.0.0": + "integrity" "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==" + "resolved" "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz" + "version" "2.0.0" + +"fill-range@4.0.0": + "integrity" "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=" + "resolved" "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "extend-shallow" "2.0.1" + "is-number" "3.0.0" + "repeat-string" "1.6.1" + "to-regex-range" "2.1.1" + +"fill-range@7.0.1": + "integrity" "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==" + "resolved" "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "to-regex-range" "5.0.1" + +"finalhandler@1.1.2": + "integrity" "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==" + "resolved" "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "debug" "2.6.9" + "encodeurl" "1.0.2" + "escape-html" "1.0.3" + "on-finished" "2.3.0" + "parseurl" "1.3.3" + "statuses" "1.5.0" + "unpipe" "1.0.0" + +"find-cache-dir@2.1.0": + "integrity" "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==" + "resolved" "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "commondir" "1.0.1" + "make-dir" "2.1.0" + "pkg-dir" "3.0.0" + +"find-up@3.0.0": + "integrity" "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "locate-path" "3.0.0" + +"find-up@4.1.0": + "integrity" "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "locate-path" "5.0.0" + "path-exists" "4.0.0" + +"flat-cache@2.0.1": + "integrity" "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==" + "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "flatted" "2.0.2" + "rimraf" "2.6.3" + "write" "1.0.3" + +"flatted@2.0.2": + "integrity" "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + "resolved" "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz" + "version" "2.0.2" + +"follow-redirects@1.13.1": + "integrity" "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" + "resolved" "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz" + "version" "1.13.1" + +"for-in@0.1.8": + "integrity" "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" + "resolved" "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz" + "version" "0.1.8" + +"for-in@1.0.2": + "integrity" "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "resolved" "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" + "version" "1.0.2" + +"for-own@1.0.0": + "integrity" "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=" + "resolved" "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "for-in" "1.0.2" + +"forever-agent@0.6.1": + "integrity" "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + "resolved" "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" + "version" "0.6.1" + +"form-data@2.3.3": + "integrity" "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==" + "resolved" "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz" + "version" "2.3.3" + dependencies: + "asynckit" "0.4.0" + "combined-stream" "1.0.8" + "mime-types" "2.1.28" + +"form-data@3.0.1": + "integrity" "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==" + "resolved" "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "asynckit" "0.4.0" + "combined-stream" "1.0.8" + "mime-types" "2.1.28" + +"formidable@1.2.2": + "integrity" "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" + "resolved" "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz" + "version" "1.2.2" + +"fragment-cache@0.2.1": + "integrity" "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=" + "resolved" "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" + "version" "0.2.1" + dependencies: + "map-cache" "0.2.2" + +"fresh@0.5.2": + "integrity" "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + "resolved" "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" + "version" "0.5.2" + +"fs-extra@1.0.0": + "integrity" "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=" + "resolved" "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "graceful-fs" "4.2.4" + "jsonfile" "2.4.0" + "klaw" "1.3.1" + +"fs-extra@8.1.0": + "integrity" "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==" + "resolved" "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz" + "version" "8.1.0" + dependencies: + "graceful-fs" "4.2.4" + "jsonfile" "4.0.0" + "universalify" "0.1.2" + +"fs.realpath@1.0.0": + "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + "version" "1.0.0" + +"fsevents@1.2.13": + "integrity" "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==" + "resolved" "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz" + "version" "1.2.13" + dependencies: + "bindings" "1.5.0" + "nan" "2.14.2" + +"fsevents@2.3.1": + "integrity" "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==" + "resolved" "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz" + "version" "2.3.1" + +"ftp@0.3.10": + "integrity" "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=" + "resolved" "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz" + "version" "0.3.10" + dependencies: + "readable-stream" "1.1.14" + "xregexp" "2.0.0" + +"function-bind@1.1.1": + "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + "version" "1.1.1" + +"functional-red-black-tree@1.0.1": + "integrity" "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + "resolved" "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" + "version" "1.0.1" + +"gensync@1.0.0-beta.2": + "integrity" "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==" + "resolved" "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" + "version" "1.0.0-beta.2" + +"get-caller-file@2.0.5": + "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + "version" "2.0.5" + +"get-intrinsic@1.0.2": + "integrity" "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==" + "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "function-bind" "1.1.1" + "has" "1.0.3" + "has-symbols" "1.0.1" + +"get-package-type@0.1.0": + "integrity" "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==" + "resolved" "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz" + "version" "0.1.0" + +"get-stdin@6.0.0": + "integrity" "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==" + "resolved" "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz" + "version" "6.0.0" + +"get-stream@4.1.0": + "integrity" "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==" + "resolved" "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "pump" "3.0.0" + +"get-stream@5.2.0": + "integrity" "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==" + "resolved" "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "pump" "3.0.0" + +"get-uri@3.0.2": + "integrity" "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==" + "resolved" "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "@tootallnate/once" "1.1.2" + "data-uri-to-buffer" "3.0.1" + "debug" "4.3.1" + "file-uri-to-path" "2.0.0" + "fs-extra" "8.1.0" + "ftp" "0.3.10" + +"get-value@2.0.6": + "integrity" "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + "resolved" "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" + "version" "2.0.6" + +"getpass@0.1.7": + "integrity" "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=" + "resolved" "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" + "version" "0.1.7" + dependencies: + "assert-plus" "1.0.0" + +"glob-parent@5.1.1": + "integrity" "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==" + "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "is-glob" "4.0.1" + +"glob@7.1.6": + "integrity" "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz" + "version" "7.1.6" + dependencies: + "fs.realpath" "1.0.0" + "inflight" "1.0.6" + "inherits" "2.0.4" + "minimatch" "3.0.4" + "once" "1.4.0" + "path-is-absolute" "1.0.1" + +"globals@11.12.0": + "integrity" "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + "resolved" "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" + "version" "11.12.0" + +"globals@12.4.0": + "integrity" "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==" + "resolved" "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz" + "version" "12.4.0" + dependencies: + "type-fest" "0.8.1" + +"globals@9.18.0": + "integrity" "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + "resolved" "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz" + "version" "9.18.0" + +"graceful-fs@4.2.4": + "integrity" "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz" + "version" "4.2.4" + +"growly@1.3.0": + "integrity" "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=" + "resolved" "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz" + "version" "1.3.0" + +"har-schema@2.0.0": + "integrity" "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + "resolved" "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" + "version" "2.0.0" + +"har-validator@5.1.5": + "integrity" "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==" + "resolved" "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz" + "version" "5.1.5" + dependencies: + "ajv" "6.12.6" + "har-schema" "2.0.0" + +"has-ansi@2.0.0": + "integrity" "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=" + "resolved" "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "ansi-regex" "2.1.1" + +"has-flag@3.0.0": + "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + "version" "3.0.0" + +"has-flag@4.0.0": + "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + "version" "4.0.0" + +"has-symbols@1.0.1": + "integrity" "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz" + "version" "1.0.1" + +"has-value@0.3.1": + "integrity" "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=" + "resolved" "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" + "version" "0.3.1" + dependencies: + "get-value" "2.0.6" + "has-values" "0.1.4" + "isobject" "2.1.0" + +"has-value@1.0.0": + "integrity" "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=" + "resolved" "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "get-value" "2.0.6" + "has-values" "1.0.0" + "isobject" "3.0.1" + +"has-values@0.1.4": + "integrity" "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + "resolved" "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" + "version" "0.1.4" + +"has-values@1.0.0": + "integrity" "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=" + "resolved" "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "is-number" "3.0.0" + "kind-of" "4.0.0" + +"has@1.0.3": + "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" + "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "function-bind" "1.1.1" + +"hermes-engine@0.5.1": + "integrity" "sha512-hLwqh8dejHayjlpvZY40e1aDCDvyP98cWx/L5DhAjSJLH8g4z9Tp08D7y4+3vErDsncPOdf1bxm+zUWpx0/Fxg==" + "resolved" "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.5.1.tgz" + "version" "0.5.1" + +"hermes-profile-transformer@0.0.6": + "integrity" "sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==" + "resolved" "https://registry.npmjs.org/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz" + "version" "0.0.6" + dependencies: + "source-map" "0.7.3" + +"hoist-non-react-statics@^3.3.0", "hoist-non-react-statics@^3.3.2", "hoist-non-react-statics@3.3.2": + "integrity" "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==" + "resolved" "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" + "version" "3.3.2" + dependencies: + "react-is" "16.13.1" + +"hoist-non-react-statics@2.5.5": + "integrity" "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + "resolved" "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz" + "version" "2.5.5" + +"home-or-tmp@^2.0.0": + "integrity" "sha1-42w/LSyufXRqhX440Y1fMqeILbg=" + "resolved" "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "os-homedir" "^1.0.0" + "os-tmpdir" "^1.0.1" + +"hosted-git-info@2.8.8": + "integrity" "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz" + "version" "2.8.8" + +"html-encoding-sniffer@1.0.2": + "integrity" "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==" + "resolved" "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "whatwg-encoding" "1.0.5" + +"html-escaper@2.0.2": + "integrity" "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + "resolved" "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" + "version" "2.0.2" + +"htmlparser2-without-node-native@^3.9.2": + "integrity" "sha1-s+0FDYd9D/NGWWnjOYd7f59mMfY=" + "resolved" "https://registry.npmjs.org/htmlparser2-without-node-native/-/htmlparser2-without-node-native-3.9.2.tgz" + "version" "3.9.2" + dependencies: + "domelementtype" "^1.3.0" + "domhandler" "^2.3.0" + "domutils" "^1.5.1" + "entities" "^1.1.1" + "eventemitter2" "^1.0.0" + "inherits" "^2.0.1" + "readable-stream" "^2.0.2" + +"http-errors@1.7.3": + "integrity" "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==" + "resolved" "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz" + "version" "1.7.3" + dependencies: + "depd" "1.1.2" + "inherits" "2.0.4" + "setprototypeof" "1.1.1" + "statuses" "1.5.0" + "toidentifier" "1.0.0" + +"http-proxy-agent@4.0.1": + "integrity" "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==" + "resolved" "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "@tootallnate/once" "1.1.2" + "agent-base" "6.0.2" + "debug" "4.3.1" + +"http-signature@1.2.0": + "integrity" "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=" + "resolved" "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "assert-plus" "1.0.0" + "jsprim" "1.4.1" + "sshpk" "1.16.1" + +"https-proxy-agent@5.0.0": + "integrity" "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==" + "resolved" "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "agent-base" "6.0.2" + "debug" "4.3.1" + +"human-signals@1.1.1": + "integrity" "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==" + "resolved" "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz" + "version" "1.1.1" + +"iconv-lite@0.4.24": + "integrity" "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==" + "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" + "version" "0.4.24" + dependencies: + "safer-buffer" "2.1.2" + +"iconv-lite@0.6.2": + "integrity" "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==" + "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz" + "version" "0.6.2" + dependencies: + "safer-buffer" "2.1.2" + +"ieee754@1.2.1": + "integrity" "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + "resolved" "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" + "version" "1.2.1" + +"ignore@4.0.6": + "integrity" "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" + "version" "4.0.6" + +"ignore@5.1.8": + "integrity" "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" + "version" "5.1.8" + +"image-size@0.6.3": + "integrity" "sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==" + "resolved" "https://registry.npmjs.org/image-size/-/image-size-0.6.3.tgz" + "version" "0.6.3" + +"import-fresh@2.0.0": + "integrity" "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=" + "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "caller-path" "2.0.0" + "resolve-from" "3.0.0" + +"import-fresh@3.3.0": + "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" + "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "parent-module" "1.0.1" + "resolve-from" "4.0.0" + +"import-local@3.0.2": + "integrity" "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==" + "resolved" "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "pkg-dir" "4.2.0" + "resolve-cwd" "3.0.0" + +"imurmurhash@0.1.4": + "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + "version" "0.1.4" + +"inflight@1.0.6": + "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" + "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "once" "1.4.0" + "wrappy" "1.0.2" + +"inherits@^2.0.1", "inherits@2.0.4": + "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + "version" "2.0.4" + +"inquirer@3.3.0": + "integrity" "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==" + "resolved" "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "ansi-escapes" "3.2.0" + "chalk" "2.4.2" + "cli-cursor" "2.1.0" + "cli-width" "2.2.1" + "external-editor" "2.2.0" + "figures" "2.0.0" + "lodash" "4.17.20" + "mute-stream" "0.0.7" + "run-async" "2.4.1" + "rx-lite" "4.0.8" + "rx-lite-aggregates" "4.0.8" + "string-width" "2.1.1" + "strip-ansi" "4.0.0" + "through" "2.3.8" + +"inquirer@7.3.3": + "integrity" "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==" + "resolved" "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz" + "version" "7.3.3" + dependencies: + "ansi-escapes" "4.3.2" + "chalk" "4.1.1" + "cli-cursor" "3.1.0" + "cli-width" "3.0.0" + "external-editor" "3.1.0" + "figures" "3.2.0" + "lodash" "4.17.20" + "mute-stream" "0.0.8" + "run-async" "2.4.1" + "rxjs" "6.6.7" + "string-width" "4.2.0" + "strip-ansi" "6.0.0" + "through" "2.3.8" + +"internal-slot@1.0.2": + "integrity" "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==" + "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "es-abstract" "1.17.7" + "has" "1.0.3" + "side-channel" "1.0.4" + +"invariant@^2.2.2", "invariant@^2.2.4", "invariant@2.2.4": + "integrity" "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==" + "resolved" "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz" + "version" "2.2.4" + dependencies: + "loose-envify" "1.4.0" + +"ip-regex@2.1.0": + "integrity" "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" + "resolved" "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz" + "version" "2.1.0" + +"ip@1.1.5": + "integrity" "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + "resolved" "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz" + "version" "1.1.5" + +"is-accessor-descriptor@0.1.6": + "integrity" "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=" + "resolved" "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz" + "version" "0.1.6" + dependencies: + "kind-of" "3.2.2" + +"is-accessor-descriptor@1.0.0": + "integrity" "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==" + "resolved" "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "kind-of" "6.0.3" + +"is-arrayish@0.2.1": + "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + "version" "0.2.1" + +"is-arrayish@0.3.2": + "integrity" "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz" + "version" "0.3.2" + +"is-buffer@1.1.6": + "integrity" "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + "resolved" "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" + "version" "1.1.6" + +"is-callable@1.2.2": + "integrity" "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==" + "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz" + "version" "1.2.2" + +"is-ci@2.0.0": + "integrity" "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==" + "resolved" "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "ci-info" "2.0.0" + +"is-core-module@2.2.0": + "integrity" "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==" + "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "has" "1.0.3" + +"is-data-descriptor@0.1.4": + "integrity" "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=" + "resolved" "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz" + "version" "0.1.4" + dependencies: + "kind-of" "3.2.2" + +"is-data-descriptor@1.0.0": + "integrity" "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==" + "resolved" "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "kind-of" "6.0.3" + +"is-date-object@1.0.2": + "integrity" "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" + "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz" + "version" "1.0.2" + +"is-descriptor@0.1.6": + "integrity" "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==" + "resolved" "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz" + "version" "0.1.6" + dependencies: + "is-accessor-descriptor" "0.1.6" + "is-data-descriptor" "0.1.4" + "kind-of" "5.1.0" + +"is-descriptor@1.0.2": + "integrity" "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==" + "resolved" "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "is-accessor-descriptor" "1.0.0" + "is-data-descriptor" "1.0.0" + "kind-of" "6.0.3" + +"is-directory@0.3.1": + "integrity" "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" + "resolved" "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz" + "version" "0.3.1" + +"is-docker@2.1.1": + "integrity" "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==" + "resolved" "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz" + "version" "2.1.1" + +"is-extendable@0.1.1": + "integrity" "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + "resolved" "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" + "version" "0.1.1" + +"is-extendable@1.0.1": + "integrity" "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==" + "resolved" "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "is-plain-object" "2.0.4" + +"is-extglob@2.1.1": + "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + "version" "2.1.1" + +"is-finite@^1.0.0": + "integrity" "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" + "resolved" "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz" + "version" "1.1.0" + +"is-fullwidth-code-point@2.0.0": + "integrity" "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" + "version" "2.0.0" + +"is-fullwidth-code-point@3.0.0": + "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + "version" "3.0.0" + +"is-generator-fn@2.1.0": + "integrity" "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==" + "resolved" "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz" + "version" "2.1.0" + +"is-glob@4.0.1": + "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" + "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "is-extglob" "2.1.1" + +"is-negative-zero@2.0.1": + "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" + "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" + "version" "2.0.1" + +"is-number@3.0.0": + "integrity" "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=" + "resolved" "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "kind-of" "3.2.2" + +"is-number@7.0.0": + "integrity" "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + "resolved" "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + "version" "7.0.0" + +"is-obj@1.0.1": + "integrity" "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + "resolved" "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz" + "version" "1.0.1" + +"is-plain-object@2.0.4": + "integrity" "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==" + "resolved" "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" + "version" "2.0.4" + dependencies: + "isobject" "3.0.1" + +"is-regex@1.1.1": + "integrity" "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==" + "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "has-symbols" "1.0.1" + +"is-stream@1.1.0": + "integrity" "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + "resolved" "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" + "version" "1.1.0" + +"is-stream@2.0.0": + "integrity" "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==" + "resolved" "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz" + "version" "2.0.0" + +"is-string@1.0.5": + "integrity" "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" + "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz" + "version" "1.0.5" + +"is-symbol@1.0.3": + "integrity" "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==" + "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "has-symbols" "1.0.1" + +"is-typedarray@1.0.0": + "integrity" "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + "resolved" "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" + "version" "1.0.0" + +"is-windows@1.0.2": + "integrity" "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + "resolved" "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" + "version" "1.0.2" + +"is-wsl@1.1.0": + "integrity" "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + "resolved" "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz" + "version" "1.1.0" + +"is-wsl@2.2.0": + "integrity" "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==" + "resolved" "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "is-docker" "2.1.1" + +"isarray@0.0.1": + "integrity" "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "resolved" "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + "version" "0.0.1" + +"isarray@1.0.0": + "integrity" "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "resolved" "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + "version" "1.0.0" + +"isexe@2.0.0": + "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + "version" "2.0.0" + +"isobject@2.1.0": + "integrity" "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=" + "resolved" "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "isarray" "1.0.0" + +"isobject@3.0.1": + "integrity" "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "resolved" "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" + "version" "3.0.1" + +"isomorphic-fetch@2.2.1": + "integrity" "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=" + "resolved" "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz" + "version" "2.2.1" + dependencies: + "node-fetch" "1.7.3" + "whatwg-fetch" "3.5.0" + +"isstream@0.1.2": + "integrity" "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + "resolved" "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" + "version" "0.1.2" + +"istanbul-lib-coverage@3.0.0": + "integrity" "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" + "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" + "version" "3.0.0" + +"istanbul-lib-instrument@4.0.3": + "integrity" "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==" + "resolved" "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz" + "version" "4.0.3" + dependencies: + "@babel/core" "7.12.10" + "@istanbuljs/schema" "0.1.2" + "istanbul-lib-coverage" "3.0.0" + "semver" "6.3.0" + +"istanbul-lib-report@3.0.0": + "integrity" "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==" + "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "istanbul-lib-coverage" "3.0.0" + "make-dir" "3.1.0" + "supports-color" "7.2.0" + +"istanbul-lib-source-maps@4.0.0": + "integrity" "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==" + "resolved" "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "debug" "4.3.1" + "istanbul-lib-coverage" "3.0.0" + "source-map" "0.6.1" + +"istanbul-reports@3.0.2": + "integrity" "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==" + "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "html-escaper" "2.0.2" + "istanbul-lib-report" "3.0.0" + +"jest-changed-files@25.5.0": + "integrity" "sha512-EOw9QEqapsDT7mKF162m8HFzRPbmP8qJQny6ldVOdOVBz3ACgPm/1nAn5fPQ/NDaYhX/AHkrGwwkCncpAVSXcw==" + "resolved" "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "execa" "3.4.0" + "throat" "5.0.0" + +"jest-cli@25.5.4": + "integrity" "sha512-rG8uJkIiOUpnREh1768/N3n27Cm+xPFkSNFO91tgg+8o2rXeVLStz+vkXkGr4UtzH6t1SNbjwoiswd7p4AhHTw==" + "resolved" "https://registry.npmjs.org/jest-cli/-/jest-cli-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/core" "25.5.4" + "@jest/test-result" "25.5.0" + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "exit" "0.1.2" + "graceful-fs" "4.2.4" + "import-local" "3.0.2" + "is-ci" "2.0.0" + "jest-config" "25.5.4" + "jest-util" "25.5.0" + "jest-validate" "25.5.0" + "prompts" "2.4.0" + "realpath-native" "2.0.0" + "yargs" "15.4.1" + +"jest-config@25.5.4": + "integrity" "sha512-SZwR91SwcdK6bz7Gco8qL7YY2sx8tFJYzvg216DLihTWf+LKY/DoJXpM9nTzYakSyfblbqeU48p/p7Jzy05Atg==" + "resolved" "https://registry.npmjs.org/jest-config/-/jest-config-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@babel/core" "7.12.10" + "@jest/test-sequencer" "25.5.4" + "@jest/types" "25.5.0" + "babel-jest" "25.5.1" + "chalk" "3.0.0" + "deepmerge" "4.2.2" + "glob" "7.1.6" + "graceful-fs" "4.2.4" + "jest-environment-jsdom" "25.5.0" + "jest-environment-node" "25.5.0" + "jest-get-type" "25.2.6" + "jest-jasmine2" "25.5.4" + "jest-regex-util" "25.2.6" + "jest-resolve" "25.5.1" + "jest-util" "25.5.0" + "jest-validate" "25.5.0" + "micromatch" "4.0.2" + "pretty-format" "25.5.0" + "realpath-native" "2.0.0" + +"jest-diff@25.5.0": + "integrity" "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==" + "resolved" "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "chalk" "3.0.0" + "diff-sequences" "25.2.6" + "jest-get-type" "25.2.6" + "pretty-format" "25.5.0" + +"jest-docblock@25.3.0": + "integrity" "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==" + "resolved" "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz" + "version" "25.3.0" + dependencies: + "detect-newline" "3.1.0" + +"jest-each@25.5.0": + "integrity" "sha512-QBogUxna3D8vtiItvn54xXde7+vuzqRrEeaw8r1s+1TG9eZLVJE5ZkKoSUlqFwRjnlaA4hyKGiu9OlkFIuKnjA==" + "resolved" "https://registry.npmjs.org/jest-each/-/jest-each-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "jest-get-type" "25.2.6" + "jest-util" "25.5.0" + "pretty-format" "25.5.0" + +"jest-environment-jsdom@25.5.0": + "integrity" "sha512-7Jr02ydaq4jaWMZLY+Skn8wL5nVIYpWvmeatOHL3tOcV3Zw8sjnPpx+ZdeBfc457p8jCR9J6YCc+Lga0oIy62A==" + "resolved" "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/environment" "25.5.0" + "@jest/fake-timers" "25.5.0" + "@jest/types" "25.5.0" + "jest-mock" "25.5.0" + "jest-util" "25.5.0" + "jsdom" "15.2.1" + +"jest-environment-node@25.5.0": + "integrity" "sha512-iuxK6rQR2En9EID+2k+IBs5fCFd919gVVK5BeND82fYeLWPqvRcFNPKu9+gxTwfB5XwBGBvZ0HFQa+cHtIoslA==" + "resolved" "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/environment" "25.5.0" + "@jest/fake-timers" "25.5.0" + "@jest/types" "25.5.0" + "jest-mock" "25.5.0" + "jest-util" "25.5.0" + "semver" "6.3.0" + +"jest-get-type@24.9.0": + "integrity" "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==" + "resolved" "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz" + "version" "24.9.0" + +"jest-get-type@25.2.6": + "integrity" "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==" + "resolved" "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz" + "version" "25.2.6" + +"jest-haste-map@24.9.0": + "integrity" "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==" + "resolved" "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/types" "24.9.0" + "anymatch" "2.0.0" + "fb-watchman" "2.0.1" + "graceful-fs" "4.2.4" + "invariant" "2.2.4" + "jest-serializer" "24.9.0" + "jest-util" "24.9.0" + "jest-worker" "24.9.0" + "micromatch" "3.1.10" + "sane" "4.1.0" + "walker" "1.0.7" + optionalDependencies: + "fsevents" "1.2.13" + +"jest-haste-map@25.5.1": + "integrity" "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==" + "resolved" "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@jest/types" "25.5.0" + "@types/graceful-fs" "4.1.4" + "anymatch" "3.1.1" + "fb-watchman" "2.0.1" + "graceful-fs" "4.2.4" + "jest-serializer" "25.5.0" + "jest-util" "25.5.0" + "jest-worker" "25.5.0" + "micromatch" "4.0.2" + "sane" "4.1.0" + "walker" "1.0.7" + "which" "2.0.2" + optionalDependencies: + "fsevents" "2.3.1" + +"jest-jasmine2@25.5.4": + "integrity" "sha512-9acbWEfbmS8UpdcfqnDO+uBUgKa/9hcRh983IHdM+pKmJPL77G0sWAAK0V0kr5LK3a8cSBfkFSoncXwQlRZfkQ==" + "resolved" "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@babel/traverse" "7.12.12" + "@jest/environment" "25.5.0" + "@jest/source-map" "25.5.0" + "@jest/test-result" "25.5.0" + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "co" "4.6.0" + "expect" "25.5.0" + "is-generator-fn" "2.1.0" + "jest-each" "25.5.0" + "jest-matcher-utils" "25.5.0" + "jest-message-util" "25.5.0" + "jest-runtime" "25.5.4" + "jest-snapshot" "25.5.1" + "jest-util" "25.5.0" + "pretty-format" "25.5.0" + "throat" "5.0.0" + +"jest-leak-detector@25.5.0": + "integrity" "sha512-rV7JdLsanS8OkdDpZtgBf61L5xZ4NnYLBq72r6ldxahJWWczZjXawRsoHyXzibM5ed7C2QRjpp6ypgwGdKyoVA==" + "resolved" "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "jest-get-type" "25.2.6" + "pretty-format" "25.5.0" + +"jest-matcher-utils@25.5.0": + "integrity" "sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==" + "resolved" "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "chalk" "3.0.0" + "jest-diff" "25.5.0" + "jest-get-type" "25.2.6" + "pretty-format" "25.5.0" + +"jest-message-util@24.9.0": + "integrity" "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==" + "resolved" "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@babel/code-frame" "7.12.11" + "@jest/test-result" "24.9.0" + "@jest/types" "24.9.0" + "@types/stack-utils" "1.0.1" + "chalk" "2.4.2" + "micromatch" "3.1.10" + "slash" "2.0.0" + "stack-utils" "1.0.4" + +"jest-message-util@25.5.0": + "integrity" "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==" + "resolved" "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@babel/code-frame" "7.12.11" + "@jest/types" "25.5.0" + "@types/stack-utils" "1.0.1" + "chalk" "3.0.0" + "graceful-fs" "4.2.4" + "micromatch" "4.0.2" + "slash" "3.0.0" + "stack-utils" "1.0.4" + +"jest-mock@24.9.0": + "integrity" "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==" + "resolved" "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/types" "24.9.0" + +"jest-mock@25.5.0": + "integrity" "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==" + "resolved" "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + +"jest-pnp-resolver@1.2.2": + "integrity" "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==" + "resolved" "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz" + "version" "1.2.2" + +"jest-regex-util@25.2.6": + "integrity" "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==" + "resolved" "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz" + "version" "25.2.6" + +"jest-resolve-dependencies@25.5.4": + "integrity" "sha512-yFmbPd+DAQjJQg88HveObcGBA32nqNZ02fjYmtL16t1xw9bAttSn5UGRRhzMHIQbsep7znWvAvnD4kDqOFM0Uw==" + "resolved" "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/types" "25.5.0" + "jest-regex-util" "25.2.6" + "jest-snapshot" "25.5.1" + +"jest-resolve@25.5.1": + "integrity" "sha512-Hc09hYch5aWdtejsUZhA+vSzcotf7fajSlPA6EZPE1RmPBAD39XtJhvHWFStid58iit4IPDLI/Da4cwdDmAHiQ==" + "resolved" "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@jest/types" "25.5.0" + "browser-resolve" "1.11.3" + "chalk" "3.0.0" + "graceful-fs" "4.2.4" + "jest-pnp-resolver" "1.2.2" + "read-pkg-up" "7.0.1" + "realpath-native" "2.0.0" + "resolve" "1.19.0" + "slash" "3.0.0" + +"jest-runner@25.5.4": + "integrity" "sha512-V/2R7fKZo6blP8E9BL9vJ8aTU4TH2beuqGNxHbxi6t14XzTb+x90B3FRgdvuHm41GY8ch4xxvf0ATH4hdpjTqg==" + "resolved" "https://registry.npmjs.org/jest-runner/-/jest-runner-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/console" "25.5.0" + "@jest/environment" "25.5.0" + "@jest/test-result" "25.5.0" + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "exit" "0.1.2" + "graceful-fs" "4.2.4" + "jest-config" "25.5.4" + "jest-docblock" "25.3.0" + "jest-haste-map" "25.5.1" + "jest-jasmine2" "25.5.4" + "jest-leak-detector" "25.5.0" + "jest-message-util" "25.5.0" + "jest-resolve" "25.5.1" + "jest-runtime" "25.5.4" + "jest-util" "25.5.0" + "jest-worker" "25.5.0" + "source-map-support" "0.5.19" + "throat" "5.0.0" + +"jest-runtime@25.5.4": + "integrity" "sha512-RWTt8LeWh3GvjYtASH2eezkc8AehVoWKK20udV6n3/gC87wlTbE1kIA+opCvNWyyPeBs6ptYsc6nyHUb1GlUVQ==" + "resolved" "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/console" "25.5.0" + "@jest/environment" "25.5.0" + "@jest/globals" "25.5.2" + "@jest/source-map" "25.5.0" + "@jest/test-result" "25.5.0" + "@jest/transform" "25.5.1" + "@jest/types" "25.5.0" + "@types/yargs" "15.0.12" + "chalk" "3.0.0" + "collect-v8-coverage" "1.0.1" + "exit" "0.1.2" + "glob" "7.1.6" + "graceful-fs" "4.2.4" + "jest-config" "25.5.4" + "jest-haste-map" "25.5.1" + "jest-message-util" "25.5.0" + "jest-mock" "25.5.0" + "jest-regex-util" "25.2.6" + "jest-resolve" "25.5.1" + "jest-snapshot" "25.5.1" + "jest-util" "25.5.0" + "jest-validate" "25.5.0" + "realpath-native" "2.0.0" + "slash" "3.0.0" + "strip-bom" "4.0.0" + "yargs" "15.4.1" + +"jest-serializer@24.9.0": + "integrity" "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==" + "resolved" "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz" + "version" "24.9.0" + +"jest-serializer@25.5.0": + "integrity" "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==" + "resolved" "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "graceful-fs" "4.2.4" + +"jest-snapshot@25.5.1": + "integrity" "sha512-C02JE1TUe64p2v1auUJ2ze5vcuv32tkv9PyhEb318e8XOKF7MOyXdJ7kdjbvrp3ChPLU2usI7Rjxs97Dj5P0uQ==" + "resolved" "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.5.1.tgz" + "version" "25.5.1" + dependencies: + "@babel/types" "7.12.12" + "@jest/types" "25.5.0" + "@types/prettier" "1.19.1" + "chalk" "3.0.0" + "expect" "25.5.0" + "graceful-fs" "4.2.4" + "jest-diff" "25.5.0" + "jest-get-type" "25.2.6" + "jest-matcher-utils" "25.5.0" + "jest-message-util" "25.5.0" + "jest-resolve" "25.5.1" + "make-dir" "3.1.0" + "natural-compare" "1.4.0" + "pretty-format" "25.5.0" + "semver" "6.3.0" + +"jest-util@24.9.0": + "integrity" "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==" + "resolved" "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/console" "24.9.0" + "@jest/fake-timers" "24.9.0" + "@jest/source-map" "24.9.0" + "@jest/test-result" "24.9.0" + "@jest/types" "24.9.0" + "callsites" "3.1.0" + "chalk" "2.4.2" + "graceful-fs" "4.2.4" + "is-ci" "2.0.0" + "mkdirp" "0.5.5" + "slash" "2.0.0" + "source-map" "0.6.1" + +"jest-util@25.5.0": + "integrity" "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==" + "resolved" "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "chalk" "3.0.0" + "graceful-fs" "4.2.4" + "is-ci" "2.0.0" + "make-dir" "3.1.0" + +"jest-validate@24.9.0": + "integrity" "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==" + "resolved" "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/types" "24.9.0" + "camelcase" "5.3.1" + "chalk" "2.4.2" + "jest-get-type" "24.9.0" + "leven" "3.1.0" + "pretty-format" "24.9.0" + +"jest-validate@25.5.0": + "integrity" "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==" + "resolved" "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "camelcase" "5.3.1" + "chalk" "3.0.0" + "jest-get-type" "25.2.6" + "leven" "3.1.0" + "pretty-format" "25.5.0" + +"jest-watcher@25.5.0": + "integrity" "sha512-XrSfJnVASEl+5+bb51V0Q7WQx65dTSk7NL4yDdVjPnRNpM0hG+ncFmDYJo9O8jaSRcAitVbuVawyXCRoxGrT5Q==" + "resolved" "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/test-result" "25.5.0" + "@jest/types" "25.5.0" + "ansi-escapes" "4.3.1" + "chalk" "3.0.0" + "jest-util" "25.5.0" + "string-length" "3.1.0" + +"jest-worker@24.9.0": + "integrity" "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==" + "resolved" "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "merge-stream" "2.0.0" + "supports-color" "6.1.0" + +"jest-worker@25.5.0": + "integrity" "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==" + "resolved" "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "merge-stream" "2.0.0" + "supports-color" "7.2.0" + +"jest@^25.1.0": + "integrity" "sha512-hHFJROBTqZahnO+X+PMtT6G2/ztqAZJveGqz//FnWWHurizkD05PQGzRZOhF3XP6z7SJmL+5tCfW8qV06JypwQ==" + "resolved" "https://registry.npmjs.org/jest/-/jest-25.5.4.tgz" + "version" "25.5.4" + dependencies: + "@jest/core" "25.5.4" + "import-local" "3.0.2" + "jest-cli" "25.5.4" + +"jetifier@1.6.6": + "integrity" "sha512-JNAkmPeB/GS2tCRqUzRPsTOHpGDah7xP18vGJfIjZC+W2sxEHbxgJxetIjIqhjQ3yYbYNEELkM/spKLtwoOSUQ==" + "resolved" "https://registry.npmjs.org/jetifier/-/jetifier-1.6.6.tgz" + "version" "1.6.6" + +"js-tokens@3.0.2": + "integrity" "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz" + "version" "3.0.2" + +"js-tokens@4.0.0": + "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + "version" "4.0.0" + +"js-yaml@3.14.1": + "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" + "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + "version" "3.14.1" + dependencies: + "argparse" "1.0.10" + "esprima" "4.0.1" + +"jsbn@0.1.1": + "integrity" "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + "resolved" "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" + "version" "0.1.1" + +"jsc-android@245459.0.0": + "integrity" "sha512-wkjURqwaB1daNkDi2OYYbsLnIdC/lUM2nPXQKRs5pqEU9chDg435bjvo+LSaHotDENygHQDHe+ntUkkw2gwMtg==" + "resolved" "https://registry.npmjs.org/jsc-android/-/jsc-android-245459.0.0.tgz" + "version" "245459.0.0" + +"jsdom@15.2.1": + "integrity" "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==" + "resolved" "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz" + "version" "15.2.1" + dependencies: + "abab" "2.0.5" + "acorn" "7.4.1" + "acorn-globals" "4.3.4" + "array-equal" "1.0.0" + "cssom" "0.4.4" + "cssstyle" "2.3.0" + "data-urls" "1.1.0" + "domexception" "1.0.1" + "escodegen" "1.14.3" + "html-encoding-sniffer" "1.0.2" + "nwsapi" "2.2.0" + "parse5" "5.1.0" + "pn" "1.1.0" + "request" "2.88.2" + "request-promise-native" "1.0.9" + "saxes" "3.1.11" + "symbol-tree" "3.2.4" + "tough-cookie" "3.0.1" + "w3c-hr-time" "1.0.2" + "w3c-xmlserializer" "1.1.2" + "webidl-conversions" "4.0.2" + "whatwg-encoding" "1.0.5" + "whatwg-mimetype" "2.3.0" + "whatwg-url" "7.1.0" + "ws" "7.4.2" + "xml-name-validator" "3.0.0" + +"jsesc@^1.3.0": + "integrity" "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + "resolved" "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz" + "version" "1.3.0" + +"jsesc@0.5.0": + "integrity" "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" + "resolved" "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" + "version" "0.5.0" + +"jsesc@2.5.2": + "integrity" "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + "resolved" "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" + "version" "2.5.2" + +"json-parse-better-errors@1.0.2": + "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + "resolved" "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" + "version" "1.0.2" + +"json-parse-even-better-errors@2.3.1": + "integrity" "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "resolved" "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" + "version" "2.3.1" + +"json-schema-traverse@0.4.1": + "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + "version" "0.4.1" + +"json-schema@0.2.3": + "integrity" "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + "resolved" "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz" + "version" "0.2.3" + +"json-stable-stringify-without-jsonify@1.0.1": + "integrity" "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + "version" "1.0.1" + +"json-stable-stringify@1.0.1": + "integrity" "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=" + "resolved" "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "jsonify" "0.0.0" + +"json-stringify-safe@5.0.1": + "integrity" "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + "resolved" "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" + "version" "5.0.1" + +"json5@^0.5.1": + "integrity" "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + "resolved" "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz" + "version" "0.5.1" + +"json5@2.1.3": + "integrity" "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==" + "resolved" "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz" + "version" "2.1.3" + dependencies: + "minimist" "1.2.5" + +"jsonfile@2.4.0": + "integrity" "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=" + "resolved" "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz" + "version" "2.4.0" + dependencies: + "graceful-fs" "4.2.4" + +"jsonfile@4.0.0": + "integrity" "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=" + "resolved" "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "graceful-fs" "4.2.4" + +"jsonify@0.0.0": + "integrity" "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + "resolved" "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" + "version" "0.0.0" + +"jsprim@1.4.1": + "integrity" "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=" + "resolved" "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz" + "version" "1.4.1" + dependencies: + "assert-plus" "1.0.0" + "extsprintf" "1.3.0" + "json-schema" "0.2.3" + "verror" "1.10.0" + +"jsx-ast-utils@2.4.1": + "integrity" "sha512-z1xSldJ6imESSzOjd3NNkieVJKRlKYSOtMG8SFyCj2FIrvSaSuli/WjpBkEzCBoR9bYYYFgqJw61Xhu7Lcgk+w==" + "resolved" "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz" + "version" "2.4.1" + dependencies: + "array-includes" "3.1.2" + "object.assign" "4.1.2" + +"kind-of@1.1.0": + "integrity" "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=" + "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz" + "version" "1.1.0" + +"kind-of@3.2.2": + "integrity" "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=" + "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" + "version" "3.2.2" + dependencies: + "is-buffer" "1.1.6" + +"kind-of@4.0.0": + "integrity" "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=" + "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "is-buffer" "1.1.6" + +"kind-of@5.1.0": + "integrity" "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" + "version" "5.1.0" + +"kind-of@6.0.3": + "integrity" "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" + "version" "6.0.3" + +"klaw@1.3.1": + "integrity" "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=" + "resolved" "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "graceful-fs" "4.2.4" + +"kleur@3.0.3": + "integrity" "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" + "resolved" "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" + "version" "3.0.3" + +"leven@3.1.0": + "integrity" "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==" + "resolved" "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" + "version" "3.1.0" + +"levn@0.3.0": + "integrity" "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=" + "resolved" "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" + "version" "0.3.0" + dependencies: + "prelude-ls" "1.1.2" + "type-check" "0.3.2" + +"lines-and-columns@1.1.6": + "integrity" "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + "resolved" "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz" + "version" "1.1.6" + +"locate-path@3.0.0": + "integrity" "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-locate" "3.0.0" + "path-exists" "3.0.0" + +"locate-path@5.0.0": + "integrity" "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "p-locate" "4.1.0" + +"lodash._reinterpolate@3.0.0": + "integrity" "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" + "resolved" "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz" + "version" "3.0.0" + +"lodash.compact@3.0.1": + "integrity" "sha1-VAzjg3dFl1gHRx4WtKK6IeclbKU=" + "resolved" "https://registry.npmjs.org/lodash.compact/-/lodash.compact-3.0.1.tgz" + "version" "3.0.1" + +"lodash.every@4.6.0": + "integrity" "sha1-64mYS+vENkJ5uzrvu9HKGb+mxqc=" + "resolved" "https://registry.npmjs.org/lodash.every/-/lodash.every-4.6.0.tgz" + "version" "4.6.0" + +"lodash.frompairs@4.0.1": + "integrity" "sha1-vE5SB/onV8E25XNhTpZkUGsrG9I=" + "resolved" "https://registry.npmjs.org/lodash.frompairs/-/lodash.frompairs-4.0.1.tgz" + "version" "4.0.1" + +"lodash.isequal@^4.5.0", "lodash.isequal@4.5.0": + "integrity" "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + "resolved" "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz" + "version" "4.5.0" + +"lodash.isstring@4.0.1": + "integrity" "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + "resolved" "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" + "version" "4.0.1" + +"lodash.omit@4.5.0": + "integrity" "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=" + "resolved" "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz" + "version" "4.5.0" + +"lodash.pick@4.4.0": + "integrity" "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + "resolved" "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz" + "version" "4.4.0" + +"lodash.sortby@4.7.0": + "integrity" "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" + "resolved" "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz" + "version" "4.7.0" + +"lodash.template@4.5.0": + "integrity" "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==" + "resolved" "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz" + "version" "4.5.0" + dependencies: + "lodash._reinterpolate" "3.0.0" + "lodash.templatesettings" "4.2.0" + +"lodash.templatesettings@4.2.0": + "integrity" "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==" + "resolved" "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "lodash._reinterpolate" "3.0.0" + +"lodash.throttle@4.1.1": + "integrity" "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + "resolved" "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz" + "version" "4.1.1" + +"lodash.values@4.3.0": + "integrity" "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=" + "resolved" "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz" + "version" "4.3.0" + +"lodash@^4.17.15", "lodash@^4.17.20", "lodash@^4.17.4", "lodash@4.17.20": + "integrity" "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz" + "version" "4.17.20" + +"lodash@3.10.1": + "integrity" "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" + "resolved" "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz" + "version" "3.10.1" + +"log-symbols@2.2.0": + "integrity" "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==" + "resolved" "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "chalk" "2.4.2" + +"logkitty@0.7.1": + "integrity" "sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==" + "resolved" "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz" + "version" "0.7.1" + dependencies: + "ansi-fragments" "0.2.1" + "dayjs" "1.10.3" + "yargs" "15.4.1" + +"lolex@5.1.2": + "integrity" "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==" + "resolved" "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "@sinonjs/commons" "1.8.2" + +"loose-envify@1.4.0": + "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" + "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "js-tokens" "4.0.0" + +"lottie-ios@^3.2.3": + "integrity" "sha512-mubYMN6+1HXa8z3EJKBvNBkl4UoVM4McjESeB2PgvRMSngmJtC5yUMRdhbbrIAn5Liu3hFGao/14s5hQIgtkRQ==" + "resolved" "https://registry.npmjs.org/lottie-ios/-/lottie-ios-3.2.3.tgz" + "version" "3.2.3" + +"lottie-react-native@^4.0.3": + "integrity" "sha512-cmMt/HEwTTzF3PQcE4VVl7jpBYC9cZD9pGz7ZLxYV13e5jWBvMCFKsQYHlYAo69fjXZ2YCum1AqEuez6kSbmCA==" + "resolved" "https://registry.npmjs.org/lottie-react-native/-/lottie-react-native-4.0.3.tgz" + "version" "4.0.3" + dependencies: + "invariant" "^2.2.2" + "prop-types" "^15.5.10" + "react-native-safe-modules" "^1.0.3" + +"lru-cache@4.1.5": + "integrity" "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz" + "version" "4.1.5" + dependencies: + "pseudomap" "1.0.2" + "yallist" "2.1.2" + +"lru-cache@5.1.1": + "integrity" "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "yallist" "3.1.1" + +"lru-cache@6.0.0": + "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "yallist" "4.0.0" + +"make-dir@2.1.0": + "integrity" "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==" + "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "pify" "4.0.1" + "semver" "5.7.1" + +"make-dir@3.1.0": + "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" + "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "semver" "6.3.0" + +"makeerror@1.0.11": + "integrity" "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=" + "resolved" "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz" + "version" "1.0.11" + dependencies: + "tmpl" "1.0.4" + +"map-cache@0.2.2": + "integrity" "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + "resolved" "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" + "version" "0.2.2" + +"map-visit@1.0.0": + "integrity" "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=" + "resolved" "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "object-visit" "1.0.1" + +"mdn-data@2.0.14": + "integrity" "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + "resolved" "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz" + "version" "2.0.14" + +"merge-stream@1.0.1": + "integrity" "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=" + "resolved" "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "readable-stream" "2.3.7" + +"merge-stream@2.0.0": + "integrity" "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + "resolved" "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" + "version" "2.0.0" + +"methods@1.1.2": + "integrity" "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "resolved" "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" + "version" "1.1.2" + +"metro-babel-register@0.58.0": + "integrity" "sha512-P5+G3ufhSYL6cA3a7xkbSJzzFBvtivj/PhWvGXFXnuFssDlMAX1CTktff+0gpka5Cd6B6QLt0UAMWulUAAE4Eg==" + "resolved" "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/core" "7.12.10" + "@babel/plugin-proposal-class-properties" "7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "7.12.1" + "@babel/plugin-proposal-object-rest-spread" "7.12.1" + "@babel/plugin-proposal-optional-catch-binding" "7.12.1" + "@babel/plugin-proposal-optional-chaining" "7.12.7" + "@babel/plugin-transform-async-to-generator" "7.12.1" + "@babel/plugin-transform-flow-strip-types" "7.12.10" + "@babel/plugin-transform-modules-commonjs" "7.12.1" + "@babel/register" "7.12.10" + "core-js" "2.6.12" + "escape-string-regexp" "1.0.5" + +"metro-babel-register@0.59.0": + "integrity" "sha512-JtWc29erdsXO/V3loenXKw+aHUXgj7lt0QPaZKPpctLLy8kcEpI/8pfXXgVK9weXICCpCnYtYncIosAyzh0xjg==" + "resolved" "https://registry.npmjs.org/metro-babel-register/-/metro-babel-register-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "@babel/core" "7.12.10" + "@babel/plugin-proposal-class-properties" "7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "7.12.1" + "@babel/plugin-proposal-optional-chaining" "7.12.7" + "@babel/plugin-transform-flow-strip-types" "7.12.10" + "@babel/plugin-transform-modules-commonjs" "7.12.1" + "@babel/register" "7.12.10" + "escape-string-regexp" "1.0.5" + +"metro-babel-transformer@0.58.0": + "integrity" "sha512-yBX3BkRhw2TCNPhe+pmLSgsAEA3huMvnX08UwjFqSXXI1aiqzRQobn92uKd1U5MM1Vx8EtXVomlJb95ZHNAv6A==" + "resolved" "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/core" "7.12.10" + "metro-source-map" "0.58.0" + +"metro-babel-transformer@0.59.0": + "integrity" "sha512-fdZJl8rs54GVFXokxRdD7ZrQ1TJjxWzOi/xSP25VR3E8tbm3nBZqS+/ylu643qSr/IueABR+jrlqAyACwGEf6w==" + "resolved" "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "@babel/core" "7.12.10" + "metro-source-map" "0.59.0" + +"metro-cache@0.58.0": + "integrity" "sha512-jjW9zCTKxhgKcVkyQ6LHyna9Zdf4TK/45vvT1fPyyTk1RY82ZYjU1qs+84ycKEd08Ka4YcK9xcUew9SIDJYI8Q==" + "resolved" "https://registry.npmjs.org/metro-cache/-/metro-cache-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "jest-serializer" "24.9.0" + "metro-core" "0.58.0" + "mkdirp" "0.5.5" + "rimraf" "2.7.1" + +"metro-config@0.58.0": + "integrity" "sha512-4vgBliXwL56vjUlYplvGMVSNrJJpkHuLcD+O20trV3FvPxKg4ZsvuOcNSxqDSMU26FCtIEJ15ojcuCbRL7KY0w==" + "resolved" "https://registry.npmjs.org/metro-config/-/metro-config-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "cosmiconfig" "5.2.1" + "jest-validate" "24.9.0" + "metro" "0.58.0" + "metro-cache" "0.58.0" + "metro-core" "0.58.0" + "pretty-format" "24.9.0" + +"metro-core@0.58.0": + "integrity" "sha512-RzXUjGFmCLOyzUqcKDvr91AldGtIOxnzNZrWUIiG8uC3kerVLo0mQp4YH3+XVm6fMNiLMg6iER7HLqD+MbpUjQ==" + "resolved" "https://registry.npmjs.org/metro-core/-/metro-core-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "jest-haste-map" "24.9.0" + "lodash.throttle" "4.1.1" + "metro-resolver" "0.58.0" + "wordwrap" "1.0.0" + +"metro-inspector-proxy@0.58.0": + "integrity" "sha512-oFqTyNTJdCdvcw1Ha6SKE7ITbSaoTbO4xpYownIoJR+WZ0ZfxbWpp225JkHuBJm9UcBAnG9c0CME924m3uBbaw==" + "resolved" "https://registry.npmjs.org/metro-inspector-proxy/-/metro-inspector-proxy-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "connect" "3.7.0" + "debug" "2.6.9" + "rxjs" "5.5.12" + "ws" "1.1.5" + "yargs" "14.2.3" + +"metro-minify-uglify@0.58.0": + "integrity" "sha512-vRHsA7bCi7eCn3LXLm20EfY2NoWDyYOnmWaq/N8LB0OxL2L5DXRqMYAQK+prWGJ5S1yvVnDuuNVP+peQ9851TA==" + "resolved" "https://registry.npmjs.org/metro-minify-uglify/-/metro-minify-uglify-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "uglify-es" "3.3.9" + +"metro-react-native-babel-preset@^0.59.0", "metro-react-native-babel-preset@0.59.0": + "integrity" "sha512-BoO6ncPfceIDReIH8pQ5tQptcGo5yRWQXJGVXfANbiKLq4tfgdZB1C1e2rMUJ6iypmeJU9dzl+EhPmIFKtgREg==" + "resolved" "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "@babel/plugin-proposal-class-properties" "7.12.1" + "@babel/plugin-proposal-export-default-from" "7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "7.12.1" + "@babel/plugin-proposal-object-rest-spread" "7.12.1" + "@babel/plugin-proposal-optional-catch-binding" "7.12.1" + "@babel/plugin-proposal-optional-chaining" "7.12.7" + "@babel/plugin-syntax-dynamic-import" "7.8.3" + "@babel/plugin-syntax-export-default-from" "7.12.1" + "@babel/plugin-syntax-flow" "7.12.1" + "@babel/plugin-syntax-nullish-coalescing-operator" "7.8.3" + "@babel/plugin-syntax-optional-chaining" "7.8.3" + "@babel/plugin-transform-arrow-functions" "7.12.1" + "@babel/plugin-transform-block-scoping" "7.12.12" + "@babel/plugin-transform-classes" "7.12.1" + "@babel/plugin-transform-computed-properties" "7.12.1" + "@babel/plugin-transform-destructuring" "7.12.1" + "@babel/plugin-transform-exponentiation-operator" "7.12.1" + "@babel/plugin-transform-flow-strip-types" "7.12.10" + "@babel/plugin-transform-for-of" "7.12.1" + "@babel/plugin-transform-function-name" "7.12.1" + "@babel/plugin-transform-literals" "7.12.1" + "@babel/plugin-transform-modules-commonjs" "7.12.1" + "@babel/plugin-transform-object-assign" "7.12.1" + "@babel/plugin-transform-parameters" "7.12.1" + "@babel/plugin-transform-react-display-name" "7.12.1" + "@babel/plugin-transform-react-jsx" "7.12.12" + "@babel/plugin-transform-react-jsx-self" "7.12.1" + "@babel/plugin-transform-react-jsx-source" "7.12.1" + "@babel/plugin-transform-regenerator" "7.12.1" + "@babel/plugin-transform-runtime" "7.12.10" + "@babel/plugin-transform-shorthand-properties" "7.12.1" + "@babel/plugin-transform-spread" "7.12.1" + "@babel/plugin-transform-sticky-regex" "7.12.7" + "@babel/plugin-transform-template-literals" "7.12.1" + "@babel/plugin-transform-typescript" "7.12.1" + "@babel/plugin-transform-unicode-regex" "7.12.1" + "@babel/template" "7.12.7" + "react-refresh" "0.4.3" + +"metro-react-native-babel-preset@0.58.0": + "integrity" "sha512-MRriNW+fF6jxABsgPphocUY6mIhmCm8idcrQZ58fT3Iti2vCdtkaK32TyCGUNUptzhUe2/cbE57j4aC+eaodAA==" + "resolved" "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/plugin-proposal-class-properties" "7.12.1" + "@babel/plugin-proposal-export-default-from" "7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "7.12.1" + "@babel/plugin-proposal-object-rest-spread" "7.12.1" + "@babel/plugin-proposal-optional-catch-binding" "7.12.1" + "@babel/plugin-proposal-optional-chaining" "7.12.7" + "@babel/plugin-syntax-dynamic-import" "7.8.3" + "@babel/plugin-syntax-export-default-from" "7.12.1" + "@babel/plugin-syntax-flow" "7.12.1" + "@babel/plugin-transform-arrow-functions" "7.12.1" + "@babel/plugin-transform-block-scoping" "7.12.12" + "@babel/plugin-transform-classes" "7.12.1" + "@babel/plugin-transform-computed-properties" "7.12.1" + "@babel/plugin-transform-destructuring" "7.12.1" + "@babel/plugin-transform-exponentiation-operator" "7.12.1" + "@babel/plugin-transform-flow-strip-types" "7.12.10" + "@babel/plugin-transform-for-of" "7.12.1" + "@babel/plugin-transform-function-name" "7.12.1" + "@babel/plugin-transform-literals" "7.12.1" + "@babel/plugin-transform-modules-commonjs" "7.12.1" + "@babel/plugin-transform-object-assign" "7.12.1" + "@babel/plugin-transform-parameters" "7.12.1" + "@babel/plugin-transform-react-display-name" "7.12.1" + "@babel/plugin-transform-react-jsx" "7.12.12" + "@babel/plugin-transform-react-jsx-source" "7.12.1" + "@babel/plugin-transform-regenerator" "7.12.1" + "@babel/plugin-transform-runtime" "7.12.10" + "@babel/plugin-transform-shorthand-properties" "7.12.1" + "@babel/plugin-transform-spread" "7.12.1" + "@babel/plugin-transform-sticky-regex" "7.12.7" + "@babel/plugin-transform-template-literals" "7.12.1" + "@babel/plugin-transform-typescript" "7.12.1" + "@babel/plugin-transform-unicode-regex" "7.12.1" + "@babel/template" "7.12.7" + "react-refresh" "0.4.3" + +"metro-react-native-babel-transformer@0.58.0": + "integrity" "sha512-3A73+cRq1eUPQ8g+hPNGgMUMCGmtQjwqHfoG1DwinAoJ/kr4WOXWWbGZo0xHJNBe/zdHGl0uHcDCp2knPglTdQ==" + "resolved" "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/core" "7.12.10" + "babel-preset-fbjs" "3.3.0" + "metro-babel-transformer" "0.58.0" + "metro-react-native-babel-preset" "0.58.0" + "metro-source-map" "0.58.0" + +"metro-react-native-babel-transformer@0.59.0": + "integrity" "sha512-1O3wrnMq4NcPQ1asEcl9lRDn/t+F1Oef6S9WaYVIKEhg9m/EQRGVrrTVP+R6B5Eeaj3+zNKbzM8Dx/NWy1hUbQ==" + "resolved" "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "@babel/core" "7.12.10" + "babel-preset-fbjs" "3.3.0" + "metro-babel-transformer" "0.59.0" + "metro-react-native-babel-preset" "0.59.0" + "metro-source-map" "0.59.0" + +"metro-resolver@0.58.0": + "integrity" "sha512-XFbAKvCHN2iWqKeiRARzEXn69eTDdJVJC7lu16S4dPQJ+Dy82dZBr5Es12iN+NmbJuFgrAuIHbpWrdnA9tOf6Q==" + "resolved" "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "absolute-path" "0.0.0" + +"metro-source-map@0.58.0": + "integrity" "sha512-yvN1YPmejmgiiS7T1aKBiiUTHPw2Vcm3r2TZ+DY92z/9PR4alysIywrCs/fTHs8rbDcKM5VfPCKGLpkBrbKeOw==" + "resolved" "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "invariant" "2.2.4" + "metro-symbolicate" "0.58.0" + "ob1" "0.58.0" + "source-map" "0.5.7" + "vlq" "1.0.1" + +"metro-source-map@0.59.0": + "integrity" "sha512-0w5CmCM+ybSqXIjqU4RiK40t4bvANL6lafabQ2GP2XD3vSwkLY+StWzCtsb4mPuyi9R/SgoLBel+ZOXHXAH0eQ==" + "resolved" "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "invariant" "2.2.4" + "metro-symbolicate" "0.59.0" + "ob1" "0.59.0" + "source-map" "0.5.7" + "vlq" "1.0.1" + +"metro-symbolicate@0.58.0": + "integrity" "sha512-uIVxUQC1E26qOMj13dKROhwAa2FmZk5eR0NcBqej/aXmQhpr8LjJg2sondkoLKUp827Tf/Fm9+pS4icb5XiqCw==" + "resolved" "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "invariant" "2.2.4" + "metro-source-map" "0.58.0" + "source-map" "0.5.7" + "through2" "2.0.5" + "vlq" "1.0.1" + +"metro-symbolicate@0.59.0": + "integrity" "sha512-asLaF2A7rndrToGFIknL13aiohwPJ95RKHf0NM3hP/nipiLDoMzXT6ZnQvBqDxkUKyP+51AI75DMtb+Wcyw4Bw==" + "resolved" "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.59.0.tgz" + "version" "0.59.0" + dependencies: + "invariant" "2.2.4" + "metro-source-map" "0.59.0" + "source-map" "0.5.7" + "through2" "2.0.5" + "vlq" "1.0.1" + +"metro@0.58.0": + "integrity" "sha512-yi/REXX+/s4r7RjzXht+E+qE6nzvFIrEXO5Q61h+70Q7RODMU8EnlpXx04JYk7DevHuMhFaX+NWhCtRINzR4zA==" + "resolved" "https://registry.npmjs.org/metro/-/metro-0.58.0.tgz" + "version" "0.58.0" + dependencies: + "@babel/code-frame" "7.12.11" + "@babel/core" "7.12.10" + "@babel/generator" "7.12.11" + "@babel/parser" "7.12.11" + "@babel/plugin-external-helpers" "7.12.1" + "@babel/template" "7.12.7" + "@babel/traverse" "7.12.12" + "@babel/types" "7.12.12" + "absolute-path" "0.0.0" + "async" "2.6.3" + "babel-preset-fbjs" "3.3.0" + "buffer-crc32" "0.2.13" + "chalk" "2.4.2" + "ci-info" "2.0.0" + "concat-stream" "1.6.2" + "connect" "3.7.0" + "debug" "2.6.9" + "denodeify" "1.2.1" + "eventemitter3" "3.1.2" + "fbjs" "1.0.0" + "fs-extra" "1.0.0" + "graceful-fs" "4.2.4" + "image-size" "0.6.3" + "invariant" "2.2.4" + "jest-haste-map" "24.9.0" + "jest-worker" "24.9.0" + "json-stable-stringify" "1.0.1" + "lodash.throttle" "4.1.1" + "merge-stream" "1.0.1" + "metro-babel-register" "0.58.0" + "metro-babel-transformer" "0.58.0" + "metro-cache" "0.58.0" + "metro-config" "0.58.0" + "metro-core" "0.58.0" + "metro-inspector-proxy" "0.58.0" + "metro-minify-uglify" "0.58.0" + "metro-react-native-babel-preset" "0.58.0" + "metro-resolver" "0.58.0" + "metro-source-map" "0.58.0" + "metro-symbolicate" "0.58.0" + "mime-types" "2.1.11" + "mkdirp" "0.5.5" + "node-fetch" "2.6.1" + "nullthrows" "1.1.1" + "resolve" "1.19.0" + "rimraf" "2.7.1" + "serialize-error" "2.1.0" + "source-map" "0.5.7" + "strip-ansi" "4.0.0" + "temp" "0.8.3" + "throat" "4.1.0" + "wordwrap" "1.0.0" + "write-file-atomic" "1.3.4" + "ws" "1.1.5" + "xpipe" "1.0.5" + "yargs" "14.2.3" + +"micromatch@3.1.10": + "integrity" "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==" + "resolved" "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" + "version" "3.1.10" + dependencies: + "arr-diff" "4.0.0" + "array-unique" "0.3.2" + "braces" "2.3.2" + "define-property" "2.0.2" + "extend-shallow" "3.0.2" + "extglob" "2.0.4" + "fragment-cache" "0.2.1" + "kind-of" "6.0.3" + "nanomatch" "1.2.13" + "object.pick" "1.3.0" + "regex-not" "1.0.2" + "snapdragon" "0.8.2" + "to-regex" "3.0.2" + +"micromatch@4.0.2": + "integrity" "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==" + "resolved" "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz" + "version" "4.0.2" + dependencies: + "braces" "3.0.2" + "picomatch" "2.2.2" + +"mime-db@1.23.0": + "integrity" "sha1-oxtAcK2uon1zLqMzdApk0OyaZlk=" + "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz" + "version" "1.23.0" + +"mime-db@1.45.0": + "integrity" "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==" + "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz" + "version" "1.45.0" + +"mime-types@2.1.11": + "integrity" "sha1-wlnEcb2oCKhdbNGTtDCl+uRHOzw=" + "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz" + "version" "2.1.11" + dependencies: + "mime-db" "1.23.0" + +"mime-types@2.1.28": + "integrity" "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==" + "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz" + "version" "2.1.28" + dependencies: + "mime-db" "1.45.0" + +"mime@1.6.0": + "integrity" "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "resolved" "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" + "version" "1.6.0" + +"mime@2.5.0": + "integrity" "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==" + "resolved" "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz" + "version" "2.5.0" + +"mime@2.5.2": + "integrity" "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + "resolved" "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz" + "version" "2.5.2" + +"mimic-fn@1.2.0": + "integrity" "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" + "resolved" "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz" + "version" "1.2.0" + +"mimic-fn@2.1.0": + "integrity" "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + "resolved" "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" + "version" "2.1.0" + +"minimatch@^3.0.4", "minimatch@3.0.4": + "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "brace-expansion" "1.1.11" + +"minimist@1.2.5": + "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" + "version" "1.2.5" + +"mixin-deep@1.3.2": + "integrity" "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==" + "resolved" "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz" + "version" "1.3.2" + dependencies: + "for-in" "1.0.2" + "is-extendable" "1.0.1" + +"mixin-object@2.0.1": + "integrity" "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=" + "resolved" "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "for-in" "0.1.8" + "is-extendable" "0.1.1" + +"mkdirp@^0.5.1", "mkdirp@0.5.5": + "integrity" "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==" + "resolved" "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz" + "version" "0.5.5" + dependencies: + "minimist" "1.2.5" + +"mobx-react-lite@2.2.2": + "integrity" "sha512-2SlXALHIkyUPDsV4VTKVR9DW7K3Ksh1aaIv3NrNJygTbhXe2A9GrcKHZ2ovIiOp/BXilOcTYemfHHZubP431dg==" + "resolved" "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-2.2.2.tgz" + "version" "2.2.2" + +"mobx-react@^6.2.2": + "integrity" "sha512-IOxdJGnRSNSJrL2uGpWO5w9JH5q5HoxEqwOF4gye1gmZYdjoYkkMzSGMDnRCUpN/BNzZcFoMdHXrjvkwO7KgaQ==" + "resolved" "https://registry.npmjs.org/mobx-react/-/mobx-react-6.3.1.tgz" + "version" "6.3.1" + dependencies: + "mobx-react-lite" "2.2.2" + +"mobx@^5.15.4": + "integrity" "sha512-wyM3FghTkhmC+hQjyPGGFdpehrcX1KOXsDuERhfK2YbJemkUhEB+6wzEN639T21onxlfYBmriA1PFnvxTUhcKw==" + "resolved" "https://registry.npmjs.org/mobx/-/mobx-5.15.7.tgz" + "version" "5.15.7" + +"moment@^2.29.1": + "integrity" "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + "resolved" "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz" + "version" "2.29.1" + +"ms@2.0.0": + "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + "version" "2.0.0" + +"ms@2.1.1": + "integrity" "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz" + "version" "2.1.1" + +"ms@2.1.2": + "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + "version" "2.1.2" + +"mute-stream@0.0.7": + "integrity" "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + "resolved" "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz" + "version" "0.0.7" + +"mute-stream@0.0.8": + "integrity" "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + "resolved" "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" + "version" "0.0.8" + +"nan@2.14.2": + "integrity" "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==" + "resolved" "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz" + "version" "2.14.2" + +"nanoid@3.1.20": + "integrity" "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==" + "resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz" + "version" "3.1.20" + +"nanomatch@1.2.13": + "integrity" "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==" + "resolved" "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" + "version" "1.2.13" + dependencies: + "arr-diff" "4.0.0" + "array-unique" "0.3.2" + "define-property" "2.0.2" + "extend-shallow" "3.0.2" + "fragment-cache" "0.2.1" + "is-windows" "1.0.2" + "kind-of" "6.0.3" + "object.pick" "1.3.0" + "regex-not" "1.0.2" + "snapdragon" "0.8.2" + "to-regex" "3.0.2" + +"natural-compare@1.4.0": + "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" + "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + "version" "1.4.0" + +"negotiator@0.6.2": + "integrity" "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + "resolved" "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz" + "version" "0.6.2" + +"netmask@2.0.2": + "integrity" "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==" + "resolved" "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz" + "version" "2.0.2" + +"nice-try@1.0.5": + "integrity" "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + "resolved" "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz" + "version" "1.0.5" + +"nocache@2.1.0": + "integrity" "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==" + "resolved" "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz" + "version" "2.1.0" + +"node-fetch@1.7.3": + "integrity" "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==" + "resolved" "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz" + "version" "1.7.3" + dependencies: + "encoding" "0.1.13" + "is-stream" "1.1.0" + +"node-fetch@2.6.1": + "integrity" "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + "resolved" "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz" + "version" "2.6.1" + +"node-int64@0.4.0": + "integrity" "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" + "resolved" "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" + "version" "0.4.0" + +"node-modules-regexp@1.0.0": + "integrity" "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=" + "resolved" "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz" + "version" "1.0.0" + +"node-notifier@6.0.0": + "integrity" "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==" + "resolved" "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "growly" "1.3.0" + "is-wsl" "2.2.0" + "semver" "6.3.0" + "shellwords" "0.1.1" + "which" "1.3.1" + +"node-stream-zip@1.12.0": + "integrity" "sha512-HZ3XehqShTFj9gHauRJ3Bri9eiCTOII7/crtXzURtT14NdnOFs9Ia5E82W7z3izVBNx760tqwddxrBJVG52Y1Q==" + "resolved" "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.12.0.tgz" + "version" "1.12.0" + +"normalize-package-data@2.5.0": + "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" + "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "hosted-git-info" "2.8.8" + "resolve" "1.19.0" + "semver" "5.7.1" + "validate-npm-package-license" "3.0.4" + +"normalize-path@2.1.1": + "integrity" "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=" + "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "remove-trailing-separator" "1.1.0" + +"normalize-path@3.0.0": + "integrity" "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" + "version" "3.0.0" + +"npm-run-path@2.0.2": + "integrity" "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=" + "resolved" "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "path-key" "2.0.1" + +"npm-run-path@4.0.1": + "integrity" "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==" + "resolved" "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "path-key" "3.1.1" + +"nth-check@^1.0.2": + "integrity" "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==" + "resolved" "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "boolbase" "~1.0.0" + +"nullthrows@1.1.1": + "integrity" "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==" + "resolved" "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz" + "version" "1.1.1" + +"nwsapi@2.2.0": + "integrity" "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==" + "resolved" "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz" + "version" "2.2.0" + +"oauth-sign@0.9.0": + "integrity" "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "resolved" "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz" + "version" "0.9.0" + +"ob1@0.58.0": + "integrity" "sha512-uZP44cbowAfHafP1k4skpWItk5iHCoRevMfrnUvYCfyNNPPJd3rfDCyj0exklWi2gDXvjlj2ObsfiqP/bs/J7Q==" + "resolved" "https://registry.npmjs.org/ob1/-/ob1-0.58.0.tgz" + "version" "0.58.0" + +"ob1@0.59.0": + "integrity" "sha512-opXMTxyWJ9m68ZglCxwo0OPRESIC/iGmKFPXEXzMZqsVIrgoRXOHmoMDkQzz4y3irVjbyPJRAh5pI9fd0MJTFQ==" + "resolved" "https://registry.npmjs.org/ob1/-/ob1-0.59.0.tgz" + "version" "0.59.0" + +"object-assign@4.1.1": + "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "version" "4.1.1" + +"object-copy@0.1.0": + "integrity" "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=" + "resolved" "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" + "version" "0.1.0" + dependencies: + "copy-descriptor" "0.1.1" + "define-property" "0.2.5" + "kind-of" "3.2.2" + +"object-inspect@1.9.0": + "integrity" "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==" + "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz" + "version" "1.9.0" + +"object-keys@1.1.1": + "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + "version" "1.1.1" + +"object-visit@1.0.1": + "integrity" "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=" + "resolved" "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "isobject" "3.0.1" + +"object.assign@4.1.2": + "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" + "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "has-symbols" "1.0.1" + "object-keys" "1.1.1" + +"object.entries@1.1.3": + "integrity" "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==" + "resolved" "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "es-abstract" "1.18.0-next.2" + "has" "1.0.3" + +"object.fromentries@2.0.3": + "integrity" "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==" + "resolved" "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz" + "version" "2.0.3" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "es-abstract" "1.18.0-next.2" + "has" "1.0.3" + +"object.pick@1.3.0": + "integrity" "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=" + "resolved" "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "isobject" "3.0.1" + +"object.values@1.1.2": + "integrity" "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==" + "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "es-abstract" "1.18.0-next.2" + "has" "1.0.3" + +"on-finished@2.3.0": + "integrity" "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=" + "resolved" "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "ee-first" "1.1.1" + +"on-headers@1.0.2": + "integrity" "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + "resolved" "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz" + "version" "1.0.2" + +"once@1.4.0": + "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" + "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "wrappy" "1.0.2" + +"onetime@2.0.1": + "integrity" "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=" + "resolved" "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "mimic-fn" "1.2.0" + +"onetime@5.1.2": + "integrity" "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==" + "resolved" "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "mimic-fn" "2.1.0" + +"open@6.4.0": + "integrity" "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==" + "resolved" "https://registry.npmjs.org/open/-/open-6.4.0.tgz" + "version" "6.4.0" + dependencies: + "is-wsl" "1.1.0" + +"opencollective-postinstall@^2.0.3", "opencollective-postinstall@2.0.3": + "integrity" "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==" + "resolved" "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz" + "version" "2.0.3" + +"optionator@0.8.3": + "integrity" "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==" + "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz" + "version" "0.8.3" + dependencies: + "deep-is" "0.1.3" + "fast-levenshtein" "2.0.6" + "levn" "0.3.0" + "prelude-ls" "1.1.2" + "type-check" "0.3.2" + "word-wrap" "1.2.3" + +"options@0.0.6": + "integrity" "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" + "resolved" "https://registry.npmjs.org/options/-/options-0.0.6.tgz" + "version" "0.0.6" + +"ora@3.4.0": + "integrity" "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==" + "resolved" "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz" + "version" "3.4.0" + dependencies: + "chalk" "2.4.2" + "cli-cursor" "2.1.0" + "cli-spinners" "2.5.0" + "log-symbols" "2.2.0" + "strip-ansi" "5.2.0" + "wcwidth" "1.0.1" + +"os-homedir@^1.0.0": + "integrity" "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + "resolved" "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" + "version" "1.0.2" + +"os-tmpdir@^1.0.1", "os-tmpdir@1.0.2": + "integrity" "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "resolved" "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" + "version" "1.0.2" + +"p-each-series@2.2.0": + "integrity" "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==" + "resolved" "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz" + "version" "2.2.0" + +"p-finally@1.0.0": + "integrity" "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + "resolved" "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" + "version" "1.0.0" + +"p-finally@2.0.1": + "integrity" "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==" + "resolved" "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz" + "version" "2.0.1" + +"p-limit@2.3.0": + "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "p-try" "2.2.0" + +"p-locate@3.0.0": + "integrity" "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-limit" "2.3.0" + +"p-locate@4.1.0": + "integrity" "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "p-limit" "2.3.0" + +"p-try@2.2.0": + "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + "version" "2.2.0" + +"pac-proxy-agent@4.1.0": + "integrity" "sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q==" + "resolved" "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "@tootallnate/once" "1.1.2" + "agent-base" "6.0.2" + "debug" "4.3.1" + "get-uri" "3.0.2" + "http-proxy-agent" "4.0.1" + "https-proxy-agent" "5.0.0" + "pac-resolver" "4.2.0" + "raw-body" "2.4.1" + "socks-proxy-agent" "5.0.0" + +"pac-resolver@4.2.0": + "integrity" "sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ==" + "resolved" "https://registry.npmjs.org/pac-resolver/-/pac-resolver-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "degenerator" "2.2.0" + "ip" "1.1.5" + "netmask" "2.0.2" + +"parent-module@1.0.1": + "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" + "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "callsites" "3.1.0" + +"parse-json@4.0.0": + "integrity" "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=" + "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "error-ex" "1.3.2" + "json-parse-better-errors" "1.0.2" + +"parse-json@5.2.0": + "integrity" "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==" + "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "@babel/code-frame" "7.12.11" + "error-ex" "1.3.2" + "json-parse-even-better-errors" "2.3.1" + "lines-and-columns" "1.1.6" + +"parse-node-version@1.0.1": + "integrity" "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==" + "resolved" "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz" + "version" "1.0.1" + +"parse5@5.1.0": + "integrity" "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==" + "resolved" "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz" + "version" "5.1.0" + +"parseurl@1.3.3": + "integrity" "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + "resolved" "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" + "version" "1.3.3" + +"pascalcase@0.1.1": + "integrity" "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + "resolved" "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" + "version" "0.1.1" + +"path-exists@3.0.0": + "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" + "version" "3.0.0" + +"path-exists@4.0.0": + "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + "version" "4.0.0" + +"path-is-absolute@^1.0.1", "path-is-absolute@1.0.1": + "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "version" "1.0.1" + +"path-key@2.0.1": + "integrity" "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + "resolved" "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" + "version" "2.0.1" + +"path-key@3.1.1": + "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + "version" "3.1.1" + +"path-parse@1.0.6": + "integrity" "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz" + "version" "1.0.6" + +"performance-now@2.1.0": + "integrity" "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + "resolved" "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz" + "version" "2.1.0" + +"picomatch@2.2.2": + "integrity" "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" + "resolved" "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz" + "version" "2.2.2" + +"pify@4.0.1": + "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + "resolved" "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" + "version" "4.0.1" + +"pirates@4.0.1": + "integrity" "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==" + "resolved" "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "node-modules-regexp" "1.0.0" + +"pkg-dir@3.0.0": + "integrity" "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==" + "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "find-up" "3.0.0" + +"pkg-dir@4.2.0": + "integrity" "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==" + "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "find-up" "4.1.0" + +"plist@3.0.1": + "integrity" "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==" + "resolved" "https://registry.npmjs.org/plist/-/plist-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "base64-js" "1.5.1" + "xmlbuilder" "9.0.7" + "xmldom" "0.1.31" + +"plist@3.0.2": + "integrity" "sha512-MSrkwZBdQ6YapHy87/8hDU8MnIcyxBKjeF+McXnr5A9MtffPewTs7G3hlpodT5TacyfIyFTaJEhh3GGcmasTgQ==" + "resolved" "https://registry.npmjs.org/plist/-/plist-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "base64-js" "1.5.1" + "xmlbuilder" "9.0.7" + "xmldom" "0.5.0" + +"plugin-error@0.1.2": + "integrity" "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=" + "resolved" "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz" + "version" "0.1.2" + dependencies: + "ansi-cyan" "0.1.1" + "ansi-red" "0.1.1" + "arr-diff" "1.1.0" + "arr-union" "2.1.0" + "extend-shallow" "1.1.4" + +"pn@1.1.0": + "integrity" "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==" + "resolved" "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz" + "version" "1.1.0" + +"posix-character-classes@0.1.1": + "integrity" "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + "resolved" "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" + "version" "0.1.1" + +"prelude-ls@1.1.2": + "integrity" "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" + "version" "1.1.2" + +"prettier-linter-helpers@1.0.0": + "integrity" "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==" + "resolved" "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "fast-diff" "1.2.0" + +"prettier@2.2.1": + "integrity" "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==" + "resolved" "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz" + "version" "2.2.1" + +"pretty-format@24.9.0": + "integrity" "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==" + "resolved" "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz" + "version" "24.9.0" + dependencies: + "@jest/types" "24.9.0" + "ansi-regex" "4.1.0" + "ansi-styles" "3.2.1" + "react-is" "16.13.1" + +"pretty-format@25.5.0": + "integrity" "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==" + "resolved" "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz" + "version" "25.5.0" + dependencies: + "@jest/types" "25.5.0" + "ansi-regex" "5.0.0" + "ansi-styles" "4.3.0" + "react-is" "16.13.1" + +"private@^0.1.8": + "integrity" "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + "resolved" "https://registry.npmjs.org/private/-/private-0.1.8.tgz" + "version" "0.1.8" + +"process-nextick-args@2.0.1": + "integrity" "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "resolved" "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" + "version" "2.0.1" + +"progress@2.0.3": + "integrity" "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" + "version" "2.0.3" + +"promise@7.3.1": + "integrity" "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==" + "resolved" "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz" + "version" "7.3.1" + dependencies: + "asap" "2.0.6" + +"promise@8.1.0": + "integrity" "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==" + "resolved" "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz" + "version" "8.1.0" + dependencies: + "asap" "2.0.6" + +"prompts@2.4.0": + "integrity" "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==" + "resolved" "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz" + "version" "2.4.0" + dependencies: + "kleur" "3.0.3" + "sisteransi" "1.0.5" + +"prop-types@^15.5.10", "prop-types@^15.6.0", "prop-types@^15.6.2", "prop-types@^15.7.2", "prop-types@15.7.2": + "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" + "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" + "version" "15.7.2" + dependencies: + "loose-envify" "1.4.0" + "object-assign" "4.1.1" + "react-is" "16.13.1" + +"proxy-agent@4.0.1": + "integrity" "sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA==" + "resolved" "https://registry.npmjs.org/proxy-agent/-/proxy-agent-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "agent-base" "6.0.2" + "debug" "4.3.1" + "http-proxy-agent" "4.0.1" + "https-proxy-agent" "5.0.0" + "lru-cache" "5.1.1" + "pac-proxy-agent" "4.1.0" + "proxy-from-env" "1.1.0" + "socks-proxy-agent" "5.0.0" + +"proxy-from-env@1.1.0": + "integrity" "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + "resolved" "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz" + "version" "1.1.0" + +"pseudomap@1.0.2": + "integrity" "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + "resolved" "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" + "version" "1.0.2" + +"psl@1.8.0": + "integrity" "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + "resolved" "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" + "version" "1.8.0" + +"pump@3.0.0": + "integrity" "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==" + "resolved" "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "end-of-stream" "1.4.4" + "once" "1.4.0" + +"punycode@2.1.1": + "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" + "version" "2.1.1" + +"qs@^6.9.4", "qs@6.9.6": + "integrity" "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" + "resolved" "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz" + "version" "6.9.6" + +"qs@6.5.2": + "integrity" "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "resolved" "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz" + "version" "6.5.2" + +"query-string@^6.13.7", "query-string@6.13.8": + "integrity" "sha512-jxJzQI2edQPE/NPUOusNjO/ZOGqr1o2OBa/3M00fU76FsLXDVbJDv/p7ng5OdQyorKrkRz1oqfwmbe5MAMePQg==" + "resolved" "https://registry.npmjs.org/query-string/-/query-string-6.13.8.tgz" + "version" "6.13.8" + dependencies: + "decode-uri-component" "0.2.0" + "split-on-first" "1.1.0" + "strict-uri-encode" "2.0.0" + +"querystringify@2.2.0": + "integrity" "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + "resolved" "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz" + "version" "2.2.0" + +"randombytes@2.1.0": + "integrity" "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==" + "resolved" "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "safe-buffer" "5.1.2" + +"range-parser@1.2.1": + "integrity" "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + "resolved" "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" + "version" "1.2.1" + +"raw-body@2.4.1": + "integrity" "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==" + "resolved" "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz" + "version" "2.4.1" + dependencies: + "bytes" "3.1.0" + "http-errors" "1.7.3" + "iconv-lite" "0.4.24" + "unpipe" "1.0.0" + +"react-devtools-core@4.10.1": + "integrity" "sha512-sXbBjGAWcf9HAblTP/zMtFhGHqxAfIR+GPxONZsSGN9FHnF4635dx1s2LdQWG9rJ+Ehr3nWg+BUAB6P78my5PA==" + "resolved" "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.10.1.tgz" + "version" "4.10.1" + dependencies: + "shell-quote" "1.6.1" + "ws" "7.4.2" + +"react-is@16.13.1": + "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + "version" "16.13.1" + +"react-native-animatable@1.3.3": + "integrity" "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==" + "resolved" "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz" + "version" "1.3.3" + dependencies: + "prop-types" "^15.7.2" + +"react-native-app-intro-slider@^4.0.4": + "integrity" "sha512-Zkjaol6X3BbZkHUpVDj2LjdidpS6rCgKi0fx80xgGKa0pHxBRd4swWTv2bHnnvu5k1/HXwYk0mY2TbK+2jHl5w==" + "resolved" "https://registry.npmjs.org/react-native-app-intro-slider/-/react-native-app-intro-slider-4.0.4.tgz" + "version" "4.0.4" + +"react-native-base64@^0.1.0": + "integrity" "sha512-BqqhMoP9bXBVlgi/PS9heOYxtfGU3mr1QSKdvHbcH/fxwocXZsp40JlfqoRonJBeAZhc07zgUpPhpTV2Qje/7Q==" + "resolved" "https://registry.npmjs.org/react-native-base64/-/react-native-base64-0.1.1.tgz" + "version" "0.1.1" + +"react-native-circular-progress@^1.3.7": + "integrity" "sha512-Lpe4Sb0Sdfdxopl6sEc3ooKnwlK5j1nKGq5lgi9UKDFKO6iBAszeH+PiUt6acGSRbKMH1av+9G9ni9r/6T0+nQ==" + "resolved" "https://registry.npmjs.org/react-native-circular-progress/-/react-native-circular-progress-1.3.7.tgz" + "version" "1.3.7" + dependencies: + "prop-types" "^15.7.2" + +"react-native-code-push@^7.0.1": + "integrity" "sha512-9NOVuTnaoQO6ZDJKCmPvqIZ36GkXePc+EZE1NkQ+Qtsh2KbHvfBFBrUaw5NmXSzrFNUwwoSFoPpeQzW/yt8CAA==" + "resolved" "https://registry.npmjs.org/react-native-code-push/-/react-native-code-push-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "code-push" "4.0.4" + "glob" "7.1.6" + "hoist-non-react-statics" "3.3.2" + "inquirer" "7.3.3" + "plist" "3.0.2" + "semver" "7.3.5" + "xcode" "3.0.1" + +"react-native-confirmation-code-field@^6.5.1": + "integrity" "sha512-CjNx0G6CnwNKasQBVQCNdHsZU+RCPMQENgns65inR7AoOS6wcTdA3cuiPtx7mZJ+Z44c+mj3568xrEZVpd9EUg==" + "resolved" "https://registry.npmjs.org/react-native-confirmation-code-field/-/react-native-confirmation-code-field-6.5.1.tgz" + "version" "6.5.1" + +"react-native-countdown-component@^2.7.1": + "integrity" "sha512-H7D/YvMjY1hCJf9xFrNh5CsIwkcel/Suno2gYR6ulWwoa2xnUgmltFWoMyEIODsUy7lIK1KCPm+Zn26QajbRaw==" + "resolved" "https://registry.npmjs.org/react-native-countdown-component/-/react-native-countdown-component-2.7.1.tgz" + "version" "2.7.1" + dependencies: + "lodash" "4.17.20" + "prop-types" "15.7.2" + "sprintf-js" "1.1.2" + +"react-native-credit-card-input@^0.4.1": + "integrity" "sha1-5i3Rqb7qtnh+U3O6I7k4Mcv1894=" + "resolved" "https://registry.npmjs.org/react-native-credit-card-input/-/react-native-credit-card-input-0.4.1.tgz" + "version" "0.4.1" + dependencies: + "card-validator" "3.0.1" + "lodash.compact" "3.0.1" + "lodash.every" "4.6.0" + "lodash.pick" "4.4.0" + "lodash.values" "4.3.0" + "prop-types" "15.7.2" + "react-native-flip-card" "3.5.6" + +"react-native-date-picker@^4.1.1": + "integrity" "sha512-2KzwFZoPNmGCgDFP8FrrtIBrKMEzTkLG5Zq68CbyUxG7aFPmeP7ik//lSB0gPwfO9TKQyKFVqTod5jTp0PTnbw==" + "resolved" "https://registry.npmjs.org/react-native-date-picker/-/react-native-date-picker-4.1.1.tgz" + "version" "4.1.1" + +"react-native-device-info@^8.4.8": + "integrity" "sha512-92676ZWHZHsPM/EW1ulgb2MuVfjYfMWRTWMbLcrCsipkcMaZ9Traz5mpsnCS7KZpsOksnvUinzDIjsct2XGc6Q==" + "resolved" "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-8.4.8.tgz" + "version" "8.4.8" + +"react-native-dialog@^8.2.0": + "integrity" "sha512-Unfx9curgyCfC6iHJwKVYgztKtE51A6x2pqI4RRt9SXqcurgCb6U6qe93cOY1Y2S7iRxNpgJkF3AS0QahKbPGQ==" + "resolved" "https://registry.npmjs.org/react-native-dialog/-/react-native-dialog-8.2.0.tgz" + "version" "8.2.0" + +"react-native-easy-guesture-responder@1.1.3": + "integrity" "sha512-/1yHMRcslMWQJc1iRNCSjJ32npPrY3Atme0lzKxmhYJg67E7Douowq2FalGEegdid8yeZVnPKk+BkyIGyx2dCw==" + "resolved" "https://registry.npmjs.org/react-native-easy-guesture-responder/-/react-native-easy-guesture-responder-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "prop-types" "15.7.2" + +"react-native-easy-toast@^1.2.0": + "integrity" "sha512-UtpxnRn1ME+035Uey4VR+9K0P4aVoTcWNOx5QkioWBe3LBKMPb/kZjrQ1LtvWzOyeGP4TeTUTtMX3IOPWv5MtA==" + "resolved" "https://registry.npmjs.org/react-native-easy-toast/-/react-native-easy-toast-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "prop-types" "15.7.2" + +"react-native-easy-view-transformer@1.2.0": + "integrity" "sha512-SawalQrXWQ6M5WOnWhTV8y3cyhRlrTgH2VC2+qPEk7GE10vLkH5/9ncM8lNjHKiXCgWrVk+0DI3pmEouDYd/GQ==" + "resolved" "https://registry.npmjs.org/react-native-easy-view-transformer/-/react-native-easy-view-transformer-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "prop-types" "15.7.2" + "react-native-easy-guesture-responder" "1.1.3" + "react-native-scrolling" "1.0.3" + +"react-native-elements@^3.4.2": + "integrity" "sha512-m0eAWOn7JuR1wNTNY0WHuaqst4LI/gFE4N5Bbyfsc4DiryWsMST7aAg5w/Gos4IexWIzhLKCIkPxthND1m/8Xg==" + "resolved" "https://registry.npmjs.org/react-native-elements/-/react-native-elements-3.4.2.tgz" + "version" "3.4.2" + dependencies: + "@types/react-native-vector-icons" "^6.4.6" + "color" "^3.1.2" + "deepmerge" "^4.2.2" + "hoist-non-react-statics" "^3.3.2" + "lodash.isequal" "^4.5.0" + "opencollective-postinstall" "^2.0.3" + "react-native-ratings" "8.0.4" + "react-native-size-matters" "^0.3.1" + +"react-native-fast-image@^8.3.4": + "integrity" "sha512-LpzAdjUphihUpVEBn5fEv5AILe55rHav0YiZroPZ1rumKDhAl4u2cG01ku2Pb7l8sayjTsNu7FuURAlXUUDsow==" + "resolved" "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.4.tgz" + "version" "8.3.4" + +"react-native-flip-card@3.5.6": + "integrity" "sha512-lqsjl4vF5DyHD7mjBJpyBoaLKVxalzoKfCosE63QF+TaCF9MKdJrxmGFQj/i64GDiMJqeS/5sNDcICUXtgFsVA==" + "resolved" "https://registry.npmjs.org/react-native-flip-card/-/react-native-flip-card-3.5.6.tgz" + "version" "3.5.6" + dependencies: + "prop-types" "15.7.2" + +"react-native-gallery-swiper@^1.26.4": + "integrity" "sha512-EK0c1g+ZIafEfZEtQyS774QitOk/fxZtuR1j+Eu+QjTtBu9NcbDvd7sc45KB+h0zmE+k1iAk5YPnSwYEXgVD+A==" + "resolved" "https://registry.npmjs.org/react-native-gallery-swiper/-/react-native-gallery-swiper-1.26.4.tgz" + "version" "1.26.4" + dependencies: + "prop-types" "15.7.2" + "react-native-easy-guesture-responder" "1.1.3" + "react-native-image-transformer" "1.5.1" + "react-native-page-list" "1.1.3" + +"react-native-general-statusbar@^1.0.1": + "integrity" "sha512-k6DfgKG6ZxB0HwEGtZiCBQ9CM9C+tE4lRPjRJ6KYuGQwfplGL025KvZZqwqy4/hIMl1hacrrbcUPisaHc0H1Sg==" + "resolved" "https://registry.npmjs.org/react-native-general-statusbar/-/react-native-general-statusbar-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "react-native-status-bar-height" "^2.4.0" + +"react-native-gesture-handler@^1.10.3", "react-native-gesture-handler@> 1.0.0": + "integrity" "sha512-cBGMi1IEsIVMgoox4RvMx7V2r6bNKw0uR1Mu1o7NbuHS6BRSVLq0dP34l2ecnPlC+jpWd3le6Yg1nrdCjby2Mw==" + "resolved" "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-1.10.3.tgz" + "version" "1.10.3" + dependencies: + "@egjs/hammerjs" "^2.0.17" + "fbjs" "^3.0.0" + "hoist-non-react-statics" "^3.3.0" + "invariant" "^2.2.4" + "prop-types" "^15.7.2" + +"react-native-htmlview@^0.16.0": + "integrity" "sha512-yUrzXje+kKKLkWkccKNBeg3CbvrodA7f4+1d/XRrrg0SDFfIdj7NnjRdH+WXqGze6R501bfRZOPaZx/M5HTz3A==" + "resolved" "https://registry.npmjs.org/react-native-htmlview/-/react-native-htmlview-0.16.0.tgz" + "version" "0.16.0" + dependencies: + "entities" "^1.1.1" + "htmlparser2-without-node-native" "^3.9.2" + +"react-native-image-picker@^3.2.1": + "integrity" "sha512-nOBZzYGmE5qZ8JBCvhWHQA+umYnQ8Jd3HGmgxBnmi0/82mU2nwCCnrzHsb29Q+DD7YasYr64rm8uWBBow8L5Fw==" + "resolved" "https://registry.npmjs.org/react-native-image-picker/-/react-native-image-picker-3.2.1.tgz" + "version" "3.2.1" + +"react-native-image-transformer@1.5.1": + "integrity" "sha512-CNwjnJxf4DUqQu+vWi/a+MA8jgw46ss80UKeSjoHwdzlt9JnGA6z4VABLURTFytN15LaemZomUEwZ81B9I8SuA==" + "resolved" "https://registry.npmjs.org/react-native-image-transformer/-/react-native-image-transformer-1.5.1.tgz" + "version" "1.5.1" + dependencies: + "prop-types" "15.7.2" + "react-native-easy-view-transformer" "1.2.0" + +"react-native-image-viewing@^0.2.0": + "integrity" "sha512-j2JXv86WRXGNme4LPsNCJ/2MgX+oVbmJ5ZLbGrYbKXcCPe9OshqlQI5L3SdbAxWu/F5pubcMaXp0zoYNaZVuzA==" + "resolved" "https://registry.npmjs.org/react-native-image-viewing/-/react-native-image-viewing-0.2.0.tgz" + "version" "0.2.0" + +"react-native-iphone-x-helper@1.3.1": + "integrity" "sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==" + "resolved" "https://registry.npmjs.org/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz" + "version" "1.3.1" + +"react-native-keyboard-aware-scroll-view@^0.9.3": + "integrity" "sha512-EDyFp8wAJoKvi1T2pzoPRn8R0Inp3G+575jPAWEFTlXq26URMmk8760rzde2XLW+v/1+QwDyBg6d/5mz63/ZRA==" + "resolved" "https://registry.npmjs.org/react-native-keyboard-aware-scroll-view/-/react-native-keyboard-aware-scroll-view-0.9.3.tgz" + "version" "0.9.3" + dependencies: + "prop-types" "15.7.2" + "react-native-iphone-x-helper" "1.3.1" + +"react-native-loading-spinner-overlay@^2.0.0": + "integrity" "sha512-V38M+N1Wk9GlpbfrD6znsJA1K2+09b3naxq3UjDjqNTA3MOBfj4W87alKSI3P+4ZawczQASTv2fTzhEQ7Z+SVA==" + "resolved" "https://registry.npmjs.org/react-native-loading-spinner-overlay/-/react-native-loading-spinner-overlay-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "prop-types" "15.7.2" + +"react-native-modal-datetime-picker@^10.2.0": + "integrity" "sha512-eMQb3EPqHx47WrlLPTrXvmLZDwGwGH//WTWiQBUvJ+6ehDeuTjIn8/v/ANv8wxCCrt4NeHem8FQY3Z5fa4fRgQ==" + "resolved" "https://registry.npmjs.org/react-native-modal-datetime-picker/-/react-native-modal-datetime-picker-10.2.0.tgz" + "version" "10.2.0" + dependencies: + "prop-types" "^15.7.2" + +"react-native-modal@^12.0.2": + "integrity" "sha512-UAQIqB3sg9b4LaQT3GY0JUtnXDonCzGv61JFQl9DZIBPgxrqoKmGtUcjBERu+xnBYJGogFFMyswQ8vLgAvh17w==" + "resolved" "https://registry.npmjs.org/react-native-modal/-/react-native-modal-12.0.2.tgz" + "version" "12.0.2" + dependencies: + "prop-types" "^15.6.2" + "react-native-animatable" "1.3.3" + +"react-native-modalize@^2.0.8": + "integrity" "sha512-OKdpFVExEe4YM2uFHL/aStS9p0JaC6gBupjaW1QVHkGq22T2ASYwkhDvTnMS8BLOLWPx2fC3xEBzOcn2rh7EYw==" + "resolved" "https://registry.npmjs.org/react-native-modalize/-/react-native-modalize-2.0.8.tgz" + "version" "2.0.8" + +"react-native-modals@^0.22.3": + "integrity" "sha512-tdjUfvgBhXFTt9p5kQcuAc1BS83H1yrD3p6hHL62LCnJl9rwUdiPlMX0Hmoeac5jw88FzmZv1M20wxgV8mh3ng==" + "resolved" "https://registry.npmjs.org/react-native-modals/-/react-native-modals-0.22.3.tgz" + "version" "0.22.3" + dependencies: + "babel-plugin-flow-react-proptypes" "^9.1.1" + "prop-types" "^15.6.0" + +"react-native-page-list@1.1.3": + "integrity" "sha512-LvbU9qxxLTujQV6/IKUbzKkosSDGBG6enhf3cb/5oSy0wG50TTloXKaeZY75/ssp/mX7qSZiU9aayV7Q+Q8iUQ==" + "resolved" "https://registry.npmjs.org/react-native-page-list/-/react-native-page-list-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "prop-types" "15.7.2" + "react-native-easy-guesture-responder" "1.1.3" + "react-native-scrolling" "1.0.3" + +"react-native-paper@^4.4.1": + "integrity" "sha512-RZwYZFFKry8LHHBYf5NENVaU2HaApERNcBLVzt4IE9AS0I+NkkLUyjKQYuLrgTF2EaZVEdeyUJwO7uQH/iNrnQ==" + "resolved" "https://registry.npmjs.org/react-native-paper/-/react-native-paper-4.7.0.tgz" + "version" "4.7.0" + dependencies: + "@callstack/react-theme-provider" "3.0.5" + "color" "3.1.3" + "react-native-iphone-x-helper" "1.3.1" + +"react-native-popup-menu@^0.15.9": + "integrity" "sha512-w7MaicsfpclK7g/omjMchNaXwhMi0apt/DC734AbHuJTWCfv5mF3JgL1UzRW19ncFMBRfQeYapPy/zUyJCGgEQ==" + "resolved" "https://registry.npmjs.org/react-native-popup-menu/-/react-native-popup-menu-0.15.10.tgz" + "version" "0.15.10" + +"react-native-progress@^4.1.2": + "integrity" "sha512-sFHs6k6npWDOyvQoL2NeyOyHb+q1s8iOAOeyzoObN77zkxOAsgJt9FcSJLRq70Mw7qSGNJMFDqCgvYR1huYRwQ==" + "resolved" "https://registry.npmjs.org/react-native-progress/-/react-native-progress-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "@react-native-community/art" "1.2.0" + "prop-types" "15.7.2" + +"react-native-ratings@8.0.4": + "integrity" "sha512-Xczu5lskIIRD6BEdz9A0jDRpEck/SFxRqiglkXi0u67yAtI1/pcJC76P4MukCbT8K4BPVl+42w83YqXBoBRl7A==" + "resolved" "https://registry.npmjs.org/react-native-ratings/-/react-native-ratings-8.0.4.tgz" + "version" "8.0.4" + dependencies: + "lodash" "^4.17.15" + +"react-native-reanimated@^1.13.2": + "integrity" "sha512-O+WhgxSjOIzcVdAAvx+h2DY331Ek1knKlaq+jsNLpC1fhRy9XTdOObovgob/aF2ve9uJfPEawCx8381g/tUJZQ==" + "resolved" "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-1.13.2.tgz" + "version" "1.13.2" + dependencies: + "fbjs" "1.0.0" + +"react-native-safe-area-context@^3.1.9": + "integrity" "sha512-wmcGbdyE/vBSL5IjDPReoJUEqxkZsywZw5gPwsVUV1NBpw5eTIdnL6Y0uNKHE25Z661moxPHQz6kwAkYQyorxA==" + "resolved" "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-3.1.9.tgz" + "version" "3.1.9" + +"react-native-safe-area-view@^1.1.1": + "integrity" "sha512-bbLCtF+tqECyPWlgkWbIwx4vDPb0GEufx/ZGcSS4UljMcrpwluachDXoW9DBxhbMCc6k1V0ccqHWN7ntbRdERQ==" + "resolved" "https://registry.npmjs.org/react-native-safe-area-view/-/react-native-safe-area-view-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "hoist-non-react-statics" "2.5.5" + +"react-native-safe-modules@^1.0.3": + "integrity" "sha512-DUxti4Z+AgJ/ZsO5U7p3uSCUBko8JT8GvFlCeOXk9bMd+4qjpoDvMYpfbixXKgL88M+HwmU/KI1YFN6gsQZyBA==" + "resolved" "https://registry.npmjs.org/react-native-safe-modules/-/react-native-safe-modules-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "dedent" "^0.6.0" + +"react-native-screens@^2.15.0": + "integrity" "sha512-WZ7m0sBDVaHbBnlHxwQnUlI6KNfQKHq+Unfw+VBuAlnSXvT+aw6Bb/K2bUlHzBgvrPjwY3Spc7ZERFuTwRLLwg==" + "resolved" "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.16.1.tgz" + "version" "2.16.1" + +"react-native-scrolling@1.0.3": + "integrity" "sha512-V8ORRnRA4sdOREJlDHxnPfM/7IK6rj/HZejgTaym1ACjKr9a3Pej4ZDOQA9qnBgNac8kMVhDup40HgJxYG//EA==" + "resolved" "https://registry.npmjs.org/react-native-scrolling/-/react-native-scrolling-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "prop-types" "15.7.2" + +"react-native-size-matters@^0.3.1": + "integrity" "sha512-mKOfBLIBFBcs9br1rlZDvxD5+mAl8Gfr5CounwJtxI6Z82rGrMO+Kgl9EIg3RMVf3G855a85YVqHJL2f5EDRlw==" + "resolved" "https://registry.npmjs.org/react-native-size-matters/-/react-native-size-matters-0.3.1.tgz" + "version" "0.3.1" + +"react-native-status-bar-height@^2.4.0", "react-native-status-bar-height@^2.6.0": + "integrity" "sha512-z3SGLF0mHT+OlJDq7B7h/jXPjWcdBT3V14Le5L2PjntjjWM3+EJzq2BcXDwV+v67KFNJic5pgA26cCmseYek6w==" + "resolved" "https://registry.npmjs.org/react-native-status-bar-height/-/react-native-status-bar-height-2.6.0.tgz" + "version" "2.6.0" + +"react-native-svg@^12.1.1", "react-native-svg@>=7.0.0": + "integrity" "sha512-NIAJ8jCnXGCqGWXkkJ1GTzO4a3Md5at5sagYV8Vh4MXYnL4z5Rh428Wahjhh+LIjx40EE5xM5YtwyJBqOIba2Q==" + "resolved" "https://registry.npmjs.org/react-native-svg/-/react-native-svg-12.1.1.tgz" + "version" "12.1.1" + dependencies: + "css-select" "^2.1.0" + "css-tree" "^1.0.0-alpha.39" + +"react-native-swiper@^1.6.0": + "integrity" "sha512-OnkTTZi+9uZUgy0uz1I9oYDhCU3z36lZn+LFsk9FXPRelxb/KeABzvPs3r3SrHWy1aA67KGtSFj0xNK2QD0NJQ==" + "resolved" "https://registry.npmjs.org/react-native-swiper/-/react-native-swiper-1.6.0.tgz" + "version" "1.6.0" + dependencies: + "prop-types" "15.7.2" + +"react-native-switch-pro@^1.0.5": + "integrity" "sha512-ZkS7/mRsJsG7heE12Y8emv3jAS2waLhk+3fyqoxq8k/r4Q4Uzzm3Q3gSECOJd5COJZT1B48c+xXW80FOrQpYtQ==" + "resolved" "https://registry.npmjs.org/react-native-switch-pro/-/react-native-switch-pro-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "prop-types" "15.7.2" + +"react-native-tab-view@^2.15.2": + "integrity" "sha512-2hxLkBnZtEKFDyfvNO5EUywhy3f/EiLOBO8SWqKj4BMBTO0QwnybaPE5MVF00Fhz+VA4+h/iI40Dkrrtq70dGg==" + "resolved" "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-2.15.2.tgz" + "version" "2.15.2" + +"react-native-textinput-effects@^0.6.1": + "integrity" "sha512-L4VCspAvxr6ug1OperVFnairQmSKes4dzRiHRzIOIJ7sJPDEpV3uSuvE5RiuNad6/SaPTLgfsjZSw4t7FWltRg==" + "resolved" "https://registry.npmjs.org/react-native-textinput-effects/-/react-native-textinput-effects-0.6.1.tgz" + "version" "0.6.1" + dependencies: + "@types/react-native-vector-icons" "6.4.6" + +"react-native-uuid@^1.4.9": + "integrity" "sha1-pSZ0L4/d/mQUUAZVISyo0QnEAik=" + "resolved" "https://registry.npmjs.org/react-native-uuid/-/react-native-uuid-1.4.9.tgz" + "version" "1.4.9" + dependencies: + "randombytes" "2.1.0" + +"react-native-vector-icons@^7.1.0", "react-native-vector-icons@>7.0.0": + "integrity" "sha512-V2a1zJ4i+kS8O4j183gIwX14St9AxxXabxwYpFBgRhvr2NDXyFcjHDEAgrOYYlt2W57e20aN1tBDU/I+wn9WtQ==" + "resolved" "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-7.1.0.tgz" + "version" "7.1.0" + dependencies: + "lodash.frompairs" "4.0.1" + "lodash.isequal" "4.5.0" + "lodash.isstring" "4.0.1" + "lodash.omit" "4.5.0" + "lodash.pick" "4.4.0" + "lodash.template" "4.5.0" + "prop-types" "15.7.2" + "yargs" "15.4.1" + +"react-native@*", "react-native@> 0.50.0", "react-native@>=0.46", "react-native@>=0.50.0", "react-native@>=0.63.0", "react-native@0.63.4": + "integrity" "sha512-I4kM8kYO2mWEYUFITMcpRulcy4/jd+j9T6PbIzR0FuMcz/xwd+JwHoLPa1HmCesvR1RDOw9o4D+OFLwuXXfmGw==" + "resolved" "https://registry.npmjs.org/react-native/-/react-native-0.63.4.tgz" + "version" "0.63.4" + dependencies: + "@babel/runtime" "7.12.5" + "@react-native-community/cli" "4.13.1" + "@react-native-community/cli-platform-android" "4.13.0" + "@react-native-community/cli-platform-ios" "4.13.0" + "abort-controller" "3.0.0" + "anser" "1.4.10" + "base64-js" "1.5.1" + "event-target-shim" "5.0.1" + "fbjs" "1.0.0" + "fbjs-scripts" "1.2.0" + "hermes-engine" "0.5.1" + "invariant" "2.2.4" + "jsc-android" "245459.0.0" + "metro-babel-register" "0.59.0" + "metro-react-native-babel-transformer" "0.59.0" + "metro-source-map" "0.59.0" + "nullthrows" "1.1.1" + "pretty-format" "24.9.0" + "promise" "8.1.0" + "prop-types" "15.7.2" + "react-devtools-core" "4.10.1" + "react-refresh" "0.4.3" + "regenerator-runtime" "0.13.7" + "scheduler" "0.19.1" + "stacktrace-parser" "0.1.10" + "use-subscription" "1.5.1" + "whatwg-fetch" "3.5.0" + +"react-refresh@0.4.3": + "integrity" "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==" + "resolved" "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz" + "version" "0.4.3" + +"react-test-renderer@16.13.1": + "integrity" "sha512-Sn2VRyOK2YJJldOqoh8Tn/lWQ+ZiKhyZTPtaO0Q6yNj+QDbmRkVFap6pZPy3YQk8DScRDfyqm/KxKYP9gCMRiQ==" + "resolved" "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.13.1.tgz" + "version" "16.13.1" + dependencies: + "object-assign" "4.1.1" + "prop-types" "15.7.2" + "react-is" "16.13.1" + "scheduler" "0.19.1" + +"react@*", "react@> 15.0.0", "react@>=16.0.0", "react@16.13.1": + "integrity" "sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==" + "resolved" "https://registry.npmjs.org/react/-/react-16.13.1.tgz" + "version" "16.13.1" + dependencies: + "loose-envify" "1.4.0" + "object-assign" "4.1.1" + "prop-types" "15.7.2" + +"read-pkg-up@7.0.1": + "integrity" "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==" + "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "find-up" "4.1.0" + "read-pkg" "5.2.0" + "type-fest" "0.8.1" + +"read-pkg@5.2.0": + "integrity" "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==" + "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "@types/normalize-package-data" "2.4.0" + "normalize-package-data" "2.5.0" + "parse-json" "5.2.0" + "type-fest" "0.6.0" + +"readable-stream@^2.0.2", "readable-stream@2.3.7": + "integrity" "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==" + "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" + "version" "2.3.7" + dependencies: + "core-util-is" "1.0.2" + "inherits" "2.0.4" + "isarray" "1.0.0" + "process-nextick-args" "2.0.1" + "safe-buffer" "5.1.2" + "string_decoder" "1.1.1" + "util-deprecate" "1.0.2" + +"readable-stream@1.1.14": + "integrity" "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=" + "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + "version" "1.1.14" + dependencies: + "core-util-is" "1.0.2" + "inherits" "2.0.4" + "isarray" "0.0.1" + "string_decoder" "0.10.31" + +"readable-stream@3.6.0": + "integrity" "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==" + "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" + "version" "3.6.0" + dependencies: + "inherits" "2.0.4" + "string_decoder" "1.1.1" + "util-deprecate" "1.0.2" + +"realpath-native@2.0.0": + "integrity" "sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==" + "resolved" "https://registry.npmjs.org/realpath-native/-/realpath-native-2.0.0.tgz" + "version" "2.0.0" + +"recursive-fs@2.1.0": + "integrity" "sha512-oed3YruYsD52Mi16s/07eYblQOLi5dTtxpIJNdfCEJ7S5v8dDgVcycar0pRWf4IBuPMIkoctC8RTqGJzIKMNAQ==" + "resolved" "https://registry.npmjs.org/recursive-fs/-/recursive-fs-2.1.0.tgz" + "version" "2.1.0" + +"regenerate-unicode-properties@8.2.0": + "integrity" "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==" + "resolved" "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz" + "version" "8.2.0" + dependencies: + "regenerate" "1.4.2" + +"regenerate@1.4.2": + "integrity" "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + "resolved" "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz" + "version" "1.4.2" + +"regenerator-runtime@0.11.1": + "integrity" "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + "resolved" "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz" + "version" "0.11.1" + +"regenerator-runtime@0.13.7": + "integrity" "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + "resolved" "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz" + "version" "0.13.7" + +"regenerator-transform@0.14.5": + "integrity" "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==" + "resolved" "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz" + "version" "0.14.5" + dependencies: + "@babel/runtime" "7.12.5" + +"regex-not@1.0.2": + "integrity" "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==" + "resolved" "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "extend-shallow" "3.0.2" + "safe-regex" "1.1.0" + +"regexp.prototype.flags@1.3.1": + "integrity" "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==" + "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + +"regexpp@2.0.1": + "integrity" "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==" + "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz" + "version" "2.0.1" + +"regexpp@3.1.0": + "integrity" "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==" + "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz" + "version" "3.1.0" + +"regexpu-core@4.7.1": + "integrity" "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==" + "resolved" "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz" + "version" "4.7.1" + dependencies: + "regenerate" "1.4.2" + "regenerate-unicode-properties" "8.2.0" + "regjsgen" "0.5.2" + "regjsparser" "0.6.6" + "unicode-match-property-ecmascript" "1.0.4" + "unicode-match-property-value-ecmascript" "1.2.0" + +"regjsgen@0.5.2": + "integrity" "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==" + "resolved" "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz" + "version" "0.5.2" + +"regjsparser@0.6.6": + "integrity" "sha512-jjyuCp+IEMIm3N1H1LLTJW1EISEJV9+5oHdEyrt43Pg9cDSb6rrLZei2cVWpl0xTjmmlpec/lEQGYgM7xfpGCQ==" + "resolved" "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.6.tgz" + "version" "0.6.6" + dependencies: + "jsesc" "0.5.0" + +"remove-trailing-separator@1.1.0": + "integrity" "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + "resolved" "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + "version" "1.1.0" + +"repeat-element@1.1.3": + "integrity" "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + "resolved" "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz" + "version" "1.1.3" + +"repeat-string@1.6.1": + "integrity" "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "resolved" "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" + "version" "1.6.1" + +"repeating@^2.0.0": + "integrity" "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=" + "resolved" "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "is-finite" "^1.0.0" + +"request-promise-core@1.1.4": + "integrity" "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==" + "resolved" "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "lodash" "4.17.20" + +"request-promise-native@1.0.9": + "integrity" "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==" + "resolved" "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz" + "version" "1.0.9" + dependencies: + "request-promise-core" "1.1.4" + "stealthy-require" "1.1.1" + "tough-cookie" "2.5.0" + +"request@2.88.2": + "integrity" "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==" + "resolved" "https://registry.npmjs.org/request/-/request-2.88.2.tgz" + "version" "2.88.2" + dependencies: + "aws-sign2" "0.7.0" + "aws4" "1.11.0" + "caseless" "0.12.0" + "combined-stream" "1.0.8" + "extend" "3.0.2" + "forever-agent" "0.6.1" + "form-data" "2.3.3" + "har-validator" "5.1.5" + "http-signature" "1.2.0" + "is-typedarray" "1.0.0" + "isstream" "0.1.2" + "json-stringify-safe" "5.0.1" + "mime-types" "2.1.28" + "oauth-sign" "0.9.0" + "performance-now" "2.1.0" + "qs" "6.5.2" + "safe-buffer" "5.1.2" + "tough-cookie" "2.5.0" + "tunnel-agent" "0.6.0" + "uuid" "3.4.0" + +"require-directory@2.1.1": + "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" + "version" "2.1.1" + +"require-main-filename@2.0.0": + "integrity" "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + "resolved" "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz" + "version" "2.0.0" + +"requires-port@1.0.0": + "integrity" "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + "resolved" "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" + "version" "1.0.0" + +"resolve-cwd@3.0.0": + "integrity" "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==" + "resolved" "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "resolve-from" "5.0.0" + +"resolve-from@3.0.0": + "integrity" "sha1-six699nWiBvItuZTM17rywoYh0g=" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz" + "version" "3.0.0" + +"resolve-from@4.0.0": + "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + "version" "4.0.0" + +"resolve-from@5.0.0": + "integrity" "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" + "version" "5.0.0" + +"resolve-url@0.2.1": + "integrity" "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + "resolved" "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" + "version" "0.2.1" + +"resolve@1.1.7": + "integrity" "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" + "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" + "version" "1.1.7" + +"resolve@1.19.0": + "integrity" "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==" + "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz" + "version" "1.19.0" + dependencies: + "is-core-module" "2.2.0" + "path-parse" "1.0.6" + +"restore-cursor@2.0.0": + "integrity" "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=" + "resolved" "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "onetime" "2.0.1" + "signal-exit" "3.0.3" + +"restore-cursor@3.1.0": + "integrity" "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==" + "resolved" "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "onetime" "5.1.2" + "signal-exit" "3.0.3" + +"ret@0.1.15": + "integrity" "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + "resolved" "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" + "version" "0.1.15" + +"rimraf@2.2.8": + "integrity" "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz" + "version" "2.2.8" + +"rimraf@2.6.3": + "integrity" "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz" + "version" "2.6.3" + dependencies: + "glob" "7.1.6" + +"rimraf@2.7.1": + "integrity" "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz" + "version" "2.7.1" + dependencies: + "glob" "7.1.6" + +"rimraf@3.0.2": + "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "glob" "7.1.6" + +"rsvp@4.8.5": + "integrity" "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" + "resolved" "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz" + "version" "4.8.5" + +"run-async@2.4.1": + "integrity" "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" + "resolved" "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz" + "version" "2.4.1" + +"rx-lite-aggregates@4.0.8": + "integrity" "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=" + "resolved" "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz" + "version" "4.0.8" + dependencies: + "rx-lite" "4.0.8" + +"rx-lite@4.0.8": + "integrity" "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" + "resolved" "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz" + "version" "4.0.8" + +"rxjs@5.5.12": + "integrity" "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==" + "resolved" "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz" + "version" "5.5.12" + dependencies: + "symbol-observable" "1.0.1" + +"rxjs@6.6.3": + "integrity" "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==" + "resolved" "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz" + "version" "6.6.3" + dependencies: + "tslib" "1.14.1" + +"rxjs@6.6.7": + "integrity" "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==" + "resolved" "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz" + "version" "6.6.7" + dependencies: + "tslib" "1.14.1" + +"safe-buffer@5.1.2": + "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + "version" "5.1.2" + +"safe-regex@1.1.0": + "integrity" "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=" + "resolved" "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "ret" "0.1.15" + +"safer-buffer@2.1.2": + "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" + "version" "2.1.2" + +"sane@4.1.0": + "integrity" "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==" + "resolved" "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "@cnakazawa/watch" "1.0.4" + "anymatch" "2.0.0" + "capture-exit" "2.0.0" + "exec-sh" "0.3.4" + "execa" "1.0.0" + "fb-watchman" "2.0.1" + "micromatch" "3.1.10" + "minimist" "1.2.5" + "walker" "1.0.7" + +"sax@1.2.4": + "integrity" "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "resolved" "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz" + "version" "1.2.4" + +"saxes@3.1.11": + "integrity" "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==" + "resolved" "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz" + "version" "3.1.11" + dependencies: + "xmlchars" "2.2.0" + +"scheduler@0.19.1": + "integrity" "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==" + "resolved" "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz" + "version" "0.19.1" + dependencies: + "loose-envify" "1.4.0" + "object-assign" "4.1.1" + +"semver@5.7.1": + "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + "version" "5.7.1" + +"semver@6.3.0": + "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + "version" "6.3.0" + +"semver@7.3.4": + "integrity" "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz" + "version" "7.3.4" + dependencies: + "lru-cache" "6.0.0" + +"semver@7.3.5": + "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" + "version" "7.3.5" + dependencies: + "lru-cache" "6.0.0" + +"send@0.17.1": + "integrity" "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==" + "resolved" "https://registry.npmjs.org/send/-/send-0.17.1.tgz" + "version" "0.17.1" + dependencies: + "debug" "2.6.9" + "depd" "1.1.2" + "destroy" "1.0.4" + "encodeurl" "1.0.2" + "escape-html" "1.0.3" + "etag" "1.8.1" + "fresh" "0.5.2" + "http-errors" "1.7.3" + "mime" "1.6.0" + "ms" "2.1.1" + "on-finished" "2.3.0" + "range-parser" "1.2.1" + "statuses" "1.5.0" + +"serialize-error@2.1.0": + "integrity" "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=" + "resolved" "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz" + "version" "2.1.0" + +"serve-static@1.14.1": + "integrity" "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==" + "resolved" "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz" + "version" "1.14.1" + dependencies: + "encodeurl" "1.0.2" + "escape-html" "1.0.3" + "parseurl" "1.3.3" + "send" "0.17.1" + +"set-blocking@2.0.0": + "integrity" "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + "resolved" "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" + "version" "2.0.0" + +"set-value@2.0.1": + "integrity" "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==" + "resolved" "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "extend-shallow" "2.0.1" + "is-extendable" "0.1.1" + "is-plain-object" "2.0.4" + "split-string" "3.1.0" + +"setimmediate@1.0.5": + "integrity" "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + "resolved" "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" + "version" "1.0.5" + +"setprototypeof@1.1.1": + "integrity" "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + "resolved" "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz" + "version" "1.1.1" + +"shallow-clone@1.0.0": + "integrity" "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==" + "resolved" "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "is-extendable" "0.1.1" + "kind-of" "5.1.0" + "mixin-object" "2.0.1" + +"shebang-command@1.2.0": + "integrity" "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=" + "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "shebang-regex" "1.0.0" + +"shebang-command@2.0.0": + "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" + "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "shebang-regex" "3.0.0" + +"shebang-regex@1.0.0": + "integrity" "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + "version" "1.0.0" + +"shebang-regex@3.0.0": + "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + "version" "3.0.0" + +"shell-quote@1.6.1": + "integrity" "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=" + "resolved" "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz" + "version" "1.6.1" + dependencies: + "array-filter" "0.0.1" + "array-map" "0.0.0" + "array-reduce" "0.0.0" + "jsonify" "0.0.0" + +"shellwords@0.1.1": + "integrity" "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==" + "resolved" "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz" + "version" "0.1.1" + +"side-channel@1.0.4": + "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" + "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "1.0.2" + "get-intrinsic" "1.0.2" + "object-inspect" "1.9.0" + +"signal-exit@3.0.3": + "integrity" "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" + "version" "3.0.3" + +"simple-plist@1.1.1": + "integrity" "sha512-pKMCVKvZbZTsqYR6RKgLfBHkh2cV89GXcA/0CVPje3sOiNOnXA8+rp/ciAMZ7JRaUdLzlEM6JFfUn+fS6Nt3hg==" + "resolved" "https://registry.npmjs.org/simple-plist/-/simple-plist-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "bplist-creator" "0.0.8" + "bplist-parser" "0.2.0" + "plist" "3.0.1" + +"simple-swizzle@0.2.2": + "integrity" "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=" + "resolved" "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz" + "version" "0.2.2" + dependencies: + "is-arrayish" "0.3.2" + +"sisteransi@1.0.5": + "integrity" "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + "resolved" "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" + "version" "1.0.5" + +"slash@^1.0.0": + "integrity" "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + "resolved" "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" + "version" "1.0.0" + +"slash@2.0.0": + "integrity" "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + "resolved" "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz" + "version" "2.0.0" + +"slash@3.0.0": + "integrity" "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + "resolved" "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + "version" "3.0.0" + +"slice-ansi@2.1.0": + "integrity" "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==" + "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "ansi-styles" "3.2.1" + "astral-regex" "1.0.0" + "is-fullwidth-code-point" "2.0.0" + +"slide@1.1.6": + "integrity" "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=" + "resolved" "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz" + "version" "1.1.6" + +"smart-buffer@4.1.0": + "integrity" "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==" + "resolved" "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz" + "version" "4.1.0" + +"snapdragon-node@2.1.1": + "integrity" "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==" + "resolved" "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "define-property" "1.0.0" + "isobject" "3.0.1" + "snapdragon-util" "3.0.1" + +"snapdragon-util@3.0.1": + "integrity" "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==" + "resolved" "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "kind-of" "3.2.2" + +"snapdragon@0.8.2": + "integrity" "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==" + "resolved" "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" + "version" "0.8.2" + dependencies: + "base" "0.11.2" + "debug" "2.6.9" + "define-property" "0.2.5" + "extend-shallow" "2.0.1" + "map-cache" "0.2.2" + "source-map" "0.5.7" + "source-map-resolve" "0.5.3" + "use" "3.1.1" + +"socks-proxy-agent@5.0.0": + "integrity" "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==" + "resolved" "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "agent-base" "6.0.2" + "debug" "4.3.1" + "socks" "2.6.1" + +"socks@2.6.1": + "integrity" "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==" + "resolved" "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz" + "version" "2.6.1" + dependencies: + "ip" "1.1.5" + "smart-buffer" "4.1.0" + +"source-map-resolve@0.5.3": + "integrity" "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==" + "resolved" "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz" + "version" "0.5.3" + dependencies: + "atob" "2.1.2" + "decode-uri-component" "0.2.0" + "resolve-url" "0.2.1" + "source-map-url" "0.4.0" + "urix" "0.1.0" + +"source-map-support@^0.4.15": + "integrity" "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==" + "resolved" "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz" + "version" "0.4.18" + dependencies: + "source-map" "^0.5.6" + +"source-map-support@0.5.19": + "integrity" "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==" + "resolved" "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz" + "version" "0.5.19" + dependencies: + "buffer-from" "1.1.1" + "source-map" "0.6.1" + +"source-map-url@0.4.0": + "integrity" "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + "resolved" "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz" + "version" "0.4.0" + +"source-map@^0.5.6", "source-map@^0.5.7", "source-map@0.5.7": + "integrity" "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" + "version" "0.5.7" + +"source-map@^0.6.1": + "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + "version" "0.6.1" + +"source-map@0.6.1": + "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + "version" "0.6.1" + +"source-map@0.7.3": + "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" + "version" "0.7.3" + +"spdx-correct@3.1.1": + "integrity" "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==" + "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" + "version" "3.1.1" + dependencies: + "spdx-expression-parse" "3.0.1" + "spdx-license-ids" "3.0.7" + +"spdx-exceptions@2.3.0": + "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + "version" "2.3.0" + +"spdx-expression-parse@3.0.1": + "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" + "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "spdx-exceptions" "2.3.0" + "spdx-license-ids" "3.0.7" + +"spdx-license-ids@3.0.7": + "integrity" "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==" + "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz" + "version" "3.0.7" + +"split-on-first@1.1.0": + "integrity" "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==" + "resolved" "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz" + "version" "1.1.0" + +"split-string@3.1.0": + "integrity" "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==" + "resolved" "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "extend-shallow" "3.0.2" + +"sprintf-js@1.0.3": + "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + "version" "1.0.3" + +"sprintf-js@1.1.2": + "integrity" "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz" + "version" "1.1.2" + +"sshpk@1.16.1": + "integrity" "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==" + "resolved" "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz" + "version" "1.16.1" + dependencies: + "asn1" "0.2.4" + "assert-plus" "1.0.0" + "bcrypt-pbkdf" "1.0.2" + "dashdash" "1.14.1" + "ecc-jsbn" "0.1.2" + "getpass" "0.1.7" + "jsbn" "0.1.1" + "safer-buffer" "2.1.2" + "tweetnacl" "0.14.5" + +"stack-utils@1.0.4": + "integrity" "sha512-IPDJfugEGbfizBwBZRZ3xpccMdRyP5lqsBWXGQWimVjua/ccLCeMOAVjlc1R7LxFjo5sEDhyNIXd8mo/AiDS9w==" + "resolved" "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "escape-string-regexp" "2.0.0" + +"stacktrace-parser@0.1.10": + "integrity" "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==" + "resolved" "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz" + "version" "0.1.10" + dependencies: + "type-fest" "0.7.1" + +"static-extend@0.1.2": + "integrity" "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=" + "resolved" "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" + "version" "0.1.2" + dependencies: + "define-property" "0.2.5" + "object-copy" "0.1.0" + +"statuses@1.5.0": + "integrity" "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + "resolved" "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" + "version" "1.5.0" + +"stealthy-require@1.1.1": + "integrity" "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" + "resolved" "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz" + "version" "1.1.1" + +"stream-buffers@2.2.0": + "integrity" "sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ=" + "resolved" "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz" + "version" "2.2.0" + +"strict-uri-encode@2.0.0": + "integrity" "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=" + "resolved" "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz" + "version" "2.0.0" + +"string_decoder@0.10.31": + "integrity" "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "version" "0.10.31" + +"string_decoder@1.1.1": + "integrity" "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==" + "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "safe-buffer" "5.1.2" + +"string-length@3.1.0": + "integrity" "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==" + "resolved" "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "astral-regex" "1.0.0" + "strip-ansi" "5.2.0" + +"string-width@2.1.1": + "integrity" "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "is-fullwidth-code-point" "2.0.0" + "strip-ansi" "4.0.0" + +"string-width@3.1.0": + "integrity" "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "emoji-regex" "7.0.3" + "is-fullwidth-code-point" "2.0.0" + "strip-ansi" "5.2.0" + +"string-width@4.2.0": + "integrity" "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "emoji-regex" "8.0.0" + "is-fullwidth-code-point" "3.0.0" + "strip-ansi" "6.0.0" + +"string.prototype.matchall@4.0.3": + "integrity" "sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw==" + "resolved" "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz" + "version" "4.0.3" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + "es-abstract" "1.18.0-next.2" + "has-symbols" "1.0.1" + "internal-slot" "1.0.2" + "regexp.prototype.flags" "1.3.1" + "side-channel" "1.0.4" + +"string.prototype.trimend@1.0.3": + "integrity" "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==" + "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + +"string.prototype.trimstart@1.0.3": + "integrity" "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==" + "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "call-bind" "1.0.2" + "define-properties" "1.1.3" + +"strip-ansi@3.0.1": + "integrity" "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "ansi-regex" "2.1.1" + +"strip-ansi@4.0.0": + "integrity" "sha1-qEeQIusaw2iocTibY1JixQXuNo8=" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "ansi-regex" "3.0.0" + +"strip-ansi@5.2.0": + "integrity" "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "ansi-regex" "4.1.0" + +"strip-ansi@6.0.0": + "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "ansi-regex" "5.0.0" + +"strip-bom@4.0.0": + "integrity" "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==" + "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz" + "version" "4.0.0" + +"strip-eof@1.0.0": + "integrity" "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + "resolved" "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" + "version" "1.0.0" + +"strip-final-newline@2.0.0": + "integrity" "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" + "resolved" "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz" + "version" "2.0.0" + +"strip-json-comments@3.1.1": + "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + "version" "3.1.1" + +"sudo-prompt@9.2.1": + "integrity" "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==" + "resolved" "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz" + "version" "9.2.1" + +"superagent-proxy@2.1.0": + "integrity" "sha512-DnarpKN6Xn8e3pYlFV4Yvsj9yxLY4q5FIsUe5JvN7vjzP+YCfzXv03dTkZSD2yzrSadsNYHf0IgOUJwKjX457A==" + "resolved" "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "debug" "3.2.7" + "proxy-agent" "4.0.1" + +"superagent@5.1.0": + "integrity" "sha512-7V6JVx5N+eTL1MMqRBX0v0bG04UjrjAvvZJTF/VDH/SH2GjSLqlrcYepFlpTrXpm37aSY6h3GGVWGxXl/98TKA==" + "resolved" "https://registry.npmjs.org/superagent/-/superagent-5.1.0.tgz" + "version" "5.1.0" + dependencies: + "component-emitter" "1.3.0" + "cookiejar" "2.1.2" + "debug" "4.3.1" + "fast-safe-stringify" "2.0.7" + "form-data" "2.3.3" + "formidable" "1.2.2" + "methods" "1.1.2" + "mime" "2.5.2" + "qs" "6.9.6" + "readable-stream" "3.6.0" + "semver" "6.3.0" + +"superagent@5.3.1": + "integrity" "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==" + "resolved" "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz" + "version" "5.3.1" + dependencies: + "component-emitter" "1.3.0" + "cookiejar" "2.1.2" + "debug" "4.3.1" + "fast-safe-stringify" "2.0.7" + "form-data" "3.0.1" + "formidable" "1.2.2" + "methods" "1.1.2" + "mime" "2.5.2" + "qs" "6.9.6" + "readable-stream" "3.6.0" + "semver" "7.3.5" + +"superstruct@0.6.2": + "integrity" "sha512-lvA97MFAJng3rfjcafT/zGTSWm6Tbpk++DP6It4Qg7oNaeM+2tdJMuVgGje21/bIpBEs6iQql1PJH6dKTjl4Ig==" + "resolved" "https://registry.npmjs.org/superstruct/-/superstruct-0.6.2.tgz" + "version" "0.6.2" + dependencies: + "clone-deep" "2.0.2" + "kind-of" "6.0.3" + +"supports-color@2.0.0": + "integrity" "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + "version" "2.0.0" + +"supports-color@5.5.0": + "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + "version" "5.5.0" + dependencies: + "has-flag" "3.0.0" + +"supports-color@6.1.0": + "integrity" "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz" + "version" "6.1.0" + dependencies: + "has-flag" "3.0.0" + +"supports-color@7.2.0": + "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "has-flag" "4.0.0" + +"supports-hyperlinks@2.1.0": + "integrity" "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==" + "resolved" "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "has-flag" "4.0.0" + "supports-color" "7.2.0" + +"symbol-observable@1.0.1": + "integrity" "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=" + "resolved" "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz" + "version" "1.0.1" + +"symbol-tree@3.2.4": + "integrity" "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + "resolved" "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz" + "version" "3.2.4" + +"table@5.4.6": + "integrity" "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==" + "resolved" "https://registry.npmjs.org/table/-/table-5.4.6.tgz" + "version" "5.4.6" + dependencies: + "ajv" "6.12.6" + "lodash" "4.17.20" + "slice-ansi" "2.1.0" + "string-width" "3.1.0" + +"temp@0.8.3": + "integrity" "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=" + "resolved" "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz" + "version" "0.8.3" + dependencies: + "os-tmpdir" "1.0.2" + "rimraf" "2.2.8" + +"terminal-link@2.1.1": + "integrity" "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==" + "resolved" "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "ansi-escapes" "4.3.1" + "supports-hyperlinks" "2.1.0" + +"test-exclude@6.0.0": + "integrity" "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==" + "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "@istanbuljs/schema" "0.1.2" + "glob" "7.1.6" + "minimatch" "3.0.4" + +"text-table@0.2.0": + "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + "version" "0.2.0" + +"throat@4.1.0": + "integrity" "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=" + "resolved" "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz" + "version" "4.1.0" + +"throat@5.0.0": + "integrity" "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" + "resolved" "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz" + "version" "5.0.0" + +"through@2.3.8": + "integrity" "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "resolved" "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + "version" "2.3.8" + +"through2@2.0.5": + "integrity" "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==" + "resolved" "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz" + "version" "2.0.5" + dependencies: + "readable-stream" "2.3.7" + "xtend" "4.0.2" + +"time-stamp@1.1.0": + "integrity" "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + "resolved" "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz" + "version" "1.1.0" + +"tmp@0.0.33": + "integrity" "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==" + "resolved" "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" + "version" "0.0.33" + dependencies: + "os-tmpdir" "1.0.2" + +"tmpl@1.0.4": + "integrity" "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" + "resolved" "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz" + "version" "1.0.4" + +"to-fast-properties@1.0.3": + "integrity" "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + "resolved" "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz" + "version" "1.0.3" + +"to-fast-properties@2.0.0": + "integrity" "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" + "resolved" "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" + "version" "2.0.0" + +"to-object-path@0.3.0": + "integrity" "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=" + "resolved" "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" + "version" "0.3.0" + dependencies: + "kind-of" "3.2.2" + +"to-regex-range@2.1.1": + "integrity" "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=" + "resolved" "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "is-number" "3.0.0" + "repeat-string" "1.6.1" + +"to-regex-range@5.0.1": + "integrity" "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==" + "resolved" "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "is-number" "7.0.0" + +"to-regex@3.0.2": + "integrity" "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==" + "resolved" "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "define-property" "2.0.2" + "extend-shallow" "3.0.2" + "regex-not" "1.0.2" + "safe-regex" "1.1.0" + +"toidentifier@1.0.0": + "integrity" "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "resolved" "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz" + "version" "1.0.0" + +"tough-cookie@2.5.0": + "integrity" "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==" + "resolved" "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "psl" "1.8.0" + "punycode" "2.1.1" + +"tough-cookie@3.0.1": + "integrity" "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==" + "resolved" "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "ip-regex" "2.1.0" + "psl" "1.8.0" + "punycode" "2.1.1" + +"tr46@1.0.1": + "integrity" "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=" + "resolved" "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "punycode" "2.1.1" + +"trim-right@^1.0.1": + "integrity" "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" + "resolved" "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz" + "version" "1.0.1" + +"tslib@1.14.1": + "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" + "version" "1.14.1" + +"tslib@2.2.0": + "integrity" "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + "resolved" "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz" + "version" "2.2.0" + +"tsutils@3.19.1": + "integrity" "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==" + "resolved" "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz" + "version" "3.19.1" + dependencies: + "tslib" "1.14.1" + +"tunnel-agent@0.6.0": + "integrity" "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=" + "resolved" "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" + "version" "0.6.0" + dependencies: + "safe-buffer" "5.1.2" + +"tweetnacl@0.14.5": + "integrity" "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + "resolved" "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" + "version" "0.14.5" + +"type-check@0.3.2": + "integrity" "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" + "version" "0.3.2" + dependencies: + "prelude-ls" "1.1.2" + +"type-detect@4.0.8": + "integrity" "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" + "resolved" "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" + "version" "4.0.8" + +"type-fest@0.11.0": + "integrity" "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz" + "version" "0.11.0" + +"type-fest@0.21.3": + "integrity" "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" + "version" "0.21.3" + +"type-fest@0.6.0": + "integrity" "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz" + "version" "0.6.0" + +"type-fest@0.7.1": + "integrity" "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz" + "version" "0.7.1" + +"type-fest@0.8.1": + "integrity" "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" + "version" "0.8.1" + +"typedarray-to-buffer@3.1.5": + "integrity" "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==" + "resolved" "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz" + "version" "3.1.5" + dependencies: + "is-typedarray" "1.0.0" + +"typedarray@0.0.6": + "integrity" "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "resolved" "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" + "version" "0.0.6" + +"ua-parser-js@0.7.23": + "integrity" "sha512-m4hvMLxgGHXG3O3fQVAyyAQpZzDOvwnhOTjYz5Xmr7r/+LpkNy3vJXdVRWgd1TkAb7NGROZuSy96CrlNVjA7KA==" + "resolved" "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.23.tgz" + "version" "0.7.23" + +"uglify-es@3.3.9": + "integrity" "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==" + "resolved" "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz" + "version" "3.3.9" + dependencies: + "commander" "2.13.0" + "source-map" "0.6.1" + +"ultron@1.0.2": + "integrity" "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + "resolved" "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz" + "version" "1.0.2" + +"underscore@^1.12.0": + "integrity" "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==" + "resolved" "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz" + "version" "1.12.0" + +"unicode-canonical-property-names-ecmascript@1.0.4": + "integrity" "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==" + "resolved" "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz" + "version" "1.0.4" + +"unicode-match-property-ecmascript@1.0.4": + "integrity" "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==" + "resolved" "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "unicode-canonical-property-names-ecmascript" "1.0.4" + "unicode-property-aliases-ecmascript" "1.1.0" + +"unicode-match-property-value-ecmascript@1.2.0": + "integrity" "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==" + "resolved" "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz" + "version" "1.2.0" + +"unicode-property-aliases-ecmascript@1.1.0": + "integrity" "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==" + "resolved" "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz" + "version" "1.1.0" + +"union-value@1.0.1": + "integrity" "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==" + "resolved" "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "arr-union" "3.1.0" + "get-value" "2.0.6" + "is-extendable" "0.1.1" + "set-value" "2.0.1" + +"universalify@0.1.2": + "integrity" "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + "resolved" "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" + "version" "0.1.2" + +"unpipe@1.0.0": + "integrity" "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + "resolved" "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" + "version" "1.0.0" + +"unset-value@1.0.0": + "integrity" "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=" + "resolved" "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "has-value" "0.3.1" + "isobject" "3.0.1" + +"uri-js@4.4.1": + "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" + "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + "version" "4.4.1" + dependencies: + "punycode" "2.1.1" + +"urix@0.1.0": + "integrity" "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + "resolved" "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" + "version" "0.1.0" + +"url-parse@1.5.1": + "integrity" "sha512-HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==" + "resolved" "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz" + "version" "1.5.1" + dependencies: + "querystringify" "2.2.0" + "requires-port" "1.0.0" + +"use-subscription@1.5.1": + "integrity" "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==" + "resolved" "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz" + "version" "1.5.1" + dependencies: + "object-assign" "4.1.1" + +"use@3.1.1": + "integrity" "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + "resolved" "https://registry.npmjs.org/use/-/use-3.1.1.tgz" + "version" "3.1.1" + +"util-deprecate@1.0.2": + "integrity" "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "resolved" "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "version" "1.0.2" + +"utils-merge@1.0.1": + "integrity" "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "resolved" "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" + "version" "1.0.1" + +"uuid@3.4.0": + "integrity" "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + "resolved" "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz" + "version" "3.4.0" + +"uuid@7.0.3": + "integrity" "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" + "resolved" "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz" + "version" "7.0.3" + +"v8-compile-cache@2.2.0": + "integrity" "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==" + "resolved" "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz" + "version" "2.2.0" + +"v8-to-istanbul@4.1.4": + "integrity" "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==" + "resolved" "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz" + "version" "4.1.4" + dependencies: + "@types/istanbul-lib-coverage" "2.0.3" + "convert-source-map" "1.7.0" + "source-map" "0.7.3" + +"validate-npm-package-license@3.0.4": + "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" + "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "spdx-correct" "3.1.1" + "spdx-expression-parse" "3.0.1" + +"vary@1.1.2": + "integrity" "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + "resolved" "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" + "version" "1.1.2" + +"verror@1.10.0": + "integrity" "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=" + "resolved" "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" + "version" "1.10.0" + dependencies: + "assert-plus" "1.0.0" + "core-util-is" "1.0.2" + "extsprintf" "1.3.0" + +"vlq@1.0.1": + "integrity" "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==" + "resolved" "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz" + "version" "1.0.1" + +"w3c-hr-time@1.0.2": + "integrity" "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==" + "resolved" "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "browser-process-hrtime" "1.0.0" + +"w3c-xmlserializer@1.1.2": + "integrity" "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==" + "resolved" "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "domexception" "1.0.1" + "webidl-conversions" "4.0.2" + "xml-name-validator" "3.0.0" + +"walker@1.0.7": + "integrity" "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=" + "resolved" "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "makeerror" "1.0.11" + +"wcwidth@1.0.1": + "integrity" "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=" + "resolved" "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "defaults" "1.0.3" + +"webidl-conversions@4.0.2": + "integrity" "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" + "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz" + "version" "4.0.2" + +"whatwg-encoding@1.0.5": + "integrity" "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==" + "resolved" "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "iconv-lite" "0.4.24" + +"whatwg-fetch@3.5.0": + "integrity" "sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A==" + "resolved" "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz" + "version" "3.5.0" + +"whatwg-mimetype@2.3.0": + "integrity" "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + "resolved" "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz" + "version" "2.3.0" + +"whatwg-url@7.1.0": + "integrity" "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==" + "resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz" + "version" "7.1.0" + dependencies: + "lodash.sortby" "4.7.0" + "tr46" "1.0.1" + "webidl-conversions" "4.0.2" + +"which-module@2.0.0": + "integrity" "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + "resolved" "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz" + "version" "2.0.0" + +"which@1.3.1": + "integrity" "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==" + "resolved" "https://registry.npmjs.org/which/-/which-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "isexe" "2.0.0" + +"which@2.0.2": + "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" + "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "isexe" "2.0.0" + +"word-wrap@1.2.3": + "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + "version" "1.2.3" + +"wordwrap@1.0.0": + "integrity" "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + "resolved" "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" + "version" "1.0.0" + +"wrap-ansi@5.1.0": + "integrity" "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz" + "version" "5.1.0" + dependencies: + "ansi-styles" "3.2.1" + "string-width" "3.1.0" + "strip-ansi" "5.2.0" + +"wrap-ansi@6.2.0": + "integrity" "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" + "version" "6.2.0" + dependencies: + "ansi-styles" "4.3.0" + "string-width" "4.2.0" + "strip-ansi" "6.0.0" + +"wrappy@1.0.2": + "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "version" "1.0.2" + +"write-file-atomic@1.3.4": + "integrity" "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=" + "resolved" "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz" + "version" "1.3.4" + dependencies: + "graceful-fs" "4.2.4" + "imurmurhash" "0.1.4" + "slide" "1.1.6" + +"write-file-atomic@3.0.3": + "integrity" "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==" + "resolved" "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz" + "version" "3.0.3" + dependencies: + "imurmurhash" "0.1.4" + "is-typedarray" "1.0.0" + "signal-exit" "3.0.3" + "typedarray-to-buffer" "3.1.5" + +"write@1.0.3": + "integrity" "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==" + "resolved" "https://registry.npmjs.org/write/-/write-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "mkdirp" "0.5.5" + +"ws@1.1.5": + "integrity" "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==" + "resolved" "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz" + "version" "1.1.5" + dependencies: + "options" "0.0.6" + "ultron" "1.0.2" + +"ws@7.4.2": + "integrity" "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==" + "resolved" "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz" + "version" "7.4.2" + +"xcode@2.1.0": + "integrity" "sha512-uCrmPITrqTEzhn0TtT57fJaNaw8YJs1aCzs+P/QqxsDbvPZSv7XMPPwXrKvHtD6pLjBM/NaVwraWJm8q83Y4iQ==" + "resolved" "https://registry.npmjs.org/xcode/-/xcode-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "simple-plist" "1.1.1" + "uuid" "3.4.0" + +"xcode@3.0.1": + "integrity" "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==" + "resolved" "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "simple-plist" "1.1.1" + "uuid" "7.0.3" + +"xml-name-validator@3.0.0": + "integrity" "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + "resolved" "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz" + "version" "3.0.0" + +"xmlbuilder@9.0.7": + "integrity" "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + "resolved" "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz" + "version" "9.0.7" + +"xmlchars@2.2.0": + "integrity" "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + "resolved" "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz" + "version" "2.2.0" + +"xmldoc@1.1.2": + "integrity" "sha512-ruPC/fyPNck2BD1dpz0AZZyrEwMOrWTO5lDdIXS91rs3wtm4j+T8Rp2o+zoOYkkAxJTZRPOSnOGei1egoRmKMQ==" + "resolved" "https://registry.npmjs.org/xmldoc/-/xmldoc-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "sax" "1.2.4" + +"xmldom@0.1.31": + "integrity" "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==" + "resolved" "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz" + "version" "0.1.31" + +"xmldom@0.5.0": + "integrity" "sha512-Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==" + "resolved" "https://registry.npmjs.org/xmldom/-/xmldom-0.5.0.tgz" + "version" "0.5.0" + +"xpipe@1.0.5": + "integrity" "sha1-jdi/Rfw/f1Xw4FS4ePQ6YmFNr98=" + "resolved" "https://registry.npmjs.org/xpipe/-/xpipe-1.0.5.tgz" + "version" "1.0.5" + +"xregexp@2.0.0": + "integrity" "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=" + "resolved" "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz" + "version" "2.0.0" + +"xregexp@4.4.1": + "integrity" "sha512-2u9HwfadaJaY9zHtRRnH6BY6CQVNQKkYm3oLtC9gJXXzfsbACg5X5e4EZZGVAH+YIfa+QA9lsFQTTe3HURF3ag==" + "resolved" "https://registry.npmjs.org/xregexp/-/xregexp-4.4.1.tgz" + "version" "4.4.1" + dependencies: + "@babel/runtime-corejs3" "7.12.5" + +"xtend@4.0.2": + "integrity" "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "resolved" "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" + "version" "4.0.2" + +"y18n@4.0.1": + "integrity" "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==" + "resolved" "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz" + "version" "4.0.1" + +"yallist@2.1.2": + "integrity" "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" + "version" "2.1.2" + +"yallist@3.1.1": + "integrity" "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" + "version" "3.1.1" + +"yallist@4.0.0": + "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + "version" "4.0.0" + +"yargs-parser@15.0.1": + "integrity" "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz" + "version" "15.0.1" + dependencies: + "camelcase" "5.3.1" + "decamelize" "1.2.0" + +"yargs-parser@18.1.3": + "integrity" "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz" + "version" "18.1.3" + dependencies: + "camelcase" "5.3.1" + "decamelize" "1.2.0" + +"yargs@14.2.3": + "integrity" "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz" + "version" "14.2.3" + dependencies: + "cliui" "5.0.0" + "decamelize" "1.2.0" + "find-up" "3.0.0" + "get-caller-file" "2.0.5" + "require-directory" "2.1.1" + "require-main-filename" "2.0.0" + "set-blocking" "2.0.0" + "string-width" "3.1.0" + "which-module" "2.0.0" + "y18n" "4.0.1" + "yargs-parser" "15.0.1" + +"yargs@15.4.1": + "integrity" "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz" + "version" "15.4.1" + dependencies: + "cliui" "6.0.0" + "decamelize" "1.2.0" + "find-up" "4.1.0" + "get-caller-file" "2.0.5" + "require-directory" "2.1.1" + "require-main-filename" "2.0.0" + "set-blocking" "2.0.0" + "string-width" "4.2.0" + "which-module" "2.0.0" + "y18n" "4.0.1" + "yargs-parser" "18.1.3" + +"yazl@2.5.1": + "integrity" "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==" + "resolved" "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz" + "version" "2.5.1" + dependencies: + "buffer-crc32" "0.2.13"