├── .eslintrc.js ├── .gitignore ├── README.md ├── SearchMixin.js ├── gridsome.client.js ├── gridsome.server.js ├── package.json └── yarn.lock /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['travisreynolds-node'] 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | yarn-error.log 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # gridsome-plugin-flexsearch 2 | 3 | > Add lightning fast search to Gridsome with FlexSearch - [demo](https://gridsome-shopify-starter.netlify.app) 4 | 5 | Table of contents: 6 | 7 | 1. [Installation](#installation) 8 | 2. [Configuration](#configuration) 9 | - [Additional Options](#additional-options) 10 | - [FlexSearch Options](#flexsearch-options) 11 | 3. [Usage](#usage) 12 | 13 | ## Installation 14 | 15 | _Requires a Node version >=12.x, and at least Gridsome `0.7.15`._ 16 | 17 | ```bash 18 | # Yarn 19 | yarn add gridsome-plugin-flexsearch 20 | # NPM 21 | npm i gridsome-plugin-flexsearch 22 | ``` 23 | 24 | `gridsome.config.js` 25 | ```js 26 | module.exports = { 27 | // ... 28 | plugins: [ 29 | { 30 | use: 'gridsome-plugin-flexsearch', 31 | options: { 32 | searchFields: ['title'], 33 | collections: [ 34 | { 35 | typeName: 'SomeType', 36 | indexName: 'SomeType', 37 | fields: ['title', 'handle', 'description'] 38 | } 39 | ] 40 | } 41 | } 42 | ] 43 | } 44 | ``` 45 | 46 | ## Configuration 47 | 48 | This plugin requires a few configurations to get going. 49 | 50 | Firstly, you will need to add the fields that will be included in the index and searched. Note that this is different from the below `fields` option, as fields will not be searched - they are just what is returned in each result. 51 | 52 | | Option | Explanation | 53 | | ---------- | --------| 54 | | `searchFields` | An array of keys in each node, that will be used for the search index. | 55 | 56 | You can also specify optional flexsearch configurations under a `flexsearch` key - the default configuration is to use the `default` profile, which will setup the FlexSearch instance with some sensible defaults. 57 | However you can override this profile, or set custom options such as `tokenize`, `resolution` etc. Read the [FlexSearch](https://github.com/nextapps-de/flexsearch#presets) docs to find out more. 58 | 59 | Next, you need to specify what types you want to add to the index with `collections: [...`. `collections` expects an array of objects, each with at least two fields, and one optional field. 60 | 61 | | Option | Explanation | 62 | | ------------- | ------------- | 63 | | `typeName` | The Schema typename - e.g. `Post`. All nodes with this typename will be added to the search index. | 64 | | `indexName` | The name of the index created for this collection - can be the same as `typeName`. It is added to the result, so you can differentiate between `Collection` & `Product` search results for example. | 65 | | `fields` | An array of keys that will be extracted from each node, and added to the search index doc (what the search result will return when queried). | 66 | | `transform` | Transforms a schema to enable searching in nested data structures (optional). | 67 | 68 | Fields will be returned with the search result under a `node` key, so for example you could include a product title, slug, and image to show the product name & image in the search result, and add a link to the relevant page. 69 | 70 | An example setup is shown below, assuming there is a `Post` and a `Collection` type: 71 | 72 | `gridsome.config.js` 73 | ```js 74 | module.exports = { 75 | // ... 76 | plugins: [ 77 | { 78 | use: 'gridsome-plugin-flexsearch', 79 | options: { 80 | searchFields: ['title', 'tags', 'authors'], 81 | collections: [ 82 | { 83 | typeName: 'Post' 84 | indexName: 'Post', 85 | fields: ['id', 'title', 'slug', 'image'] 86 | }, 87 | { 88 | typeName: 'Collection' 89 | indexName: 'Collection', 90 | fields: ['id', 'title', 'path'], 91 | transform: (collection) => ({ 92 | ...collection, 93 | authors: collection.authors.map(author => author.name) 94 | }) 95 | } 96 | ] 97 | } 98 | } 99 | ] 100 | } 101 | ``` 102 | 103 | ### GraphQL Source 104 | 105 | Previous versions of this plugin(`<=1.0`) supported using the GraphQL source plugin - however, this has now been deprecated, due to difficulties in querying and fetching the data - it is usually better to import your data into Gridsome's store anyway. 106 | 107 | ### Additional Options 108 | 109 | | Option | Explanation | 110 | | ---------- | --------| 111 | | `chunk` | Defaults to false. If `true` or a Number (docs array chunk size), it will split up the FlexSearch index & docs JSON file to reduce filesizes - useful if you have a huge amount of data. | 112 | | `compress` | Defaults to false. If you have a large amount of data (5k+ nodes) you can compress this data to substantially decrease the JSON size. Note that this may actually _increase_ the JSON size if you have a small amount of data, due to the way compression works. | 113 | | `autoFetch` | Defaults to true. This plugin will usually automatically fetch and import the generated FlexSearch index & docs as soon as the site is loaded, but if you only want this to happen on a certain route (i.e. `/search`) to reduce other page load times for example, you can specify that route with this option, or disable it completely and import yourself with `this.$search.import({ ...`] | 114 | 115 | Some examples of these configurations are shown below: 116 | 117 | `gridsome.config.js` 118 | ```js 119 | // ... 120 | options: { 121 | chunk: true, 122 | compress: true, 123 | autoFetch: '/search', 124 | // Or 125 | chunk: 1000, 126 | autoFetch: ['/search', '/collections'], 127 | // ... 128 | } 129 | // ... 130 | ``` 131 | 132 | ### FlexSearch Options 133 | 134 | Custom FlexSearch options can be configured under the `flexsearch` key, for example setting default profiles, or adding custom matchers/encoders. 135 | 136 | `gridsome.config.js` 137 | ```js 138 | // ... 139 | options: { 140 | flexsearch: { 141 | cache: true, 142 | profile: 'match' 143 | } 144 | // ... 145 | } 146 | // ... 147 | ``` 148 | 149 | ## Usage 150 | 151 | Now you can use it in your Gridsome site - the FlexSearch instance is available at `this.$search`: 152 | 153 | ```vue 154 | 165 | 166 | 180 | ``` 181 | 182 | The search results will be an array of objects, each containing an `id`, the index name as `index`, a `node` object containing the fields you specified in collections, and the `path` to the resource (if using the `gridsome.config.js` `templates` option) which you can use with `g-link`. Image processing is also supported (for local images only), so you can use processed images with `g-image` as ususal. 183 | 184 | A handy mixin is also included with this package, to save you writing the above boilerplate: 185 | 186 | ```vue 187 | 205 | 206 | 212 | ``` 213 | -------------------------------------------------------------------------------- /SearchMixin.js: -------------------------------------------------------------------------------- 1 | export default { 2 | data: () => ({ 3 | searchTerm: '' 4 | }), 5 | computed: { 6 | searchResults () { 7 | const searchTerm = this.searchTerm 8 | if (searchTerm.length < 3) return [] 9 | return this.$search.search({ query: searchTerm, limit: 8 }) 10 | } 11 | }, 12 | watch: { 13 | $route (to, from) { 14 | this.searchTerm = '' 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /gridsome.client.js: -------------------------------------------------------------------------------- 1 | import FlexSearch from 'flexsearch' 2 | import cjson from 'compressed-json' 3 | import pMap from 'p-map' 4 | 5 | export default async function (Vue, options, { isClient, router }) { 6 | const { flexsearch, chunk = false, compress = false, autoFetch = true, autoSetup = true, searchFields, pathPrefix, siteUrl } = options 7 | 8 | if (isClient) { 9 | const basePath = pathPrefix && (process.env.NODE_ENV !== 'development' || location.origin === siteUrl) ? `${pathPrefix}/flexsearch` : '/flexsearch' 10 | 11 | // Data fetch functions 12 | const loadNormalMode = async search => { 13 | let searchIndex = await fetch(`${basePath}.json`).then(r => r.json()) 14 | if (compress) searchIndex = cjson.decompress(searchIndex) 15 | search.import(searchIndex, { serialize: false }) 16 | } 17 | 18 | const loadChunkMode = async search => { 19 | const { index, docs } = await fetch(`${basePath}/manifest.json`).then(r => r.json()) 20 | const fetchData = id => fetch(`${basePath}/${id}.json`).then(r => r.json()).then(j => compress ? cjson.decompress(j) : j) 21 | 22 | const searchIndex = await pMap(index, fetchData) 23 | search.import(searchIndex, { index: true, doc: false, serialize: false }) 24 | 25 | let searchDocs = {} 26 | for await (const id of docs) { 27 | const data = await fetchData(id) 28 | searchDocs = { ...searchDocs, ...Object.fromEntries(data) } 29 | } 30 | search.import([searchDocs], { index: false, doc: true, serialize: false }) 31 | } 32 | 33 | // Manually setup the Flexsearch instance 34 | if (!autoSetup) { 35 | Vue.prototype.$flexsearch = { 36 | flexsearch: { 37 | ...flexsearch, 38 | doc: { 39 | id: 'id', 40 | field: searchFields 41 | } 42 | }, 43 | basePath, 44 | loadIndex: loadNormalMode 45 | } 46 | return 47 | } 48 | 49 | // Setup global Flexsearch Instance 50 | const search = new FlexSearch({ 51 | ...flexsearch, 52 | doc: { 53 | id: 'id', 54 | field: searchFields 55 | } 56 | }) 57 | Vue.prototype.$search = search 58 | Vue.prototype.$searchOptions = { basePath } 59 | Vue.prototype.$searchLoad = () => chunk ? loadChunkMode(search) : loadNormalMode(search) 60 | 61 | if (!autoFetch) return 62 | 63 | if (typeof autoFetch === 'string' || typeof autoFetch === 'object') { 64 | let loaded = false 65 | const pathsToLoad = typeof autoFetch === 'string' ? [autoFetch] : autoFetch 66 | return router.afterEach(({ path: currentPath }) => { 67 | if (pathsToLoad.includes(currentPath) && !loaded) { 68 | loaded = true 69 | return chunk ? loadChunkMode(search) : loadNormalMode(search) 70 | } 71 | }) 72 | } else if (chunk) return loadChunkMode(search) 73 | else return loadNormalMode(search) 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /gridsome.server.js: -------------------------------------------------------------------------------- 1 | const FlexSearch = require('flexsearch') 2 | const _chunk = require('lodash.chunk') 3 | const cjson = require('compressed-json') 4 | const consola = require('consola') 5 | const fs = require('fs') 6 | const gql = require('gql-query-builder') 7 | const pMap = require('p-map') 8 | const path = require('path') 9 | const { getNamedType, isScalarType, isObjectType } = require('gridsome/graphql') 10 | const { nanoid } = require('nanoid') 11 | 12 | const reporter = consola.withTag('gridsome-plugin-flexsearch') 13 | 14 | function FlexSearchIndex (api, options) { 15 | // Setup defaults 16 | const { searchFields = [], collections = [], flexsearch = {}, chunk = false, compress = false } = options 17 | const { profile = 'default', ...flexOptions } = flexsearch 18 | 19 | // Create base FlexSearch instance 20 | const search = new FlexSearch({ 21 | profile, 22 | ...flexOptions, 23 | doc: { 24 | id: 'id', 25 | field: searchFields 26 | } 27 | }) 28 | 29 | // Set client options 30 | const clientOptions = { pathPrefix: api._app.config._pathPrefix, siteUrl: api._app.config.siteUrl, ...options } 31 | api.setClientOptions(clientOptions) 32 | 33 | // Function to get collection from graphql, and transform nodes 34 | async function getCollection (collection, { schema, graphql }) { 35 | const type = schema.getType(collection.typeName) 36 | if (!type) { 37 | reporter.error(`Collection ${collection.typeName} does not exist in schema, skipping.`) 38 | return [] 39 | } 40 | 41 | const fields = [...new Set([...collection.fields, ...searchFields, 'id'])] 42 | const typeFields = type.getFields() 43 | 44 | const excludeFields = ['pageInfo', 'belongsTo'] 45 | const getFields = (field, fetched = []) => { 46 | if (!field || excludeFields.includes(field.name)) return [] 47 | 48 | const type = getNamedType(field.type) 49 | if (isScalarType(type)) return field.name 50 | if (isObjectType(type) && !fetched.includes(field.name)) { 51 | const scalarFields = Object.values(type.getFields()).flatMap(subField => getFields(subField, [...fetched, field.name])) 52 | if (!scalarFields.length) return [] 53 | return { [ field.name ]: scalarFields } 54 | } 55 | return [] 56 | } 57 | 58 | const queryFields = fields.flatMap(key => { 59 | const field = typeFields[ key ] 60 | if (!field && collection.fields.includes(key)) { 61 | reporter.warn(`Field ${key} does not exist in type ${collection.typeName}, skipping.`) 62 | return [] 63 | } 64 | 65 | return getFields(field) 66 | }) 67 | 68 | const operationName = collection.typeName.split('').reduce((str, l, i) => i === 0 ? str.concat(l.toUpperCase()) : str.concat(l), 'all') 69 | const { query } = gql.query({ 70 | operation: operationName, 71 | fields: [{ edges: [{ node: queryFields }] }] 72 | }) 73 | 74 | const { data, errors } = await graphql(query) 75 | if (errors) { 76 | reporter.error(errors[ 0 ].message) 77 | return [] 78 | } 79 | 80 | const nodes = data[ operationName ].edges.map(({ node }) => node) 81 | 82 | return nodes.map(data => { 83 | const node = typeof collection.transform === 'function' ? collection.transform(data) : data 84 | 85 | const indexFields = Object.fromEntries(searchFields.map(key => { 86 | const value = node[ key ] 87 | return typeof value === 'object' ? [key, JSON.stringify(value)] : [key, value] 88 | })) 89 | 90 | return { 91 | node, 92 | id: node.id, 93 | index: collection.indexName, 94 | ...indexFields 95 | } 96 | }) 97 | } 98 | 99 | // After the Store has been filled, and the Schema has been created, start the index import. 100 | api.onBootstrap(async () => { 101 | const graphql = api._app.graphql 102 | const schema = api._app.schema.getSchema() 103 | 104 | // Create initial index 105 | const docsArrays = await pMap(collections, collection => getCollection(collection, { graphql, schema })) 106 | const docs = docsArrays.flat() 107 | reporter.info(`Added ${docs.length} nodes to Search Index`) 108 | search.add(docs) 109 | }) 110 | 111 | // Setup an endpoint for the dev server 112 | api.configureServer(app => { 113 | reporter.info('Serving search index...') 114 | if (chunk) { 115 | const { manifest, chunks } = createManifest() 116 | app.get('/flexsearch/manifest.json', (req, res) => { 117 | res.json(manifest) 118 | }) 119 | app.get('/flexsearch/:chunk', (req, res) => { 120 | const chunkName = req.params.chunk.replace('.json', '') 121 | if (!chunk) res.status(404).send(`That chunk can't be found.`) 122 | res.json(chunks[ chunkName ]) 123 | }) 124 | } else { 125 | let searchIndex = search.export({ serialize: false }) 126 | if (compress) searchIndex = cjson.compress(searchIndex) 127 | app.get('/flexsearch.json', (req, res) => { 128 | res.json(searchIndex) 129 | }) 130 | } 131 | }) 132 | 133 | // Create the manifest and save to disk on build 134 | api.afterBuild(async ({ config }) => { 135 | const outputDir = config.outputDir || config.outDir 136 | 137 | if (chunk) { 138 | reporter.info('Creating search index (chunked mode)...') 139 | const flexsearchDir = path.join(outputDir, 'flexsearch') 140 | const manifestFilename = path.join(flexsearchDir, 'manifest.json') 141 | 142 | const { manifest, chunks } = createManifest() 143 | 144 | await fs.mkdirSync(flexsearchDir) 145 | await fs.writeFileSync(manifestFilename, JSON.stringify(manifest)) 146 | 147 | for (const [name, data] of Object.entries(chunks)) { 148 | const chunkFilename = path.join(flexsearchDir, `${name}.json`) 149 | await fs.writeFileSync(chunkFilename, JSON.stringify(data)) 150 | } 151 | 152 | reporter.info('Saved search index.') 153 | } else { 154 | reporter.info('Creating search index...') 155 | const filename = path.join(outputDir, 'flexsearch.json') 156 | let searchIndex = search.export({ serialize: false }) 157 | if (compress) searchIndex = cjson.compress(searchIndex) 158 | await fs.writeFileSync(filename, JSON.stringify(searchIndex)) 159 | reporter.info('Saved search index.') 160 | } 161 | }) 162 | 163 | // Create a manifest, that declares the index location(s) 164 | function createManifest () { 165 | const searchIndex = search.export({ serialize: false, index: true, doc: false }) 166 | const [searchDocs] = search.export({ serialize: false, index: false, doc: true }) 167 | 168 | const chunkedIndex = searchIndex.reduce((manifest, index) => { 169 | const chunk = { id: nanoid(), index } 170 | return { 171 | ids: [...manifest.ids, chunk.id], 172 | indexes: { 173 | ...manifest.indexes, 174 | [ chunk.id ]: compress ? cjson.compress(chunk.index) : chunk.index 175 | } 176 | } 177 | }, { ids: [], indexes: {} }) 178 | 179 | const chunkSize = typeof chunk === 'number' ? chunk : 2000 180 | const chunkedDocs = _chunk(Object.entries(searchDocs), chunkSize).reduce((manifest, docs) => { 181 | const chunk = { id: nanoid(), docs } 182 | 183 | return { 184 | ids: [...manifest.ids, chunk.id], 185 | docs: { 186 | ...manifest.docs, 187 | [ chunk.id ]: cjson.compress(chunk.docs) 188 | } 189 | } 190 | }, { ids: [], docs: {} }) 191 | 192 | const manifest = { 193 | hash: nanoid(), 194 | index: chunkedIndex.ids, 195 | docs: chunkedDocs.ids 196 | } 197 | 198 | return { manifest, chunks: { ...chunkedDocs.docs, ...chunkedIndex.indexes } } 199 | } 200 | } 201 | 202 | module.exports = FlexSearchIndex 203 | 204 | module.exports.defaultOptions = () => ({ 205 | chunk: false, 206 | compress: false, 207 | autoFetch: true, 208 | autoSetup: true, 209 | flexsearch: { profile: 'default' }, 210 | searchFields: [], 211 | collections: [] 212 | }) 213 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gridsome-plugin-flexsearch", 3 | "version": "2.0.2", 4 | "description": "Add lightning fast search to Gridsome with FlexSearch", 5 | "main": "gridsome.server.js", 6 | "license": "MIT", 7 | "author": { 8 | "name": "Travis Reynolds", 9 | "email": "travis@travisreynolds.dev" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "https://github.com/travis-r6s/gridsome-plugin-flexsearch.git" 14 | }, 15 | "keywords": [ 16 | "gridsome", 17 | "gridsome-plugin", 18 | "flexsearch", 19 | "search" 20 | ], 21 | "engines": { 22 | "node": ">=12.x" 23 | }, 24 | "dependencies": { 25 | "compressed-json": "^1.0.16", 26 | "consola": "^2.15.3", 27 | "core-js": "^3.12.1", 28 | "flexsearch": "^0.6.32", 29 | "gql-query-builder": "^3.5.5", 30 | "lodash.chunk": "^4.2.0", 31 | "nanoid": "^3.1.23", 32 | "p-map": "^4.0.0", 33 | "regenerator-runtime": "^0.13.7" 34 | }, 35 | "peerDependencies": { 36 | "gridsome": ">=0.7.15" 37 | }, 38 | "devDependencies": { 39 | "eslint-config-travisreynolds-node": "1.2.0" 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /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", "@babel/code-frame@^7.8.3": 6 | version "7.8.3" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" 8 | integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== 9 | dependencies: 10 | "@babel/highlight" "^7.8.3" 11 | 12 | "@babel/generator@^7.9.0": 13 | version "7.9.4" 14 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.4.tgz#12441e90c3b3c4159cdecf312075bf1a8ce2dbce" 15 | integrity sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA== 16 | dependencies: 17 | "@babel/types" "^7.9.0" 18 | jsesc "^2.5.1" 19 | lodash "^4.17.13" 20 | source-map "^0.5.0" 21 | 22 | "@babel/helper-function-name@^7.8.3": 23 | version "7.8.3" 24 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz#eeeb665a01b1f11068e9fb86ad56a1cb1a824cca" 25 | integrity sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA== 26 | dependencies: 27 | "@babel/helper-get-function-arity" "^7.8.3" 28 | "@babel/template" "^7.8.3" 29 | "@babel/types" "^7.8.3" 30 | 31 | "@babel/helper-get-function-arity@^7.8.3": 32 | version "7.8.3" 33 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5" 34 | integrity sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA== 35 | dependencies: 36 | "@babel/types" "^7.8.3" 37 | 38 | "@babel/helper-split-export-declaration@^7.8.3": 39 | version "7.8.3" 40 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" 41 | integrity sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA== 42 | dependencies: 43 | "@babel/types" "^7.8.3" 44 | 45 | "@babel/helper-validator-identifier@^7.9.0": 46 | version "7.9.0" 47 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed" 48 | integrity sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw== 49 | 50 | "@babel/highlight@^7.8.3": 51 | version "7.9.0" 52 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" 53 | integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ== 54 | dependencies: 55 | "@babel/helper-validator-identifier" "^7.9.0" 56 | chalk "^2.0.0" 57 | js-tokens "^4.0.0" 58 | 59 | "@babel/parser@^7.7.0", "@babel/parser@^7.8.6", "@babel/parser@^7.9.0": 60 | version "7.9.4" 61 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8" 62 | integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA== 63 | 64 | "@babel/template@^7.8.3": 65 | version "7.8.6" 66 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" 67 | integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg== 68 | dependencies: 69 | "@babel/code-frame" "^7.8.3" 70 | "@babel/parser" "^7.8.6" 71 | "@babel/types" "^7.8.6" 72 | 73 | "@babel/traverse@^7.7.0": 74 | version "7.9.0" 75 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.0.tgz#d3882c2830e513f4fe4cec9fe76ea1cc78747892" 76 | integrity sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w== 77 | dependencies: 78 | "@babel/code-frame" "^7.8.3" 79 | "@babel/generator" "^7.9.0" 80 | "@babel/helper-function-name" "^7.8.3" 81 | "@babel/helper-split-export-declaration" "^7.8.3" 82 | "@babel/parser" "^7.9.0" 83 | "@babel/types" "^7.9.0" 84 | debug "^4.1.0" 85 | globals "^11.1.0" 86 | lodash "^4.17.13" 87 | 88 | "@babel/types@^7.7.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0": 89 | version "7.9.0" 90 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.0.tgz#00b064c3df83ad32b2dbf5ff07312b15c7f1efb5" 91 | integrity sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng== 92 | dependencies: 93 | "@babel/helper-validator-identifier" "^7.9.0" 94 | lodash "^4.17.13" 95 | to-fast-properties "^2.0.0" 96 | 97 | "@eslint/eslintrc@^0.1.3": 98 | version "0.1.3" 99 | resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.1.3.tgz#7d1a2b2358552cc04834c0979bd4275362e37085" 100 | integrity sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA== 101 | dependencies: 102 | ajv "^6.12.4" 103 | debug "^4.1.1" 104 | espree "^7.3.0" 105 | globals "^12.1.0" 106 | ignore "^4.0.6" 107 | import-fresh "^3.2.1" 108 | js-yaml "^3.13.1" 109 | lodash "^4.17.19" 110 | minimatch "^3.0.4" 111 | strip-json-comments "^3.1.1" 112 | 113 | "@types/color-name@^1.1.1": 114 | version "1.1.1" 115 | resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" 116 | integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== 117 | 118 | "@types/json5@^0.0.29": 119 | version "0.0.29" 120 | resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" 121 | integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= 122 | 123 | acorn-jsx@^5.2.0: 124 | version "5.2.0" 125 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" 126 | integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== 127 | 128 | acorn@^7.4.0: 129 | version "7.4.0" 130 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" 131 | integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== 132 | 133 | aggregate-error@^3.0.0: 134 | version "3.0.1" 135 | resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" 136 | integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== 137 | dependencies: 138 | clean-stack "^2.0.0" 139 | indent-string "^4.0.0" 140 | 141 | ajv@^6.10.0, ajv@^6.10.2: 142 | version "6.12.0" 143 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.0.tgz#06d60b96d87b8454a5adaba86e7854da629db4b7" 144 | integrity sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw== 145 | dependencies: 146 | fast-deep-equal "^3.1.1" 147 | fast-json-stable-stringify "^2.0.0" 148 | json-schema-traverse "^0.4.1" 149 | uri-js "^4.2.2" 150 | 151 | ajv@^6.12.4: 152 | version "6.12.4" 153 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.4.tgz#0614facc4522127fa713445c6bfd3ebd376e2234" 154 | integrity sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ== 155 | dependencies: 156 | fast-deep-equal "^3.1.1" 157 | fast-json-stable-stringify "^2.0.0" 158 | json-schema-traverse "^0.4.1" 159 | uri-js "^4.2.2" 160 | 161 | ansi-colors@^4.1.1: 162 | version "4.1.1" 163 | resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" 164 | integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== 165 | 166 | ansi-regex@^4.1.0: 167 | version "4.1.0" 168 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 169 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 170 | 171 | ansi-regex@^5.0.0: 172 | version "5.0.0" 173 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" 174 | integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== 175 | 176 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 177 | version "3.2.1" 178 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 179 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 180 | dependencies: 181 | color-convert "^1.9.0" 182 | 183 | ansi-styles@^4.1.0: 184 | version "4.2.1" 185 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" 186 | integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== 187 | dependencies: 188 | "@types/color-name" "^1.1.1" 189 | color-convert "^2.0.1" 190 | 191 | argparse@^1.0.7: 192 | version "1.0.10" 193 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 194 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 195 | dependencies: 196 | sprintf-js "~1.0.2" 197 | 198 | array-includes@^3.1.1: 199 | version "3.1.1" 200 | resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" 201 | integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ== 202 | dependencies: 203 | define-properties "^1.1.3" 204 | es-abstract "^1.17.0" 205 | is-string "^1.0.5" 206 | 207 | array.prototype.flat@^1.2.3: 208 | version "1.2.3" 209 | resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b" 210 | integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ== 211 | dependencies: 212 | define-properties "^1.1.3" 213 | es-abstract "^1.17.0-next.1" 214 | 215 | astral-regex@^1.0.0: 216 | version "1.0.0" 217 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 218 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 219 | 220 | babel-eslint@^10.1.0: 221 | version "10.1.0" 222 | resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" 223 | integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== 224 | dependencies: 225 | "@babel/code-frame" "^7.0.0" 226 | "@babel/parser" "^7.7.0" 227 | "@babel/traverse" "^7.7.0" 228 | "@babel/types" "^7.7.0" 229 | eslint-visitor-keys "^1.0.0" 230 | resolve "^1.12.0" 231 | 232 | balanced-match@^1.0.0: 233 | version "1.0.0" 234 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 235 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 236 | 237 | brace-expansion@^1.1.7: 238 | version "1.1.11" 239 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 240 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 241 | dependencies: 242 | balanced-match "^1.0.0" 243 | concat-map "0.0.1" 244 | 245 | callsites@^3.0.0: 246 | version "3.1.0" 247 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 248 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 249 | 250 | chalk@^2.0.0: 251 | version "2.4.2" 252 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 253 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 254 | dependencies: 255 | ansi-styles "^3.2.1" 256 | escape-string-regexp "^1.0.5" 257 | supports-color "^5.3.0" 258 | 259 | chalk@^4.0.0: 260 | version "4.1.0" 261 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" 262 | integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== 263 | dependencies: 264 | ansi-styles "^4.1.0" 265 | supports-color "^7.1.0" 266 | 267 | clean-stack@^2.0.0: 268 | version "2.2.0" 269 | resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" 270 | integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== 271 | 272 | color-convert@^1.9.0: 273 | version "1.9.3" 274 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 275 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 276 | dependencies: 277 | color-name "1.1.3" 278 | 279 | color-convert@^2.0.1: 280 | version "2.0.1" 281 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 282 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 283 | dependencies: 284 | color-name "~1.1.4" 285 | 286 | color-name@1.1.3: 287 | version "1.1.3" 288 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 289 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 290 | 291 | color-name@~1.1.4: 292 | version "1.1.4" 293 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 294 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 295 | 296 | compressed-json@^1.0.16: 297 | version "1.0.16" 298 | resolved "https://registry.yarnpkg.com/compressed-json/-/compressed-json-1.0.16.tgz#51333f4d0faf046b714b842374ce5ae75e7aac49" 299 | integrity sha512-fklkJ76BEyTPMbLv75nEEhFyHSLS0dt0AIGECBeCgd7O/IECIg7khOIi+2aKIutrjHaazr5J8M7edVDFEfRA/g== 300 | 301 | concat-map@0.0.1: 302 | version "0.0.1" 303 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 304 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 305 | 306 | consola@^2.15.3: 307 | version "2.15.3" 308 | resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" 309 | integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== 310 | 311 | contains-path@^0.1.0: 312 | version "0.1.0" 313 | resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" 314 | integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= 315 | 316 | core-js@^3.12.1: 317 | version "3.12.1" 318 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.12.1.tgz#6b5af4ff55616c08a44d386f1f510917ff204112" 319 | integrity sha512-Ne9DKPHTObRuB09Dru5AjwKjY4cJHVGu+y5f7coGn1E9Grkc3p2iBwE9AI/nJzsE29mQF7oq+mhYYRqOMFN1Bw== 320 | 321 | cross-spawn@^7.0.2: 322 | version "7.0.3" 323 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" 324 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 325 | dependencies: 326 | path-key "^3.1.0" 327 | shebang-command "^2.0.0" 328 | which "^2.0.1" 329 | 330 | debug@^2.6.9: 331 | version "2.6.9" 332 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 333 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 334 | dependencies: 335 | ms "2.0.0" 336 | 337 | debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: 338 | version "4.1.1" 339 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 340 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 341 | dependencies: 342 | ms "^2.1.1" 343 | 344 | deep-is@^0.1.3: 345 | version "0.1.3" 346 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 347 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 348 | 349 | define-properties@^1.1.2, define-properties@^1.1.3: 350 | version "1.1.3" 351 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 352 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 353 | dependencies: 354 | object-keys "^1.0.12" 355 | 356 | doctrine@1.5.0: 357 | version "1.5.0" 358 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 359 | integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= 360 | dependencies: 361 | esutils "^2.0.2" 362 | isarray "^1.0.0" 363 | 364 | doctrine@^3.0.0: 365 | version "3.0.0" 366 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 367 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 368 | dependencies: 369 | esutils "^2.0.2" 370 | 371 | emoji-regex@^7.0.1: 372 | version "7.0.3" 373 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 374 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 375 | 376 | enquirer@^2.3.5: 377 | version "2.3.6" 378 | resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" 379 | integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== 380 | dependencies: 381 | ansi-colors "^4.1.1" 382 | 383 | error-ex@^1.2.0: 384 | version "1.3.2" 385 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 386 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 387 | dependencies: 388 | is-arrayish "^0.2.1" 389 | 390 | es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.5: 391 | version "1.17.5" 392 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" 393 | integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== 394 | dependencies: 395 | es-to-primitive "^1.2.1" 396 | function-bind "^1.1.1" 397 | has "^1.0.3" 398 | has-symbols "^1.0.1" 399 | is-callable "^1.1.5" 400 | is-regex "^1.0.5" 401 | object-inspect "^1.7.0" 402 | object-keys "^1.1.1" 403 | object.assign "^4.1.0" 404 | string.prototype.trimleft "^2.1.1" 405 | string.prototype.trimright "^2.1.1" 406 | 407 | es-to-primitive@^1.2.1: 408 | version "1.2.1" 409 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" 410 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 411 | dependencies: 412 | is-callable "^1.1.4" 413 | is-date-object "^1.0.1" 414 | is-symbol "^1.0.2" 415 | 416 | escape-string-regexp@^1.0.5: 417 | version "1.0.5" 418 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 419 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 420 | 421 | eslint-config-standard@^14.1.1: 422 | version "14.1.1" 423 | resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz#830a8e44e7aef7de67464979ad06b406026c56ea" 424 | integrity sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg== 425 | 426 | eslint-config-travisreynolds-node@1.2.0: 427 | version "1.2.0" 428 | resolved "https://registry.yarnpkg.com/eslint-config-travisreynolds-node/-/eslint-config-travisreynolds-node-1.2.0.tgz#6e5ffa3154bf3700a4b05e026b8bef3fb43f731f" 429 | integrity sha512-qwfaK96TptDxBAbg/q90+P581UXy0g8TJD+hTMEEIZ27ZoR9jPx4A920mtoWf4QoLHvc51zdqn56PeZYPRTaDg== 430 | dependencies: 431 | babel-eslint "^10.1.0" 432 | eslint "^7.8.1" 433 | eslint-config-standard "^14.1.1" 434 | eslint-plugin-import "^2.22.0" 435 | eslint-plugin-node "^11.1.0" 436 | eslint-plugin-promise "^4.2.1" 437 | eslint-plugin-standard "^4.0.1" 438 | 439 | eslint-import-resolver-node@^0.3.3: 440 | version "0.3.4" 441 | resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" 442 | integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== 443 | dependencies: 444 | debug "^2.6.9" 445 | resolve "^1.13.1" 446 | 447 | eslint-module-utils@^2.6.0: 448 | version "2.6.0" 449 | resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" 450 | integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== 451 | dependencies: 452 | debug "^2.6.9" 453 | pkg-dir "^2.0.0" 454 | 455 | eslint-plugin-es@^3.0.0: 456 | version "3.0.0" 457 | resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.0.tgz#98cb1bc8ab0aa807977855e11ad9d1c9422d014b" 458 | integrity sha512-6/Jb/J/ZvSebydwbBJO1R9E5ky7YeElfK56Veh7e4QGFHCXoIXGH9HhVz+ibJLM3XJ1XjP+T7rKBLUa/Y7eIng== 459 | dependencies: 460 | eslint-utils "^2.0.0" 461 | regexpp "^3.0.0" 462 | 463 | eslint-plugin-import@^2.22.0: 464 | version "2.22.0" 465 | resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz#92f7736fe1fde3e2de77623c838dd992ff5ffb7e" 466 | integrity sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg== 467 | dependencies: 468 | array-includes "^3.1.1" 469 | array.prototype.flat "^1.2.3" 470 | contains-path "^0.1.0" 471 | debug "^2.6.9" 472 | doctrine "1.5.0" 473 | eslint-import-resolver-node "^0.3.3" 474 | eslint-module-utils "^2.6.0" 475 | has "^1.0.3" 476 | minimatch "^3.0.4" 477 | object.values "^1.1.1" 478 | read-pkg-up "^2.0.0" 479 | resolve "^1.17.0" 480 | tsconfig-paths "^3.9.0" 481 | 482 | eslint-plugin-node@^11.1.0: 483 | version "11.1.0" 484 | resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" 485 | integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== 486 | dependencies: 487 | eslint-plugin-es "^3.0.0" 488 | eslint-utils "^2.0.0" 489 | ignore "^5.1.1" 490 | minimatch "^3.0.4" 491 | resolve "^1.10.1" 492 | semver "^6.1.0" 493 | 494 | eslint-plugin-promise@^4.2.1: 495 | version "4.2.1" 496 | resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a" 497 | integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw== 498 | 499 | eslint-plugin-standard@^4.0.1: 500 | version "4.0.1" 501 | resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz#ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4" 502 | integrity sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ== 503 | 504 | eslint-scope@^5.1.0: 505 | version "5.1.0" 506 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" 507 | integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== 508 | dependencies: 509 | esrecurse "^4.1.0" 510 | estraverse "^4.1.1" 511 | 512 | eslint-utils@^2.0.0: 513 | version "2.0.0" 514 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd" 515 | integrity sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA== 516 | dependencies: 517 | eslint-visitor-keys "^1.1.0" 518 | 519 | eslint-utils@^2.1.0: 520 | version "2.1.0" 521 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" 522 | integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== 523 | dependencies: 524 | eslint-visitor-keys "^1.1.0" 525 | 526 | eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: 527 | version "1.1.0" 528 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" 529 | integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== 530 | 531 | eslint-visitor-keys@^1.3.0: 532 | version "1.3.0" 533 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" 534 | integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== 535 | 536 | eslint@^7.8.1: 537 | version "7.8.1" 538 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.8.1.tgz#e59de3573fb6a5be8ff526c791571646d124a8fa" 539 | integrity sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w== 540 | dependencies: 541 | "@babel/code-frame" "^7.0.0" 542 | "@eslint/eslintrc" "^0.1.3" 543 | ajv "^6.10.0" 544 | chalk "^4.0.0" 545 | cross-spawn "^7.0.2" 546 | debug "^4.0.1" 547 | doctrine "^3.0.0" 548 | enquirer "^2.3.5" 549 | eslint-scope "^5.1.0" 550 | eslint-utils "^2.1.0" 551 | eslint-visitor-keys "^1.3.0" 552 | espree "^7.3.0" 553 | esquery "^1.2.0" 554 | esutils "^2.0.2" 555 | file-entry-cache "^5.0.1" 556 | functional-red-black-tree "^1.0.1" 557 | glob-parent "^5.0.0" 558 | globals "^12.1.0" 559 | ignore "^4.0.6" 560 | import-fresh "^3.0.0" 561 | imurmurhash "^0.1.4" 562 | is-glob "^4.0.0" 563 | js-yaml "^3.13.1" 564 | json-stable-stringify-without-jsonify "^1.0.1" 565 | levn "^0.4.1" 566 | lodash "^4.17.19" 567 | minimatch "^3.0.4" 568 | natural-compare "^1.4.0" 569 | optionator "^0.9.1" 570 | progress "^2.0.0" 571 | regexpp "^3.1.0" 572 | semver "^7.2.1" 573 | strip-ansi "^6.0.0" 574 | strip-json-comments "^3.1.0" 575 | table "^5.2.3" 576 | text-table "^0.2.0" 577 | v8-compile-cache "^2.0.3" 578 | 579 | espree@^7.3.0: 580 | version "7.3.0" 581 | resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.0.tgz#dc30437cf67947cf576121ebd780f15eeac72348" 582 | integrity sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw== 583 | dependencies: 584 | acorn "^7.4.0" 585 | acorn-jsx "^5.2.0" 586 | eslint-visitor-keys "^1.3.0" 587 | 588 | esprima@^4.0.0: 589 | version "4.0.1" 590 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 591 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 592 | 593 | esquery@^1.2.0: 594 | version "1.3.1" 595 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" 596 | integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== 597 | dependencies: 598 | estraverse "^5.1.0" 599 | 600 | esrecurse@^4.1.0: 601 | version "4.2.1" 602 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" 603 | integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== 604 | dependencies: 605 | estraverse "^4.1.0" 606 | 607 | estraverse@^4.1.0, estraverse@^4.1.1: 608 | version "4.3.0" 609 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" 610 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 611 | 612 | estraverse@^5.1.0: 613 | version "5.2.0" 614 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" 615 | integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== 616 | 617 | esutils@^2.0.2: 618 | version "2.0.3" 619 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 620 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 621 | 622 | fast-deep-equal@^3.1.1: 623 | version "3.1.1" 624 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" 625 | integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== 626 | 627 | fast-json-stable-stringify@^2.0.0: 628 | version "2.1.0" 629 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 630 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 631 | 632 | fast-levenshtein@^2.0.6: 633 | version "2.0.6" 634 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 635 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 636 | 637 | file-entry-cache@^5.0.1: 638 | version "5.0.1" 639 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" 640 | integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== 641 | dependencies: 642 | flat-cache "^2.0.1" 643 | 644 | find-up@^2.0.0, find-up@^2.1.0: 645 | version "2.1.0" 646 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 647 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 648 | dependencies: 649 | locate-path "^2.0.0" 650 | 651 | flat-cache@^2.0.1: 652 | version "2.0.1" 653 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" 654 | integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== 655 | dependencies: 656 | flatted "^2.0.0" 657 | rimraf "2.6.3" 658 | write "1.0.3" 659 | 660 | flatted@^2.0.0: 661 | version "2.0.2" 662 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" 663 | integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== 664 | 665 | flexsearch@^0.6.32: 666 | version "0.6.32" 667 | resolved "https://registry.yarnpkg.com/flexsearch/-/flexsearch-0.6.32.tgz#1e20684d317af65baa445cdd9864a5f5b320f510" 668 | integrity sha512-EF1BWkhwoeLtbIlDbY/vDSLBen/E5l/f1Vg7iX5CDymQCamcx1vhlc3tIZxIDplPjgi0jhG37c67idFbjg+v+Q== 669 | 670 | fs.realpath@^1.0.0: 671 | version "1.0.0" 672 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 673 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 674 | 675 | function-bind@^1.1.1: 676 | version "1.1.1" 677 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 678 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 679 | 680 | functional-red-black-tree@^1.0.1: 681 | version "1.0.1" 682 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 683 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= 684 | 685 | glob-parent@^5.0.0: 686 | version "5.1.2" 687 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" 688 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 689 | dependencies: 690 | is-glob "^4.0.1" 691 | 692 | glob@^7.1.3: 693 | version "7.1.6" 694 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 695 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 696 | dependencies: 697 | fs.realpath "^1.0.0" 698 | inflight "^1.0.4" 699 | inherits "2" 700 | minimatch "^3.0.4" 701 | once "^1.3.0" 702 | path-is-absolute "^1.0.0" 703 | 704 | globals@^11.1.0: 705 | version "11.12.0" 706 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 707 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 708 | 709 | globals@^12.1.0: 710 | version "12.4.0" 711 | resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" 712 | integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== 713 | dependencies: 714 | type-fest "^0.8.1" 715 | 716 | gql-query-builder@^3.5.5: 717 | version "3.5.5" 718 | resolved "https://registry.yarnpkg.com/gql-query-builder/-/gql-query-builder-3.5.5.tgz#fd35547c6e99d33d72a1df50478e3efbc600af4f" 719 | integrity sha512-ovc2KaLE/e5Wx9+ViWCZhjbGkPw0qxY973NIvw03kDY8PohQTaI3nnG/yH//RjB/Gz5X4QDwp7Nkg1ZqFnSySQ== 720 | 721 | graceful-fs@^4.1.2: 722 | version "4.2.3" 723 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" 724 | integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== 725 | 726 | has-flag@^3.0.0: 727 | version "3.0.0" 728 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 729 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 730 | 731 | has-flag@^4.0.0: 732 | version "4.0.0" 733 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 734 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 735 | 736 | has-symbols@^1.0.0, has-symbols@^1.0.1: 737 | version "1.0.1" 738 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" 739 | integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== 740 | 741 | has@^1.0.3: 742 | version "1.0.3" 743 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 744 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 745 | dependencies: 746 | function-bind "^1.1.1" 747 | 748 | hosted-git-info@^2.1.4: 749 | version "2.8.9" 750 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" 751 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== 752 | 753 | ignore@^4.0.6: 754 | version "4.0.6" 755 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 756 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 757 | 758 | ignore@^5.1.1: 759 | version "5.1.4" 760 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" 761 | integrity sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A== 762 | 763 | import-fresh@^3.0.0, import-fresh@^3.2.1: 764 | version "3.2.1" 765 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" 766 | integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== 767 | dependencies: 768 | parent-module "^1.0.0" 769 | resolve-from "^4.0.0" 770 | 771 | imurmurhash@^0.1.4: 772 | version "0.1.4" 773 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 774 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 775 | 776 | indent-string@^4.0.0: 777 | version "4.0.0" 778 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" 779 | integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== 780 | 781 | inflight@^1.0.4: 782 | version "1.0.6" 783 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 784 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 785 | dependencies: 786 | once "^1.3.0" 787 | wrappy "1" 788 | 789 | inherits@2: 790 | version "2.0.4" 791 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 792 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 793 | 794 | is-arrayish@^0.2.1: 795 | version "0.2.1" 796 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 797 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 798 | 799 | is-callable@^1.1.4, is-callable@^1.1.5: 800 | version "1.1.5" 801 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" 802 | integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== 803 | 804 | is-date-object@^1.0.1: 805 | version "1.0.2" 806 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" 807 | integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== 808 | 809 | is-extglob@^2.1.1: 810 | version "2.1.1" 811 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 812 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 813 | 814 | is-fullwidth-code-point@^2.0.0: 815 | version "2.0.0" 816 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 817 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 818 | 819 | is-glob@^4.0.0, is-glob@^4.0.1: 820 | version "4.0.1" 821 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 822 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 823 | dependencies: 824 | is-extglob "^2.1.1" 825 | 826 | is-regex@^1.0.5: 827 | version "1.0.5" 828 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" 829 | integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ== 830 | dependencies: 831 | has "^1.0.3" 832 | 833 | is-string@^1.0.5: 834 | version "1.0.5" 835 | resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" 836 | integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== 837 | 838 | is-symbol@^1.0.2: 839 | version "1.0.3" 840 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" 841 | integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== 842 | dependencies: 843 | has-symbols "^1.0.1" 844 | 845 | isarray@^1.0.0: 846 | version "1.0.0" 847 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 848 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 849 | 850 | isexe@^2.0.0: 851 | version "2.0.0" 852 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 853 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 854 | 855 | js-tokens@^4.0.0: 856 | version "4.0.0" 857 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 858 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 859 | 860 | js-yaml@^3.13.1: 861 | version "3.13.1" 862 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" 863 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== 864 | dependencies: 865 | argparse "^1.0.7" 866 | esprima "^4.0.0" 867 | 868 | jsesc@^2.5.1: 869 | version "2.5.2" 870 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 871 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 872 | 873 | json-schema-traverse@^0.4.1: 874 | version "0.4.1" 875 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 876 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 877 | 878 | json-stable-stringify-without-jsonify@^1.0.1: 879 | version "1.0.1" 880 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 881 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= 882 | 883 | json5@^1.0.1: 884 | version "1.0.1" 885 | resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" 886 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 887 | dependencies: 888 | minimist "^1.2.0" 889 | 890 | levn@^0.4.1: 891 | version "0.4.1" 892 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" 893 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 894 | dependencies: 895 | prelude-ls "^1.2.1" 896 | type-check "~0.4.0" 897 | 898 | load-json-file@^2.0.0: 899 | version "2.0.0" 900 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" 901 | integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= 902 | dependencies: 903 | graceful-fs "^4.1.2" 904 | parse-json "^2.2.0" 905 | pify "^2.0.0" 906 | strip-bom "^3.0.0" 907 | 908 | locate-path@^2.0.0: 909 | version "2.0.0" 910 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 911 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 912 | dependencies: 913 | p-locate "^2.0.0" 914 | path-exists "^3.0.0" 915 | 916 | lodash.chunk@^4.2.0: 917 | version "4.2.0" 918 | resolved "https://registry.yarnpkg.com/lodash.chunk/-/lodash.chunk-4.2.0.tgz#66e5ce1f76ed27b4303d8c6512e8d1216e8106bc" 919 | integrity sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw= 920 | 921 | lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.19: 922 | version "4.17.21" 923 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 924 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 925 | 926 | minimatch@^3.0.4: 927 | version "3.0.4" 928 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 929 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 930 | dependencies: 931 | brace-expansion "^1.1.7" 932 | 933 | minimist@^1.2.0, minimist@^1.2.5: 934 | version "1.2.5" 935 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 936 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 937 | 938 | mkdirp@^0.5.1: 939 | version "0.5.4" 940 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.4.tgz#fd01504a6797ec5c9be81ff43d204961ed64a512" 941 | integrity sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw== 942 | dependencies: 943 | minimist "^1.2.5" 944 | 945 | ms@2.0.0: 946 | version "2.0.0" 947 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 948 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 949 | 950 | ms@^2.1.1: 951 | version "2.1.2" 952 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 953 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 954 | 955 | nanoid@^3.1.23: 956 | version "3.1.23" 957 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz#f744086ce7c2bc47ee0a8472574d5c78e4183a81" 958 | integrity sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw== 959 | 960 | natural-compare@^1.4.0: 961 | version "1.4.0" 962 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 963 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 964 | 965 | normalize-package-data@^2.3.2: 966 | version "2.5.0" 967 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" 968 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 969 | dependencies: 970 | hosted-git-info "^2.1.4" 971 | resolve "^1.10.0" 972 | semver "2 || 3 || 4 || 5" 973 | validate-npm-package-license "^3.0.1" 974 | 975 | object-inspect@^1.7.0: 976 | version "1.7.0" 977 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" 978 | integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== 979 | 980 | object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: 981 | version "1.1.1" 982 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 983 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 984 | 985 | object.assign@^4.1.0: 986 | version "4.1.0" 987 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 988 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 989 | dependencies: 990 | define-properties "^1.1.2" 991 | function-bind "^1.1.1" 992 | has-symbols "^1.0.0" 993 | object-keys "^1.0.11" 994 | 995 | object.values@^1.1.1: 996 | version "1.1.1" 997 | resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" 998 | integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== 999 | dependencies: 1000 | define-properties "^1.1.3" 1001 | es-abstract "^1.17.0-next.1" 1002 | function-bind "^1.1.1" 1003 | has "^1.0.3" 1004 | 1005 | once@^1.3.0: 1006 | version "1.4.0" 1007 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1008 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1009 | dependencies: 1010 | wrappy "1" 1011 | 1012 | optionator@^0.9.1: 1013 | version "0.9.1" 1014 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" 1015 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== 1016 | dependencies: 1017 | deep-is "^0.1.3" 1018 | fast-levenshtein "^2.0.6" 1019 | levn "^0.4.1" 1020 | prelude-ls "^1.2.1" 1021 | type-check "^0.4.0" 1022 | word-wrap "^1.2.3" 1023 | 1024 | p-limit@^1.1.0: 1025 | version "1.3.0" 1026 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" 1027 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 1028 | dependencies: 1029 | p-try "^1.0.0" 1030 | 1031 | p-locate@^2.0.0: 1032 | version "2.0.0" 1033 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 1034 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 1035 | dependencies: 1036 | p-limit "^1.1.0" 1037 | 1038 | p-map@^4.0.0: 1039 | version "4.0.0" 1040 | resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" 1041 | integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== 1042 | dependencies: 1043 | aggregate-error "^3.0.0" 1044 | 1045 | p-try@^1.0.0: 1046 | version "1.0.0" 1047 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" 1048 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 1049 | 1050 | parent-module@^1.0.0: 1051 | version "1.0.1" 1052 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 1053 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1054 | dependencies: 1055 | callsites "^3.0.0" 1056 | 1057 | parse-json@^2.2.0: 1058 | version "2.2.0" 1059 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 1060 | integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= 1061 | dependencies: 1062 | error-ex "^1.2.0" 1063 | 1064 | path-exists@^3.0.0: 1065 | version "3.0.0" 1066 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 1067 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 1068 | 1069 | path-is-absolute@^1.0.0: 1070 | version "1.0.1" 1071 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1072 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1073 | 1074 | path-key@^3.1.0: 1075 | version "3.1.1" 1076 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" 1077 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1078 | 1079 | path-parse@^1.0.6: 1080 | version "1.0.7" 1081 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" 1082 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1083 | 1084 | path-type@^2.0.0: 1085 | version "2.0.0" 1086 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" 1087 | integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= 1088 | dependencies: 1089 | pify "^2.0.0" 1090 | 1091 | pify@^2.0.0: 1092 | version "2.3.0" 1093 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 1094 | integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= 1095 | 1096 | pkg-dir@^2.0.0: 1097 | version "2.0.0" 1098 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" 1099 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 1100 | dependencies: 1101 | find-up "^2.1.0" 1102 | 1103 | prelude-ls@^1.2.1: 1104 | version "1.2.1" 1105 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" 1106 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1107 | 1108 | progress@^2.0.0: 1109 | version "2.0.3" 1110 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" 1111 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== 1112 | 1113 | punycode@^2.1.0: 1114 | version "2.1.1" 1115 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1116 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1117 | 1118 | read-pkg-up@^2.0.0: 1119 | version "2.0.0" 1120 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" 1121 | integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= 1122 | dependencies: 1123 | find-up "^2.0.0" 1124 | read-pkg "^2.0.0" 1125 | 1126 | read-pkg@^2.0.0: 1127 | version "2.0.0" 1128 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" 1129 | integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= 1130 | dependencies: 1131 | load-json-file "^2.0.0" 1132 | normalize-package-data "^2.3.2" 1133 | path-type "^2.0.0" 1134 | 1135 | regenerator-runtime@^0.13.7: 1136 | version "0.13.7" 1137 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55" 1138 | integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== 1139 | 1140 | regexpp@^3.0.0: 1141 | version "3.0.0" 1142 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.0.0.tgz#dd63982ee3300e67b41c1956f850aa680d9d330e" 1143 | integrity sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g== 1144 | 1145 | regexpp@^3.1.0: 1146 | version "3.1.0" 1147 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" 1148 | integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== 1149 | 1150 | resolve-from@^4.0.0: 1151 | version "4.0.0" 1152 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 1153 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1154 | 1155 | resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1: 1156 | version "1.15.1" 1157 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" 1158 | integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== 1159 | dependencies: 1160 | path-parse "^1.0.6" 1161 | 1162 | resolve@^1.17.0: 1163 | version "1.17.0" 1164 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" 1165 | integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== 1166 | dependencies: 1167 | path-parse "^1.0.6" 1168 | 1169 | rimraf@2.6.3: 1170 | version "2.6.3" 1171 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 1172 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 1173 | dependencies: 1174 | glob "^7.1.3" 1175 | 1176 | "semver@2 || 3 || 4 || 5": 1177 | version "5.7.1" 1178 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 1179 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1180 | 1181 | semver@^6.1.0: 1182 | version "6.3.0" 1183 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 1184 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1185 | 1186 | semver@^7.2.1: 1187 | version "7.3.2" 1188 | resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" 1189 | integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== 1190 | 1191 | shebang-command@^2.0.0: 1192 | version "2.0.0" 1193 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" 1194 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 1195 | dependencies: 1196 | shebang-regex "^3.0.0" 1197 | 1198 | shebang-regex@^3.0.0: 1199 | version "3.0.0" 1200 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" 1201 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 1202 | 1203 | slice-ansi@^2.1.0: 1204 | version "2.1.0" 1205 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" 1206 | integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== 1207 | dependencies: 1208 | ansi-styles "^3.2.0" 1209 | astral-regex "^1.0.0" 1210 | is-fullwidth-code-point "^2.0.0" 1211 | 1212 | source-map@^0.5.0: 1213 | version "0.5.7" 1214 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 1215 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 1216 | 1217 | spdx-correct@^3.0.0: 1218 | version "3.1.0" 1219 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" 1220 | integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== 1221 | dependencies: 1222 | spdx-expression-parse "^3.0.0" 1223 | spdx-license-ids "^3.0.0" 1224 | 1225 | spdx-exceptions@^2.1.0: 1226 | version "2.2.0" 1227 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" 1228 | integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== 1229 | 1230 | spdx-expression-parse@^3.0.0: 1231 | version "3.0.0" 1232 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 1233 | integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== 1234 | dependencies: 1235 | spdx-exceptions "^2.1.0" 1236 | spdx-license-ids "^3.0.0" 1237 | 1238 | spdx-license-ids@^3.0.0: 1239 | version "3.0.5" 1240 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" 1241 | integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== 1242 | 1243 | sprintf-js@~1.0.2: 1244 | version "1.0.3" 1245 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 1246 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 1247 | 1248 | string-width@^3.0.0: 1249 | version "3.1.0" 1250 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 1251 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 1252 | dependencies: 1253 | emoji-regex "^7.0.1" 1254 | is-fullwidth-code-point "^2.0.0" 1255 | strip-ansi "^5.1.0" 1256 | 1257 | string.prototype.trimend@^1.0.0: 1258 | version "1.0.0" 1259 | resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz#ee497fd29768646d84be2c9b819e292439614373" 1260 | integrity sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA== 1261 | dependencies: 1262 | define-properties "^1.1.3" 1263 | es-abstract "^1.17.5" 1264 | 1265 | string.prototype.trimleft@^2.1.1: 1266 | version "2.1.2" 1267 | resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc" 1268 | integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw== 1269 | dependencies: 1270 | define-properties "^1.1.3" 1271 | es-abstract "^1.17.5" 1272 | string.prototype.trimstart "^1.0.0" 1273 | 1274 | string.prototype.trimright@^2.1.1: 1275 | version "2.1.2" 1276 | resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3" 1277 | integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg== 1278 | dependencies: 1279 | define-properties "^1.1.3" 1280 | es-abstract "^1.17.5" 1281 | string.prototype.trimend "^1.0.0" 1282 | 1283 | string.prototype.trimstart@^1.0.0: 1284 | version "1.0.0" 1285 | resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz#afe596a7ce9de905496919406c9734845f01a2f2" 1286 | integrity sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w== 1287 | dependencies: 1288 | define-properties "^1.1.3" 1289 | es-abstract "^1.17.5" 1290 | 1291 | strip-ansi@^5.1.0: 1292 | version "5.2.0" 1293 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 1294 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 1295 | dependencies: 1296 | ansi-regex "^4.1.0" 1297 | 1298 | strip-ansi@^6.0.0: 1299 | version "6.0.0" 1300 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" 1301 | integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== 1302 | dependencies: 1303 | ansi-regex "^5.0.0" 1304 | 1305 | strip-bom@^3.0.0: 1306 | version "3.0.0" 1307 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1308 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 1309 | 1310 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: 1311 | version "3.1.1" 1312 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" 1313 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 1314 | 1315 | supports-color@^5.3.0: 1316 | version "5.5.0" 1317 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1318 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 1319 | dependencies: 1320 | has-flag "^3.0.0" 1321 | 1322 | supports-color@^7.1.0: 1323 | version "7.1.0" 1324 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" 1325 | integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== 1326 | dependencies: 1327 | has-flag "^4.0.0" 1328 | 1329 | table@^5.2.3: 1330 | version "5.4.6" 1331 | resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" 1332 | integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== 1333 | dependencies: 1334 | ajv "^6.10.2" 1335 | lodash "^4.17.14" 1336 | slice-ansi "^2.1.0" 1337 | string-width "^3.0.0" 1338 | 1339 | text-table@^0.2.0: 1340 | version "0.2.0" 1341 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1342 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 1343 | 1344 | to-fast-properties@^2.0.0: 1345 | version "2.0.0" 1346 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 1347 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 1348 | 1349 | tsconfig-paths@^3.9.0: 1350 | version "3.9.0" 1351 | resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b" 1352 | integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw== 1353 | dependencies: 1354 | "@types/json5" "^0.0.29" 1355 | json5 "^1.0.1" 1356 | minimist "^1.2.0" 1357 | strip-bom "^3.0.0" 1358 | 1359 | type-check@^0.4.0, type-check@~0.4.0: 1360 | version "0.4.0" 1361 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" 1362 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 1363 | dependencies: 1364 | prelude-ls "^1.2.1" 1365 | 1366 | type-fest@^0.8.1: 1367 | version "0.8.1" 1368 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" 1369 | integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== 1370 | 1371 | uri-js@^4.2.2: 1372 | version "4.2.2" 1373 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 1374 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== 1375 | dependencies: 1376 | punycode "^2.1.0" 1377 | 1378 | v8-compile-cache@^2.0.3: 1379 | version "2.1.0" 1380 | resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" 1381 | integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== 1382 | 1383 | validate-npm-package-license@^3.0.1: 1384 | version "3.0.4" 1385 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 1386 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 1387 | dependencies: 1388 | spdx-correct "^3.0.0" 1389 | spdx-expression-parse "^3.0.0" 1390 | 1391 | which@^2.0.1: 1392 | version "2.0.2" 1393 | resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" 1394 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 1395 | dependencies: 1396 | isexe "^2.0.0" 1397 | 1398 | word-wrap@^1.2.3: 1399 | version "1.2.3" 1400 | resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" 1401 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 1402 | 1403 | wrappy@1: 1404 | version "1.0.2" 1405 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1406 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1407 | 1408 | write@1.0.3: 1409 | version "1.0.3" 1410 | resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" 1411 | integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== 1412 | dependencies: 1413 | mkdirp "^0.5.1" 1414 | --------------------------------------------------------------------------------