├── .gitignore ├── src ├── index.tsx ├── types.ts └── modal-controller.tsx ├── .watchmanconfig ├── tsconfig.json ├── .eslintrc.js ├── package.json ├── README.md └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | package-lock.json 3 | lib -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- 1 | export * from "./types"; 2 | export * from "./modal-controller"; 3 | -------------------------------------------------------------------------------- /.watchmanconfig: -------------------------------------------------------------------------------- 1 | { 2 | "ignore_dirs": [ 3 | "node_modules", 4 | ".git", 5 | "example" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowSyntheticDefaultImports": true, 4 | "esModuleInterop": true, 5 | "jsx": "react", 6 | "lib": ["es6"], 7 | "declaration": true, 8 | "moduleResolution": "node", 9 | "strict": true, 10 | "target": "esnext", 11 | "rootDir": "./src" 12 | }, 13 | "include": ["src"], 14 | "exclude": ["node_modules"] 15 | } 16 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "parser": "@typescript-eslint/parser", 3 | "plugins": ["@typescript-eslint", "prettier"], 4 | "extends": [ 5 | "airbnb", 6 | "plugin:@typescript-eslint/recommended", 7 | "prettier", 8 | "prettier/@typescript-eslint", 9 | "prettier/react" 10 | ], 11 | "settings": { 12 | "import/resolver": { 13 | "node": { 14 | "extensions": [".js", ".jsx", ".ts", ".tsx"] 15 | } 16 | } 17 | }, 18 | "rules": { 19 | "react/jsx-filename-extension": ["error", { "extensions": [".ts", ".tsx", ".js", ".jsx"] }], 20 | "import/prefer-default-export": 0, 21 | "import/no-default-export": 2, 22 | "prettier/prettier": "error", 23 | "react/destructuring-assignment": 0, 24 | "@typescript-eslint/explicit-function-return-type": 0, 25 | "@typescript-eslint/no-explicit-any": 0 26 | } 27 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-native-modal-controller", 3 | "version": "1.0.0", 4 | "description": "Handle many modals with ease", 5 | "main": "lib/index.js", 6 | "author": "Henry Kirkness", 7 | "license": "MIT", 8 | "files": [ 9 | "lib" 10 | ], 11 | "dependencies": { 12 | "react-native-animatable": "^1.3.2" 13 | }, 14 | "devDependencies": { 15 | "@types/react": "^16.9.2", 16 | "@types/react-native": "^0.60.13", 17 | "@typescript-eslint/eslint-plugin": "^2.2.0", 18 | "@typescript-eslint/parser": "^2.2.0", 19 | "eslint": "5.16.0", 20 | "eslint-config-airbnb": "^17.1.1", 21 | "eslint-config-airbnb-base": "^13.2.0", 22 | "eslint-config-prettier": "^6.0.0", 23 | "eslint-plugin-import": "^2.18.2", 24 | "eslint-plugin-jsx-a11y": "^6.2.3", 25 | "eslint-plugin-prettier": "^2.6.2", 26 | "eslint-plugin-react": "^7.14.3", 27 | "eslint-plugin-react-hooks": "^1.7.0", 28 | "prettier": "^1.18.2", 29 | "typescript": "^3.6.2" 30 | }, 31 | "peerDepencencies": { 32 | "react-native": "*", 33 | "react": "*" 34 | }, 35 | "scripts": { 36 | "lint": "eslint ./src --fix", 37 | "prepublish": "yarn build", 38 | "build": "tsc -p ./tsconfig.json --outDir ./lib" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- 1 | /* eslint-disable import/no-unresolved */ 2 | import React from "react"; 3 | import { 4 | StyleProp, 5 | ViewStyle, 6 | TextStyle, 7 | ImageStyle, 8 | ModalProps 9 | } from "react-native"; 10 | import { CustomAnimation, Animation } from "react-native-animatable"; 11 | 12 | export enum Priority { 13 | Standard, 14 | Override 15 | } 16 | 17 | export interface AnimationConfig { 18 | in?: Animation; 19 | out?: Animation; 20 | inDuration?: number; 21 | outDuration?: number; 22 | } 23 | 24 | export interface BackdropConfig { 25 | activeOpacity?: number; 26 | transitionInTiming?: number; 27 | transitionOutTiming?: number; 28 | } 29 | 30 | export interface ModalType { 31 | id: string; 32 | name: string; 33 | priority?: Priority; 34 | isVisible: boolean; 35 | isCancelable?: boolean; 36 | Component: any; 37 | absolutePositioning?: StyleProp; 38 | animation: AnimationConfig; 39 | params?: Record; 40 | supportedOrientations?: ModalProps["supportedOrientations"]; 41 | } 42 | 43 | export interface ConsumerProps { 44 | modals: ModalType[]; 45 | onShowModal: (config: ShowModalConfig) => void; 46 | } 47 | 48 | export interface ModalComponentProps> 49 | extends ConsumerProps { 50 | params: Params; 51 | onHideModal: () => void; 52 | } 53 | 54 | export interface ModalControllerProviderProps { 55 | modals: Omit[]; 56 | backdrop?: BackdropConfig; 57 | customAnimations?: { 58 | [key: string]: CustomAnimation; 59 | }; 60 | children: React.ReactChild; 61 | supportedOrientations?: ModalProps["supportedOrientations"]; 62 | } 63 | 64 | export type ShowModalConfig = Partial & Pick; 65 | 66 | export interface ModalAnimatorProps { 67 | animation: ModalType["animation"]; 68 | isVisible: ModalType["isVisible"]; 69 | absolutePositioning?: ModalType["absolutePositioning"]; 70 | children: React.ReactElement; 71 | onAnimationOutDidEnd: () => void; 72 | } 73 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## React Native Modal Controller 🕹 2 | 3 | A more ergonomic interface for opening and managing modals in your react native 4 | app. 5 | 6 | - 🎣 Uses React hooks 7 | - 🍆 Written in TypeScript 8 | - 💥 Open multiple modals at once (tray and an alert, or whatever) 9 | - 🎩 Fancy animations using `react-native-animatable` 10 | 11 | For example, you might want to have a modal and a tray: 12 | 13 | 14 | 15 | ## Example Usage: 16 | 17 | ```tsx 18 | // Your basic popup component 19 | const MyModal = (props: ModalComponentProps) => ( 20 | 21 | {/* Opens another modal from within */} 22 | props.onShowModal({name: 'myModal'})}> 23 | Open another 24 | 25 | 26 | ); 27 | 28 | const MyScreen = () => { 29 | // The Hook! 30 | const modal = useModalController(); 31 | return ( 32 | 33 | 35 | // Show the `myModal` popup declared in the the provider 36 | modal.onShowModal({ 37 | name: 'myModal', 38 | priority: Priority.Override, 39 | }) 40 | }> 41 | Show Modal 42 | 43 | 44 | ); 45 | }; 46 | 47 | // Your app entry point - define your Modals and pass into the Context Provider 48 | const App = () => { 49 | return ( 50 | 73 | 74 | 75 | ); 76 | }; 77 | 78 | ``` -------------------------------------------------------------------------------- /src/modal-controller.tsx: -------------------------------------------------------------------------------- 1 | /* eslint-disable import/no-unresolved */ 2 | import React, { 3 | createContext, 4 | useContext, 5 | useState, 6 | useEffect, 7 | useRef, 8 | useCallback 9 | } from "react"; 10 | import { 11 | initializeRegistryWithDefinitions, 12 | View 13 | } from "react-native-animatable"; 14 | import { 15 | Animated, 16 | StyleSheet, 17 | TouchableWithoutFeedback, 18 | Modal 19 | } from "react-native"; 20 | import { 21 | ModalType, 22 | ModalControllerProviderProps, 23 | ModalAnimatorProps, 24 | ShowModalConfig, 25 | ConsumerProps, 26 | BackdropConfig, 27 | Priority, 28 | AnimationConfig 29 | } from "./types"; 30 | 31 | const defaultBackdrop: Required = { 32 | activeOpacity: 0.5, 33 | transitionInTiming: 500, 34 | transitionOutTiming: 500 35 | }; 36 | 37 | const defaultAnimation: Required = { 38 | in: "fadeIn", 39 | out: "bounceOut", 40 | inDuration: 500, 41 | outDuration: 500 42 | }; 43 | 44 | const Context = createContext({ 45 | modals: [], 46 | onShowModal: () => {} 47 | }); 48 | 49 | const modalAnimatorStyles = StyleSheet.create({ 50 | wrapper: { 51 | ...StyleSheet.absoluteFillObject, 52 | alignItems: "center", 53 | justifyContent: "center" 54 | }, 55 | absoluteWrapper: { 56 | position: "absolute" 57 | } 58 | }); 59 | 60 | const ModalAnimator = (props: ModalAnimatorProps) => { 61 | const [isVisible, setVisible] = useState(props.isVisible); 62 | const isAnimatingOut = useRef(false); 63 | const viewRef = useRef(null); 64 | 65 | const handleRunAnimation = useCallback(async () => { 66 | if ( 67 | isVisible && 68 | !props.isVisible && 69 | !isAnimatingOut.current && 70 | viewRef.current 71 | ) { 72 | const animation = { 73 | ...defaultAnimation, 74 | ...props.animation 75 | }; 76 | isAnimatingOut.current = true; 77 | const animationFn = (viewRef.current as any)[animation.out]; // todo: types 78 | await animationFn(props.animation.outDuration); 79 | setVisible(false); 80 | isAnimatingOut.current = false; 81 | props.onAnimationOutDidEnd(); 82 | } 83 | }, [isVisible, props]); 84 | 85 | useEffect(() => { 86 | handleRunAnimation(); 87 | }, [handleRunAnimation]); 88 | 89 | return ( 90 | 101 | {React.cloneElement(props.children)} 102 | 103 | ); 104 | }; 105 | 106 | const modalControllerProviderStyles = StyleSheet.create({ 107 | backdrop: { 108 | ...StyleSheet.absoluteFillObject, 109 | backgroundColor: "black" 110 | } 111 | }); 112 | 113 | const ModalControllerProvider = (props: ModalControllerProviderProps) => { 114 | const [modals, setModals] = useState([]); 115 | const backdropOpacity = useRef(new Animated.Value(0)); 116 | 117 | const handleBackdropFade = useCallback(() => { 118 | const visibleModals = modals.filter(({ isVisible }) => isVisible); 119 | const backdrop = { 120 | ...defaultBackdrop, 121 | ...(props.backdrop || {}) 122 | }; 123 | // hide backdrop if the is no modals to display 124 | if (!visibleModals.length) { 125 | Animated.timing(backdropOpacity.current, { 126 | toValue: 0, 127 | duration: backdrop.transitionOutTiming 128 | }).start(); 129 | } else { 130 | Animated.timing(backdropOpacity.current, { 131 | toValue: backdrop.activeOpacity, 132 | duration: backdrop.transitionInTiming 133 | }).start(); 134 | } 135 | }, [modals, props.backdrop]); 136 | 137 | const handleAnimationOutDidEnd = (id: string) => () => 138 | setModals(currentModals => currentModals.filter(modal => modal.id !== id)); 139 | 140 | const hideTopModal = () => 141 | setModals(currentModals => { 142 | const newModals = [...currentModals]; 143 | newModals[newModals.length - 1] = { 144 | ...newModals[newModals.length - 1], 145 | isVisible: false 146 | }; 147 | return newModals; 148 | }); 149 | 150 | const hideModalAtIndex = (modalIndex: number) => 151 | setModals(currentModals => { 152 | const newModals = [...currentModals]; 153 | newModals[modalIndex] = { 154 | ...newModals[modalIndex], 155 | isVisible: false 156 | }; 157 | return newModals; 158 | }); 159 | 160 | const handleShowModal = (config: ShowModalConfig) => { 161 | const otherModals = 162 | config.priority === Priority.Standard 163 | ? [...modals] 164 | : modals.map(modal => ({ ...modal, isVisible: false })); 165 | const configModal = props.modals.find(({ name }) => config.name === name); 166 | if (!configModal) { 167 | console.error(`Modal with name ${config.name} not found`); 168 | return; 169 | } 170 | setModals([ 171 | ...otherModals, 172 | { 173 | ...configModal, 174 | id: Math.random().toString(), 175 | isVisible: true, 176 | ...config 177 | } 178 | ]); 179 | }; 180 | 181 | useEffect(() => { 182 | if (props.customAnimations) { 183 | initializeRegistryWithDefinitions(props.customAnimations); 184 | } 185 | }, [props.customAnimations]); 186 | 187 | useEffect(() => { 188 | handleBackdropFade(); 189 | }, [modals, handleBackdropFade]); 190 | 191 | const topModal = modals[modals.length - 1]; 192 | const isCancelable = topModal && topModal.isCancelable; 193 | const modalConsumerProps = { 194 | modals, 195 | onShowModal: handleShowModal 196 | }; 197 | 198 | return ( 199 | 200 | {props.children} 201 | 202 | 0} 206 | supportedOrientations={ 207 | (topModal && 208 | topModal.supportedOrientations && 209 | !!topModal.supportedOrientations.length && 210 | topModal.supportedOrientations) || 211 | (props.supportedOrientations && 212 | !!props.supportedOrientations.length && 213 | props.supportedOrientations) || [ 214 | "portrait", 215 | "portrait-upside-down", 216 | "landscape" 217 | ] 218 | } 219 | onRequestClose={hideTopModal} 220 | > 221 | 224 | 230 | 231 | 232 | {modals.map(({ Component, ...modal }, index) => ( 233 | 240 | hideModalAtIndex(index)} 244 | /> 245 | 246 | ))} 247 | 248 | 249 | ); 250 | }; 251 | 252 | const useModalController = () => useContext(Context); 253 | export { ModalControllerProvider, useModalController }; 254 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0": 6 | version "7.5.5" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" 8 | integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== 9 | dependencies: 10 | "@babel/highlight" "^7.0.0" 11 | 12 | "@babel/highlight@^7.0.0": 13 | version "7.5.0" 14 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" 15 | integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== 16 | dependencies: 17 | chalk "^2.0.0" 18 | esutils "^2.0.2" 19 | js-tokens "^4.0.0" 20 | 21 | "@babel/runtime@^7.4.5": 22 | version "7.6.0" 23 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.0.tgz#4fc1d642a9fd0299754e8b5de62c631cf5568205" 24 | integrity sha512-89eSBLJsxNxOERC0Op4vd+0Bqm6wRMqMbFtV3i0/fbaWw/mJ8Q3eBvgX0G4SyrOOLCtbu98HspF8o09MRT+KzQ== 25 | dependencies: 26 | regenerator-runtime "^0.13.2" 27 | 28 | "@types/eslint-visitor-keys@^1.0.0": 29 | version "1.0.0" 30 | resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d" 31 | integrity sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag== 32 | 33 | "@types/json-schema@^7.0.3": 34 | version "7.0.3" 35 | resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" 36 | integrity sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A== 37 | 38 | "@types/prop-types@*": 39 | version "15.7.2" 40 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.2.tgz#0e58ae66773d7fd7c372a493aff740878ec9ceaa" 41 | integrity sha512-f8JzJNWVhKtc9dg/dyDNfliTKNOJSLa7Oht/ElZdF/UbMUmAH3rLmAk3ODNjw0mZajDEgatA03tRjB4+Dp/tzA== 42 | 43 | "@types/react-native@^0.60.13": 44 | version "0.60.13" 45 | resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.60.13.tgz#381703a787db0f0d49895f3a17b50474f4024551" 46 | integrity sha512-iEydUatGCGE6s5DSUcqnBGjruxor+XUb+52FTjKXvUDaisXoFZHei4yvAMAVrI7LMvVU0DQUlmHUAkoveO/fNQ== 47 | dependencies: 48 | "@types/prop-types" "*" 49 | "@types/react" "*" 50 | 51 | "@types/react@*", "@types/react@^16.9.2": 52 | version "16.9.2" 53 | resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.2.tgz#6d1765431a1ad1877979013906731aae373de268" 54 | integrity sha512-jYP2LWwlh+FTqGd9v7ynUKZzjj98T8x7Yclz479QdRhHfuW9yQ+0jjnD31eXSXutmBpppj5PYNLYLRfnZJvcfg== 55 | dependencies: 56 | "@types/prop-types" "*" 57 | csstype "^2.2.0" 58 | 59 | "@typescript-eslint/eslint-plugin@^2.2.0": 60 | version "2.2.0" 61 | resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.2.0.tgz#cba8caa6ad8df544c46bca674125a31af8c9ac2f" 62 | integrity sha512-rOodtI+IvaO8USa6ValYOrdWm9eQBgqwsY+B0PPiB+aSiK6p6Z4l9jLn/jI3z3WM4mkABAhKIqvGIBl0AFRaLQ== 63 | dependencies: 64 | "@typescript-eslint/experimental-utils" "2.2.0" 65 | eslint-utils "^1.4.2" 66 | functional-red-black-tree "^1.0.1" 67 | regexpp "^2.0.1" 68 | tsutils "^3.17.1" 69 | 70 | "@typescript-eslint/experimental-utils@2.2.0": 71 | version "2.2.0" 72 | resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.2.0.tgz#31d855fbc425168ecf56960c777aacfcca391cff" 73 | integrity sha512-IMhbewFs27Frd/ICHBRfIcsUCK213B8MsEUqvKFK14SDPjPR5JF6jgOGPlroybFTrGWpMvN5tMZdXAf+xcmxsA== 74 | dependencies: 75 | "@types/json-schema" "^7.0.3" 76 | "@typescript-eslint/typescript-estree" "2.2.0" 77 | eslint-scope "^5.0.0" 78 | 79 | "@typescript-eslint/parser@^2.2.0": 80 | version "2.2.0" 81 | resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.2.0.tgz#3cd758ed85ae9be06667beb61bbdf8060f274fb7" 82 | integrity sha512-0mf893kj9L65O5sA7wP6EoYvTybefuRFavUNhT7w9kjhkdZodoViwVS+k3D+ZxKhvtL7xGtP/y/cNMJX9S8W4A== 83 | dependencies: 84 | "@types/eslint-visitor-keys" "^1.0.0" 85 | "@typescript-eslint/experimental-utils" "2.2.0" 86 | "@typescript-eslint/typescript-estree" "2.2.0" 87 | eslint-visitor-keys "^1.1.0" 88 | 89 | "@typescript-eslint/typescript-estree@2.2.0": 90 | version "2.2.0" 91 | resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.2.0.tgz#1e2aad5ed573f9f7a8e3261eb79404264c4fc57f" 92 | integrity sha512-9/6x23A3HwWWRjEQbuR24on5XIfVmV96cDpGR9671eJv1ebFKHj2sGVVAwkAVXR2UNuhY1NeKS2QMv5P8kQb2Q== 93 | dependencies: 94 | glob "^7.1.4" 95 | is-glob "^4.0.1" 96 | lodash.unescape "4.0.1" 97 | semver "^6.3.0" 98 | 99 | acorn-jsx@^5.0.0: 100 | version "5.0.2" 101 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f" 102 | integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw== 103 | 104 | acorn@^6.0.7: 105 | version "6.3.0" 106 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" 107 | integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== 108 | 109 | ajv@^6.10.2, ajv@^6.9.1: 110 | version "6.10.2" 111 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" 112 | integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== 113 | dependencies: 114 | fast-deep-equal "^2.0.1" 115 | fast-json-stable-stringify "^2.0.0" 116 | json-schema-traverse "^0.4.1" 117 | uri-js "^4.2.2" 118 | 119 | ansi-escapes@^3.2.0: 120 | version "3.2.0" 121 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" 122 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 123 | 124 | ansi-regex@^3.0.0: 125 | version "3.0.0" 126 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 127 | 128 | ansi-regex@^4.1.0: 129 | version "4.1.0" 130 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 131 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 132 | 133 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 134 | version "3.2.1" 135 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 136 | dependencies: 137 | color-convert "^1.9.0" 138 | 139 | argparse@^1.0.7: 140 | version "1.0.10" 141 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 142 | dependencies: 143 | sprintf-js "~1.0.2" 144 | 145 | aria-query@^3.0.0: 146 | version "3.0.0" 147 | resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" 148 | integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= 149 | dependencies: 150 | ast-types-flow "0.0.7" 151 | commander "^2.11.0" 152 | 153 | array-includes@^3.0.3: 154 | version "3.0.3" 155 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" 156 | dependencies: 157 | define-properties "^1.1.2" 158 | es-abstract "^1.7.0" 159 | 160 | asap@~2.0.3: 161 | version "2.0.6" 162 | resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" 163 | 164 | ast-types-flow@0.0.7, ast-types-flow@^0.0.7: 165 | version "0.0.7" 166 | resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" 167 | 168 | astral-regex@^1.0.0: 169 | version "1.0.0" 170 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 171 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 172 | 173 | axobject-query@^2.0.2: 174 | version "2.0.2" 175 | resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" 176 | integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== 177 | dependencies: 178 | ast-types-flow "0.0.7" 179 | 180 | balanced-match@^1.0.0: 181 | version "1.0.0" 182 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 183 | 184 | brace-expansion@^1.1.7: 185 | version "1.1.11" 186 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 187 | dependencies: 188 | balanced-match "^1.0.0" 189 | concat-map "0.0.1" 190 | 191 | builtin-modules@^1.0.0: 192 | version "1.1.1" 193 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 194 | 195 | callsites@^3.0.0: 196 | version "3.1.0" 197 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 198 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 199 | 200 | chalk@^2.0.0, chalk@^2.1.0: 201 | version "2.4.1" 202 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" 203 | dependencies: 204 | ansi-styles "^3.2.1" 205 | escape-string-regexp "^1.0.5" 206 | supports-color "^5.3.0" 207 | 208 | chalk@^2.4.2: 209 | version "2.4.2" 210 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 211 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 212 | dependencies: 213 | ansi-styles "^3.2.1" 214 | escape-string-regexp "^1.0.5" 215 | supports-color "^5.3.0" 216 | 217 | chardet@^0.7.0: 218 | version "0.7.0" 219 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" 220 | integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== 221 | 222 | cli-cursor@^2.1.0: 223 | version "2.1.0" 224 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 225 | dependencies: 226 | restore-cursor "^2.0.0" 227 | 228 | cli-width@^2.0.0: 229 | version "2.2.0" 230 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" 231 | 232 | color-convert@^1.9.0: 233 | version "1.9.1" 234 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" 235 | dependencies: 236 | color-name "^1.1.1" 237 | 238 | color-name@^1.1.1: 239 | version "1.1.3" 240 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 241 | 242 | commander@^2.11.0: 243 | version "2.15.1" 244 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" 245 | 246 | concat-map@0.0.1: 247 | version "0.0.1" 248 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 249 | 250 | confusing-browser-globals@^1.0.5: 251 | version "1.0.8" 252 | resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.8.tgz#93ffec1f82a6e2bf2bc36769cc3a92fa20e502f3" 253 | integrity sha512-lI7asCibVJ6Qd3FGU7mu4sfG4try4LX3+GVS+Gv8UlrEf2AeW57piecapnog2UHZSbcX/P/1UDWVaTsblowlZg== 254 | 255 | contains-path@^0.1.0: 256 | version "0.1.0" 257 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 258 | 259 | core-js@^1.0.0: 260 | version "1.2.7" 261 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" 262 | 263 | cross-spawn@^6.0.5: 264 | version "6.0.5" 265 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 266 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 267 | dependencies: 268 | nice-try "^1.0.4" 269 | path-key "^2.0.1" 270 | semver "^5.5.0" 271 | shebang-command "^1.2.0" 272 | which "^1.2.9" 273 | 274 | csstype@^2.2.0: 275 | version "2.6.6" 276 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.6.tgz#c34f8226a94bbb10c32cc0d714afdf942291fc41" 277 | integrity sha512-RpFbQGUE74iyPgvr46U9t1xoQBM8T4BL8SxrN66Le2xYAPSaDJJKeztV3awugusb3g3G9iL8StmkBBXhcbbXhg== 278 | 279 | damerau-levenshtein@^1.0.4: 280 | version "1.0.5" 281 | resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz#780cf7144eb2e8dbd1c3bb83ae31100ccc31a414" 282 | integrity sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA== 283 | 284 | debug@^2.6.8, debug@^2.6.9: 285 | version "2.6.9" 286 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 287 | dependencies: 288 | ms "2.0.0" 289 | 290 | debug@^4.0.1: 291 | version "4.1.1" 292 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 293 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 294 | dependencies: 295 | ms "^2.1.1" 296 | 297 | deep-is@~0.1.3: 298 | version "0.1.3" 299 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 300 | 301 | define-properties@^1.1.2: 302 | version "1.1.2" 303 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" 304 | dependencies: 305 | foreach "^2.0.5" 306 | object-keys "^1.0.8" 307 | 308 | define-properties@^1.1.3: 309 | version "1.1.3" 310 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 311 | dependencies: 312 | object-keys "^1.0.12" 313 | 314 | doctrine@1.5.0: 315 | version "1.5.0" 316 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 317 | dependencies: 318 | esutils "^2.0.2" 319 | isarray "^1.0.0" 320 | 321 | doctrine@^2.1.0: 322 | version "2.1.0" 323 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" 324 | dependencies: 325 | esutils "^2.0.2" 326 | 327 | doctrine@^3.0.0: 328 | version "3.0.0" 329 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 330 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 331 | dependencies: 332 | esutils "^2.0.2" 333 | 334 | emoji-regex@^7.0.1, emoji-regex@^7.0.2: 335 | version "7.0.3" 336 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 337 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 338 | 339 | encoding@^0.1.11: 340 | version "0.1.12" 341 | resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" 342 | dependencies: 343 | iconv-lite "~0.4.13" 344 | 345 | error-ex@^1.2.0: 346 | version "1.3.1" 347 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" 348 | dependencies: 349 | is-arrayish "^0.2.1" 350 | 351 | es-abstract@^1.11.0, es-abstract@^1.12.0: 352 | version "1.14.2" 353 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.14.2.tgz#7ce108fad83068c8783c3cdf62e504e084d8c497" 354 | dependencies: 355 | es-to-primitive "^1.2.0" 356 | function-bind "^1.1.1" 357 | has "^1.0.3" 358 | has-symbols "^1.0.0" 359 | is-callable "^1.1.4" 360 | is-regex "^1.0.4" 361 | object-inspect "^1.6.0" 362 | object-keys "^1.1.1" 363 | string.prototype.trimleft "^2.0.0" 364 | string.prototype.trimright "^2.0.0" 365 | 366 | es-abstract@^1.7.0: 367 | version "1.12.0" 368 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" 369 | dependencies: 370 | es-to-primitive "^1.1.1" 371 | function-bind "^1.1.1" 372 | has "^1.0.1" 373 | is-callable "^1.1.3" 374 | is-regex "^1.0.4" 375 | 376 | es-to-primitive@^1.1.1: 377 | version "1.1.1" 378 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" 379 | dependencies: 380 | is-callable "^1.1.1" 381 | is-date-object "^1.0.1" 382 | is-symbol "^1.0.1" 383 | 384 | es-to-primitive@^1.2.0: 385 | version "1.2.0" 386 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" 387 | dependencies: 388 | is-callable "^1.1.4" 389 | is-date-object "^1.0.1" 390 | is-symbol "^1.0.2" 391 | 392 | escape-string-regexp@^1.0.5: 393 | version "1.0.5" 394 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 395 | 396 | eslint-config-airbnb-base@^13.2.0: 397 | version "13.2.0" 398 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz#f6ea81459ff4dec2dda200c35f1d8f7419d57943" 399 | integrity sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w== 400 | dependencies: 401 | confusing-browser-globals "^1.0.5" 402 | object.assign "^4.1.0" 403 | object.entries "^1.1.0" 404 | 405 | eslint-config-airbnb@^17.1.1: 406 | version "17.1.1" 407 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz#2272e0b86bb1e2b138cdf88d07a3b6f4cda3d626" 408 | integrity sha512-xCu//8a/aWqagKljt+1/qAM62BYZeNq04HmdevG5yUGWpja0I/xhqd6GdLRch5oetEGFiJAnvtGuTEAese53Qg== 409 | dependencies: 410 | eslint-config-airbnb-base "^13.2.0" 411 | object.assign "^4.1.0" 412 | object.entries "^1.1.0" 413 | 414 | eslint-config-prettier@^6.0.0: 415 | version "6.3.0" 416 | resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.3.0.tgz#e73b48e59dc49d950843f3eb96d519e2248286a3" 417 | integrity sha512-EWaGjlDAZRzVFveh2Jsglcere2KK5CJBhkNSa1xs3KfMUGdRiT7lG089eqPdvlzWHpAqaekubOsOMu8W8Yk71A== 418 | dependencies: 419 | get-stdin "^6.0.0" 420 | 421 | eslint-import-resolver-node@^0.3.2: 422 | version "0.3.2" 423 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" 424 | integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== 425 | dependencies: 426 | debug "^2.6.9" 427 | resolve "^1.5.0" 428 | 429 | eslint-module-utils@^2.4.0: 430 | version "2.4.1" 431 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" 432 | dependencies: 433 | debug "^2.6.8" 434 | pkg-dir "^2.0.0" 435 | 436 | eslint-plugin-import@^2.18.2: 437 | version "2.18.2" 438 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" 439 | integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== 440 | dependencies: 441 | array-includes "^3.0.3" 442 | contains-path "^0.1.0" 443 | debug "^2.6.9" 444 | doctrine "1.5.0" 445 | eslint-import-resolver-node "^0.3.2" 446 | eslint-module-utils "^2.4.0" 447 | has "^1.0.3" 448 | minimatch "^3.0.4" 449 | object.values "^1.1.0" 450 | read-pkg-up "^2.0.0" 451 | resolve "^1.11.0" 452 | 453 | eslint-plugin-jsx-a11y@^6.2.3: 454 | version "6.2.3" 455 | resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz#b872a09d5de51af70a97db1eea7dc933043708aa" 456 | integrity sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg== 457 | dependencies: 458 | "@babel/runtime" "^7.4.5" 459 | aria-query "^3.0.0" 460 | array-includes "^3.0.3" 461 | ast-types-flow "^0.0.7" 462 | axobject-query "^2.0.2" 463 | damerau-levenshtein "^1.0.4" 464 | emoji-regex "^7.0.2" 465 | has "^1.0.3" 466 | jsx-ast-utils "^2.2.1" 467 | 468 | eslint-plugin-prettier@^2.6.2: 469 | version "2.7.0" 470 | resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.7.0.tgz#b4312dcf2c1d965379d7f9d5b5f8aaadc6a45904" 471 | integrity sha512-CStQYJgALoQBw3FsBzH0VOVDRnJ/ZimUlpLm226U8qgqYJfPOY/CPK6wyRInMxh73HSKg5wyRwdS4BVYYHwokA== 472 | dependencies: 473 | fast-diff "^1.1.1" 474 | jest-docblock "^21.0.0" 475 | 476 | eslint-plugin-react-hooks@^1.7.0: 477 | version "1.7.0" 478 | resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz#6210b6d5a37205f0b92858f895a4e827020a7d04" 479 | integrity sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA== 480 | 481 | eslint-plugin-react@^7.14.3: 482 | version "7.14.3" 483 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz#911030dd7e98ba49e1b2208599571846a66bdf13" 484 | integrity sha512-EzdyyBWC4Uz2hPYBiEJrKCUi2Fn+BJ9B/pJQcjw5X+x/H2Nm59S4MJIvL4O5NEE0+WbnQwEBxWY03oUk+Bc3FA== 485 | dependencies: 486 | array-includes "^3.0.3" 487 | doctrine "^2.1.0" 488 | has "^1.0.3" 489 | jsx-ast-utils "^2.1.0" 490 | object.entries "^1.1.0" 491 | object.fromentries "^2.0.0" 492 | object.values "^1.1.0" 493 | prop-types "^15.7.2" 494 | resolve "^1.10.1" 495 | 496 | eslint-scope@^4.0.3: 497 | version "4.0.3" 498 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" 499 | integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== 500 | dependencies: 501 | esrecurse "^4.1.0" 502 | estraverse "^4.1.1" 503 | 504 | eslint-scope@^5.0.0: 505 | version "5.0.0" 506 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" 507 | integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== 508 | dependencies: 509 | esrecurse "^4.1.0" 510 | estraverse "^4.1.1" 511 | 512 | eslint-utils@^1.3.1, eslint-utils@^1.4.2: 513 | version "1.4.2" 514 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" 515 | integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== 516 | dependencies: 517 | eslint-visitor-keys "^1.0.0" 518 | 519 | eslint-visitor-keys@^1.0.0: 520 | version "1.0.0" 521 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" 522 | 523 | eslint-visitor-keys@^1.1.0: 524 | version "1.1.0" 525 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" 526 | integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== 527 | 528 | eslint@5.16.0: 529 | version "5.16.0" 530 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" 531 | integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== 532 | dependencies: 533 | "@babel/code-frame" "^7.0.0" 534 | ajv "^6.9.1" 535 | chalk "^2.1.0" 536 | cross-spawn "^6.0.5" 537 | debug "^4.0.1" 538 | doctrine "^3.0.0" 539 | eslint-scope "^4.0.3" 540 | eslint-utils "^1.3.1" 541 | eslint-visitor-keys "^1.0.0" 542 | espree "^5.0.1" 543 | esquery "^1.0.1" 544 | esutils "^2.0.2" 545 | file-entry-cache "^5.0.1" 546 | functional-red-black-tree "^1.0.1" 547 | glob "^7.1.2" 548 | globals "^11.7.0" 549 | ignore "^4.0.6" 550 | import-fresh "^3.0.0" 551 | imurmurhash "^0.1.4" 552 | inquirer "^6.2.2" 553 | js-yaml "^3.13.0" 554 | json-stable-stringify-without-jsonify "^1.0.1" 555 | levn "^0.3.0" 556 | lodash "^4.17.11" 557 | minimatch "^3.0.4" 558 | mkdirp "^0.5.1" 559 | natural-compare "^1.4.0" 560 | optionator "^0.8.2" 561 | path-is-inside "^1.0.2" 562 | progress "^2.0.0" 563 | regexpp "^2.0.1" 564 | semver "^5.5.1" 565 | strip-ansi "^4.0.0" 566 | strip-json-comments "^2.0.1" 567 | table "^5.2.3" 568 | text-table "^0.2.0" 569 | 570 | espree@^5.0.1: 571 | version "5.0.1" 572 | resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" 573 | integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== 574 | dependencies: 575 | acorn "^6.0.7" 576 | acorn-jsx "^5.0.0" 577 | eslint-visitor-keys "^1.0.0" 578 | 579 | esprima@^4.0.0: 580 | version "4.0.0" 581 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" 582 | 583 | esquery@^1.0.1: 584 | version "1.0.1" 585 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" 586 | integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== 587 | dependencies: 588 | estraverse "^4.0.0" 589 | 590 | esrecurse@^4.1.0: 591 | version "4.2.1" 592 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" 593 | dependencies: 594 | estraverse "^4.1.0" 595 | 596 | estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1: 597 | version "4.2.0" 598 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 599 | 600 | esutils@^2.0.2: 601 | version "2.0.2" 602 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 603 | 604 | external-editor@^3.0.3: 605 | version "3.1.0" 606 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" 607 | integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== 608 | dependencies: 609 | chardet "^0.7.0" 610 | iconv-lite "^0.4.24" 611 | tmp "^0.0.33" 612 | 613 | fast-deep-equal@^2.0.1: 614 | version "2.0.1" 615 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" 616 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= 617 | 618 | fast-diff@^1.1.1: 619 | version "1.2.0" 620 | resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" 621 | integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== 622 | 623 | fast-json-stable-stringify@^2.0.0: 624 | version "2.0.0" 625 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 626 | 627 | fast-levenshtein@~2.0.4: 628 | version "2.0.6" 629 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 630 | 631 | fbjs@^0.8.16: 632 | version "0.8.16" 633 | resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" 634 | dependencies: 635 | core-js "^1.0.0" 636 | isomorphic-fetch "^2.1.1" 637 | loose-envify "^1.0.0" 638 | object-assign "^4.1.0" 639 | promise "^7.1.1" 640 | setimmediate "^1.0.5" 641 | ua-parser-js "^0.7.9" 642 | 643 | figures@^2.0.0: 644 | version "2.0.0" 645 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 646 | dependencies: 647 | escape-string-regexp "^1.0.5" 648 | 649 | file-entry-cache@^5.0.1: 650 | version "5.0.1" 651 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" 652 | integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== 653 | dependencies: 654 | flat-cache "^2.0.1" 655 | 656 | find-up@^2.0.0, find-up@^2.1.0: 657 | version "2.1.0" 658 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 659 | dependencies: 660 | locate-path "^2.0.0" 661 | 662 | flat-cache@^2.0.1: 663 | version "2.0.1" 664 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" 665 | integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== 666 | dependencies: 667 | flatted "^2.0.0" 668 | rimraf "2.6.3" 669 | write "1.0.3" 670 | 671 | flatted@^2.0.0: 672 | version "2.0.1" 673 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" 674 | integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== 675 | 676 | foreach@^2.0.5: 677 | version "2.0.5" 678 | resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" 679 | 680 | fs.realpath@^1.0.0: 681 | version "1.0.0" 682 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 683 | 684 | function-bind@^1.1.1: 685 | version "1.1.1" 686 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 687 | 688 | functional-red-black-tree@^1.0.1: 689 | version "1.0.1" 690 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 691 | 692 | get-stdin@^6.0.0: 693 | version "6.0.0" 694 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" 695 | integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== 696 | 697 | glob@^7.1.2: 698 | version "7.1.2" 699 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" 700 | dependencies: 701 | fs.realpath "^1.0.0" 702 | inflight "^1.0.4" 703 | inherits "2" 704 | minimatch "^3.0.4" 705 | once "^1.3.0" 706 | path-is-absolute "^1.0.0" 707 | 708 | glob@^7.1.3, glob@^7.1.4: 709 | version "7.1.4" 710 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" 711 | integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== 712 | dependencies: 713 | fs.realpath "^1.0.0" 714 | inflight "^1.0.4" 715 | inherits "2" 716 | minimatch "^3.0.4" 717 | once "^1.3.0" 718 | path-is-absolute "^1.0.0" 719 | 720 | globals@^11.7.0: 721 | version "11.12.0" 722 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 723 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 724 | 725 | graceful-fs@^4.1.2: 726 | version "4.1.11" 727 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 728 | 729 | has-flag@^3.0.0: 730 | version "3.0.0" 731 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 732 | 733 | has-symbols@^1.0.0: 734 | version "1.0.0" 735 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 736 | 737 | has@^1.0.1, has@^1.0.3: 738 | version "1.0.3" 739 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 740 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 741 | dependencies: 742 | function-bind "^1.1.1" 743 | 744 | hosted-git-info@^2.1.4: 745 | version "2.6.0" 746 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" 747 | 748 | iconv-lite@^0.4.24: 749 | version "0.4.24" 750 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 751 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 752 | dependencies: 753 | safer-buffer ">= 2.1.2 < 3" 754 | 755 | iconv-lite@~0.4.13: 756 | version "0.4.23" 757 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" 758 | dependencies: 759 | safer-buffer ">= 2.1.2 < 3" 760 | 761 | ignore@^4.0.6: 762 | version "4.0.6" 763 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 764 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 765 | 766 | import-fresh@^3.0.0: 767 | version "3.1.0" 768 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz#6d33fa1dcef6df930fae003446f33415af905118" 769 | integrity sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ== 770 | dependencies: 771 | parent-module "^1.0.0" 772 | resolve-from "^4.0.0" 773 | 774 | imurmurhash@^0.1.4: 775 | version "0.1.4" 776 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 777 | 778 | inflight@^1.0.4: 779 | version "1.0.6" 780 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 781 | dependencies: 782 | once "^1.3.0" 783 | wrappy "1" 784 | 785 | inherits@2: 786 | version "2.0.3" 787 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 788 | 789 | inquirer@^6.2.2: 790 | version "6.5.2" 791 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" 792 | integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== 793 | dependencies: 794 | ansi-escapes "^3.2.0" 795 | chalk "^2.4.2" 796 | cli-cursor "^2.1.0" 797 | cli-width "^2.0.0" 798 | external-editor "^3.0.3" 799 | figures "^2.0.0" 800 | lodash "^4.17.12" 801 | mute-stream "0.0.7" 802 | run-async "^2.2.0" 803 | rxjs "^6.4.0" 804 | string-width "^2.1.0" 805 | strip-ansi "^5.1.0" 806 | through "^2.3.6" 807 | 808 | is-arrayish@^0.2.1: 809 | version "0.2.1" 810 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 811 | 812 | is-builtin-module@^1.0.0: 813 | version "1.0.0" 814 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 815 | dependencies: 816 | builtin-modules "^1.0.0" 817 | 818 | is-callable@^1.1.1, is-callable@^1.1.3: 819 | version "1.1.3" 820 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" 821 | 822 | is-callable@^1.1.4: 823 | version "1.1.4" 824 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 825 | 826 | is-date-object@^1.0.1: 827 | version "1.0.1" 828 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 829 | 830 | is-extglob@^2.1.1: 831 | version "2.1.1" 832 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 833 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 834 | 835 | is-fullwidth-code-point@^2.0.0: 836 | version "2.0.0" 837 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 838 | 839 | is-glob@^4.0.1: 840 | version "4.0.1" 841 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 842 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 843 | dependencies: 844 | is-extglob "^2.1.1" 845 | 846 | is-promise@^2.1.0: 847 | version "2.1.0" 848 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" 849 | 850 | is-regex@^1.0.4: 851 | version "1.0.4" 852 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 853 | dependencies: 854 | has "^1.0.1" 855 | 856 | is-stream@^1.0.1: 857 | version "1.1.0" 858 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 859 | 860 | is-symbol@^1.0.1: 861 | version "1.0.1" 862 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" 863 | 864 | is-symbol@^1.0.2: 865 | version "1.0.2" 866 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 867 | dependencies: 868 | has-symbols "^1.0.0" 869 | 870 | isarray@^1.0.0: 871 | version "1.0.0" 872 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 873 | 874 | isexe@^2.0.0: 875 | version "2.0.0" 876 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 877 | 878 | isomorphic-fetch@^2.1.1: 879 | version "2.2.1" 880 | resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" 881 | dependencies: 882 | node-fetch "^1.0.1" 883 | whatwg-fetch ">=0.10.0" 884 | 885 | jest-docblock@^21.0.0: 886 | version "21.2.0" 887 | resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" 888 | integrity sha512-5IZ7sY9dBAYSV+YjQ0Ovb540Ku7AO9Z5o2Cg789xj167iQuZ2cG+z0f3Uct6WeYLbU6aQiM2pCs7sZ+4dotydw== 889 | 890 | js-tokens@^3.0.0: 891 | version "3.0.2" 892 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" 893 | 894 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 895 | version "4.0.0" 896 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 897 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 898 | 899 | js-yaml@^3.13.0: 900 | version "3.13.1" 901 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 902 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 903 | dependencies: 904 | argparse "^1.0.7" 905 | esprima "^4.0.0" 906 | 907 | json-schema-traverse@^0.4.1: 908 | version "0.4.1" 909 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 910 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 911 | 912 | json-stable-stringify-without-jsonify@^1.0.1: 913 | version "1.0.1" 914 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 915 | 916 | jsx-ast-utils@^2.1.0, jsx-ast-utils@^2.2.1: 917 | version "2.2.1" 918 | resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb" 919 | integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ== 920 | dependencies: 921 | array-includes "^3.0.3" 922 | object.assign "^4.1.0" 923 | 924 | levn@^0.3.0, levn@~0.3.0: 925 | version "0.3.0" 926 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 927 | dependencies: 928 | prelude-ls "~1.1.2" 929 | type-check "~0.3.2" 930 | 931 | load-json-file@^2.0.0: 932 | version "2.0.0" 933 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 934 | dependencies: 935 | graceful-fs "^4.1.2" 936 | parse-json "^2.2.0" 937 | pify "^2.0.0" 938 | strip-bom "^3.0.0" 939 | 940 | locate-path@^2.0.0: 941 | version "2.0.0" 942 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 943 | dependencies: 944 | p-locate "^2.0.0" 945 | path-exists "^3.0.0" 946 | 947 | lodash.unescape@4.0.1: 948 | version "4.0.1" 949 | resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c" 950 | integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw= 951 | 952 | lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14: 953 | version "4.17.15" 954 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" 955 | integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== 956 | 957 | loose-envify@^1.0.0, loose-envify@^1.3.1: 958 | version "1.3.1" 959 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" 960 | dependencies: 961 | js-tokens "^3.0.0" 962 | 963 | loose-envify@^1.4.0: 964 | version "1.4.0" 965 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 966 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 967 | dependencies: 968 | js-tokens "^3.0.0 || ^4.0.0" 969 | 970 | mimic-fn@^1.0.0: 971 | version "1.2.0" 972 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" 973 | 974 | minimatch@^3.0.4: 975 | version "3.0.4" 976 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 977 | dependencies: 978 | brace-expansion "^1.1.7" 979 | 980 | minimist@0.0.8: 981 | version "0.0.8" 982 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 983 | 984 | mkdirp@^0.5.1: 985 | version "0.5.1" 986 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 987 | dependencies: 988 | minimist "0.0.8" 989 | 990 | ms@2.0.0: 991 | version "2.0.0" 992 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 993 | 994 | ms@^2.1.1: 995 | version "2.1.2" 996 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 997 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 998 | 999 | mute-stream@0.0.7: 1000 | version "0.0.7" 1001 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 1002 | 1003 | natural-compare@^1.4.0: 1004 | version "1.4.0" 1005 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 1006 | 1007 | nice-try@^1.0.4: 1008 | version "1.0.5" 1009 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 1010 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 1011 | 1012 | node-fetch@^1.0.1: 1013 | version "1.7.3" 1014 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" 1015 | dependencies: 1016 | encoding "^0.1.11" 1017 | is-stream "^1.0.1" 1018 | 1019 | normalize-package-data@^2.3.2: 1020 | version "2.4.0" 1021 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" 1022 | dependencies: 1023 | hosted-git-info "^2.1.4" 1024 | is-builtin-module "^1.0.0" 1025 | semver "2 || 3 || 4 || 5" 1026 | validate-npm-package-license "^3.0.1" 1027 | 1028 | object-assign@^4.1.0, object-assign@^4.1.1: 1029 | version "4.1.1" 1030 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1031 | 1032 | object-inspect@^1.6.0: 1033 | version "1.6.0" 1034 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" 1035 | 1036 | object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: 1037 | version "1.1.1" 1038 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 1039 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 1040 | 1041 | object-keys@^1.0.8: 1042 | version "1.0.11" 1043 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" 1044 | 1045 | object.assign@^4.1.0: 1046 | version "4.1.0" 1047 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 1048 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 1049 | dependencies: 1050 | define-properties "^1.1.2" 1051 | function-bind "^1.1.1" 1052 | has-symbols "^1.0.0" 1053 | object-keys "^1.0.11" 1054 | 1055 | object.entries@^1.1.0: 1056 | version "1.1.0" 1057 | resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" 1058 | integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== 1059 | dependencies: 1060 | define-properties "^1.1.3" 1061 | es-abstract "^1.12.0" 1062 | function-bind "^1.1.1" 1063 | has "^1.0.3" 1064 | 1065 | object.fromentries@^2.0.0: 1066 | version "2.0.0" 1067 | resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" 1068 | integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== 1069 | dependencies: 1070 | define-properties "^1.1.2" 1071 | es-abstract "^1.11.0" 1072 | function-bind "^1.1.1" 1073 | has "^1.0.1" 1074 | 1075 | object.values@^1.1.0: 1076 | version "1.1.0" 1077 | resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" 1078 | dependencies: 1079 | define-properties "^1.1.3" 1080 | es-abstract "^1.12.0" 1081 | function-bind "^1.1.1" 1082 | has "^1.0.3" 1083 | 1084 | once@^1.3.0: 1085 | version "1.4.0" 1086 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1087 | dependencies: 1088 | wrappy "1" 1089 | 1090 | onetime@^2.0.0: 1091 | version "2.0.1" 1092 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 1093 | dependencies: 1094 | mimic-fn "^1.0.0" 1095 | 1096 | optionator@^0.8.2: 1097 | version "0.8.2" 1098 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 1099 | dependencies: 1100 | deep-is "~0.1.3" 1101 | fast-levenshtein "~2.0.4" 1102 | levn "~0.3.0" 1103 | prelude-ls "~1.1.2" 1104 | type-check "~0.3.2" 1105 | wordwrap "~1.0.0" 1106 | 1107 | os-tmpdir@~1.0.2: 1108 | version "1.0.2" 1109 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 1110 | 1111 | p-limit@^1.1.0: 1112 | version "1.2.0" 1113 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" 1114 | dependencies: 1115 | p-try "^1.0.0" 1116 | 1117 | p-locate@^2.0.0: 1118 | version "2.0.0" 1119 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 1120 | dependencies: 1121 | p-limit "^1.1.0" 1122 | 1123 | p-try@^1.0.0: 1124 | version "1.0.0" 1125 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" 1126 | 1127 | parent-module@^1.0.0: 1128 | version "1.0.1" 1129 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 1130 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1131 | dependencies: 1132 | callsites "^3.0.0" 1133 | 1134 | parse-json@^2.2.0: 1135 | version "2.2.0" 1136 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 1137 | dependencies: 1138 | error-ex "^1.2.0" 1139 | 1140 | path-exists@^3.0.0: 1141 | version "3.0.0" 1142 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 1143 | 1144 | path-is-absolute@^1.0.0: 1145 | version "1.0.1" 1146 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1147 | 1148 | path-is-inside@^1.0.2: 1149 | version "1.0.2" 1150 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 1151 | 1152 | path-key@^2.0.1: 1153 | version "2.0.1" 1154 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 1155 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 1156 | 1157 | path-parse@^1.0.6: 1158 | version "1.0.6" 1159 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 1160 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 1161 | 1162 | path-type@^2.0.0: 1163 | version "2.0.0" 1164 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 1165 | dependencies: 1166 | pify "^2.0.0" 1167 | 1168 | pify@^2.0.0: 1169 | version "2.3.0" 1170 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 1171 | 1172 | pkg-dir@^2.0.0: 1173 | version "2.0.0" 1174 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" 1175 | dependencies: 1176 | find-up "^2.1.0" 1177 | 1178 | prelude-ls@~1.1.2: 1179 | version "1.1.2" 1180 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 1181 | 1182 | prettier@^1.18.2: 1183 | version "1.18.2" 1184 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.18.2.tgz#6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea" 1185 | integrity sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw== 1186 | 1187 | progress@^2.0.0: 1188 | version "2.0.0" 1189 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" 1190 | 1191 | promise@^7.1.1: 1192 | version "7.3.1" 1193 | resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" 1194 | dependencies: 1195 | asap "~2.0.3" 1196 | 1197 | prop-types@^15.5.10: 1198 | version "15.6.1" 1199 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.1.tgz#36644453564255ddda391191fb3a125cbdf654ca" 1200 | dependencies: 1201 | fbjs "^0.8.16" 1202 | loose-envify "^1.3.1" 1203 | object-assign "^4.1.1" 1204 | 1205 | prop-types@^15.7.2: 1206 | version "15.7.2" 1207 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" 1208 | integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== 1209 | dependencies: 1210 | loose-envify "^1.4.0" 1211 | object-assign "^4.1.1" 1212 | react-is "^16.8.1" 1213 | 1214 | punycode@^2.1.0: 1215 | version "2.1.1" 1216 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1217 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1218 | 1219 | react-is@^16.8.1: 1220 | version "16.9.0" 1221 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" 1222 | integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== 1223 | 1224 | react-native-animatable@^1.3.2: 1225 | version "1.3.2" 1226 | resolved "https://registry.yarnpkg.com/react-native-animatable/-/react-native-animatable-1.3.2.tgz#4783ee1a73dc98815aef234ce6b819f80bfe7d80" 1227 | integrity sha512-rmah3KQ63ft8DxkzFUwJSuZeq+oSYwldoGF4DTOR5WM2WR5wiWLgBAtrAHlI3Di3by323uOR21s+MlqPcHz2Kw== 1228 | dependencies: 1229 | prop-types "^15.5.10" 1230 | 1231 | read-pkg-up@^2.0.0: 1232 | version "2.0.0" 1233 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 1234 | dependencies: 1235 | find-up "^2.0.0" 1236 | read-pkg "^2.0.0" 1237 | 1238 | read-pkg@^2.0.0: 1239 | version "2.0.0" 1240 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 1241 | dependencies: 1242 | load-json-file "^2.0.0" 1243 | normalize-package-data "^2.3.2" 1244 | path-type "^2.0.0" 1245 | 1246 | regenerator-runtime@^0.13.2: 1247 | version "0.13.3" 1248 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" 1249 | integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== 1250 | 1251 | regexpp@^2.0.1: 1252 | version "2.0.1" 1253 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" 1254 | integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== 1255 | 1256 | resolve-from@^4.0.0: 1257 | version "4.0.0" 1258 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 1259 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1260 | 1261 | resolve@^1.10.1, resolve@^1.11.0, resolve@^1.5.0: 1262 | version "1.12.0" 1263 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" 1264 | dependencies: 1265 | path-parse "^1.0.6" 1266 | 1267 | restore-cursor@^2.0.0: 1268 | version "2.0.0" 1269 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 1270 | dependencies: 1271 | onetime "^2.0.0" 1272 | signal-exit "^3.0.2" 1273 | 1274 | rimraf@2.6.3: 1275 | version "2.6.3" 1276 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 1277 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 1278 | dependencies: 1279 | glob "^7.1.3" 1280 | 1281 | run-async@^2.2.0: 1282 | version "2.3.0" 1283 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" 1284 | dependencies: 1285 | is-promise "^2.1.0" 1286 | 1287 | rxjs@^6.4.0: 1288 | version "6.5.3" 1289 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.3.tgz#510e26317f4db91a7eb1de77d9dd9ba0a4899a3a" 1290 | integrity sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA== 1291 | dependencies: 1292 | tslib "^1.9.0" 1293 | 1294 | "safer-buffer@>= 2.1.2 < 3": 1295 | version "2.1.2" 1296 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 1297 | 1298 | "semver@2 || 3 || 4 || 5": 1299 | version "5.5.0" 1300 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" 1301 | 1302 | semver@^5.5.0, semver@^5.5.1: 1303 | version "5.7.1" 1304 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 1305 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1306 | 1307 | semver@^6.3.0: 1308 | version "6.3.0" 1309 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 1310 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1311 | 1312 | setimmediate@^1.0.5: 1313 | version "1.0.5" 1314 | resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" 1315 | 1316 | shebang-command@^1.2.0: 1317 | version "1.2.0" 1318 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 1319 | dependencies: 1320 | shebang-regex "^1.0.0" 1321 | 1322 | shebang-regex@^1.0.0: 1323 | version "1.0.0" 1324 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 1325 | 1326 | signal-exit@^3.0.2: 1327 | version "3.0.2" 1328 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 1329 | 1330 | slice-ansi@^2.1.0: 1331 | version "2.1.0" 1332 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" 1333 | integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== 1334 | dependencies: 1335 | ansi-styles "^3.2.0" 1336 | astral-regex "^1.0.0" 1337 | is-fullwidth-code-point "^2.0.0" 1338 | 1339 | spdx-correct@^3.0.0: 1340 | version "3.0.0" 1341 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" 1342 | dependencies: 1343 | spdx-expression-parse "^3.0.0" 1344 | spdx-license-ids "^3.0.0" 1345 | 1346 | spdx-exceptions@^2.1.0: 1347 | version "2.1.0" 1348 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" 1349 | 1350 | spdx-expression-parse@^3.0.0: 1351 | version "3.0.0" 1352 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 1353 | dependencies: 1354 | spdx-exceptions "^2.1.0" 1355 | spdx-license-ids "^3.0.0" 1356 | 1357 | spdx-license-ids@^3.0.0: 1358 | version "3.0.0" 1359 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" 1360 | 1361 | sprintf-js@~1.0.2: 1362 | version "1.0.3" 1363 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 1364 | 1365 | string-width@^2.1.0: 1366 | version "2.1.1" 1367 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 1368 | dependencies: 1369 | is-fullwidth-code-point "^2.0.0" 1370 | strip-ansi "^4.0.0" 1371 | 1372 | string-width@^3.0.0: 1373 | version "3.1.0" 1374 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 1375 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 1376 | dependencies: 1377 | emoji-regex "^7.0.1" 1378 | is-fullwidth-code-point "^2.0.0" 1379 | strip-ansi "^5.1.0" 1380 | 1381 | string.prototype.trimleft@^2.0.0: 1382 | version "2.1.0" 1383 | resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" 1384 | integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== 1385 | dependencies: 1386 | define-properties "^1.1.3" 1387 | function-bind "^1.1.1" 1388 | 1389 | string.prototype.trimright@^2.0.0: 1390 | version "2.1.0" 1391 | resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" 1392 | integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== 1393 | dependencies: 1394 | define-properties "^1.1.3" 1395 | function-bind "^1.1.1" 1396 | 1397 | strip-ansi@^4.0.0: 1398 | version "4.0.0" 1399 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 1400 | dependencies: 1401 | ansi-regex "^3.0.0" 1402 | 1403 | strip-ansi@^5.1.0: 1404 | version "5.2.0" 1405 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 1406 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 1407 | dependencies: 1408 | ansi-regex "^4.1.0" 1409 | 1410 | strip-bom@^3.0.0: 1411 | version "3.0.0" 1412 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1413 | 1414 | strip-json-comments@^2.0.1: 1415 | version "2.0.1" 1416 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 1417 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 1418 | 1419 | supports-color@^5.3.0: 1420 | version "5.4.0" 1421 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" 1422 | dependencies: 1423 | has-flag "^3.0.0" 1424 | 1425 | table@^5.2.3: 1426 | version "5.4.6" 1427 | resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" 1428 | integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== 1429 | dependencies: 1430 | ajv "^6.10.2" 1431 | lodash "^4.17.14" 1432 | slice-ansi "^2.1.0" 1433 | string-width "^3.0.0" 1434 | 1435 | text-table@^0.2.0: 1436 | version "0.2.0" 1437 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1438 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 1439 | 1440 | through@^2.3.6: 1441 | version "2.3.8" 1442 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 1443 | 1444 | tmp@^0.0.33: 1445 | version "0.0.33" 1446 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 1447 | dependencies: 1448 | os-tmpdir "~1.0.2" 1449 | 1450 | tslib@^1.8.1, tslib@^1.9.0: 1451 | version "1.10.0" 1452 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" 1453 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 1454 | 1455 | tsutils@^3.17.1: 1456 | version "3.17.1" 1457 | resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" 1458 | integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== 1459 | dependencies: 1460 | tslib "^1.8.1" 1461 | 1462 | type-check@~0.3.2: 1463 | version "0.3.2" 1464 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 1465 | dependencies: 1466 | prelude-ls "~1.1.2" 1467 | 1468 | typescript@^3.6.2: 1469 | version "3.6.2" 1470 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.6.2.tgz#105b0f1934119dde543ac8eb71af3a91009efe54" 1471 | integrity sha512-lmQ4L+J6mnu3xweP8+rOrUwzmN+MRAj7TgtJtDaXE5PMyX2kCrklhg3rvOsOIfNeAWMQWO2F1GPc1kMD2vLAfw== 1472 | 1473 | ua-parser-js@^0.7.9: 1474 | version "0.7.18" 1475 | resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.18.tgz#a7bfd92f56edfb117083b69e31d2aa8882d4b1ed" 1476 | 1477 | uri-js@^4.2.2: 1478 | version "4.2.2" 1479 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 1480 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 1481 | dependencies: 1482 | punycode "^2.1.0" 1483 | 1484 | validate-npm-package-license@^3.0.1: 1485 | version "3.0.3" 1486 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" 1487 | dependencies: 1488 | spdx-correct "^3.0.0" 1489 | spdx-expression-parse "^3.0.0" 1490 | 1491 | whatwg-fetch@>=0.10.0: 1492 | version "2.0.4" 1493 | resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" 1494 | 1495 | which@^1.2.9: 1496 | version "1.3.1" 1497 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 1498 | dependencies: 1499 | isexe "^2.0.0" 1500 | 1501 | wordwrap@~1.0.0: 1502 | version "1.0.0" 1503 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 1504 | 1505 | wrappy@1: 1506 | version "1.0.2" 1507 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1508 | 1509 | write@1.0.3: 1510 | version "1.0.3" 1511 | resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" 1512 | integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== 1513 | dependencies: 1514 | mkdirp "^0.5.1" 1515 | --------------------------------------------------------------------------------