├── .env.template ├── .gitignore ├── README.md ├── package.json ├── scripts ├── all ├── build ├── bundle ├── createS3Bucket.js ├── generate-cache ├── import-example-database ├── sam ├── serverless └── test ├── serverless.yml ├── src ├── combineMiddlewares.js ├── express-lib-view.js ├── index.js ├── makeCache.js ├── postgraphile-http-subscriptions.js └── postgraphileOptions.js ├── test ├── make-template-yml.sh ├── query.graphql ├── sql │ ├── 00_cleanup.sql │ ├── 01_schema.sql │ └── 02_data.sql └── test.sh ├── webpack.config.js └── yarn.lock /.env.template: -------------------------------------------------------------------------------- 1 | export POSTGRES_USER="forum_example_postgraphile" 2 | export POSTGRES_PASSWORD="xyz" 3 | export POSTGRES_DB="forum_example_postgraphile" 4 | export DATABASE_SCHEMAS="forum_example" 5 | export DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@localhost:5432/${POSTGRES_DB}" 6 | export JWT_SECRET="2c045e2eb2ec46488530" 7 | export JWT_PG_TYPE_IDENTIFIER="forum_example.jwt_token" 8 | 9 | export AWS_SERVICE_NAME="my-postgraphile-lambda" 10 | export AWS_REGION="us-east-1" 11 | export AWS_STAGE="dev" 12 | export AWS_VPC_SECURITY_GROUP_IDS="sg-1234asdf" 13 | export AWS_VPC_SUBNET_IDS="subnet-2345sdfg,subnet-3456dfgh,subnet-4567fghj" 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.env 2 | /node_modules 3 | /yarn-error.log 4 | /dist 5 | /test/template.yml 6 | /lambda.zip 7 | /.serverless/ 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PostGraphile Lambda Example 2 | 3 | ## Overview 4 | 5 | This project shows an example of how you might use PostGraphile on Lambda. It 6 | has the following aims: 7 | 8 | - [x] Startup without needing to introspect database 9 | - [x] Fast startup 10 | - [x] Small bundle size 11 | - [x] JWT auth supported OOTB 12 | - [x] Graphile-build schema plugin support 13 | - [x] Support for middlewares 14 | - [x] No requirement for Node.js `http`-based libraries (such as Connect, 15 | Express, Koa) 16 | 17 | ## Non-goals 18 | 19 | Postgraphile-lambda-example does NOT intend to watch the schema for changes; 20 | this means that you _must_ build and release a new version every time you 21 | change your database. (You only need to update the cache file though.) 22 | 23 | Postgraphile-lambda-example does NOT intend to make this fully compatible with 24 | the `postgraphile` CLI - this will be a subset best suited to Lambda usage. 25 | 26 | Postgraphile-lambda-example does NOT intend to support subscriptions. 27 | 28 | ## Method 29 | 30 | We use the following tools: 31 | 32 | - webpack - to bundle up the required code into as small a file as possible 33 | (no need for `node_modules` any more!) 34 | - PostGraphile `writeCache` / `readCache` - we'll introspect the database 35 | during the build and write the results to a cache file to be included in the 36 | bundle; then when the Lambda service starts up it can read from the cache 37 | rather than introspecting the database again. 38 | - serverless.js (optional) - for automated AWS deployments. 39 | 40 | ## Setup 41 | 42 | First clone this repository locally, and install dependencies: 43 | 44 | ``` 45 | yarn 46 | ``` 47 | 48 | Next, set up a `.env` file matching your environment: 49 | 50 | ``` 51 | cp .env.template .env 52 | ``` 53 | 54 | And modify the `src/postgraphileOptions.js` and `serverless.yml` files to your taste. 55 | 56 | #### AWS VPC settings 57 | 58 | When you're deploying Postgraphile using Lambda, you can run your DB instance on AWS as well in order to make use of AWS's integrated security using VPCs. In that case you can restrict the public accessibility of your DB instance from the internet. *If you don't host your DB on AWS you can ignore this section.* 59 | 60 | When using RDS for example, our use case **requires two ways of access**: 61 | 62 | 1. The Postgraphile Lambda function we will create needs access to the RDS instance. We achieve that by creating the Lambda function within the same VPC our RDS instance lives in. 63 | 2. In some use cases that's all you need and you can completely hide the RDS from public access and only make it accessible from within the VPC (at a later point in production you might even do it that way). In our case this would be a bit inconvenient because our Postgraphile scripts need to access the DB during schema generation and this process runs on our local machine. Therefore we add the ability to access the DB instance publicly, though restricted to our current IP. (The ability to connect to the DB from our local system is helpful in many other situations as well, e.g. when running migrations or when accessing the database through a DB client.) 64 | 65 | Achieving this can be a bit confusing if you're new to VPCs. When you create your RDS instance, set the following "Network & Security" settings: 66 | 67 | - VPC & subnet group: default (RDS instances are always created within a VPC and your AWS account comes with its default VPC) 68 | - Public accessibility: Yes (this is for our second requirement, but don't expect that this alone will make your RDS instance publicly accessible: access is always regulated through your security group settings and if there is no rule there that allows public access, then setting "yes" here does not in any way expose your instance) 69 | - VPC security groups: We actually need two different security groups. Just select "Create new VPC security group" here. Then RDS will automatically create a new security group with an inbound rule of type `PostgresQL` restricted to your current IP address as source. This will satisfy our second requirement. After you created your instance, click on "Modify" and return to your security group settings. Now add the `default` security group as the second one. This security group allows other entities within the VPC (e.g. our Lambda function) to access this entity (the RDS instance) which is needed for our first requirement. You might have expected that entities are able to access other entities within the same VPC by default, but you have to add this security group explicitly. 70 | 71 | If you want to learn more, here's some more info on [VPCs in the context of RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html) and on [security groups](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html). 72 | 73 | Now, we just have to make sure that our Lambda is created within our VPC as well. For that just use the AWS_VPC environment variables from the `.env.template` and add the following to the specifications of your `graphql` function in your `serverless.yml` file: 74 | 75 | ``` 76 | vpc: 77 | securityGroupIds: 78 | "Fn::Split": 79 | - "," 80 | - ${env:AWS_VPC_SECURITY_GROUP_IDS} 81 | subnetIds: 82 | "Fn::Split": 83 | - "," 84 | - ${env:AWS_VPC_SUBNET_IDS} 85 | ``` 86 | 87 | You can find all these values in the RDS console under "Connectivity & Security". (As the securityGroupId it's enough to use the `default` one: this basically makes the Lambda function part of the VPC. There should be 3 subnetIds.) 88 | 89 | (You will also need to add `"iam:AttachRolePolicy"` to the permissions of the Serverless IAM role policy you will later create.) 90 | 91 | Hint: Don't forget that your access to RDS from your local computer is based on your current network, so when you want to e.g. re-generate the Postgraphile schema, but are now connected to a different network, you'll have to return to the `rds-launch-wizard` security group settings, edit the inbound rule and select "My IP" at source to automatically update your IP. 92 | 93 | ## Automatic Deployment with Serverless.js 94 | 95 | This repository runs bash scripts during deployment written on Mac which you can find in the `scripts` folder. These scripts should run just fine on Mac and Linux, but you might run into problems on Windows. As a workaround you can just run Linux within Windows and run the deployment scripts there. If you're on Windows 10 you can install a command line Linux distro from the Microsoft Store - there is a guide further below. If you're using another version of Windows, you could run Linux in a VM (or possibly a Docker container). 96 | 97 | #### On Mac/Linux 98 | 99 | - install [serverless](https://serverless.com/framework/docs/providers/aws/guide/installation/) - `yarn global add serverless` 100 | - Make sure you configured your [aws credentials](https://serverless.com/framework/docs/providers/aws/guide/credentials/) - if you're doing that for the first time, just create the IAM role and then use the aws-cli method as described in the link (Hint: make sure that the IAM role policy you copied from the gist contains `"s3:GetBucketLocation"`) 101 | 102 | Now you can deploy to AWS using serverless.js by running: 103 | 104 | ``` 105 | yarn deploy 106 | ``` 107 | 108 | #### On Windows 10 109 | 110 | - After you completed the steps in [Setup](#setup), go to the Microsoft Marketplace in the start menu and install a command line linux distro of your choice (we use ubuntu 18.04 in these instructions). 111 | - Run ubuntu and create a user and password. 112 | - Run `sudo apt update` to get access to the latest packages. 113 | - Install and activate a virtual environment: Follow the steps in [this tutorial](https://linuxize.com/post/how-to-create-python-virtual-environments-on-ubuntu-18-04/) until after the activation. From now on, always keep running within the virtual environment. (Why we do this: We will use the `aws-cli` to provide serverless with AWS credentials to create the stack on AWS on your behalf. `aws-cli` relies on python3 which is also used by the Linux system, but in a different version. In order to avoid version conflicts/incompatibilites, we install the `aws-cli` in a virtual environment which comes with its own python installation.) 114 | - Install the aws-cli by running `pip install --upgrade awscli` (from within the venv). You can make sure it installed correctly by running `aws --version`. 115 | - If you haven't already done that, create an IAM role for serverless as described [here](https://serverless.com/framework/docs/providers/aws/guide/credentials/). (Hint: Make sure that the IAM role policy you copied from the gist contains `"s3:GetBucketLocation"`.) 116 | - Save the credentials to aws-cli by running `aws configure` ([more details](https://serverless.com/framework/docs/providers/aws/guide/credentials#setup-with-the-aws-cli)). 117 | - Install yarn (you do need to use yarn and not npm because the scripts use yarn) as described on [their website](https://yarnpkg.com/lang/en/docs/install/#debian-stable), serverless with `yarn global add serverless` and zip with `sudo apt-get install zip`. 118 | - Cd to your postgraphile project folder you created during setup and run `yarn deploy`. 119 | 120 | #### After deployment 121 | 122 | Just copy the URL that Serverless returns in the command line under `endpoints` after successful deployment and paste it into your GraphQL client of choice - you can now talk to your Lambda PostGraphile API 😅 123 | 124 | ## Setting up a Lambda endpoint manually 125 | 126 | If you prefer not to use the serverless.js framework, you can also deploy your lambda function manually. 127 | 128 | Note 1: Change your process.env.AWS_STAGE_NAME to "/default" to match the default stage name for manually deployed API Gateways. 129 | 130 | Note 2: CORS is enabled by default. Remove cors() middleware in `/src/index.js` if you would prefer disabled cors. 131 | 132 | 0. Run `yarn build` to create `lambda.zip` file that you can upload to Amazon Lambda. 133 | 1. Visit https://console.aws.amazon.com/lambda/home and click 'Create function' 134 | 2. Select "Author from scratch" and give your function a name, select the most recent Node.js release (at least 8.10+), create (or select) a role (I granted "Simple microservice permissions") 135 | 3. Click "Create function" and wait about 15 seconds; you should be greeted with a "Congratulations" message. 136 | 4. Scroll to "Function code", select "Upload a .zip file" from "Code entry type", press the "Upload" button and select the `lambda.zip` file you generated above; then click "Save" 137 | 5. Scroll to "Environment variables" and enter your `DATABASE_SCHEMAS` and `DATABASE_URL` settings; then click "Save" 138 | 6. Scroll to the top and select "API Gateway" under "Add triggers" in the "Designer", then scroll to "Configure triggers" 139 | 7. Create a new API; if you like add 'image/gif', 'image/png', 'image/icon' and 'image/x-icon' to the list of binary media types; then press "Add" followed by "Save" 140 | 8. Click the name of the API gateway to go to the API gateway config 141 | 9. Select the `/` route under `Resources` and from the "Actions" dropdown, select "Create method" add create an `ANY` method 142 | 10. Turn on "Lambda Proxy Integration" and enter your lambda function name in the relevant box, then press "Save" 143 | 11. Finally, go to "Actions" again and "Deploy API" 144 | 12. Copy the "Invoke URL" and paste it into your GraphQL client of choice - you can now talk to your Lambda PostGraphile API 😅 145 | 146 | If you want GraphiQL support (STRONGLY DISCOURAGED! Use an external GraphQL 147 | client such as GraphiQL.app, Altair or GraphQL Playground instead!), then you 148 | need to go back to stage 9, and choose 'Create Resource', tick "Configure as a 149 | proxy resource", press "Create Resource" and then configure it with the name of 150 | your lambda function, you should also change the settings in 151 | `src/postgraphileOptions.js` (see comment in that file). 152 | 153 | ## How it works 154 | 155 | ### Phases 156 | 157 | The system operates based on a number of phases. Each phase depends on the 158 | previous non-optional phase; so if an earlier phase rebuilds then all later 159 | phases must also rebuild. 160 | 161 | #### Phase 1: build postgraphile: `scripts/build` 162 | 163 | Uses webpack to produce a single JS file containing all that is necessary, 164 | using `src/index.js` as the entry point. 165 | 166 | Compiles `src/**` to `dist/` 167 | 168 | **Start here when**: you change your code, add/remove plugins, or upgrade dependencies. 169 | 170 | #### Phase 2: generate cache: `scripts/generate-cache` 171 | 172 | Uses a similar approach to `postgraphile --write-cache` to write a cache file 173 | containing introspection details of your database. 174 | 175 | Generates `dist/postgraphile.cache` 176 | 177 | **Start here when**: database schema changes. 178 | 179 | #### Phase 3: bundle: `scripts/bundle` 180 | 181 | Produce a zip file combining the two artifacts above - `dist/index.js` and `dist/postgraphile.cache`. 182 | 183 | Generates `lambda.zip` from `dist/` folder 184 | 185 | #### Phase 4 (optional): test: `scripts/test` 186 | 187 | Launch the bundle in the `sam local` test environment, and run a series of requests. 188 | 189 | **Manual checking of the results is required.** 190 | 191 | #### Phase 5: upload to Lambda 192 | 193 | Left as an exercise to the reader. 194 | 195 | ### Test Prerequisites 196 | 197 | - [docker](https://docs.docker.com/install/) 198 | - [aws sam cli](https://docs.aws.amazon.com/lambda/latest/dg/sam-cli-requirements.html) - `pip install aws-sam-cli` 199 | 200 | ### Running tests 201 | 202 | Install dependencies 203 | 204 | ``` 205 | yarn 206 | ``` 207 | 208 | Copy .env.template to .env and customize as you like: 209 | 210 | ``` 211 | cp .env.template .env 212 | ``` 213 | 214 | If you're using the default `.env.template` file then you'll need to populate the 215 | `postgraphile_forum_example` database: 216 | 217 | ``` 218 | ./scripts/import-example-database 219 | ``` 220 | 221 | Make sure that the query in `test/query.graphql` and the options in `src/postgraphileOptions.js` are both valid for your database. If you're using a remote PostgreSQL server (or one within a docker instance), you may need to update the `host.docker.internal` reference in `test/make-template-yml.sh` (line 15). 222 | 223 | Run the tests: 224 | 225 | ``` 226 | yarn test 227 | ``` 228 | 229 | Note the first run might take a while whilst the system installs the relevant 230 | docker images. 231 | 232 | In the test output you should see a number of `0 error(s)` statements, and some successful GraphQL HTTP request payloads 233 | 234 | ### Running local sam instance 235 | 236 | Do the same as for the test, but instead of running `yarn test` at the end, instead run: 237 | 238 | ``` 239 | yarn sam 240 | ``` 241 | 242 | This will set up a local GraphQL endpoint at http://127.0.0.1:3000/graphql 243 | 244 | You can then use a GraphQL client such as Altair or GraphQL Playground to issue requests. 245 | 246 | If you're using the sample database then you can generate a JWT via: 247 | 248 | ```graphql 249 | mutation { 250 | authenticate(input: { email: "spowell0@noaa.gov", password: "iFbWWlc" }) { 251 | jwtToken 252 | } 253 | } 254 | ``` 255 | 256 | ([Other users exist](https://github.com/graphile/postgraphile/blob/160670dd91ca7faddf784351b33da2bb9924df39/examples/forum/data.sql#L18-L27).) 257 | 258 | Then set the JWT header: 259 | 260 | ```json 261 | { 262 | "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiZm9ydW1fZXhhbXBsZV9wZXJzb24iLCJwZXJzb25faWQiOjEsImlhdCI6MTUzODEyOTEyMSwiZXhwIjoxNTM4MjE1NTIxLCJhdWQiOiJwb3N0Z3JhcGhpbGUiLCJpc3MiOiJwb3N0Z3JhcGhpbGUifQ.NFZ10gvIB29VL1p3Wh-Cc74JSigOOhgtqaMCP9ZA2W0" 263 | } 264 | ``` 265 | 266 | Then you can issue an authenticated query: 267 | 268 | ```graphql 269 | { 270 | currentPerson { 271 | nodeId 272 | id 273 | fullName 274 | } 275 | } 276 | ``` 277 | 278 | Note that SAM unpacks the zip and reboots node for every single request, so you're going to suffer some startup latency with this. 279 | 280 | ### Troubleshooting 281 | 282 | - If you receive serverless errors during `yarn deploy`, sometimes they can be resolved by just running the command another time. At the time of writing (20/Mar/2019), there is also a temporal error with Serverless v1.39: "Can't find graphql.zip file". If this happens downgrade to Serverless 1.38 by running `yarn global add serverless@1.38`. 283 | - If your serverless stack is created successfully, but then your endpoint throws some unhelpful errors, check the Cloudwatch logs of the Lambda. If you notice that the Lambda just times out, you might try checking the security settings of your DB instance. For example, if you use RDS with the "public" setting enabled, the public access might be restricted to your IP address. This would result in the schema being successfully generated during stack creation from your device, but the Lambda not having access obviously (without any error messages hinting you in that direction). You can quick-fix that by setting the inbound settings of the security group of the RDS instance to all IPs (or even better by [making the Lambda access RDS from within the VCP](#aws-vpc-settings)) 284 | - If you want to remove your stack from AWS and you try running `serverless remove`, you may run into errors. If that happens, you can go to Cloudformation in the AWS console and delete your stack there. 285 | 286 | ### Related Projects 287 | 288 | A PostGraphile lambda example using [Zeit now.sh](https://zeit.co/) to manage 289 | the deployment: https://github.com/ggascoigne/now-postgraphile 290 | 291 | ### Thanks 292 | 293 | Improvements to PostGraphile's support for Lambda were sponsored by [Connecting Good](https://cogo.co/) 294 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "webpack": "webpack", 4 | "phase1": ". ./.env && scripts/build", 5 | "phase2": ". ./.env && scripts/generate-cache", 6 | "phase3": ". ./.env && scripts/bundle", 7 | "phase4": ". ./.env && scripts/test", 8 | "build": ". ./.env && scripts/build && scripts/generate-cache && scripts/bundle", 9 | "sam": ". ./.env && scripts/build && scripts/generate-cache && scripts/bundle && scripts/sam", 10 | "test": ". ./.env && scripts/build && scripts/generate-cache && scripts/bundle && scripts/test", 11 | "deploy": "scripts/serverless" 12 | }, 13 | "dependencies": { 14 | "aws-serverless-express": "^3.3.5", 15 | "cors": "^2.8.5", 16 | "pg": "^7.9.0", 17 | "postgraphile": "^4.4.0-beta.9" 18 | }, 19 | "devDependencies": { 20 | "aws-sdk": "^2.814.0", 21 | "serverless-content-encoding": "^1.1.0", 22 | "webpack": "5.94.0", 23 | "webpack-cli": "3.3.0" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /scripts/all: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | echo "Sourcing environment" 5 | if [ -x .env ]; then 6 | . ./.env 7 | echo "... done" 8 | else 9 | echo "... no .env file found" 10 | fi 11 | 12 | if [ "$DATABASE_URL" = "" ]; then 13 | echo "No DATABASE_URL envvar found; cannot continue." 14 | exit 1 15 | fi 16 | 17 | echo "Phase 1/4: build" 18 | scripts/build 19 | 20 | echo "Phase 2/4: generate cache" 21 | scripts/generate-cache 22 | 23 | echo "Phase 3/4: bundle" 24 | scripts/bundle 25 | 26 | echo "Phase 4/4: test" 27 | scripts/test 28 | 29 | echo "Complete" 30 | -------------------------------------------------------------------------------- /scripts/build: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | yarn webpack 5 | -------------------------------------------------------------------------------- /scripts/bundle: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | rm -f lambda.zip 5 | cd dist 6 | find . -type f -not -name '*.js.map' | zip -Xqr@ ../lambda.zip 7 | -------------------------------------------------------------------------------- /scripts/createS3Bucket.js: -------------------------------------------------------------------------------- 1 | const aws = require('aws-sdk'); 2 | const s3 = new aws.S3(); 3 | 4 | const bucketName = process.env.AWS_SERVICE_NAME; 5 | 6 | async function main() { 7 | const { Buckets } = await s3.listBuckets().promise(); 8 | 9 | if (Buckets.find(bucket => bucket.Name === bucketName)) { 10 | console.log(`Bucket "${bucketName}" already exists.`); 11 | } else { 12 | const bucketParams = { 13 | Bucket: bucketName 14 | }; 15 | 16 | await s3.createBucket(bucketParams).promise(); 17 | console.log(`Bucket "${bucketName}" created.`); 18 | } 19 | }; 20 | 21 | main().catch(err => { 22 | console.log('Error', err); 23 | process.exit(1); 24 | }); 25 | -------------------------------------------------------------------------------- /scripts/generate-cache: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | node src/makeCache 5 | -------------------------------------------------------------------------------- /scripts/import-example-database: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | # Reset state 6 | dropdb --if-exists forum_example_postgraphile 7 | dropuser --if-exists forum_example_postgraphile 8 | dropuser --if-exists forum_example_person 9 | dropuser --if-exists forum_example_anonymous 10 | 11 | # Create the database 12 | createdb forum_example_postgraphile 13 | 14 | # Load the schema 15 | # curl -sL https://github.com/graphile/postgraphile/raw/160670dd91ca7faddf784351b33da2bb9924df39/examples/forum/schema.sql | psql -X forum_example_postgraphile 16 | psql forum_example_postgraphile -f test/sql/01_schema.sql 17 | 18 | # Load the data 19 | # curl -sL https://github.com/graphile/postgraphile/raw/160670dd91ca7faddf784351b33da2bb9924df39/examples/forum/data.sql | psql -X forum_example_postgraphile 20 | psql forum_example_postgraphile -f test/sql/02_data.sql 21 | 22 | echo 23 | echo 24 | echo 25 | echo 'Local database `forum_example_postgraphile` set up successfully, you can run it through postgraphile with' 26 | echo 27 | echo " postgraphile -c postgres://forum_example_postgraphile:xyz@localhost/forum_example_postgraphile -s forum_example --jwt-secret '${JWT_SECRET-secret}' --jwt-token-identifier 'forum_example.jwt_token'" 28 | echo 29 | echo 30 | -------------------------------------------------------------------------------- /scripts/sam: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | cd test 6 | 7 | echo "Making template.yml" 8 | ./make-template-yml.sh 9 | unset DATABASE_URL 10 | 11 | echo "Spinning up SAM..." 12 | sam local start-api 13 | 14 | -------------------------------------------------------------------------------- /scripts/serverless: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | CURRENT_DIR=`dirname $BASH_SOURCE` 4 | 5 | # Source env variables 6 | echo "Sourcing environment" 7 | if [ -x .env ]; then 8 | . ./.env 9 | echo "... done" 10 | else 11 | echo "... no executable .env file found" 12 | fi 13 | 14 | if [ "$DATABASE_URL" = "" ]; then 15 | echo "No DATABASE_URL envvar found; cannot continue." 16 | exit 1 17 | fi 18 | 19 | rm -rf $CURRENT_DIR/../.serverless 20 | 21 | echo "Phase 1: Create serverless package" 22 | sls package 23 | 24 | echo "Phase 2: Build webpack bundle and add it to serverless package" 25 | scripts/build 26 | scripts/generate-cache 27 | scripts/bundle 28 | mv $CURRENT_DIR/../lambda.zip $CURRENT_DIR/../.serverless/graphql.zip 29 | 30 | # Update SHA hash for modified function zip file 31 | SHA=$(openssl dgst -sha256 -binary $CURRENT_DIR/../.serverless/graphql.zip | openssl enc -base64 | sed -e "s#/#\\\/#g") 32 | if [ $(uname -s) == 'Darwin' ]; then 33 | # OSX sed syntax is slightly different 34 | sed -i '' -e "s/\"CodeSha256\": \".*\"/\"CodeSha256\": \"${SHA}\"/g" $CURRENT_DIR/../.serverless/*.json 35 | else 36 | sed -i "s/\"CodeSha256\": \".*\"/\"CodeSha256\": \"${SHA}\"/g" $CURRENT_DIR/../.serverless/*.json 37 | fi 38 | 39 | echo "Phase 3: Create S3 Bucket for serverless function" 40 | node scripts/createS3Bucket.js 41 | 42 | echo "Phase 4: Deploy package to AWS" 43 | sls deploy -p .serverless 44 | 45 | echo "Complete" 46 | -------------------------------------------------------------------------------- /scripts/test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | cd test 5 | ./test.sh 6 | -------------------------------------------------------------------------------- /serverless.yml: -------------------------------------------------------------------------------- 1 | service: ${env:AWS_SERVICE_NAME} 2 | 3 | plugins: 4 | - serverless-content-encoding 5 | 6 | custom: 7 | contentEncoding: 8 | minimumCompressionSize: 0 9 | 10 | package: 11 | individually: true 12 | 13 | provider: 14 | name: aws 15 | runtime: nodejs8.10 16 | deploymentBucket: 17 | name: ${env:AWS_SERVICE_NAME} 18 | region: ${env:AWS_REGION} 19 | stage: ${env:AWS_STAGE} 20 | 21 | functions: 22 | graphql: 23 | handler: index.handler # Actual handler substituted in during deploy script 24 | events: 25 | - http: 26 | method: post 27 | path: graphql 28 | cors: true 29 | integration: lambda-proxy 30 | environment: 31 | DATABASE_URL: ${env:DATABASE_URL} 32 | DATABASE_SCHEMAS: ${env:DATABASE_SCHEMAS} 33 | JWT_SECRET: ${env:JWT_SECRET} 34 | JWT_PG_TYPE_IDENTIFIER: ${env:JWT_PG_TYPE_IDENTIFIER} 35 | -------------------------------------------------------------------------------- /src/combineMiddlewares.js: -------------------------------------------------------------------------------- 1 | // Basically copied from 2 | // https://github.com/graphile/postgraphile/blob/160670dd91ca7faddf784351b33da2bb9924df39/src/postgraphile/http/createPostGraphileHttpRequestHandler.ts#L210 3 | /* 4 | * This function will combine many Express middlewares into one middleware. 5 | * All but the final middleware must be a simple middleware that definitely 6 | * calls next(). 7 | */ 8 | module.exports = function combineMiddlewares(middlewares) { 9 | return middlewares.reduce( 10 | (parent, fn) => { 11 | return (req, res, next) => { 12 | parent(req, res, error => { 13 | if (error) { 14 | return next(error); 15 | } 16 | fn(req, res, next); 17 | }); 18 | }; 19 | }, 20 | (_req, _res, next) => next() 21 | ); 22 | }; 23 | -------------------------------------------------------------------------------- /src/express-lib-view.js: -------------------------------------------------------------------------------- 1 | // This is a hacked version of express/lib/view.js to avoid dynamic requires. 2 | /*! 3 | * express 4 | * Copyright(c) 2009-2013 TJ Holowaychuk 5 | * Copyright(c) 2013 Roman Shtylman 6 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 7 | * MIT Licensed 8 | */ 9 | 10 | 'use strict'; 11 | 12 | /** 13 | * Module dependencies. 14 | * @private 15 | */ 16 | 17 | var debug = require('debug')('express:view'); 18 | var path = require('path'); 19 | var fs = require('fs'); 20 | 21 | /** 22 | * Module variables. 23 | * @private 24 | */ 25 | 26 | var dirname = path.dirname; 27 | var basename = path.basename; 28 | var extname = path.extname; 29 | var join = path.join; 30 | var resolve = path.resolve; 31 | 32 | /** 33 | * Module exports. 34 | * @public 35 | */ 36 | 37 | module.exports = View; 38 | 39 | /** 40 | * Initialize a new `View` with the given `name`. 41 | * 42 | * Options: 43 | * 44 | * - `defaultEngine` the default template engine name 45 | * - `engines` template engine require() cache 46 | * - `root` root path for view lookup 47 | * 48 | * @param {string} name 49 | * @param {object} options 50 | * @public 51 | */ 52 | 53 | function View(name, options) { 54 | var opts = options || {}; 55 | 56 | this.defaultEngine = opts.defaultEngine; 57 | this.ext = extname(name); 58 | this.name = name; 59 | this.root = opts.root; 60 | 61 | if (!this.ext && !this.defaultEngine) { 62 | throw new Error('No default engine was specified and no extension was provided.'); 63 | } 64 | 65 | var fileName = name; 66 | 67 | if (!this.ext) { 68 | // get extension from default engine name 69 | this.ext = this.defaultEngine[0] !== '.' 70 | ? '.' + this.defaultEngine 71 | : this.defaultEngine; 72 | 73 | fileName += this.ext; 74 | } 75 | 76 | if (!opts.engines[this.ext]) { 77 | throw new Error('You must require the engine yourself'); 78 | /* 79 | // load engine 80 | var mod = this.ext.substr(1) 81 | debug('require "%s"', mod) 82 | 83 | // default engine export 84 | var fn = require(mod).__express 85 | 86 | if (typeof fn !== 'function') { 87 | throw new Error('Module "' + mod + '" does not provide a view engine.') 88 | } 89 | 90 | opts.engines[this.ext] = fn 91 | */ 92 | } 93 | 94 | // store loaded engine 95 | this.engine = opts.engines[this.ext]; 96 | 97 | // lookup path 98 | this.path = this.lookup(fileName); 99 | } 100 | 101 | /** 102 | * Lookup view by the given `name` 103 | * 104 | * @param {string} name 105 | * @private 106 | */ 107 | 108 | View.prototype.lookup = function lookup(name) { 109 | var path; 110 | var roots = [].concat(this.root); 111 | 112 | debug('lookup "%s"', name); 113 | 114 | for (var i = 0; i < roots.length && !path; i++) { 115 | var root = roots[i]; 116 | 117 | // resolve the path 118 | var loc = resolve(root, name); 119 | var dir = dirname(loc); 120 | var file = basename(loc); 121 | 122 | // resolve the file 123 | path = this.resolve(dir, file); 124 | } 125 | 126 | return path; 127 | }; 128 | 129 | /** 130 | * Render with the given options. 131 | * 132 | * @param {object} options 133 | * @param {function} callback 134 | * @private 135 | */ 136 | 137 | View.prototype.render = function render(options, callback) { 138 | debug('render "%s"', this.path); 139 | this.engine(this.path, options, callback); 140 | }; 141 | 142 | /** 143 | * Resolve the file within the given directory. 144 | * 145 | * @param {string} dir 146 | * @param {string} file 147 | * @private 148 | */ 149 | 150 | View.prototype.resolve = function resolve(dir, file) { 151 | var ext = this.ext; 152 | 153 | // . 154 | var path = join(dir, file); 155 | var stat = tryStat(path); 156 | 157 | if (stat && stat.isFile()) { 158 | return path; 159 | } 160 | 161 | // /index. 162 | path = join(dir, basename(file, ext), 'index' + ext); 163 | stat = tryStat(path); 164 | 165 | if (stat && stat.isFile()) { 166 | return path; 167 | } 168 | }; 169 | 170 | /** 171 | * Return a stat, maybe. 172 | * 173 | * @param {string} path 174 | * @return {fs.Stats} 175 | * @private 176 | */ 177 | 178 | function tryStat(path) { 179 | debug('stat "%s"', path); 180 | 181 | try { 182 | return fs.statSync(path); 183 | } catch (e) { 184 | return undefined; 185 | } 186 | } 187 | 188 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | const awsServerlessExpress = require('aws-serverless-express'); 2 | const { postgraphile } = require('postgraphile'); 3 | const { options } = require('./postgraphileOptions'); 4 | const combineMiddlewares = require('./combineMiddlewares'); 5 | const cors = require('cors'); 6 | 7 | const schemas = process.env.DATABASE_SCHEMAS 8 | ? process.env.DATABASE_SCHEMAS.split(',') 9 | : ['app_public']; 10 | 11 | const app = combineMiddlewares([ 12 | /* 13 | * Note that any middlewares you add here *must* call `next`. 14 | * 15 | * This is typically useful for augmenting the request before it goes to PostGraphile. 16 | */ 17 | 18 | // CORS middleware to permit cross-site API requests. Configure to taste 19 | cors(), 20 | 21 | // Determines the effective URL we are at if `absoluteRoutes` is set 22 | (req, res, next) => { 23 | if (options.absoluteRoutes) { 24 | try { 25 | const event = JSON.parse(decodeURIComponent(req.headers['x-apigateway-event'])); 26 | // This contains the `stage`, making it a true absolute URL (which we 27 | // need for serving assets) 28 | const realPath = event.requestContext.path; 29 | req.originalUrl = realPath; 30 | } catch (e) { 31 | return next(new Error('Processing event failed')); 32 | } 33 | } 34 | next(); 35 | }, 36 | postgraphile(process.env.DATABASE_URL, schemas, { 37 | ...options, 38 | readCache: `${__dirname}/postgraphile.cache`, 39 | }), 40 | ]); 41 | 42 | const handler = (req, res) => { 43 | app(req, res, err => { 44 | if (err) { 45 | // eslint-disable-next-line no-console 46 | console.error(err); 47 | if (!res.headersSent) { 48 | res.statusCode = err.status || err.statusCode || 500; 49 | res.setHeader('Content-Type', 'application/json'); 50 | } 51 | res.end(JSON.stringify({ errors: [{message: err.message}] })); 52 | return; 53 | } 54 | if (!res.finished) { 55 | if (!res.headersSent) { 56 | res.statusCode = 404; 57 | } 58 | res.end(`'${req.url}' not found`); 59 | } 60 | }); 61 | }; 62 | 63 | const binaryMimeTypes = options.graphiql ? ['image/x-icon'] : undefined; 64 | const server = awsServerlessExpress.createServer(handler, undefined, binaryMimeTypes); 65 | exports.handler = (event, context) => awsServerlessExpress.proxy(server, event, context); 66 | -------------------------------------------------------------------------------- /src/makeCache.js: -------------------------------------------------------------------------------- 1 | // This script is called from scripts/generate-cache 2 | const { createPostGraphileSchema } = require('postgraphile'); 3 | const { options } = require('./postgraphileOptions'); 4 | const { Pool } = require('pg'); 5 | 6 | const schemas = process.env.DATABASE_SCHEMAS 7 | ? process.env.DATABASE_SCHEMAS.split(',') 8 | : ['app_public']; 9 | 10 | async function main() { 11 | const pgPool = new Pool({ 12 | connectionString: process.env.DATABASE_URL, 13 | }); 14 | await createPostGraphileSchema(pgPool, schemas, { 15 | ...options, 16 | writeCache: `${__dirname}/../dist/postgraphile.cache`, 17 | }); 18 | await pgPool.end(); 19 | } 20 | 21 | main().then(null, e => { 22 | // eslint-disable-next-line no-console 23 | console.error(e); 24 | process.exit(1); 25 | }); 26 | -------------------------------------------------------------------------------- /src/postgraphile-http-subscriptions.js: -------------------------------------------------------------------------------- 1 | export async function enhanceHttpServerWithSubscriptions() {} 2 | -------------------------------------------------------------------------------- /src/postgraphileOptions.js: -------------------------------------------------------------------------------- 1 | exports.options = { 2 | dynamicJson: true, 3 | cors: true, 4 | graphiql: false, 5 | graphqlRoute: '/graphql', 6 | externalUrlBase: `/${process.env.AWS_STAGE}`, 7 | 8 | // If consuming JWT: 9 | jwtSecret: process.env.JWT_SECRET || String(Math.random()), 10 | // If generating JWT: 11 | jwtPgTypeIdentifier: process.env.JWT_PG_TYPE_IDENTIFIER, 12 | 13 | /* If you want to enable GraphiQL, you must use `externalUrlBase` so PostGraphile 14 | * knows where to tell the browser to find the assets. Doing this is 15 | * strongly discouraged, you should use an external GraphQL client instead. 16 | 17 | graphiql: true, 18 | enhanceGraphiql: true, 19 | graphqlRoute: '/', 20 | graphiqlRoute: '/graphiql', 21 | */ 22 | }; 23 | -------------------------------------------------------------------------------- /test/make-template-yml.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | if [ -x "./.env" ]; then 3 | . ./.env; 4 | fi; 5 | cat > template.yml <=2.14.0" 166 | 167 | "@types/pg@^7.4.10": 168 | version "7.4.10" 169 | resolved "https://registry.yarnpkg.com/@types/pg/-/pg-7.4.10.tgz#1cf4d6c5d32e621566eca82981161b371fb90ace" 170 | integrity sha512-IQ9vRZ3oX99TXZiVq5PgODNoqgHvn2girbkxa6gBT7DPGgvRiJ7kZNwmPiLqSOzlRgMHBIujFeiwD5Sf5TIJqg== 171 | dependencies: 172 | "@types/events" "*" 173 | "@types/node" "*" 174 | "@types/pg-types" "*" 175 | 176 | "@types/range-parser@*": 177 | version "1.2.2" 178 | resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.2.tgz#fa8e1ad1d474688a757140c91de6dace6f4abc8d" 179 | integrity sha512-HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw== 180 | 181 | "@types/serve-static@*": 182 | version "1.13.2" 183 | resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.2.tgz#f5ac4d7a6420a99a6a45af4719f4dcd8cd907a48" 184 | integrity sha512-/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q== 185 | dependencies: 186 | "@types/express-serve-static-core" "*" 187 | "@types/mime" "*" 188 | 189 | "@types/ws@^6.0.1": 190 | version "6.0.1" 191 | resolved "https://registry.yarnpkg.com/@types/ws/-/ws-6.0.1.tgz#ca7a3f3756aa12f62a0a62145ed14c6db25d5a28" 192 | integrity sha512-EzH8k1gyZ4xih/MaZTXwT2xOkPiIMSrhQ9b8wrlX88L0T02eYsddatQlwVFlEPyEqV0ChpdpNnE51QPH6NVT4Q== 193 | dependencies: 194 | "@types/events" "*" 195 | "@types/node" "*" 196 | 197 | "@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": 198 | version "1.12.1" 199 | resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" 200 | integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg== 201 | dependencies: 202 | "@webassemblyjs/helper-numbers" "1.11.6" 203 | "@webassemblyjs/helper-wasm-bytecode" "1.11.6" 204 | 205 | "@webassemblyjs/floating-point-hex-parser@1.11.6": 206 | version "1.11.6" 207 | resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" 208 | integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== 209 | 210 | "@webassemblyjs/helper-api-error@1.11.6": 211 | version "1.11.6" 212 | resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" 213 | integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== 214 | 215 | "@webassemblyjs/helper-buffer@1.12.1": 216 | version "1.12.1" 217 | resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" 218 | integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== 219 | 220 | "@webassemblyjs/helper-numbers@1.11.6": 221 | version "1.11.6" 222 | resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" 223 | integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== 224 | dependencies: 225 | "@webassemblyjs/floating-point-hex-parser" "1.11.6" 226 | "@webassemblyjs/helper-api-error" "1.11.6" 227 | "@xtuc/long" "4.2.2" 228 | 229 | "@webassemblyjs/helper-wasm-bytecode@1.11.6": 230 | version "1.11.6" 231 | resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" 232 | integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== 233 | 234 | "@webassemblyjs/helper-wasm-section@1.12.1": 235 | version "1.12.1" 236 | resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" 237 | integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g== 238 | dependencies: 239 | "@webassemblyjs/ast" "1.12.1" 240 | "@webassemblyjs/helper-buffer" "1.12.1" 241 | "@webassemblyjs/helper-wasm-bytecode" "1.11.6" 242 | "@webassemblyjs/wasm-gen" "1.12.1" 243 | 244 | "@webassemblyjs/ieee754@1.11.6": 245 | version "1.11.6" 246 | resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" 247 | integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== 248 | dependencies: 249 | "@xtuc/ieee754" "^1.2.0" 250 | 251 | "@webassemblyjs/leb128@1.11.6": 252 | version "1.11.6" 253 | resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" 254 | integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== 255 | dependencies: 256 | "@xtuc/long" "4.2.2" 257 | 258 | "@webassemblyjs/utf8@1.11.6": 259 | version "1.11.6" 260 | resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" 261 | integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== 262 | 263 | "@webassemblyjs/wasm-edit@^1.12.1": 264 | version "1.12.1" 265 | resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" 266 | integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g== 267 | dependencies: 268 | "@webassemblyjs/ast" "1.12.1" 269 | "@webassemblyjs/helper-buffer" "1.12.1" 270 | "@webassemblyjs/helper-wasm-bytecode" "1.11.6" 271 | "@webassemblyjs/helper-wasm-section" "1.12.1" 272 | "@webassemblyjs/wasm-gen" "1.12.1" 273 | "@webassemblyjs/wasm-opt" "1.12.1" 274 | "@webassemblyjs/wasm-parser" "1.12.1" 275 | "@webassemblyjs/wast-printer" "1.12.1" 276 | 277 | "@webassemblyjs/wasm-gen@1.12.1": 278 | version "1.12.1" 279 | resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547" 280 | integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w== 281 | dependencies: 282 | "@webassemblyjs/ast" "1.12.1" 283 | "@webassemblyjs/helper-wasm-bytecode" "1.11.6" 284 | "@webassemblyjs/ieee754" "1.11.6" 285 | "@webassemblyjs/leb128" "1.11.6" 286 | "@webassemblyjs/utf8" "1.11.6" 287 | 288 | "@webassemblyjs/wasm-opt@1.12.1": 289 | version "1.12.1" 290 | resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" 291 | integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg== 292 | dependencies: 293 | "@webassemblyjs/ast" "1.12.1" 294 | "@webassemblyjs/helper-buffer" "1.12.1" 295 | "@webassemblyjs/wasm-gen" "1.12.1" 296 | "@webassemblyjs/wasm-parser" "1.12.1" 297 | 298 | "@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": 299 | version "1.12.1" 300 | resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" 301 | integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ== 302 | dependencies: 303 | "@webassemblyjs/ast" "1.12.1" 304 | "@webassemblyjs/helper-api-error" "1.11.6" 305 | "@webassemblyjs/helper-wasm-bytecode" "1.11.6" 306 | "@webassemblyjs/ieee754" "1.11.6" 307 | "@webassemblyjs/leb128" "1.11.6" 308 | "@webassemblyjs/utf8" "1.11.6" 309 | 310 | "@webassemblyjs/wast-printer@1.12.1": 311 | version "1.12.1" 312 | resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" 313 | integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA== 314 | dependencies: 315 | "@webassemblyjs/ast" "1.12.1" 316 | "@xtuc/long" "4.2.2" 317 | 318 | "@xtuc/ieee754@^1.2.0": 319 | version "1.2.0" 320 | resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" 321 | integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== 322 | 323 | "@xtuc/long@4.2.2": 324 | version "4.2.2" 325 | resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" 326 | integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== 327 | 328 | acorn-import-attributes@^1.9.5: 329 | version "1.9.5" 330 | resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef" 331 | integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ== 332 | 333 | acorn@^8.7.1, acorn@^8.8.2: 334 | version "8.12.1" 335 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" 336 | integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== 337 | 338 | ajv-keywords@^3.5.2: 339 | version "3.5.2" 340 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" 341 | integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== 342 | 343 | ajv@^6.12.5: 344 | version "6.12.6" 345 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 346 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 347 | dependencies: 348 | fast-deep-equal "^3.1.1" 349 | fast-json-stable-stringify "^2.0.0" 350 | json-schema-traverse "^0.4.1" 351 | uri-js "^4.2.2" 352 | 353 | ansi-regex@^2.0.0: 354 | version "2.1.1" 355 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 356 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 357 | 358 | ansi-regex@^3.0.0: 359 | version "3.0.0" 360 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 361 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 362 | 363 | ansi-styles@^2.2.1: 364 | version "2.2.1" 365 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 366 | integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 367 | 368 | ansi-styles@^3.2.1: 369 | version "3.2.1" 370 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 371 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 372 | dependencies: 373 | color-convert "^1.9.0" 374 | 375 | arr-diff@^4.0.0: 376 | version "4.0.0" 377 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" 378 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= 379 | 380 | arr-flatten@^1.1.0: 381 | version "1.1.0" 382 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 383 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 384 | 385 | arr-union@^3.1.0: 386 | version "3.1.0" 387 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" 388 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= 389 | 390 | array-unique@^0.3.2: 391 | version "0.3.2" 392 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" 393 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= 394 | 395 | assign-symbols@^1.0.0: 396 | version "1.0.0" 397 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" 398 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= 399 | 400 | async-limiter@~1.0.0: 401 | version "1.0.1" 402 | resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" 403 | integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== 404 | 405 | atob@^2.1.1: 406 | version "2.1.2" 407 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" 408 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== 409 | 410 | aws-sdk@^2.814.0: 411 | version "2.814.0" 412 | resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.814.0.tgz#7a1c36006e0b5826f14bd2511b1d229ef6814bb0" 413 | integrity sha512-empd1m/J/MAkL6d9OeRpmg9thobULu0wk4v8W3JToaxGi2TD7PIdvE6yliZKyOVAdJINhBWEBhxR4OUIHhcGbQ== 414 | dependencies: 415 | buffer "4.9.2" 416 | events "1.1.1" 417 | ieee754 "1.1.13" 418 | jmespath "0.15.0" 419 | querystring "0.2.0" 420 | sax "1.2.1" 421 | url "0.10.3" 422 | uuid "3.3.2" 423 | xml2js "0.4.19" 424 | 425 | aws-serverless-express@^3.3.5: 426 | version "3.3.5" 427 | resolved "https://registry.yarnpkg.com/aws-serverless-express/-/aws-serverless-express-3.3.5.tgz#0cb9de00dbbf29dfe4c096ac573a518c3bda933a" 428 | integrity sha512-j/rVn0opGkksCQjUd0ji9HZKjcx2E+MbBM3p68ocYStG6B16Wl88Hqxd/d1TdwE5RRo8g0uhiFaLTfp8tA4eKg== 429 | dependencies: 430 | binary-case "^1.0.0" 431 | type-is "^1.6.16" 432 | 433 | backo2@^1.0.2: 434 | version "1.0.2" 435 | resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" 436 | integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= 437 | 438 | base64-js@^1.0.2: 439 | version "1.3.0" 440 | resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" 441 | integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== 442 | 443 | base@^0.11.1: 444 | version "0.11.2" 445 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" 446 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== 447 | dependencies: 448 | cache-base "^1.0.1" 449 | class-utils "^0.3.5" 450 | component-emitter "^1.2.1" 451 | define-property "^1.0.0" 452 | isobject "^3.0.1" 453 | mixin-deep "^1.2.0" 454 | pascalcase "^0.1.1" 455 | 456 | big.js@^5.2.2: 457 | version "5.2.2" 458 | resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" 459 | integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== 460 | 461 | binary-case@^1.0.0: 462 | version "1.1.4" 463 | resolved "https://registry.yarnpkg.com/binary-case/-/binary-case-1.1.4.tgz#d687104d59e38f2b9e658d3a58936963c59ab931" 464 | integrity sha512-9Kq8m6NZTAgy05Ryuh7U3Qc4/ujLQU1AZ5vMw4cr3igTdi5itZC6kCNrRr2X8NzPiDn2oUIFTfa71DKMnue/Zg== 465 | 466 | body-parser@^1.15.2: 467 | version "1.20.3" 468 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" 469 | integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== 470 | dependencies: 471 | bytes "3.1.2" 472 | content-type "~1.0.5" 473 | debug "2.6.9" 474 | depd "2.0.0" 475 | destroy "1.2.0" 476 | http-errors "2.0.0" 477 | iconv-lite "0.4.24" 478 | on-finished "2.4.1" 479 | qs "6.13.0" 480 | raw-body "2.5.2" 481 | type-is "~1.6.18" 482 | unpipe "1.0.0" 483 | 484 | braces@^2.3.1: 485 | version "2.3.2" 486 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" 487 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== 488 | dependencies: 489 | arr-flatten "^1.1.0" 490 | array-unique "^0.3.2" 491 | extend-shallow "^2.0.1" 492 | fill-range "^4.0.0" 493 | isobject "^3.0.1" 494 | repeat-element "^1.1.2" 495 | snapdragon "^0.8.1" 496 | snapdragon-node "^2.0.1" 497 | split-string "^3.0.2" 498 | to-regex "^3.0.1" 499 | 500 | browserslist@^4.21.10: 501 | version "4.23.3" 502 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" 503 | integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== 504 | dependencies: 505 | caniuse-lite "^1.0.30001646" 506 | electron-to-chromium "^1.5.4" 507 | node-releases "^2.0.18" 508 | update-browserslist-db "^1.1.0" 509 | 510 | buffer-equal-constant-time@1.0.1: 511 | version "1.0.1" 512 | resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" 513 | integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= 514 | 515 | buffer-from@^1.0.0: 516 | version "1.1.1" 517 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 518 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 519 | 520 | buffer-writer@1.0.1: 521 | version "1.0.1" 522 | resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-1.0.1.tgz#22a936901e3029afcd7547eb4487ceb697a3bf08" 523 | integrity sha1-Iqk2kB4wKa/NdUfrRIfOtpejvwg= 524 | 525 | buffer-writer@2.0.0: 526 | version "2.0.0" 527 | resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04" 528 | integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw== 529 | 530 | buffer@4.9.2: 531 | version "4.9.2" 532 | resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" 533 | integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== 534 | dependencies: 535 | base64-js "^1.0.2" 536 | ieee754 "^1.1.4" 537 | isarray "^1.0.0" 538 | 539 | bytes@3.1.2: 540 | version "3.1.2" 541 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" 542 | integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== 543 | 544 | cache-base@^1.0.1: 545 | version "1.0.1" 546 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" 547 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== 548 | dependencies: 549 | collection-visit "^1.0.0" 550 | component-emitter "^1.2.1" 551 | get-value "^2.0.6" 552 | has-value "^1.0.0" 553 | isobject "^3.0.1" 554 | set-value "^2.0.0" 555 | to-object-path "^0.3.0" 556 | union-value "^1.0.0" 557 | unset-value "^1.0.0" 558 | 559 | call-bind@^1.0.7: 560 | version "1.0.7" 561 | resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" 562 | integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== 563 | dependencies: 564 | es-define-property "^1.0.0" 565 | es-errors "^1.3.0" 566 | function-bind "^1.1.2" 567 | get-intrinsic "^1.2.4" 568 | set-function-length "^1.2.1" 569 | 570 | camelcase@^5.0.0: 571 | version "5.3.1" 572 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 573 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 574 | 575 | caniuse-lite@^1.0.30001646: 576 | version "1.0.30001653" 577 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001653.tgz#b8af452f8f33b1c77f122780a4aecebea0caca56" 578 | integrity sha512-XGWQVB8wFQ2+9NZwZ10GxTYC5hk0Fa+q8cSkr0tgvMhYhMHP/QC+WTgrePMDBWiWc/pV+1ik82Al20XOK25Gcw== 579 | 580 | chalk@^1.1.3: 581 | version "1.1.3" 582 | resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 583 | integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 584 | dependencies: 585 | ansi-styles "^2.2.1" 586 | escape-string-regexp "^1.0.2" 587 | has-ansi "^2.0.0" 588 | strip-ansi "^3.0.0" 589 | supports-color "^2.0.0" 590 | 591 | chalk@^2.1.0, chalk@^2.4.1: 592 | version "2.4.1" 593 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" 594 | integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== 595 | dependencies: 596 | ansi-styles "^3.2.1" 597 | escape-string-regexp "^1.0.5" 598 | supports-color "^5.3.0" 599 | 600 | chrome-trace-event@^1.0.2: 601 | version "1.0.4" 602 | resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b" 603 | integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ== 604 | 605 | class-utils@^0.3.5: 606 | version "0.3.6" 607 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" 608 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== 609 | dependencies: 610 | arr-union "^3.1.0" 611 | define-property "^0.2.5" 612 | isobject "^3.0.0" 613 | static-extend "^0.1.1" 614 | 615 | cliui@^4.0.0: 616 | version "4.1.0" 617 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" 618 | integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== 619 | dependencies: 620 | string-width "^2.1.1" 621 | strip-ansi "^4.0.0" 622 | wrap-ansi "^2.0.0" 623 | 624 | code-point-at@^1.0.0: 625 | version "1.1.0" 626 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 627 | integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= 628 | 629 | collection-visit@^1.0.0: 630 | version "1.0.0" 631 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" 632 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= 633 | dependencies: 634 | map-visit "^1.0.0" 635 | object-visit "^1.0.0" 636 | 637 | color-convert@^1.9.0: 638 | version "1.9.3" 639 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 640 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 641 | dependencies: 642 | color-name "1.1.3" 643 | 644 | color-name@1.1.3: 645 | version "1.1.3" 646 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 647 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 648 | 649 | commander@^2.19.0: 650 | version "2.19.0" 651 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" 652 | integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== 653 | 654 | commander@^2.20.0: 655 | version "2.20.3" 656 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 657 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 658 | 659 | component-emitter@^1.2.1: 660 | version "1.2.1" 661 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" 662 | integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= 663 | 664 | content-type@~1.0.5: 665 | version "1.0.5" 666 | resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" 667 | integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== 668 | 669 | copy-descriptor@^0.1.0: 670 | version "0.1.1" 671 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" 672 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= 673 | 674 | core-util-is@~1.0.0: 675 | version "1.0.2" 676 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 677 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 678 | 679 | cors@^2.8.5: 680 | version "2.8.5" 681 | resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" 682 | integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== 683 | dependencies: 684 | object-assign "^4" 685 | vary "^1" 686 | 687 | cross-spawn@^6.0.0, cross-spawn@^6.0.5: 688 | version "6.0.6" 689 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.6.tgz#30d0efa0712ddb7eb5a76e1e8721bffafa6b5d57" 690 | integrity sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw== 691 | dependencies: 692 | nice-try "^1.0.4" 693 | path-key "^2.0.1" 694 | semver "^5.5.0" 695 | shebang-command "^1.2.0" 696 | which "^1.2.9" 697 | 698 | debug@2.6.9, "debug@>=2 <3", debug@^2.2.0, debug@^2.3.3: 699 | version "2.6.9" 700 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 701 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 702 | dependencies: 703 | ms "2.0.0" 704 | 705 | decamelize@^1.2.0: 706 | version "1.2.0" 707 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 708 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 709 | 710 | decode-uri-component@^0.2.0: 711 | version "0.2.0" 712 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" 713 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 714 | 715 | define-data-property@^1.1.4: 716 | version "1.1.4" 717 | resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" 718 | integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== 719 | dependencies: 720 | es-define-property "^1.0.0" 721 | es-errors "^1.3.0" 722 | gopd "^1.0.1" 723 | 724 | define-property@^0.2.5: 725 | version "0.2.5" 726 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" 727 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= 728 | dependencies: 729 | is-descriptor "^0.1.0" 730 | 731 | define-property@^1.0.0: 732 | version "1.0.0" 733 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" 734 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= 735 | dependencies: 736 | is-descriptor "^1.0.0" 737 | 738 | define-property@^2.0.2: 739 | version "2.0.2" 740 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" 741 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== 742 | dependencies: 743 | is-descriptor "^1.0.2" 744 | isobject "^3.0.1" 745 | 746 | depd@2.0.0: 747 | version "2.0.0" 748 | resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" 749 | integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== 750 | 751 | depd@~1.1.2: 752 | version "1.1.2" 753 | resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" 754 | integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= 755 | 756 | destroy@1.2.0: 757 | version "1.2.0" 758 | resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" 759 | integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== 760 | 761 | detect-file@^1.0.0: 762 | version "1.0.0" 763 | resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" 764 | integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= 765 | 766 | ecdsa-sig-formatter@1.0.10: 767 | version "1.0.10" 768 | resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz#1c595000f04a8897dfb85000892a0f4c33af86c3" 769 | integrity sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM= 770 | dependencies: 771 | safe-buffer "^5.0.1" 772 | 773 | ee-first@1.1.1: 774 | version "1.1.1" 775 | resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" 776 | integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= 777 | 778 | electron-to-chromium@^1.5.4: 779 | version "1.5.13" 780 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz#1abf0410c5344b2b829b7247e031f02810d442e6" 781 | integrity sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q== 782 | 783 | emojis-list@^3.0.0: 784 | version "3.0.0" 785 | resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" 786 | integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== 787 | 788 | encodeurl@~1.0.2: 789 | version "1.0.2" 790 | resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" 791 | integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= 792 | 793 | end-of-stream@^1.1.0: 794 | version "1.4.1" 795 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" 796 | integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== 797 | dependencies: 798 | once "^1.4.0" 799 | 800 | enhanced-resolve@^4.1.0: 801 | version "4.1.0" 802 | resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" 803 | integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== 804 | dependencies: 805 | graceful-fs "^4.1.2" 806 | memory-fs "^0.4.0" 807 | tapable "^1.0.0" 808 | 809 | enhanced-resolve@^5.17.1: 810 | version "5.17.1" 811 | resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" 812 | integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== 813 | dependencies: 814 | graceful-fs "^4.2.4" 815 | tapable "^2.2.0" 816 | 817 | errno@^0.1.3: 818 | version "0.1.7" 819 | resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" 820 | integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== 821 | dependencies: 822 | prr "~1.0.1" 823 | 824 | es-define-property@^1.0.0: 825 | version "1.0.0" 826 | resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" 827 | integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== 828 | dependencies: 829 | get-intrinsic "^1.2.4" 830 | 831 | es-errors@^1.3.0: 832 | version "1.3.0" 833 | resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" 834 | integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== 835 | 836 | es-module-lexer@^1.2.1: 837 | version "1.5.4" 838 | resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78" 839 | integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw== 840 | 841 | escalade@^3.1.2: 842 | version "3.1.2" 843 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" 844 | integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== 845 | 846 | escape-html@~1.0.3: 847 | version "1.0.3" 848 | resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" 849 | integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= 850 | 851 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 852 | version "1.0.5" 853 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 854 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 855 | 856 | eslint-scope@5.1.1: 857 | version "5.1.1" 858 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" 859 | integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== 860 | dependencies: 861 | esrecurse "^4.3.0" 862 | estraverse "^4.1.1" 863 | 864 | esrecurse@^4.3.0: 865 | version "4.3.0" 866 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" 867 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 868 | dependencies: 869 | estraverse "^5.2.0" 870 | 871 | estraverse@^4.1.1: 872 | version "4.2.0" 873 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 874 | integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= 875 | 876 | estraverse@^5.2.0: 877 | version "5.3.0" 878 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" 879 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 880 | 881 | eventemitter3@^3.1.0: 882 | version "3.1.0" 883 | resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" 884 | integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== 885 | 886 | events@1.1.1: 887 | version "1.1.1" 888 | resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" 889 | integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= 890 | 891 | events@^3.2.0: 892 | version "3.3.0" 893 | resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" 894 | integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== 895 | 896 | execa@^1.0.0: 897 | version "1.0.0" 898 | resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" 899 | integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== 900 | dependencies: 901 | cross-spawn "^6.0.0" 902 | get-stream "^4.0.0" 903 | is-stream "^1.1.0" 904 | npm-run-path "^2.0.0" 905 | p-finally "^1.0.0" 906 | signal-exit "^3.0.0" 907 | strip-eof "^1.0.0" 908 | 909 | expand-brackets@^2.1.4: 910 | version "2.1.4" 911 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" 912 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= 913 | dependencies: 914 | debug "^2.3.3" 915 | define-property "^0.2.5" 916 | extend-shallow "^2.0.1" 917 | posix-character-classes "^0.1.0" 918 | regex-not "^1.0.0" 919 | snapdragon "^0.8.1" 920 | to-regex "^3.0.1" 921 | 922 | expand-tilde@^2.0.0, expand-tilde@^2.0.2: 923 | version "2.0.2" 924 | resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" 925 | integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= 926 | dependencies: 927 | homedir-polyfill "^1.0.1" 928 | 929 | extend-shallow@^2.0.1: 930 | version "2.0.1" 931 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" 932 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= 933 | dependencies: 934 | is-extendable "^0.1.0" 935 | 936 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 937 | version "3.0.2" 938 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" 939 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= 940 | dependencies: 941 | assign-symbols "^1.0.0" 942 | is-extendable "^1.0.1" 943 | 944 | extglob@^2.0.4: 945 | version "2.0.4" 946 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" 947 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== 948 | dependencies: 949 | array-unique "^0.3.2" 950 | define-property "^1.0.0" 951 | expand-brackets "^2.1.4" 952 | extend-shallow "^2.0.1" 953 | fragment-cache "^0.2.1" 954 | regex-not "^1.0.0" 955 | snapdragon "^0.8.1" 956 | to-regex "^3.0.1" 957 | 958 | fast-deep-equal@^3.1.1: 959 | version "3.1.3" 960 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 961 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 962 | 963 | fast-json-stable-stringify@^2.0.0: 964 | version "2.1.0" 965 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 966 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 967 | 968 | fill-range@^4.0.0: 969 | version "4.0.0" 970 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" 971 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= 972 | dependencies: 973 | extend-shallow "^2.0.1" 974 | is-number "^3.0.0" 975 | repeat-string "^1.6.1" 976 | to-regex-range "^2.1.0" 977 | 978 | finalhandler@^1.0.6: 979 | version "1.1.1" 980 | resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" 981 | integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== 982 | dependencies: 983 | debug "2.6.9" 984 | encodeurl "~1.0.2" 985 | escape-html "~1.0.3" 986 | on-finished "~2.3.0" 987 | parseurl "~1.3.2" 988 | statuses "~1.4.0" 989 | unpipe "~1.0.0" 990 | 991 | find-up@^3.0.0: 992 | version "3.0.0" 993 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 994 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 995 | dependencies: 996 | locate-path "^3.0.0" 997 | 998 | findup-sync@^2.0.0: 999 | version "2.0.0" 1000 | resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" 1001 | integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw= 1002 | dependencies: 1003 | detect-file "^1.0.0" 1004 | is-glob "^3.1.0" 1005 | micromatch "^3.0.4" 1006 | resolve-dir "^1.0.1" 1007 | 1008 | for-in@^1.0.2: 1009 | version "1.0.2" 1010 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 1011 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1012 | 1013 | fragment-cache@^0.2.1: 1014 | version "0.2.1" 1015 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" 1016 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= 1017 | dependencies: 1018 | map-cache "^0.2.2" 1019 | 1020 | function-bind@^1.1.2: 1021 | version "1.1.2" 1022 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" 1023 | integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== 1024 | 1025 | get-caller-file@^1.0.1: 1026 | version "1.0.3" 1027 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" 1028 | integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== 1029 | 1030 | get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: 1031 | version "1.2.4" 1032 | resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" 1033 | integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== 1034 | dependencies: 1035 | es-errors "^1.3.0" 1036 | function-bind "^1.1.2" 1037 | has-proto "^1.0.1" 1038 | has-symbols "^1.0.3" 1039 | hasown "^2.0.0" 1040 | 1041 | get-stream@^4.0.0: 1042 | version "4.1.0" 1043 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" 1044 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 1045 | dependencies: 1046 | pump "^3.0.0" 1047 | 1048 | get-value@^2.0.3, get-value@^2.0.6: 1049 | version "2.0.6" 1050 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" 1051 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= 1052 | 1053 | glob-to-regexp@^0.4.1: 1054 | version "0.4.1" 1055 | resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" 1056 | integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== 1057 | 1058 | global-modules@^1.0.0: 1059 | version "1.0.0" 1060 | resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" 1061 | integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== 1062 | dependencies: 1063 | global-prefix "^1.0.1" 1064 | is-windows "^1.0.1" 1065 | resolve-dir "^1.0.0" 1066 | 1067 | global-prefix@^1.0.1: 1068 | version "1.0.2" 1069 | resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" 1070 | integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= 1071 | dependencies: 1072 | expand-tilde "^2.0.2" 1073 | homedir-polyfill "^1.0.1" 1074 | ini "^1.3.4" 1075 | is-windows "^1.0.1" 1076 | which "^1.2.14" 1077 | 1078 | gopd@^1.0.1: 1079 | version "1.0.1" 1080 | resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" 1081 | integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== 1082 | dependencies: 1083 | get-intrinsic "^1.1.3" 1084 | 1085 | graceful-fs@^4.1.2, graceful-fs@^4.2.11, graceful-fs@^4.2.4: 1086 | version "4.2.11" 1087 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" 1088 | integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== 1089 | 1090 | graphile-build-pg@4.4.0-beta.9: 1091 | version "4.4.0-beta.9" 1092 | resolved "https://registry.yarnpkg.com/graphile-build-pg/-/graphile-build-pg-4.4.0-beta.9.tgz#6f1d58d4a32a2defddcebc3e3a3092440b9c9eb1" 1093 | integrity sha512-FUh3pluiEsM2SxbU/ERXnqEEFU1/YdxbINt4s96BaxEpcCEjNLiqO3y4F0x242hgDs+M72P9eA9ho4b+S3mPAA== 1094 | dependencies: 1095 | chalk "^2.1.0" 1096 | debug ">=2 <3" 1097 | graphile-build "4.4.0-beta.9" 1098 | graphql-iso-date "^3.6.0" 1099 | jsonwebtoken "^8.1.1" 1100 | lodash ">=4 <5" 1101 | lru-cache ">=4 <5" 1102 | pg-sql2 "2.2.1" 1103 | postgres-interval "^1.1.1" 1104 | 1105 | graphile-build@4.4.0-beta.9: 1106 | version "4.4.0-beta.9" 1107 | resolved "https://registry.yarnpkg.com/graphile-build/-/graphile-build-4.4.0-beta.9.tgz#2c42c576b9cbdf78a5284339e7a79613d1d99c19" 1108 | integrity sha512-khx5+a+zbItBPD6KLDezeusL9s0R80R6VxvT9isZH+x0pGqrReiw0uOsg0lLkiEbMNY/BIJgS3wjh3AKlnZ2Ng== 1109 | dependencies: 1110 | "@types/graphql" "^14.0.3" 1111 | chalk "^2.1.0" 1112 | debug ">=2 <3" 1113 | graphql-parse-resolve-info "4.1.0" 1114 | lodash ">=4 <5" 1115 | lru-cache "^5.0.0" 1116 | pluralize "^7.0.0" 1117 | semver "^5.6.0" 1118 | 1119 | graphql-iso-date@^3.6.0: 1120 | version "3.6.1" 1121 | resolved "https://registry.yarnpkg.com/graphql-iso-date/-/graphql-iso-date-3.6.1.tgz#bd2d0dc886e0f954cbbbc496bbf1d480b57ffa96" 1122 | integrity sha512-AwFGIuYMJQXOEAgRlJlFL4H1ncFM8n8XmoVDTNypNOZyQ8LFDG2ppMFlsS862BSTCDcSUfHp8PD3/uJhv7t59Q== 1123 | 1124 | graphql-parse-resolve-info@4.1.0: 1125 | version "4.1.0" 1126 | resolved "https://registry.yarnpkg.com/graphql-parse-resolve-info/-/graphql-parse-resolve-info-4.1.0.tgz#fa52bc9d8aeec210e3ad92cca30d3c36a5e814c3" 1127 | integrity sha512-qDRgykBm1rbyGAlduPuGtKXHlZtUcNgM8Rg6C/gDVcLww9vNV6h0nmCulpYYPWzATnAVGV8ISnLUDFCU9Y+qcA== 1128 | dependencies: 1129 | "@types/graphql" "^14.0.3" 1130 | debug ">=2 <3" 1131 | 1132 | "graphql@^0.6.0 || ^0.7.0 || ^0.8.0-b || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.2": 1133 | version "14.0.2" 1134 | resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.0.2.tgz#7dded337a4c3fd2d075692323384034b357f5650" 1135 | integrity sha512-gUC4YYsaiSJT1h40krG3J+USGlwhzNTXSb4IOZljn9ag5Tj+RkoXrWp+Kh7WyE3t1NCfab5kzCuxBIvOMERMXw== 1136 | dependencies: 1137 | iterall "^1.2.2" 1138 | 1139 | has-ansi@^2.0.0: 1140 | version "2.0.0" 1141 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 1142 | integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 1143 | dependencies: 1144 | ansi-regex "^2.0.0" 1145 | 1146 | has-flag@^3.0.0: 1147 | version "3.0.0" 1148 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1149 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1150 | 1151 | has-flag@^4.0.0: 1152 | version "4.0.0" 1153 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 1154 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1155 | 1156 | has-property-descriptors@^1.0.2: 1157 | version "1.0.2" 1158 | resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" 1159 | integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== 1160 | dependencies: 1161 | es-define-property "^1.0.0" 1162 | 1163 | has-proto@^1.0.1: 1164 | version "1.0.3" 1165 | resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" 1166 | integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== 1167 | 1168 | has-symbols@^1.0.3: 1169 | version "1.0.3" 1170 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" 1171 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== 1172 | 1173 | has-value@^0.3.1: 1174 | version "0.3.1" 1175 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" 1176 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= 1177 | dependencies: 1178 | get-value "^2.0.3" 1179 | has-values "^0.1.4" 1180 | isobject "^2.0.0" 1181 | 1182 | has-value@^1.0.0: 1183 | version "1.0.0" 1184 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" 1185 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= 1186 | dependencies: 1187 | get-value "^2.0.6" 1188 | has-values "^1.0.0" 1189 | isobject "^3.0.0" 1190 | 1191 | has-values@^0.1.4: 1192 | version "0.1.4" 1193 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" 1194 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= 1195 | 1196 | has-values@^1.0.0: 1197 | version "1.0.0" 1198 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" 1199 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= 1200 | dependencies: 1201 | is-number "^3.0.0" 1202 | kind-of "^4.0.0" 1203 | 1204 | hasown@^2.0.0: 1205 | version "2.0.2" 1206 | resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" 1207 | integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== 1208 | dependencies: 1209 | function-bind "^1.1.2" 1210 | 1211 | homedir-polyfill@^1.0.1: 1212 | version "1.0.3" 1213 | resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" 1214 | integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== 1215 | dependencies: 1216 | parse-passwd "^1.0.0" 1217 | 1218 | http-errors@2.0.0: 1219 | version "2.0.0" 1220 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" 1221 | integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== 1222 | dependencies: 1223 | depd "2.0.0" 1224 | inherits "2.0.4" 1225 | setprototypeof "1.2.0" 1226 | statuses "2.0.1" 1227 | toidentifier "1.0.1" 1228 | 1229 | http-errors@^1.5.1: 1230 | version "1.7.0" 1231 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.0.tgz#b6d36492a201c7888bdcb5dd0471140423c4ad2a" 1232 | integrity sha512-hz3BtSHB7Z6dNWzYc+gUbWqG4dIpJedwwOhe1cvGUq5tGmcTTIRkPiAbyh/JlZx+ksSJyGJlgcHo5jGahiXnKw== 1233 | dependencies: 1234 | depd "~1.1.2" 1235 | inherits "2.0.3" 1236 | setprototypeof "1.1.0" 1237 | statuses ">= 1.5.0 < 2" 1238 | toidentifier "1.0.0" 1239 | 1240 | iconv-lite@0.4.24: 1241 | version "0.4.24" 1242 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 1243 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1244 | dependencies: 1245 | safer-buffer ">= 2.1.2 < 3" 1246 | 1247 | ieee754@1.1.13, ieee754@^1.1.4: 1248 | version "1.1.13" 1249 | resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" 1250 | integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== 1251 | 1252 | import-local@^2.0.0: 1253 | version "2.0.0" 1254 | resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" 1255 | integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== 1256 | dependencies: 1257 | pkg-dir "^3.0.0" 1258 | resolve-cwd "^2.0.0" 1259 | 1260 | inherits@2.0.3: 1261 | version "2.0.3" 1262 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 1263 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 1264 | 1265 | inherits@2.0.4, inherits@~2.0.3: 1266 | version "2.0.4" 1267 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1268 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1269 | 1270 | ini@^1.3.4: 1271 | version "1.3.7" 1272 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" 1273 | integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== 1274 | 1275 | interpret@^1.1.0: 1276 | version "1.1.0" 1277 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" 1278 | integrity sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ= 1279 | 1280 | invert-kv@^2.0.0: 1281 | version "2.0.0" 1282 | resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" 1283 | integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== 1284 | 1285 | is-accessor-descriptor@^0.1.6: 1286 | version "0.1.6" 1287 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" 1288 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= 1289 | dependencies: 1290 | kind-of "^3.0.2" 1291 | 1292 | is-accessor-descriptor@^1.0.0: 1293 | version "1.0.0" 1294 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" 1295 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== 1296 | dependencies: 1297 | kind-of "^6.0.0" 1298 | 1299 | is-buffer@^1.1.5: 1300 | version "1.1.6" 1301 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" 1302 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 1303 | 1304 | is-data-descriptor@^0.1.4: 1305 | version "0.1.4" 1306 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" 1307 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= 1308 | dependencies: 1309 | kind-of "^3.0.2" 1310 | 1311 | is-data-descriptor@^1.0.0: 1312 | version "1.0.0" 1313 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" 1314 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== 1315 | dependencies: 1316 | kind-of "^6.0.0" 1317 | 1318 | is-descriptor@^0.1.0: 1319 | version "0.1.6" 1320 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" 1321 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== 1322 | dependencies: 1323 | is-accessor-descriptor "^0.1.6" 1324 | is-data-descriptor "^0.1.4" 1325 | kind-of "^5.0.0" 1326 | 1327 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1328 | version "1.0.2" 1329 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" 1330 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== 1331 | dependencies: 1332 | is-accessor-descriptor "^1.0.0" 1333 | is-data-descriptor "^1.0.0" 1334 | kind-of "^6.0.2" 1335 | 1336 | is-extendable@^0.1.0, is-extendable@^0.1.1: 1337 | version "0.1.1" 1338 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 1339 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 1340 | 1341 | is-extendable@^1.0.1: 1342 | version "1.0.1" 1343 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" 1344 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== 1345 | dependencies: 1346 | is-plain-object "^2.0.4" 1347 | 1348 | is-extglob@^2.1.0: 1349 | version "2.1.1" 1350 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 1351 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 1352 | 1353 | is-fullwidth-code-point@^1.0.0: 1354 | version "1.0.0" 1355 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 1356 | integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= 1357 | dependencies: 1358 | number-is-nan "^1.0.0" 1359 | 1360 | is-fullwidth-code-point@^2.0.0: 1361 | version "2.0.0" 1362 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1363 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1364 | 1365 | is-glob@^3.1.0: 1366 | version "3.1.0" 1367 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" 1368 | integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= 1369 | dependencies: 1370 | is-extglob "^2.1.0" 1371 | 1372 | is-number@^3.0.0: 1373 | version "3.0.0" 1374 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 1375 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 1376 | dependencies: 1377 | kind-of "^3.0.2" 1378 | 1379 | is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: 1380 | version "2.0.4" 1381 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" 1382 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 1383 | dependencies: 1384 | isobject "^3.0.1" 1385 | 1386 | is-stream@^1.1.0: 1387 | version "1.1.0" 1388 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 1389 | integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 1390 | 1391 | is-windows@^1.0.1, is-windows@^1.0.2: 1392 | version "1.0.2" 1393 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 1394 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1395 | 1396 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: 1397 | version "1.0.0" 1398 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1399 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 1400 | 1401 | isexe@^2.0.0: 1402 | version "2.0.0" 1403 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 1404 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 1405 | 1406 | isobject@^2.0.0: 1407 | version "2.1.0" 1408 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1409 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 1410 | dependencies: 1411 | isarray "1.0.0" 1412 | 1413 | isobject@^3.0.0, isobject@^3.0.1: 1414 | version "3.0.1" 1415 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" 1416 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 1417 | 1418 | iterall@^1.0.2, iterall@^1.2.1, iterall@^1.2.2: 1419 | version "1.2.2" 1420 | resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.2.2.tgz#92d70deb8028e0c39ff3164fdbf4d8b088130cd7" 1421 | integrity sha512-yynBb1g+RFUPY64fTrFv7nsjRrENBQJaX2UL+2Szc9REFrSNm1rpSXHGzhmAy7a9uv3vlvgBlXnf9RqmPH1/DA== 1422 | 1423 | jest-worker@^27.4.5: 1424 | version "27.5.1" 1425 | resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" 1426 | integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== 1427 | dependencies: 1428 | "@types/node" "*" 1429 | merge-stream "^2.0.0" 1430 | supports-color "^8.0.0" 1431 | 1432 | jmespath@0.15.0: 1433 | version "0.15.0" 1434 | resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217" 1435 | integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc= 1436 | 1437 | json-parse-even-better-errors@^2.3.1: 1438 | version "2.3.1" 1439 | resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" 1440 | integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== 1441 | 1442 | json-schema-traverse@^0.4.1: 1443 | version "0.4.1" 1444 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 1445 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1446 | 1447 | json5@^1.0.1: 1448 | version "1.0.2" 1449 | resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" 1450 | integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== 1451 | dependencies: 1452 | minimist "^1.2.0" 1453 | 1454 | jsonwebtoken@^8.0.0, jsonwebtoken@^8.1.1: 1455 | version "8.3.0" 1456 | resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.3.0.tgz#056c90eee9a65ed6e6c72ddb0a1d325109aaf643" 1457 | integrity sha512-oge/hvlmeJCH+iIz1DwcO7vKPkNGJHhgkspk8OH3VKlw+mbi42WtD4ig1+VXRln765vxptAv+xT26Fd3cteqag== 1458 | dependencies: 1459 | jws "^3.1.5" 1460 | lodash.includes "^4.3.0" 1461 | lodash.isboolean "^3.0.3" 1462 | lodash.isinteger "^4.0.4" 1463 | lodash.isnumber "^3.0.3" 1464 | lodash.isplainobject "^4.0.6" 1465 | lodash.isstring "^4.0.1" 1466 | lodash.once "^4.0.0" 1467 | ms "^2.1.1" 1468 | 1469 | jwa@^1.1.5: 1470 | version "1.1.6" 1471 | resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.6.tgz#87240e76c9808dbde18783cf2264ef4929ee50e6" 1472 | integrity sha512-tBO/cf++BUsJkYql/kBbJroKOgHWEigTKBAjjBEmrMGYd1QMBC74Hr4Wo2zCZw6ZrVhlJPvoMrkcOnlWR/DJfw== 1473 | dependencies: 1474 | buffer-equal-constant-time "1.0.1" 1475 | ecdsa-sig-formatter "1.0.10" 1476 | safe-buffer "^5.0.1" 1477 | 1478 | jws@^3.1.5: 1479 | version "3.1.5" 1480 | resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.5.tgz#80d12d05b293d1e841e7cb8b4e69e561adcf834f" 1481 | integrity sha512-GsCSexFADNQUr8T5HPJvayTjvPIfoyJPtLQBwn5a4WZQchcrPMPMAWcC1AzJVRDKyD6ZPROPAxgv6rfHViO4uQ== 1482 | dependencies: 1483 | jwa "^1.1.5" 1484 | safe-buffer "^5.0.1" 1485 | 1486 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 1487 | version "3.2.2" 1488 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 1489 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 1490 | dependencies: 1491 | is-buffer "^1.1.5" 1492 | 1493 | kind-of@^4.0.0: 1494 | version "4.0.0" 1495 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 1496 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 1497 | dependencies: 1498 | is-buffer "^1.1.5" 1499 | 1500 | kind-of@^5.0.0: 1501 | version "5.1.0" 1502 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" 1503 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== 1504 | 1505 | kind-of@^6.0.0, kind-of@^6.0.2: 1506 | version "6.0.2" 1507 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" 1508 | integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== 1509 | 1510 | lcid@^2.0.0: 1511 | version "2.0.0" 1512 | resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" 1513 | integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== 1514 | dependencies: 1515 | invert-kv "^2.0.0" 1516 | 1517 | loader-runner@^4.2.0: 1518 | version "4.3.0" 1519 | resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" 1520 | integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== 1521 | 1522 | loader-utils@^1.1.0: 1523 | version "1.4.2" 1524 | resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3" 1525 | integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg== 1526 | dependencies: 1527 | big.js "^5.2.2" 1528 | emojis-list "^3.0.0" 1529 | json5 "^1.0.1" 1530 | 1531 | locate-path@^3.0.0: 1532 | version "3.0.0" 1533 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 1534 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 1535 | dependencies: 1536 | p-locate "^3.0.0" 1537 | path-exists "^3.0.0" 1538 | 1539 | lodash.includes@^4.3.0: 1540 | version "4.3.0" 1541 | resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" 1542 | integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= 1543 | 1544 | lodash.isboolean@^3.0.3: 1545 | version "3.0.3" 1546 | resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" 1547 | integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= 1548 | 1549 | lodash.isinteger@^4.0.4: 1550 | version "4.0.4" 1551 | resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" 1552 | integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= 1553 | 1554 | lodash.isnumber@^3.0.3: 1555 | version "3.0.3" 1556 | resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" 1557 | integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= 1558 | 1559 | lodash.isplainobject@^4.0.6: 1560 | version "4.0.6" 1561 | resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" 1562 | integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= 1563 | 1564 | lodash.isstring@^4.0.1: 1565 | version "4.0.1" 1566 | resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" 1567 | integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= 1568 | 1569 | lodash.once@^4.0.0: 1570 | version "4.1.1" 1571 | resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" 1572 | integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= 1573 | 1574 | "lodash@>=4 <5": 1575 | version "4.17.21" 1576 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 1577 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 1578 | 1579 | "lru-cache@>=4 <5": 1580 | version "4.1.3" 1581 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" 1582 | integrity sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA== 1583 | dependencies: 1584 | pseudomap "^1.0.2" 1585 | yallist "^2.1.2" 1586 | 1587 | lru-cache@^5.0.0: 1588 | version "5.1.1" 1589 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" 1590 | integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== 1591 | dependencies: 1592 | yallist "^3.0.2" 1593 | 1594 | map-age-cleaner@^0.1.1: 1595 | version "0.1.3" 1596 | resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" 1597 | integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== 1598 | dependencies: 1599 | p-defer "^1.0.0" 1600 | 1601 | map-cache@^0.2.2: 1602 | version "0.2.2" 1603 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 1604 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= 1605 | 1606 | map-visit@^1.0.0: 1607 | version "1.0.0" 1608 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" 1609 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= 1610 | dependencies: 1611 | object-visit "^1.0.0" 1612 | 1613 | media-typer@0.3.0: 1614 | version "0.3.0" 1615 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" 1616 | integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= 1617 | 1618 | mem@^4.0.0: 1619 | version "4.3.0" 1620 | resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" 1621 | integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== 1622 | dependencies: 1623 | map-age-cleaner "^0.1.1" 1624 | mimic-fn "^2.0.0" 1625 | p-is-promise "^2.0.0" 1626 | 1627 | memory-fs@^0.4.0: 1628 | version "0.4.1" 1629 | resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" 1630 | integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= 1631 | dependencies: 1632 | errno "^0.1.3" 1633 | readable-stream "^2.0.1" 1634 | 1635 | merge-stream@^2.0.0: 1636 | version "2.0.0" 1637 | resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" 1638 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== 1639 | 1640 | micromatch@^3.0.4: 1641 | version "3.1.10" 1642 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" 1643 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 1644 | dependencies: 1645 | arr-diff "^4.0.0" 1646 | array-unique "^0.3.2" 1647 | braces "^2.3.1" 1648 | define-property "^2.0.2" 1649 | extend-shallow "^3.0.2" 1650 | extglob "^2.0.4" 1651 | fragment-cache "^0.2.1" 1652 | kind-of "^6.0.2" 1653 | nanomatch "^1.2.9" 1654 | object.pick "^1.3.0" 1655 | regex-not "^1.0.0" 1656 | snapdragon "^0.8.1" 1657 | to-regex "^3.0.2" 1658 | 1659 | mime-db@1.52.0: 1660 | version "1.52.0" 1661 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" 1662 | integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== 1663 | 1664 | mime-types@^2.1.27, mime-types@~2.1.18, mime-types@~2.1.24: 1665 | version "2.1.35" 1666 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" 1667 | integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== 1668 | dependencies: 1669 | mime-db "1.52.0" 1670 | 1671 | mimic-fn@^2.0.0: 1672 | version "2.1.0" 1673 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" 1674 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 1675 | 1676 | minimist@^1.2.0: 1677 | version "1.2.7" 1678 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" 1679 | integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== 1680 | 1681 | mixin-deep@^1.2.0: 1682 | version "1.3.2" 1683 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" 1684 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== 1685 | dependencies: 1686 | for-in "^1.0.2" 1687 | is-extendable "^1.0.1" 1688 | 1689 | moment@>=2.14.0: 1690 | version "2.29.2" 1691 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.2.tgz#00910c60b20843bcba52d37d58c628b47b1f20e4" 1692 | integrity sha512-UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg== 1693 | 1694 | ms@2.0.0: 1695 | version "2.0.0" 1696 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1697 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1698 | 1699 | ms@^2.1.1: 1700 | version "2.1.1" 1701 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 1702 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 1703 | 1704 | nanomatch@^1.2.9: 1705 | version "1.2.13" 1706 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" 1707 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== 1708 | dependencies: 1709 | arr-diff "^4.0.0" 1710 | array-unique "^0.3.2" 1711 | define-property "^2.0.2" 1712 | extend-shallow "^3.0.2" 1713 | fragment-cache "^0.2.1" 1714 | is-windows "^1.0.2" 1715 | kind-of "^6.0.2" 1716 | object.pick "^1.3.0" 1717 | regex-not "^1.0.0" 1718 | snapdragon "^0.8.1" 1719 | to-regex "^3.0.1" 1720 | 1721 | neo-async@^2.6.2: 1722 | version "2.6.2" 1723 | resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" 1724 | integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== 1725 | 1726 | nice-try@^1.0.4: 1727 | version "1.0.5" 1728 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 1729 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 1730 | 1731 | node-releases@^2.0.18: 1732 | version "2.0.18" 1733 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" 1734 | integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== 1735 | 1736 | npm-run-path@^2.0.0: 1737 | version "2.0.2" 1738 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 1739 | integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= 1740 | dependencies: 1741 | path-key "^2.0.0" 1742 | 1743 | number-is-nan@^1.0.0: 1744 | version "1.0.1" 1745 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 1746 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 1747 | 1748 | object-assign@^4: 1749 | version "4.1.1" 1750 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1751 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1752 | 1753 | object-copy@^0.1.0: 1754 | version "0.1.0" 1755 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" 1756 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= 1757 | dependencies: 1758 | copy-descriptor "^0.1.0" 1759 | define-property "^0.2.5" 1760 | kind-of "^3.0.3" 1761 | 1762 | object-inspect@^1.13.1: 1763 | version "1.13.2" 1764 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" 1765 | integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== 1766 | 1767 | object-visit@^1.0.0: 1768 | version "1.0.1" 1769 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" 1770 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= 1771 | dependencies: 1772 | isobject "^3.0.0" 1773 | 1774 | object.pick@^1.3.0: 1775 | version "1.3.0" 1776 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" 1777 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= 1778 | dependencies: 1779 | isobject "^3.0.1" 1780 | 1781 | on-finished@2.4.1: 1782 | version "2.4.1" 1783 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" 1784 | integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== 1785 | dependencies: 1786 | ee-first "1.1.1" 1787 | 1788 | on-finished@~2.3.0: 1789 | version "2.3.0" 1790 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" 1791 | integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= 1792 | dependencies: 1793 | ee-first "1.1.1" 1794 | 1795 | once@^1.3.1, once@^1.4.0: 1796 | version "1.4.0" 1797 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1798 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1799 | dependencies: 1800 | wrappy "1" 1801 | 1802 | os-locale@^3.0.0: 1803 | version "3.1.0" 1804 | resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" 1805 | integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== 1806 | dependencies: 1807 | execa "^1.0.0" 1808 | lcid "^2.0.0" 1809 | mem "^4.0.0" 1810 | 1811 | p-defer@^1.0.0: 1812 | version "1.0.0" 1813 | resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" 1814 | integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= 1815 | 1816 | p-finally@^1.0.0: 1817 | version "1.0.0" 1818 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 1819 | integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= 1820 | 1821 | p-is-promise@^2.0.0: 1822 | version "2.1.0" 1823 | resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" 1824 | integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== 1825 | 1826 | p-limit@^2.0.0: 1827 | version "2.0.0" 1828 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" 1829 | integrity sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A== 1830 | dependencies: 1831 | p-try "^2.0.0" 1832 | 1833 | p-locate@^3.0.0: 1834 | version "3.0.0" 1835 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 1836 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 1837 | dependencies: 1838 | p-limit "^2.0.0" 1839 | 1840 | p-try@^2.0.0: 1841 | version "2.0.0" 1842 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" 1843 | integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== 1844 | 1845 | packet-reader@0.3.1: 1846 | version "0.3.1" 1847 | resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-0.3.1.tgz#cd62e60af8d7fea8a705ec4ff990871c46871f27" 1848 | integrity sha1-zWLmCvjX/qinBexP+ZCHHEaHHyc= 1849 | 1850 | packet-reader@1.0.0: 1851 | version "1.0.0" 1852 | resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74" 1853 | integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== 1854 | 1855 | parse-passwd@^1.0.0: 1856 | version "1.0.0" 1857 | resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" 1858 | integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= 1859 | 1860 | parseurl@^1.3.2, parseurl@~1.3.2: 1861 | version "1.3.2" 1862 | resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" 1863 | integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= 1864 | 1865 | pascalcase@^0.1.1: 1866 | version "0.1.1" 1867 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" 1868 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= 1869 | 1870 | path-exists@^3.0.0: 1871 | version "3.0.0" 1872 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 1873 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 1874 | 1875 | path-key@^2.0.0, path-key@^2.0.1: 1876 | version "2.0.1" 1877 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 1878 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 1879 | 1880 | pg-connection-string@0.1.3, pg-connection-string@^0.1.3: 1881 | version "0.1.3" 1882 | resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-0.1.3.tgz#da1847b20940e42ee1492beaf65d49d91b245df7" 1883 | integrity sha1-2hhHsglA5C7hSSvq9l1J2RskXfc= 1884 | 1885 | pg-int8@1.0.1: 1886 | version "1.0.1" 1887 | resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" 1888 | integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== 1889 | 1890 | pg-pool@^2.0.4: 1891 | version "2.0.6" 1892 | resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-2.0.6.tgz#7b561a482feb0a0e599b58b5137fd2db3ad8111c" 1893 | integrity sha512-hod2zYQxM8Gt482q+qONGTYcg/qVcV32VHVPtktbBJs0us3Dj7xibISw0BAAXVMCzt8A/jhfJvpZaxUlqtqs0g== 1894 | 1895 | pg-pool@~2.0.3: 1896 | version "2.0.3" 1897 | resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-2.0.3.tgz#c022032c8949f312a4f91fb6409ce04076be3257" 1898 | integrity sha1-wCIDLIlJ8xKk+R+2QJzgQHa+Mlc= 1899 | 1900 | pg-sql2@2.2.1, pg-sql2@^2.2.1: 1901 | version "2.2.1" 1902 | resolved "https://registry.yarnpkg.com/pg-sql2/-/pg-sql2-2.2.1.tgz#a37612e5243887c5135a6849dec1f20b2cf00553" 1903 | integrity sha512-S4XyLvUJv/rUMNk4+4LuT7S/aWKlQifi6ekHeshNWn0FZJxq5t4qw2VzCfbTNM3mQN7c9B6rM01FcnbRI37Y2Q== 1904 | dependencies: 1905 | "@types/pg" "^7.4.10" 1906 | debug ">=2 <3" 1907 | 1908 | pg-types@~1.12.1: 1909 | version "1.12.1" 1910 | resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-1.12.1.tgz#d64087e3903b58ffaad279e7595c52208a14c3d2" 1911 | integrity sha1-1kCH45A7WP+q0nnnWVxSIIoUw9I= 1912 | dependencies: 1913 | postgres-array "~1.0.0" 1914 | postgres-bytea "~1.0.0" 1915 | postgres-date "~1.0.0" 1916 | postgres-interval "^1.1.0" 1917 | 1918 | pg-types@~2.0.0: 1919 | version "2.0.1" 1920 | resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.0.1.tgz#b8585a37f2a9c7b386747e44574799549e5f4933" 1921 | integrity sha512-b7y6QM1VF5nOeX9ukMQ0h8a9z89mojrBHXfJeSug4mhL0YpxNBm83ot2TROyoAmX/ZOX3UbwVO4EbH7i1ZZNiw== 1922 | dependencies: 1923 | pg-int8 "1.0.1" 1924 | postgres-array "~2.0.0" 1925 | postgres-bytea "~1.0.0" 1926 | postgres-date "~1.0.4" 1927 | postgres-interval "^1.1.0" 1928 | 1929 | "pg@>=6.1.0 <8": 1930 | version "7.4.3" 1931 | resolved "https://registry.yarnpkg.com/pg/-/pg-7.4.3.tgz#f7b6f93f5340ecc2596afbb94a13e3d6b609834b" 1932 | integrity sha1-97b5P1NA7MJZavu5ShPj1rYJg0s= 1933 | dependencies: 1934 | buffer-writer "1.0.1" 1935 | packet-reader "0.3.1" 1936 | pg-connection-string "0.1.3" 1937 | pg-pool "~2.0.3" 1938 | pg-types "~1.12.1" 1939 | pgpass "1.x" 1940 | semver "4.3.2" 1941 | 1942 | pg@^7.9.0: 1943 | version "7.9.0" 1944 | resolved "https://registry.yarnpkg.com/pg/-/pg-7.9.0.tgz#04f0024d810544463f47dbb5aada2486aa7dcc36" 1945 | integrity sha512-GkzteBFpsIoIBCSuomqik3IGvhqAtTr32jclR24RmUg170Jrn6ypwR97YalFHrsE1iaW8T0aAH13dmij8QUQ0g== 1946 | dependencies: 1947 | buffer-writer "2.0.0" 1948 | packet-reader "1.0.0" 1949 | pg-connection-string "0.1.3" 1950 | pg-pool "^2.0.4" 1951 | pg-types "~2.0.0" 1952 | pgpass "1.x" 1953 | semver "4.3.2" 1954 | 1955 | pgpass@1.x: 1956 | version "1.0.2" 1957 | resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.2.tgz#2a7bb41b6065b67907e91da1b07c1847c877b306" 1958 | integrity sha1-Knu0G2BltnkH6R2hsHwYR8h3swY= 1959 | dependencies: 1960 | split "^1.0.0" 1961 | 1962 | picocolors@^1.0.1: 1963 | version "1.0.1" 1964 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" 1965 | integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== 1966 | 1967 | pkg-dir@^3.0.0: 1968 | version "3.0.0" 1969 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" 1970 | integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== 1971 | dependencies: 1972 | find-up "^3.0.0" 1973 | 1974 | pluralize@^7.0.0: 1975 | version "7.0.0" 1976 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" 1977 | integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== 1978 | 1979 | posix-character-classes@^0.1.0: 1980 | version "0.1.1" 1981 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" 1982 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= 1983 | 1984 | postgraphile-core@4.4.0-beta.9: 1985 | version "4.4.0-beta.9" 1986 | resolved "https://registry.yarnpkg.com/postgraphile-core/-/postgraphile-core-4.4.0-beta.9.tgz#c2e48ecee84a3a8fa028302a507546adb32780f5" 1987 | integrity sha512-4QP7HPg1AYgPNWgKFgsrckL65toUZettrZNIjQPBH1PssKFffMb0L24uCytI2d5spFrZdWzH/DIktMpInXWI9w== 1988 | dependencies: 1989 | "@types/graphql" "^14.0.3" 1990 | graphile-build "4.4.0-beta.9" 1991 | graphile-build-pg "4.4.0-beta.9" 1992 | 1993 | postgraphile@^4.4.0-beta.9: 1994 | version "4.4.0-beta.9" 1995 | resolved "https://registry.yarnpkg.com/postgraphile/-/postgraphile-4.4.0-beta.9.tgz#da89b47ed1758eb844e1bd4b5d4fd2e7d9d3f0d5" 1996 | integrity sha512-NxvbpUd0CVYaMifsHYuPLb0i+pMWvlDAm8+cN8dSS29M7I9IvMXwcseynb5AgeVvpour/k1QAEu/JAfXni9rhA== 1997 | dependencies: 1998 | "@types/graphql" "^14.0.3" 1999 | "@types/jsonwebtoken" "<7.2.1" 2000 | "@types/koa" "^2.0.44" 2001 | "@types/pg" "^7.4.10" 2002 | "@types/ws" "^6.0.1" 2003 | body-parser "^1.15.2" 2004 | chalk "^1.1.3" 2005 | commander "^2.19.0" 2006 | debug "^2.3.3" 2007 | finalhandler "^1.0.6" 2008 | graphql "^0.6.0 || ^0.7.0 || ^0.8.0-b || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.2" 2009 | http-errors "^1.5.1" 2010 | iterall "^1.0.2" 2011 | jsonwebtoken "^8.0.0" 2012 | lru-cache ">=4 <5" 2013 | parseurl "^1.3.2" 2014 | pg ">=6.1.0 <8" 2015 | pg-connection-string "^0.1.3" 2016 | pg-sql2 "^2.2.1" 2017 | postgraphile-core "4.4.0-beta.9" 2018 | subscriptions-transport-ws "^0.9.15" 2019 | tslib "^1.5.0" 2020 | ws "^6.1.3" 2021 | 2022 | postgres-array@~1.0.0: 2023 | version "1.0.2" 2024 | resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-1.0.2.tgz#8e0b32eb03bf77a5c0a7851e0441c169a256a238" 2025 | integrity sha1-jgsy6wO/d6XAp4UeBEHBaaJWojg= 2026 | 2027 | postgres-array@~2.0.0: 2028 | version "2.0.0" 2029 | resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" 2030 | integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA== 2031 | 2032 | postgres-bytea@~1.0.0: 2033 | version "1.0.0" 2034 | resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35" 2035 | integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU= 2036 | 2037 | postgres-date@~1.0.0: 2038 | version "1.0.3" 2039 | resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.3.tgz#e2d89702efdb258ff9d9cee0fe91bd06975257a8" 2040 | integrity sha1-4tiXAu/bJY/52c7g/pG9BpdSV6g= 2041 | 2042 | postgres-date@~1.0.4: 2043 | version "1.0.4" 2044 | resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.4.tgz#1c2728d62ef1bff49abdd35c1f86d4bdf118a728" 2045 | integrity sha512-bESRvKVuTrjoBluEcpv2346+6kgB7UlnqWZsnbnCccTNq/pqfj1j6oBaN5+b/NrDXepYUT/HKadqv3iS9lJuVA== 2046 | 2047 | postgres-interval@^1.1.0, postgres-interval@^1.1.1: 2048 | version "1.1.2" 2049 | resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.1.2.tgz#bf71ff902635f21cb241a013fc421d81d1db15a9" 2050 | integrity sha512-fC3xNHeTskCxL1dC8KOtxXt7YeFmlbTYtn7ul8MkVERuTmf7pI4DrkAxcw3kh1fQ9uz4wQmd03a1mRiXUZChfQ== 2051 | dependencies: 2052 | xtend "^4.0.0" 2053 | 2054 | process-nextick-args@~2.0.0: 2055 | version "2.0.0" 2056 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" 2057 | integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== 2058 | 2059 | prr@~1.0.1: 2060 | version "1.0.1" 2061 | resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" 2062 | integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= 2063 | 2064 | pseudomap@^1.0.2: 2065 | version "1.0.2" 2066 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 2067 | integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= 2068 | 2069 | pump@^3.0.0: 2070 | version "3.0.0" 2071 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 2072 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 2073 | dependencies: 2074 | end-of-stream "^1.1.0" 2075 | once "^1.3.1" 2076 | 2077 | punycode@1.3.2: 2078 | version "1.3.2" 2079 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" 2080 | integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= 2081 | 2082 | punycode@^2.1.0: 2083 | version "2.1.1" 2084 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 2085 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 2086 | 2087 | qs@6.13.0: 2088 | version "6.13.0" 2089 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" 2090 | integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== 2091 | dependencies: 2092 | side-channel "^1.0.6" 2093 | 2094 | querystring@0.2.0: 2095 | version "0.2.0" 2096 | resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" 2097 | integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= 2098 | 2099 | randombytes@^2.1.0: 2100 | version "2.1.0" 2101 | resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" 2102 | integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== 2103 | dependencies: 2104 | safe-buffer "^5.1.0" 2105 | 2106 | raw-body@2.5.2: 2107 | version "2.5.2" 2108 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" 2109 | integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== 2110 | dependencies: 2111 | bytes "3.1.2" 2112 | http-errors "2.0.0" 2113 | iconv-lite "0.4.24" 2114 | unpipe "1.0.0" 2115 | 2116 | readable-stream@^2.0.1: 2117 | version "2.3.6" 2118 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" 2119 | integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== 2120 | dependencies: 2121 | core-util-is "~1.0.0" 2122 | inherits "~2.0.3" 2123 | isarray "~1.0.0" 2124 | process-nextick-args "~2.0.0" 2125 | safe-buffer "~5.1.1" 2126 | string_decoder "~1.1.1" 2127 | util-deprecate "~1.0.1" 2128 | 2129 | regex-not@^1.0.0, regex-not@^1.0.2: 2130 | version "1.0.2" 2131 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" 2132 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== 2133 | dependencies: 2134 | extend-shallow "^3.0.2" 2135 | safe-regex "^1.1.0" 2136 | 2137 | repeat-element@^1.1.2: 2138 | version "1.1.3" 2139 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" 2140 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 2141 | 2142 | repeat-string@^1.6.1: 2143 | version "1.6.1" 2144 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 2145 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= 2146 | 2147 | require-directory@^2.1.1: 2148 | version "2.1.1" 2149 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 2150 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 2151 | 2152 | require-main-filename@^1.0.1: 2153 | version "1.0.1" 2154 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" 2155 | integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= 2156 | 2157 | resolve-cwd@^2.0.0: 2158 | version "2.0.0" 2159 | resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" 2160 | integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= 2161 | dependencies: 2162 | resolve-from "^3.0.0" 2163 | 2164 | resolve-dir@^1.0.0, resolve-dir@^1.0.1: 2165 | version "1.0.1" 2166 | resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" 2167 | integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= 2168 | dependencies: 2169 | expand-tilde "^2.0.0" 2170 | global-modules "^1.0.0" 2171 | 2172 | resolve-from@^3.0.0: 2173 | version "3.0.0" 2174 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 2175 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 2176 | 2177 | resolve-url@^0.2.1: 2178 | version "0.2.1" 2179 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 2180 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= 2181 | 2182 | ret@~0.1.10: 2183 | version "0.1.15" 2184 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" 2185 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== 2186 | 2187 | safe-buffer@^5.0.1, safe-buffer@^5.1.0: 2188 | version "5.2.1" 2189 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 2190 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 2191 | 2192 | safe-buffer@~5.1.0, safe-buffer@~5.1.1: 2193 | version "5.1.2" 2194 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 2195 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 2196 | 2197 | safe-regex@^1.1.0: 2198 | version "1.1.0" 2199 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" 2200 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= 2201 | dependencies: 2202 | ret "~0.1.10" 2203 | 2204 | "safer-buffer@>= 2.1.2 < 3": 2205 | version "2.1.2" 2206 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 2207 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 2208 | 2209 | sax@1.2.1: 2210 | version "1.2.1" 2211 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" 2212 | integrity sha1-e45lYZCyKOgaZq6nSEgNgozS03o= 2213 | 2214 | sax@>=0.6.0: 2215 | version "1.2.4" 2216 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" 2217 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 2218 | 2219 | schema-utils@^3.1.1, schema-utils@^3.2.0: 2220 | version "3.3.0" 2221 | resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" 2222 | integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== 2223 | dependencies: 2224 | "@types/json-schema" "^7.0.8" 2225 | ajv "^6.12.5" 2226 | ajv-keywords "^3.5.2" 2227 | 2228 | semver@4.3.2: 2229 | version "4.3.2" 2230 | resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7" 2231 | integrity sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c= 2232 | 2233 | semver@^5.5.0: 2234 | version "5.5.1" 2235 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" 2236 | integrity sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw== 2237 | 2238 | semver@^5.6.0: 2239 | version "5.6.0" 2240 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" 2241 | integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== 2242 | 2243 | serialize-javascript@^6.0.1: 2244 | version "6.0.2" 2245 | resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" 2246 | integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== 2247 | dependencies: 2248 | randombytes "^2.1.0" 2249 | 2250 | serverless-content-encoding@^1.1.0: 2251 | version "1.1.0" 2252 | resolved "https://registry.yarnpkg.com/serverless-content-encoding/-/serverless-content-encoding-1.1.0.tgz#d284fb16ac25f8603d42dcc3afa826438baf5b01" 2253 | integrity sha1-0oT7Fqwl+GA9QtzDr6gmQ4uvWwE= 2254 | 2255 | set-blocking@^2.0.0: 2256 | version "2.0.0" 2257 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 2258 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 2259 | 2260 | set-function-length@^1.2.1: 2261 | version "1.2.2" 2262 | resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" 2263 | integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== 2264 | dependencies: 2265 | define-data-property "^1.1.4" 2266 | es-errors "^1.3.0" 2267 | function-bind "^1.1.2" 2268 | get-intrinsic "^1.2.4" 2269 | gopd "^1.0.1" 2270 | has-property-descriptors "^1.0.2" 2271 | 2272 | set-value@^0.4.3: 2273 | version "0.4.3" 2274 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" 2275 | integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= 2276 | dependencies: 2277 | extend-shallow "^2.0.1" 2278 | is-extendable "^0.1.1" 2279 | is-plain-object "^2.0.1" 2280 | to-object-path "^0.3.0" 2281 | 2282 | set-value@^2.0.0: 2283 | version "2.0.0" 2284 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" 2285 | integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== 2286 | dependencies: 2287 | extend-shallow "^2.0.1" 2288 | is-extendable "^0.1.1" 2289 | is-plain-object "^2.0.3" 2290 | split-string "^3.0.1" 2291 | 2292 | setprototypeof@1.1.0: 2293 | version "1.1.0" 2294 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" 2295 | integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== 2296 | 2297 | setprototypeof@1.2.0: 2298 | version "1.2.0" 2299 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" 2300 | integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== 2301 | 2302 | shebang-command@^1.2.0: 2303 | version "1.2.0" 2304 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 2305 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 2306 | dependencies: 2307 | shebang-regex "^1.0.0" 2308 | 2309 | shebang-regex@^1.0.0: 2310 | version "1.0.0" 2311 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 2312 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 2313 | 2314 | side-channel@^1.0.6: 2315 | version "1.0.6" 2316 | resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" 2317 | integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== 2318 | dependencies: 2319 | call-bind "^1.0.7" 2320 | es-errors "^1.3.0" 2321 | get-intrinsic "^1.2.4" 2322 | object-inspect "^1.13.1" 2323 | 2324 | signal-exit@^3.0.0: 2325 | version "3.0.2" 2326 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 2327 | integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 2328 | 2329 | snapdragon-node@^2.0.1: 2330 | version "2.1.1" 2331 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" 2332 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== 2333 | dependencies: 2334 | define-property "^1.0.0" 2335 | isobject "^3.0.0" 2336 | snapdragon-util "^3.0.1" 2337 | 2338 | snapdragon-util@^3.0.1: 2339 | version "3.0.1" 2340 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" 2341 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== 2342 | dependencies: 2343 | kind-of "^3.2.0" 2344 | 2345 | snapdragon@^0.8.1: 2346 | version "0.8.2" 2347 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" 2348 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== 2349 | dependencies: 2350 | base "^0.11.1" 2351 | debug "^2.2.0" 2352 | define-property "^0.2.5" 2353 | extend-shallow "^2.0.1" 2354 | map-cache "^0.2.2" 2355 | source-map "^0.5.6" 2356 | source-map-resolve "^0.5.0" 2357 | use "^3.1.0" 2358 | 2359 | source-map-resolve@^0.5.0: 2360 | version "0.5.2" 2361 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" 2362 | integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== 2363 | dependencies: 2364 | atob "^2.1.1" 2365 | decode-uri-component "^0.2.0" 2366 | resolve-url "^0.2.1" 2367 | source-map-url "^0.4.0" 2368 | urix "^0.1.0" 2369 | 2370 | source-map-support@~0.5.20: 2371 | version "0.5.21" 2372 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" 2373 | integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== 2374 | dependencies: 2375 | buffer-from "^1.0.0" 2376 | source-map "^0.6.0" 2377 | 2378 | source-map-url@^0.4.0: 2379 | version "0.4.0" 2380 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" 2381 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= 2382 | 2383 | source-map@^0.5.6: 2384 | version "0.5.7" 2385 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 2386 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 2387 | 2388 | source-map@^0.6.0: 2389 | version "0.6.1" 2390 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 2391 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 2392 | 2393 | split-string@^3.0.1, split-string@^3.0.2: 2394 | version "3.1.0" 2395 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" 2396 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== 2397 | dependencies: 2398 | extend-shallow "^3.0.0" 2399 | 2400 | split@^1.0.0: 2401 | version "1.0.1" 2402 | resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" 2403 | integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== 2404 | dependencies: 2405 | through "2" 2406 | 2407 | static-extend@^0.1.1: 2408 | version "0.1.2" 2409 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" 2410 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= 2411 | dependencies: 2412 | define-property "^0.2.5" 2413 | object-copy "^0.1.0" 2414 | 2415 | statuses@2.0.1: 2416 | version "2.0.1" 2417 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" 2418 | integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== 2419 | 2420 | "statuses@>= 1.5.0 < 2": 2421 | version "1.5.0" 2422 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" 2423 | integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= 2424 | 2425 | statuses@~1.4.0: 2426 | version "1.4.0" 2427 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" 2428 | integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== 2429 | 2430 | string-width@^1.0.1: 2431 | version "1.0.2" 2432 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 2433 | integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= 2434 | dependencies: 2435 | code-point-at "^1.0.0" 2436 | is-fullwidth-code-point "^1.0.0" 2437 | strip-ansi "^3.0.0" 2438 | 2439 | string-width@^2.0.0, string-width@^2.1.1: 2440 | version "2.1.1" 2441 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 2442 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 2443 | dependencies: 2444 | is-fullwidth-code-point "^2.0.0" 2445 | strip-ansi "^4.0.0" 2446 | 2447 | string_decoder@~1.1.1: 2448 | version "1.1.1" 2449 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 2450 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 2451 | dependencies: 2452 | safe-buffer "~5.1.0" 2453 | 2454 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 2455 | version "3.0.1" 2456 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 2457 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 2458 | dependencies: 2459 | ansi-regex "^2.0.0" 2460 | 2461 | strip-ansi@^4.0.0: 2462 | version "4.0.0" 2463 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 2464 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 2465 | dependencies: 2466 | ansi-regex "^3.0.0" 2467 | 2468 | strip-eof@^1.0.0: 2469 | version "1.0.0" 2470 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 2471 | integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= 2472 | 2473 | subscriptions-transport-ws@^0.9.15: 2474 | version "0.9.16" 2475 | resolved "https://registry.yarnpkg.com/subscriptions-transport-ws/-/subscriptions-transport-ws-0.9.16.tgz#90a422f0771d9c32069294c08608af2d47f596ec" 2476 | integrity sha512-pQdoU7nC+EpStXnCfh/+ho0zE0Z+ma+i7xvj7bkXKb1dvYHSZxgRPaU6spRP+Bjzow67c/rRDoix5RT0uU9omw== 2477 | dependencies: 2478 | backo2 "^1.0.2" 2479 | eventemitter3 "^3.1.0" 2480 | iterall "^1.2.1" 2481 | symbol-observable "^1.0.4" 2482 | ws "^5.2.0" 2483 | 2484 | supports-color@^2.0.0: 2485 | version "2.0.0" 2486 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 2487 | integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 2488 | 2489 | supports-color@^5.3.0, supports-color@^5.5.0: 2490 | version "5.5.0" 2491 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 2492 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2493 | dependencies: 2494 | has-flag "^3.0.0" 2495 | 2496 | supports-color@^8.0.0: 2497 | version "8.1.1" 2498 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" 2499 | integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== 2500 | dependencies: 2501 | has-flag "^4.0.0" 2502 | 2503 | symbol-observable@^1.0.4: 2504 | version "1.2.0" 2505 | resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" 2506 | integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== 2507 | 2508 | tapable@^1.0.0: 2509 | version "1.0.0" 2510 | resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.0.0.tgz#cbb639d9002eed9c6b5975eb20598d7936f1f9f2" 2511 | integrity sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg== 2512 | 2513 | tapable@^2.1.1, tapable@^2.2.0: 2514 | version "2.2.1" 2515 | resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" 2516 | integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== 2517 | 2518 | terser-webpack-plugin@^5.3.10: 2519 | version "5.3.10" 2520 | resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" 2521 | integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== 2522 | dependencies: 2523 | "@jridgewell/trace-mapping" "^0.3.20" 2524 | jest-worker "^27.4.5" 2525 | schema-utils "^3.1.1" 2526 | serialize-javascript "^6.0.1" 2527 | terser "^5.26.0" 2528 | 2529 | terser@^5.26.0: 2530 | version "5.31.6" 2531 | resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.6.tgz#c63858a0f0703988d0266a82fcbf2d7ba76422b1" 2532 | integrity sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg== 2533 | dependencies: 2534 | "@jridgewell/source-map" "^0.3.3" 2535 | acorn "^8.8.2" 2536 | commander "^2.20.0" 2537 | source-map-support "~0.5.20" 2538 | 2539 | through@2: 2540 | version "2.3.8" 2541 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 2542 | integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= 2543 | 2544 | to-object-path@^0.3.0: 2545 | version "0.3.0" 2546 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" 2547 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= 2548 | dependencies: 2549 | kind-of "^3.0.2" 2550 | 2551 | to-regex-range@^2.1.0: 2552 | version "2.1.1" 2553 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" 2554 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= 2555 | dependencies: 2556 | is-number "^3.0.0" 2557 | repeat-string "^1.6.1" 2558 | 2559 | to-regex@^3.0.1, to-regex@^3.0.2: 2560 | version "3.0.2" 2561 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" 2562 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== 2563 | dependencies: 2564 | define-property "^2.0.2" 2565 | extend-shallow "^3.0.2" 2566 | regex-not "^1.0.2" 2567 | safe-regex "^1.1.0" 2568 | 2569 | toidentifier@1.0.0: 2570 | version "1.0.0" 2571 | resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" 2572 | integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== 2573 | 2574 | toidentifier@1.0.1: 2575 | version "1.0.1" 2576 | resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" 2577 | integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== 2578 | 2579 | tslib@^1.5.0: 2580 | version "1.9.3" 2581 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" 2582 | integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== 2583 | 2584 | type-is@^1.6.16: 2585 | version "1.6.16" 2586 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" 2587 | integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== 2588 | dependencies: 2589 | media-typer "0.3.0" 2590 | mime-types "~2.1.18" 2591 | 2592 | type-is@~1.6.18: 2593 | version "1.6.18" 2594 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" 2595 | integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== 2596 | dependencies: 2597 | media-typer "0.3.0" 2598 | mime-types "~2.1.24" 2599 | 2600 | union-value@^1.0.0: 2601 | version "1.0.0" 2602 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" 2603 | integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= 2604 | dependencies: 2605 | arr-union "^3.1.0" 2606 | get-value "^2.0.6" 2607 | is-extendable "^0.1.1" 2608 | set-value "^0.4.3" 2609 | 2610 | unpipe@1.0.0, unpipe@~1.0.0: 2611 | version "1.0.0" 2612 | resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" 2613 | integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= 2614 | 2615 | unset-value@^1.0.0: 2616 | version "1.0.0" 2617 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" 2618 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= 2619 | dependencies: 2620 | has-value "^0.3.1" 2621 | isobject "^3.0.0" 2622 | 2623 | update-browserslist-db@^1.1.0: 2624 | version "1.1.0" 2625 | resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" 2626 | integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== 2627 | dependencies: 2628 | escalade "^3.1.2" 2629 | picocolors "^1.0.1" 2630 | 2631 | uri-js@^4.2.2: 2632 | version "4.4.1" 2633 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" 2634 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 2635 | dependencies: 2636 | punycode "^2.1.0" 2637 | 2638 | urix@^0.1.0: 2639 | version "0.1.0" 2640 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 2641 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= 2642 | 2643 | url@0.10.3: 2644 | version "0.10.3" 2645 | resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" 2646 | integrity sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ= 2647 | dependencies: 2648 | punycode "1.3.2" 2649 | querystring "0.2.0" 2650 | 2651 | use@^3.1.0: 2652 | version "3.1.1" 2653 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" 2654 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== 2655 | 2656 | util-deprecate@~1.0.1: 2657 | version "1.0.2" 2658 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2659 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 2660 | 2661 | uuid@3.3.2: 2662 | version "3.3.2" 2663 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" 2664 | integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== 2665 | 2666 | v8-compile-cache@^2.0.2: 2667 | version "2.0.2" 2668 | resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz#a428b28bb26790734c4fc8bc9fa106fccebf6a6c" 2669 | integrity sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw== 2670 | 2671 | vary@^1: 2672 | version "1.1.2" 2673 | resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" 2674 | integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= 2675 | 2676 | watchpack@^2.4.1: 2677 | version "2.4.2" 2678 | resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.2.tgz#2feeaed67412e7c33184e5a79ca738fbd38564da" 2679 | integrity sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw== 2680 | dependencies: 2681 | glob-to-regexp "^0.4.1" 2682 | graceful-fs "^4.1.2" 2683 | 2684 | webpack-cli@3.3.0: 2685 | version "3.3.0" 2686 | resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.0.tgz#55c8a74cae1e88117f9dda3a801c7272e93ca318" 2687 | integrity sha512-t1M7G4z5FhHKJ92WRKwZ1rtvi7rHc0NZoZRbSkol0YKl4HvcC8+DsmGDmK7MmZxHSAetHagiOsjOB6MmzC2TUw== 2688 | dependencies: 2689 | chalk "^2.4.1" 2690 | cross-spawn "^6.0.5" 2691 | enhanced-resolve "^4.1.0" 2692 | findup-sync "^2.0.0" 2693 | global-modules "^1.0.0" 2694 | import-local "^2.0.0" 2695 | interpret "^1.1.0" 2696 | loader-utils "^1.1.0" 2697 | supports-color "^5.5.0" 2698 | v8-compile-cache "^2.0.2" 2699 | yargs "^12.0.5" 2700 | 2701 | webpack-sources@^3.2.3: 2702 | version "3.2.3" 2703 | resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" 2704 | integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== 2705 | 2706 | webpack@5.94.0: 2707 | version "5.94.0" 2708 | resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.94.0.tgz#77a6089c716e7ab90c1c67574a28da518a20970f" 2709 | integrity sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg== 2710 | dependencies: 2711 | "@types/estree" "^1.0.5" 2712 | "@webassemblyjs/ast" "^1.12.1" 2713 | "@webassemblyjs/wasm-edit" "^1.12.1" 2714 | "@webassemblyjs/wasm-parser" "^1.12.1" 2715 | acorn "^8.7.1" 2716 | acorn-import-attributes "^1.9.5" 2717 | browserslist "^4.21.10" 2718 | chrome-trace-event "^1.0.2" 2719 | enhanced-resolve "^5.17.1" 2720 | es-module-lexer "^1.2.1" 2721 | eslint-scope "5.1.1" 2722 | events "^3.2.0" 2723 | glob-to-regexp "^0.4.1" 2724 | graceful-fs "^4.2.11" 2725 | json-parse-even-better-errors "^2.3.1" 2726 | loader-runner "^4.2.0" 2727 | mime-types "^2.1.27" 2728 | neo-async "^2.6.2" 2729 | schema-utils "^3.2.0" 2730 | tapable "^2.1.1" 2731 | terser-webpack-plugin "^5.3.10" 2732 | watchpack "^2.4.1" 2733 | webpack-sources "^3.2.3" 2734 | 2735 | which-module@^2.0.0: 2736 | version "2.0.0" 2737 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 2738 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 2739 | 2740 | which@^1.2.14, which@^1.2.9: 2741 | version "1.3.1" 2742 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 2743 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 2744 | dependencies: 2745 | isexe "^2.0.0" 2746 | 2747 | wrap-ansi@^2.0.0: 2748 | version "2.1.0" 2749 | resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" 2750 | integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= 2751 | dependencies: 2752 | string-width "^1.0.1" 2753 | strip-ansi "^3.0.1" 2754 | 2755 | wrappy@1: 2756 | version "1.0.2" 2757 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2758 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 2759 | 2760 | ws@^5.2.0: 2761 | version "5.2.4" 2762 | resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.4.tgz#c7bea9f1cfb5f410de50e70e82662e562113f9a7" 2763 | integrity sha512-fFCejsuC8f9kOSu9FYaOw8CdO68O3h5v0lg4p74o8JqWpwTf9tniOD+nOB78aWoVSS6WptVUmDrp/KPsMVBWFQ== 2764 | dependencies: 2765 | async-limiter "~1.0.0" 2766 | 2767 | ws@^6.1.3: 2768 | version "6.2.3" 2769 | resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.3.tgz#ccc96e4add5fd6fedbc491903075c85c5a11d9ee" 2770 | integrity sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA== 2771 | dependencies: 2772 | async-limiter "~1.0.0" 2773 | 2774 | xml2js@0.4.19: 2775 | version "0.4.19" 2776 | resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" 2777 | integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== 2778 | dependencies: 2779 | sax ">=0.6.0" 2780 | xmlbuilder "~9.0.1" 2781 | 2782 | xmlbuilder@~9.0.1: 2783 | version "9.0.7" 2784 | resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" 2785 | integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0= 2786 | 2787 | xtend@^4.0.0: 2788 | version "4.0.1" 2789 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 2790 | integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= 2791 | 2792 | "y18n@^3.2.1 || ^4.0.0": 2793 | version "4.0.0" 2794 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" 2795 | integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== 2796 | 2797 | yallist@^2.1.2: 2798 | version "2.1.2" 2799 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" 2800 | integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= 2801 | 2802 | yallist@^3.0.2: 2803 | version "3.1.1" 2804 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" 2805 | integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== 2806 | 2807 | yargs-parser@^11.1.1: 2808 | version "11.1.1" 2809 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" 2810 | integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== 2811 | dependencies: 2812 | camelcase "^5.0.0" 2813 | decamelize "^1.2.0" 2814 | 2815 | yargs@^12.0.5: 2816 | version "12.0.5" 2817 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" 2818 | integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== 2819 | dependencies: 2820 | cliui "^4.0.0" 2821 | decamelize "^1.2.0" 2822 | find-up "^3.0.0" 2823 | get-caller-file "^1.0.1" 2824 | os-locale "^3.0.0" 2825 | require-directory "^2.1.1" 2826 | require-main-filename "^1.0.1" 2827 | set-blocking "^2.0.0" 2828 | string-width "^2.0.0" 2829 | which-module "^2.0.0" 2830 | y18n "^3.2.1 || ^4.0.0" 2831 | yargs-parser "^11.1.1" 2832 | --------------------------------------------------------------------------------