diff --git a/.circleci/config.yml b/.circleci/config.yml
index 8fe8f1273..15d9c5c9f 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -25,7 +25,7 @@ jobs:
build:
working_directory: ~/nest
docker:
- - image: circleci/node:16
+ - image: cimg/node:16.18
steps:
- checkout
- *restore-cache
@@ -38,14 +38,20 @@ jobs:
e2e_tests:
working_directory: ~/nest
docker:
- - image: circleci/node:16
+ - image: cimg/node:16.18
steps:
- checkout
- *restore-cache
- *install-deps
- run:
- name: E2E tests
- command: yarn test:e2e
+ name: E2E tests (graphql)
+ command: yarn test:e2e:graphql
+ - run:
+ name: E2E tests (apollo)
+ command: yarn test:e2e:apollo
+ - run:
+ name: E2E tests (mercurius)
+ command: yarn test:e2e:mercurius
workflows:
version: 2
@@ -55,4 +61,3 @@ workflows:
- e2e_tests:
requires:
- build
-
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE/Bug_report.yml b/.github/ISSUE_TEMPLATE/Bug_report.yml
index 841e9d13f..faf32a644 100644
--- a/.github/ISSUE_TEMPLATE/Bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/Bug_report.yml
@@ -56,7 +56,7 @@ body:
required: true
attributes:
label: "Expected behavior"
- description: "A clear and concise description of what you expected to happend (or code)"
+ description: "A clear and concise description of what you expected to happen (or code)"
- type: markdown
attributes:
diff --git a/.github/ISSUE_TEMPLATE/Regression.yml b/.github/ISSUE_TEMPLATE/Regression.yml
index eeb1f258a..c234d06f4 100644
--- a/.github/ISSUE_TEMPLATE/Regression.yml
+++ b/.github/ISSUE_TEMPLATE/Regression.yml
@@ -68,7 +68,7 @@ body:
required: true
attributes:
label: "Expected behavior"
- description: "A clear and concise description of what you expected to happend (or code)"
+ description: "A clear and concise description of what you expected to happen (or code)"
- type: textarea
attributes:
diff --git a/.prettierignore b/.prettierignore
index d4afd181f..37a473cfa 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -1,2 +1,5 @@
packages/**/tests/generated-definitions/*.ts
-packages/**/tests/**/*.fixture.ts
\ No newline at end of file
+packages/**/tests/**/*.fixture.ts
+
+packages/**/tests/cases/**/*.ts
+packages/**/tests/cases/**/*.ts
diff --git a/LICENSE b/LICENSE
index f188502b8..305bd8d7e 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
(The MIT License)
-Copyright (c) Kamil Mysliwiec
+Copyright (c) 2017-2022 Kamil Mysliwiec
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
diff --git a/README.md b/README.md
index 263a542d9..e4c664ea0 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-
+
A progressive Node.js framework for building efficient and scalable server-side applications.
diff --git a/lerna.json b/lerna.json
index fadabea69..b8b85e01c 100644
--- a/lerna.json
+++ b/lerna.json
@@ -2,7 +2,7 @@
"packages": [
"packages/*"
],
- "version": "10.0.15",
+ "version": "10.1.4",
"npmClient": "yarn",
"useWorkspaces": true,
"changelog": {
diff --git a/package.json b/package.json
index 80886e11c..e184936c2 100644
--- a/package.json
+++ b/package.json
@@ -20,44 +20,47 @@
"publish:next": "lerna publish --dist-tag next",
"test:e2e": "lerna run test:e2e --parallel",
"test:e2e:dev": "lerna run test:e2e:dev --parallel",
+ "test:e2e:apollo": "lerna run test:e2e --scope @nestjs/apollo --stream",
+ "test:e2e:graphql": "lerna run test:e2e --scope @nestjs/graphql --stream",
+ "test:e2e:mercurius": "lerna run test:e2e --scope @nestjs/mercurius --stream",
"prepare": "husky install"
},
"resolutions": {
"graphql": "15.8.0"
},
"devDependencies": {
- "@commitlint/cli": "17.0.2",
- "@commitlint/config-angular": "17.0.0",
+ "@commitlint/cli": "17.1.2",
+ "@commitlint/config-angular": "17.1.0",
"@types/graphql": "14.5.0",
- "@types/jest": "28.1.0",
- "@types/node": "17.0.0",
+ "@types/jest": "29.2.0",
+ "@types/node": "18.11.5",
"@types/node-fetch": "3.0.3",
"@types/normalize-path": "3.0.0",
"@types/ws": "8.5.3",
- "@typescript-eslint/eslint-plugin": "5.27.0",
- "@typescript-eslint/parser": "5.27.0",
+ "@typescript-eslint/eslint-plugin": "5.41.0",
+ "@typescript-eslint/parser": "5.41.0",
"class-transformer": "0.5.1",
"class-validator": "0.13.2",
- "eslint": "8.16.0",
+ "eslint": "8.26.0",
"eslint-config-prettier": "8.5.0",
"eslint-plugin-import": "2.26.0",
- "eslint-plugin-prettier": "4.0.0",
+ "eslint-plugin-prettier": "4.2.1",
"graphql": "15.8.0",
"graphql-subscriptions": "2.0.0",
"husky": "8.0.1",
- "jest": "28.1.0",
- "lerna": "5.0.0",
+ "jest": "29.2.2",
+ "lerna": "6.0.1",
"lerna-changelog": "2.2.0",
- "lint-staged": "13.0.0",
- "prettier": "2.6.2",
+ "lint-staged": "13.0.3",
+ "prettier": "2.7.1",
"reflect-metadata": "0.1.13",
- "release-it": "15.0.0",
+ "release-it": "15.5.0",
"rimraf": "3.0.2",
- "rxjs": "7.5.5",
- "supertest": "6.2.3",
- "ts-jest": "28.0.3",
- "ts-node": "10.8.0",
- "typescript": "4.7.2"
+ "rxjs": "7.5.7",
+ "supertest": "6.3.1",
+ "ts-jest": "29.0.3",
+ "ts-node": "10.9.1",
+ "typescript": "4.8.4"
},
"changelog": {
"labels": {
diff --git a/packages/apollo/package.json b/packages/apollo/package.json
index 8271d7b57..0f59ed00f 100644
--- a/packages/apollo/package.json
+++ b/packages/apollo/package.json
@@ -1,6 +1,6 @@
{
"name": "@nestjs/apollo",
- "version": "10.0.14",
+ "version": "10.1.4",
"description": "Nest - modern, fast, powerful node.js web framework (@apollo)",
"author": "Kamil Mysliwiec",
"license": "MIT",
@@ -15,26 +15,30 @@
"url": "git+https://github.com/nestjs/graphql.git"
},
"scripts": {
- "test:e2e": "jest --config ./tests/jest-e2e.ts --runInBand",
+ "test:e2e": "jest --config ./tests/jest-e2e.ts --runInBand && yarn test:e2e:fed2",
+ "test:e2e:fed2": "jest --config ./tests/jest-e2e-fed2.ts --runInBand",
"test:e2e:dev": "jest --config ./tests/jest-e2e.ts --runInBand --watch"
},
"bugs": {
"url": "https://github.com/nestjs/graphql/issues"
},
"devDependencies": {
- "@apollo/gateway": "0.51.0",
- "@nestjs/common": "8.4.6",
- "@nestjs/core": "8.4.6",
- "@nestjs/platform-express": "8.4.6",
- "@nestjs/platform-fastify": "8.4.6",
- "@nestjs/testing": "8.4.6",
+ "@apollo/gateway": "0.52.1",
+ "@apollo/gateway-v2": "npm:@apollo/gateway@2.1.4",
+ "@apollo/subgraph-v2": "npm:@apollo/subgraph@2.1.4",
+ "@nestjs/common": "8.4.7",
+ "@nestjs/core": "8.4.7",
+ "@nestjs/platform-express": "8.4.7",
+ "@nestjs/platform-fastify": "8.4.7",
+ "@nestjs/testing": "8.4.7",
"apollo-cache-inmemory": "1.6.6",
"apollo-client": "2.6.10",
"apollo-link-ws": "1.0.20",
- "apollo-server-core": "3.8.1",
- "apollo-server-express": "3.8.1",
- "apollo-server-fastify": "3.8.1",
- "apollo-server-plugin-response-cache": "3.6.0"
+ "apollo-server-core": "3.10.3",
+ "apollo-server-express": "3.10.3",
+ "apollo-server-fastify": "3.10.3",
+ "apollo-server-plugin-response-cache": "3.7.1",
+ "graphql-16": "npm:graphql@16.6.0"
},
"dependencies": {
"iterall": "1.3.0",
@@ -43,12 +47,13 @@
},
"peerDependencies": {
"@apollo/gateway": "^0.44.1 || ^0.46.0 || ^0.48.0 || ^0.49.0 || ^0.50.0 || ^2.0.0",
- "@nestjs/common": "^8.2.3",
- "@nestjs/core": "^8.2.3",
+ "@nestjs/common": "^8.2.3 || ^9.0.0",
+ "@nestjs/core": "^8.2.3 || ^9.0.0",
"@nestjs/graphql": "^10.0.0",
"apollo-server-core": "^3.5.0",
"apollo-server-express": "^3.5.0",
- "apollo-server-fastify": "^3.5.0"
+ "apollo-server-fastify": "^3.5.0",
+ "graphql": "^15.8.0 || ^16.0.0"
},
"peerDependenciesMeta": {
"@apollo/gateway": {
diff --git a/packages/apollo/tests/code-first-graphql-federation2/gateway/gateway.module.ts b/packages/apollo/tests/code-first-graphql-federation2/gateway/gateway.module.ts
new file mode 100644
index 000000000..f63bff186
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/gateway/gateway.module.ts
@@ -0,0 +1,22 @@
+import { IntrospectAndCompose } from '@apollo/gateway-v2';
+import { Module } from '@nestjs/common';
+import { GraphQLModule } from '@nestjs/graphql';
+import { ApolloGatewayDriver, ApolloGatewayDriverConfig } from '../../../lib';
+
+@Module({
+ imports: [
+ GraphQLModule.forRoot({
+ driver: ApolloGatewayDriver,
+ gateway: {
+ debug: false,
+ supergraphSdl: new IntrospectAndCompose({
+ subgraphs: [
+ { name: 'users', url: 'http://localhost:3001/graphql' },
+ { name: 'posts', url: 'http://localhost:3002/graphql' },
+ ],
+ }),
+ },
+ }),
+ ],
+})
+export class AppModule {}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/federation-posts.module.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/federation-posts.module.ts
new file mode 100644
index 000000000..258715911
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/federation-posts.module.ts
@@ -0,0 +1,24 @@
+import { Module } from '@nestjs/common';
+import { GraphQLModule } from '@nestjs/graphql';
+import { ApolloServerPluginInlineTraceDisabled } from 'apollo-server-core';
+import { ApolloDriverConfig } from '../../../lib';
+import { ApolloFederationDriver } from '../../../lib/drivers';
+import { PostsModule } from './posts/posts.module';
+import { User } from './posts/user.entity';
+
+@Module({
+ imports: [
+ GraphQLModule.forRoot({
+ driver: ApolloFederationDriver,
+ autoSchemaFile: {
+ federation: 2,
+ },
+ buildSchemaOptions: {
+ orphanedTypes: [User],
+ },
+ plugins: [ApolloServerPluginInlineTraceDisabled()],
+ }),
+ PostsModule,
+ ],
+})
+export class AppModule {}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/post-type.enum.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/post-type.enum.ts
new file mode 100644
index 000000000..4dada0208
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/post-type.enum.ts
@@ -0,0 +1,10 @@
+import { registerEnumType } from '@nestjs/graphql';
+
+export enum PostType {
+ IMAGE = 'IMAGE',
+ TEXT = 'TEXT',
+}
+
+registerEnumType(PostType, {
+ name: 'PostType',
+});
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.entity.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.entity.ts
new file mode 100644
index 000000000..92eca5657
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.entity.ts
@@ -0,0 +1,23 @@
+import { Directive, Field, ID, ObjectType } from '@nestjs/graphql';
+import { PostType } from './post-type.enum';
+
+@ObjectType()
+@Directive('@key(fields: "id")')
+export class Post {
+ @Field(() => ID)
+ id: string;
+
+ @Field()
+ title: string;
+
+ @Field()
+ body: string;
+
+ userId: string;
+
+ @Field({ nullable: true })
+ publishDate: Date;
+
+ @Field(() => PostType, { nullable: true })
+ type: PostType;
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.module.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.module.ts
new file mode 100644
index 000000000..9fa531c4b
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.module.ts
@@ -0,0 +1,9 @@
+import { Module } from '@nestjs/common';
+import { PostsResolvers } from './posts.resolvers';
+import { UsersResolvers } from './users.resolvers';
+import { PostsService } from './posts.service';
+
+@Module({
+ providers: [PostsResolvers, PostsService, UsersResolvers],
+})
+export class PostsModule {}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.resolvers.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.resolvers.ts
new file mode 100644
index 000000000..e3e870487
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.resolvers.ts
@@ -0,0 +1,42 @@
+import {
+ Args,
+ ID,
+ Mutation,
+ Parent,
+ Query,
+ ResolveField,
+ Resolver,
+} from '@nestjs/graphql';
+import { PostType } from './post-type.enum';
+import { Post } from './posts.entity';
+import { PostsService } from './posts.service';
+import { User } from './user.entity';
+
+@Resolver(Post)
+export class PostsResolvers {
+ constructor(private readonly postsService: PostsService) {}
+
+ @Query(() => [Post])
+ getPosts(
+ @Args('type', { nullable: true, type: () => PostType }) type: PostType,
+ ) {
+ if (type) {
+ return this.postsService.findByType(type);
+ } else {
+ return this.postsService.findAll();
+ }
+ }
+
+ @Mutation(() => Post)
+ publishPost(
+ @Args('id', { type: () => ID }) id,
+ @Args('publishDate') publishDate: Date,
+ ) {
+ return this.postsService.publish(id, publishDate);
+ }
+
+ @ResolveField('user', () => User, { nullable: true })
+ getUser(@Parent() post: Post) {
+ return { __typename: 'User', id: post.userId };
+ }
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.service.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.service.ts
new file mode 100644
index 000000000..a9e5b9df8
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/posts.service.ts
@@ -0,0 +1,39 @@
+import { Injectable } from '@nestjs/common';
+import { Post } from './posts.entity';
+import { PostType } from './post-type.enum';
+
+@Injectable()
+export class PostsService {
+ private readonly posts: Post[] = [
+ {
+ id: '1',
+ title: 'HELLO WORLD',
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
+ userId: '5',
+ publishDate: new Date(0),
+ type: PostType.TEXT,
+ },
+ ];
+
+ findAll() {
+ return Promise.resolve(this.posts);
+ }
+
+ findById(id: string) {
+ return Promise.resolve(this.posts.find((p) => p.id === id));
+ }
+
+ findByUserId(id: string) {
+ return Promise.resolve(this.posts.filter((p) => p.userId === id));
+ }
+
+ findByType(type: PostType) {
+ return Promise.resolve(this.posts.filter((p) => p.type === type));
+ }
+
+ async publish(id: string, publishDate: Date) {
+ const post = await this.findById(id);
+ post.publishDate = publishDate;
+ return post;
+ }
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/user.entity.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/user.entity.ts
new file mode 100644
index 000000000..32f8dc0e0
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/user.entity.ts
@@ -0,0 +1,8 @@
+import { Directive, Field, ID, ObjectType } from '@nestjs/graphql';
+
+@ObjectType()
+@Directive('@key(fields: "id")')
+export class User {
+ @Field(() => ID)
+ id: string;
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/users.resolvers.ts b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/users.resolvers.ts
new file mode 100644
index 000000000..038eea3ea
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/posts-service/posts/users.resolvers.ts
@@ -0,0 +1,14 @@
+import { ResolveField, Resolver } from '@nestjs/graphql';
+import { Post } from './posts.entity';
+import { PostsService } from './posts.service';
+import { User } from './user.entity';
+
+@Resolver(User)
+export class UsersResolvers {
+ constructor(private readonly postsService: PostsService) {}
+
+ @ResolveField('posts', () => [Post])
+ getPosts(reference: any) {
+ return this.postsService.findByUserId(reference.id);
+ }
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/users-service/federation-users.module.ts b/packages/apollo/tests/code-first-graphql-federation2/users-service/federation-users.module.ts
new file mode 100644
index 000000000..52e8c9b56
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/users-service/federation-users.module.ts
@@ -0,0 +1,20 @@
+import { Module } from '@nestjs/common';
+import { GraphQLModule } from '@nestjs/graphql';
+import { ApolloServerPluginInlineTraceDisabled } from 'apollo-server-core';
+import { ApolloDriverConfig } from '../../../lib';
+import { ApolloFederationDriver } from '../../../lib/drivers';
+import { UsersModule } from './users/users.module';
+
+@Module({
+ imports: [
+ GraphQLModule.forRoot({
+ driver: ApolloFederationDriver,
+ autoSchemaFile: {
+ federation: 2,
+ },
+ plugins: [ApolloServerPluginInlineTraceDisabled()],
+ }),
+ UsersModule,
+ ],
+})
+export class AppModule {}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.entity.ts b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.entity.ts
new file mode 100644
index 000000000..da6e24180
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.entity.ts
@@ -0,0 +1,11 @@
+import { Directive, Field, ID, ObjectType } from '@nestjs/graphql';
+
+@ObjectType()
+@Directive('@key(fields: "id")')
+export class User {
+ @Field(() => ID)
+ id: string;
+
+ @Field()
+ name: string;
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.module.ts b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.module.ts
new file mode 100644
index 000000000..d71042e83
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.module.ts
@@ -0,0 +1,8 @@
+import { Module } from '@nestjs/common';
+import { UsersResolvers } from './users.resolvers';
+import { UsersService } from './users.service';
+
+@Module({
+ providers: [UsersResolvers, UsersService],
+})
+export class UsersModule {}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.resolvers.ts b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.resolvers.ts
new file mode 100644
index 000000000..284c0ec5a
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.resolvers.ts
@@ -0,0 +1,18 @@
+import { Args, ID, Query, Resolver, ResolveReference } from '@nestjs/graphql';
+import { User } from './users.entity';
+import { UsersService } from './users.service';
+
+@Resolver(User)
+export class UsersResolvers {
+ constructor(private readonly usersService: UsersService) {}
+
+ @Query(() => User, { nullable: true })
+ getUser(@Args('id', { type: () => ID }) id: string) {
+ return this.usersService.findById(id);
+ }
+
+ @ResolveReference()
+ resolveReference(reference: { __typename: string; id: string }) {
+ return this.usersService.findById(reference.id);
+ }
+}
diff --git a/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.service.ts b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.service.ts
new file mode 100644
index 000000000..f5029f9b8
--- /dev/null
+++ b/packages/apollo/tests/code-first-graphql-federation2/users-service/users/users.service.ts
@@ -0,0 +1,16 @@
+import { Injectable } from '@nestjs/common';
+import { User } from './users.entity';
+
+@Injectable()
+export class UsersService {
+ private readonly users: User[] = [
+ {
+ id: '5',
+ name: 'GraphQL',
+ },
+ ];
+
+ findById(id: string) {
+ return Promise.resolve(this.users.find((p) => p.id === id));
+ }
+}
diff --git a/packages/apollo/tests/code-first/other/sample-scalar.ts b/packages/apollo/tests/code-first/other/sample-scalar.ts
new file mode 100644
index 000000000..efe00af20
--- /dev/null
+++ b/packages/apollo/tests/code-first/other/sample-scalar.ts
@@ -0,0 +1,30 @@
+import { CustomScalar, Scalar } from '@nestjs/graphql';
+import { Kind } from 'graphql';
+
+@Scalar('SampleScalar')
+export class SampleScalar implements CustomScalar {
+ description = 'A sample scalar';
+
+ parseValue(value: unknown): string {
+ if (typeof value !== 'string') {
+ throw new Error(`Expected a string, but got ${value}.`);
+ }
+ return value;
+ }
+
+ serialize(obj: unknown): string {
+ if (typeof obj !== 'string') {
+ throw new Error(`Expected a string, but got ${obj}.`);
+ }
+ return obj;
+ }
+
+ parseLiteral(ast: any): string {
+ if (ast.kind === Kind.STRING) {
+ return ast.value;
+ }
+ throw new Error(
+ `Expected value of kind 'STRING', but got kind '${ast.kind}'.`,
+ );
+ }
+}
diff --git a/packages/apollo/tests/code-first/recipes/ingredients.resolver.ts b/packages/apollo/tests/code-first/recipes/ingredients.resolver.ts
new file mode 100644
index 000000000..1c1890c4b
--- /dev/null
+++ b/packages/apollo/tests/code-first/recipes/ingredients.resolver.ts
@@ -0,0 +1,20 @@
+import { ID, ResolveField, Resolver, Parent } from '@nestjs/graphql';
+import { Ingredient } from './models/ingredient';
+
+@Resolver((of) => Ingredient)
+export class IngredientsResolver {
+ @ResolveField(() => ID)
+ id(@Parent() { id }: Ingredient): string {
+ return id;
+ }
+
+ @ResolveField()
+ name(@Parent() { name }: Ingredient): string {
+ return name;
+ }
+
+ @ResolveField()
+ baseName(@Parent() { name }: Ingredient): string {
+ return name;
+ }
+}
diff --git a/packages/apollo/tests/code-first/recipes/models/ingredient.ts b/packages/apollo/tests/code-first/recipes/models/ingredient.ts
index 41945c4fd..fa9ff9bdb 100644
--- a/packages/apollo/tests/code-first/recipes/models/ingredient.ts
+++ b/packages/apollo/tests/code-first/recipes/models/ingredient.ts
@@ -1,9 +1,28 @@
import { Field, ID, ObjectType } from '@nestjs/graphql';
-@ObjectType()
-export class Ingredient {
- @Field((type) => ID)
+
+class NodeIngredient {
+ // This does not apply since the class is not decorated with the @ObjectType decorator
+ @Field((type) => ID, {
+ defaultValue: 'Not applied',
+ description: 'Not applied',
+ deprecationReason: 'Not applied',
+ })
id: string;
+}
+
+@ObjectType({ isAbstract: true })
+class BaseIngredient extends NodeIngredient {
+ @Field({
+ defaultValue: 'default',
+ deprecationReason: 'is deprecated',
+ description: 'ingredient base name',
+ nullable: true,
+ })
+ baseName: string;
+}
+@ObjectType()
+export class Ingredient extends BaseIngredient {
@Field({
defaultValue: 'default',
deprecationReason: 'is deprecated',
@@ -13,6 +32,7 @@ export class Ingredient {
name: string;
constructor(ingredient: Partial) {
+ super();
Object.assign(this, ingredient);
}
}
diff --git a/packages/apollo/tests/code-first/recipes/recipes.module.ts b/packages/apollo/tests/code-first/recipes/recipes.module.ts
index 324a9222c..cb236e149 100644
--- a/packages/apollo/tests/code-first/recipes/recipes.module.ts
+++ b/packages/apollo/tests/code-first/recipes/recipes.module.ts
@@ -2,12 +2,14 @@ import { Module } from '@nestjs/common';
import { APP_FILTER } from '@nestjs/core';
import { UnauthorizedFilter } from '../common/filters/unauthorized.filter';
import { DateScalar } from '../common/scalars/date.scalar';
+import { IngredientsResolver } from './ingredients.resolver';
import { IRecipesResolver } from './irecipes.resolver';
import { RecipesResolver } from './recipes.resolver';
import { RecipesService } from './recipes.service';
@Module({
providers: [
+ IngredientsResolver,
RecipesResolver,
IRecipesResolver,
RecipesService,
diff --git a/packages/apollo/tests/e2e/code-first-graphql-federation2.fed2-spec.ts b/packages/apollo/tests/e2e/code-first-graphql-federation2.fed2-spec.ts
new file mode 100644
index 000000000..37f578a29
--- /dev/null
+++ b/packages/apollo/tests/e2e/code-first-graphql-federation2.fed2-spec.ts
@@ -0,0 +1,184 @@
+import { INestApplication } from '@nestjs/common';
+import { Test } from '@nestjs/testing';
+import * as request from 'supertest';
+import { AppModule as PostsModule } from '../code-first-graphql-federation2/posts-service/federation-posts.module';
+import { AppModule as UsersModule } from '../code-first-graphql-federation2/users-service/federation-users.module';
+
+describe('Code First GraphQL Federation 2', () => {
+ let app: INestApplication;
+
+ describe('UsersService', () => {
+ beforeEach(async () => {
+ const module = await Test.createTestingModule({
+ imports: [UsersModule],
+ }).compile();
+
+ app = module.createNestApplication();
+ await app.init();
+ });
+
+ it(`should return query result`, () => {
+ return request(app.getHttpServer())
+ .post('/graphql')
+ .send({
+ operationName: null,
+ variables: {},
+ query: `
+ {
+ getUser(id: "5") {
+ id,
+ name,
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getUser: {
+ id: '5',
+ name: 'GraphQL',
+ },
+ },
+ });
+ });
+
+ it('should resolve references', () => {
+ return request(app.getHttpServer())
+ .post('/graphql')
+ .send({
+ variables: {
+ representations: [
+ {
+ __typename: 'User',
+ id: '5',
+ },
+ ],
+ },
+ query: `
+ query ($representations: [_Any!]!) {
+ _entities(representations: $representations) {
+ __typename
+ ... on User {
+ id
+ name
+ }
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ _entities: [
+ {
+ __typename: 'User',
+ id: '5',
+ name: 'GraphQL',
+ },
+ ],
+ },
+ });
+ });
+ });
+
+ describe('PostsService', () => {
+ beforeEach(async () => {
+ const module = await Test.createTestingModule({
+ imports: [PostsModule],
+ }).compile();
+
+ app = module.createNestApplication();
+ await app.init();
+ });
+
+ it(`should return query result`, () => {
+ return request(app.getHttpServer())
+ .post('/graphql')
+ .send({
+ operationName: null,
+ variables: {},
+ query: `
+ {
+ getPosts {
+ id,
+ title,
+ body,
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getPosts: [
+ {
+ id: '1',
+ title: 'HELLO WORLD',
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
+ },
+ ],
+ },
+ });
+ });
+
+ it('should return a stripped reference', () => {
+ return request(app.getHttpServer())
+ .post('/graphql')
+ .send({
+ operationName: null,
+ variables: {},
+ query: `
+ {
+ getPosts {
+ id,
+ title,
+ body,
+ user {
+ id
+ }
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getPosts: [
+ {
+ id: '1',
+ title: 'HELLO WORLD',
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
+ user: {
+ id: '5',
+ },
+ },
+ ],
+ },
+ });
+ });
+
+ it('should accept enum as query input', () => {
+ return request(app.getHttpServer())
+ .post('/graphql')
+ .send({
+ variables: {
+ postType: 'TEXT',
+ },
+ query: `
+ query ($postType: PostType!) {
+ getPosts(type: $postType) {
+ id
+ type
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getPosts: [
+ {
+ id: '1',
+ type: 'TEXT',
+ },
+ ],
+ },
+ });
+ });
+ });
+
+ afterEach(async () => {
+ await app.close();
+ });
+});
diff --git a/packages/apollo/tests/e2e/code-first-graphql-gateway2.fed2-spec.ts b/packages/apollo/tests/e2e/code-first-graphql-gateway2.fed2-spec.ts
new file mode 100644
index 000000000..85b73c08d
--- /dev/null
+++ b/packages/apollo/tests/e2e/code-first-graphql-gateway2.fed2-spec.ts
@@ -0,0 +1,113 @@
+import { INestApplication } from '@nestjs/common';
+import { Test } from '@nestjs/testing';
+import * as request from 'supertest';
+import { AppModule as GatewayModule } from '../code-first-graphql-federation2/gateway/gateway.module';
+import { AppModule as PostsModule } from '../code-first-graphql-federation2/posts-service/federation-posts.module';
+import { AppModule as UsersModule } from '../code-first-graphql-federation2/users-service/federation-users.module';
+
+describe('GraphQL Gateway with Federation 2', () => {
+ let postsApp: INestApplication;
+ let usersApp: INestApplication;
+ let gatewayApp: INestApplication;
+
+ beforeAll(async () => {
+ const usersModule = await Test.createTestingModule({
+ imports: [UsersModule],
+ }).compile();
+
+ usersApp = usersModule.createNestApplication();
+ await usersApp.listen(3001);
+
+ const postsModule = await Test.createTestingModule({
+ imports: [PostsModule],
+ }).compile();
+
+ postsApp = postsModule.createNestApplication();
+ await postsApp.listen(3002);
+
+ const gatewayModule = await Test.createTestingModule({
+ imports: [GatewayModule],
+ }).compile();
+
+ gatewayApp = gatewayModule.createNestApplication();
+ await gatewayApp.init();
+ });
+
+ it(`should run lookup across boundaries`, () => {
+ return request(gatewayApp.getHttpServer())
+ .post('/graphql')
+ .send({
+ operationName: null,
+ variables: {},
+ query: `
+ {
+ getPosts {
+ id,
+ title,
+ body,
+ user {
+ id,
+ name,
+ }
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getPosts: [
+ {
+ id: '1',
+ title: 'HELLO WORLD',
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
+ user: {
+ id: '5',
+ name: 'GraphQL',
+ },
+ },
+ ],
+ },
+ });
+ });
+
+ it(`should run reverse lookup across boundaries`, () => {
+ return request(gatewayApp.getHttpServer())
+ .post('/graphql')
+ .send({
+ operationName: null,
+ variables: {},
+ query: `
+ {
+ getUser(id: "5") {
+ id,
+ name,
+ posts {
+ id,
+ title,
+ body,
+ }
+ }
+ }`,
+ })
+ .expect(200, {
+ data: {
+ getUser: {
+ id: '5',
+ name: 'GraphQL',
+ posts: [
+ {
+ id: '1',
+ title: 'HELLO WORLD',
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
+ },
+ ],
+ },
+ },
+ });
+ });
+
+ afterAll(async () => {
+ await postsApp.close();
+ await usersApp.close();
+ await gatewayApp.close();
+ });
+});
diff --git a/packages/apollo/tests/e2e/code-first-schema.spec.ts b/packages/apollo/tests/e2e/code-first-schema.spec.ts
index 3b337bb57..38090ce9b 100644
--- a/packages/apollo/tests/e2e/code-first-schema.spec.ts
+++ b/packages/apollo/tests/e2e/code-first-schema.spec.ts
@@ -17,6 +17,8 @@ import { DirectionsResolver } from '../code-first/directions/directions.resolver
import { SampleOrphanedEnum } from '../code-first/enums/sample-orphaned.enum';
import { AbstractResolver } from '../code-first/other/abstract.resolver';
import { SampleOrphanedType } from '../code-first/other/sample-orphaned.type';
+import { SampleScalar } from '../code-first/other/sample-scalar';
+import { IngredientsResolver } from '../code-first/recipes/ingredients.resolver';
import { IRecipesResolver } from '../code-first/recipes/irecipes.resolver';
import { Recipe } from '../code-first/recipes/models/recipe';
import { RecipesResolver } from '../code-first/recipes/recipes.resolver';
@@ -48,11 +50,13 @@ describe('Code-first - schema factory', () => {
beforeAll(async () => {
schema = await schemaFactory.create(
[
+ IngredientsResolver,
RecipesResolver,
DirectionsResolver,
AbstractResolver,
IRecipesResolver,
],
+ [SampleScalar],
{ orphanedTypes: [SampleOrphanedType, SampleOrphanedEnum] },
);
@@ -68,6 +72,21 @@ describe('Code-first - schema factory', () => {
printedSchemaSnapshot,
);
});
+ it('should add scalar to schema', () => {
+ // makeExecutableSchema throws if a resolver is defined without being
+ // present in the schema. We should include scalars even if they're not
+ // used by any field (yet)
+ const type = introspectionSchema.types.find(
+ ({ name }) => name === 'SampleScalar',
+ );
+ expect(type).toEqual(
+ expect.objectContaining({
+ description: 'A sample scalar',
+ kind: 'SCALAR',
+ name: 'SampleScalar',
+ }),
+ );
+ });
it('should define 5 queries', async () => {
const type = getQuery(introspectionSchema);
@@ -212,6 +231,18 @@ describe('Code-first - schema factory', () => {
ofType: null,
},
},
+ {
+ args: [],
+ deprecationReason: 'is deprecated',
+ description: 'ingredient base name',
+ isDeprecated: true,
+ name: 'baseName',
+ type: {
+ kind: TypeKind.SCALAR,
+ name: 'String',
+ ofType: null,
+ },
+ },
]),
}),
);
diff --git a/packages/apollo/tests/e2e/generated-definitions.spec.ts b/packages/apollo/tests/e2e/generated-definitions.spec.ts
index f1c30bf54..ce614cc9d 100644
--- a/packages/apollo/tests/e2e/generated-definitions.spec.ts
+++ b/packages/apollo/tests/e2e/generated-definitions.spec.ts
@@ -339,4 +339,23 @@ describe('Generated Definitions', () => {
afterEach(async () => {
await app.close();
});
+
+ it('should generate for a federated graph with partial query definition', async () => {
+ const outputFile = generatedDefinitions(
+ 'federation-partial-query.test-definitions.ts',
+ );
+ const factory = new GraphQLFederationDefinitionsFactory();
+ await factory.generate({
+ typePaths: [generatedDefinitions('federation-partial-query.graphql')],
+ path: outputFile,
+ outputAs: 'interface',
+ });
+
+ expect(
+ await readFile(
+ generatedDefinitions('federation-partial-query.fixture.ts'),
+ 'utf8',
+ ),
+ ).toBe(await readFile(outputFile, 'utf8'));
+ });
});
diff --git a/packages/apollo/tests/generated-definitions/array-property.fixture.ts b/packages/apollo/tests/generated-definitions/array-property.fixture.ts
index 909289a2e..710990eae 100644
--- a/packages/apollo/tests/generated-definitions/array-property.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/array-property.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Foo {
a: string[];
b?: Nullable;
diff --git a/packages/apollo/tests/generated-definitions/custom-header.fixture.ts b/packages/apollo/tests/generated-definitions/custom-header.fixture.ts
index 395630c1e..f961bab4a 100644
--- a/packages/apollo/tests/generated-definitions/custom-header.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/custom-header.fixture.ts
@@ -9,6 +9,5 @@
/* eslint-disable */
/* Put anything here you like */
-
export type CustomDate = any;
type Nullable = T | null;
diff --git a/packages/apollo/tests/generated-definitions/enum.fixture.ts b/packages/apollo/tests/generated-definitions/enum.fixture.ts
index 1869742e5..822aef612 100644
--- a/packages/apollo/tests/generated-definitions/enum.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/enum.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export enum Foobar {
Foo = "Foo",
Bar = "Bar",
diff --git a/packages/apollo/tests/generated-definitions/federation-partial-query.fixture.ts b/packages/apollo/tests/generated-definitions/federation-partial-query.fixture.ts
new file mode 100644
index 000000000..b7b47b1e1
--- /dev/null
+++ b/packages/apollo/tests/generated-definitions/federation-partial-query.fixture.ts
@@ -0,0 +1,15 @@
+
+/*
+ * -------------------------------------------------------
+ * THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY)
+ * -------------------------------------------------------
+ */
+
+/* tslint:disable */
+/* eslint-disable */
+
+export interface IQuery {
+ foo(): Nullable | Promise>;
+}
+
+type Nullable = T | null;
diff --git a/packages/apollo/tests/generated-definitions/federation-partial-query.graphql b/packages/apollo/tests/generated-definitions/federation-partial-query.graphql
new file mode 100644
index 000000000..d6e397fea
--- /dev/null
+++ b/packages/apollo/tests/generated-definitions/federation-partial-query.graphql
@@ -0,0 +1,3 @@
+extend type Query {
+ foo: Boolean
+}
diff --git a/packages/apollo/tests/generated-definitions/federation-typedef.fixture.ts b/packages/apollo/tests/generated-definitions/federation-typedef.fixture.ts
index 0f9283141..23f37181a 100644
--- a/packages/apollo/tests/generated-definitions/federation-typedef.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/federation-typedef.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export enum Animal {
DOG = "DOG",
CAT = "CAT"
diff --git a/packages/apollo/tests/generated-definitions/federation.fixture.ts b/packages/apollo/tests/generated-definitions/federation.fixture.ts
index 84eead0e3..66cc096d2 100644
--- a/packages/apollo/tests/generated-definitions/federation.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/federation.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export enum Category {
POST = "POST"
}
diff --git a/packages/apollo/tests/generated-definitions/interface-property.fixture.ts b/packages/apollo/tests/generated-definitions/interface-property.fixture.ts
index 5409ffbe5..6b4874344 100644
--- a/packages/apollo/tests/generated-definitions/interface-property.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/interface-property.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Bar {
id: number;
}
diff --git a/packages/apollo/tests/generated-definitions/mutation.fixture.ts b/packages/apollo/tests/generated-definitions/mutation.fixture.ts
index 4fde83959..d70f6f741 100644
--- a/packages/apollo/tests/generated-definitions/mutation.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/mutation.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Cat {
id: number;
}
diff --git a/packages/apollo/tests/generated-definitions/query-skip-args.fixture.ts b/packages/apollo/tests/generated-definitions/query-skip-args.fixture.ts
index 8790d6183..0ad8b3e09 100644
--- a/packages/apollo/tests/generated-definitions/query-skip-args.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/query-skip-args.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Cat {
id: number;
}
diff --git a/packages/apollo/tests/generated-definitions/query.fixture.ts b/packages/apollo/tests/generated-definitions/query.fixture.ts
index de694988c..fab3bf5b8 100644
--- a/packages/apollo/tests/generated-definitions/query.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/query.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Cat {
id: number;
}
diff --git a/packages/apollo/tests/generated-definitions/simple-type.fixture.ts b/packages/apollo/tests/generated-definitions/simple-type.fixture.ts
index 1d1709210..72cfc81c9 100644
--- a/packages/apollo/tests/generated-definitions/simple-type.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/simple-type.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Cat {
id: number;
name: string;
diff --git a/packages/apollo/tests/generated-definitions/typename.fixture.ts b/packages/apollo/tests/generated-definitions/typename.fixture.ts
index 0d6ff8e67..b116f2368 100644
--- a/packages/apollo/tests/generated-definitions/typename.fixture.ts
+++ b/packages/apollo/tests/generated-definitions/typename.fixture.ts
@@ -7,6 +7,7 @@
/* tslint:disable */
/* eslint-disable */
+
export interface Cat {
__typename?: 'Cat';
id: number;
diff --git a/packages/apollo/tests/jest-e2e-fed2.ts b/packages/apollo/tests/jest-e2e-fed2.ts
new file mode 100644
index 000000000..01fc2aae4
--- /dev/null
+++ b/packages/apollo/tests/jest-e2e-fed2.ts
@@ -0,0 +1,34 @@
+import type { Config } from '@jest/types';
+import { pathsToModuleNameMapper } from 'ts-jest';
+import { compilerOptions } from '../tsconfig.spec.json';
+
+const moduleNameMapper = pathsToModuleNameMapper(compilerOptions.paths, {
+ prefix: '/',
+});
+
+const config: Config.InitialOptions = {
+ moduleFileExtensions: ['js', 'json', 'ts'],
+ rootDir: '../.',
+ testRegex: '.fed2-spec.ts$',
+ moduleNameMapper: {
+ ...moduleNameMapper,
+ '^@apollo/subgraph$': '/../../node_modules/@apollo/subgraph-v2',
+ '^@apollo/subgraph/(.*)$':
+ '/../../node_modules/@apollo/subgraph-v2/$1',
+ '^@apollo/gateway$': '/../../node_modules/@apollo/gateway-v2',
+ '^@apollo/gateway/(.*)$':
+ '/../../node_modules/@apollo/gateway-v2/$1',
+ '^graphql$': '/../../node_modules/graphql-16',
+ '^graphql/(.*)$': '/../../node_modules/graphql-16/$1',
+ },
+ transform: {
+ '^.+\\.(t|j)s$': [
+ 'ts-jest',
+ { tsconfig: '/tsconfig.spec.json', isolatedModules: true },
+ ],
+ },
+ coverageDirectory: '../coverage',
+ testEnvironment: 'node',
+};
+
+export default config;
diff --git a/packages/apollo/tests/jest-e2e.ts b/packages/apollo/tests/jest-e2e.ts
index c2b5bf072..e117c0c30 100644
--- a/packages/apollo/tests/jest-e2e.ts
+++ b/packages/apollo/tests/jest-e2e.ts
@@ -10,17 +10,16 @@ const config: Config.InitialOptions = {
moduleFileExtensions: ['js', 'json', 'ts'],
rootDir: '../.',
testRegex: '.spec.ts$',
+ testPathIgnorePatterns: ['.fed([1-9]).spec.ts$'],
moduleNameMapper,
transform: {
- '^.+\\.(t|j)s$': 'ts-jest',
+ '^.+\\.(t|j)s$': [
+ 'ts-jest',
+ { tsconfig: '/tsconfig.spec.json', isolatedModules: true },
+ ],
},
coverageDirectory: '../coverage',
testEnvironment: 'node',
- globals: {
- 'ts-jest': {
- tsconfig: '/tsconfig.spec.json',
- },
- },
};
export default config;
diff --git a/packages/apollo/tests/subscriptions/compat.spec.ts b/packages/apollo/tests/subscriptions/compat.spec.ts
index 22129a856..7e81612cb 100644
--- a/packages/apollo/tests/subscriptions/compat.spec.ts
+++ b/packages/apollo/tests/subscriptions/compat.spec.ts
@@ -169,7 +169,7 @@ describe('Use graphql-ws + subscriptions-transport-ws', () => {
try {
await wsClient?.dispose();
} catch {}
- await subWsClient?.close();
+ subWsClient?.close();
await app.close();
jest.clearAllMocks();
});
diff --git a/packages/apollo/tests/utils/printed-schema.snapshot.ts b/packages/apollo/tests/utils/printed-schema.snapshot.ts
index d851c5dc7..5d8f579fd 100644
--- a/packages/apollo/tests/utils/printed-schema.snapshot.ts
+++ b/packages/apollo/tests/utils/printed-schema.snapshot.ts
@@ -40,17 +40,19 @@ type SampleOrphanedType {
averageRating: Float!
}
-type Category {
- name: String!
- description: String!
- tags: [String!]!
-}
-
type Ingredient {
- id: ID!
+ """ingredient base name"""
+ baseName: String @deprecated(reason: "is deprecated")
"""ingredient name"""
name: String @deprecated(reason: "is deprecated")
+ id: ID!
+}
+
+type Category {
+ name: String!
+ description: String!
+ tags: [String!]!
}
"""orphaned enum"""
@@ -61,6 +63,9 @@ enum SampleOrphanedEnum {
White
}
+"""A sample scalar"""
+scalar SampleScalar
+
type Query {
"""get recipe by id"""
recipe(
@@ -141,6 +146,8 @@ interface IRecipe {
}
type Ingredient {
+ """ingredient base name"""
+ baseName: String @deprecated(reason: "is deprecated")
id: ID!
"""ingredient name"""
diff --git a/packages/graphql/lib/federation/graphql-federation-definitions.factory.ts b/packages/graphql/lib/federation/graphql-federation-definitions.factory.ts
index e54a25bd5..c005bcf65 100644
--- a/packages/graphql/lib/federation/graphql-federation-definitions.factory.ts
+++ b/packages/graphql/lib/federation/graphql-federation-definitions.factory.ts
@@ -3,6 +3,7 @@ import { gql } from 'graphql-tag';
import { DefinitionsGeneratorOptions } from '../graphql-ast.explorer';
import { GraphQLDefinitionsFactory } from '../graphql-definitions.factory';
import { extend } from '../utils';
+import { mergeTypeDefs } from '@graphql-tools/merge';
export class GraphQLFederationDefinitionsFactory extends GraphQLDefinitionsFactory {
protected async exploreAndEmit(
@@ -35,9 +36,20 @@ export class GraphQLFederationDefinitionsFactory extends GraphQLDefinitionsFacto
resolvers: {},
},
]);
+
+ // "buildSubgraphSchema" generates an empty Query definition if there is the `extend type Query` statement
+ // This leads to duplicated IQuery interfaces
+ // see: https://github.com//issues/2344
+ const mergedDefinition = mergeTypeDefs([printSubgraphSchema(schema)], {
+ useSchemaDefinition: false,
+ throwOnConflict: true,
+ commentDescriptions: true,
+ reverseDirectives: true,
+ });
+
const tsFile = await this.gqlAstExplorer.explore(
gql`
- ${printSubgraphSchema(schema)}
+ ${mergedDefinition}
`,
path,
outputAs,
diff --git a/packages/graphql/lib/federation/graphql-federation.factory.ts b/packages/graphql/lib/federation/graphql-federation.factory.ts
index b24d5b94b..ff4c856ee 100644
--- a/packages/graphql/lib/federation/graphql-federation.factory.ts
+++ b/packages/graphql/lib/federation/graphql-federation.factory.ts
@@ -1,4 +1,5 @@
import { mergeSchemas } from '@graphql-tools/schema';
+import { printSchemaWithDirectives } from '@graphql-tools/utils';
import { Injectable } from '@nestjs/common';
import { loadPackage } from '@nestjs/common/utils/load-package.util';
import { isString } from '@nestjs/common/utils/shared.utils';
@@ -25,10 +26,19 @@ import { gql } from 'graphql-tag';
import { forEach, isEmpty } from 'lodash';
import { GraphQLSchemaBuilder } from '../graphql-schema.builder';
import { GraphQLSchemaHost } from '../graphql-schema.host';
-import { GqlModuleOptions, BuildFederatedSchemaOptions } from '../interfaces';
+import {
+ AutoSchemaFileValue,
+ BuildFederatedSchemaOptions,
+ FederationConfig,
+ FederationVersion,
+ GqlModuleOptions,
+} from '../interfaces';
import { ResolversExplorerService, ScalarsExplorerService } from '../services';
import { extend } from '../utils';
import { transformSchema } from '../utils/transform-schema.util';
+import { TypeDefsDecoratorFactory } from './type-defs-decorator.factory';
+
+const DEFAULT_FEDERATION_VERSION: FederationVersion = 1;
@Injectable()
export class GraphQLFederationFactory {
@@ -37,6 +47,7 @@ export class GraphQLFederationFactory {
private readonly scalarsExplorerService: ScalarsExplorerService,
private readonly gqlSchemaBuilder: GraphQLSchemaBuilder,
private readonly gqlSchemaHost: GraphQLSchemaHost,
+ private readonly typeDefsDecoratorFactory: TypeDefsDecoratorFactory,
) {}
async mergeWithSchema(
@@ -93,7 +104,13 @@ export class GraphQLFederationFactory {
'ApolloFederation',
() => require('@apollo/subgraph'),
);
+ const apolloSubgraphVersion = (
+ await import('@apollo/subgraph/package.json')
+ ).version;
+ const apolloSubgraphMajorVersion = Number(
+ apolloSubgraphVersion.split('.')[0],
+ );
const printSubgraphSchema = apolloSubgraph.printSubgraphSchema;
if (!buildFederatedSchema) {
@@ -105,9 +122,24 @@ export class GraphQLFederationFactory {
options,
this.resolversExplorerService.getAllCtors(),
);
+ let typeDefs =
+ apolloSubgraphMajorVersion >= 2
+ ? printSchemaWithDirectives(autoGeneratedSchema)
+ : printSubgraphSchema(autoGeneratedSchema);
+
+ const [federationVersion, federationOptions] =
+ this.getFederationVersionAndConfig(options.autoSchemaFile);
+
+ const typeDefsDecorator = this.typeDefsDecoratorFactory.create(
+ federationVersion,
+ apolloSubgraphMajorVersion,
+ );
+ if (typeDefsDecorator) {
+ typeDefs = typeDefsDecorator.decorate(typeDefs, federationOptions);
+ }
let executableSchema: GraphQLSchema = buildFederatedSchema({
- typeDefs: gql(printSubgraphSchema(autoGeneratedSchema)),
+ typeDefs: gql(typeDefs),
resolvers: this.getResolvers(options.resolvers),
});
@@ -201,7 +233,10 @@ export class GraphQLFederationFactory {
...autoGeneratedObjectType.astNode,
};
}
- type.extensions = autoGeneratedObjectType.extensions;
+ type.extensions = {
+ ...type.extensions,
+ ...autoGeneratedObjectType.extensions,
+ };
return type;
} else if (isScalarType(type) && type.name === 'DateTime') {
const autoGeneratedScalar = autoGeneratedSchema.getType(
@@ -282,23 +317,30 @@ export class GraphQLFederationFactory {
}
async buildFederatedSchema(
- autoSchemaFile: string | boolean,
+ autoSchemaFile: AutoSchemaFileValue,
options: T,
resolvers: Function[],
) {
const scalarsMap = this.scalarsExplorerService.getScalarsMap();
try {
const buildSchemaOptions = options.buildSchemaOptions || {};
+ const directives = [...specifiedDirectives];
+ const [federationVersion] =
+ this.getFederationVersionAndConfig(autoSchemaFile);
+
+ if (federationVersion < 2) {
+ directives.push(...this.loadFederationDirectives());
+ }
+ if (buildSchemaOptions?.directives) {
+ directives.push(...buildSchemaOptions.directives);
+ }
+
return await this.gqlSchemaBuilder.generateSchema(
resolvers,
autoSchemaFile,
{
...buildSchemaOptions,
- directives: [
- ...specifiedDirectives,
- ...this.loadFederationDirectives(),
- ...((buildSchemaOptions && buildSchemaOptions.directives) || []),
- ],
+ directives,
scalarsMap,
skipCheck: true,
},
@@ -313,6 +355,21 @@ export class GraphQLFederationFactory {
}
}
+ private getFederationVersionAndConfig(
+ autoSchemaFile: AutoSchemaFileValue,
+ ): [FederationVersion, FederationConfig?] {
+ if (!autoSchemaFile || typeof autoSchemaFile !== 'object') {
+ return [DEFAULT_FEDERATION_VERSION];
+ }
+ if (typeof autoSchemaFile.federation !== 'object') {
+ return [autoSchemaFile.federation ?? DEFAULT_FEDERATION_VERSION];
+ }
+ return [
+ autoSchemaFile.federation?.version ?? DEFAULT_FEDERATION_VERSION,
+ autoSchemaFile.federation,
+ ];
+ }
+
private loadFederationDirectives() {
const { federationDirectives, directivesWithNoDefinitionNeeded } =
loadPackage('@apollo/subgraph/dist/directives', 'SchemaBuilder', () =>
diff --git a/packages/graphql/lib/federation/type-defs-decorator.factory.ts b/packages/graphql/lib/federation/type-defs-decorator.factory.ts
new file mode 100644
index 000000000..3bbefc109
--- /dev/null
+++ b/packages/graphql/lib/federation/type-defs-decorator.factory.ts
@@ -0,0 +1,31 @@
+import { Injectable, Logger } from '@nestjs/common';
+import { FederationConfig, FederationVersion } from '../interfaces';
+import { TypeDefsFederation2Decorator } from './type-defs-federation2.decorator';
+
+export interface TypeDefsDecorator {
+ decorate(typeDefs: string, options: T): string;
+}
+
+@Injectable()
+export class TypeDefsDecoratorFactory {
+ private readonly logger = new Logger(TypeDefsDecoratorFactory.name);
+
+ create(
+ federationVersion: FederationVersion,
+ apolloSubgraphVersion: number,
+ ): TypeDefsDecorator | undefined {
+ switch (federationVersion) {
+ case 2: {
+ if (apolloSubgraphVersion === 1) {
+ this.logger.error(
+ 'To use Apollo Federation v2, you have to install the @apollo/subgraph@^2.0.0.',
+ );
+ return;
+ }
+ return new TypeDefsFederation2Decorator();
+ }
+ default:
+ return;
+ }
+ }
+}
diff --git a/packages/graphql/lib/federation/type-defs-federation2.decorator.ts b/packages/graphql/lib/federation/type-defs-federation2.decorator.ts
new file mode 100644
index 000000000..7d5288c83
--- /dev/null
+++ b/packages/graphql/lib/federation/type-defs-federation2.decorator.ts
@@ -0,0 +1,35 @@
+import { isString } from '@nestjs/common/utils/shared.utils';
+import { Federation2Config } from '../interfaces';
+import { stringifyWithoutQuotes } from '../utils';
+
+export class TypeDefsFederation2Decorator {
+ decorate(typeDefs: string, config: Federation2Config = { version: 2 }) {
+ const {
+ directives = [
+ '@key',
+ '@shareable',
+ '@external',
+ '@override',
+ '@requires',
+ ],
+ importUrl = 'https://specs.apollo.dev/federation/v2.0',
+ } = config;
+ const mappedDirectives = directives
+ .map((directive) => {
+ if (!isString(directive)) {
+ return stringifyWithoutQuotes(directive);
+ }
+ let finalDirective = directive;
+ if (!directive.startsWith('@')) {
+ finalDirective = `@${directive}`;
+ }
+ return `"${finalDirective}"`;
+ })
+ .join(', ');
+
+ return `
+ extend schema @link(url: "${importUrl}", import: [${mappedDirectives}])
+ ${typeDefs}
+ `;
+ }
+}
diff --git a/packages/graphql/lib/graphql-ast.explorer.ts b/packages/graphql/lib/graphql-ast.explorer.ts
index d9b67d031..be3ea139d 100644
--- a/packages/graphql/lib/graphql-ast.explorer.ts
+++ b/packages/graphql/lib/graphql-ast.explorer.ts
@@ -9,7 +9,6 @@ import {
InputValueDefinitionNode,
InterfaceTypeDefinitionNode,
InterfaceTypeExtensionNode,
- NamedTypeNode,
ObjectTypeDefinitionNode,
ObjectTypeExtensionNode,
OperationTypeDefinitionNode,
@@ -22,13 +21,18 @@ import {
UnionTypeExtensionNode,
} from 'graphql';
import { get, map, sortBy, upperFirst } from 'lodash';
-import {
- ClassDeclaration,
+import type {
ClassDeclarationStructure,
- InterfaceDeclaration,
+ EnumDeclarationStructure,
InterfaceDeclarationStructure,
+ MethodDeclarationStructure,
+ MethodSignatureStructure,
+ OptionalKind,
ParameterDeclarationStructure,
+ PropertyDeclarationStructure,
+ PropertySignatureStructure,
SourceFile,
+ TypeAliasDeclarationStructure,
} from 'ts-morph';
import { DEFINITIONS_FILE_HEADER } from './graphql.constants';
@@ -110,20 +114,28 @@ export class GraphQLAstExplorer {
let { definitions } = documentNode;
definitions = sortBy(definitions, ['kind', 'name']);
- definitions.forEach((item) =>
- this.lookupDefinition(
- item as Readonly,
- tsFile,
- mode,
- options,
- ),
- );
+ const fileStructure = tsFile.getStructure();
const header = options.additionalHeader
- ? `${DEFINITIONS_FILE_HEADER}\n${options.additionalHeader}\n\n`
+ ? `${DEFINITIONS_FILE_HEADER}\n\n${options.additionalHeader}`
: DEFINITIONS_FILE_HEADER;
- tsFile.insertText(0, header);
- tsFile.addTypeAlias({
+
+ fileStructure.statements = [header];
+
+ fileStructure.statements.push(
+ ...definitions
+ .map((item) =>
+ this.toDefinitionStructures(
+ item as Readonly,
+ mode,
+ options,
+ ),
+ )
+ .filter(Boolean),
+ );
+
+ fileStructure.statements.push({
+ kind: tsMorphLib.StructureKind.TypeAlias,
name: 'Nullable',
isExported: false,
type: 'T | null',
@@ -134,76 +146,70 @@ export class GraphQLAstExplorer {
],
});
+ tsFile.set(fileStructure);
+
return tsFile;
}
- lookupDefinition(
+ toDefinitionStructures(
item: Readonly,
- tsFile: SourceFile,
mode: 'class' | 'interface',
options: DefinitionsGeneratorOptions,
) {
switch (item.kind) {
case 'SchemaDefinition':
- return this.lookupRootSchemaDefinition(
- item.operationTypes,
- tsFile,
- mode,
- );
+ return this.toRootSchemaDefinitionStructure(item.operationTypes, mode);
case 'ObjectTypeDefinition':
case 'ObjectTypeExtension':
case 'InputObjectTypeDefinition':
case 'InputObjectTypeExtension':
- return this.addObjectTypeDefinition(item, tsFile, mode, options);
+ return this.toObjectTypeDefinitionStructure(item, mode, options);
case 'InterfaceTypeDefinition':
case 'InterfaceTypeExtension':
- return this.addObjectTypeDefinition(item, tsFile, 'interface', options);
+ return this.toObjectTypeDefinitionStructure(item, 'interface', options);
case 'ScalarTypeDefinition':
case 'ScalarTypeExtension':
- return this.addScalarDefinition(item, tsFile, options);
+ return this.toScalarDefinitionStructure(item, options);
case 'EnumTypeDefinition':
case 'EnumTypeExtension':
- return this.addEnumDefinition(item, tsFile, options);
+ return this.toEnumDefinitionStructure(item, options);
case 'UnionTypeDefinition':
case 'UnionTypeExtension':
- return this.addUnionDefinition(item, tsFile);
+ return this.toUnionDefinitionStructure(item);
}
}
- lookupRootSchemaDefinition(
+ toRootSchemaDefinitionStructure(
operationTypes: ReadonlyArray,
- tsFile: SourceFile,
mode: 'class' | 'interface',
- ) {
+ ): ClassDeclarationStructure | InterfaceDeclarationStructure {
const structureKind =
mode === 'class'
? tsMorphLib.StructureKind.Class
: tsMorphLib.StructureKind.Interface;
- const rootInterface = this.addClassOrInterface(tsFile, mode, {
+
+ const properties = operationTypes
+ .filter(Boolean)
+ .map((item) => {
+ const tempOperationName = item.operation;
+ const typeName = get(item, 'type.name.value');
+ const interfaceName = typeName || tempOperationName;
+ return {
+ name: interfaceName,
+ type: this.addSymbolIfRoot(upperFirst(interfaceName)),
+ };
+ })
+ .filter(Boolean);
+
+ return {
name: 'ISchema',
isExported: true,
kind: structureKind,
- });
- operationTypes.forEach((item) => {
- if (!item) {
- return;
- }
- const tempOperationName = item.operation;
- const typeName = get(item, 'type.name.value');
- const interfaceName = typeName || tempOperationName;
- const interfaceRef = this.addClassOrInterface(tsFile, mode, {
- name: this.addSymbolIfRoot(upperFirst(interfaceName)),
- isExported: true,
- kind: structureKind,
- });
- (rootInterface as InterfaceDeclaration).addProperty({
- name: interfaceName,
- type: interfaceRef.getName(),
- });
- });
+ properties: properties,
+ };
}
- addObjectTypeDefinition(
+ toObjectTypeDefinitionStructure(
item:
| ObjectTypeDefinitionNode
| ObjectTypeExtensionNode
@@ -211,112 +217,133 @@ export class GraphQLAstExplorer {
| InputObjectTypeExtensionNode
| InterfaceTypeDefinitionNode
| InterfaceTypeExtensionNode,
- tsFile: SourceFile,
mode: 'class' | 'interface',
options: DefinitionsGeneratorOptions,
- ) {
+ ): ClassDeclarationStructure | InterfaceDeclarationStructure {
const parentName = get(item, 'name.value');
if (!parentName) {
return;
}
- let parentRef = this.getClassOrInterface(
- tsFile,
- mode,
- this.addSymbolIfRoot(parentName),
- );
- if (!parentRef) {
- const structureKind =
- mode === 'class'
- ? tsMorphLib.StructureKind.Class
- : tsMorphLib.StructureKind.Interface;
- const isRoot = this.root.indexOf(parentName) >= 0;
- parentRef = this.addClassOrInterface(tsFile, mode, {
- name: this.addSymbolIfRoot(upperFirst(parentName)),
- isExported: true,
- isAbstract: isRoot && mode === 'class',
- kind: structureKind,
- });
- }
+ const structureKind =
+ mode === 'class'
+ ? tsMorphLib.StructureKind.Class
+ : tsMorphLib.StructureKind.Interface;
+ const isRoot = this.root.indexOf(parentName) >= 0;
+ const parentStructure:
+ | ClassDeclarationStructure
+ | InterfaceDeclarationStructure = {
+ name: this.addSymbolIfRoot(upperFirst(parentName)),
+ isExported: true,
+ isAbstract: isRoot && mode === 'class',
+ kind: structureKind,
+ properties: [],
+ methods: [],
+ };
+
const interfaces = get(item, 'interfaces');
if (interfaces) {
if (mode === 'class') {
- this.addImplementsInterfaces(interfaces, parentRef as ClassDeclaration);
+ (parentStructure as ClassDeclarationStructure).implements = interfaces
+ .map((element) => get(element, 'name.value'))
+ .filter(Boolean);
} else {
- this.addExtendInterfaces(interfaces, parentRef as InterfaceDeclaration);
+ parentStructure.extends = interfaces
+ .map((element) => get(element, 'name.value'))
+ .filter(Boolean);
}
}
const isObjectType = item.kind === 'ObjectTypeDefinition';
if (isObjectType && options.emitTypenameField) {
- parentRef.addProperty({
+ parentStructure.properties.push({
name: '__typename',
- type: `'${parentRef.getName()}'`,
+ type: `'${parentStructure.name}'`,
hasQuestionToken: true,
});
}
- ((item.fields || []) as any).forEach((element) => {
- this.lookupFieldDefiniton(element, parentRef, mode, options);
- });
- }
- lookupFieldDefiniton(
- item: FieldDefinitionNode | InputValueDefinitionNode,
- parentRef: InterfaceDeclaration | ClassDeclaration,
- mode: 'class' | 'interface',
- options: DefinitionsGeneratorOptions,
- ) {
- switch (item.kind) {
- case 'FieldDefinition':
- case 'InputValueDefinition':
- return this.lookupField(item, parentRef, mode, options);
+ if (!this.isRoot(parentStructure.name) || options.skipResolverArgs) {
+ const properties: readonly (OptionalKind &
+ OptionalKind)[] = (
+ (item.fields || []) as (
+ | FieldDefinitionNode
+ | InputValueDefinitionNode
+ )[]
+ )
+ .map((element) => this.toPropertyDeclarationStructure(element, options))
+ .filter(Boolean);
+
+ parentStructure.properties.push(...properties);
+ } else {
+ const methods: readonly (OptionalKind &
+ OptionalKind)[] = (
+ (item.fields || []) as (
+ | FieldDefinitionNode
+ | InputValueDefinitionNode
+ )[]
+ )
+ .map((element) =>
+ this.toMethodDeclarationStructure(element, mode, options),
+ )
+ .filter(Boolean);
+
+ parentStructure.methods.push(...methods);
}
+ return parentStructure;
}
- lookupField(
+ toPropertyDeclarationStructure(
item: FieldDefinitionNode | InputValueDefinitionNode,
- parentRef: InterfaceDeclaration | ClassDeclaration,
- mode: 'class' | 'interface',
options: DefinitionsGeneratorOptions,
- ) {
+ ): OptionalKind &
+ OptionalKind {
const propertyName = get(item, 'name.value');
if (!propertyName) {
- return;
+ return undefined;
}
const federatedFields = ['_entities', '_service'];
if (federatedFields.includes(propertyName)) {
- return;
+ return undefined;
}
const { name: type, required } = this.getFieldTypeDefinition(
item.type,
options,
);
- if (!this.isRoot(parentRef.getName())) {
- (parentRef as InterfaceDeclaration).addProperty({
- name: propertyName,
- type,
- hasQuestionToken: !required,
- });
+
+ return {
+ name: propertyName,
+ type: this.addSymbolIfRoot(type),
+ hasQuestionToken: !required,
+ };
+ }
+
+ toMethodDeclarationStructure(
+ item: FieldDefinitionNode | InputValueDefinitionNode,
+ mode: 'class' | 'interface',
+ options: DefinitionsGeneratorOptions,
+ ): OptionalKind &
+ OptionalKind {
+ const propertyName = get(item, 'name.value');
+ if (!propertyName) {
return;
}
-
- if (options.skipResolverArgs) {
- (parentRef as ClassDeclaration).addProperty({
- name: propertyName,
- type: this.addSymbolIfRoot(type),
- hasQuestionToken: !required,
- });
- } else {
- (parentRef as ClassDeclaration).addMethod({
- isAbstract: mode === 'class',
- name: propertyName,
- returnType: `${type} | Promise<${type}>`,
- parameters: this.getFunctionParameters(
- (item as FieldDefinitionNode).arguments,
- options,
- ),
- });
+ const federatedFields = ['_entities', '_service'];
+ if (federatedFields.includes(propertyName)) {
+ return;
}
+
+ const { name: type } = this.getFieldTypeDefinition(item.type, options);
+
+ return {
+ isAbstract: mode === 'class',
+ name: propertyName,
+ returnType: `${type} | Promise<${type}>`,
+ parameters: this.getFunctionParameters(
+ (item as FieldDefinitionNode).arguments,
+ options,
+ ),
+ };
}
getFieldTypeDefinition(
@@ -402,103 +429,75 @@ export class GraphQLAstExplorer {
});
}
- addScalarDefinition(
+ toScalarDefinitionStructure(
item: ScalarTypeDefinitionNode | ScalarTypeExtensionNode,
- tsFile: SourceFile,
options: DefinitionsGeneratorOptions,
- ) {
+ ): TypeAliasDeclarationStructure {
const name = get(item, 'name.value');
if (!name || name === 'Date') {
- return;
+ return undefined;
}
const typeMapping = options.customScalarTypeMapping?.[name];
const mappedTypeName =
typeof typeMapping === 'string' ? typeMapping : typeMapping?.name;
- tsFile.addTypeAlias({
+ return {
+ kind: tsMorphLib.StructureKind.TypeAlias,
name,
type: mappedTypeName ?? options.defaultScalarType ?? 'any',
isExported: true,
- });
- }
-
- addExtendInterfaces(
- interfaces: NamedTypeNode[],
- parentRef: InterfaceDeclaration,
- ) {
- if (!interfaces) {
- return;
- }
- interfaces.forEach((element) => {
- const interfaceName = get(element, 'name.value');
- if (interfaceName) {
- parentRef.addExtends(interfaceName);
- }
- });
- }
-
- addImplementsInterfaces(
- interfaces: NamedTypeNode[],
- parentRef: ClassDeclaration,
- ) {
- if (!interfaces) {
- return;
- }
- interfaces.forEach((element) => {
- const interfaceName = get(element, 'name.value');
- if (interfaceName) {
- parentRef.addImplements(interfaceName);
- }
- });
+ };
}
- addEnumDefinition(
+ toEnumDefinitionStructure(
item: EnumTypeDefinitionNode | EnumTypeExtensionNode,
- tsFile: SourceFile,
options: DefinitionsGeneratorOptions,
- ) {
+ ): TypeAliasDeclarationStructure | EnumDeclarationStructure {
const name = get(item, 'name.value');
if (!name) {
- return;
+ return undefined;
}
if (options.enumsAsTypes) {
const values = item.values.map(
(value) => `"${get(value, 'name.value')}"`,
);
- return tsFile.addTypeAlias({
+ return {
+ kind: tsMorphLib.StructureKind.TypeAlias,
name,
type: values.join(' | '),
isExported: true,
- });
+ };
}
const members = map(item.values, (value) => ({
name: get(value, 'name.value'),
value: get(value, 'name.value'),
}));
- tsFile.addEnum({
+ return {
+ kind: tsMorphLib.StructureKind.Enum,
name,
members,
isExported: true,
- });
+ };
}
- addUnionDefinition(
+ toUnionDefinitionStructure(
item: UnionTypeDefinitionNode | UnionTypeExtensionNode,
- tsFile: SourceFile,
- ) {
+ ): TypeAliasDeclarationStructure {
const name = get(item, 'name.value');
if (!name) {
- return;
+ return undefined;
}
const types: string[] = map(item.types, (value) =>
get(value, 'name.value'),
);
- tsFile.addTypeAlias({
+
+ return {
+ kind: tsMorphLib.StructureKind.TypeAlias,
name,
type: types.join(' | '),
isExported: true,
- });
+ };
}
addSymbolIfRoot(name: string): string {
@@ -508,22 +507,4 @@ export class GraphQLAstExplorer {
isRoot(name: string): boolean {
return ['IQuery', 'IMutation', 'ISubscription'].indexOf(name) >= 0;
}
-
- addClassOrInterface(
- tsFile: SourceFile,
- mode: 'class' | 'interface',
- options: InterfaceDeclarationStructure | ClassDeclarationStructure,
- ): InterfaceDeclaration | ClassDeclaration {
- return mode === 'class'
- ? tsFile.addClass(options as ClassDeclarationStructure)
- : tsFile.addInterface(options as InterfaceDeclarationStructure);
- }
-
- getClassOrInterface(
- tsFile: SourceFile,
- mode: 'class' | 'interface',
- name: string,
- ): InterfaceDeclaration | ClassDeclaration {
- return mode === 'class' ? tsFile.getClass(name) : tsFile.getInterface(name);
- }
}
diff --git a/packages/graphql/lib/graphql-schema.builder.ts b/packages/graphql/lib/graphql-schema.builder.ts
index f1ba0d70f..557dfc136 100644
--- a/packages/graphql/lib/graphql-schema.builder.ts
+++ b/packages/graphql/lib/graphql-schema.builder.ts
@@ -3,11 +3,12 @@ import { isString } from '@nestjs/common/utils/shared.utils';
import { GraphQLSchema, lexicographicSortSchema, printSchema } from 'graphql';
import { resolve } from 'path';
import { GRAPHQL_SDL_FILE_HEADER } from './graphql.constants';
-import { GqlModuleOptions } from './interfaces';
+import { AutoSchemaFileValue, GqlModuleOptions } from './interfaces';
import { BuildSchemaOptions } from './interfaces/build-schema-options.interface';
import { GraphQLSchemaFactory } from './schema-builder/graphql-schema.factory';
import { FileSystemHelper } from './schema-builder/helpers/file-system.helper';
import { ScalarsExplorerService } from './services';
+import { getPathForAutoSchemaFile } from './utils';
@Injectable()
export class GraphQLSchemaBuilder {
@@ -18,7 +19,7 @@ export class GraphQLSchemaBuilder {
) {}
public async build(
- autoSchemaFile: string | boolean,
+ autoSchemaFile: AutoSchemaFileValue,
options: GqlModuleOptions,
resolvers: Function[],
): Promise {
@@ -45,7 +46,7 @@ export class GraphQLSchemaBuilder {
public async generateSchema(
resolvers: Function[],
- autoSchemaFile: boolean | string,
+ autoSchemaFile: AutoSchemaFileValue,
options: BuildSchemaOptions = {},
sortSchema?: boolean,
transformSchema?: (
@@ -53,11 +54,9 @@ export class GraphQLSchemaBuilder {
) => GraphQLSchema | Promise,
): Promise {
const schema = await this.gqlSchemaFactory.create(resolvers, options);
- if (typeof autoSchemaFile !== 'boolean') {
- const filename = isString(autoSchemaFile)
- ? autoSchemaFile
- : resolve(process.cwd(), 'schema.gql');
+ const filename = getPathForAutoSchemaFile(autoSchemaFile);
+ if (filename) {
const transformedSchema = transformSchema
? await transformSchema(schema)
: schema;
diff --git a/packages/graphql/lib/graphql.constants.ts b/packages/graphql/lib/graphql.constants.ts
index 450a8f245..87443cd52 100644
--- a/packages/graphql/lib/graphql.constants.ts
+++ b/packages/graphql/lib/graphql.constants.ts
@@ -26,7 +26,7 @@ export const DEFINITIONS_FILE_HEADER = `
*/
/* tslint:disable */
-/* eslint-disable */\n`;
+/* eslint-disable */`;
export const GRAPHQL_SDL_FILE_HEADER = `\
# ------------------------------------------------------
diff --git a/packages/graphql/lib/graphql.module.ts b/packages/graphql/lib/graphql.module.ts
index 60b156b02..b7705d164 100644
--- a/packages/graphql/lib/graphql.module.ts
+++ b/packages/graphql/lib/graphql.module.ts
@@ -6,10 +6,11 @@ import {
Provider,
} from '@nestjs/common/interfaces';
import { HttpAdapterHost } from '@nestjs/core';
-import { MetadataScanner } from '@nestjs/core/metadata-scanner';
import { ROUTE_MAPPED_MESSAGE } from '@nestjs/core/helpers/messages';
+import { MetadataScanner } from '@nestjs/core/metadata-scanner';
import { AbstractGraphQLDriver } from './drivers/abstract-graphql.driver';
import { GraphQLFederationFactory } from './federation/graphql-federation.factory';
+import { TypeDefsDecoratorFactory } from './federation/type-defs-decorator.factory';
import { GraphQLAstExplorer } from './graphql-ast.explorer';
import { GraphQLSchemaBuilder } from './graphql-schema.builder';
import { GraphQLSchemaHost } from './graphql-schema.host';
@@ -37,6 +38,7 @@ import { extend, generateString } from './utils';
GraphQLSchemaBuilder,
GraphQLSchemaHost,
GraphQLFederationFactory,
+ TypeDefsDecoratorFactory,
],
exports: [
GraphQLTypesLoader,
@@ -49,7 +51,9 @@ export class GraphQLModule<
TAdapter extends AbstractGraphQLDriver = AbstractGraphQLDriver,
> implements OnModuleInit, OnModuleDestroy
{
- private static readonly logger = new Logger(GraphQLModule.name, { timestamp: true });
+ private static readonly logger = new Logger(GraphQLModule.name, {
+ timestamp: true,
+ });
get graphQlAdapter(): TAdapter {
return this._graphQlAdapter as TAdapter;
@@ -160,7 +164,9 @@ export class GraphQLModule<
});
if (options.path) {
- GraphQLModule.logger.log(ROUTE_MAPPED_MESSAGE(options.path, RequestMethod.POST));
+ GraphQLModule.logger.log(
+ ROUTE_MAPPED_MESSAGE(options.path, RequestMethod.POST),
+ );
}
}
diff --git a/packages/graphql/lib/interfaces/build-schema-options.interface.ts b/packages/graphql/lib/interfaces/build-schema-options.interface.ts
index 10b1781b5..205d0d83c 100644
--- a/packages/graphql/lib/interfaces/build-schema-options.interface.ts
+++ b/packages/graphql/lib/interfaces/build-schema-options.interface.ts
@@ -46,4 +46,9 @@ export interface BuildSchemaOptions {
* Array of global field middleware functions
*/
fieldMiddleware?: FieldMiddleware[];
+
+ /**
+ * Set to true if it should throw an error when the same Query / Mutation field is defined more than once
+ */
+ noDuplicatedFields?: boolean;
}
diff --git a/packages/graphql/lib/interfaces/gql-module-options.interface.ts b/packages/graphql/lib/interfaces/gql-module-options.interface.ts
index bd81dbac7..b491fd160 100644
--- a/packages/graphql/lib/interfaces/gql-module-options.interface.ts
+++ b/packages/graphql/lib/interfaces/gql-module-options.interface.ts
@@ -5,6 +5,7 @@ import { GraphQLSchema } from 'graphql';
import { GraphQLDriver } from '.';
import { DefinitionsGeneratorOptions } from '../graphql-ast.explorer';
import { BuildSchemaOptions } from './build-schema-options.interface';
+import { AutoSchemaFileValue } from './schema-file-config.interface';
export type Enhancer = 'guards' | 'interceptors' | 'filters';
@@ -63,7 +64,7 @@ export interface GqlModuleOptions {
/**
* If enabled, GraphQL schema will be generated automatically
*/
- autoSchemaFile?: string | boolean;
+ autoSchemaFile?: AutoSchemaFileValue;
/**
* Sort the schema lexicographically
diff --git a/packages/graphql/lib/interfaces/index.ts b/packages/graphql/lib/interfaces/index.ts
index 1fcfea1bb..601594515 100644
--- a/packages/graphql/lib/interfaces/index.ts
+++ b/packages/graphql/lib/interfaces/index.ts
@@ -14,3 +14,4 @@ export * from './graphql-driver.interface';
export * from './resolve-type-fn.interface';
export * from './return-type-func.interface';
export * from './build-federated-schema-options.interface';
+export * from './schema-file-config.interface';
diff --git a/packages/graphql/lib/interfaces/schema-file-config.interface.ts b/packages/graphql/lib/interfaces/schema-file-config.interface.ts
new file mode 100644
index 000000000..ed65d53a3
--- /dev/null
+++ b/packages/graphql/lib/interfaces/schema-file-config.interface.ts
@@ -0,0 +1,37 @@
+export interface AliasDirectiveImport {
+ name: string;
+ as: string;
+}
+
+export type FederationVersion = 1 | 2;
+export type FederationConfig = Federation2Config;
+
+export interface Federation2Config {
+ version: 2;
+ /**
+ * The imported directives
+ * @default ['@key', '@shareable', '@external', '@override', '@requires']
+ */
+ directives?: (string | AliasDirectiveImport)[];
+ /**
+ * The import link
+ * @default 'https://specs.apollo.dev/federation/v2.0'
+ */
+ importUrl?: string;
+}
+
+export interface SchemaFileConfig {
+ /**
+ * Federation version and its configuration,
+ *
+ * @default 1
+ */
+ federation?: FederationVersion | FederationConfig;
+
+ /**
+ * Path to the schema file.
+ */
+ path?: string;
+}
+
+export type AutoSchemaFileValue = boolean | string | SchemaFileConfig;
diff --git a/packages/graphql/lib/plugin/utils/ast-utils.ts b/packages/graphql/lib/plugin/utils/ast-utils.ts
index b5dbc5e4c..6f7dd51f9 100644
--- a/packages/graphql/lib/plugin/utils/ast-utils.ts
+++ b/packages/graphql/lib/plugin/utils/ast-utils.ts
@@ -1,9 +1,16 @@
+import * as ts from 'typescript';
import {
CallExpression,
Decorator,
+ getJSDocDeprecatedTag,
+ getJSDocTags,
+ getTextOfJSDocComment,
Identifier,
+ JSDoc,
LeftHandSideExpression,
+ ModifiersArray,
Node,
+ NodeArray,
ObjectFlags,
ObjectType,
PropertyAccessExpression,
@@ -12,15 +19,28 @@ import {
TypeChecker,
TypeFlags,
TypeFormatFlags,
- SourceFile,
- CommentRange,
- getLeadingCommentRanges,
- getTrailingCommentRanges,
- UnionTypeNode,
TypeNode,
+ UnionTypeNode,
} from 'typescript';
import { isDynamicallyAdded } from './plugin-utils';
+const [tsVersionMajor, tsVersionMinor] = ts.versionMajorMinor
+ ?.split('.')
+ .map((x) => +x);
+export const isInUpdatedAstContext = tsVersionMinor >= 8 || tsVersionMajor > 4;
+
+export function getDecorators(node: ts.Node) {
+ return isInUpdatedAstContext
+ ? (ts.canHaveDecorators(node) && ts.getDecorators(node)) ?? []
+ : node.decorators;
+}
+
+export function getModifiers(node: ts.Node) {
+ return isInUpdatedAstContext
+ ? (ts.canHaveModifiers(node) && ts.getModifiers(node)) ?? []
+ : node.modifiers;
+}
+
export function isArray(type: Type) {
const symbol = type.getSymbol();
if (!symbol) {
@@ -144,7 +164,7 @@ export function getDecoratorName(decorator: Decorator) {
function getIdentifierFromName(expression: LeftHandSideExpression) {
const identifier = getNameFromExpression(expression);
- if (identifier && identifier.kind !== SyntaxKind.Identifier) {
+ if (expression && expression.kind !== SyntaxKind.Identifier) {
throw new Error();
}
return identifier;
@@ -157,39 +177,28 @@ function getNameFromExpression(expression: LeftHandSideExpression) {
return expression;
}
-export function getDescriptionOfNode(
- node: Node,
- sourceFile: SourceFile,
-): string {
- const sourceText = sourceFile.getFullText();
- // in case we decide to include "// comments"
- const replaceRegex =
- /^ *\** *@.*$|^ *\/\*+ *|^ *\/\/+.*|^ *\/+ *|^ *\*+ *| +$| *\**\/ *$/gim;
- //const replaceRegex = /^ *\** *@.*$|^ *\/\*+ *|^ *\/+ *|^ *\*+ *| +$| *\**\/ *$/gim;
-
- const description = [];
- const introspectCommentsAndExamples = (comments?: CommentRange[]) =>
- comments?.forEach((comment) => {
- const commentSource = sourceText.substring(comment.pos, comment.end);
- const oneComment = commentSource.replace(replaceRegex, '').trim();
- if (oneComment) {
- description.push(oneComment);
- }
- });
+export function getJSDocDescription(node: Node): string {
+ const jsDoc: JSDoc[] = (node as any).jsDoc;
- const leadingCommentRanges = getLeadingCommentRanges(
- sourceText,
- node.getFullStart(),
- );
- introspectCommentsAndExamples(leadingCommentRanges);
- if (!description.length) {
- const trailingCommentRanges = getTrailingCommentRanges(
- sourceText,
- node.getFullStart(),
- );
- introspectCommentsAndExamples(trailingCommentRanges);
+ if (!jsDoc) {
+ return undefined;
}
- return description.join('\n');
+
+ return getTextOfJSDocComment(jsDoc[0].comment);
+}
+
+export function hasJSDocTags(node: Node, tagName: string[]): boolean {
+ const tags = getJSDocTags(node);
+ return tags.some((tag) => tagName.includes(tag.tagName.text));
+ // return jsDoc;
+}
+
+export function getJsDocDeprecation(node: Node): string {
+ const deprecatedTag = getJSDocDeprecatedTag(node);
+ if (!deprecatedTag) {
+ return undefined;
+ }
+ return getTextOfJSDocComment(deprecatedTag.comment) || 'deprecated';
}
export function findNullableTypeFromUnion(
@@ -200,3 +209,280 @@ export function findNullableTypeFromUnion(
hasFlag(typeChecker.getTypeAtLocation(tNode), TypeFlags.Null),
);
}
+
+export function hasModifiers(
+ modifiers: ModifiersArray | readonly ts.Modifier[],
+ toCheck: SyntaxKind[],
+): boolean {
+ if (!modifiers) {
+ return false;
+ }
+ return modifiers.some((modifier) => toCheck.includes(modifier.kind));
+}
+
+export function hasDecorators(
+ decorators: NodeArray | readonly Decorator[],
+ toCheck: string[],
+): boolean {
+ if (!decorators) {
+ return false;
+ }
+
+ return decorators.some((decorator) => {
+ return toCheck.includes(getDecoratorName(decorator));
+ });
+}
+
+export function hasImport(sf: ts.SourceFile, what: string): boolean {
+ for (const statement of sf.statements) {
+ if (
+ ts.isImportDeclaration(statement) &&
+ ts.isNamedImports(statement.importClause.namedBindings)
+ ) {
+ const bindings = statement.importClause.namedBindings.elements;
+
+ for (const namedBinding of bindings) {
+ if (namedBinding.name.text === what) {
+ return true;
+ }
+ }
+ }
+ }
+ return false;
+}
+
+export function createImportEquals(
+ f: ts.NodeFactory,
+ identifier: ts.Identifier | string,
+ from: string,
+): ts.ImportEqualsDeclaration {
+ const [major, minor] = ts.versionMajorMinor?.split('.').map((x) => +x);
+
+ if (major >= 4 && minor >= 2) {
+ // support TS v4.2+
+ return minor >= 8
+ ? f.createImportEqualsDeclaration(
+ undefined,
+ false,
+ identifier,
+ f.createExternalModuleReference(f.createStringLiteral(from)),
+ )
+ : f.createImportEqualsDeclaration(
+ undefined,
+ undefined,
+ false,
+ identifier,
+ f.createExternalModuleReference(f.createStringLiteral(from)),
+ );
+ }
+ return (f.createImportEqualsDeclaration as any)(
+ undefined,
+ undefined,
+ identifier,
+ f.createExternalModuleReference(f.createStringLiteral(from)),
+ );
+}
+
+export function createNamedImport(
+ f: ts.NodeFactory,
+ what: string[],
+ from: string,
+) {
+ const importClause = f.createImportClause(
+ false,
+ undefined,
+ f.createNamedImports(
+ what.map((name) =>
+ f.createImportSpecifier(false, undefined, f.createIdentifier(name)),
+ ),
+ ),
+ );
+ return isInUpdatedAstContext
+ ? f.createImportDeclaration(
+ undefined,
+ importClause,
+ f.createStringLiteral(from),
+ )
+ : f.createImportDeclaration(
+ undefined,
+ undefined,
+ importClause,
+ f.createStringLiteral(from),
+ );
+}
+
+export function isCallExpressionOf(name: string, node: ts.CallExpression) {
+ return ts.isIdentifier(node.expression) && node.expression.text === name;
+}
+
+export type PrimitiveObject = {
+ [key: string]: string | boolean | ts.Node | PrimitiveObject;
+};
+
+function isNode(value: any): value is ts.Node {
+ return typeof value === 'object' && value.constructor.name === 'NodeObject';
+}
+
+export function serializePrimitiveObjectToAst(
+ f: ts.NodeFactory,
+ object: PrimitiveObject,
+): ts.ObjectLiteralExpression {
+ const properties = [];
+
+ Object.keys(object).forEach((key) => {
+ const value = object[key];
+
+ if (value === undefined) {
+ return;
+ }
+
+ let initializer: ts.Expression;
+ if (isNode(value)) {
+ initializer = value as ts.Expression;
+ } else if (typeof value === 'string') {
+ initializer = f.createStringLiteral(value);
+ } else if (typeof value === 'boolean') {
+ initializer = value ? f.createTrue() : f.createFalse();
+ } else if (typeof value === 'object') {
+ initializer = serializePrimitiveObjectToAst(f, value);
+ }
+
+ properties.push(f.createPropertyAssignment(key, initializer));
+ });
+
+ return f.createObjectLiteralExpression(properties);
+}
+
+export function safelyMergeObjects(
+ f: ts.NodeFactory,
+ a: ts.Expression,
+ b: ts.Expression,
+) {
+ // if both of objects are ObjectLiterals, so merge property by property in compile time
+ // if one or both of expressions not an object literal, produce rest spread and merge in runtime
+ if (ts.isObjectLiteralExpression(a) && ts.isObjectLiteralExpression(b)) {
+ const aMap = a.properties.reduce((acc, prop) => {
+ acc[(prop.name as ts.Identifier).text] = prop;
+ return acc;
+ }, {} as { [propName: string]: ts.ObjectLiteralElementLike });
+
+ b.properties.forEach((prop) => {
+ aMap[(prop.name as ts.Identifier).text] = prop;
+ }, {});
+
+ return f.createObjectLiteralExpression(Object.values(aMap));
+ } else {
+ return f.createObjectLiteralExpression([
+ f.createSpreadAssignment(a),
+ f.createSpreadAssignment(b),
+ ]);
+ }
+}
+
+export function updateDecoratorArguments<
+ T extends
+ | ts.ClassDeclaration
+ | ts.PropertyDeclaration
+ | ts.GetAccessorDeclaration,
+>(
+ f: ts.NodeFactory,
+ node: T,
+ decoratorName: string,
+ replaceFn: (
+ decoratorArguments: ts.NodeArray,
+ ) => ts.Expression[],
+): T {
+ let updated = false;
+
+ const nodeOriginalDecorators = getDecorators(node);
+ const decorators = nodeOriginalDecorators.map((decorator) => {
+ if (getDecoratorName(decorator) !== decoratorName) {
+ return decorator;
+ }
+
+ const decoratorExpression = decorator.expression as ts.CallExpression;
+ updated = true;
+ return f.updateDecorator(
+ decorator,
+ f.updateCallExpression(
+ decoratorExpression,
+ decoratorExpression.expression,
+ decoratorExpression.typeArguments,
+ replaceFn(decoratorExpression.arguments),
+ ),
+ );
+ });
+
+ if (!updated) {
+ return node;
+ }
+
+ if (ts.isClassDeclaration(node)) {
+ return (
+ isInUpdatedAstContext
+ ? f.updateClassDeclaration(
+ node,
+ [...decorators, ...getModifiers(node)],
+ node.name,
+ node.typeParameters,
+ node.heritageClauses,
+ node.members,
+ )
+ : (f.updateClassDeclaration as any)(
+ node,
+ decorators,
+ node.modifiers,
+ node.name,
+ node.typeParameters,
+ node.heritageClauses,
+ node.members,
+ )
+ ) as T;
+ }
+
+ if (ts.isPropertyDeclaration(node)) {
+ return (
+ isInUpdatedAstContext
+ ? f.updatePropertyDeclaration(
+ node,
+ [...decorators, ...getModifiers(node)],
+ node.name,
+ node.questionToken,
+ node.type,
+ node.initializer,
+ )
+ : (f.updatePropertyDeclaration as any)(
+ node,
+ decorators,
+ node.modifiers,
+ node.name,
+ node.questionToken,
+ node.type,
+ node.initializer,
+ )
+ ) as T;
+ }
+
+ if (ts.isGetAccessorDeclaration(node)) {
+ return (
+ isInUpdatedAstContext
+ ? f.updateGetAccessorDeclaration(
+ node,
+ [...decorators, ...getModifiers(node)],
+ node.name,
+ node.parameters,
+ node.type,
+ node.body,
+ )
+ : (f.updateGetAccessorDeclaration as any)(
+ node,
+ decorators,
+ node.modifiers,
+ node.name,
+ node.parameters,
+ node.type,
+ node.body,
+ )
+ ) as T;
+ }
+}
diff --git a/packages/graphql/lib/plugin/utils/plugin-utils.ts b/packages/graphql/lib/plugin/utils/plugin-utils.ts
index 40cf919f2..b90c42dbf 100644
--- a/packages/graphql/lib/plugin/utils/plugin-utils.ts
+++ b/packages/graphql/lib/plugin/utils/plugin-utils.ts
@@ -2,7 +2,6 @@ import { head } from 'lodash';
import { posix } from 'path';
import * as ts from 'typescript';
import {
- getDecoratorName,
getText,
getTypeArguments,
isArray,
@@ -13,15 +12,6 @@ import {
isString,
} from './ast-utils';
-export function getDecoratorOrUndefinedByNames(
- names: string[],
- decorators: ts.NodeArray,
-): ts.Decorator | undefined {
- return (decorators || ts.createNodeArray()).find((item) =>
- names.includes(getDecoratorName(item)),
- );
-}
-
export function getTypeReferenceAsString(
type: ts.Type,
typeChecker: ts.TypeChecker,
@@ -107,22 +97,13 @@ export function isPromiseOrObservable(type: string) {
return type.includes('Promise') || type.includes('Observable');
}
-export function hasPropertyKey(
- key: string,
- properties: ts.NodeArray,
-): boolean {
- return properties
- .filter((item) => !isDynamicallyAdded(item))
- .some((item) => item.name.getText() === key);
-}
-
export function replaceImportPath(typeReference: string, fileName: string) {
if (!typeReference.includes('import')) {
- return typeReference;
+ return { typeReference, importPath: null };
}
- let importPath = /\(\"([^)]).+(\")/.exec(typeReference)[0];
+ let importPath = /\("([^)]).+(")/.exec(typeReference)[0];
if (!importPath) {
- return undefined;
+ return { typeReference: undefined, importPath: null };
}
importPath = convertPath(importPath);
importPath = importPath.slice(2, importPath.length - 1);
@@ -153,7 +134,9 @@ export function replaceImportPath(typeReference: string, fileName: string) {
}
typeReference = typeReference.replace(importPath, relativePath);
- return typeReference.replace('import', 'require');
+ typeReference = typeReference.replace('import', 'require');
+
+ return { typeReference, importPath: relativePath };
}
export function isDynamicallyAdded(identifier: ts.Node) {
@@ -234,23 +217,6 @@ export function isAutoGeneratedTypeUnion(type: ts.Type): boolean {
return false;
}
-export function extractTypeArgumentIfArray(type: ts.Type) {
- if (isArray(type)) {
- type = getTypeArguments(type)[0];
- if (!type) {
- return undefined;
- }
- return {
- type,
- isArray: true,
- };
- }
- return {
- type,
- isArray: false,
- };
-}
-
/**
* when "strict" mode enabled, TypeScript transform optional boolean properties to "boolean | undefined"
* @param text
diff --git a/packages/graphql/lib/plugin/visitors/model-class.visitor.ts b/packages/graphql/lib/plugin/visitors/model-class.visitor.ts
index 55c80084e..4471f5664 100644
--- a/packages/graphql/lib/plugin/visitors/model-class.visitor.ts
+++ b/packages/graphql/lib/plugin/visitors/model-class.visitor.ts
@@ -1,228 +1,393 @@
-import { compact, flatten } from 'lodash';
import * as ts from 'typescript';
-import { HideField } from '../../decorators';
+import {
+ ArgsType,
+ Field,
+ HideField,
+ InputType,
+ InterfaceType,
+ ObjectType,
+} from '../../decorators';
import { PluginOptions } from '../merge-options';
import { METADATA_FACTORY_NAME } from '../plugin-constants';
import {
+ createImportEquals,
findNullableTypeFromUnion,
- getDescriptionOfNode,
+ getDecoratorName,
+ getDecorators,
+ getJsDocDeprecation,
+ getJSDocDescription,
+ getModifiers,
+ hasDecorators,
+ hasModifiers,
+ isInUpdatedAstContext,
isNull,
isUndefined,
+ safelyMergeObjects,
+ serializePrimitiveObjectToAst,
+ updateDecoratorArguments,
} from '../utils/ast-utils';
import {
- getDecoratorOrUndefinedByNames,
getTypeReferenceAsString,
- hasPropertyKey,
replaceImportPath,
} from '../utils/plugin-utils';
-const metadataHostMap = new Map();
-const importsToAddPerFile = new Map>();
+const CLASS_DECORATORS = [
+ ObjectType.name,
+ InterfaceType.name,
+ InputType.name,
+ ArgsType.name,
+];
export class ModelClassVisitor {
+ private importsToAdd: Set;
+
visit(
sourceFile: ts.SourceFile,
ctx: ts.TransformationContext,
program: ts.Program,
pluginOptions: PluginOptions,
) {
+ this.importsToAdd = new Set();
+
const typeChecker = program.getTypeChecker();
+ const factory = ctx.factory;
const visitNode = (node: ts.Node): ts.Node => {
- if (ts.isClassDeclaration(node)) {
- this.clearMetadataOnRestart(node);
-
- node = ts.visitEachChild(node, visitNode, ctx);
- return this.addMetadataFactory(node as ts.ClassDeclaration);
- } else if (ts.isPropertyDeclaration(node)) {
- const decorators = node.decorators;
- const hideField = getDecoratorOrUndefinedByNames(
- [HideField.name],
- decorators,
+ const decorators = getDecorators(node);
+ if (
+ ts.isClassDeclaration(node) &&
+ hasDecorators(decorators, CLASS_DECORATORS)
+ ) {
+ const members = this.amendFieldsDecorators(
+ factory,
+ node.members,
+ pluginOptions,
+ sourceFile.fileName,
+ typeChecker,
);
- if (hideField) {
- return node;
- }
- const isPropertyStatic = (node.modifiers || []).some(
- (modifier) => modifier.kind === ts.SyntaxKind.StaticKeyword,
+
+ const metadata = this.collectMetadataFromClassMembers(
+ factory,
+ members,
+ pluginOptions,
+ sourceFile.fileName,
+ typeChecker,
+ );
+
+ return this.updateClassDeclaration(
+ factory,
+ node,
+ members,
+ metadata,
+ pluginOptions,
);
- if (isPropertyStatic) {
- return node;
- }
- try {
- this.inspectPropertyDeclaration(
- node,
- typeChecker,
- sourceFile.fileName,
- sourceFile,
- pluginOptions,
- );
- } catch (err) {
- return node;
- }
- return node;
} else if (ts.isSourceFile(node)) {
const visitedNode = ts.visitEachChild(node, visitNode, ctx);
- const importsToAdd = importsToAddPerFile.get(node.fileName);
- if (!importsToAdd) {
- return visitedNode;
- }
- return this.updateImports(visitedNode, Array.from(importsToAdd));
+
+ const importStatements: ts.Statement[] =
+ this.createEagerImports(factory);
+
+ const existingStatements = Array.from(visitedNode.statements);
+ return factory.updateSourceFile(visitedNode, [
+ ...importStatements,
+ ...existingStatements,
+ ]);
}
return ts.visitEachChild(node, visitNode, ctx);
};
return ts.visitNode(sourceFile, visitNode);
}
- clearMetadataOnRestart(node: ts.ClassDeclaration) {
- const classMetadata = this.getClassMetadata(node);
- if (classMetadata) {
- metadataHostMap.delete(node.name.getText());
+ private addDescriptionToClassDecorators(
+ f: ts.NodeFactory,
+ node: ts.ClassDeclaration,
+ ) {
+ const description = getJSDocDescription(node);
+ const decorators = getDecorators(node);
+ if (!description) {
+ return decorators;
}
+
+ // get one of allowed decorators from list
+ return decorators.map((decorator) => {
+ if (!CLASS_DECORATORS.includes(getDecoratorName(decorator))) {
+ return decorator;
+ }
+
+ const decoratorExpression = decorator.expression as ts.CallExpression;
+ const objectLiteralExpression = serializePrimitiveObjectToAst(f, {
+ description,
+ });
+
+ let newArgumentsArray: ts.Expression[] = [];
+
+ if (decoratorExpression.arguments.length === 0) {
+ newArgumentsArray = [objectLiteralExpression];
+ } else {
+ // Options always a last parameter:
+ // @ObjectType('name', {description: ''});
+ // @ObjectType({description: ''});
+
+ newArgumentsArray = decoratorExpression.arguments.map(
+ (argument, index) => {
+ if (index + 1 != decoratorExpression.arguments.length) {
+ return argument;
+ }
+
+ // merge existing props with new props
+ return safelyMergeObjects(f, objectLiteralExpression, argument);
+ },
+ );
+ }
+
+ return f.updateDecorator(
+ decorator,
+ f.updateCallExpression(
+ decoratorExpression,
+ decoratorExpression.expression,
+ decoratorExpression.typeArguments,
+ newArgumentsArray,
+ ),
+ );
+ });
+ }
+
+ private amendFieldsDecorators(
+ f: ts.NodeFactory,
+ members: ts.NodeArray,
+ pluginOptions: PluginOptions,
+ hostFilename: string, // sourceFile.fileName,
+ typeChecker: ts.TypeChecker | undefined,
+ ): ts.ClassElement[] {
+ return members.map((member) => {
+ const decorators = getDecorators(member);
+ if (
+ (ts.isPropertyDeclaration(member) || ts.isGetAccessor(member)) &&
+ hasDecorators(decorators, [Field.name])
+ ) {
+ try {
+ return updateDecoratorArguments(
+ f,
+ member,
+ Field.name,
+ (decoratorArguments) => {
+ const options =
+ this.getOptionsFromFieldDecoratorOrUndefined(
+ decoratorArguments,
+ );
+
+ const { type, ...metadata } = this.createFieldMetadata(
+ f,
+ member,
+ typeChecker,
+ hostFilename,
+ pluginOptions,
+ this.getTypeFromFieldDecoratorOrUndefined(decoratorArguments),
+ );
+
+ const serializedMetadata = serializePrimitiveObjectToAst(
+ f,
+ metadata as any,
+ );
+ return [
+ type,
+ options
+ ? safelyMergeObjects(f, serializedMetadata, options)
+ : serializedMetadata,
+ ];
+ },
+ );
+ } catch (e) {
+ // omit error
+ }
+ }
+
+ return member;
+ });
}
- addMetadataFactory(node: ts.ClassDeclaration) {
- const classMutableNode = ts.getMutableClone(node);
- const classMetadata = this.getClassMetadata(node as ts.ClassDeclaration);
- const returnValue = classMetadata
- ? ts.createObjectLiteral(
- Object.keys(classMetadata).map((key) =>
- ts.createPropertyAssignment(
- ts.createIdentifier(key),
- classMetadata[key],
+ private collectMetadataFromClassMembers(
+ f: ts.NodeFactory,
+ members: ts.ClassElement[],
+ pluginOptions: PluginOptions,
+ hostFilename: string, // sourceFile.fileName,
+ typeChecker: ts.TypeChecker | undefined,
+ ): ts.ObjectLiteralExpression {
+ const properties: ts.PropertyAssignment[] = [];
+
+ members.forEach((member) => {
+ const decorators = getDecorators(member);
+ const modifiers = getModifiers(member);
+ if (
+ (ts.isPropertyDeclaration(member) || ts.isGetAccessor(member)) &&
+ !hasModifiers(modifiers as readonly ts.Modifier[], [
+ ts.SyntaxKind.StaticKeyword,
+ ts.SyntaxKind.PrivateKeyword,
+ ]) &&
+ !hasDecorators(decorators, [HideField.name, Field.name])
+ ) {
+ try {
+ const metadata = this.createFieldMetadata(
+ f,
+ member,
+ typeChecker,
+ hostFilename,
+ pluginOptions,
+ );
+
+ properties.push(
+ f.createPropertyAssignment(
+ f.createIdentifier(member.name.getText()),
+ serializePrimitiveObjectToAst(f, metadata),
),
- ),
- )
- : ts.createObjectLiteral([], false);
-
- const method = ts.createMethod(
- undefined,
- [ts.createModifier(ts.SyntaxKind.StaticKeyword)],
- undefined,
- ts.createIdentifier(METADATA_FACTORY_NAME),
- undefined,
- undefined,
- [],
- undefined,
- ts.createBlock([ts.createReturn(returnValue)], true),
- );
- (classMutableNode as any).members = ts.createNodeArray([
- ...(classMutableNode as ts.ClassDeclaration).members,
- method,
- ]);
- return classMutableNode;
+ );
+ } catch (e) {
+ // omit error
+ }
+ }
+ });
+
+ return f.createObjectLiteralExpression(properties);
}
- inspectPropertyDeclaration(
- compilerNode: ts.PropertyDeclaration,
- typeChecker: ts.TypeChecker,
- hostFilename: string,
- sourceFile: ts.SourceFile,
+ private updateClassDeclaration(
+ f: ts.NodeFactory,
+ node: ts.ClassDeclaration,
+ members: ts.ClassElement[],
+ propsMetadata: ts.ObjectLiteralExpression,
pluginOptions: PluginOptions,
) {
- const objectLiteralExpr = this.createDecoratorObjectLiteralExpr(
- compilerNode,
- typeChecker,
- ts.createNodeArray(),
- hostFilename,
- sourceFile,
- pluginOptions,
- );
- this.addClassMetadata(compilerNode, objectLiteralExpr, sourceFile);
+ const method = isInUpdatedAstContext
+ ? f.createMethodDeclaration(
+ [f.createModifier(ts.SyntaxKind.StaticKeyword)],
+ undefined,
+ f.createIdentifier(METADATA_FACTORY_NAME),
+ undefined,
+ undefined,
+ [],
+ undefined,
+ f.createBlock([f.createReturnStatement(propsMetadata)], true),
+ )
+ : f.createMethodDeclaration(
+ undefined,
+ [f.createModifier(ts.SyntaxKind.StaticKeyword)],
+ undefined,
+ f.createIdentifier(METADATA_FACTORY_NAME),
+ undefined,
+ undefined,
+ [],
+ undefined,
+ f.createBlock([f.createReturnStatement(propsMetadata)], true),
+ );
+
+ const decorators = pluginOptions.introspectComments
+ ? this.addDescriptionToClassDecorators(f, node)
+ : getDecorators(node);
+
+ return isInUpdatedAstContext
+ ? f.updateClassDeclaration(
+ node,
+ [...decorators, ...getModifiers(node)],
+ node.name,
+ node.typeParameters,
+ node.heritageClauses,
+ [...members, method],
+ )
+ : (f.updateClassDeclaration as any)(
+ node,
+ decorators,
+ node.modifiers,
+ node.name,
+ node.typeParameters,
+ node.heritageClauses,
+ [...members, method],
+ );
+ }
+
+ private getOptionsFromFieldDecoratorOrUndefined(
+ decoratorArguments: ts.NodeArray,
+ ): ts.Expression | undefined {
+ if (decoratorArguments.length > 1) {
+ return decoratorArguments[1];
+ }
+
+ if (
+ decoratorArguments.length === 1 &&
+ !ts.isArrowFunction(decoratorArguments[0])
+ ) {
+ return decoratorArguments[0];
+ }
+ }
+
+ private getTypeFromFieldDecoratorOrUndefined(
+ decoratorArguments: ts.NodeArray,
+ ): ts.ArrowFunction | undefined {
+ if (
+ decoratorArguments.length > 0 &&
+ ts.isArrowFunction(decoratorArguments[0])
+ ) {
+ return decoratorArguments[0];
+ }
}
- createDecoratorObjectLiteralExpr(
- node: ts.PropertyDeclaration | ts.PropertySignature,
+ private createFieldMetadata(
+ f: ts.NodeFactory,
+ node: ts.PropertyDeclaration | ts.GetAccessorDeclaration,
typeChecker: ts.TypeChecker,
- existingProperties: ts.NodeArray = ts.createNodeArray(),
hostFilename = '',
- sourceFile?: ts.SourceFile,
pluginOptions?: PluginOptions,
- ): ts.ObjectLiteralExpression {
+ typeArrowFunction?: ts.ArrowFunction,
+ ) {
const type = typeChecker.getTypeAtLocation(node);
const isNullable =
!!node.questionToken || isNull(type) || isUndefined(type);
- const properties = [
- ...existingProperties,
- !hasPropertyKey('nullable', existingProperties) &&
- isNullable &&
- ts.createPropertyAssignment('nullable', ts.createLiteral(isNullable)),
- this.createTypePropertyAssignment(
- node.type,
- typeChecker,
- existingProperties,
- hostFilename,
- sourceFile,
- pluginOptions,
- ),
- this.createDescriptionPropertyAssigment(
- node,
- existingProperties,
- pluginOptions,
- sourceFile,
- ),
- ];
- const objectLiteral = ts.createObjectLiteral(compact(flatten(properties)));
- return objectLiteral;
+ if (!typeArrowFunction) {
+ typeArrowFunction =
+ typeArrowFunction ||
+ f.createArrowFunction(
+ undefined,
+ undefined,
+ [],
+ undefined,
+ undefined,
+ this.getTypeUsingTypeChecker(f, node.type, typeChecker, hostFilename),
+ );
+ }
+
+ const description = pluginOptions.introspectComments
+ ? getJSDocDescription(node)
+ : undefined;
+
+ const deprecationReason = pluginOptions.introspectComments
+ ? getJsDocDeprecation(node)
+ : undefined;
+
+ return {
+ nullable: isNullable || undefined,
+ type: typeArrowFunction,
+ description,
+ deprecationReason,
+ };
}
- createTypePropertyAssignment(
+ private getTypeUsingTypeChecker(
+ f: ts.NodeFactory,
node: ts.TypeNode,
typeChecker: ts.TypeChecker,
- existingProperties: ts.NodeArray,
hostFilename: string,
- sourceFile?: ts.SourceFile,
- pluginOptions?: PluginOptions,
- ): ts.PropertyAssignment {
- const key = 'type';
- if (hasPropertyKey(key, existingProperties)) {
- return undefined;
- }
+ ) {
+ if (node && ts.isUnionTypeNode(node)) {
+ const nullableType = findNullableTypeFromUnion(node, typeChecker);
+ const remainingTypes = node.types.filter((item) => item !== nullableType);
- if (node) {
- if (ts.isTypeLiteralNode(node)) {
- const propertyAssignments = Array.from(node.members || []).map(
- (member) => {
- const literalExpr = this.createDecoratorObjectLiteralExpr(
- member as ts.PropertySignature,
- typeChecker,
- existingProperties,
- hostFilename,
- sourceFile,
- pluginOptions,
- );
- return ts.createPropertyAssignment(
- ts.createIdentifier(member.name.getText()),
- literalExpr,
- );
- },
+ if (remainingTypes.length === 1) {
+ return this.getTypeUsingTypeChecker(
+ f,
+ remainingTypes[0],
+ typeChecker,
+ hostFilename,
);
- return ts.createPropertyAssignment(
- key,
- ts.createArrowFunction(
- undefined,
- undefined,
- [],
- undefined,
- undefined,
- ts.createParen(ts.createObjectLiteral(propertyAssignments)),
- ),
- );
- } else if (ts.isUnionTypeNode(node)) {
- const nullableType = findNullableTypeFromUnion(node, typeChecker);
- const remainingTypes = node.types.filter(
- (item) => item !== nullableType,
- );
-
- if (remainingTypes.length === 1) {
- return this.createTypePropertyAssignment(
- remainingTypes[0],
- typeChecker,
- existingProperties,
- hostFilename,
- );
- }
}
}
@@ -231,116 +396,32 @@ export class ModelClassVisitor {
return undefined;
}
- let typeReference = getTypeReferenceAsString(type, typeChecker);
- if (!typeReference) {
+ const _typeReference = getTypeReferenceAsString(type, typeChecker);
+
+ if (!_typeReference) {
return undefined;
}
- typeReference = replaceImportPath(typeReference, hostFilename);
- if (typeReference && typeReference.includes('require')) {
- // add top-level import to eagarly load class metadata
- const importPath = /\(\"([^)]).+(\")/.exec(typeReference)[0];
- if (importPath) {
- let importsToAdd = importsToAddPerFile.get(hostFilename);
- if (!importsToAdd) {
- importsToAdd = new Set();
- importsToAddPerFile.set(hostFilename, importsToAdd);
- }
- importsToAdd.add(importPath.slice(2, importPath.length - 1));
- }
- }
- return ts.createPropertyAssignment(
- key,
- ts.createArrowFunction(
- undefined,
- undefined,
- [],
- undefined,
- undefined,
- ts.createIdentifier(typeReference),
- ),
+ const { typeReference, importPath } = replaceImportPath(
+ _typeReference,
+ hostFilename,
);
- }
- addClassMetadata(
- node: ts.PropertyDeclaration,
- objectLiteral: ts.ObjectLiteralExpression,
- sourceFile: ts.SourceFile,
- ) {
- const hostClass = node.parent;
- const className = hostClass.name && hostClass.name.getText();
- if (!className) {
- return;
- }
- const existingMetadata = metadataHostMap.get(className) || {};
- const propertyName = node.name && node.name.getText(sourceFile);
- if (
- !propertyName ||
- (node.name && node.name.kind === ts.SyntaxKind.ComputedPropertyName)
- ) {
- return;
+ if (importPath) {
+ // add top-level import to eagarly load class metadata
+ this.importsToAdd.add(importPath);
}
- metadataHostMap.set(className, {
- ...existingMetadata,
- [propertyName]: objectLiteral,
- });
- }
- getClassMetadata(node: ts.ClassDeclaration) {
- if (!node.name) {
- return;
- }
- return metadataHostMap.get(node.name.getText());
+ return f.createIdentifier(typeReference);
}
- updateImports(
- sourceFile: ts.SourceFile,
- pathsToImport: string[],
- ): ts.SourceFile {
- const [major, minor] = ts.versionMajorMinor?.split('.').map((x) => +x);
- const IMPORT_PREFIX = 'eager_import_';
- const importDeclarations = pathsToImport.map((path, index) => {
- if (major == 4 && minor >= 2) {
- // support TS v4.2+
- return (ts.createImportEqualsDeclaration as any)(
- undefined,
- undefined,
- false,
- IMPORT_PREFIX + index,
- ts.createExternalModuleReference(ts.createLiteral(path)),
- );
- }
- return (ts.createImportEqualsDeclaration as any)(
- undefined,
- undefined,
- IMPORT_PREFIX + index,
- ts.createExternalModuleReference(ts.createLiteral(path)),
- );
- });
- return ts.updateSourceFileNode(sourceFile, [
- ...importDeclarations,
- ...sourceFile.statements,
- ]);
- }
-
- createDescriptionPropertyAssigment(
- node: ts.PropertyDeclaration | ts.PropertySignature,
- existingProperties: ts.NodeArray = ts.createNodeArray(),
- options: PluginOptions = {},
- sourceFile?: ts.SourceFile,
- ): ts.PropertyAssignment {
- if (!options.introspectComments || !sourceFile) {
- return;
+ private createEagerImports(f: ts.NodeFactory): ts.ImportEqualsDeclaration[] {
+ if (!this.importsToAdd.size) {
+ return [];
}
- const description = getDescriptionOfNode(node, sourceFile);
- const keyOfComment = 'description';
- if (!hasPropertyKey(keyOfComment, existingProperties) && description) {
- const descriptionPropertyAssignment = ts.createPropertyAssignment(
- keyOfComment,
- ts.createLiteral(description),
- );
- return descriptionPropertyAssignment;
- }
+ return Array.from(this.importsToAdd).map((path, index) => {
+ return createImportEquals(f, 'eager_import_' + index, path);
+ });
}
}
diff --git a/packages/graphql/lib/schema-builder/collections/array-with-global-cache.collection.ts b/packages/graphql/lib/schema-builder/collections/array-with-global-cache.collection.ts
new file mode 100644
index 000000000..363ea181c
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/array-with-global-cache.collection.ts
@@ -0,0 +1,35 @@
+export class ArrayWithGlobalCacheCollection {
+ private readonly internalArray: T[] = [];
+
+ constructor(private globalArray: Array) {}
+
+ getAll() {
+ return this.internalArray;
+ }
+
+ push(...items: T[]): number {
+ this.globalArray.push(...items);
+ return this.internalArray.push(...items);
+ }
+
+ unshift(...items: T[]): number {
+ this.globalArray.unshift(...items);
+ return this.internalArray.unshift(...items);
+ }
+
+ reverse() {
+ return this.internalArray.reverse();
+ }
+
+ reduce(
+ callbackfn: (
+ previousValue: U,
+ currentValue: T,
+ currentIndex: number,
+ array: T[],
+ ) => U,
+ initialValue: U,
+ ): U {
+ return this.internalArray.reduce(callbackfn, initialValue);
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/collections/field-directive.collection.ts b/packages/graphql/lib/schema-builder/collections/field-directive.collection.ts
new file mode 100644
index 000000000..fd42ac351
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/field-directive.collection.ts
@@ -0,0 +1,19 @@
+import { PropertyDirectiveMetadata } from '../metadata';
+import { MetadataListByNameCollection } from './metadata-list-by-name.collection';
+
+export class FieldDirectiveCollection extends MetadataListByNameCollection {
+ sdls = new Set();
+ fieldNames = new Set();
+
+ add(value: PropertyDirectiveMetadata) {
+ if (this.sdls.has(value.sdl) && this.fieldNames.has(value.fieldName)) {
+ return;
+ }
+
+ super.add(value, value.fieldName);
+
+ this.sdls.add(value.sdl);
+ this.fieldNames.add(value.fieldName);
+ this.globalArray?.push(value);
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/collections/index.ts b/packages/graphql/lib/schema-builder/collections/index.ts
new file mode 100644
index 000000000..27ca55d70
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/index.ts
@@ -0,0 +1,7 @@
+export * from './array-with-global-cache.collection';
+export * from './field-directive.collection';
+export * from './metada-collection-model.interface';
+export * from './metadata-by-name.collection';
+export * from './metadata-by-target.collection';
+export * from './metadata-list-by-name.collection';
+export * from './target-metadata.collection';
diff --git a/packages/graphql/lib/schema-builder/collections/metada-collection-model.interface.ts b/packages/graphql/lib/schema-builder/collections/metada-collection-model.interface.ts
new file mode 100644
index 000000000..6894d3db4
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/metada-collection-model.interface.ts
@@ -0,0 +1,21 @@
+import {
+ ClassDirectiveMetadata,
+ ClassExtensionsMetadata,
+ ClassMetadata,
+ PropertyDirectiveMetadata,
+ PropertyExtensionsMetadata,
+ ResolverClassMetadata,
+} from '../metadata';
+import { ObjectTypeMetadata } from '../metadata/object-type.metadata';
+
+export interface MetadataCollectionModel {
+ argumentType: ClassMetadata[];
+ interface: ClassMetadata[];
+ inputType: ClassMetadata[];
+ objectType: ObjectTypeMetadata[];
+ resolver: ResolverClassMetadata[];
+ classDirectives: ClassDirectiveMetadata[];
+ classExtensions: ClassExtensionsMetadata[];
+ fieldDirectives: PropertyDirectiveMetadata[];
+ fieldExtensions: PropertyExtensionsMetadata[];
+}
diff --git a/packages/graphql/lib/schema-builder/collections/metadata-by-name.collection.ts b/packages/graphql/lib/schema-builder/collections/metadata-by-name.collection.ts
new file mode 100644
index 000000000..e1c1f5231
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/metadata-by-name.collection.ts
@@ -0,0 +1,29 @@
+export class MetadataByNameCollection {
+ protected internalCollection = new Map();
+ protected all: (T extends any[] ? T[number] : T)[] = [];
+
+ getAll() {
+ return this.all;
+ }
+
+ getByName(name: string) {
+ return this.internalCollection.get(name);
+ }
+
+ add(value: T extends any[] ? T[number] : T, name: string) {
+ if (this.internalCollection.has(name)) {
+ return;
+ }
+
+ this.internalCollection.set(name, value);
+ this.all.push(value);
+ }
+
+ unshift(value: T extends any[] ? T[number] : T, name: string) {
+ if (this.internalCollection.has(name)) {
+ return;
+ }
+ this.internalCollection.set(name, value);
+ this.all.unshift(value);
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/collections/metadata-by-target.collection.ts b/packages/graphql/lib/schema-builder/collections/metadata-by-target.collection.ts
new file mode 100644
index 000000000..36c20eecd
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/metadata-by-target.collection.ts
@@ -0,0 +1,44 @@
+import { MetadataCollectionModel } from './metada-collection-model.interface';
+import { TargetMetadataCollection } from './target-metadata.collection';
+
+export class MetadataByTargetCollection {
+ public readonly all: MetadataCollectionModel = {
+ argumentType: [],
+ interface: [],
+ inputType: [],
+ objectType: [],
+ resolver: [],
+ classDirectives: [],
+ classExtensions: [],
+ fieldDirectives: [],
+ fieldExtensions: [],
+ };
+
+ private readonly storageMap = new Map();
+ private readonly storageList = new Array();
+
+ get(target: Function) {
+ let metadata = this.storageMap.get(target);
+
+ if (!metadata) {
+ metadata = new TargetMetadataCollection(this.all);
+ this.storageMap.set(target, metadata);
+ this.storageList.push(metadata);
+ }
+
+ return metadata;
+ }
+
+ compile() {
+ this.reversePredicate((t) => t.classDirectives.getAll());
+ this.reversePredicate((t) => t.classExtensions.getAll());
+ this.reversePredicate((t) => t.fieldDirectives.getAll());
+ this.reversePredicate((t) => t.fieldExtensions.getAll());
+ }
+
+ private reversePredicate(
+ predicate: (t: TargetMetadataCollection) => Array,
+ ) {
+ this.storageList.forEach((t) => predicate(t).reverse());
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/collections/metadata-list-by-name.collection.ts b/packages/graphql/lib/schema-builder/collections/metadata-list-by-name.collection.ts
new file mode 100644
index 000000000..a797f5d45
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/metadata-list-by-name.collection.ts
@@ -0,0 +1,37 @@
+import { MetadataByNameCollection } from './metadata-by-name.collection';
+
+export class MetadataListByNameCollection extends MetadataByNameCollection<
+ T[]
+> {
+ constructor(protected globalArray: Array = null) {
+ super();
+ }
+
+ getByName(name: string): T[] {
+ return super.getByName(name) || [];
+ }
+
+ add(value: T, name: string) {
+ let arrayResult = super.getByName(name);
+ if (!arrayResult) {
+ arrayResult = [];
+ this.internalCollection.set(name, arrayResult);
+ }
+
+ arrayResult.push(value);
+ this.all.push(value);
+ this.globalArray && this.globalArray.push(value);
+ }
+
+ unshift(value: T, name: string) {
+ let arrayResult = super.getByName(name);
+ if (!arrayResult) {
+ arrayResult = [];
+ this.internalCollection.set(name, arrayResult);
+ }
+
+ arrayResult.unshift(value);
+ this.all.push(value);
+ this.globalArray && this.globalArray.unshift(value);
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/collections/target-metadata.collection.ts b/packages/graphql/lib/schema-builder/collections/target-metadata.collection.ts
new file mode 100644
index 000000000..35f4dac0a
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/collections/target-metadata.collection.ts
@@ -0,0 +1,84 @@
+import {
+ ClassDirectiveMetadata,
+ ClassExtensionsMetadata,
+ ClassMetadata,
+ MethodArgsMetadata,
+ PropertyExtensionsMetadata,
+ PropertyMetadata,
+ ResolverClassMetadata,
+} from '../metadata';
+import { ObjectTypeMetadata } from '../metadata/object-type.metadata';
+import { ArrayWithGlobalCacheCollection } from './array-with-global-cache.collection';
+import { FieldDirectiveCollection } from './field-directive.collection';
+import { MetadataCollectionModel } from './metada-collection-model.interface';
+import { MetadataByNameCollection } from './metadata-by-name.collection';
+import { MetadataListByNameCollection } from './metadata-list-by-name.collection';
+
+export class TargetMetadataCollection {
+ constructor(private readonly all: MetadataCollectionModel) {}
+
+ fields = new MetadataByNameCollection();
+ params = new MetadataListByNameCollection();
+ fieldDirectives = new FieldDirectiveCollection(this.all.fieldDirectives);
+ fieldExtensions =
+ new MetadataListByNameCollection(
+ this.all.fieldExtensions,
+ );
+ classDirectives = new ArrayWithGlobalCacheCollection(
+ this.all.classDirectives,
+ );
+ classExtensions = new ArrayWithGlobalCacheCollection(
+ this.all.classExtensions,
+ );
+
+ private _argumentType: ClassMetadata;
+ private _interface: ClassMetadata;
+ private _inputType: ClassMetadata;
+ private _objectType: ObjectTypeMetadata;
+ private _resolver: ResolverClassMetadata;
+
+ set argumentType(val: ClassMetadata) {
+ this._argumentType = val;
+ this.all.argumentType.push(val);
+ }
+
+ get argumentType() {
+ return this._argumentType;
+ }
+
+ set interface(val: ClassMetadata) {
+ this._interface = val;
+ this.all.interface.push(val);
+ }
+
+ get interface() {
+ return this._interface;
+ }
+
+ set inputType(val: ClassMetadata) {
+ this._inputType = val;
+ this.all.inputType.push(val);
+ }
+
+ get inputType() {
+ return this._inputType;
+ }
+
+ set objectType(val: ObjectTypeMetadata) {
+ this._objectType = val;
+ this.all.objectType.push(val);
+ }
+
+ get objectType() {
+ return this._objectType;
+ }
+
+ set resolver(val: ResolverClassMetadata) {
+ this._resolver = val;
+ this.all.resolver.push(val);
+ }
+
+ get resolver() {
+ return this._resolver;
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/errors/cannot-determine-input-type.error.ts b/packages/graphql/lib/schema-builder/errors/cannot-determine-input-type.error.ts
index 917e7428f..e9f881008 100644
--- a/packages/graphql/lib/schema-builder/errors/cannot-determine-input-type.error.ts
+++ b/packages/graphql/lib/schema-builder/errors/cannot-determine-input-type.error.ts
@@ -6,8 +6,8 @@ export class CannotDetermineInputTypeError extends Error {
typeof typeRef === 'function' && typeRef.name;
super(
`Cannot determine a GraphQL input type ${
- inputObjectName ? `("${inputObjectName}") ` : null
- }for the "${hostType}". Make sure your class is decorated with an appropriate decorator.`,
+ inputObjectName ? `("${inputObjectName}")` : null
+ } for the "${hostType}". Make sure your class is decorated with an appropriate decorator.`,
);
}
}
diff --git a/packages/graphql/lib/schema-builder/errors/multiple-fields-with-same-name.error.ts b/packages/graphql/lib/schema-builder/errors/multiple-fields-with-same-name.error.ts
new file mode 100644
index 000000000..0caaafa22
--- /dev/null
+++ b/packages/graphql/lib/schema-builder/errors/multiple-fields-with-same-name.error.ts
@@ -0,0 +1,7 @@
+export class MultipleFieldsWithSameNameError extends Error {
+ constructor(field: string, objectTypeName: string) {
+ super(
+ `Cannot define multiple fields with the same name "${field}" for type "${objectTypeName}"`,
+ );
+ }
+}
diff --git a/packages/graphql/lib/schema-builder/factories/interface-definition.factory.ts b/packages/graphql/lib/schema-builder/factories/interface-definition.factory.ts
index a4ec2a37a..2a86cd761 100644
--- a/packages/graphql/lib/schema-builder/factories/interface-definition.factory.ts
+++ b/packages/graphql/lib/schema-builder/factories/interface-definition.factory.ts
@@ -113,7 +113,22 @@ export class InterfaceDefinitionFactory {
return () => {
let fields: GraphQLFieldConfigMap = {};
- metadata.properties.forEach((field) => {
+
+ let properties = [];
+ if (metadata.interfaces) {
+ const implementedInterfaces =
+ TypeMetadataStorage.getInterfacesMetadata()
+ .filter((it) =>
+ getInterfacesArray(metadata.interfaces).includes(it.target),
+ )
+ .map((it) => it.properties);
+ implementedInterfaces.forEach((fields) =>
+ properties.push(...(fields || [])),
+ );
+ }
+ properties = properties.concat(metadata.properties);
+
+ properties.forEach((field) => {
const type = this.outputTypeFactory.create(
field.name,
field.typeFn(),
diff --git a/packages/graphql/lib/schema-builder/factories/root-type.factory.ts b/packages/graphql/lib/schema-builder/factories/root-type.factory.ts
index bc5c8a77e..85dc49deb 100644
--- a/packages/graphql/lib/schema-builder/factories/root-type.factory.ts
+++ b/packages/graphql/lib/schema-builder/factories/root-type.factory.ts
@@ -6,6 +6,7 @@ import { OrphanedReferenceRegistry } from '../services/orphaned-reference.regist
import { ArgsFactory } from './args.factory';
import { AstDefinitionNodeFactory } from './ast-definition-node.factory';
import { OutputTypeFactory } from './output-type.factory';
+import { MultipleFieldsWithSameNameError } from '../errors/multiple-fields-with-same-name.error';
export type FieldsFactory = (
handlers: ResolverTypeMetadata[],
@@ -27,7 +28,7 @@ export class RootTypeFactory {
objectTypeName: 'Subscription' | 'Mutation' | 'Query',
options: BuildSchemaOptions,
fieldsFactory: FieldsFactory = (handlers) =>
- this.generateFields(handlers, options),
+ this.generateFields(handlers, options, objectTypeName),
): GraphQLObjectType {
const handlers = typeRefs
? resolversMetadata.filter((query) => typeRefs.includes(query.target))
@@ -45,6 +46,7 @@ export class RootTypeFactory {
generateFields(
handlers: ResolverTypeMetadata[],
options: BuildSchemaOptions,
+ objectTypeName: string,
): GraphQLFieldConfigMap {
const fieldConfigMap: GraphQLFieldConfigMap = {};
@@ -66,6 +68,11 @@ export class RootTypeFactory {
);
const key = handler.schemaName;
+
+ if (fieldConfigMap[key] && options.noDuplicatedFields) {
+ throw new MultipleFieldsWithSameNameError(key, objectTypeName);
+ }
+
fieldConfigMap[key] = {
type,
args: this.argsFactory.create(handler.methodArgs, options),
diff --git a/packages/graphql/lib/schema-builder/graphql-schema.factory.ts b/packages/graphql/lib/schema-builder/graphql-schema.factory.ts
index 8127e7451..38bd0e945 100644
--- a/packages/graphql/lib/schema-builder/graphql-schema.factory.ts
+++ b/packages/graphql/lib/schema-builder/graphql-schema.factory.ts
@@ -70,7 +70,10 @@ export class GraphQLSchemaFactory {
mutation: this.mutationTypeFactory.create(resolvers, options),
query: this.queryTypeFactory.create(resolvers, options),
subscription: this.subscriptionTypeFactory.create(resolvers, options),
- types: this.orphanedTypesFactory.create(options.orphanedTypes),
+ types: [
+ ...this.orphanedTypesFactory.create(options.orphanedTypes),
+ ...(options.scalarsMap ?? []).map(({ scalar }) => scalar),
+ ],
directives: [...specifiedDirectives, ...(options.directives ?? [])],
});
diff --git a/packages/graphql/lib/schema-builder/storages/type-metadata.storage.ts b/packages/graphql/lib/schema-builder/storages/type-metadata.storage.ts
index e701b08fe..a0aff4686 100644
--- a/packages/graphql/lib/schema-builder/storages/type-metadata.storage.ts
+++ b/packages/graphql/lib/schema-builder/storages/type-metadata.storage.ts
@@ -1,53 +1,38 @@
import { Type } from '@nestjs/common';
import { isUndefined } from '@nestjs/common/utils/shared.utils';
-import { addFieldMetadata } from '../../decorators/field.decorator';
+import { addFieldMetadata } from '../../decorators';
import { METADATA_FACTORY_NAME } from '../../plugin/plugin-constants';
+import { MetadataByTargetCollection } from '../collections/';
import { CannotDetermineHostTypeError } from '../errors/cannot-determine-host-type.error';
import { UndefinedTypeError } from '../errors/undefined-type.error';
import {
BaseResolverMetadata,
+ ClassDirectiveMetadata,
ClassExtensionsMetadata,
ClassMetadata,
EnumMetadata,
FieldResolverMetadata,
MethodArgsMetadata,
+ PropertyDirectiveMetadata,
PropertyExtensionsMetadata,
PropertyMetadata,
ResolverClassMetadata,
ResolverTypeMetadata,
UnionMetadata,
} from '../metadata';
-import {
- ClassDirectiveMetadata,
- PropertyDirectiveMetadata,
-} from '../metadata/directive.metadata';
import { InterfaceMetadata } from '../metadata/interface.metadata';
import { ObjectTypeMetadata } from '../metadata/object-type.metadata';
-import { isTargetEqual } from '../utils/is-target-equal-util';
import { isThrowing } from '../utils/is-throwing.util';
export class TypeMetadataStorageHost {
- /**
- * The implementation of this class has been heavily inspired by the following code:
- * @ref https://github.com/MichalLytek/type-graphql/blob/master/src/metadata/metadata-storage.ts
- */
private queries = new Array();
private mutations = new Array();
private subscriptions = new Array();
private fieldResolvers = new Array();
- private readonly resolvers = new Array();
- private readonly fields = new Array();
- private readonly params = new Array();
- private readonly interfaces = new Array();
private readonly enums = new Array();
private readonly unions = new Array();
- private readonly classDirectives = new Array();
- private readonly fieldDirectives = new Array();
- private readonly classExtensions = new Array();
- private readonly fieldExtensions = new Array();
- private readonly objectTypes = new Array();
- private readonly inputTypes = new Array();
- private readonly argumentTypes = new Array();
+ private readonly metadataByTargetCollection =
+ new MetadataByTargetCollection();
addMutationMetadata(metadata: ResolverTypeMetadata) {
this.mutations.push(metadata);
@@ -78,59 +63,60 @@ export class TypeMetadataStorageHost {
}
addArgsMetadata(metadata: ClassMetadata) {
- this.argumentTypes.push(metadata);
+ this.metadataByTargetCollection.get(metadata.target).argumentType =
+ metadata;
}
getArgumentsMetadata(): ClassMetadata[] {
- return this.argumentTypes;
+ return this.metadataByTargetCollection.all.argumentType;
}
getArgumentsMetadataByTarget(
target: Type,
): ClassMetadata | undefined {
- return this.argumentTypes.find((item) => item.target === target);
+ return this.metadataByTargetCollection.get(target).argumentType;
}
addInterfaceMetadata(metadata: InterfaceMetadata) {
- this.interfaces.push(metadata);
+ this.metadataByTargetCollection.get(metadata.target).interface = metadata;
}
getInterfacesMetadata(): InterfaceMetadata[] {
- return this.interfaces;
+ return this.metadataByTargetCollection.all.interface;
}
getInterfaceMetadataByTarget(
target: Type,
): InterfaceMetadata | undefined {
- return this.interfaces.find((item) => item.target === target);
+ return this.metadataByTargetCollection.get(target).interface;
}
addInputTypeMetadata(metadata: ClassMetadata) {
- this.inputTypes.push(metadata);
+ this.metadataByTargetCollection.get(metadata.target).inputType = metadata;
}
getInputTypesMetadata(): ClassMetadata[] {
- return this.inputTypes;
+ return this.metadataByTargetCollection.all.inputType;
}
getInputTypeMetadataByTarget(
target: Type,
): ObjectTypeMetadata | undefined {
- return this.inputTypes.find((item) => item.target === target);
+ return this.metadataByTargetCollection.get(target).inputType;
}
addObjectTypeMetadata(metadata: ObjectTypeMetadata) {
- this.objectTypes.push(metadata);
+ this.metadataByTargetCollection.get(metadata.target).objectType = metadata;
}
getObjectTypesMetadata(): ObjectTypeMetadata[] {
- return this.objectTypes;
+ return this.metadataByTargetCollection.all.objectType;
}
getObjectTypeMetadataByTarget(
target: Type,
): ObjectTypeMetadata | undefined {
- return this.objectTypes.find((item) => item.target === target);
+ return this.metadataByTargetCollection.get(target).objectType;
}
addEnumMetadata(metadata: EnumMetadata) {
@@ -150,46 +136,39 @@ export class TypeMetadataStorageHost {
}
addDirectiveMetadata(metadata: ClassDirectiveMetadata) {
- const exist = this.fieldDirectives.some((directiveMetadata) => {
- return (
- directiveMetadata.sdl === metadata.sdl &&
- directiveMetadata.target === metadata.target
- );
- });
- if (!exist) {
- this.classDirectives.push(metadata);
+ const classMetadata = this.metadataByTargetCollection.get(metadata.target);
+ if (!classMetadata.fieldDirectives.sdls.has(metadata.sdl)) {
+ classMetadata.classDirectives.push(metadata);
}
}
addDirectivePropertyMetadata(metadata: PropertyDirectiveMetadata) {
- const exist = this.fieldDirectives.some((directiveMetadata) => {
- return (
- directiveMetadata.fieldName === metadata.fieldName &&
- directiveMetadata.sdl === metadata.sdl &&
- directiveMetadata.target === metadata.target
- );
- });
- if (!exist) {
- this.fieldDirectives.push(metadata);
- }
+ this.metadataByTargetCollection
+ .get(metadata.target)
+ .fieldDirectives.add(metadata);
}
addExtensionsMetadata(metadata: ClassExtensionsMetadata) {
- this.classExtensions.push(metadata);
+ this.metadataByTargetCollection
+ .get(metadata.target)
+ .classExtensions.push(metadata);
}
addExtensionsPropertyMetadata(metadata: PropertyExtensionsMetadata) {
- this.fieldExtensions.push(metadata);
+ this.metadataByTargetCollection
+ .get(metadata.target)
+ .fieldExtensions.add(metadata, metadata.fieldName);
}
addResolverMetadata(metadata: ResolverClassMetadata) {
- this.resolvers.push(metadata);
+ this.metadataByTargetCollection.get(metadata.target).resolver = metadata;
}
addClassFieldMetadata(metadata: PropertyMetadata) {
- const existingMetadata = this.fields.find(
- (item) => item.target === metadata.target && item.name === metadata.name,
- );
+ const existingMetadata = this.metadataByTargetCollection
+ .get(metadata.target)
+ .fields.getByName(metadata.name);
+
if (existingMetadata) {
const options = existingMetadata.options;
// inherit nullable option
@@ -197,25 +176,26 @@ export class TypeMetadataStorageHost {
options.nullable = metadata.options.nullable;
}
} else {
- this.fields.push(metadata);
+ this.metadataByTargetCollection
+ .get(metadata.target)
+ .fields.add(metadata, metadata.name);
}
}
addMethodParamMetadata(metadata: MethodArgsMetadata) {
- this.params.unshift(metadata);
+ this.metadataByTargetCollection
+ .get(metadata.target)
+ .params.unshift(metadata, metadata.methodName);
}
compile(orphanedTypes: (Function | object)[] = []) {
- this.classDirectives.reverse();
- this.classExtensions.reverse();
- this.fieldDirectives.reverse();
- this.fieldExtensions.reverse();
+ this.metadataByTargetCollection.compile();
const classMetadata = [
- ...this.objectTypes,
- ...this.inputTypes,
- ...this.argumentTypes,
- ...this.interfaces,
+ ...this.metadataByTargetCollection.all.objectType,
+ ...this.metadataByTargetCollection.all.inputType,
+ ...this.metadataByTargetCollection.all.argumentType,
+ ...this.metadataByTargetCollection.all.interface,
];
this.loadClassPluginMetadata(classMetadata);
this.compileClassMetadata(classMetadata);
@@ -274,18 +254,21 @@ export class TypeMetadataStorageHost {
compileClassMetadata(metadata: ClassMetadata[]) {
metadata.forEach((item) => {
- const belongsToClass = isTargetEqual.bind(undefined, item);
-
if (!item.properties) {
- item.properties = this.getClassFieldsByPredicate(belongsToClass);
+ item.properties = this.getClassFieldsByPredicate(item);
}
if (!item.directives) {
- item.directives = this.classDirectives.filter(belongsToClass);
+ item.directives = this.metadataByTargetCollection
+ .get(item.target)
+ .classDirectives.getAll();
}
if (!item.extensions) {
- item.extensions = this.classExtensions
- .filter(belongsToClass)
- .reduce((curr, acc) => ({ ...curr, ...acc.value }), {});
+ item.extensions = this.metadataByTargetCollection
+ .get(item.target)
+ .classExtensions.reduce(
+ (curr, acc) => ({ ...curr, ...acc.value }),
+ {},
+ );
}
});
}
@@ -294,20 +277,20 @@ export class TypeMetadataStorageHost {
Object.assign(this, new TypeMetadataStorageHost());
}
- private getClassFieldsByPredicate(
- belongsToClass: (item: PropertyMetadata) => boolean,
- ) {
- const fields = this.fields.filter(belongsToClass);
+ private getClassFieldsByPredicate(item: ClassMetadata) {
+ const fields = this.metadataByTargetCollection
+ .get(item.target)
+ .fields.getAll();
fields.forEach((field) => {
- const isHostEqual = isTargetEqual.bind(undefined, field);
- field.methodArgs = this.params.filter(
- (param) => isHostEqual(param) && field.name === param.methodName,
- );
- field.directives = this.fieldDirectives.filter(
- this.isFieldDirectiveOrExtension.bind(this, field),
- );
- field.extensions = this.fieldExtensions
- .filter(this.isFieldDirectiveOrExtension.bind(this, field))
+ field.methodArgs = this.metadataByTargetCollection
+ .get(item.target)
+ .params.getByName(field.name);
+ field.directives = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldDirectives.getByName(field.name);
+ field.extensions = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldExtensions.getByName(field.name)
.reduce((curr, acc) => ({ ...curr, ...acc.value }), {});
});
return fields;
@@ -315,18 +298,18 @@ export class TypeMetadataStorageHost {
private compileResolversMetadata(metadata: BaseResolverMetadata[]) {
metadata.forEach((item) => {
- const isTypeEqual = isTargetEqual.bind(undefined, item);
- const resolverMetadata = this.resolvers.find(isTypeEqual);
-
- item.classMetadata = resolverMetadata;
- item.methodArgs = this.params.filter(
- (param) => isTypeEqual(param) && item.methodName === param.methodName,
- );
- item.directives = this.fieldDirectives.filter(
- this.isFieldDirectiveOrExtension.bind(this, item),
- );
- item.extensions = this.fieldExtensions
- .filter(this.isFieldDirectiveOrExtension.bind(this, item))
+ item.classMetadata = this.metadataByTargetCollection.get(
+ item.target,
+ ).resolver;
+ item.methodArgs = this.metadataByTargetCollection
+ .get(item.target)
+ .params.getByName(item.methodName);
+ item.directives = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldDirectives.getByName(item.methodName);
+ item.extensions = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldExtensions.getByName(item.methodName)
.reduce((curr, acc) => ({ ...curr, ...acc.value }), {});
});
}
@@ -335,17 +318,17 @@ export class TypeMetadataStorageHost {
this.compileResolversMetadata(metadata);
metadata.forEach((item) => {
- const belongsToClass = isTargetEqual.bind(undefined, item);
- item.directives = this.fieldDirectives.filter(
- this.isFieldDirectiveOrExtension.bind(this, item),
- );
- item.extensions = this.fieldExtensions
- .filter(this.isFieldDirectiveOrExtension.bind(this, item))
+ item.directives = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldDirectives.getByName(item.methodName);
+ item.extensions = this.metadataByTargetCollection
+ .get(item.target)
+ .fieldExtensions.getByName(item.methodName)
.reduce((curr, acc) => ({ ...curr, ...acc.value }), {});
item.objectTypeFn =
item.kind === 'external'
- ? this.resolvers.find(belongsToClass).typeFn
+ ? this.metadataByTargetCollection.get(item.target).resolver.typeFn
: () => item.target as Type;
if (item.kind === 'external') {
@@ -355,27 +338,8 @@ export class TypeMetadataStorageHost {
}
private compileExternalFieldResolverMetadata(item: FieldResolverMetadata) {
- const objectTypeRef = this.resolvers
- .find((el) => isTargetEqual(el, item))
- .typeFn();
-
- const objectOrInterfaceTypeMetadata =
- this.objectTypes.find(
- (objTypeDef) => objTypeDef.target === objectTypeRef,
- ) ||
- this.interfaces.find(
- (interfaceTypeDef) => interfaceTypeDef.target === objectTypeRef,
- );
- if (!objectOrInterfaceTypeMetadata) {
- throw new CannotDetermineHostTypeError(
- item.schemaName,
- objectTypeRef?.name,
- );
- }
- const objectOrInterfaceTypeField =
- objectOrInterfaceTypeMetadata.properties.find(
- (fieldDef) => fieldDef.name === item.methodName,
- );
+ const [target, objectOrInterfaceTypeMetadata, objectOrInterfaceTypeField] =
+ this.findModelFieldMetadata(item);
if (!objectOrInterfaceTypeField) {
if (!item.typeFn || !item.typeOptions) {
throw new UndefinedTypeError(item.target.name, item.methodName);
@@ -386,7 +350,7 @@ export class TypeMetadataStorageHost {
deprecationReason: item.deprecationReason,
description: item.description,
typeFn: item.typeFn,
- target: objectTypeRef,
+ target,
options: item.typeOptions,
methodArgs: item.methodArgs,
directives: item.directives,
@@ -414,14 +378,58 @@ export class TypeMetadataStorageHost {
}
}
+ private findModelFieldMetadata(
+ item: FieldResolverMetadata,
+ ): [Function, ClassMetadata, PropertyMetadata | undefined] {
+ let objectTypeRef = this.metadataByTargetCollection
+ .get(item.target)
+ .resolver.typeFn();
+ const getTypeMetadata = (target: any) => {
+ const metadata = this.metadataByTargetCollection.get(target);
+ return metadata.objectType || metadata.interface;
+ };
+ let objectOrInterfaceTypeMetadata = getTypeMetadata(objectTypeRef);
+ if (!objectOrInterfaceTypeMetadata) {
+ throw new CannotDetermineHostTypeError(
+ item.schemaName,
+ objectTypeRef?.name,
+ );
+ }
+ let objectOrInterfaceTypeField =
+ objectOrInterfaceTypeMetadata.properties.find(
+ (fieldDef) => fieldDef.name === item.methodName,
+ );
+ for (
+ let _objectTypeRef = objectTypeRef;
+ !objectOrInterfaceTypeField && _objectTypeRef?.prototype;
+ _objectTypeRef = Object.getPrototypeOf(_objectTypeRef)
+ ) {
+ const possibleTypeMetadata = getTypeMetadata(_objectTypeRef);
+ objectOrInterfaceTypeField = possibleTypeMetadata?.properties.find(
+ (fieldDef) => fieldDef.name === item.methodName,
+ );
+ if (objectOrInterfaceTypeField) {
+ objectTypeRef = _objectTypeRef;
+ objectOrInterfaceTypeMetadata = possibleTypeMetadata;
+ break;
+ }
+ }
+ return [
+ objectTypeRef,
+ objectOrInterfaceTypeMetadata,
+ objectOrInterfaceTypeField,
+ ];
+ }
+
private compileExtendedResolversMetadata() {
- this.resolvers.forEach((item) => {
+ this.metadataByTargetCollection.all.resolver.forEach((item) => {
let parentClass = Object.getPrototypeOf(item.target);
while (parentClass.prototype) {
- const parentMetadata = this.resolvers.find(
- (item) => item.target === parentClass,
- );
+ const parentMetadata = this.metadataByTargetCollection.get(
+ item.target,
+ ).resolver;
+
if (parentMetadata) {
this.queries = this.mergeParentResolverHandlers(
this.queries,
@@ -449,16 +457,6 @@ export class TypeMetadataStorageHost {
});
}
- private isFieldDirectiveOrExtension(
- host: Record<'target' | 'methodName' | 'name', any>,
- metadata: PropertyDirectiveMetadata | PropertyExtensionsMetadata,
- ): boolean {
- return (
- metadata.target === host.target &&
- metadata.fieldName === (host.methodName || host.name)
- );
- }
-
private mergeParentResolverHandlers<
T extends ResolverTypeMetadata | FieldResolverMetadata,
>(
@@ -466,7 +464,7 @@ export class TypeMetadataStorageHost {
parentClass: Function,
classMetadata: ResolverClassMetadata,
): T[] {
- const mergedMetadata = metadata.map((metadata) => {
+ return metadata.map((metadata) => {
return metadata.target !== parentClass
? metadata
: {
@@ -475,7 +473,6 @@ export class TypeMetadataStorageHost {
classMetadata,
};
});
- return mergedMetadata;
}
private mergeParentFieldHandlers(
@@ -488,7 +485,7 @@ export class TypeMetadataStorageHost {
parentClass,
classMetadata,
);
- const mergedMetadata = parentMetadata.map((metadata) => {
+ return parentMetadata.map((metadata) => {
return metadata.target === parentClass
? metadata
: {
@@ -498,7 +495,6 @@ export class TypeMetadataStorageHost {
: metadata.objectTypeFn,
};
});
- return mergedMetadata;
}
}
diff --git a/packages/graphql/lib/services/gql-subscription.service.ts b/packages/graphql/lib/services/gql-subscription.service.ts
index 0e5d2c503..27519c354 100644
--- a/packages/graphql/lib/services/gql-subscription.service.ts
+++ b/packages/graphql/lib/services/gql-subscription.service.ts
@@ -3,7 +3,11 @@ import {
GraphQLSchema,
subscribe as graphqlSubscribe,
} from 'graphql';
-import { GRAPHQL_TRANSPORT_WS_PROTOCOL, ServerOptions } from 'graphql-ws';
+import {
+ Disposable,
+ GRAPHQL_TRANSPORT_WS_PROTOCOL,
+ ServerOptions,
+} from 'graphql-ws';
import { useServer } from 'graphql-ws/lib/use/ws';
import {
GRAPHQL_WS,
@@ -51,6 +55,8 @@ export interface GqlSubscriptionServiceOptions extends SubscriptionConfig {
export class GqlSubscriptionService {
private readonly wss: ws.Server;
private readonly subTransWs: ws.Server;
+ private wsGqlDisposable: Disposable;
+ private subServer: SubscriptionServer;
constructor(
private readonly options: GqlSubscriptionServiceOptions,
@@ -83,7 +89,7 @@ export class GqlSubscriptionService {
const graphqlWsOptions =
this.options['graphql-ws'] === true ? {} : this.options['graphql-ws'];
supportedProtocols.push(GRAPHQL_TRANSPORT_WS_PROTOCOL);
- useServer(
+ this.wsGqlDisposable = useServer(
{
schema: this.options.schema,
execute,
@@ -102,7 +108,7 @@ export class GqlSubscriptionService {
: this.options['subscriptions-transport-ws'];
supportedProtocols.push(GRAPHQL_WS);
- SubscriptionServer.create(
+ this.subServer = SubscriptionServer.create(
{
schema: this.options.schema,
execute,
@@ -132,18 +138,16 @@ export class GqlSubscriptionService {
? this.subTransWs
: this.wss;
- wss.handleUpgrade(req, socket, head, (ws) => {
- wss.emit('connection', ws, req);
- });
+ if (req.url?.startsWith(wss.options.path)) {
+ wss.handleUpgrade(req, socket, head, (ws) => {
+ wss.emit('connection', ws, req);
+ });
+ }
});
}
async stop() {
- for (const client of this.wss.clients) {
- client.close(1001, 'Going away');
- }
- for (const client of this.subTransWs.clients) {
- client.close(1001, 'Going away');
- }
+ await this.wsGqlDisposable?.dispose();
+ this.subServer?.close();
}
}
diff --git a/packages/graphql/lib/services/resolvers-explorer.service.ts b/packages/graphql/lib/services/resolvers-explorer.service.ts
index e160c7142..a04b65c5f 100644
--- a/packages/graphql/lib/services/resolvers-explorer.service.ts
+++ b/packages/graphql/lib/services/resolvers-explorer.service.ts
@@ -302,7 +302,10 @@ export class ResolversExplorerService extends BaseExplorerService {
}
const wrapper = coreModuleRef.getProviderByKey(REQUEST);
wrapper.setInstanceByContextId(contextId, {
- instance: request,
+ // TODO: remove "as any" in the next major release (backward compatibility)
+ instance: (contextId as any).getParent
+ ? (contextId as any).payload
+ : request,
isResolved: true,
});
}
diff --git a/packages/graphql/lib/type-factories/create-union-type.factory.ts b/packages/graphql/lib/type-factories/create-union-type.factory.ts
index 395a52d99..38f67691b 100644
--- a/packages/graphql/lib/type-factories/create-union-type.factory.ts
+++ b/packages/graphql/lib/type-factories/create-union-type.factory.ts
@@ -17,7 +17,7 @@ export interface UnionOptions[] = Type
/**
* Name of the union.
*/
- name: string;
+ name?: string;
/**
* Description of the union.
*/
diff --git a/packages/graphql/lib/type-factories/register-enum-type.factory.ts b/packages/graphql/lib/type-factories/register-enum-type.factory.ts
index fc361539b..c18a4bcbe 100644
--- a/packages/graphql/lib/type-factories/register-enum-type.factory.ts
+++ b/packages/graphql/lib/type-factories/register-enum-type.factory.ts
@@ -33,7 +33,7 @@ export interface EnumOptions {
*/
export function registerEnumType(
enumRef: T,
- options: EnumOptions,
+ options?: EnumOptions,
) {
LazyMetadataStorage.store(() =>
TypeMetadataStorage.addEnumMetadata({
diff --git a/packages/graphql/lib/type-helpers/intersection-type.helper.ts b/packages/graphql/lib/type-helpers/intersection-type.helper.ts
index 8864d82e7..6deef6f0d 100644
--- a/packages/graphql/lib/type-helpers/intersection-type.helper.ts
+++ b/packages/graphql/lib/type-helpers/intersection-type.helper.ts
@@ -1,4 +1,5 @@
import { Type } from '@nestjs/common';
+import { isFunction } from '@nestjs/common/utils/shared.utils';
import {
inheritPropertyInitializers,
inheritTransformationMetadata,
@@ -37,6 +38,14 @@ export function IntersectionType(
inheritTransformationMetadata(classBRef, IntersectionObjectType);
fields.forEach((item) => {
+ if (isFunction(item.typeFn)) {
+ /**
+ * Execute type function eagarly to update the type options object (before "clone" operation)
+ * when the passed function (e.g., @Field(() => Type)) lazily returns an array.
+ */
+ item.typeFn();
+ }
+
Field(item.typeFn, { ...item.options })(
IntersectionObjectType.prototype,
item.name,
diff --git a/packages/graphql/lib/type-helpers/partial-type.helper.ts b/packages/graphql/lib/type-helpers/partial-type.helper.ts
index 814cea620..590f254a2 100644
--- a/packages/graphql/lib/type-helpers/partial-type.helper.ts
+++ b/packages/graphql/lib/type-helpers/partial-type.helper.ts
@@ -35,7 +35,7 @@ export function PartialType(
fields.forEach((item) => {
if (isFunction(item.typeFn)) {
/**
- * Execute type function eagarly to update the type options object (before "clone" operation)
+ * Execute type function eagerly to update the type options object (before "clone" operation)
* when the passed function (e.g., @Field(() => Type)) lazily returns an array.
*/
item.typeFn();
diff --git a/packages/graphql/lib/utils/auto-schema-file.util.ts b/packages/graphql/lib/utils/auto-schema-file.util.ts
new file mode 100644
index 000000000..85d552e3d
--- /dev/null
+++ b/packages/graphql/lib/utils/auto-schema-file.util.ts
@@ -0,0 +1,14 @@
+import { isObject, isString } from '@nestjs/common/utils/shared.utils';
+import { AutoSchemaFileValue } from '../interfaces';
+
+export function getPathForAutoSchemaFile(
+ autoSchemaFile: AutoSchemaFileValue,
+): string | null {
+ if (isString(autoSchemaFile)) {
+ return autoSchemaFile;
+ }
+ if (isObject(autoSchemaFile) && autoSchemaFile.path) {
+ return autoSchemaFile.path;
+ }
+ return null;
+}
diff --git a/packages/graphql/lib/utils/index.ts b/packages/graphql/lib/utils/index.ts
index 663519e73..e51b06ac1 100644
--- a/packages/graphql/lib/utils/index.ts
+++ b/packages/graphql/lib/utils/index.ts
@@ -1,6 +1,8 @@
+export * from './auto-schema-file.util';
export * from './extend.util';
export * from './extract-metadata.util';
export * from './generate-token.util';
export * from './get-number-of-arguments.util';
export * from './normalize-route-path.util';
export * from './remove-temp.util';
+export * from './stringify-without-quotes.util';
diff --git a/packages/graphql/lib/utils/stringify-without-quotes.util.ts b/packages/graphql/lib/utils/stringify-without-quotes.util.ts
new file mode 100644
index 000000000..f9f72efaa
--- /dev/null
+++ b/packages/graphql/lib/utils/stringify-without-quotes.util.ts
@@ -0,0 +1,13 @@
+export function stringifyWithoutQuotes(obj: object, includeSpaces?: boolean) {
+ let result = includeSpaces
+ ? JSON.stringify(obj, null, 2)
+ : JSON.stringify(obj);
+ result = result
+ .replace(/"([^"]+)":/g, '$1:')
+ .replace(/(?({|,|:))/g, '$ ');
+
+ if (!includeSpaces) {
+ result = result.replace(/}/g, ' }');
+ }
+ return result;
+}
diff --git a/packages/graphql/lib/utils/transform-schema.util.ts b/packages/graphql/lib/utils/transform-schema.util.ts
index bfc1bb975..9a350fcc2 100644
--- a/packages/graphql/lib/utils/transform-schema.util.ts
+++ b/packages/graphql/lib/utils/transform-schema.util.ts
@@ -1,6 +1,6 @@
-// This file is copied from `apollo-tooling`. The only difference is that it has a hack to not remove federation specific properties.
-// The changed lines are 31-40 and 85-87 and the original file can be found here:
-// https://github.com/apollographql/apollo-tooling/blob/master/packages/apollo-graphql/src/schema/transformSchema.ts
+// This file is copied from `apollographql/federation`. The only difference is
+// that it has a hack to not remove federation specific properties.
+// https://github.com/apollographql/federation/blob/main/subgraph-js/src/schema-helper/transformSchema.ts
import {
GraphQLDirective,
@@ -15,6 +15,7 @@ import {
GraphQLNonNull,
GraphQLObjectType,
GraphQLOutputType,
+ GraphQLResolveInfo,
GraphQLSchema,
GraphQLType,
GraphQLUnionType,
@@ -27,13 +28,33 @@ import {
isUnionType,
} from 'graphql';
+type GraphQLReferenceResolver = (
+ reference: object,
+ context: TContext,
+ info: GraphQLResolveInfo,
+) => any;
+
+interface ApolloSubgraphExtensions {
+ resolveReference?: GraphQLReferenceResolver;
+}
+
declare module 'graphql/type/definition' {
- interface GraphQLObjectType {
- resolveReference?: any;
+ interface GraphQLObjectTypeExtensions<_TSource = any, _TContext = any> {
+ apollo?: {
+ subgraph?: ApolloSubgraphExtensions<_TContext>;
+ };
+ }
+
+ interface GraphQLInterfaceTypeExtensions<_TSource = any, _TContext = any> {
+ apollo?: {
+ subgraph?: ApolloSubgraphExtensions<_TContext>;
+ };
}
- interface GraphQLObjectTypeConfig {
- resolveReference?: any;
+ interface GraphQLUnionTypeExtensions<_TSource = any, _TContext = any> {
+ apollo?: {
+ subgraph?: ApolloSubgraphExtensions<_TContext>;
+ };
}
}
@@ -81,7 +102,27 @@ export function transformSchema(
fields: () => replaceFields(config.fields),
});
- if (type.resolveReference) {
+ if (type.extensions?.apollo?.subgraph?.resolveReference) {
+ objectType.extensions = {
+ ...objectType.extensions,
+ apollo: {
+ ...objectType.extensions.apollo,
+ subgraph: {
+ ...objectType.extensions.apollo.subgraph,
+ resolveReference:
+ type.extensions.apollo.subgraph.resolveReference,
+ },
+ },
+ };
+ /**
+ * Backcompat for old versions of @apollo/subgraph which didn't use
+ * `extensions` This can be removed when support for @apollo/subgraph <
+ * 0.4.2 is dropped Reference:
+ * https://github.com/apollographql/federation/pull/1747
+ */
+ // @ts-expect-error (explanation above)
+ } else if (type.resolveReference) {
+ // @ts-expect-error (explanation above)
objectType.resolveReference = type.resolveReference;
}
diff --git a/packages/graphql/package.json b/packages/graphql/package.json
index f0ce659af..63b50555c 100644
--- a/packages/graphql/package.json
+++ b/packages/graphql/package.json
@@ -1,6 +1,6 @@
{
"name": "@nestjs/graphql",
- "version": "10.0.15",
+ "version": "10.1.4",
"description": "Nest - modern, fast, powerful node.js web framework (@graphql)",
"author": "Kamil Mysliwiec",
"license": "MIT",
@@ -18,37 +18,37 @@
"test:e2e:dev": "jest --config ./tests/jest-e2e.json --watch"
},
"dependencies": {
- "@graphql-tools/merge": "8.2.13",
- "@graphql-tools/schema": "8.3.13",
- "@graphql-tools/utils": "8.6.12",
- "@nestjs/mapped-types": "1.0.1",
+ "@graphql-tools/merge": "8.3.6",
+ "@graphql-tools/schema": "9.0.4",
+ "@graphql-tools/utils": "8.12.0",
+ "@nestjs/mapped-types": "1.2.0",
"chokidar": "3.5.3",
- "fast-glob": "3.2.11",
+ "fast-glob": "3.2.12",
"graphql-tag": "2.12.6",
"graphql-ws": "5.5.5",
"lodash": "4.17.21",
"normalize-path": "3.0.0",
"subscriptions-transport-ws": "0.11.0",
"tslib": "2.4.0",
- "uuid": "8.3.2",
- "ws": "8.7.0"
+ "uuid": "9.0.0",
+ "ws": "8.10.0"
},
"devDependencies": {
- "@apollo/subgraph": "0.4.2",
- "@nestjs/common": "8.4.6",
- "@nestjs/core": "8.4.6",
- "@nestjs/testing": "8.4.6",
+ "@apollo/subgraph": "0.5.1",
+ "@nestjs/common": "8.4.7",
+ "@nestjs/core": "8.4.7",
+ "@nestjs/testing": "8.4.7",
"graphql": "15.8.0",
"reflect-metadata": "0.1.13",
- "ts-morph": "15.0.0"
+ "ts-morph": "16.0.0"
},
"peerDependencies": {
"@apollo/subgraph": "^0.1.5 || ^0.3.0 || ^0.4.0 || ^2.0.0",
- "@nestjs/common": "^8.2.3",
- "@nestjs/core": "^8.2.3",
+ "@nestjs/common": "^8.2.3 || ^9.0.0",
+ "@nestjs/core": "^8.2.3 || ^9.0.0",
"graphql": "^15.8.0 || ^16.0.0",
"reflect-metadata": "^0.1.13",
- "ts-morph": "^13.0.2 || ^14.0.0 || ^15.0.0"
+ "ts-morph": "^13.0.2 || ^14.0.0 || ^15.0.0 || ^16.0.0"
},
"peerDependenciesMeta": {
"@apollo/subgraph": {
diff --git a/packages/graphql/tests/jest-e2e.json b/packages/graphql/tests/jest-e2e.json
index 2a17641b8..b6ce59843 100644
--- a/packages/graphql/tests/jest-e2e.json
+++ b/packages/graphql/tests/jest-e2e.json
@@ -4,11 +4,9 @@
"testEnvironment": "node",
"testRegex": ".spec.ts$",
"transform": {
- "^.+\\.(t|j)s$": "ts-jest"
- },
- "globals": {
- "ts-jest": {
- "tsconfig": "/../tsconfig.spec.json"
- }
+ "^.+\\.(t|j)s$": [
+ "ts-jest",
+ { "tsconfig": "/../tsconfig.spec.json", "isolatedModules": true }
+ ]
}
}
diff --git a/packages/graphql/tests/plugin/cases/.gitignore b/packages/graphql/tests/plugin/cases/.gitignore
new file mode 100644
index 000000000..508061b4e
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/.gitignore
@@ -0,0 +1 @@
+actual
diff --git a/packages/graphql/tests/plugin/cases/es5-eager-imports/author.model.ts b/packages/graphql/tests/plugin/cases/es5-eager-imports/author.model.ts
new file mode 100644
index 000000000..229c63e10
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/es5-eager-imports/author.model.ts
@@ -0,0 +1,7 @@
+declare const ObjectType: any;
+
+@ObjectType()
+export class Author {
+ name: string;
+ email: string;
+}
diff --git a/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/author.model.js b/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/author.model.js
new file mode 100644
index 000000000..11a718aa0
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/author.model.js
@@ -0,0 +1,12 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.Author = void 0;
+let Author = class Author {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { name: { type: () => String }, email: { type: () => String } };
+ }
+};
+Author = __decorate([
+ ObjectType()
+], Author);
+exports.Author = Author;
diff --git a/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/post.model.js b/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/post.model.js
new file mode 100644
index 000000000..4b50c9de6
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/es5-eager-imports/expected/post.model.js
@@ -0,0 +1,13 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.Post = void 0;
+const eager_import_0 = require("./author.model");
+let Post = class Post {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { author: { type: () => require("./author.model").Author } };
+ }
+};
+Post = __decorate([
+ ObjectType()
+], Post);
+exports.Post = Post;
diff --git a/packages/graphql/tests/plugin/cases/es5-eager-imports/post.model.ts b/packages/graphql/tests/plugin/cases/es5-eager-imports/post.model.ts
new file mode 100644
index 000000000..225538feb
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/es5-eager-imports/post.model.ts
@@ -0,0 +1,21 @@
+/**
+ * When code is downleveled to CommonJs imports typescript will try to remove all imports
+ * which lead to only a type. In this case we should re-create imports in the transform.
+ *
+ * Another problem might be if one ModelA uses ModelB and file
+ * containing the latest is not referenced anywhere else.
+ * In this case ModelA will reference in schema ModelB but ModelB
+ * will never appear in runtime code hence will never be executed and registered.
+ *
+ * For this case we create an 'eager' import in the begining of the file to make
+ * sure all types used in metadata is loaded into runtime
+ */
+
+import { Author } from './author.model';
+
+declare const ObjectType: any;
+
+@ObjectType()
+export class Post {
+ author: Author;
+}
diff --git a/packages/graphql/tests/plugin/cases/tsconfig.json b/packages/graphql/tests/plugin/cases/tsconfig.json
new file mode 100644
index 000000000..e908f47e3
--- /dev/null
+++ b/packages/graphql/tests/plugin/cases/tsconfig.json
@@ -0,0 +1,9 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es5",
+ "experimentalDecorators": true,
+ "sourceMap": true
+ },
+ "include": ["**/*.ts"]
+}
diff --git a/packages/graphql/tests/plugin/fixtures/create-cat-alt.dto.ts b/packages/graphql/tests/plugin/fixtures/create-cat-alt.dto.ts
index 541df2af9..0d2b3ff54 100644
--- a/packages/graphql/tests/plugin/fixtures/create-cat-alt.dto.ts
+++ b/packages/graphql/tests/plugin/fixtures/create-cat-alt.dto.ts
@@ -13,6 +13,7 @@ type AliasedType = {
};
type NumberAlias = number;
+@ObjectType()
export class CreateCatDto2 {
/**
* name description
@@ -56,16 +57,20 @@ export class CreateCatDto2 {
export const createCatDtoTextAltTranspiled = `var Status;
(function (Status) {
- Status[Status[\"ENABLED\"] = 0] = \"ENABLED\";
- Status[Status[\"DISABLED\"] = 1] = \"DISABLED\";
+ Status[Status["ENABLED"] = 0] = "ENABLED";
+ Status[Status["DISABLED"] = 1] = "DISABLED";
})(Status || (Status = {}));
-export class CreateCatDto2 {
+let CreateCatDto2 = class CreateCatDto2 {
constructor() {
this.age = 3;
this.status = Status.ENABLED;
}
static _GRAPHQL_METADATA_FACTORY() {
- return { name: { type: () => String, description: "name description" }, age: { type: () => Number, description: "test on age" }, tags: { type: () => [String] }, status: { type: () => Status }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, alias: { type: () => Object }, numberAlias: { type: () => Number }, union: { type: () => Object }, intersection: { type: () => Object }, optionalBoolean: { nullable: true, type: () => Boolean }, nested: { type: () => ({ first: { type: () => String }, second: { type: () => Number }, status: { type: () => Status }, tags: { type: () => [String] }, nodes: { type: () => [Object] }, alias: { type: () => Object }, numberAlias: { type: () => Number } }) }, tuple: { type: () => Object } };
+ return { name: { type: () => String, description: "name description" }, age: { type: () => Number, description: "test on age" }, tags: { type: () => [String] }, status: { type: () => Status }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, alias: { type: () => Object }, numberAlias: { type: () => Number }, union: { type: () => Object }, intersection: { type: () => Object }, optionalBoolean: { nullable: true, type: () => Boolean }, nested: { type: () => Object }, prop: { type: () => Object }, tuple: { type: () => Object } };
}
-}
+};
+CreateCatDto2 = __decorate([
+ ObjectType()
+], CreateCatDto2);
+export { CreateCatDto2 };
`;
diff --git a/packages/graphql/tests/plugin/fixtures/create-cat.dto.ts b/packages/graphql/tests/plugin/fixtures/create-cat.dto.ts
index 4bf0669aa..6c5482b46 100644
--- a/packages/graphql/tests/plugin/fixtures/create-cat.dto.ts
+++ b/packages/graphql/tests/plugin/fixtures/create-cat.dto.ts
@@ -12,6 +12,7 @@ interface Node {
id: number;
}
+@ObjectType()
export class CreateCatDto {
name: string;
age: number = 3;
@@ -28,18 +29,56 @@ export class CreateCatDto {
static staticProperty: string;
}
+
+@InputType()
+export class CreateCatInput {
+ name: string;
+ age: number = 3;
+ tags: string[];
+ status: Status = Status.ENABLED;
+ status2?: Status;
+ statusArr?: Status[];
+ readonly breed?: string;
+ nodes: Node[];
+ date: Date;
+
+ @HideField()
+ hidden: number;
+
+ static staticProperty: string;
+}
+
+@ArgsType()
+export class CreateCatArgs {
+ name: string;
+ age: number = 3;
+ tags: string[];
+ status: Status = Status.ENABLED;
+ status2?: Status;
+ statusArr?: Status[];
+ readonly breed?: string;
+ nodes: Node[];
+ date: Date;
+
+ @HideField()
+ hidden: number;
+
+ static staticProperty: string;
+
+ input: CreateCatInput;
+}
`;
export const createCatDtoTextTranspiled = `var Status;
(function (Status) {
- Status[Status[\"ENABLED\"] = 0] = \"ENABLED\";
- Status[Status[\"DISABLED\"] = 1] = \"DISABLED\";
+ Status[Status["ENABLED"] = 0] = "ENABLED";
+ Status[Status["DISABLED"] = 1] = "DISABLED";
})(Status || (Status = {}));
var OneValueEnum;
(function (OneValueEnum) {
- OneValueEnum[OneValueEnum[\"ONE\"] = 0] = \"ONE\";
+ OneValueEnum[OneValueEnum["ONE"] = 0] = "ONE";
})(OneValueEnum || (OneValueEnum = {}));
-export class CreateCatDto {
+let CreateCatDto = class CreateCatDto {
constructor() {
this.age = 3;
this.status = Status.ENABLED;
@@ -47,8 +86,44 @@ export class CreateCatDto {
static _GRAPHQL_METADATA_FACTORY() {
return { name: { type: () => String }, age: { type: () => Number }, tags: { type: () => [String] }, status: { type: () => Status }, status2: { nullable: true, type: () => Status }, statusArr: { nullable: true, type: () => [Status] }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, date: { type: () => Date } };
}
-}
+};
+__decorate([
+ HideField()
+], CreateCatDto.prototype, "hidden", void 0);
+CreateCatDto = __decorate([
+ ObjectType()
+], CreateCatDto);
+export { CreateCatDto };
+let CreateCatInput = class CreateCatInput {
+ constructor() {
+ this.age = 3;
+ this.status = Status.ENABLED;
+ }
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { name: { type: () => String }, age: { type: () => Number }, tags: { type: () => [String] }, status: { type: () => Status }, status2: { nullable: true, type: () => Status }, statusArr: { nullable: true, type: () => [Status] }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, date: { type: () => Date } };
+ }
+};
+__decorate([
+ HideField()
+], CreateCatInput.prototype, \"hidden\", void 0);
+CreateCatInput = __decorate([
+ InputType()
+], CreateCatInput);
+export { CreateCatInput };
+let CreateCatArgs = class CreateCatArgs {
+ constructor() {
+ this.age = 3;
+ this.status = Status.ENABLED;
+ }
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { name: { type: () => String }, age: { type: () => Number }, tags: { type: () => [String] }, status: { type: () => Status }, status2: { nullable: true, type: () => Status }, statusArr: { nullable: true, type: () => [Status] }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, date: { type: () => Date }, input: { type: () => require(\"./create-cat.input\").CreateCatInput } };
+ }
+};
__decorate([
HideField()
-], CreateCatDto.prototype, \"hidden\", void 0);
+], CreateCatArgs.prototype, \"hidden\", void 0);
+CreateCatArgs = __decorate([
+ ArgsType()
+], CreateCatArgs);
+export { CreateCatArgs };
`;
diff --git a/packages/graphql/tests/plugin/fixtures/deprecation.dto.ts b/packages/graphql/tests/plugin/fixtures/deprecation.dto.ts
new file mode 100644
index 000000000..f29937f03
--- /dev/null
+++ b/packages/graphql/tests/plugin/fixtures/deprecation.dto.ts
@@ -0,0 +1,27 @@
+export const deprecationDtoText = `
+@ObjectType()
+export class CreateCatDto2 {
+ /**
+ * name description
+ *
+ * @deprecated
+ */
+ name: string;
+
+ /**
+ * @deprecated consult docs for better alternative!
+ */
+ breed: string;
+}
+`;
+
+export const deprecationDtoTranspiled = `let CreateCatDto2 = class CreateCatDto2 {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { name: { type: () => String, description: "name description", deprecationReason: "deprecated" }, breed: { type: () => String, deprecationReason: "consult docs for better alternative!" } };
+ }
+};
+CreateCatDto2 = __decorate([
+ ObjectType()
+], CreateCatDto2);
+export { CreateCatDto2 };
+`;
diff --git a/packages/graphql/tests/plugin/fixtures/es5-class.dto.ts b/packages/graphql/tests/plugin/fixtures/es5-class.dto.ts
index 9dc05fbf5..246b4846d 100644
--- a/packages/graphql/tests/plugin/fixtures/es5-class.dto.ts
+++ b/packages/graphql/tests/plugin/fixtures/es5-class.dto.ts
@@ -2,6 +2,7 @@ export const es5CreateCatDtoText = `
import { Status } from './status';
import { CONSTANT_STRING, CONSTANT_OBJECT } from './constants';
+@ObjectType()
export class CreateCatDtoEs5 {
name: string = CONSTANT_STRING;
status: Status = Status.ENABLED;
@@ -9,11 +10,11 @@ export class CreateCatDtoEs5 {
}
`;
-export const es5CreateCatDtoTextTranspiled = `\"use strict\";
-Object.defineProperty(exports, \"__esModule\", { value: true });
+export const es5CreateCatDtoTextTranspiled = `"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateCatDtoEs5 = void 0;
-var status_1 = require(\"./status\");
-var constants_1 = require(\"./constants\");
+var status_1 = require("./status");
+var constants_1 = require("./constants");
var CreateCatDtoEs5 = /** @class */ (function () {
function CreateCatDtoEs5() {
this.name = constants_1.CONSTANT_STRING;
@@ -23,6 +24,9 @@ var CreateCatDtoEs5 = /** @class */ (function () {
CreateCatDtoEs5._GRAPHQL_METADATA_FACTORY = function () {
return { name: { type: function () { return String; } }, status: { type: function () { return Object; } }, obj: { type: function () { return Object; } } };
};
+ CreateCatDtoEs5 = __decorate([
+ ObjectType()
+ ], CreateCatDtoEs5);
return CreateCatDtoEs5;
}());
exports.CreateCatDtoEs5 = CreateCatDtoEs5;
diff --git a/packages/graphql/tests/plugin/fixtures/nullable.dto.ts b/packages/graphql/tests/plugin/fixtures/nullable.dto.ts
index b05e30d58..ec56de535 100644
--- a/packages/graphql/tests/plugin/fixtures/nullable.dto.ts
+++ b/packages/graphql/tests/plugin/fixtures/nullable.dto.ts
@@ -4,6 +4,7 @@ enum Status {
DISABLED
}
+@ObjectType()
export class NullableDto {
name: string | null;
age: number = 3;
@@ -22,7 +23,7 @@ export const nullableDtoTextTranspiled = `var Status;
Status[Status["ENABLED"] = 0] = "ENABLED";
Status[Status["DISABLED"] = 1] = "DISABLED";
})(Status || (Status = {}));
-export class NullableDto {
+let NullableDto = class NullableDto {
constructor() {
this.age = 3;
this.status = Status.ENABLED;
@@ -30,5 +31,9 @@ export class NullableDto {
static _GRAPHQL_METADATA_FACTORY() {
return { name: { nullable: true, type: () => String }, age: { type: () => Number }, tags: { type: () => [String] }, status: { type: () => Status }, status2: { nullable: true, type: () => Status }, statusArr: { nullable: true, type: () => [Status] }, breed: { nullable: true, type: () => String }, nodes: { type: () => [Object] }, date: { nullable: true, type: () => Date } };
}
-}
+};
+NullableDto = __decorate([
+ ObjectType()
+], NullableDto);
+export { NullableDto };
`;
diff --git a/packages/graphql/tests/plugin/model-class-visitor.spec.ts b/packages/graphql/tests/plugin/model-class-visitor.spec.ts
index c07130a24..41b7dec79 100644
--- a/packages/graphql/tests/plugin/model-class-visitor.spec.ts
+++ b/packages/graphql/tests/plugin/model-class-visitor.spec.ts
@@ -1,5 +1,8 @@
+import * as fs from 'fs';
import * as ts from 'typescript';
+import { InputType, InterfaceType, ObjectType } from '../../lib';
import { before } from '../../lib/plugin/compiler-plugin';
+import { PluginOptions } from '../../lib/plugin/merge-options';
import {
createCatDtoAltText,
createCatDtoTextAltTranspiled,
@@ -9,14 +12,68 @@ import {
createCatDtoTextTranspiled,
} from './fixtures/create-cat.dto';
import {
- es5CreateCatDtoText,
- es5CreateCatDtoTextTranspiled,
-} from './fixtures/es5-class.dto';
+ deprecationDtoText,
+ deprecationDtoTranspiled,
+} from './fixtures/deprecation.dto';
import {
nullableDtoText,
nullableDtoTextTranspiled,
} from './fixtures/nullable.dto';
+const defaultCompilerOptions: ts.CompilerOptions = {
+ module: ts.ModuleKind.ES2020,
+ target: ts.ScriptTarget.ES2020,
+ newLine: ts.NewLineKind.LineFeed,
+ noEmitHelpers: true,
+ strict: true,
+};
+
+function transpile(
+ source: string,
+ pluginOptions: PluginOptions,
+ compilerOptions = defaultCompilerOptions,
+): string {
+ const filename = 'create-cat.input.ts';
+ const fakeProgram = ts.createProgram([filename], compilerOptions);
+
+ const result = ts.transpileModule(source, {
+ compilerOptions: compilerOptions,
+ fileName: 'test.input.ts',
+ transformers: {
+ before: [before(pluginOptions, fakeProgram)],
+ },
+ });
+
+ return result.outputText;
+}
+
+function compileFiles(
+ rootDir: string,
+ file: string,
+ pluginOptions: PluginOptions = {},
+ compilerOptions = defaultCompilerOptions,
+) {
+ const caseDir = __dirname + rootDir;
+
+ const options: ts.CompilerOptions = {
+ ...compilerOptions,
+ rootDir: caseDir,
+ outDir: caseDir + '/actual',
+ };
+
+ const program = ts.createProgram([caseDir + '/' + file], options);
+
+ program.emit(undefined, undefined, undefined, undefined, {
+ before: [before(pluginOptions, program)],
+ });
+
+ const jsFile = file.replace(/\.ts$/, '.js');
+ const actual = fs.readFileSync(caseDir + '/actual/' + jsFile).toString();
+ const expected = fs.readFileSync(caseDir + '/expected/' + jsFile).toString();
+
+ return { actual, expected };
+}
+
describe('API model properties', () => {
it('should add the metadata factory when no decorators exist', () => {
const options: ts.CompilerOptions = {
@@ -69,27 +126,43 @@ describe('API model properties', () => {
});
it('should manage imports statements when code "downleveled"', () => {
- const options: ts.CompilerOptions = {
+ const compilerOptions: ts.CompilerOptions = {
+ ...defaultCompilerOptions,
module: ts.ModuleKind.CommonJS,
- target: ts.ScriptTarget.ES5,
+ };
+
+ const { actual, expected } = compileFiles(
+ '/cases/es5-eager-imports',
+ 'post.model.ts',
+ {},
+ compilerOptions,
+ );
+
+ expect(actual).toEqual(expected);
+ });
+
+ it('should support & understand nullable type unions', () => {
+ const options: ts.CompilerOptions = {
+ module: ts.ModuleKind.ES2020,
+ target: ts.ScriptTarget.ES2020,
newLine: ts.NewLineKind.LineFeed,
noEmitHelpers: true,
strict: true,
};
- const filename = 'es5-class.input.ts';
+ const filename = 'nullable.input.ts';
const fakeProgram = ts.createProgram([filename], options);
- const result = ts.transpileModule(es5CreateCatDtoText, {
+ const result = ts.transpileModule(nullableDtoText, {
compilerOptions: options,
fileName: filename,
transformers: {
before: [before({}, fakeProgram)],
},
});
- expect(result.outputText).toEqual(es5CreateCatDtoTextTranspiled);
+ expect(result.outputText).toEqual(nullableDtoTextTranspiled);
});
- it('should support & understand nullable type unions', () => {
+ it('should respect @deprecation tag from JsDoc', () => {
const options: ts.CompilerOptions = {
module: ts.ModuleKind.ES2020,
target: ts.ScriptTarget.ES2020,
@@ -97,16 +170,253 @@ describe('API model properties', () => {
noEmitHelpers: true,
strict: true,
};
- const filename = 'nullable.input.ts';
+ const filename = 'deprecation.input.ts';
const fakeProgram = ts.createProgram([filename], options);
- const result = ts.transpileModule(nullableDtoText, {
+ const result = ts.transpileModule(deprecationDtoText, {
compilerOptions: options,
fileName: filename,
transformers: {
- before: [before({}, fakeProgram)],
+ before: [before({ introspectComments: true }, fakeProgram)],
},
});
- expect(result.outputText).toEqual(nullableDtoTextTranspiled);
+ expect(result.outputText).toEqual(deprecationDtoTranspiled);
+ });
+
+ it('should process only classes decorated with one of supported decorators', () => {
+ const source = `
+@${ObjectType.name}()
+class ObjectTypeModel {
+ prop: string;
+}
+
+@${InputType.name}()
+class InputTypeModel {
+ prop: string;
+}
+
+@${InterfaceType.name}()
+class InterfaceTypeModel {
+ prop: string;
+}
+
+class NotAModel {
+ prop: string;
+}
+`;
+
+ const actual = transpile(source, {});
+ expect(actual).toMatchInlineSnapshot(`
+ "\"use strict\";
+ let ObjectTypeModel = class ObjectTypeModel {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { prop: { type: () => String } };
+ }
+ };
+ ObjectTypeModel = __decorate([
+ ObjectType()
+ ], ObjectTypeModel);
+ let InputTypeModel = class InputTypeModel {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { prop: { type: () => String } };
+ }
+ };
+ InputTypeModel = __decorate([
+ InputType()
+ ], InputTypeModel);
+ let InterfaceTypeModel = class InterfaceTypeModel {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { prop: { type: () => String } };
+ }
+ };
+ InterfaceTypeModel = __decorate([
+ InterfaceType()
+ ], InterfaceTypeModel);
+ class NotAModel {
+ }
+ "
+ `);
+ });
+
+ it('should process fields declared as getters ', () => {
+ const source = `
+@ObjectType()
+class ObjectTypeModel {
+ get prop(): string {}
+}
+`;
+
+ const actual = transpile(source, {});
+ expect(actual).toMatchInlineSnapshot(`
+ "\"use strict\";
+ let ObjectTypeModel = class ObjectTypeModel {
+ get prop() { }
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { prop: { type: () => String } };
+ }
+ };
+ ObjectTypeModel = __decorate([
+ ObjectType()
+ ], ObjectTypeModel);
+ "
+ `);
+ });
+
+ describe('should add description from JSDoc to class decorators argument', () => {
+ it('when there are no arguments on decorator', () => {
+ const source = `
+/** Test Description */
+@ObjectType()
+class ObjectTypeModel {}
+`;
+ const actual = transpile(source, { introspectComments: true });
+ expect(actual).toMatchInlineSnapshot(`
+ "\"use strict\";
+ /** Test Description */
+ let ObjectTypeModel = class ObjectTypeModel {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return {};
+ }
+ };
+ ObjectTypeModel = __decorate([
+ ObjectType({ description: \"Test Description\" })
+ ], ObjectTypeModel);
+ "
+ `);
+ });
+
+ it('when there are arguments on decorator', () => {
+ const source = `
+/** Test1 Description */
+@ObjectType({isAbstract: true})
+class Test1Model {}
+
+/** Test2 Description */
+@ObjectType('name', {isAbstract: true})
+class Test2Model {}
+`;
+ const actual = transpile(source, { introspectComments: true });
+ expect(actual).toMatchInlineSnapshot(`
+ "\"use strict\";
+ /** Test1 Description */
+ let Test1Model = class Test1Model {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return {};
+ }
+ };
+ Test1Model = __decorate([
+ ObjectType({ description: \"Test1 Description\", isAbstract: true })
+ ], Test1Model);
+ /** Test2 Description */
+ let Test2Model = class Test2Model {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return {};
+ }
+ };
+ Test2Model = __decorate([
+ ObjectType('name', { description: \"Test2 Description\", isAbstract: true })
+ ], Test2Model);
+ "
+ `);
+ });
+
+ it('should work if parameters passed as variable reference or function', () => {
+ const source = `
+/** test1 description */
+@ObjectType('name', getOptions())
+class Test1 {}
+
+/** test2 description */
+@ObjectType('name', options)
+class Test2 {}
+`;
+ const actual = transpile(source, { introspectComments: true });
+ expect(actual).toMatchInlineSnapshot(`
+ "\"use strict\";
+ /** test1 description */
+ let Test1 = class Test1 {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return {};
+ }
+ };
+ Test1 = __decorate([
+ ObjectType('name', { ...{ description: \"test1 description\" }, ...getOptions() })
+ ], Test1);
+ /** test2 description */
+ let Test2 = class Test2 {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return {};
+ }
+ };
+ Test2 = __decorate([
+ ObjectType('name', { ...{ description: \"test2 description\" }, ...options })
+ ], Test2);
+ "
+ `);
+ });
+ });
+
+ it('should amend Field decorator with introspection data', () => {
+ const source = `
+import { ID } from '@nestjs/graphql';
+
+const field3Options = {nullable: true};
+
+@ObjectType()
+class Model {
+ /**
+ * Description
+ */
+ @Field(() => ID)
+ field: string;
+
+ /**
+ * Description
+ */
+ @Field(() => ID, {nullable: true})
+ field1: string;
+
+ /**
+ * Description
+ */
+ @Field({nullable: false})
+ field2?: string;
+
+ /**
+ * Description
+ */
+ @Field(field3Options)
+ field3: string;
+
+ name: string;
+}
+`;
+
+ const actual = transpile(source, { introspectComments: true });
+ expect(actual).toMatchInlineSnapshot(`
+ "import { ID } from '@nestjs/graphql';
+ const field3Options = { nullable: true };
+ let Model = class Model {
+ static _GRAPHQL_METADATA_FACTORY() {
+ return { name: { type: () => String } };
+ }
+ };
+ __decorate([
+ Field(() => ID, { description: \"Description\" })
+ ], Model.prototype, \"field\", void 0);
+ __decorate([
+ Field(() => ID, { description: \"Description\", nullable: true })
+ ], Model.prototype, \"field1\", void 0);
+ __decorate([
+ Field(() => String, { nullable: false, description: \"Description\" })
+ ], Model.prototype, \"field2\", void 0);
+ __decorate([
+ Field(() => String, { ...{ description: \"Description\" }, ...field3Options })
+ ], Model.prototype, \"field3\", void 0);
+ Model = __decorate([
+ ObjectType()
+ ], Model);
+ "
+ `);
});
});
diff --git a/packages/graphql/tests/plugin/plugin-utils.spec.ts b/packages/graphql/tests/plugin/plugin-utils.spec.ts
new file mode 100644
index 000000000..c5b142860
--- /dev/null
+++ b/packages/graphql/tests/plugin/plugin-utils.spec.ts
@@ -0,0 +1,53 @@
+import { replaceImportPath } from '../../lib/plugin/utils/plugin-utils';
+
+describe('plugin-utils', () => {
+ describe('replaceImportPath', () => {
+ it('should replace path to relative', () => {
+ const actual = replaceImportPath(
+ 'import("/root/project/src/author.model").Author',
+ '/root/project/src/post.model.ts',
+ );
+
+ expect(actual).toStrictEqual({
+ typeReference: 'require("./author.model").Author',
+ importPath: './author.model',
+ });
+ });
+
+ it('should shorten path if it points to node_modules', () => {
+ const actual = replaceImportPath(
+ 'import("/root/project/src/node_modules/dependency/author.model").Author',
+ '/root/project/src/post.model.ts',
+ );
+
+ expect(actual).toStrictEqual({
+ typeReference: 'require("dependency/author.model").Author',
+ importPath: 'dependency/author.model',
+ });
+ });
+
+ it('should shorten path if it points to node_modules/@types', () => {
+ const actual = replaceImportPath(
+ 'import("/root/project/src/node_modules/@types/dependency/author.model").Author',
+ '/root/project/src/post.model.ts',
+ );
+
+ expect(actual).toStrictEqual({
+ typeReference: 'require("dependency/author.model").Author',
+ importPath: 'dependency/author.model',
+ });
+ });
+
+ it('should shorten path if it points to dependency index file', () => {
+ const actual = replaceImportPath(
+ 'import("/root/project/src/node_modules/dependency/index").Author',
+ '/root/project/src/post.model.ts',
+ );
+
+ expect(actual).toStrictEqual({
+ typeReference: 'require("dependency").Author',
+ importPath: 'dependency',
+ });
+ });
+ });
+});
diff --git a/packages/graphql/tests/plugin/type-helpers/intersection-type.helper.spec.ts b/packages/graphql/tests/plugin/type-helpers/intersection-type.helper.spec.ts
index 639bab984..83268055d 100644
--- a/packages/graphql/tests/plugin/type-helpers/intersection-type.helper.spec.ts
+++ b/packages/graphql/tests/plugin/type-helpers/intersection-type.helper.spec.ts
@@ -2,11 +2,11 @@ import {
Directive,
Extensions,
Field,
+ IntersectionType,
ObjectType,
-} from '../../../lib/decorators';
+} from '../../../lib';
import { METADATA_FACTORY_NAME } from '../../../lib/plugin/plugin-constants';
import { getFieldsAndDecoratorForType } from '../../../lib/schema-builder/utils/get-fields-and-decorator.util';
-import { IntersectionType } from '../../../lib/type-helpers';
describe('IntersectionType', () => {
@ObjectType()
@@ -29,6 +29,9 @@ describe('IntersectionType', () => {
firstName?: string;
+ @Field(() => [String])
+ hobbies?: string[];
+
static [METADATA_FACTORY_NAME]() {
return {
firstName: { nullable: true, type: () => String },
@@ -41,27 +44,36 @@ describe('IntersectionType', () => {
it('should inherit all fields from two types', () => {
const prototype = Object.getPrototypeOf(UpdateUserDto);
const { fields } = getFieldsAndDecoratorForType(prototype);
- expect(fields.length).toEqual(4);
- expect(fields[0].name).toEqual('login');
- expect(fields[1].name).toEqual('password');
- expect(fields[2].name).toEqual('lastName');
- expect(fields[3].name).toEqual('firstName');
- expect(fields[0].directives.length).toEqual(1);
- expect(fields[0].directives).toContainEqual({
+ const [
+ loginField,
+ passwordField,
+ lastNameField,
+ hobbiesField,
+ firstNameField,
+ ] = fields;
+ expect(fields.length).toEqual(5);
+ expect(loginField.name).toEqual('login');
+ expect(passwordField.name).toEqual('password');
+ expect(lastNameField.name).toEqual('lastName');
+ expect(hobbiesField.name).toEqual('hobbies');
+ expect(hobbiesField.options).toEqual({ isArray: true, arrayDepth: 1 });
+ expect(firstNameField.name).toEqual('firstName');
+ expect(loginField.directives.length).toEqual(1);
+ expect(loginField.directives).toContainEqual({
fieldName: 'login',
sdl: '@upper',
target: prototype,
});
- expect(fields[0].extensions).toEqual({
+ expect(loginField.extensions).toEqual({
extension: true,
});
- expect(fields[2].directives.length).toEqual(1);
- expect(fields[2].directives).toContainEqual({
+ expect(lastNameField.directives.length).toEqual(1);
+ expect(lastNameField.directives).toContainEqual({
fieldName: 'lastName',
sdl: '@upper',
target: prototype,
});
- expect(fields[2].extensions).toEqual({
+ expect(lastNameField.extensions).toEqual({
extension: true,
});
});
diff --git a/packages/graphql/tests/schema-builder/factories/root-type.factory.spec.ts b/packages/graphql/tests/schema-builder/factories/root-type.factory.spec.ts
new file mode 100644
index 000000000..6d34ee369
--- /dev/null
+++ b/packages/graphql/tests/schema-builder/factories/root-type.factory.spec.ts
@@ -0,0 +1,126 @@
+import { Test } from '@nestjs/testing';
+import {
+ GraphQLSchemaBuilderModule,
+ Mutation,
+ Query,
+ Resolver,
+ TypeMetadataStorage,
+} from '../../../lib';
+import { MultipleFieldsWithSameNameError } from '../../../lib/schema-builder/errors/multiple-fields-with-same-name.error';
+import { RootTypeFactory } from '../../../lib/schema-builder/factories/root-type.factory';
+import { ResolverTypeMetadata } from '../../../lib/schema-builder/metadata';
+import { LazyMetadataStorage } from '../../../lib/schema-builder/storages/lazy-metadata.storage';
+
+function booleanResolverFactory(Decorator: typeof Query | typeof Mutation) {
+ @Resolver()
+ class BooleanResolver {
+ @Decorator(() => Boolean)
+ bool() {
+ return true;
+ }
+ }
+
+ return BooleanResolver;
+}
+
+@Resolver()
+class StringResolver {
+ @Query(() => String)
+ str() {
+ return '';
+ }
+}
+
+describe('RootTypeFactory', () => {
+ let rootTypeFactory: RootTypeFactory;
+
+ beforeEach(async () => {
+ const module = await Test.createTestingModule({
+ imports: [GraphQLSchemaBuilderModule],
+ }).compile();
+
+ rootTypeFactory = module.get(RootTypeFactory);
+ });
+
+ afterEach(() => {
+ TypeMetadataStorage.clear();
+ });
+
+ describe('generateFields', () => {
+ describe.each([
+ ['queries', Query, 'Query', TypeMetadataStorage.getQueriesMetadata],
+ [
+ 'mutations',
+ Mutation,
+ 'Mutation',
+ TypeMetadataStorage.getMutationsMetadata,
+ ],
+ ])(
+ 'when duplicate %s are defined',
+ (_, Decorator, objectTypeName, metadataFn) => {
+ let metadata: ResolverTypeMetadata[];
+
+ beforeEach(() => {
+ LazyMetadataStorage.load([
+ booleanResolverFactory(Decorator),
+ booleanResolverFactory(Decorator),
+ ]);
+ TypeMetadataStorage.compile();
+
+ metadata = metadataFn.apply(TypeMetadataStorage);
+ });
+
+ it('should throw an error with noDuplicateFields: true', () => {
+ expect(() =>
+ rootTypeFactory.generateFields(
+ metadata,
+ { noDuplicatedFields: true },
+ objectTypeName,
+ ),
+ ).toThrow(MultipleFieldsWithSameNameError);
+ });
+
+ it('should create GraphQL fields with noDuplicateFields: false', () => {
+ const fields = rootTypeFactory.generateFields(
+ metadata,
+ { noDuplicatedFields: false },
+ objectTypeName,
+ );
+ expect(fields).toHaveProperty('bool');
+ });
+
+ it('should create GraphQL fields with noDuplicateFields undefined', () => {
+ const fields = rootTypeFactory.generateFields(
+ metadata,
+ {},
+ objectTypeName,
+ );
+ expect(fields).toHaveProperty('bool');
+ });
+ },
+ );
+
+ describe('when no duplicate queries are found', () => {
+ beforeEach(() => {
+ LazyMetadataStorage.load([
+ booleanResolverFactory(Query),
+ StringResolver,
+ ]);
+ TypeMetadataStorage.compile();
+ });
+
+ it('should correctly create GraphQL fields', () => {
+ const queriesMetadata = TypeMetadataStorage.getQueriesMetadata();
+
+ const fields = rootTypeFactory.generateFields(
+ queriesMetadata,
+ { noDuplicatedFields: true },
+ 'Query',
+ );
+
+ expect(fields).toHaveProperty('bool');
+ expect(fields).toHaveProperty('str');
+ });
+ });
+ });
+});
diff --git a/packages/graphql/tests/schema-builder/storages/field-directive.collection.spec.ts b/packages/graphql/tests/schema-builder/storages/field-directive.collection.spec.ts
new file mode 100644
index 000000000..363e48a81
--- /dev/null
+++ b/packages/graphql/tests/schema-builder/storages/field-directive.collection.spec.ts
@@ -0,0 +1,76 @@
+import { FieldDirectiveCollection } from '../../../lib/schema-builder/collections/';
+import { PropertyDirectiveMetadata } from '../../../lib/schema-builder/metadata';
+
+describe('FieldDirectiveCollection', () => {
+ const directive1: PropertyDirectiveMetadata = {
+ fieldName: 'foo',
+ sdl: '@foo',
+ target: () => {},
+ };
+ const directive2: PropertyDirectiveMetadata = {
+ fieldName: 'bar',
+ sdl: '@bar',
+ target: () => {},
+ };
+ const directive3: PropertyDirectiveMetadata = {
+ fieldName: 'baz',
+ sdl: '@baz',
+ target: () => {},
+ };
+
+ it('should keep a list of all SDLs added', () => {
+ const map = new FieldDirectiveCollection();
+ map.add(directive1);
+ map.add(directive2);
+ map.add(directive3);
+
+ expect([...map.sdls]).toEqual(['@foo', '@bar', '@baz']);
+ });
+
+ it('should keep a list of all fieldName added', () => {
+ const map = new FieldDirectiveCollection();
+ map.add(directive1);
+ map.add(directive2);
+ map.add(directive3);
+
+ expect([...map.fieldNames]).toEqual(['foo', 'bar', 'baz']);
+ });
+
+ it('should add 2 different directives on the same field', () => {
+ const map = new FieldDirectiveCollection();
+ const directive1Alt: PropertyDirectiveMetadata = {
+ fieldName: 'foo',
+ sdl: '@bar',
+ target: () => {},
+ };
+ map.add(directive1);
+ map.add(directive1Alt);
+
+ expect(map.getByName('foo')).toEqual([directive1, directive1Alt]);
+ });
+
+ it('should add 2 different fields with the same directive', () => {
+ const map = new FieldDirectiveCollection();
+ const directive1Alt: PropertyDirectiveMetadata = {
+ fieldName: 'bar',
+ sdl: '@foo',
+ target: () => {},
+ };
+ map.add(directive1);
+ map.add(directive1Alt);
+
+ expect(map.getByName('foo')).toEqual([directive1]);
+ expect(map.getByName('bar')).toEqual([directive1Alt]);
+ });
+
+ it('should NOT the same directive on the same field twice', () => {
+ const map = new FieldDirectiveCollection();
+ map.add(directive1);
+ map.add(directive1);
+
+ const directives = map.getByName('foo');
+
+ expect(directives).toEqual([directive1]);
+ expect(directives.length).toEqual(1);
+ });
+});
diff --git a/packages/graphql/tests/schema-builder/storages/metadata-by-name.collection.spec.ts b/packages/graphql/tests/schema-builder/storages/metadata-by-name.collection.spec.ts
new file mode 100644
index 000000000..a3db1edf4
--- /dev/null
+++ b/packages/graphql/tests/schema-builder/storages/metadata-by-name.collection.spec.ts
@@ -0,0 +1,36 @@
+import { MetadataByNameCollection } from '../../../lib/schema-builder/collections/';
+
+describe('MetadataByNameCollection', () => {
+ it('should not add multiple values under the same name', () => {
+ const map = new MetadataByNameCollection();
+ map.add('foo', 'uniqueName1');
+ map.add('bar', 'uniqueName2');
+ map.add('baz', 'uniqueName1');
+
+ expect(map.getByName('uniqueName1')).toBe('foo');
+ expect(map.getByName('uniqueName2')).toBe('bar');
+ expect(map.getAll().length).toBe(2);
+ });
+
+ it('should not add multiple values under the same name even in reverse', () => {
+ const map = new MetadataByNameCollection();
+ map.unshift('foo', 'uniqueName1');
+ map.unshift('bar', 'uniqueName2');
+ map.unshift('baz', 'uniqueName1');
+
+ expect(map.getByName('uniqueName1')).toBe('foo');
+ expect(map.getByName('uniqueName2')).toBe('bar');
+ expect(map.getAll().length).toBe(2);
+ });
+
+ it('should add items in reverse', () => {
+ const map = new MetadataByNameCollection();
+ map.add('foo', 'uniqueName1');
+ map.unshift('bar', 'uniqueName2');
+
+ const [first, second] = map.getAll();
+
+ expect(first).toBe('bar');
+ expect(second).toBe('foo');
+ });
+});
diff --git a/packages/graphql/tests/schema-builder/storages/metadata-list-by-name.collection.spec.ts b/packages/graphql/tests/schema-builder/storages/metadata-list-by-name.collection.spec.ts
new file mode 100644
index 000000000..deac0f22c
--- /dev/null
+++ b/packages/graphql/tests/schema-builder/storages/metadata-list-by-name.collection.spec.ts
@@ -0,0 +1,34 @@
+import { MetadataListByNameCollection } from '../../../lib/schema-builder/collections/';
+
+describe('MapArrayByName', () => {
+ it('should return an empty array if a name is not found', () => {
+ const map = new MetadataListByNameCollection();
+ const possibleArray = map.getByName('unknown');
+ expect(Array.isArray(possibleArray)).toBe(true);
+ expect(possibleArray.length).toBe(0);
+ });
+
+ it('should continuously add values to an array', () => {
+ const map = new MetadataListByNameCollection();
+ map.add('foo', 'uniqueName1');
+ map.add('baz', 'uniqueName1');
+ map.add('bar', 'uniqueName2');
+
+ const uniqueName1Value = map.getByName('uniqueName1');
+ const uniqueName2Value = map.getByName('uniqueName2');
+
+ expect(uniqueName1Value).toEqual(['foo', 'baz']);
+ expect(uniqueName2Value).toEqual(['bar']);
+ });
+
+ it('should return a flat array of all values', () => {
+ const map = new MetadataListByNameCollection();
+ map.add('foo', 'uniqueName1');
+ map.add('baz', 'uniqueName1');
+ map.add('bar', 'uniqueName2');
+
+ const allValues = map.getAll();
+
+ expect(allValues).toEqual(['foo', 'baz', 'bar']);
+ });
+});
diff --git a/packages/graphql/tests/utils/get-number-of-arguments.util.spec.ts b/packages/graphql/tests/utils/get-number-of-arguments.util.spec.ts
index 7ae5e4414..20c175226 100644
--- a/packages/graphql/tests/utils/get-number-of-arguments.util.spec.ts
+++ b/packages/graphql/tests/utils/get-number-of-arguments.util.spec.ts
@@ -1,4 +1,4 @@
-import { getNumberOfArguments } from '../../lib/utils';
+import { getNumberOfArguments, stringifyWithoutQuotes } from '../../lib/utils';
describe('getNumberOfArguments', () => {
describe('when using function', () => {
@@ -203,3 +203,14 @@ describe('getNumberOfArguments', () => {
});
});
});
+
+describe('stringifyWithoutQuotes', () => {
+ it('should stringify object correctly', () => {
+ const obj = {
+ name: '@tag',
+ as: '@mytag',
+ };
+
+ expect(stringifyWithoutQuotes(obj)).toBe('{ name: "@tag", as: "@mytag" }');
+ });
+});
diff --git a/packages/graphql/tsconfig.spec.json b/packages/graphql/tsconfig.spec.json
index 57a8729db..b08ae9728 100644
--- a/packages/graphql/tsconfig.spec.json
+++ b/packages/graphql/tsconfig.spec.json
@@ -1,6 +1,7 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
+ "sourceMap": true,
"outDir": "./dist/tests",
"rootDir": ".",
"types": ["jest", "node"]
diff --git a/packages/mercurius/lib/utils/build-mercurius-federated-schema.util.ts b/packages/mercurius/lib/utils/build-mercurius-federated-schema.util.ts
index 2709a30d9..ce6a19615 100644
--- a/packages/mercurius/lib/utils/build-mercurius-federated-schema.util.ts
+++ b/packages/mercurius/lib/utils/build-mercurius-federated-schema.util.ts
@@ -2,7 +2,6 @@ import { loadPackage } from '@nestjs/common/utils/load-package.util';
import { transformSchema } from '@nestjs/graphql';
import { BuildFederatedSchemaOptions } from '@nestjs/graphql';
import { GraphQLSchema, isObjectType, buildASTSchema } from 'graphql';
-import { forEach } from 'lodash';
export function buildMercuriusFederatedSchema({
typeDefs,
@@ -22,7 +21,7 @@ export function buildMercuriusFederatedSchema({
executableSchema = transformSchema(executableSchema, (type) => {
if (isObjectType(type)) {
const isSubscription = type.name === 'Subscription';
- forEach(type.getFields(), (value, key) => {
+ for (const [key, value] of Object.entries(type.getFields())) {
if (isSubscription && subscriptionResolvers) {
const resolver = subscriptionResolvers[key];
if (resolver && !value.subscribe) {
@@ -43,7 +42,7 @@ export function buildMercuriusFederatedSchema({
};
};
}
- });
+ }
}
return type;
});
diff --git a/packages/mercurius/lib/utils/transform-schema.util.ts b/packages/mercurius/lib/utils/transform-schema.util.ts
index 33c00e882..ddde4d5de 100644
--- a/packages/mercurius/lib/utils/transform-schema.util.ts
+++ b/packages/mercurius/lib/utils/transform-schema.util.ts
@@ -145,11 +145,19 @@ export function transformFederatedSchema(schema: GraphQLSchema) {
throw new MER_ERR_GQL_GATEWAY_INVALID_SCHEMA(__typename);
}
- const resolveReference = (type as any).resolveReference
- ? (type as any).resolveReference
- : function defaultResolveReference() {
- return reference;
- };
+ const resolveReference =
+ type.extensions?.apollo?.subgraph?.resolveReference ??
+ /**
+ * Backcompat for old versions of @apollo/subgraph which didn't use
+ * `extensions` This can be removed when support for
+ * @apollo/subgraph < 0.4.2 is dropped Reference:
+ * https://github.com/apollographql/federation/pull/1747
+ */
+ // @ts-expect-error (explanation above)
+ type.resolveReference ??
+ function defaultResolveReference() {
+ return reference;
+ };
const result = resolveReference(reference, {}, context, info);
diff --git a/packages/mercurius/package.json b/packages/mercurius/package.json
index 79ba73543..62a3b20d8 100644
--- a/packages/mercurius/package.json
+++ b/packages/mercurius/package.json
@@ -1,6 +1,6 @@
{
"name": "@nestjs/mercurius",
- "version": "10.0.14",
+ "version": "10.1.4",
"description": "Nest - modern, fast, powerful node.js web framework (@graphql)",
"author": "Kamil Mysliwiec",
"license": "MIT",
@@ -27,17 +27,18 @@
"tslib": "2.4.0"
},
"devDependencies": {
- "@nestjs/common": "8.4.6",
- "@nestjs/platform-fastify": "8.4.6",
- "@nestjs/testing": "8.4.6",
- "fastify": "3.29.0",
- "mercurius": "8.12.2",
- "mercurius-integration-testing": "4.0.0"
+ "@nestjs/common": "8.4.7",
+ "@nestjs/platform-fastify": "8.4.7",
+ "@nestjs/testing": "8.4.7",
+ "fastify": "4.9.2",
+ "mercurius": "8.13.1",
+ "mercurius-integration-testing": "6.0.1"
},
"peerDependencies": {
- "@nestjs/common": "^8.2.3",
+ "@nestjs/common": "^8.2.3 || ^9.0.0",
"@nestjs/graphql": "^10.0.0",
- "fastify": "^3.25.0",
- "mercurius": "^8.12.0 || ^9.0.0"
+ "fastify": "^3.25.0 || ^4.0.0",
+ "graphql": "^15.8.0 || ^16.0.0",
+ "mercurius": "^8.12.0 || ^9.0.0 || ^10.0.0"
}
}
diff --git a/packages/mercurius/tests/jest-e2e.ts b/packages/mercurius/tests/jest-e2e.ts
index c2b5bf072..5f719e18d 100644
--- a/packages/mercurius/tests/jest-e2e.ts
+++ b/packages/mercurius/tests/jest-e2e.ts
@@ -12,15 +12,13 @@ const config: Config.InitialOptions = {
testRegex: '.spec.ts$',
moduleNameMapper,
transform: {
- '^.+\\.(t|j)s$': 'ts-jest',
+ '^.+\\.(t|j)s$': [
+ 'ts-jest',
+ { tsconfig: '/tsconfig.spec.json', isolatedModules: true },
+ ],
},
coverageDirectory: '../coverage',
testEnvironment: 'node',
- globals: {
- 'ts-jest': {
- tsconfig: '/tsconfig.spec.json',
- },
- },
};
export default config;
diff --git a/yarn.lock b/yarn.lock
index dc08a5c35..d3098792e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -9,43 +9,86 @@
dependencies:
"@jridgewell/trace-mapping" "^0.3.0"
+"@apollo/cache-control-types@^1.0.2":
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/@apollo/cache-control-types/-/cache-control-types-1.0.2.tgz#f42ed3563acc7f1f50617d65d208483977adc68e"
+ integrity sha512-Por80co1eUm4ATsvjCOoS/tIR8PHxqVjsA6z76I6Vw0rFn4cgyVElQcmQDIZiYsy41k8e5xkrMRECkM2WR8pNw==
+
+"@apollo/composition@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/composition/-/composition-2.1.4.tgz#ce89f61869fe9d6614ca3b4e5206773d9acf15da"
+ integrity sha512-M72m29u4Zx0EHaLO989YGH+shnRE3ADKRtOSe3xx2eESHpN5GuugihQF4bdGKBFpseKBaJwl0x060eq8MVjSeg==
+ dependencies:
+ "@apollo/federation-internals" "^2.1.4"
+ "@apollo/query-graphs" "^2.1.4"
+
"@apollo/core-schema@^0.2.0":
version "0.2.0"
resolved "https://registry.yarnpkg.com/@apollo/core-schema/-/core-schema-0.2.0.tgz#4eb529ee27553eeb6c18cd27eb0b94f2bd8b22a8"
integrity sha512-bhzZMIyzP3rynXwtUuEt2ENJIgKd9P/iR98VsuA3tOyYdWPjD5BfsrdWO0oIJXW/pjbbr0oHX5gqutFRKYuwAA==
-"@apollo/federation@^0.36.2":
- version "0.36.2"
- resolved "https://registry.yarnpkg.com/@apollo/federation/-/federation-0.36.2.tgz#bc37e668cb541dfdd0d76eeb20e9b39e8a29365c"
- integrity sha512-2yqHevdz41wR/fZI+OEk7ibDlEWWhHxXg7ABT8KqHHS5VtKGIwbcekf3kxJXQWIHSXNuHu8r2BcEGJO7JqY8ww==
+"@apollo/federation-internals@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/federation-internals/-/federation-internals-2.1.4.tgz#aa475c51fbc91d9e37e9a6e69446412ab8e32b88"
+ integrity sha512-Fpln5hHEh0Jjy0vaTpIlv1SF+zg2cjunsH2X5QDHwKOXoHsT4o7LF+Duoy7LgZj6W3HNW9Z/srmuOXXNTl2gjw==
+ dependencies:
+ chalk "^4.1.0"
+ js-levenshtein "^1.1.6"
+
+"@apollo/federation@^0.37.1":
+ version "0.37.1"
+ resolved "https://registry.yarnpkg.com/@apollo/federation/-/federation-0.37.1.tgz#526e6be32cd012b15734738d5e060e641df5bbbc"
+ integrity sha512-cLoBrBLt2dUEUmfISvGJ9YevnRGWhj+bVVJ8pP0bBrLfy1GWRYrsV8Jd87U2YeMEp7wuYM6M2PjE4Oy6PBMf2w==
dependencies:
- "@apollo/subgraph" "^0.4.2"
+ "@apollo/subgraph" "^0.5.1"
apollo-server-types "^3.0.2"
lodash.xorby "^4.7.0"
-"@apollo/gateway@0.51.0":
- version "0.51.0"
- resolved "https://registry.yarnpkg.com/@apollo/gateway/-/gateway-0.51.0.tgz#b3f44653474f7a5f7771349928bc02ab1660db3b"
- integrity sha512-itFIAHj7h/r5QQbYe4tsYMfuQUdPC1WEHd9O8UHiIY3lU7Mo4ALpbHPs5W7LEMXHhHaLEvo/MI+sZ7BBRDzb4Q==
+"@apollo/gateway-v2@npm:@apollo/gateway@2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/gateway/-/gateway-2.1.4.tgz#f8aac42450e793f3e3f23b8a6e8c4170b254cf1c"
+ integrity sha512-EIKHZFdaaNEzySs48b7r6BEXVTiS4pi/yI2OVPWkEUbkVnk7NPlQNIhDXtxSeIgEY1l79PEZ9Jw09QqtjTFoTg==
+ dependencies:
+ "@apollo/composition" "^2.1.4"
+ "@apollo/federation-internals" "^2.1.4"
+ "@apollo/query-planner" "^2.1.4"
+ "@apollo/server-gateway-interface" "^1.0.2"
+ "@apollo/usage-reporting-protobuf" "^4.0.0"
+ "@apollo/utils.createhash" "^1.1.0"
+ "@apollo/utils.fetcher" "^1.1.0"
+ "@apollo/utils.isnodelike" "^1.1.0"
+ "@apollo/utils.logger" "^1.0.0"
+ "@josephg/resolvable" "^1.0.1"
+ "@opentelemetry/api" "^1.0.1"
+ "@types/node-fetch" "^2.6.2"
+ async-retry "^1.3.3"
+ loglevel "^1.6.1"
+ lru-cache "^7.13.1"
+ make-fetch-happen "^10.1.2"
+ node-abort-controller "^3.0.1"
+ node-fetch "^2.6.7"
+
+"@apollo/gateway@0.52.1":
+ version "0.52.1"
+ resolved "https://registry.yarnpkg.com/@apollo/gateway/-/gateway-0.52.1.tgz#e07228e5e53745434eb337e346b205e9aa3e19d8"
+ integrity sha512-FRnQQLxEovuDU1ILh2mLD16u/nk8hWYZ1B89q1owFZLG/ZnrWkYh3+i+gbAMzNALpCTtkulHbhQBqJQHAiNUbg==
dependencies:
"@apollo/core-schema" "^0.2.0"
- "@apollo/federation" "^0.36.2"
- "@apollo/query-planner" "^0.10.2"
+ "@apollo/federation" "^0.37.1"
+ "@apollo/query-planner" "^0.11.1"
+ "@apollo/server-gateway-interface" "^1.0.2"
"@apollo/utils.createhash" "^1.0.0"
"@apollo/utils.fetcher" "^1.0.0"
"@apollo/utils.logger" "^1.0.0"
"@josephg/resolvable" "^1.0.1"
"@opentelemetry/api" "^1.0.1"
- "@types/node-fetch" "2.6.1"
+ "@types/node-fetch" "2.6.2"
apollo-reporting-protobuf "^0.8.0 || ^3.0.0"
- apollo-server-caching "^0.7.0 || ^3.0.0"
- apollo-server-core "^2.23.0 || ^3.0.0"
- apollo-server-errors "^2.5.0 || ^3.0.0"
- apollo-server-types "^0.9.0 || ^3.0.0"
async-retry "^1.3.3"
loglevel "^1.6.1"
+ lru-cache "^7.13.1"
make-fetch-happen "^10.1.2"
- pretty-format "^27.4.6"
+ pretty-format "^28.0.0"
"@apollo/protobufjs@1.2.2":
version "1.2.2"
@@ -66,19 +109,111 @@
"@types/node" "^10.1.0"
long "^4.0.0"
-"@apollo/query-planner@^0.10.2":
- version "0.10.2"
- resolved "https://registry.yarnpkg.com/@apollo/query-planner/-/query-planner-0.10.2.tgz#e71d4bf794787229da49f23421a6a9253dcc9775"
- integrity sha512-A9pqfaoDrfWwewkBcRmXsTxTctRtkiPi+uQ86CJTfxz8ZfNw/KEgr0CdFCzHLcToo4SQDBFLOsb4kDdo2jjxRg==
+"@apollo/protobufjs@1.2.4":
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.2.4.tgz#d913e7627210ec5efd758ceeb751c776c68ba133"
+ integrity sha512-npVJ9NVU/pynj+SCU+fambvTneJDyCnif738DnZ7pCxdDtzeEz7WkpSIq5wNUmWm5Td55N+S2xfqZ+WP4hDLng==
+ dependencies:
+ "@protobufjs/aspromise" "^1.1.2"
+ "@protobufjs/base64" "^1.1.2"
+ "@protobufjs/codegen" "^2.0.4"
+ "@protobufjs/eventemitter" "^1.1.0"
+ "@protobufjs/fetch" "^1.1.0"
+ "@protobufjs/float" "^1.0.2"
+ "@protobufjs/inquire" "^1.1.0"
+ "@protobufjs/path" "^1.1.2"
+ "@protobufjs/pool" "^1.1.0"
+ "@protobufjs/utf8" "^1.1.0"
+ "@types/long" "^4.0.0"
+ "@types/node" "^10.1.0"
+ long "^4.0.0"
+
+"@apollo/protobufjs@1.2.6":
+ version "1.2.6"
+ resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.2.6.tgz#d601e65211e06ae1432bf5993a1a0105f2862f27"
+ integrity sha512-Wqo1oSHNUj/jxmsVp4iR3I480p6qdqHikn38lKrFhfzcDJ7lwd7Ck7cHRl4JE81tWNArl77xhnG/OkZhxKBYOw==
+ dependencies:
+ "@protobufjs/aspromise" "^1.1.2"
+ "@protobufjs/base64" "^1.1.2"
+ "@protobufjs/codegen" "^2.0.4"
+ "@protobufjs/eventemitter" "^1.1.0"
+ "@protobufjs/fetch" "^1.1.0"
+ "@protobufjs/float" "^1.0.2"
+ "@protobufjs/inquire" "^1.1.0"
+ "@protobufjs/path" "^1.1.2"
+ "@protobufjs/pool" "^1.1.0"
+ "@protobufjs/utf8" "^1.1.0"
+ "@types/long" "^4.0.0"
+ "@types/node" "^10.1.0"
+ long "^4.0.0"
+
+"@apollo/query-graphs@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/query-graphs/-/query-graphs-2.1.4.tgz#305bf8e39075cae03c08834485be292619e8cd14"
+ integrity sha512-oGDdfj+Mhh02JIU0onc0yVxb4f3jqmyHEdTveNYmnmEtFjJWPn9PGq0hpFwTquHyrzUNkx0pqDc4UIFUnZQNGg==
+ dependencies:
+ "@apollo/federation-internals" "^2.1.4"
+ deep-equal "^2.0.5"
+ ts-graphviz "^0.16.0"
+
+"@apollo/query-planner@^0.11.1":
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/@apollo/query-planner/-/query-planner-0.11.1.tgz#63e9384827b968465d881fa09709519aec082921"
+ integrity sha512-fKSZDAL+JCTdBa3k3hdnWWgqzyaNE/Gu4tXIMa+GrzKafeRx2gcsYWPiywca645qoiKt0hk0GyJy8zZILJ2o6w==
dependencies:
chalk "^4.1.0"
deep-equal "^2.0.5"
- pretty-format "^27.4.6"
+ pretty-format "^28.0.0"
-"@apollo/subgraph@0.4.2", "@apollo/subgraph@^0.4.2":
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/@apollo/subgraph/-/subgraph-0.4.2.tgz#f8516f1d5e5fbd57189727497ed9f805fa5017c8"
- integrity sha512-sIGzqfUryW6tS5RPWp1awtO+5CehjPV6xbDrWS4I2Hsj8rug8Y9oiMpcnNk8GaQ1TF3UEf99ZL16mNa4J++IIQ==
+"@apollo/query-planner@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/query-planner/-/query-planner-2.1.4.tgz#ae37cbf312a2eb286d2857dbaef05a6c4b337710"
+ integrity sha512-OaC52LslJN/uGwJSdJCwJUz1e/0vo+gbHXk1deuRQiM5kr8iV8yklxeMVzy68PG9ioeA3r5SUDIZC+NuCLZeaQ==
+ dependencies:
+ "@apollo/federation-internals" "^2.1.4"
+ "@apollo/query-graphs" "^2.1.4"
+ chalk "^4.1.0"
+ deep-equal "^2.0.5"
+ pretty-format "^28.0.0"
+
+"@apollo/server-gateway-interface@^1.0.2":
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/@apollo/server-gateway-interface/-/server-gateway-interface-1.0.3.tgz#d33afd34eefbcc57153cd65aee3973443b81f204"
+ integrity sha512-XYdxr73Ld6DzQ4/LsCOo4ElOyJVcgPDJUybv43htN9AN5ninto9mwLfo2Q8FVkRH5FMIe57EycsHnIyBu7wDPg==
+ dependencies:
+ "@apollo/usage-reporting-protobuf" "^4.0.0-alpha.1"
+ "@apollo/utils.fetcher" "^1.0.0"
+ "@apollo/utils.keyvaluecache" "^1.0.1"
+ "@apollo/utils.logger" "^1.0.0"
+
+"@apollo/subgraph-v2@npm:@apollo/subgraph@2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@apollo/subgraph/-/subgraph-2.1.4.tgz#a8e0c0eb0e2d6a7f8869dfecf8e0d07ed5236712"
+ integrity sha512-WrZuvCtTjLczkJq9BxyGgGB5lE0vr83ZFvbdVdByve+EbvfCh0rNtXNFaAXOkOcqzMcDv258AN44o7WBm+raYw==
+ dependencies:
+ "@apollo/cache-control-types" "^1.0.2"
+ "@apollo/federation-internals" "^2.1.4"
+
+"@apollo/subgraph@0.5.1", "@apollo/subgraph@^0.5.1":
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/@apollo/subgraph/-/subgraph-0.5.1.tgz#9d9aabe69bc61e13a510c19f50c6aa6e741a6ec4"
+ integrity sha512-pj+igKgdpmTfgUmscTNuVdLip8WZ8jFKS5FGb/tD2hj4xPwaQ+MfszLsuNfoytp7d63PdLorIndxcHCW+rb7Dg==
+ dependencies:
+ "@apollo/cache-control-types" "^1.0.2"
+
+"@apollo/usage-reporting-protobuf@^4.0.0":
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/@apollo/usage-reporting-protobuf/-/usage-reporting-protobuf-4.0.0.tgz#36db64164f511508822bc8ac8fedb850f43af86e"
+ integrity sha512-MyQIaDkePoYbqMdwuubfUdUELT1ozpfBM1poV7x5S44Qs2b+247ni4+sqt1W/3cXC8WiJVmfUXJ9QcPGIOqu5w==
+ dependencies:
+ "@apollo/protobufjs" "1.2.6"
+
+"@apollo/usage-reporting-protobuf@^4.0.0-alpha.1":
+ version "4.0.0-alpha.1"
+ resolved "https://registry.yarnpkg.com/@apollo/usage-reporting-protobuf/-/usage-reporting-protobuf-4.0.0-alpha.1.tgz#7badb84e203b313218f80722e371eab5b1e6e3c6"
+ integrity sha512-5pN8CQGxvGbpm58VK7EguR5d6rwZ+v2B9MddKM4DWnh87DuUEbu2xzcSBGaj2Yk2kVzro9YJ1J0vrQrQn8ESYQ==
+ dependencies:
+ "@apollo/protobufjs" "1.2.4"
"@apollo/utils.createhash@^1.0.0":
version "1.0.0"
@@ -88,6 +223,14 @@
"@apollo/utils.isnodelike" "^1.0.0"
sha.js "^2.4.11"
+"@apollo/utils.createhash@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@apollo/utils.createhash/-/utils.createhash-1.1.0.tgz#b18a353008d2583a34eaebaf471aff6e15360172"
+ integrity sha512-5fT4ZiW75515OlikWpIQzaVDws1yy9VgYSoHoJCrvI2UH6/7YNKXQjbjT5qVYu6ytch2wBxFMfFfYWMn/2bSCQ==
+ dependencies:
+ "@apollo/utils.isnodelike" "^1.1.0"
+ sha.js "^2.4.11"
+
"@apollo/utils.dropunuseddefinitions@^1.1.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz#02b04006442eaf037f4c4624146b12775d70d929"
@@ -98,11 +241,29 @@
resolved "https://registry.yarnpkg.com/@apollo/utils.fetcher/-/utils.fetcher-1.0.0.tgz#467c99e97c1a81841435280707fcf2fb0b5768b7"
integrity sha512-SpJH69ffk91BoYSVb12Dt/jFQKVOrm4NE59XUeHXRsha1xBmxjvZNN6qvYySAcGjloW4TtFZYlPkBpwjMRWymw==
+"@apollo/utils.fetcher@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@apollo/utils.fetcher/-/utils.fetcher-1.1.0.tgz#025a0343cf7598bef3d540a9dba75d9cc42c09ac"
+ integrity sha512-UOI25Q8kN6ADYxCPSzilMzMir2CNNFLif/+1WcTgMog9HbMGtG3LSlC9vStsSBcNGlwViaFFGP4ybgoZ2Ro5rQ==
+
"@apollo/utils.isnodelike@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@apollo/utils.isnodelike/-/utils.isnodelike-1.0.0.tgz#a7b2638f7c39acbdbd5b3f62c94708ed4789c246"
integrity sha512-uS0TNODZXYDiKp5r+OXUtqLcjgcJ7s0GyY8m+TGnYOLu6CpqL4BiJSR54o4gXK+oxFGWy7Fs2NjVJtjFVt8ifg==
+"@apollo/utils.isnodelike@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@apollo/utils.isnodelike/-/utils.isnodelike-1.1.0.tgz#24d3f36276b6ba4b08117925083bc5c5f2513c3d"
+ integrity sha512-q/Q82kBUSEcx1ED11JO1TYBY781mWluUnBD8NvhjHVsu1K1C5R9BZVUxShyK/V8XcePcRUB5fdWOcBMGwS0KOA==
+
+"@apollo/utils.keyvaluecache@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@apollo/utils.keyvaluecache/-/utils.keyvaluecache-1.0.1.tgz#46f310f859067efe9fa126156c6954f8381080d2"
+ integrity sha512-nLgYLomqjVimEzQ4cdvVQkcryi970NDvcRVPfd0OPeXhBfda38WjBq+WhQFk+czSHrmrSp34YHBxpat0EtiowA==
+ dependencies:
+ "@apollo/utils.logger" "^1.0.0"
+ lru-cache "^7.10.1"
+
"@apollo/utils.logger@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@apollo/utils.logger/-/utils.logger-1.0.0.tgz#6e3460a2250c2ef7c2c3b0be6b5e148a1596f12b"
@@ -142,11 +303,6 @@
"@apollo/utils.stripsensitiveliterals" "^1.2.0"
apollo-reporting-protobuf "^3.3.1"
-"@apollographql/apollo-tools@^0.5.1":
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/@apollographql/apollo-tools/-/apollo-tools-0.5.2.tgz#01750a655731a198c3634ee819c463254a7c7767"
- integrity sha512-KxZiw0Us3k1d0YkJDhOpVH5rJ+mBfjXcgoRoCcslbgirjgLotKMzOcx4PZ7YTEvvEROmvG7X3Aon41GvMmyGsw==
-
"@apollographql/apollo-tools@^0.5.3":
version "0.5.3"
resolved "https://registry.yarnpkg.com/@apollographql/apollo-tools/-/apollo-tools-0.5.3.tgz#ba241d50f0849150ca0de54fd2927160033bc0bc"
@@ -369,6 +525,11 @@
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9"
integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==
+"@babel/helper-plugin-utils@^7.18.6":
+ version "7.18.9"
+ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz#4b8aea3b069d8cb8a72cdfe28ddf5ceca695ef2f"
+ integrity sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==
+
"@babel/helper-replace-supers@^7.16.0":
version "7.16.0"
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz#73055e8d3cf9bcba8ddb55cad93fedc860f68f17"
@@ -513,6 +674,13 @@
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
+"@babel/plugin-syntax-jsx@^7.7.2":
+ version "7.18.6"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0"
+ integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.18.6"
+
"@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
version "7.10.4"
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
@@ -647,15 +815,15 @@
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-"@commitlint/cli@17.0.2":
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-17.0.2.tgz#57c925fb5f09b8e4a83448d94db291ddf7aa58ee"
- integrity sha512-Axe89Js0YzGGd4gxo3JLlF7yIdjOVpG1LbOorGc6PfYF+drBh14PvarSDLzyd2TNqdylUCq9wb9/A88ZjIdyhA==
+"@commitlint/cli@17.1.2":
+ version "17.1.2"
+ resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-17.1.2.tgz#38240f84936df5216f749f06f838dc50cc85a43d"
+ integrity sha512-h/4Hlka3bvCLbnxf0Er2ri5A44VMlbMSkdTRp8Adv2tRiklSTRIoPGs7OEXDv3EoDs2AAzILiPookgM4Gi7LOw==
dependencies:
"@commitlint/format" "^17.0.0"
- "@commitlint/lint" "^17.0.0"
- "@commitlint/load" "^17.0.0"
- "@commitlint/read" "^17.0.0"
+ "@commitlint/lint" "^17.1.0"
+ "@commitlint/load" "^17.1.2"
+ "@commitlint/read" "^17.1.0"
"@commitlint/types" "^17.0.0"
execa "^5.0.0"
lodash "^4.17.19"
@@ -668,20 +836,20 @@
resolved "https://registry.yarnpkg.com/@commitlint/config-angular-type-enum/-/config-angular-type-enum-17.0.0.tgz#4487ea0f2b97e255ad306316152a0b9b0b7fcf38"
integrity sha512-OJrxpzszJ+jF0RvqLjsM/iZ94IfJ33NVCFFGVmkzuHjKxPt/i/+yJKJ5lzGhlsp5YV2F2Ui5ECIf5Sor2/OZvQ==
-"@commitlint/config-angular@17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/config-angular/-/config-angular-17.0.0.tgz#727f07c16583ec6ad201ebb806fef8cd16e2b018"
- integrity sha512-OngMpL/DpCHCebiQEVripTn/STqzbzwcP8jiwnCftXvUAaNQvAEBqbf7IbVPAvkj00WQsjvMQqRZD8D9NY7QaQ==
+"@commitlint/config-angular@17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/config-angular/-/config-angular-17.1.0.tgz#5a8a3bbddeeaeb665813f059d0b73668304eb5e2"
+ integrity sha512-icTZHZlKUSkAhNk0qX2KGAKVTsuhP8XnSLLusoKHZHPqbz2fX7DzjzsTU/Llr3J7v+XBv04ml2Rw4ZAvcIhcxQ==
dependencies:
"@commitlint/config-angular-type-enum" "^17.0.0"
-"@commitlint/config-validator@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-17.0.0.tgz#49ab09f3ca0ac3449e79ea389cb4942423162ac0"
- integrity sha512-78IQjoZWR4kDHp/U5y17euEWzswJpPkA9TDL5F6oZZZaLIEreWzrDZD5PWtM8MsSRl/K2LDU/UrzYju2bKLMpA==
+"@commitlint/config-validator@^17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-17.1.0.tgz#51d09ca53d7a0d19736abf34eb18a66efce0f97a"
+ integrity sha512-Q1rRRSU09ngrTgeTXHq6ePJs2KrI+axPTgkNYDWSJIuS1Op4w3J30vUfSXjwn5YEJHklK3fSqWNHmBhmTR7Vdg==
dependencies:
"@commitlint/types" "^17.0.0"
- ajv "^6.12.6"
+ ajv "^8.11.0"
"@commitlint/ensure@^17.0.0":
version "17.0.0"
@@ -704,39 +872,40 @@
"@commitlint/types" "^17.0.0"
chalk "^4.1.0"
-"@commitlint/is-ignored@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-17.0.0.tgz#64f53517b390689e58aa3c29fbf1e05b7d4fbd65"
- integrity sha512-UmacD0XM/wWykgdXn5CEWVS4XGuqzU+ZGvM2hwv85+SXGnIOaG88XHrt81u37ZeVt1riWW+YdOxcJW6+nd5v5w==
+"@commitlint/is-ignored@^17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-17.1.0.tgz#c9d5ca22679fdc657fff33a8aa23e0c0152ebbd1"
+ integrity sha512-JITWKDMHhIh8IpdIbcbuH9rEQJty1ZWelgjleTFrVRAcEwN/sPzk1aVUXRIZNXMJWbZj8vtXRJnFihrml8uECQ==
dependencies:
"@commitlint/types" "^17.0.0"
semver "7.3.7"
-"@commitlint/lint@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-17.0.0.tgz#38ef61e0e977d738f738233fbcdf33a5fc04cf96"
- integrity sha512-5FL7VLvGJQby24q0pd4UdM8FNFcL+ER1T/UBf8A9KRL5+QXV1Rkl6Zhcl7+SGpGlVo6Yo0pm6aLW716LVKWLGg==
+"@commitlint/lint@^17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-17.1.0.tgz#de2d3baa2b20d9ec3d5fd2f2421f6025c8439630"
+ integrity sha512-ltpqM2ogt/+SDhUaScFo0MdscncEF96lvQTPMM/VTTWlw7sTGLLWkOOppsee2MN/uLNNWjQ7kqkd4h6JqoM9AQ==
dependencies:
- "@commitlint/is-ignored" "^17.0.0"
+ "@commitlint/is-ignored" "^17.1.0"
"@commitlint/parse" "^17.0.0"
"@commitlint/rules" "^17.0.0"
"@commitlint/types" "^17.0.0"
-"@commitlint/load@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-17.0.0.tgz#0bbefe6d8b99276714c5ea8ef32de2bd2f082698"
- integrity sha512-XaiHF4yWQOPAI0O6wXvk+NYLtJn/Xb7jgZEeKd4C1ZWd7vR7u8z5h0PkWxSr0uLZGQsElGxv3fiZ32C5+q6M8w==
+"@commitlint/load@^17.1.2":
+ version "17.1.2"
+ resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-17.1.2.tgz#19c88be570d8666bbd32f9b3d81925a08328bc13"
+ integrity sha512-sk2p/jFYAWLChIfOIp/MGSIn/WzZ0vkc3afw+l4X8hGEYkvDe4gQUUAVxjl/6xMRn0HgnSLMZ04xXh5pkTsmgg==
dependencies:
- "@commitlint/config-validator" "^17.0.0"
+ "@commitlint/config-validator" "^17.1.0"
"@commitlint/execute-rule" "^17.0.0"
- "@commitlint/resolve-extends" "^17.0.0"
+ "@commitlint/resolve-extends" "^17.1.0"
"@commitlint/types" "^17.0.0"
- "@types/node" ">=12"
+ "@types/node" "^14.0.0"
chalk "^4.1.0"
cosmiconfig "^7.0.0"
- cosmiconfig-typescript-loader "^2.0.0"
+ cosmiconfig-typescript-loader "^4.0.0"
lodash "^4.17.19"
resolve-from "^5.0.0"
+ ts-node "^10.8.1"
typescript "^4.6.4"
"@commitlint/message@^17.0.0":
@@ -753,22 +922,23 @@
conventional-changelog-angular "^5.0.11"
conventional-commits-parser "^3.2.2"
-"@commitlint/read@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-17.0.0.tgz#8ab01cf2f27350d8f81f21690962679a7cae5abf"
- integrity sha512-zkuOdZayKX3J6F6mPnVMzohK3OBrsEdOByIqp4zQjA9VLw1hMsDEFQ18rKgUc2adkZar+4S01QrFreDCfZgbxA==
+"@commitlint/read@^17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-17.1.0.tgz#cf6bab410180f32f70891c97b15467c0b92ac14f"
+ integrity sha512-73BoFNBA/3Ozo2JQvGsE0J8SdrJAWGfZQRSHqvKaqgmY042Su4gXQLqvAzgr55S9DI1l9TiU/5WDuh8IE86d/g==
dependencies:
"@commitlint/top-level" "^17.0.0"
"@commitlint/types" "^17.0.0"
fs-extra "^10.0.0"
git-raw-commits "^2.0.0"
+ minimist "^1.2.6"
-"@commitlint/resolve-extends@^17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-17.0.0.tgz#3a40ee08184b984acf475ebc962641f435e3a639"
- integrity sha512-wi60WiJmwaQ7lzMXK8Vbc18Hq9tE2j/6iv2AFfPUGV7fvfY6Sf1iNKuUHirSqR0fquUyufIXe4y/K9A6LVIIvw==
+"@commitlint/resolve-extends@^17.1.0":
+ version "17.1.0"
+ resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-17.1.0.tgz#7cf04fa13096c8a6544a4af13321fdf8d0d50694"
+ integrity sha512-jqKm00LJ59T0O8O4bH4oMa4XyJVEOK4GzH8Qye9XKji+Q1FxhZznxMV/bDLyYkzbTodBt9sL0WLql8wMtRTbqQ==
dependencies:
- "@commitlint/config-validator" "^17.0.0"
+ "@commitlint/config-validator" "^17.1.0"
"@commitlint/types" "^17.0.0"
import-fresh "^3.0.0"
lodash "^4.17.19"
@@ -805,18 +975,6 @@
dependencies:
chalk "^4.1.0"
-"@cspotcode/source-map-consumer@0.8.0":
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b"
- integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==
-
-"@cspotcode/source-map-support@0.7.0":
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5"
- integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==
- dependencies:
- "@cspotcode/source-map-consumer" "0.8.0"
-
"@cspotcode/source-map-support@^0.8.0":
version "0.8.1"
resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"
@@ -824,14 +982,14 @@
dependencies:
"@jridgewell/trace-mapping" "0.3.9"
-"@eslint/eslintrc@^1.3.0":
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.3.0.tgz#29f92c30bb3e771e4a2048c95fa6855392dfac4f"
- integrity sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==
+"@eslint/eslintrc@^1.3.3":
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.3.3.tgz#2b044ab39fdfa75b4688184f9e573ce3c5b0ff95"
+ integrity sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
- espree "^9.3.2"
+ espree "^9.4.0"
globals "^13.15.0"
ignore "^5.2.0"
import-fresh "^3.2.1"
@@ -854,6 +1012,15 @@
dependencies:
ajv "^6.12.6"
+"@fastify/ajv-compiler@^3.3.1":
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/@fastify/ajv-compiler/-/ajv-compiler-3.3.1.tgz#7045dbf23c11c42b50011ccc36998cd624856e5d"
+ integrity sha512-IRnids8lblQ8e1i8h4JLyfJmebXE+ohcj8x8X/+Ew6ZB4H0Ui05z5YL6q5FOcl0zItVpu4adRzeyVNNUwmduIg==
+ dependencies:
+ ajv "^8.11.0"
+ ajv-formats "^2.1.1"
+ fast-uri "^2.0.0"
+
"@fastify/cors@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@fastify/cors/-/cors-7.0.0.tgz#c67c5a5909498b696bb19578e903f36037ac6f32"
@@ -867,6 +1034,39 @@
resolved "https://registry.yarnpkg.com/@fastify/error/-/error-2.0.0.tgz#a9f94af56eb934f0ab1ce4ef9f0ced6ebf2319dc"
integrity sha512-wI3fpfDT0t7p8E6dA2eTECzzOd+bZsZCJ2Hcv+Onn2b7ZwK3RwD27uW2QDaMtQhAfWQQP+WNK7nKf0twLsBf9w==
+"@fastify/error@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@fastify/error/-/error-3.0.0.tgz#bfcb7b33cec0196413083a91ef2edc7b2c88455b"
+ integrity sha512-dPRyT40GiHRzSCll3/Jn2nPe25+E1VXc9tDwRAIKwFCxd5Np5wzgz1tmooWG3sV0qKgrBibihVoCna2ru4SEFg==
+
+"@fastify/fast-json-stringify-compiler@^4.1.0":
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.1.0.tgz#ebf657ce4ec88e27ba311f7560eaa0b37de8719d"
+ integrity sha512-cTKBV2J9+u6VaKDhX7HepSfPSzw+F+TSd+k0wzifj4rG+4E5PjSFJCk19P8R6tr/72cuzgGd+mbB3jFT6lvAgw==
+ dependencies:
+ fast-json-stringify "^5.0.0"
+
+"@fastify/static@^5.0.0":
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/@fastify/static/-/static-5.0.2.tgz#46cee887393b422f4b10a46a14e970a64dd086d4"
+ integrity sha512-HvyXZ5a7hUHoSBRq9jKUuKIUCkHMkCDcmiAeEmixXlGOx8pEWx3NYOIaiivcjWa6/NLvfdUT+t/jzfVQ2PA7Gw==
+ dependencies:
+ content-disposition "^0.5.3"
+ encoding-negotiator "^2.0.1"
+ fastify-plugin "^3.0.0"
+ glob "^7.1.4"
+ p-limit "^3.1.0"
+ readable-stream "^3.4.0"
+ send "^0.17.1"
+
+"@fastify/websocket@^5.0.0":
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/@fastify/websocket/-/websocket-5.0.0.tgz#1fe62743c7663fb71d18953e6f62873a5b9cf448"
+ integrity sha512-ngZo5rchmhRZaML4MkAY/ClGs8Iyp0+rL97EIP0QsU2N4ICqBKEBG/wGL21ImAhha1RFixEzz8+CB/Ad/W50yw==
+ dependencies:
+ fastify-plugin "^3.0.0"
+ ws "^8.0.0"
+
"@gar/promisify@^1.0.1":
version "1.1.2"
resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210"
@@ -877,13 +1077,13 @@
resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6"
integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
-"@graphql-tools/merge@8.2.13":
- version "8.2.13"
- resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-8.2.13.tgz#d4f254dcea301ce3d9c23b03eb68a7ae9baf6981"
- integrity sha512-lhzjCa6wCthOYl7B6UzER3SGjU2WjSGnW0WGr8giMYsrtf6G3vIRotMcSVMlhDzyyMIOn7uPULOUt3/kaJ/rIA==
+"@graphql-tools/merge@8.3.6":
+ version "8.3.6"
+ resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-8.3.6.tgz#97a936d4c8e8f935e58a514bb516c476437b5b2c"
+ integrity sha512-uUBokxXi89bj08P+iCvQk3Vew4vcfL5ZM6NTylWi8PIpoq4r5nJ625bRuN8h2uubEdRiH8ntN9M4xkd/j7AybQ==
dependencies:
- "@graphql-tools/utils" "8.6.12"
- tslib "~2.4.0"
+ "@graphql-tools/utils" "8.12.0"
+ tslib "^2.4.0"
"@graphql-tools/merge@^8.2.1":
version "8.2.1"
@@ -903,14 +1103,14 @@
fast-json-stable-stringify "^2.1.0"
tslib "~2.3.0"
-"@graphql-tools/schema@8.3.13":
- version "8.3.13"
- resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-8.3.13.tgz#099460459d7821dd8deb34952900fe300085ba0b"
- integrity sha512-e+bx1VHj1i5v4HmhCYCar0lqdoLmkRi/CfV07rTqHR6CRDbIb/S/qDCajHLt7FCovQ5ozlI5sRVbBhzfq5H0PQ==
+"@graphql-tools/schema@9.0.4":
+ version "9.0.4"
+ resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-9.0.4.tgz#1a74608b57abf90fae6fd929d25e5482c57bc05d"
+ integrity sha512-B/b8ukjs18fq+/s7p97P8L1VMrwapYc3N2KvdG/uNThSazRRn8GsBK0Nr+FH+mVKiUfb4Dno79e3SumZVoHuOQ==
dependencies:
- "@graphql-tools/merge" "8.2.13"
- "@graphql-tools/utils" "8.6.12"
- tslib "~2.4.0"
+ "@graphql-tools/merge" "8.3.6"
+ "@graphql-tools/utils" "8.12.0"
+ tslib "^2.4.0"
value-or-promise "1.0.11"
"@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.3.1":
@@ -923,14 +1123,14 @@
tslib "~2.3.0"
value-or-promise "1.0.11"
-"@graphql-tools/utils@8.6.12":
- version "8.6.12"
- resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.6.12.tgz#0a550dc0331fd9b097fe7223d65cbbee720556e4"
- integrity sha512-WQ91O40RC+UJgZ9K+IzevSf8oolR1QE+WQ21Oyc2fgDYYiqT0eSf+HVyhZr/8x9rVjn3N9HeqCsywbdmbljg0w==
+"@graphql-tools/utils@8.12.0":
+ version "8.12.0"
+ resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.12.0.tgz#243bc4f5fc2edbc9e8fd1038189e57d837cbe31f"
+ integrity sha512-TeO+MJWGXjUTS52qfK4R8HiPoF/R7X+qmgtOYd8DTH0l6b+5Y/tlg5aGeUJefqImRq7nvi93Ms40k/Uz4D5CWw==
dependencies:
- tslib "~2.4.0"
+ tslib "^2.4.0"
-"@graphql-tools/utils@^8.0.0", "@graphql-tools/utils@^8.5.1":
+"@graphql-tools/utils@^8.5.1":
version "8.5.2"
resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.5.2.tgz#fa775d92c19237f648105f7d4aeeeb63ba3d257f"
integrity sha512-wxA51td/759nQziPYh+HxE0WbURRufrp1lwfOYMgfK4e8Aa6gCa1P1p6ERogUIm423NrIfOVau19Q/BBpHdolw==
@@ -942,15 +1142,20 @@
resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.1.1.tgz#076d78ce99822258cf813ecc1e7fa460fa74d052"
integrity sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg==
-"@humanwhocodes/config-array@^0.9.2":
- version "0.9.2"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.2.tgz#68be55c737023009dfc5fe245d51181bb6476914"
- integrity sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==
+"@humanwhocodes/config-array@^0.11.6":
+ version "0.11.6"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.6.tgz#6a51d603a3aaf8d4cf45b42b3f2ac9318a4adc4b"
+ integrity sha512-jJr+hPTJYKyDILJfhNSHsjiwXYf26Flsz8DvNndOsHs5pwSnpGUEy8yzF0JYhCEvTDdV2vuOK5tt8BVhwO5/hg==
dependencies:
"@humanwhocodes/object-schema" "^1.2.1"
debug "^4.1.1"
minimatch "^3.0.4"
+"@humanwhocodes/module-importer@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
+ integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
+
"@humanwhocodes/object-schema@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
@@ -987,110 +1192,117 @@
resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
-"@jest/console@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/console/-/console-28.1.0.tgz#db78222c3d3b0c1db82f1b9de51094c2aaff2176"
- integrity sha512-tscn3dlJFGay47kb4qVruQg/XWlmvU0xp3EJOjzzY+sBaI+YgwKcvAmTcyYU7xEiLLIY5HCdWRooAL8dqkFlDA==
+"@jest/console@^29.2.1":
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.2.1.tgz#5f2c62dcdd5ce66e94b6d6729e021758bceea090"
+ integrity sha512-MF8Adcw+WPLZGBiNxn76DOuczG3BhODTcMlDCA4+cFi41OkaY/lyI0XUUhi73F88Y+7IHoGmD80pN5CtxQUdSw==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
chalk "^4.0.0"
- jest-message-util "^28.1.0"
- jest-util "^28.1.0"
+ jest-message-util "^29.2.1"
+ jest-util "^29.2.1"
slash "^3.0.0"
-"@jest/core@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-28.1.0.tgz#784a1e6ce5358b46fcbdcfbbd93b1b713ed4ea80"
- integrity sha512-/2PTt0ywhjZ4NwNO4bUqD9IVJfmFVhVKGlhvSpmEfUCuxYf/3NHcKmRFI+I71lYzbTT3wMuYpETDCTHo81gC/g==
+"@jest/core@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.2.2.tgz#207aa8973d9de8769f9518732bc5f781efc3ffa7"
+ integrity sha512-susVl8o2KYLcZhhkvSB+b7xX575CX3TmSvxfeDjpRko7KmT89rHkXj6XkDkNpSeFMBzIENw5qIchO9HC9Sem+A==
dependencies:
- "@jest/console" "^28.1.0"
- "@jest/reporters" "^28.1.0"
- "@jest/test-result" "^28.1.0"
- "@jest/transform" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/console" "^29.2.1"
+ "@jest/reporters" "^29.2.2"
+ "@jest/test-result" "^29.2.1"
+ "@jest/transform" "^29.2.2"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
ansi-escapes "^4.2.1"
chalk "^4.0.0"
ci-info "^3.2.0"
exit "^0.1.2"
graceful-fs "^4.2.9"
- jest-changed-files "^28.0.2"
- jest-config "^28.1.0"
- jest-haste-map "^28.1.0"
- jest-message-util "^28.1.0"
- jest-regex-util "^28.0.2"
- jest-resolve "^28.1.0"
- jest-resolve-dependencies "^28.1.0"
- jest-runner "^28.1.0"
- jest-runtime "^28.1.0"
- jest-snapshot "^28.1.0"
- jest-util "^28.1.0"
- jest-validate "^28.1.0"
- jest-watcher "^28.1.0"
+ jest-changed-files "^29.2.0"
+ jest-config "^29.2.2"
+ jest-haste-map "^29.2.1"
+ jest-message-util "^29.2.1"
+ jest-regex-util "^29.2.0"
+ jest-resolve "^29.2.2"
+ jest-resolve-dependencies "^29.2.2"
+ jest-runner "^29.2.2"
+ jest-runtime "^29.2.2"
+ jest-snapshot "^29.2.2"
+ jest-util "^29.2.1"
+ jest-validate "^29.2.2"
+ jest-watcher "^29.2.2"
micromatch "^4.0.4"
- pretty-format "^28.1.0"
- rimraf "^3.0.0"
+ pretty-format "^29.2.1"
slash "^3.0.0"
strip-ansi "^6.0.0"
-"@jest/environment@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.0.tgz#dedf7d59ec341b9292fcf459fd0ed819eb2e228a"
- integrity sha512-S44WGSxkRngzHslhV6RoAExekfF7Qhwa6R5+IYFa81mpcj0YgdBnRSmvHe3SNwOt64yXaE5GG8Y2xM28ii5ssA==
+"@jest/environment@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.2.2.tgz#481e729048d42e87d04842c38aa4d09c507f53b0"
+ integrity sha512-OWn+Vhu0I1yxuGBJEFFekMYc8aGBGrY4rt47SOh/IFaI+D7ZHCk7pKRiSoZ2/Ml7b0Ony3ydmEHRx/tEOC7H1A==
dependencies:
- "@jest/fake-timers" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/fake-timers" "^29.2.2"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
- jest-mock "^28.1.0"
+ jest-mock "^29.2.2"
-"@jest/expect-utils@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-28.1.0.tgz#a5cde811195515a9809b96748ae8bcc331a3538a"
- integrity sha512-5BrG48dpC0sB80wpeIX5FU6kolDJI4K0n5BM9a5V38MGx0pyRvUBSS0u2aNTdDzmOrCjhOg8pGs6a20ivYkdmw==
+"@jest/expect-utils@^29.0.1":
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.0.1.tgz#c1a84ee66caaef537f351dd82f7c63d559cf78d5"
+ integrity sha512-Tw5kUUOKmXGQDmQ9TSgTraFFS7HMC1HG/B7y0AN2G2UzjdAXz9BzK2rmNpCSDl7g7y0Gf/VLBm//blonvhtOTQ==
dependencies:
- jest-get-type "^28.0.2"
+ jest-get-type "^29.0.0"
-"@jest/expect@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.0.tgz#2e5a31db692597070932366a1602b5157f0f217c"
- integrity sha512-be9ETznPLaHOmeJqzYNIXv1ADEzENuQonIoobzThOYPuK/6GhrWNIJDVTgBLCrz3Am73PyEU2urQClZp0hLTtA==
+"@jest/expect-utils@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.2.2.tgz#460a5b5a3caf84d4feb2668677393dd66ff98665"
+ integrity sha512-vwnVmrVhTmGgQzyvcpze08br91OL61t9O0lJMDyb6Y/D8EKQ9V7rGUb/p7PDt0GPzK0zFYqXWFo4EO2legXmkg==
dependencies:
- expect "^28.1.0"
- jest-snapshot "^28.1.0"
+ jest-get-type "^29.2.0"
-"@jest/fake-timers@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.0.tgz#ea77878aabd5c5d50e1fc53e76d3226101e33064"
- integrity sha512-Xqsf/6VLeAAq78+GNPzI7FZQRf5cCHj1qgQxCjws9n8rKw8r1UYoeaALwBvyuzOkpU3c1I6emeMySPa96rxtIg==
+"@jest/expect@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.2.2.tgz#81edbd33afbde7795ca07ff6b4753d15205032e4"
+ integrity sha512-zwblIZnrIVt8z/SiEeJ7Q9wKKuB+/GS4yZe9zw7gMqfGf4C5hBLGrVyxu1SzDbVSqyMSlprKl3WL1r80cBNkgg==
dependencies:
- "@jest/types" "^28.1.0"
- "@sinonjs/fake-timers" "^9.1.1"
+ expect "^29.2.2"
+ jest-snapshot "^29.2.2"
+
+"@jest/fake-timers@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.2.2.tgz#d8332e6e3cfa99cde4bc87d04a17d6b699deb340"
+ integrity sha512-nqaW3y2aSyZDl7zQ7t1XogsxeavNpH6kkdq+EpXncIDvAkjvFD7hmhcIs1nWloengEWUoWqkqSA6MSbf9w6DgA==
+ dependencies:
+ "@jest/types" "^29.2.1"
+ "@sinonjs/fake-timers" "^9.1.2"
"@types/node" "*"
- jest-message-util "^28.1.0"
- jest-mock "^28.1.0"
- jest-util "^28.1.0"
+ jest-message-util "^29.2.1"
+ jest-mock "^29.2.2"
+ jest-util "^29.2.1"
-"@jest/globals@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.0.tgz#a4427d2eb11763002ff58e24de56b84ba79eb793"
- integrity sha512-3m7sTg52OTQR6dPhsEQSxAvU+LOBbMivZBwOvKEZ+Rb+GyxVnXi9HKgOTYkx/S99T8yvh17U4tNNJPIEQmtwYw==
+"@jest/globals@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.2.2.tgz#205ff1e795aa774301c2c0ba0be182558471b845"
+ integrity sha512-/nt+5YMh65kYcfBhj38B3Hm0Trk4IsuMXNDGKE/swp36yydBWfz3OXkLqkSvoAtPW8IJMSJDFCbTM2oj5SNprw==
dependencies:
- "@jest/environment" "^28.1.0"
- "@jest/expect" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/environment" "^29.2.2"
+ "@jest/expect" "^29.2.2"
+ "@jest/types" "^29.2.1"
+ jest-mock "^29.2.2"
-"@jest/reporters@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.0.tgz#5183a28b9b593b6000fa9b89b031c7216b58a9a0"
- integrity sha512-qxbFfqap/5QlSpIizH9c/bFCDKsQlM4uAKSOvZrP+nIdrjqre3FmKzpTtYyhsaVcOSNK7TTt2kjm+4BJIjysFA==
+"@jest/reporters@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.2.2.tgz#69b395f79c3a97ce969ce05ccf1a482e5d6de290"
+ integrity sha512-AzjL2rl2zJC0njIzcooBvjA4sJjvdoq98sDuuNs4aNugtLPSQ+91nysGKRF0uY1to5k0MdGMdOBggUsPqvBcpA==
dependencies:
"@bcoe/v8-coverage" "^0.2.3"
- "@jest/console" "^28.1.0"
- "@jest/test-result" "^28.1.0"
- "@jest/transform" "^28.1.0"
- "@jest/types" "^28.1.0"
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jest/console" "^29.2.1"
+ "@jest/test-result" "^29.2.1"
+ "@jest/transform" "^29.2.2"
+ "@jest/types" "^29.2.1"
+ "@jridgewell/trace-mapping" "^0.3.15"
"@types/node" "*"
chalk "^4.0.0"
collect-v8-coverage "^1.0.0"
@@ -1102,20 +1314,13 @@
istanbul-lib-report "^3.0.0"
istanbul-lib-source-maps "^4.0.0"
istanbul-reports "^3.1.3"
- jest-util "^28.1.0"
- jest-worker "^28.1.0"
+ jest-message-util "^29.2.1"
+ jest-util "^29.2.1"
+ jest-worker "^29.2.1"
slash "^3.0.0"
string-length "^4.0.1"
strip-ansi "^6.0.0"
- terminal-link "^2.0.0"
- v8-to-istanbul "^9.0.0"
-
-"@jest/schemas@^28.0.0":
- version "28.0.0"
- resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-28.0.0.tgz#55cf5fcc82440a2a39b717bb949570c501fd5410"
- integrity sha512-Pap9Jvwr8KYFvDgkya/p0FCVya+jZkWt57lHpwBylfjgmwi/gtXfhyAO/Cw+jKuMafHcXY0beNf2XV2pkcu9vA==
- dependencies:
- "@sinclair/typebox" "^0.23.3"
+ v8-to-istanbul "^9.0.1"
"@jest/schemas@^28.0.2":
version "28.0.2"
@@ -1124,85 +1329,93 @@
dependencies:
"@sinclair/typebox" "^0.23.3"
-"@jest/source-map@^28.0.2":
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.0.2.tgz#914546f4410b67b1d42c262a1da7e0406b52dc90"
- integrity sha512-Y9dxC8ZpN3kImkk0LkK5XCEneYMAXlZ8m5bflmSL5vrwyeUpJfentacCUg6fOb8NOpOO7hz2+l37MV77T6BFPw==
+"@jest/schemas@^29.0.0":
+ version "29.0.0"
+ resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.0.0.tgz#5f47f5994dd4ef067fb7b4188ceac45f77fe952a"
+ integrity sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==
dependencies:
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@sinclair/typebox" "^0.24.1"
+
+"@jest/source-map@^29.2.0":
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.2.0.tgz#ab3420c46d42508dcc3dc1c6deee0b613c235744"
+ integrity sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==
+ dependencies:
+ "@jridgewell/trace-mapping" "^0.3.15"
callsites "^3.0.0"
graceful-fs "^4.2.9"
-"@jest/test-result@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-28.1.0.tgz#fd149dee123510dd2fcadbbf5f0020f98ad7f12c"
- integrity sha512-sBBFIyoPzrZho3N+80P35A5oAkSKlGfsEFfXFWuPGBsW40UAjCkGakZhn4UQK4iQlW2vgCDMRDOob9FGKV8YoQ==
+"@jest/test-result@^29.2.1":
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.2.1.tgz#f42dbf7b9ae465d0a93eee6131473b8bb3bd2edb"
+ integrity sha512-lS4+H+VkhbX6z64tZP7PAUwPqhwj3kbuEHcaLuaBuB+riyaX7oa1txe0tXgrFj5hRWvZKvqO7LZDlNWeJ7VTPA==
dependencies:
- "@jest/console" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/console" "^29.2.1"
+ "@jest/types" "^29.2.1"
"@types/istanbul-lib-coverage" "^2.0.0"
collect-v8-coverage "^1.0.0"
-"@jest/test-sequencer@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-28.1.0.tgz#ce7294bbe986415b9a30e218c7e705e6ebf2cdf2"
- integrity sha512-tZCEiVWlWNTs/2iK9yi6o3AlMfbbYgV4uuZInSVdzZ7ftpHZhCMuhvk2HLYhCZzLgPFQ9MnM1YaxMnh3TILFiQ==
+"@jest/test-sequencer@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.2.2.tgz#4ac7487b237e517a1f55e7866fb5553f6e0168b9"
+ integrity sha512-Cuc1znc1pl4v9REgmmLf0jBd3Y65UXJpioGYtMr/JNpQEIGEzkmHhy6W6DLbSsXeUA13TDzymPv0ZGZ9jH3eIw==
dependencies:
- "@jest/test-result" "^28.1.0"
+ "@jest/test-result" "^29.2.1"
graceful-fs "^4.2.9"
- jest-haste-map "^28.1.0"
+ jest-haste-map "^29.2.1"
slash "^3.0.0"
-"@jest/transform@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.0.tgz#224a3c9ba4cc98e2ff996c0a89a2d59db15c74ce"
- integrity sha512-omy2xe5WxlAfqmsTjTPxw+iXRTRnf+NtX0ToG+4S0tABeb4KsKmPUHq5UBuwunHg3tJRwgEQhEp0M/8oiatLEA==
+"@jest/transform@^29.2.2":
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.2.2.tgz#dfc03fc092b31ffea0c55917728e75bfcf8b5de6"
+ integrity sha512-aPe6rrletyuEIt2axxgdtxljmzH8O/nrov4byy6pDw9S8inIrTV+2PnjyP/oFHMSynzGxJ2s6OHowBNMXp/Jzg==
dependencies:
"@babel/core" "^7.11.6"
- "@jest/types" "^28.1.0"
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jest/types" "^29.2.1"
+ "@jridgewell/trace-mapping" "^0.3.15"
babel-plugin-istanbul "^6.1.1"
chalk "^4.0.0"
convert-source-map "^1.4.0"
- fast-json-stable-stringify "^2.0.0"
+ fast-json-stable-stringify "^2.1.0"
graceful-fs "^4.2.9"
- jest-haste-map "^28.1.0"
- jest-regex-util "^28.0.2"
- jest-util "^28.1.0"
+ jest-haste-map "^29.2.1"
+ jest-regex-util "^29.2.0"
+ jest-util "^29.2.1"
micromatch "^4.0.4"
pirates "^4.0.4"
slash "^3.0.0"
write-file-atomic "^4.0.1"
-"@jest/types@^27.2.5":
- version "27.2.5"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132"
- integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ==
+"@jest/types@^29.0.1":
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.0.1.tgz#1985650acf137bdb81710ff39a4689ec071dd86a"
+ integrity sha512-ft01rxzVsbh9qZPJ6EFgAIj3PT9FCRfBF9Xljo2/33VDOUjLZr0ZJ2oKANqh9S/K0/GERCsHDAQlBwj7RxA+9g==
dependencies:
+ "@jest/schemas" "^29.0.0"
"@types/istanbul-lib-coverage" "^2.0.0"
"@types/istanbul-reports" "^3.0.0"
"@types/node" "*"
- "@types/yargs" "^16.0.0"
+ "@types/yargs" "^17.0.8"
chalk "^4.0.0"
-"@jest/types@^28.0.0":
- version "28.0.0"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-28.0.0.tgz#1818a07d26b204c1c34a5b22474d0a32f4b02a8d"
- integrity sha512-4rxVTiBbSjsl8V9sXkspfxW+t2Tdcmmc3fX7AU49gVrRpjXMjEDurSx/iruXnOSor4PTL0fwO61/2+n1XQ/RgA==
+"@jest/types@^29.0.3":
+ version "29.0.3"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.0.3.tgz#0be78fdddb1a35aeb2041074e55b860561c8ef63"
+ integrity sha512-coBJmOQvurXjN1Hh5PzF7cmsod0zLIOXpP8KD161mqNlroMhLcwpODiEzi7ZsRl5Z/AIuxpeNm8DCl43F4kz8A==
dependencies:
- "@jest/schemas" "^28.0.0"
+ "@jest/schemas" "^29.0.0"
"@types/istanbul-lib-coverage" "^2.0.0"
"@types/istanbul-reports" "^3.0.0"
"@types/node" "*"
"@types/yargs" "^17.0.8"
chalk "^4.0.0"
-"@jest/types@^28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-28.1.0.tgz#508327a89976cbf9bd3e1cc74641a29fd7dfd519"
- integrity sha512-xmEggMPr317MIOjjDoZ4ejCSr9Lpbt/u34+dvc99t7DS8YirW5rwZEhzKPC2BMUFkUhI48qs6qLUSGw5FuL0GA==
+"@jest/types@^29.2.1":
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.2.1.tgz#ec9c683094d4eb754e41e2119d8bdaef01cf6da0"
+ integrity sha512-O/QNDQODLnINEPAI0cl9U6zUIDXEWXt6IC1o2N2QENuos7hlGUIthlKyV4p6ki3TvXFX071blj8HUhgLGquPjw==
dependencies:
- "@jest/schemas" "^28.0.2"
+ "@jest/schemas" "^29.0.0"
"@types/istanbul-lib-coverage" "^2.0.0"
"@types/istanbul-reports" "^3.0.0"
"@types/node" "*"
@@ -1224,7 +1437,7 @@
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec"
integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==
-"@jridgewell/trace-mapping@0.3.9", "@jridgewell/trace-mapping@^0.3.0", "@jridgewell/trace-mapping@^0.3.7":
+"@jridgewell/trace-mapping@0.3.9", "@jridgewell/trace-mapping@^0.3.0":
version "0.3.9"
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
@@ -1232,629 +1445,646 @@
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
-"@lerna/add@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/add/-/add-5.0.0.tgz#0545e2eef157c142d82ba765467c27b36fe53ce8"
- integrity sha512-KdIOQL+88iHU9zuAU8Be1AL4cOVmm77nlckylsNaVVTiomNipr/h7lStiBO52BoMkwKzNwOH6He5HGY0Yo7s2w==
- dependencies:
- "@lerna/bootstrap" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/npm-conf" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+"@jridgewell/trace-mapping@^0.3.12":
+ version "0.3.14"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz#b231a081d8f66796e475ad588a1ef473112701ed"
+ integrity sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==
+ dependencies:
+ "@jridgewell/resolve-uri" "^3.0.3"
+ "@jridgewell/sourcemap-codec" "^1.4.10"
+
+"@jridgewell/trace-mapping@^0.3.15":
+ version "0.3.15"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz#aba35c48a38d3fd84b37e66c9c0423f9744f9774"
+ integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==
+ dependencies:
+ "@jridgewell/resolve-uri" "^3.0.3"
+ "@jridgewell/sourcemap-codec" "^1.4.10"
+
+"@lerna/add@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/add/-/add-6.0.1.tgz#6d71084fe7918c96c909bebdc5c27ed6006e09d6"
+ integrity sha512-cCQIlMODhi3KYyTDOp2WWL4Kj2dKK+MmCiaSf+USrbSWPVVXQGn5Eb11XOMUfYYq3Ula75sWL2urtYwuu8IbmA==
+ dependencies:
+ "@lerna/bootstrap" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/npm-conf" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
dedent "^0.7.0"
- npm-package-arg "^8.1.0"
+ npm-package-arg "8.1.1"
p-map "^4.0.0"
- pacote "^13.4.1"
+ pacote "^13.6.1"
semver "^7.3.4"
-"@lerna/bootstrap@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-5.0.0.tgz#624b67a4631c7455b98cfed4dbb2e38b27025a7a"
- integrity sha512-2m1BxKbYwDABy+uE/Da3EQM61R58bI3YQ0o1rsFQq1u0ltL9CJxw1o0lMg84hwMsBb4D+kLIXLqetYlLVgbr0Q==
- dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/has-npm-version" "5.0.0"
- "@lerna/npm-install" "5.0.0"
- "@lerna/package-graph" "5.0.0"
- "@lerna/pulse-till-done" "5.0.0"
- "@lerna/rimraf-dir" "5.0.0"
- "@lerna/run-lifecycle" "5.0.0"
- "@lerna/run-topologically" "5.0.0"
- "@lerna/symlink-binary" "5.0.0"
- "@lerna/symlink-dependencies" "5.0.0"
- "@lerna/validation-error" "5.0.0"
- "@npmcli/arborist" "5.2.0"
+"@lerna/bootstrap@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-6.0.1.tgz#2af0b790b9ce426b78f12543159c8506d77afc28"
+ integrity sha512-a3DWchHFOiRmDN24VTdmTxKvAqw6Msp8pDCWXq4rgOQSFxqyYECd8BYvmy8dTW6LcC4EG0HqTGRguuEaKCasOw==
+ dependencies:
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/has-npm-version" "6.0.1"
+ "@lerna/npm-install" "6.0.1"
+ "@lerna/package-graph" "6.0.1"
+ "@lerna/pulse-till-done" "6.0.1"
+ "@lerna/rimraf-dir" "6.0.1"
+ "@lerna/run-lifecycle" "6.0.1"
+ "@lerna/run-topologically" "6.0.1"
+ "@lerna/symlink-binary" "6.0.1"
+ "@lerna/symlink-dependencies" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ "@npmcli/arborist" "5.3.0"
dedent "^0.7.0"
get-port "^5.1.1"
multimatch "^5.0.0"
- npm-package-arg "^8.1.0"
- npmlog "^4.1.2"
+ npm-package-arg "8.1.1"
+ npmlog "^6.0.2"
p-map "^4.0.0"
p-map-series "^2.1.0"
p-waterfall "^2.1.1"
semver "^7.3.4"
-"@lerna/changed@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-5.0.0.tgz#fb3cdd5f281683a461c3099cbcf0978e23b33140"
- integrity sha512-A24MHipPGODmzQBH1uIMPPUUOc1Zm7Qe/eSYzm52bFHtVxWH0nIVXfunadoMX32NhzKQH3Sw8X2rWHPQSRoUvA==
+"@lerna/changed@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-6.0.1.tgz#58614a0c65bfab77fefd142d5edc8282e057ea83"
+ integrity sha512-b0KzqpNv25ZxH9M/7jtDQaXWUBhVzBVJ8DQ4PjjeoulOCQ+mA9tNQr8UVmeU1UZiaNtNz6Hcy55vyvVvNe07VA==
dependencies:
- "@lerna/collect-updates" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/listable" "5.0.0"
- "@lerna/output" "5.0.0"
+ "@lerna/collect-updates" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/listable" "6.0.1"
+ "@lerna/output" "6.0.1"
-"@lerna/check-working-tree@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-5.0.0.tgz#e7b653b78c3bb96db7a00f6a74018e2bb88ec088"
- integrity sha512-PnUMdpT2qS4o+vs+7l5fFIizstGdqSkhLG+Z9ZiY5OMtnGd+pmAFQFlbLSZSmdvQSOSobl9fhB1St8qhPD60xQ==
+"@lerna/check-working-tree@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-6.0.1.tgz#ad71d53941b5c85523499b283e5f44b52eca6276"
+ integrity sha512-9Ti1EuE3IiJUvvAtFk+Xr9Uw6KehT78ghnI4f/hi4uew5q0Mf2+DMaBNexbhOTpRFBeIq4ucDFhiN091pNkUNw==
dependencies:
- "@lerna/collect-uncommitted" "5.0.0"
- "@lerna/describe-ref" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+ "@lerna/collect-uncommitted" "6.0.1"
+ "@lerna/describe-ref" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
-"@lerna/child-process@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-5.0.0.tgz#1c7663d2910431f6c25543fd53998ae95b2dac19"
- integrity sha512-cFVNkedrlU8XTt15EvUtQ84hqtV4oToQW/elKNv//mhCz06HY8Y+Ia6XevK2zrIhZjS6DT576F/7SmTk3vnpmg==
+"@lerna/child-process@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-6.0.1.tgz#2141f643a4ed7d38fa9270a80403467a353a3b39"
+ integrity sha512-5smM8Or/RQkHysNFrUYdrCYlhpr3buNpCYU7T2DPYzOWRPm+X5rCvt/dDOcS3UgYT2jEyS86S5Y7pK2X7eXtmg==
dependencies:
chalk "^4.1.0"
execa "^5.0.0"
strong-log-transformer "^2.1.0"
-"@lerna/clean@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-5.0.0.tgz#2b5cf202ab3eca18a075b292c55e6641d18b1b8f"
- integrity sha512-7B+0Nx6MEPmCfnEa1JFyZwJsC7qlGrikWXyLglLb/wcbapYVsuDauOl9AT1iOFoXKw82P77HWYUKWeD9DQgw/w==
- dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/prompt" "5.0.0"
- "@lerna/pulse-till-done" "5.0.0"
- "@lerna/rimraf-dir" "5.0.0"
+"@lerna/clean@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-6.0.1.tgz#e59f94140e577cbb66f76f78794b97778f78a246"
+ integrity sha512-ZaWPzzYNkJM7Ib2GWPLSELVBf5nRCGOGBtR9DSLKAore0Me876JLgi4h2R+Y2PVyCvT1kmoQKAclnjxdZbCONA==
+ dependencies:
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/prompt" "6.0.1"
+ "@lerna/pulse-till-done" "6.0.1"
+ "@lerna/rimraf-dir" "6.0.1"
p-map "^4.0.0"
p-map-series "^2.1.0"
p-waterfall "^2.1.1"
-"@lerna/cli@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-5.0.0.tgz#f440f6664aa6c22bb58e69aacfde655c831de2f9"
- integrity sha512-g8Nifko8XNySOl8u2molSHVl+fk/E1e5FSn/W2ekeijmc3ezktp+xbPWofNq71N/d297+KPQpLBfwzXSo9ufIQ==
+"@lerna/cli@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-6.0.1.tgz#8a92386702cff815f36104792ad5dc14f11a61a8"
+ integrity sha512-AuAnUXkBGdts/rmHltrkZucYy11OwYPb/4HM3zxLeq4O30w2ocZIytkOtSkuVKOMPWBZR8b37fNuZBzvxe5OmA==
dependencies:
- "@lerna/global-options" "5.0.0"
+ "@lerna/global-options" "6.0.1"
dedent "^0.7.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
yargs "^16.2.0"
-"@lerna/collect-uncommitted@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-5.0.0.tgz#2843f98995c8bcc1d783d1d9739122c79378f3c5"
- integrity sha512-mga/2S9rK0TP5UCulWiCTrC/uKaiIlOro1n8R3oCw6eRw9eupCSRx5zGI7pdh8CPD82MDL7w0a6OTep3WBSBVA==
+"@lerna/collect-uncommitted@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-6.0.1.tgz#b93f5acfa9c63fffe41bfaaac02a0efad9180b00"
+ integrity sha512-qPqwmIlSlf8XBJnqMc+6pz6qXQ0Pfjil70FB2IPvoWbfrLvMI6K3I/AXeub9X5fj5HYqNs1XtwhWHJcMFpJddw==
dependencies:
- "@lerna/child-process" "5.0.0"
+ "@lerna/child-process" "6.0.1"
chalk "^4.1.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/collect-updates@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-5.0.0.tgz#cce16b9e8136e1e7bc33fe0fb12b283e538fa658"
- integrity sha512-X82i8SVgBXLCk8vbKWfQPRLTAXROCANL8Z/bU1l6n7yycsHKdjrrlNi1+KprFdfRsMvSm10R4qPNcl9jgsp/IA==
+"@lerna/collect-updates@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-6.0.1.tgz#7b4be193ee51a72ccedc20acf845fe32fdee9ee2"
+ integrity sha512-OwRcLqD1N5znlZM/Ctf031RDkodHVO62byiD35AbHGoGM2EI2TSYyIbqnJ8QsQJMB05/KhIBndL8Mpcdle7/rg==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/describe-ref" "5.0.0"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/describe-ref" "6.0.1"
minimatch "^3.0.4"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
slash "^3.0.0"
-"@lerna/command@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/command/-/command-5.0.0.tgz#cdc9f32a6b1c7153fe7150d642d2a420a3d0797d"
- integrity sha512-j7/apU5d/nhSc1qIZgcV03KyO5jz3y7cwSum3IuK8/XF6rKwt3FVnbue1V3l9sJ6IRJjsRGKyViB1IdP5nSX4Q==
- dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/package-graph" "5.0.0"
- "@lerna/project" "5.0.0"
- "@lerna/validation-error" "5.0.0"
- "@lerna/write-log-file" "5.0.0"
+"@lerna/command@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/command/-/command-6.0.1.tgz#a429e724237bc3c4a735e8eaef9816f2203cb7dc"
+ integrity sha512-V9w8M7pMU7KztxaL0+fetTSQYTa12bhTl86ll9VjlgYZ5qUAXk9E42Y8hbVThyYtHEhkRnIMinkWsmH/9YKU/A==
+ dependencies:
+ "@lerna/child-process" "6.0.1"
+ "@lerna/package-graph" "6.0.1"
+ "@lerna/project" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ "@lerna/write-log-file" "6.0.1"
clone-deep "^4.0.1"
dedent "^0.7.0"
execa "^5.0.0"
is-ci "^2.0.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/conventional-commits@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-5.0.0.tgz#7f9c16fda074c9ed897cb695f5ae23678dd441eb"
- integrity sha512-tUCRTAycDCtSlCEI0hublq4uKHeV0UHpwIb3Fdt6iv2AoTSPBSX/Dwu/6VqguysOSEkkR4M2JCOLvJCl4IMxwg==
+"@lerna/conventional-commits@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-6.0.1.tgz#72dd55aadc7c20eca5af3d03cdcfb613964dafc4"
+ integrity sha512-6oIGEZKy1GpooW28C0aEDkZ/rVkqpX44knP8Jyb5//1054QogqPhGC5q6J0lZxyhun8dQkpF6XTHlIintI8xow==
dependencies:
- "@lerna/validation-error" "5.0.0"
+ "@lerna/validation-error" "6.0.1"
conventional-changelog-angular "^5.0.12"
- conventional-changelog-core "^4.2.2"
+ conventional-changelog-core "^4.2.4"
conventional-recommended-bump "^6.1.0"
fs-extra "^9.1.0"
get-stream "^6.0.0"
- lodash.template "^4.5.0"
- npm-package-arg "^8.1.0"
- npmlog "^4.1.2"
+ npm-package-arg "8.1.1"
+ npmlog "^6.0.2"
pify "^5.0.0"
semver "^7.3.4"
-"@lerna/create-symlink@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-5.0.0.tgz#eccef7f89fdc4d7cd904694d9e2eb0b582073b5e"
- integrity sha512-nHYNacrh15Y0yEofVlUVu9dhf4JjIn9hY7v7rOUXzUeQ91iXY5Q3PVHkBeRUigyT5CWP5qozZwraCMwp+lDWYg==
+"@lerna/create-symlink@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-6.0.1.tgz#5a9f75f8e5c0d83c39d70240f51284cc5d6770ad"
+ integrity sha512-ZmLx9SP5De6u1xkD7Z6gMMFuyLKCb+2bodreFe7ryOVP3cOLbmNOmgMgj+gtUgIwIv7BDwX3qFWlPY6B3VW3hQ==
dependencies:
- cmd-shim "^4.1.0"
+ cmd-shim "^5.0.0"
fs-extra "^9.1.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/create@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/create/-/create-5.0.0.tgz#4aac3d1f2c1f6d7fadde49d3663b318fcdd39b06"
- integrity sha512-sdFTVTLOVuhHpzIYhFAwK0Ry3p4d7uMe9ZG/Ii128/pB9kEEfCth+1WBq6mBpYZ5mOLLgxJbWalbiJFl0toQRw==
+"@lerna/create@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/create/-/create-6.0.1.tgz#7905cef9196cb6a1caff5d7cd78a46fc7ea635a9"
+ integrity sha512-VuTdvBJDzvAaMBYoKTRMBQC+nfwnihxdA/ekUqBD+W8MMsqPLCGCneyl7JK9RaSSib/10LyRDEmfo79UAndcgQ==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/npm-conf" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/npm-conf" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
dedent "^0.7.0"
fs-extra "^9.1.0"
- globby "^11.0.2"
- init-package-json "^2.0.2"
- npm-package-arg "^8.1.0"
+ init-package-json "^3.0.2"
+ npm-package-arg "8.1.1"
p-reduce "^2.1.0"
- pacote "^13.4.1"
+ pacote "^13.6.1"
pify "^5.0.0"
semver "^7.3.4"
slash "^3.0.0"
validate-npm-package-license "^3.0.4"
- validate-npm-package-name "^3.0.0"
- whatwg-url "^8.4.0"
+ validate-npm-package-name "^4.0.0"
yargs-parser "20.2.4"
-"@lerna/describe-ref@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-5.0.0.tgz#f0676843642e8880133783a9f059e6cb4c027fe1"
- integrity sha512-iLvMHp3nl4wcMR3/lVkz0ng7pAHfLQ7yvz2HsYBq7wllCcEzpchzPgyVzyvbpJ+Ke/MKjQTsrHE/yOGOH67GVw==
+"@lerna/describe-ref@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-6.0.1.tgz#e9277bcc3c1c839fc7305b808f9dd02a5404aaf8"
+ integrity sha512-PcTVt4qgAXUPBtWHyqixtwE/eXe56+DFRnfTcJlb4x5F7LJ+7VNpdR/81qfP89Xj10U5IjELXbXmriz1KMwhfw==
dependencies:
- "@lerna/child-process" "5.0.0"
- npmlog "^4.1.2"
+ "@lerna/child-process" "6.0.1"
+ npmlog "^6.0.2"
-"@lerna/diff@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-5.0.0.tgz#844333f5478fc4993c4389fee1e0cd8eff9114fe"
- integrity sha512-S4XJ6i9oP77cSmJ3oRUJGMgrI+jOTmkYWur2nqgSdyJBE1J2eClgTJknb3WAHg2cHALT18WzFqNghFOGM+9dRA==
+"@lerna/diff@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-6.0.1.tgz#e8c5d541d74a9aa13a4ac6745f2f0d9531207fd1"
+ integrity sha512-/pGXH9txA8wX1YJ/KOBXzx0Z2opADBW4HKPCxxHAu+6dTGMbKABDljVT5Np3UpfIrAGDE5fTuf0aGL4vkKUWrg==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/validation-error" "5.0.0"
- npmlog "^4.1.2"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ npmlog "^6.0.2"
-"@lerna/exec@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-5.0.0.tgz#a59dd094e456ea46cfa8f713da0ea3334a7ec9ac"
- integrity sha512-g5i+2RclCGWLsl88m11j99YM2Gqnwa2lxZ5tDeqqWZFno6Dlvop17Yl6/MFH42EgM2DQHUUCammvcLIAJ2XwEA==
- dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/profiler" "5.0.0"
- "@lerna/run-topologically" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+"@lerna/exec@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-6.0.1.tgz#d2d0785c46b7ceb3758fe75bb6d95d177a0a0ec3"
+ integrity sha512-x9puoI3091Alp45w7XOGRxThOw45p+tWGPR5TBCEQiiH7f8eF9Dc4WX5HXf31ooK6NmD40eKPYhBgy8oQnJY9w==
+ dependencies:
+ "@lerna/child-process" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/profiler" "6.0.1"
+ "@lerna/run-topologically" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
p-map "^4.0.0"
-"@lerna/filter-options@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-5.0.0.tgz#1d2606e1d2ed106689b43cc5d41a77b239afb837"
- integrity sha512-un73aYkXlzKlnDPx2AlqNW+ArCZ20XaX+Y6C0F+av9VZriiBsCgZTnflhih9fiSMnXjN5r9CA8YdWvZqa3oAcQ==
+"@lerna/filter-options@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-6.0.1.tgz#4dbd29a31fb2ac228f72c51b223f17623d1f2c71"
+ integrity sha512-6KxbBI/2skRl/yQdjugQ1PWrSLq19650z8mltF0HT7B686fj7LlDNtESFOtY6iZ8IPqKBkIavOP0DPmJZd7Szw==
dependencies:
- "@lerna/collect-updates" "5.0.0"
- "@lerna/filter-packages" "5.0.0"
+ "@lerna/collect-updates" "6.0.1"
+ "@lerna/filter-packages" "6.0.1"
dedent "^0.7.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/filter-packages@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-5.0.0.tgz#9aae543ab5e45a1b0c3f7ad33e0686ceb8d92c88"
- integrity sha512-+EIjVVaMPDZ05F/gZa+kcXjBOLXqEamcEIDr+2ZXRgJmnrLx9BBY1B7sBEFHg7JXbeOKS+fKtMGVveV0SzgH3Q==
+"@lerna/filter-packages@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-6.0.1.tgz#07f10dc78e852bbba44843b785ebc16f386cedaa"
+ integrity sha512-2bKhexeF07Urs2b0xYX2OgYUN0EzmS2FSgvw0KT6He48PGOkqgJjU7PIiWdPyOvZdukwm07qXTmJZulAHftceA==
dependencies:
- "@lerna/validation-error" "5.0.0"
+ "@lerna/validation-error" "6.0.1"
multimatch "^5.0.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/get-npm-exec-opts@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-5.0.0.tgz#25c1cd7d2b6c1fe903cd144d9f6e2d5cae47429b"
- integrity sha512-ZOg3kc5FXYA1kVFD2hfJOl64hNASWD6panwD0HlyzXgfKKTDRm/P/qtAqS8WGCzQWgEdx4wvsDe/58Lzzh6QzQ==
+"@lerna/get-npm-exec-opts@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-6.0.1.tgz#c766588d030c0ec7170650808957998e8ad70831"
+ integrity sha512-y2T+ODP8HNzHQn1ldrrPW+n823fGsN2sY0r78yURFxYZnxA9ZINyQ6IAejo5LqHrYN8Qhr++0RHo2tUisIHdKg==
dependencies:
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/get-packed@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-5.0.0.tgz#4de7f66184232c805dfca07b9a8c577f6ef02351"
- integrity sha512-fks7Tg7DvcCZxRWPS3JAWVuLnwjPC/hLlNsdYmK9nN3+RtPhmYQgBjLSONcENw1E46t4Aph72lA9nLcYBLksqw==
+"@lerna/get-packed@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-6.0.1.tgz#d31c10ec10658eeee4306886c100cd9600d6dd78"
+ integrity sha512-Z/5J5vbjdeGqZcPvUSiszvyizHdsTRiFlpPORWK3YfIsHllUB7QZnVHLg92UnSJrpPE0O1gH+k6ByhhR+3qEdA==
dependencies:
fs-extra "^9.1.0"
- ssri "^8.0.1"
+ ssri "^9.0.1"
tar "^6.1.0"
-"@lerna/github-client@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-5.0.0.tgz#65c984a393b1cbe35c2a707059c645bb9a03395e"
- integrity sha512-NoEyRkQ8XgBnrjRfC9ph1npfg1/4OdYG+r8lG/1WkJbdt1Wlym4VNZU2BYPMWwSQYMJuppoEr0LL2uuVcS4ZUw==
+"@lerna/github-client@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-6.0.1.tgz#081d13c2debf312d0e5a2bb2fad6e0c69e1501d6"
+ integrity sha512-UA7V3XUunJnrfCL2eyW9QsCjBWShv4dCRGUITXmpQJrNIMZIqVbBJzqN9LVHDNc/hEVZGt0EjtHWdpFCgD4ypg==
dependencies:
- "@lerna/child-process" "5.0.0"
+ "@lerna/child-process" "6.0.1"
"@octokit/plugin-enterprise-rest" "^6.0.1"
- "@octokit/rest" "^18.1.0"
- git-url-parse "^11.4.4"
- npmlog "^4.1.2"
+ "@octokit/rest" "^19.0.3"
+ git-url-parse "^13.1.0"
+ npmlog "^6.0.2"
-"@lerna/gitlab-client@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-5.0.0.tgz#c4e3d16566a3b07908ee604ce681a09c418481de"
- integrity sha512-WREAT7qzta9hxNxktTX0x1/sEMpBP+4Gc00QSJYXt+ZzxY0t5RUx/ZK5pQl+IDhtkajrvXT6fSfZjMxxyE8hhQ==
+"@lerna/gitlab-client@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-6.0.1.tgz#1863b621a1530bc482113cac8791247664dedb2a"
+ integrity sha512-yyaBKf/OqBAau6xDk1tnMjfkxRpC/j3OwUyXFFGfJFSulWRHpbHoFSfvIgOn/hkjAr9FfHC7TXItRg8qdm38Wg==
dependencies:
node-fetch "^2.6.1"
- npmlog "^4.1.2"
- whatwg-url "^8.4.0"
+ npmlog "^6.0.2"
-"@lerna/global-options@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-5.0.0.tgz#02505c9e468188e3a254c262d58739092de93d8d"
- integrity sha512-PZYy/3mTZwtA9lNmHHRCc/Ty1W20qGJ/BdDIo4bw/Bk0AOcoBCLT9b3Mjijkl4AbC9+eSGk3flUYapCGVuS32Q==
+"@lerna/global-options@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-6.0.1.tgz#83061d85759c105120ff55716959642ba6eb0eea"
+ integrity sha512-vzjDI3Bg2NR+cSgfjHWax2bF1HmQYjJF2tmZlT/hJbwhaVMIEnhzHnJ9Yycmm98cdV77xEMlbmk5YD7xgFdG2w==
-"@lerna/has-npm-version@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-5.0.0.tgz#ed62c6ef857f068209663aae9f156f06a93dc1bd"
- integrity sha512-zJPgcml86nhJFJTpT+kjkcafuCFvK7PSq3oDC2KJxwB1bhlYwy+SKtAEypHSsHQ2DwP0YgPITcy1pvtHkie1SA==
+"@lerna/has-npm-version@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-6.0.1.tgz#ed27a27cad2090069feb3108b105ceec765bec5e"
+ integrity sha512-ol1onJaauMXK0cQsfRX2rvbhNRyNBY9Ne5trrRjfMROa7Tnr8c3I4+aKQs7m4z1JdWaGBV4xBH+NSZ/esPuaWA==
dependencies:
- "@lerna/child-process" "5.0.0"
+ "@lerna/child-process" "6.0.1"
semver "^7.3.4"
-"@lerna/import@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/import/-/import-5.0.0.tgz#11cd83ef0fe854c512146fd4165f33519364b97a"
- integrity sha512-cD+Is7eV/I+ZU0Wlg+yAgKaZbOvfzA7kBj2Qu1HtxeLhc7joTR8PFW1gNjEsvrWOTiaHAtObbo1A+MKYQ/T12g==
- dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/prompt" "5.0.0"
- "@lerna/pulse-till-done" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+"@lerna/import@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/import/-/import-6.0.1.tgz#9e869d6bbe82446ee3620c4310ca6232881b7952"
+ integrity sha512-GrTtIWUCnDf+FqRjenV2OKWU+khoZj0h/etgfXus45PBO2+V/SkkzIY4xof23XphiydUYrSrYtwx2i1aEmk3Wg==
+ dependencies:
+ "@lerna/child-process" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/prompt" "6.0.1"
+ "@lerna/pulse-till-done" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
dedent "^0.7.0"
fs-extra "^9.1.0"
p-map-series "^2.1.0"
-"@lerna/info@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/info/-/info-5.0.0.tgz#649566474d0d133c22bb821f88e7d062a2beace5"
- integrity sha512-k9TMK81apTjxxpnjfFOABKXndTtHBPgB8UO+I6zKhsfRqVb9FCz2MHOx8cQiSyolvNyGSQdSylSo4p7EBBomQQ==
+"@lerna/info@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/info/-/info-6.0.1.tgz#68395061ffbd81c7716d60b99b5220c90ade2862"
+ integrity sha512-QEW7JtJjoR1etUrcft7BnrwPZFHE2JPmt2DoSvSmLISLyy+HlmdXHK+p6Ej3g1ql8gS0GWCacgwmlRZ27CDp5A==
dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/output" "5.0.0"
+ "@lerna/command" "6.0.1"
+ "@lerna/output" "6.0.1"
envinfo "^7.7.4"
-"@lerna/init@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/init/-/init-5.0.0.tgz#e35d95a4882aafb4600abf9b32fd1a0056e73ed9"
- integrity sha512-2n68x7AIqVa+Vev9xF3NV9ba0C599KYf7JsIrQ5ESv4593ftInJpwgMwjroLT3X/Chi4BK7y2/xGmrfFVwgILg==
+"@lerna/init@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/init/-/init-6.0.1.tgz#babee56707bd19b3c1b82967e3360d1083c04cf9"
+ integrity sha512-zOMrSij09LSAVUUujpD3y32wkHp8dQ+/dVCp4USlfcGfI+kIPc5prkYCGDO8dEcqkze0pMfDMF23pVNvAf9g7w==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/command" "5.0.0"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/project" "6.0.1"
fs-extra "^9.1.0"
p-map "^4.0.0"
write-json-file "^4.3.0"
-"@lerna/link@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/link/-/link-5.0.0.tgz#dbd5aefa0bb22f2fd9d61ee82009fb34eb946298"
- integrity sha512-00YxQ06TVhQJthOjcuxCCJRjkAM+qM/8Lv0ckdCzBBCSr4RdAGBp6QcAX/gjLNasgmNpyiza3ADet7mCH7uodw==
+"@lerna/link@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/link/-/link-6.0.1.tgz#a94cf3aead92538835d955c6de281c65097f3471"
+ integrity sha512-VXZ77AWsJCycTu219ZLUHyRzMd5hgivLk5ZyBD1s/emArFvdEmGLscj2RXn3P3w/951b+DNG2Zbi6nek0iJ6DA==
dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/package-graph" "5.0.0"
- "@lerna/symlink-dependencies" "5.0.0"
+ "@lerna/command" "6.0.1"
+ "@lerna/package-graph" "6.0.1"
+ "@lerna/symlink-dependencies" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
p-map "^4.0.0"
slash "^3.0.0"
-"@lerna/list@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/list/-/list-5.0.0.tgz#0a979dc9c24ca176c7b4b58de80cab2dac2dcb8a"
- integrity sha512-+B0yFil2AFdiYO8hyU1bFbKXGBAUUQQ43/fp2XS2jBFCipLme4eTILL5gMKOhr2Xg9AsfYPXRMRer5VW7qTeeQ==
+"@lerna/list@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/list/-/list-6.0.1.tgz#ab6d056c5d7b99ca0ed6a17d48bf907afd9d970a"
+ integrity sha512-M9Vneh866E1nlpU88rcUMLR+XTVi3VY0fLPr1OqXdYF+eTe6RkEHUQj8HIk94Rnt02HsWc4+FO31T4i5sf+PaA==
dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/listable" "5.0.0"
- "@lerna/output" "5.0.0"
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/listable" "6.0.1"
+ "@lerna/output" "6.0.1"
-"@lerna/listable@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-5.0.0.tgz#c1753d9375932b15c4c84cc767fffb3447b8f213"
- integrity sha512-Rd5sE7KTbqA8u048qThH5IyBuJIwMcUnEObjFyJyKpc1SEWSumo4yAYmcEeN/9z62tcdud5wHYPSbVgfXJq37g==
+"@lerna/listable@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-6.0.1.tgz#444e81f6642c198d116e9e6b86d96d10ddf2e147"
+ integrity sha512-+xEByVX0sbnBW3EBu3XCg71Bz9/dahncmCjNK0kVnZLnQZzfULCndaQeSt+f9KO0VCs8h1tnXdo2uLPm4lThnw==
dependencies:
- "@lerna/query-graph" "5.0.0"
+ "@lerna/query-graph" "6.0.1"
chalk "^4.1.0"
- columnify "^1.5.4"
+ columnify "^1.6.0"
-"@lerna/log-packed@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-5.0.0.tgz#afa35bb6a5736038d7dde039e09828ac1c4945a2"
- integrity sha512-0TxKX+XnlEYj0du9U2kg3HEyIb/0QsM0Slt8utuCxALUnXRHTEKohjqVKsBdvh1QmJpnUbL5I+vfoYqno4Y42w==
+"@lerna/log-packed@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-6.0.1.tgz#20fe38b5f18e65392b42bf84cfdda0afc0b62330"
+ integrity sha512-HTJdZzfBbb5jyk/QU2O6o+yaWRwLoaPruhK+Q3ESTzQ2mlNCr0CI4UKWDcWURWx0EsVsYqsoUHuPZInpIHqCnA==
dependencies:
byte-size "^7.0.0"
- columnify "^1.5.4"
+ columnify "^1.6.0"
has-unicode "^2.0.1"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/npm-conf@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-5.0.0.tgz#1364270d231d0df5ac079a9a9733ba0dd7f8c2f9"
- integrity sha512-KSftxtMNVhLol1JNwFFNgh5jiCG010pewM+uKeSrUe0BCB3lnidiEDzu2CCn8JYYfIXqAiou/pScUiOxVLpcAA==
+"@lerna/npm-conf@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-6.0.1.tgz#fa242a36ef687c7b5207a9d9a85b9e7a4f38bdc5"
+ integrity sha512-VjxODCnl6QJGoQ8z8AWEID1GO9CtCr2yRyn6NoRdBOTYmzI5KhBBM+nWmyMSOUe0EZI+K5j04/GRzKHg2KXTAQ==
dependencies:
config-chain "^1.1.12"
pify "^5.0.0"
-"@lerna/npm-dist-tag@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-5.0.0.tgz#becd7fb0bd963357818c8d4fae955cc9f8885cba"
- integrity sha512-ccUFhp9Wu/FHW5/5fL+vLiSTcUZXtKQ7c0RMXtNRzIdTXBxPBkVi1k5QAnBAAffsz6Owc/K++cb+/zQ/asrG3g==
+"@lerna/npm-dist-tag@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-6.0.1.tgz#4718bdedd82f375ba619319070b694f1113e627b"
+ integrity sha512-jJKDgnhj6xGqSWGcbwdcbPtoo2m4mHRwqu8iln9e3TMOEyUO9aA4uvd0/18tEAsboOMiLUhhcQ8709iKv21ZEA==
dependencies:
- "@lerna/otplease" "5.0.0"
- npm-package-arg "^8.1.0"
- npm-registry-fetch "^9.0.0"
- npmlog "^4.1.2"
+ "@lerna/otplease" "6.0.1"
+ npm-package-arg "8.1.1"
+ npm-registry-fetch "^13.3.0"
+ npmlog "^6.0.2"
-"@lerna/npm-install@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-5.0.0.tgz#0ee1750bb26eae3c2b4d742d5c1f055e46d534df"
- integrity sha512-72Jf05JCIdeSBWXAiNjd/y2AQH4Ojgas55ojV2sAcEYz2wgyR7wSpiI6fHBRlRP+3XPjV9MXKxI3ZwOnznQxqQ==
+"@lerna/npm-install@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-6.0.1.tgz#5d6f0c62b34f2bfeb8f20b81b08f01ca0d3ed60b"
+ integrity sha512-saDJSyhhl/wxgZSzRx2/pr0wsMR+hZpdhLGd1lZgo5XzLq3ogK+BxPFz3AK3xhRnNaMq96gDQ3xmeetoV53lwQ==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/get-npm-exec-opts" "5.0.0"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/get-npm-exec-opts" "6.0.1"
fs-extra "^9.1.0"
- npm-package-arg "^8.1.0"
- npmlog "^4.1.2"
+ npm-package-arg "8.1.1"
+ npmlog "^6.0.2"
signal-exit "^3.0.3"
write-pkg "^4.0.0"
-"@lerna/npm-publish@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-5.0.0.tgz#a1a06e47e45e56999c85086a40f9b77f801b5a00"
- integrity sha512-jnapZ2jRajSzshSfd1Y3rHH5R7QC+JJlYST04FBebIH3VePwDT7uAglDCI4um2THvxkW4420EzE4BUMUwKlnXA==
+"@lerna/npm-publish@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-6.0.1.tgz#ffbca4be5b971df978a60917460ee8f28b1c62b7"
+ integrity sha512-hgzF9fOfp010z7PJtqNLxNXiHr6u4UDVwiX8g22rhJKBh9Ekrq7N9NS3mF0l+RcleRU/jJKYtZ0Ci3fICaaRUg==
dependencies:
- "@lerna/otplease" "5.0.0"
- "@lerna/run-lifecycle" "5.0.0"
+ "@lerna/otplease" "6.0.1"
+ "@lerna/run-lifecycle" "6.0.1"
fs-extra "^9.1.0"
- libnpmpublish "^4.0.0"
- npm-package-arg "^8.1.0"
- npmlog "^4.1.2"
+ libnpmpublish "^6.0.4"
+ npm-package-arg "8.1.1"
+ npmlog "^6.0.2"
pify "^5.0.0"
- read-package-json "^3.0.0"
+ read-package-json "^5.0.1"
-"@lerna/npm-run-script@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-5.0.0.tgz#114374b89f228c9719bbfacf9f08d6aac2739fb2"
- integrity sha512-qgGf0Wc/E2YxPwIiF8kC/OB9ffPf0/HVtPVkqrblVuNE9XVP80WilOH966PIDiXzwXaCo/cTswFoBeseccYRGw==
+"@lerna/npm-run-script@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-6.0.1.tgz#3a255aa6f37a5e2369a37a8ddcb2709f84019ed1"
+ integrity sha512-K+D4LEoVRuBoKRImprkVRHIORu0xouX+c6yI1B93KWHKJ60H8qCeB0gQkA30pFALx3qG07bXVnFmfK9SGQXD3Q==
dependencies:
- "@lerna/child-process" "5.0.0"
- "@lerna/get-npm-exec-opts" "5.0.0"
- npmlog "^4.1.2"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/get-npm-exec-opts" "6.0.1"
+ npmlog "^6.0.2"
-"@lerna/otplease@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-5.0.0.tgz#5b0419f64908d7ad840c2735e0284d67cd37095b"
- integrity sha512-QLLkEy1DPN1XFRAAZDHxAD26MHFQDHfzB6KKSzRYxbHc6lH/YbDaMH1RloSWIm7Hwkxl/3NgpokgN4Lj5XFuzg==
+"@lerna/otplease@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-6.0.1.tgz#da5467c603565940c1f91e65d077abf25d96df7f"
+ integrity sha512-RrP8GtfE9yz37GuuCFqddR3mVIQc1ulUpAaaDNK4AOTb7gM0aCsTN7V2gCGBk1zdIsBuvNvNqt5jpWm4U6/EAA==
dependencies:
- "@lerna/prompt" "5.0.0"
+ "@lerna/prompt" "6.0.1"
-"@lerna/output@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/output/-/output-5.0.0.tgz#f3712f0cad3e9ef73c803fe368f6a9ac20403868"
- integrity sha512-/7sUJQWPcvnLudjVIdN7t9MlfBLuP4JCDAWgQMqZe+wpQRuKNyKQ5dLBH5NHU/ElJCjAwMPfWuk3mh3GuvuiGA==
+"@lerna/output@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/output/-/output-6.0.1.tgz#5e301ad0bed607ee139cf207fd75ed1e5fac7908"
+ integrity sha512-4jZ3fgaCbnsTZ353/lXE/3w20Cge6G3iUoESVip+JE2yhZ8rWgPISG8RFR0YGEtSgq2yC9AgGnGlvmOnAc4SAQ==
dependencies:
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/pack-directory@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-5.0.0.tgz#f277418545786ca68ca15647bab52ad29bd57f59"
- integrity sha512-E1SNDS7xSWhJrTSmRzJK7DibneljrymviKcsZW3mRl4TmF4CpYJmNXCMlhEtKEy6ghnGQvnl3/4+eslHDJ5J/w==
- dependencies:
- "@lerna/get-packed" "5.0.0"
- "@lerna/package" "5.0.0"
- "@lerna/run-lifecycle" "5.0.0"
- "@lerna/temp-write" "5.0.0"
- npm-packlist "^2.1.4"
- npmlog "^4.1.2"
+"@lerna/pack-directory@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-6.0.1.tgz#4a0bf61b7cb1b1b3f1fb95afec987a7c63ff9f95"
+ integrity sha512-vNgS5Rs7s6khOYuHE5nTds0VDfHBH8YNGvV1s0yGAg/Zkivi7bOTs8jDQFiYhQX3HOTC1/85BLhGQ3zcDHlrew==
+ dependencies:
+ "@lerna/get-packed" "6.0.1"
+ "@lerna/package" "6.0.1"
+ "@lerna/run-lifecycle" "6.0.1"
+ "@lerna/temp-write" "6.0.1"
+ npm-packlist "^5.1.1"
+ npmlog "^6.0.2"
tar "^6.1.0"
-"@lerna/package-graph@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-5.0.0.tgz#53e88ef46359ef7a2f6e3b7c5bab82302a10653f"
- integrity sha512-Z3QeUQVjux0Blo64rA3/NivoLDlsQBjsZRIgGLbcQh7l7pJrqLK1WyNCBbPJ0KQNljQqUXthCKzdefnEWe37Ew==
+"@lerna/package-graph@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-6.0.1.tgz#db72ab9ed45933d1518de7f7389a6c79e6059336"
+ integrity sha512-OMppRWpfSaI6HO/Tc5FVpNefgOsCc3/DzaMLme6QTTpbEwD3EhvQ3Xx0MgsGMPdmZhWp/WOoAJsVRnLa+l03gg==
dependencies:
- "@lerna/prerelease-id-from-version" "5.0.0"
- "@lerna/validation-error" "5.0.0"
- npm-package-arg "^8.1.0"
- npmlog "^4.1.2"
+ "@lerna/prerelease-id-from-version" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ npm-package-arg "8.1.1"
+ npmlog "^6.0.2"
semver "^7.3.4"
-"@lerna/package@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/package/-/package-5.0.0.tgz#4beeb3a1e8eed6e7ae9cebca283c7684278cdd28"
- integrity sha512-/JiUU88bhbYEUTzPqoGLGwrrdWWTIVMlBb1OPxCGNGDEqYYNySX+OTTSs3zGMcmJnRNI0UyQALiEd0sh3JFN5w==
+"@lerna/package@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/package/-/package-6.0.1.tgz#cb950e574b1ea3ef5cd8cf62b3c4308f6c869122"
+ integrity sha512-vCwyiLVJ4K3SR6KZleglq1dUXIiYGmk3b+NrFWP/Z3dhVE0C+RqgxSsAS4aaUNMSO2KSI0dBdce7BT/D+FdpIQ==
dependencies:
load-json-file "^6.2.0"
- npm-package-arg "^8.1.0"
+ npm-package-arg "8.1.1"
write-pkg "^4.0.0"
-"@lerna/prerelease-id-from-version@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-5.0.0.tgz#3edb90ba9ceace97708d03ff9f650d177f973184"
- integrity sha512-bUZwyx6evRn2RxogOQXaiYxRK1U/1Mh/KLO4n49wUhqb8S8Vb9aG3+7lLOgg4ZugHpj9KAlD3YGEKvwYQiWzhg==
+"@lerna/prerelease-id-from-version@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-6.0.1.tgz#a47980aa6c78deaa36430d03b6300bc889960b50"
+ integrity sha512-aZBs/FinztKjNXlk0cW99FpABynZzZwlmJuW4h9nMrQPgWoaDAERfImbefIH/lcpxdRuuGtClyZUFBOSq8ppfg==
dependencies:
semver "^7.3.4"
-"@lerna/profiler@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-5.0.0.tgz#e1b74d17dbd6172b5ce9c80426b336bf6ab2e8e9"
- integrity sha512-hFX+ZtoH7BdDoGI+bqOYaSptJTFI58wNK9qq/pHwL5ksV7vOhxP2cQAuo1SjgBKHGl0Ex/9ZT080YVV4jP1ehw==
+"@lerna/profiler@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-6.0.1.tgz#2b7a043e6999823ad97a7ddaea0ed7f338032f92"
+ integrity sha512-vZrgF5pDhYWY/Gx7MjtyOgTVMA6swDV2+xPZwkvRD1Z0XpWEIn5d79zRN/1SBpdMNozC7Lj++1oEbCGNWhy/ow==
dependencies:
fs-extra "^9.1.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
upath "^2.0.1"
-"@lerna/project@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/project/-/project-5.0.0.tgz#31672891236696b2a70226388de0300c6086d75f"
- integrity sha512-+izHk7D/Di2b0s69AzKzAa/qBz32H9s67oN9aKntrjNylpY7iN5opU157l60Kh4TprYHU5bLisqzFLZsHHADGw==
+"@lerna/project@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/project/-/project-6.0.1.tgz#0d4a6dbca1943478d554d4a3a610968caf9b303a"
+ integrity sha512-/n2QuAEgImbwUqrJND15FxYu29p/mLTUpL/8cSg6IUlOQRFyXteESRyl8A2Ex7Wj00FMbtB13vgbmTdkTgKL0A==
dependencies:
- "@lerna/package" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+ "@lerna/package" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
cosmiconfig "^7.0.0"
dedent "^0.7.0"
dot-prop "^6.0.1"
glob-parent "^5.1.1"
globby "^11.0.2"
+ js-yaml "^4.1.0"
load-json-file "^6.2.0"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
p-map "^4.0.0"
resolve-from "^5.0.0"
write-json-file "^4.3.0"
-"@lerna/prompt@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-5.0.0.tgz#31d3d82ecd17e863f8b7cc7944accff4f3de3395"
- integrity sha512-cq2k04kOPY1yuJNHJn4qfBDDrCi9PF4Q228JICa6bxaONRf/C/TRsEQXHVIdlax8B3l53LnlGv5GECwRuvkQbA==
+"@lerna/prompt@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-6.0.1.tgz#2a744b168ce4a29b7c66d500258a3f65b3f028e2"
+ integrity sha512-faR7oVdHBO3QTJ6o9kUEDPpyjCftd/CCa1rAC6q8f3vlLfCPrTym0qT+DcOBFGpDQh4m2dmGfJZgpXIVi6bMbg==
dependencies:
- inquirer "^7.3.3"
- npmlog "^4.1.2"
+ inquirer "^8.2.4"
+ npmlog "^6.0.2"
-"@lerna/publish@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-5.0.0.tgz#27c4c469e6abd5b52e977568d328632929e859b1"
- integrity sha512-QEWFtN8fW1M+YXEQOWb2XBBCT137CrwHYK29ojMXW9HShvSZezf8Q/niH91nZ4kIhWdpOGz4w3rKopsumAM5SA==
- dependencies:
- "@lerna/check-working-tree" "5.0.0"
- "@lerna/child-process" "5.0.0"
- "@lerna/collect-updates" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/describe-ref" "5.0.0"
- "@lerna/log-packed" "5.0.0"
- "@lerna/npm-conf" "5.0.0"
- "@lerna/npm-dist-tag" "5.0.0"
- "@lerna/npm-publish" "5.0.0"
- "@lerna/otplease" "5.0.0"
- "@lerna/output" "5.0.0"
- "@lerna/pack-directory" "5.0.0"
- "@lerna/prerelease-id-from-version" "5.0.0"
- "@lerna/prompt" "5.0.0"
- "@lerna/pulse-till-done" "5.0.0"
- "@lerna/run-lifecycle" "5.0.0"
- "@lerna/run-topologically" "5.0.0"
- "@lerna/validation-error" "5.0.0"
- "@lerna/version" "5.0.0"
+"@lerna/publish@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-6.0.1.tgz#9448a35a87e2c986c8919114698f3a314a9a2574"
+ integrity sha512-xIleRwCuPHtShNSPc6RDH33Z+EO1E4O0LOhPq5qTwanNPYh5eL6bDHBsox44BbMD9dhhI4PUrqIGTu3AoKdDxg==
+ dependencies:
+ "@lerna/check-working-tree" "6.0.1"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/collect-updates" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/describe-ref" "6.0.1"
+ "@lerna/log-packed" "6.0.1"
+ "@lerna/npm-conf" "6.0.1"
+ "@lerna/npm-dist-tag" "6.0.1"
+ "@lerna/npm-publish" "6.0.1"
+ "@lerna/otplease" "6.0.1"
+ "@lerna/output" "6.0.1"
+ "@lerna/pack-directory" "6.0.1"
+ "@lerna/prerelease-id-from-version" "6.0.1"
+ "@lerna/prompt" "6.0.1"
+ "@lerna/pulse-till-done" "6.0.1"
+ "@lerna/run-lifecycle" "6.0.1"
+ "@lerna/run-topologically" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ "@lerna/version" "6.0.1"
fs-extra "^9.1.0"
- libnpmaccess "^4.0.1"
- npm-package-arg "^8.1.0"
- npm-registry-fetch "^9.0.0"
- npmlog "^4.1.2"
+ libnpmaccess "^6.0.3"
+ npm-package-arg "8.1.1"
+ npm-registry-fetch "^13.3.0"
+ npmlog "^6.0.2"
p-map "^4.0.0"
p-pipe "^3.1.0"
- pacote "^13.4.1"
+ pacote "^13.6.1"
semver "^7.3.4"
-"@lerna/pulse-till-done@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-5.0.0.tgz#df3c32c2d7457362956d997da366f5c060953eef"
- integrity sha512-qFeVybGIZbQSWKasWIzZmHsvCQMC/AwTz5B44a0zTt5eSNQuI65HRpKKUgmFFu/Jzd7u+yp7eP+NQ53gjOcQlQ==
+"@lerna/pulse-till-done@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-6.0.1.tgz#d23985aea1ba25bb33cf74b39f36f2b7a5d21791"
+ integrity sha512-DK5Ylh/O7Vzn9ObEggvoHdLxc1hiXsDZ4fUvSmi50kc5QrMrk+xo6OyPgIaDBhYxj6lm3TQ1KkvWnRgiEynKAg==
dependencies:
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/query-graph@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-5.0.0.tgz#76c45f648915ef5c884c32c3d35daa3ebb53440b"
- integrity sha512-C/HXssBI8DVsZ/7IDW6JG9xhoHtWywi3L5oZB9q84MBYpQ9otUv6zbB+K4JCj7w9WHcuFWe2T/mc9wsaFuvB5g==
+"@lerna/query-graph@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-6.0.1.tgz#f72b55f0ee4662d06167e639e975019e5c004c59"
+ integrity sha512-X8Z63Ax5a9nXgNBG+IAXEdCL4MG88akr7L4mBvKiTPrK5VgP46YzuZSaSoPI8bU67MlWBkSYQWAJJ5t0HEtKTw==
dependencies:
- "@lerna/package-graph" "5.0.0"
+ "@lerna/package-graph" "6.0.1"
-"@lerna/resolve-symlink@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-5.0.0.tgz#edff89908e90a390791ab762305d34aa95e7bdbe"
- integrity sha512-O1EMQh3O3nKjLyI2guCCaxmi9xzZXpiMZhrz2ki5ENEDB2N1+f7cZ2THT0lEOIkLRuADI6hrzoN1obJ+TTk+KQ==
+"@lerna/resolve-symlink@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-6.0.1.tgz#30c3ccf4c730451754ce7aa002772f26dd757c20"
+ integrity sha512-btosycLN+2lpqou6pz0Oeq4XIKHDIn0NvdnuCBLxtuBOBNIkdlx5QWKCtZ31GYKbCUt55w1DSGL64kfVuejVQQ==
dependencies:
fs-extra "^9.1.0"
- npmlog "^4.1.2"
- read-cmd-shim "^2.0.0"
+ npmlog "^6.0.2"
+ read-cmd-shim "^3.0.0"
-"@lerna/rimraf-dir@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-5.0.0.tgz#9e7689610415e6d68c9e766a462c8acfdbf04b9a"
- integrity sha512-hWJg/13CiSUrWWEek3B/A1mkvBbcPvG5z69/Ugyerdpzlw44ubf02MAZ0/kXPJjkICI2hMrS07YotQ60LdYpCw==
+"@lerna/rimraf-dir@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-6.0.1.tgz#e52ba283a4c39ade75792c23d0c6dcec65dcbbf4"
+ integrity sha512-rBFkwrxEQWFfZV5IMiPfGVubOquvOTNsPJPUf5tZoPAqKHXVQi5iYZGB65VG8JA7eFenZxh5mVErX2gtWFh1Ew==
dependencies:
- "@lerna/child-process" "5.0.0"
- npmlog "^4.1.2"
+ "@lerna/child-process" "6.0.1"
+ npmlog "^6.0.2"
path-exists "^4.0.0"
rimraf "^3.0.2"
-"@lerna/run-lifecycle@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-5.0.0.tgz#0f62c2faebc19e4ee247bdfa1e05b2a9f51b0637"
- integrity sha512-36mAm9rC5DSliFShI0Y4ICjgrJXdIIVt7VW9rdbdJ8/XYjRHDzhGPB9Sc1neJOVlGL4DmaArvh5tGgo62KPJYQ==
+"@lerna/run-lifecycle@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-6.0.1.tgz#ab94838cf7daa1edd6228be0a161b38ec1a42a0b"
+ integrity sha512-gC7rnV3mrgFFIM8GlHc3d22ovYHoExu9CuIAxN26CVrMq7iEYxWoxYvweqVANsCHR7CVbs+dsDx8/TP1pQG8wg==
dependencies:
- "@lerna/npm-conf" "5.0.0"
- "@npmcli/run-script" "^3.0.2"
- npmlog "^4.1.2"
+ "@lerna/npm-conf" "6.0.1"
+ "@npmcli/run-script" "^4.1.7"
+ npmlog "^6.0.2"
+ p-queue "^6.6.2"
-"@lerna/run-topologically@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-5.0.0.tgz#0b0156e3ebe2bf768b9ba1339e02e947e70d1dd1"
- integrity sha512-B2s1N/+r3sfPOLRA2svNk+C52JpXQleMuGap0yhOx5mZzR1M2Lo4vpe9Ody4hCvXQjfdLx/U342fxVmgugUtfQ==
+"@lerna/run-topologically@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-6.0.1.tgz#dcf26259e57b224d4aad2e3b259555ecd2f226ea"
+ integrity sha512-p4J9RvOUyDUjQ21tDh7Durci9YnuBu3T8WXD8xu5ZwcxVnawK1h5B8kP4V1R5L/jwNqkXsAnlLwikPVGQ5Iptw==
dependencies:
- "@lerna/query-graph" "5.0.0"
+ "@lerna/query-graph" "6.0.1"
p-queue "^6.6.2"
-"@lerna/run@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/run/-/run-5.0.0.tgz#3af69d1a787866cf85072a0ae9571b9c3bf262e7"
- integrity sha512-8nBZstqKSO+7wHlKk1g+iexSYRVVNJq/u5ZbAzBiHNrABtqA6/0G7q9vsAEMsnPZ8ARAUYpwvbfKTipjpWH0VA==
- dependencies:
- "@lerna/command" "5.0.0"
- "@lerna/filter-options" "5.0.0"
- "@lerna/npm-run-script" "5.0.0"
- "@lerna/output" "5.0.0"
- "@lerna/profiler" "5.0.0"
- "@lerna/run-topologically" "5.0.0"
- "@lerna/timer" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+"@lerna/run@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/run/-/run-6.0.1.tgz#20d3c77fa8faad01b915214b95477ae5390c8b45"
+ integrity sha512-F1vvpaevsWCjaQs3NlBegH54izm3cO3Qbg/cRRzPZMK4Jo7gE1ddL7+zCIq0zGt6aeVqRGBOtUMk4SvNGkzI4w==
+ dependencies:
+ "@lerna/command" "6.0.1"
+ "@lerna/filter-options" "6.0.1"
+ "@lerna/npm-run-script" "6.0.1"
+ "@lerna/output" "6.0.1"
+ "@lerna/profiler" "6.0.1"
+ "@lerna/run-topologically" "6.0.1"
+ "@lerna/timer" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ fs-extra "^9.1.0"
p-map "^4.0.0"
-"@lerna/symlink-binary@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-5.0.0.tgz#f9da5673ed3a44570fa4d2e691759f82bd7ad057"
- integrity sha512-uYyiiNjkdL1tWf8MDXIIyCa/a2gmYaUxagqMgEZ4wRtOk+PDypDwMUFVop/EQtUWZqG5CAJBJYOztG3DdapTbA==
+"@lerna/symlink-binary@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-6.0.1.tgz#b9278650c3360cc518e0d313d9999cd740a2c054"
+ integrity sha512-TcwxDMgU9w+hGl0EeYihPytVRKV0KTeZZW4Bq6NEtjTCIIuKWxZjcY5ocxW22i6BClBvfFAJqkf+e+i3Nixlhg==
dependencies:
- "@lerna/create-symlink" "5.0.0"
- "@lerna/package" "5.0.0"
+ "@lerna/create-symlink" "6.0.1"
+ "@lerna/package" "6.0.1"
fs-extra "^9.1.0"
p-map "^4.0.0"
-"@lerna/symlink-dependencies@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-5.0.0.tgz#878b0f52737f82bb7014e13afda8efc606fc071c"
- integrity sha512-wlZGOOB87XMy278hpF4fOwGNnjTXf1vJ/cFHIdKsJAiDipyhtnuCiJLBDPh4NzEGb02o4rhaqt8Nl5yWRu9CNA==
+"@lerna/symlink-dependencies@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-6.0.1.tgz#28c01b3f910c1d13b1d447d27c47f5c76efd0096"
+ integrity sha512-ImyqjLjMBu0ORGO9gYHr9oDgN/5QeeGuELtYNweLS5vMNSH1dokQW9fqZSrgfCJPbxeCizBcDTi/Knqg17ebkA==
dependencies:
- "@lerna/create-symlink" "5.0.0"
- "@lerna/resolve-symlink" "5.0.0"
- "@lerna/symlink-binary" "5.0.0"
+ "@lerna/create-symlink" "6.0.1"
+ "@lerna/resolve-symlink" "6.0.1"
+ "@lerna/symlink-binary" "6.0.1"
fs-extra "^9.1.0"
p-map "^4.0.0"
p-map-series "^2.1.0"
-"@lerna/temp-write@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/temp-write/-/temp-write-5.0.0.tgz#44f8c7c82f498e15db33c166d063be117b819162"
- integrity sha512-JOkRR6xyASuBy1udyS/VD52Wgywnz7cSKppD+QKIDseNzTq27I9mNmb702BSXNXIdD19lLVQ7q6WoAlpnelnZg==
+"@lerna/temp-write@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/temp-write/-/temp-write-6.0.1.tgz#84f8aa3f74b6150706a70430c68815517f5301cf"
+ integrity sha512-9eklYncDnwTnGF9o14GOrZU05ZK5n6/x5XYRQHbuLfK5T9pmOiUyl6sO1613cZygUMaWHHi7BLtBPiw2CklqXQ==
dependencies:
graceful-fs "^4.1.15"
is-stream "^2.0.0"
@@ -1862,42 +2092,43 @@
temp-dir "^1.0.0"
uuid "^8.3.2"
-"@lerna/timer@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-5.0.0.tgz#ab8fba29f90de21b0eb02406916269122deb2e41"
- integrity sha512-p2vevkpB6V/b0aR8VyMLDfg0Arp9VvMxcZOEu+IfZ9XKTtnbwjWPHKUOS34x/VGa6bnOIWjE046ixWymOs/fTw==
+"@lerna/timer@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-6.0.1.tgz#eb10242c48a1246e1bf216af305974fbd6332d39"
+ integrity sha512-FLoga8iprKmRkh9jO+LP4Bm7MZLO4wNHM4LML4Dlh9CPwcIOWTteI8wSgRXvEJpt33IRIoPOUnfL3iHh8WwaYA==
-"@lerna/validation-error@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-5.0.0.tgz#3d3557023e3eb2fd3d8fc9c89f7352a1b6e5bd3e"
- integrity sha512-fu/MhqRXiRQM2cirP/HoSkfwc5XtJ21G60WHv74RnanKBqWEZAUALWa3MQN2sYhVV/FpDW3GLkO008IW5NWzdg==
+"@lerna/validation-error@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-6.0.1.tgz#afcf6b193eae86d64df9561afb7698696257304f"
+ integrity sha512-kjAxfFY1pDltwoCTvMQCbnpBwMXBFuvE4hdi8qePhBQ1Lf0PlTOI4ZqMFIkaTud+oujzysDXraTJbYTjc+C+zw==
dependencies:
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
-"@lerna/version@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/version/-/version-5.0.0.tgz#36a808e8b4458febd58a6b76852f2ce30e740ca1"
- integrity sha512-M8KvdyG5kR/d3wgg5S46Q2YMf0L9iw9MiumTvlDP4ckysTt+04kS74Vp4+aClgPM4xaoI5OuMrs6wy5ICcd3Pw==
- dependencies:
- "@lerna/check-working-tree" "5.0.0"
- "@lerna/child-process" "5.0.0"
- "@lerna/collect-updates" "5.0.0"
- "@lerna/command" "5.0.0"
- "@lerna/conventional-commits" "5.0.0"
- "@lerna/github-client" "5.0.0"
- "@lerna/gitlab-client" "5.0.0"
- "@lerna/output" "5.0.0"
- "@lerna/prerelease-id-from-version" "5.0.0"
- "@lerna/prompt" "5.0.0"
- "@lerna/run-lifecycle" "5.0.0"
- "@lerna/run-topologically" "5.0.0"
- "@lerna/temp-write" "5.0.0"
- "@lerna/validation-error" "5.0.0"
+"@lerna/version@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/version/-/version-6.0.1.tgz#988675be8ea29f1548cb4554c257c2cc94b78084"
+ integrity sha512-d/addeHVsRFWx3fb/XZIh6f23KuEC9Fn3ytpaMzA8rlLF3Nob1opIR98ZfUz7Nf+skpIV1QiIbXdJTZzIKvd9g==
+ dependencies:
+ "@lerna/check-working-tree" "6.0.1"
+ "@lerna/child-process" "6.0.1"
+ "@lerna/collect-updates" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/conventional-commits" "6.0.1"
+ "@lerna/github-client" "6.0.1"
+ "@lerna/gitlab-client" "6.0.1"
+ "@lerna/output" "6.0.1"
+ "@lerna/prerelease-id-from-version" "6.0.1"
+ "@lerna/prompt" "6.0.1"
+ "@lerna/run-lifecycle" "6.0.1"
+ "@lerna/run-topologically" "6.0.1"
+ "@lerna/temp-write" "6.0.1"
+ "@lerna/validation-error" "6.0.1"
+ "@nrwl/devkit" ">=14.8.6 < 16"
chalk "^4.1.0"
dedent "^0.7.0"
load-json-file "^6.2.0"
minimatch "^3.0.4"
- npmlog "^4.1.2"
+ npmlog "^6.0.2"
p-map "^4.0.0"
p-pipe "^3.1.0"
p-reduce "^2.1.0"
@@ -1906,28 +2137,28 @@
slash "^3.0.0"
write-json-file "^4.3.0"
-"@lerna/write-log-file@5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-5.0.0.tgz#ad3d33d6153b962beef48442ab6472233b5d5197"
- integrity sha512-kpPNxe9xm36QbCWY7DwO96Na6FpCHzZinJtw6ttBHslIcdR38lZuCp+/2KfJcVsRIPNOsp1VvgP7EZIKiBhgjw==
+"@lerna/write-log-file@6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-6.0.1.tgz#4335d5e08686f8250ebae9d7f56b64452bd90cd3"
+ integrity sha512-fJGDE8rlE35DwKSqV8M1VV2xw/vQlgwTwURjNOMvd1Ar23Aa9CkJC4XAwc9uUgIku34IsWUM8MNbw9ClSsJaqw==
dependencies:
- npmlog "^4.1.2"
- write-file-atomic "^3.0.3"
+ npmlog "^6.0.2"
+ write-file-atomic "^4.0.1"
-"@nestjs/common@8.4.6":
- version "8.4.6"
- resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-8.4.6.tgz#e2858c230371eeb5ccf7547d5b9434a2096da835"
- integrity sha512-INp1ERDrLiQ4GwRc3zotTwBLZm2sIwcJwnBE2yXqsth17KijmoVmY8UB5Tares0IlwjsqlRFWkCX8uWE5rzbSA==
+"@nestjs/common@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-8.4.7.tgz#fc4a575b797e230bb5a0bcab6da8b796aa88d605"
+ integrity sha512-m/YsbcBal+gA5CFrDpqXqsSfylo+DIQrkFY3qhVIltsYRfu8ct8J9pqsTO6OPf3mvqdOpFGrV5sBjoyAzOBvsw==
dependencies:
axios "0.27.2"
iterare "1.2.1"
tslib "2.4.0"
uuid "8.3.2"
-"@nestjs/core@8.4.6":
- version "8.4.6"
- resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-8.4.6.tgz#db1afa3202cddffa308c6f321e2e07ebcc05d513"
- integrity sha512-5zHpxTYV7HT3lfF7l/x0EWBfmuyuDOnGRcALf88tzDGs/7Q/VC6l65d6eFwDwI37NLtScqnmEkT9of8E3fT3mA==
+"@nestjs/core@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-8.4.7.tgz#fbec7fa744ac8749a4b966f759a6656c1cf43883"
+ integrity sha512-XB9uexHqzr2xkPo6QSiQWJJttyYYLmvQ5My64cFvWFi7Wk2NIus0/xUNInwX3kmFWB6pF1ab5Y2ZBvWdPwGBhw==
dependencies:
"@nuxtjs/opencollective" "0.3.2"
fast-safe-stringify "2.1.1"
@@ -1937,26 +2168,26 @@
tslib "2.4.0"
uuid "8.3.2"
-"@nestjs/mapped-types@1.0.1":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/@nestjs/mapped-types/-/mapped-types-1.0.1.tgz#78b62041c7a407db4a90eb140567321602bed18e"
- integrity sha512-NFvofzSinp00j5rzUd4tf+xi9od6383iY0JP7o0Bnu1fuItAUkWBgc4EKuIQ3D+c2QI3i9pG1kDWAeY27EMGtg==
+"@nestjs/mapped-types@1.2.0":
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/mapped-types/-/mapped-types-1.2.0.tgz#1bbdbb5c956f0adb3fd76add929137bc6ad3183f"
+ integrity sha512-NTFwPZkQWsArQH8QSyFWGZvJ08gR+R4TofglqZoihn/vU+ktHEJjMqsIsADwb7XD97DhiD+TVv5ac+jG33BHrg==
-"@nestjs/platform-express@8.4.6":
- version "8.4.6"
- resolved "https://registry.yarnpkg.com/@nestjs/platform-express/-/platform-express-8.4.6.tgz#517f503391248e7a88c51365cedd8ad9a9c6cb9d"
- integrity sha512-OserZ+RwjMyECFAL0/12Bztf63EnFhlFUEJ4/a502RQ0eZogt4M3ROauaW4bpt2Q3YH4hy0eT+4eqkVOMzjtPQ==
+"@nestjs/platform-express@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@nestjs/platform-express/-/platform-express-8.4.7.tgz#402a3d3c47327a164bb3867615f423c29d1a6cd9"
+ integrity sha512-lPE5Ltg2NbQGRQIwXWY+4cNrXhJdycbxFDQ8mNxSIuv+LbrJBIdEB/NONk+LLn9N/8d2+I2LsIETGQrPvsejBg==
dependencies:
body-parser "1.20.0"
cors "2.8.5"
express "4.18.1"
- multer "1.4.4"
+ multer "1.4.4-lts.1"
tslib "2.4.0"
-"@nestjs/platform-fastify@8.4.6":
- version "8.4.6"
- resolved "https://registry.yarnpkg.com/@nestjs/platform-fastify/-/platform-fastify-8.4.6.tgz#ef8b95c2d6e66900026bdfa3a1a4b348573a501b"
- integrity sha512-sRu8nWRFOAyLsu84Mc/YIWztorcYnDkO21P2ZDK6kxGPOrw82ePr0G5xV5BtbbTlkJkzjJ4GWsZvRGYTtnH0cg==
+"@nestjs/platform-fastify@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@nestjs/platform-fastify/-/platform-fastify-8.4.7.tgz#5c37fe00b4d5c039c4fc0f43c0d14cfc0fa101aa"
+ integrity sha512-3miB5AYQMlwTAC6W3HE3UTfsQF5RcCsellIEHhNKWN9jGA3C++zr24nEBzw61+Ca2fOG4+ccg4agtODn53d+UA==
dependencies:
fastify "3.29.0"
fastify-cors "6.1.0"
@@ -1966,10 +2197,10 @@
path-to-regexp "3.2.0"
tslib "2.4.0"
-"@nestjs/testing@8.4.6":
- version "8.4.6"
- resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-8.4.6.tgz#4e80368090bb71d775d14d99efa96803b96312d0"
- integrity sha512-uGRNQ0iWIHqjz5CLxQCTtQ3dB1KyPfkHXnko5mBwKk/iBTiACmll61rVt89Wh8RM+w0bmvCHp9sacNI7IynESg==
+"@nestjs/testing@8.4.7":
+ version "8.4.7"
+ resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-8.4.7.tgz#fe4f356c0e081e25fe8c899a65e91dd88947fd13"
+ integrity sha512-aedpeJFicTBeiTCvJWUG45WMMS53f5eu8t2fXsfjsU1t+WdDJqYcZyrlCzA4dL1B7MfbqaTURdvuVVHTmJO8ag==
dependencies:
tslib "2.4.0"
@@ -1986,7 +2217,7 @@
resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
-"@nodelib/fs.walk@^1.2.3":
+"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
version "1.2.8"
resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
@@ -1994,10 +2225,10 @@
"@nodelib/fs.scandir" "2.1.5"
fastq "^1.6.0"
-"@npmcli/arborist@5.2.0":
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-5.2.0.tgz#ee40dfe1f81ae1524819ee39c8f3e7022b0d6269"
- integrity sha512-zWV7scFGL0SmpvfQyIWnMFbU/0YgtMNyvJiJwR98kyjUSntJGWFFR0O600d5W+TrDcTg0GyDbY+HdzGEg+GXLg==
+"@npmcli/arborist@5.3.0":
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-5.3.0.tgz#321d9424677bfc08569e98a5ac445ee781f32053"
+ integrity sha512-+rZ9zgL1lnbl8Xbb1NQdMjveOMwj4lIYfcDtyJHHi5x4X8jtR6m8SXooJMZy5vmFVZ8w7A2Bnd/oX9eTuU8w5A==
dependencies:
"@isaacs/string-locale-compare" "^1.1.0"
"@npmcli/installed-package-contents" "^1.0.7"
@@ -2007,7 +2238,7 @@
"@npmcli/name-from-folder" "^1.0.1"
"@npmcli/node-gyp" "^2.0.0"
"@npmcli/package-json" "^2.0.0"
- "@npmcli/run-script" "^3.0.0"
+ "@npmcli/run-script" "^4.1.3"
bin-links "^3.0.0"
cacache "^16.0.6"
common-ancestor-path "^1.0.1"
@@ -2021,7 +2252,7 @@
npm-pick-manifest "^7.0.0"
npm-registry-fetch "^13.0.0"
npmlog "^6.0.2"
- pacote "^13.0.5"
+ pacote "^13.6.1"
parse-conflict-json "^2.0.1"
proc-log "^2.0.0"
promise-all-reject-late "^1.0.0"
@@ -2034,11 +2265,6 @@
treeverse "^2.0.0"
walk-up-path "^1.0.0"
-"@npmcli/ci-detect@^1.0.0":
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1"
- integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q==
-
"@npmcli/fs@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f"
@@ -2138,7 +2364,7 @@
dependencies:
infer-owner "^1.0.4"
-"@npmcli/run-script@^3.0.0", "@npmcli/run-script@^3.0.1", "@npmcli/run-script@^3.0.2":
+"@npmcli/run-script@^3.0.1":
version "3.0.2"
resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-3.0.2.tgz#3e9116d831f4539bf292d18b015977a6118997ee"
integrity sha512-vdjD/PMBl+OX9j9C9irx5sCCIKfp2PWkpPNH9zxvlJAfSZ3Qp5aU412v+O3PFJl3R1PFNwuyChCqHg4ma6ci2Q==
@@ -2148,6 +2374,42 @@
node-gyp "^9.0.0"
read-package-json-fast "^2.0.3"
+"@npmcli/run-script@^4.1.0", "@npmcli/run-script@^4.1.3", "@npmcli/run-script@^4.1.7":
+ version "4.1.7"
+ resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-4.1.7.tgz#b1a2f57568eb738e45e9ea3123fb054b400a86f7"
+ integrity sha512-WXr/MyM4tpKA4BotB81NccGAv8B48lNH0gRoILucbcAhTQXLCoi6HflMV3KdXubIqvP9SuLsFn68Z7r4jl+ppw==
+ dependencies:
+ "@npmcli/node-gyp" "^2.0.0"
+ "@npmcli/promise-spawn" "^3.0.0"
+ node-gyp "^9.0.0"
+ read-package-json-fast "^2.0.3"
+ which "^2.0.2"
+
+"@nrwl/cli@15.0.0":
+ version "15.0.0"
+ resolved "https://registry.yarnpkg.com/@nrwl/cli/-/cli-15.0.0.tgz#7b00d95a6502f83fdd84f8888fd1ba7a180cdd07"
+ integrity sha512-D0zAhZ375bQnoUM2HLifMzAa75A3/lC9OkkewsiVVbqaznjEIry8ezHZepgfjFRVzLr3ue7FIpDEH3iJIYzvVw==
+ dependencies:
+ nx "15.0.0"
+
+"@nrwl/devkit@>=14.8.6 < 16":
+ version "15.0.0"
+ resolved "https://registry.yarnpkg.com/@nrwl/devkit/-/devkit-15.0.0.tgz#755bc07581a57e0ae87f68a7562ab86ff737e919"
+ integrity sha512-ALtPfILlxLDg77rV/XNdDGbhUkh0gZPj/4Ehy3ScvVqPhTrDIZNLGX13dXgUUF9xhGb7SXPmvzZkduBpqmHnfQ==
+ dependencies:
+ "@phenomnomnominal/tsquery" "4.1.1"
+ ejs "^3.1.7"
+ ignore "^5.0.4"
+ semver "7.3.4"
+ tslib "^2.3.0"
+
+"@nrwl/tao@15.0.0":
+ version "15.0.0"
+ resolved "https://registry.yarnpkg.com/@nrwl/tao/-/tao-15.0.0.tgz#128499a4256e408716f7347131a3ed32d1fec5f0"
+ integrity sha512-qup1eSWYwp/KVrw/wxeWBvYttQ9dcbQnqpXb5NQMD31SpXEZSpJB1i3GV/o6CF5qQQSNLwICXZx25rNTTQAqpg==
+ dependencies:
+ nx "15.0.0"
+
"@nuxtjs/opencollective@0.3.2":
version "0.3.2"
resolved "https://registry.yarnpkg.com/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz#620ce1044f7ac77185e825e1936115bb38e2681c"
@@ -2157,41 +2419,41 @@
consola "^2.15.0"
node-fetch "^2.6.1"
-"@octokit/auth-token@^2.4.4":
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36"
- integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==
+"@octokit/auth-token@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.0.tgz#6f22c5fc56445c496628488ba6810131558fa4a9"
+ integrity sha512-MDNFUBcJIptB9At7HiV7VCvU3NcL4GnfCQaP8C5lrxWrRPMJBnemYtehaKSOlaM7AYxeRyj9etenu8LVpSpVaQ==
dependencies:
"@octokit/types" "^6.0.3"
-"@octokit/core@^3.5.1":
- version "3.5.1"
- resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b"
- integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw==
+"@octokit/core@^4.0.0":
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/@octokit/core/-/core-4.0.4.tgz#335d9b377691e3264ce57a9e5a1f6cda783e5838"
+ integrity sha512-sUpR/hc4Gc7K34o60bWC7WUH6Q7T6ftZ2dUmepSyJr9PRF76/qqkWjE2SOEzCqLA5W83SaISymwKtxks+96hPQ==
dependencies:
- "@octokit/auth-token" "^2.4.4"
- "@octokit/graphql" "^4.5.8"
- "@octokit/request" "^5.6.0"
- "@octokit/request-error" "^2.0.5"
+ "@octokit/auth-token" "^3.0.0"
+ "@octokit/graphql" "^5.0.0"
+ "@octokit/request" "^6.0.0"
+ "@octokit/request-error" "^3.0.0"
"@octokit/types" "^6.0.3"
before-after-hook "^2.2.0"
universal-user-agent "^6.0.0"
-"@octokit/endpoint@^6.0.1":
- version "6.0.12"
- resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658"
- integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==
+"@octokit/endpoint@^7.0.0":
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-7.0.0.tgz#be758a1236d68d6bbb505e686dd50881c327a519"
+ integrity sha512-Kz/mIkOTjs9rV50hf/JK9pIDl4aGwAtT8pry6Rpy+hVXkAPhXanNQRxMoq6AeRgDCZR6t/A1zKniY2V1YhrzlQ==
dependencies:
"@octokit/types" "^6.0.3"
is-plain-object "^5.0.0"
universal-user-agent "^6.0.0"
-"@octokit/graphql@^4.5.8":
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3"
- integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==
+"@octokit/graphql@^5.0.0":
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-5.0.0.tgz#2cc6eb3bf8e0278656df1a7d0ca0d7591599e3b3"
+ integrity sha512-1ZZ8tX4lUEcLPvHagfIVu5S2xpHYXAmgN0+95eAOPoaVPzCfUXJtA5vASafcpWcO86ze0Pzn30TAx72aB2aguQ==
dependencies:
- "@octokit/request" "^5.6.0"
+ "@octokit/request" "^6.0.0"
"@octokit/types" "^6.0.3"
universal-user-agent "^6.0.0"
@@ -2200,74 +2462,145 @@
resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6"
integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA==
+"@octokit/openapi-types@^12.10.0":
+ version "12.10.0"
+ resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-12.10.0.tgz#60b27456e2e750dae9925ed248b9daad12a12c5c"
+ integrity sha512-xsgA7LKuQ/2QReMZQXNlBP68ferPlqw66Jmx5/J399Cn5EgIDaHXou6Rgn1GkpDNjkPji67fTlC2rz6ABaVFKw==
+
+"@octokit/openapi-types@^13.4.0":
+ version "13.5.0"
+ resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-13.5.0.tgz#8b3000783869a76b65a633159df8d7ed73ba370d"
+ integrity sha512-e9uYcMLpU5nMDA4k4PufLsJV9Wwc4QuKxRD7xNPW3vveuA3j0Nb6zZYG9IgQpEgYPtIjQwrJK3Z2rKWJ9SfzKg==
+
"@octokit/plugin-enterprise-rest@^6.0.1":
version "6.0.1"
resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437"
integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==
-"@octokit/plugin-paginate-rest@^2.16.8":
- version "2.17.0"
- resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7"
- integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw==
+"@octokit/plugin-paginate-rest@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-3.0.0.tgz#df779de686aeb21b5e776e4318defc33b0418566"
+ integrity sha512-fvw0Q5IXnn60D32sKeLIxgXCEZ7BTSAjJd8cFAE6QU5qUp0xo7LjFUjjX1J5D7HgN355CN4EXE4+Q1/96JaNUA==
dependencies:
- "@octokit/types" "^6.34.0"
+ "@octokit/types" "^6.39.0"
+
+"@octokit/plugin-paginate-rest@^4.0.0":
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-4.1.0.tgz#670ac9ac369448c69a2371bfcd7e2b37d95534f2"
+ integrity sha512-2O5K5fpajYG5g62wjzHR7/cWYaCA88CextAW3vFP+yoIHD0KEdlVMHfM5/i5LyV+JMmqiYW7w5qfg46FR+McNw==
+ dependencies:
+ "@octokit/types" "^7.1.1"
"@octokit/plugin-request-log@^1.0.4":
version "1.0.4"
resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85"
integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==
-"@octokit/plugin-rest-endpoint-methods@^5.12.0":
- version "5.13.0"
- resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba"
- integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA==
+"@octokit/plugin-rest-endpoint-methods@^6.0.0":
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.1.0.tgz#64804122e6bb93d4165a56cdcfc8bab1143d3d9f"
+ integrity sha512-gP/yHUY0k/uKkEqXF6tZGRhCFqZNjQ0qdh9/gVo74AJ2pc3cr1rjnW/KRw1uXUKB/H9Y0rRBCBxsLXJmQjPv3A==
dependencies:
- "@octokit/types" "^6.34.0"
+ "@octokit/types" "^6.40.0"
deprecation "^2.3.1"
-"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0":
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677"
- integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==
+"@octokit/request-error@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-3.0.0.tgz#f527d178f115a3b62d76ce4804dd5bdbc0270a81"
+ integrity sha512-WBtpzm9lR8z4IHIMtOqr6XwfkGvMOOILNLxsWvDwtzm/n7f5AWuqJTXQXdDtOvPfTDrH4TPhEvW2qMlR4JFA2w==
dependencies:
"@octokit/types" "^6.0.3"
deprecation "^2.0.0"
once "^1.4.0"
-"@octokit/request@^5.6.0":
- version "5.6.2"
- resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.2.tgz#1aa74d5da7b9e04ac60ef232edd9a7438dcf32d8"
- integrity sha512-je66CvSEVf0jCpRISxkUcCa0UkxmFs6eGDRSbfJtAVwbLH5ceqF+YEyC8lj8ystKyZTy8adWr0qmkY52EfOeLA==
+"@octokit/request@^6.0.0":
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/@octokit/request/-/request-6.2.0.tgz#9c25606df84e6f2ccbcc2c58e1d35438e20b688b"
+ integrity sha512-7IAmHnaezZrgUqtRShMlByJK33MT9ZDnMRgZjnRrRV9a/jzzFwKGz0vxhFU6i7VMLraYcQ1qmcAOin37Kryq+Q==
dependencies:
- "@octokit/endpoint" "^6.0.1"
- "@octokit/request-error" "^2.1.0"
+ "@octokit/endpoint" "^7.0.0"
+ "@octokit/request-error" "^3.0.0"
"@octokit/types" "^6.16.1"
is-plain-object "^5.0.0"
- node-fetch "^2.6.1"
+ node-fetch "^2.6.7"
universal-user-agent "^6.0.0"
-"@octokit/rest@18.12.0", "@octokit/rest@^18.1.0":
- version "18.12.0"
- resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881"
- integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==
+"@octokit/rest@19.0.4":
+ version "19.0.4"
+ resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-19.0.4.tgz#fd8bed1cefffa486e9ae46a9dc608ce81bcfcbdd"
+ integrity sha512-LwG668+6lE8zlSYOfwPj4FxWdv/qFXYBpv79TWIQEpBLKA9D/IMcWsF/U9RGpA3YqMVDiTxpgVpEW3zTFfPFTA==
+ dependencies:
+ "@octokit/core" "^4.0.0"
+ "@octokit/plugin-paginate-rest" "^4.0.0"
+ "@octokit/plugin-request-log" "^1.0.4"
+ "@octokit/plugin-rest-endpoint-methods" "^6.0.0"
+
+"@octokit/rest@^19.0.3":
+ version "19.0.3"
+ resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-19.0.3.tgz#b9a4e8dc8d53e030d611c053153ee6045f080f02"
+ integrity sha512-5arkTsnnRT7/sbI4fqgSJ35KiFaN7zQm0uQiQtivNQLI8RQx8EHwJCajcTUwmaCMNDg7tdCvqAnc7uvHHPxrtQ==
dependencies:
- "@octokit/core" "^3.5.1"
- "@octokit/plugin-paginate-rest" "^2.16.8"
+ "@octokit/core" "^4.0.0"
+ "@octokit/plugin-paginate-rest" "^3.0.0"
"@octokit/plugin-request-log" "^1.0.4"
- "@octokit/plugin-rest-endpoint-methods" "^5.12.0"
+ "@octokit/plugin-rest-endpoint-methods" "^6.0.0"
-"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0":
+"@octokit/types@^6.0.3", "@octokit/types@^6.16.1":
version "6.34.0"
resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218"
integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw==
dependencies:
"@octokit/openapi-types" "^11.2.0"
+"@octokit/types@^6.39.0", "@octokit/types@^6.40.0":
+ version "6.40.0"
+ resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.40.0.tgz#f2e665196d419e19bb4265603cf904a820505d0e"
+ integrity sha512-MFZOU5r8SwgJWDMhrLUSvyJPtVsqA6VnbVI3TNbsmw+Jnvrktzvq2fYES/6RiJA/5Ykdwq4mJmtlYUfW7CGjmw==
+ dependencies:
+ "@octokit/openapi-types" "^12.10.0"
+
+"@octokit/types@^7.1.1":
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/@octokit/types/-/types-7.1.1.tgz#a30fd6ca3279d59d532fa75583d65d93b7588e6d"
+ integrity sha512-Dx6cNTORyVaKY0Yeb9MbHksk79L8GXsihbG6PtWqTpkyA2TY1qBWE26EQXVG3dHwY9Femdd/WEeRUEiD0+H3TQ==
+ dependencies:
+ "@octokit/openapi-types" "^13.4.0"
+
"@opentelemetry/api@^1.0.1":
version "1.0.3"
resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.0.3.tgz#13a12ae9e05c2a782f7b5e84c3cbfda4225eaf80"
integrity sha512-puWxACExDe9nxbBB3lOymQFrLYml2dVOrd7USiVRnSbgXE+KwBu+HxFvxrzfqsiSda9IWsXJG1ef7C1O2/GmKQ==
+"@parcel/watcher@2.0.4":
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b"
+ integrity sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==
+ dependencies:
+ node-addon-api "^3.2.1"
+ node-gyp-build "^4.3.0"
+
+"@phenomnomnominal/tsquery@4.1.1":
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/@phenomnomnominal/tsquery/-/tsquery-4.1.1.tgz#42971b83590e9d853d024ddb04a18085a36518df"
+ integrity sha512-jjMmK1tnZbm1Jq5a7fBliM4gQwjxMU7TFoRNwIyzwlO+eHPRCFv/Nv+H/Gi1jc3WR7QURG8D5d0Tn12YGrUqBQ==
+ dependencies:
+ esquery "^1.0.1"
+
+"@pnpm/network.ca-file@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.1.tgz#16f88d057c68cd5419c1ef3dfa281296ea80b047"
+ integrity sha512-gkINruT2KUhZLTaiHxwCOh1O4NVnFT0wLjWFBHmTz9vpKag/C/noIMJXBxFe4F0mYpUVX2puLwAieLYFg2NvoA==
+ dependencies:
+ graceful-fs "4.2.10"
+
+"@pnpm/npm-conf@^1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-1.0.4.tgz#e2c927a933f55e9211e12ef6cc4885ce915211ce"
+ integrity sha512-o5YFq/+ksEJMbSzzkaQDHlp00aonLDU5xNPVTRL12hTWBbVSSeWXxPukq75h+mvXnoOWT95vV2u1HSTw2C4XOw==
+ dependencies:
+ "@pnpm/network.ca-file" "^1.0.1"
+ config-chain "^1.1.11"
+
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
version "1.1.2"
resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf"
@@ -2326,16 +2659,21 @@
resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.23.4.tgz#6ff93fd2585ce44f7481c9ff6af610fbb5de98a4"
integrity sha512-0/WqSvpVbCBAV1yPeko7eAczKbs78dNVAaX14quVlwOb2wxfKuXCx91h4NrEfkYK9zEnyVSW4JVI/trP3iS+Qg==
-"@sindresorhus/is@^0.14.0":
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
- integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
+"@sinclair/typebox@^0.24.1":
+ version "0.24.19"
+ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.19.tgz#5297278e0d8a1aea084685a3216074910ac6c113"
+ integrity sha512-gHJu8cdYTD5p4UqmQHrxaWrtb/jkH5imLXzuBypWhKzNkW0qfmgz+w1xaJccWVuJta1YYUdlDiPHXRTR4Ku0MQ==
"@sindresorhus/is@^4.6.0":
version "4.6.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==
+"@sindresorhus/is@^5.2.0":
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-5.3.0.tgz#0ec9264cf54a527671d990eb874e030b55b70dcc"
+ integrity sha512-CX6t4SYQ37lzxicAqsBtxA3OseeoVrh9cSJ5PFYam0GksYlupRfy1A+Q4aYD3zvcfECLc0zO2u+ZnR2UYKvCrw==
+
"@sinonjs/commons@^1.7.0":
version "1.8.3"
resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d"
@@ -2343,20 +2681,13 @@
dependencies:
type-detect "4.0.8"
-"@sinonjs/fake-timers@^9.1.1":
+"@sinonjs/fake-timers@^9.1.2":
version "9.1.2"
resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c"
integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==
dependencies:
"@sinonjs/commons" "^1.7.0"
-"@szmarczak/http-timer@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"
- integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==
- dependencies:
- defer-to-connect "^1.0.1"
-
"@szmarczak/http-timer@^5.0.1":
version "5.0.1"
resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a"
@@ -2374,13 +2705,13 @@
resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf"
integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
-"@ts-morph/common@~0.15.0":
- version "0.15.0"
- resolved "https://registry.yarnpkg.com/@ts-morph/common/-/common-0.15.0.tgz#aece752746fc0d779d2acfaece95fb2c23327ba5"
- integrity sha512-QefRbadcwfBnd3HWrltpjRJprHgeKfQsnbyGbRF8pEjMqISAljJwq4wfRETxxojsmN4GWuJv3PWG+W7kBIHMMw==
+"@ts-morph/common@~0.17.0":
+ version "0.17.0"
+ resolved "https://registry.yarnpkg.com/@ts-morph/common/-/common-0.17.0.tgz#de0d405df10857907469fef8d9363893b4163fd1"
+ integrity sha512-RMSSvSfs9kb0VzkvQ2NWobwnj7TxCA9vI/IjR9bDHqgAyVbu2T0DN4wiKVqomyDWqO7dPr/tErSfq7urQ1Q37g==
dependencies:
fast-glob "^3.2.11"
- minimatch "^5.0.1"
+ minimatch "^5.1.0"
mkdirp "^1.0.4"
path-browserify "^1.0.1"
@@ -2482,10 +2813,10 @@
resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080"
integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==
-"@types/express-serve-static-core@4.17.28":
- version "4.17.28"
- resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8"
- integrity sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==
+"@types/express-serve-static-core@4.17.31":
+ version "4.17.31"
+ resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz#a1139efeab4e7323834bb0226e62ac019f474b2f"
+ integrity sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==
dependencies:
"@types/node" "*"
"@types/qs" "*"
@@ -2500,10 +2831,10 @@
"@types/qs" "*"
"@types/range-parser" "*"
-"@types/express@4.17.13":
- version "4.17.13"
- resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034"
- integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==
+"@types/express@4.17.14":
+ version "4.17.14"
+ resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.14.tgz#143ea0557249bc1b3b54f15db4c81c3d4eb3569c"
+ integrity sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==
dependencies:
"@types/body-parser" "*"
"@types/express-serve-static-core" "^4.17.18"
@@ -2524,7 +2855,7 @@
dependencies:
graphql "*"
-"@types/http-cache-semantics@*":
+"@types/http-cache-semantics@*", "@types/http-cache-semantics@^4.0.1":
version "4.0.1"
resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812"
integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==
@@ -2555,13 +2886,13 @@
dependencies:
"@types/istanbul-lib-report" "*"
-"@types/jest@28.1.0":
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/@types/jest/-/jest-28.1.0.tgz#6107d7f8cf46d994e4de23e11f873d61bafe5573"
- integrity sha512-ITfF6JJIl9zbEi2k6NmhNE/BiDqfsI/ceqfvdaWaPbcrCpYyyRq4KtDQIWh6vQUru6SqwppODiom/Zhid+np6A==
+"@types/jest@29.2.0":
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.2.0.tgz#fa98e08b46ab119f1a74a9552c48c589f5378a96"
+ integrity sha512-KO7bPV21d65PKwv3LLsD8Jn3E05pjNjRZvkm+YTacWhVmykAb07wW6IkZUmQAltwQafNcDUEUrMO2h3jeBSisg==
dependencies:
- jest-matcher-utils "^27.0.0"
- pretty-format "^27.0.0"
+ expect "^29.0.0"
+ pretty-format "^29.0.0"
"@types/json-buffer@~3.0.0":
version "3.0.0"
@@ -2605,10 +2936,10 @@
resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c"
integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
-"@types/node-fetch@2.6.1":
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.1.tgz#8f127c50481db65886800ef496f20bbf15518975"
- integrity sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==
+"@types/node-fetch@2.6.2", "@types/node-fetch@^2.6.2":
+ version "2.6.2"
+ resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da"
+ integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==
dependencies:
"@types/node" "*"
form-data "^3.0.0"
@@ -2625,21 +2956,21 @@
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae"
integrity sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==
-"@types/node@17.0.0":
- version "17.0.0"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.0.tgz#62797cee3b8b497f6547503b2312254d4fe3c2bb"
- integrity sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw==
-
-"@types/node@>=12":
- version "17.0.17"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.17.tgz#a8ddf6e0c2341718d74ee3dc413a13a042c45a0c"
- integrity sha512-e8PUNQy1HgJGV3iU/Bp2+D/DXh3PYeyli8LgIwsQcs1Ar1LoaWHSIT6Rw+H2rNJmiq6SNWiDytfx8+gYj7wDHw==
+"@types/node@18.11.5":
+ version "18.11.5"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.5.tgz#1bc94cf2f9ab5fe33353bc7c79c797dcc5325bef"
+ integrity sha512-3JRwhbjI+cHLAkUorhf8RnqUbFXajvzX4q6fMn5JwkgtuwfYtRQYI3u4V92vI6NJuTsbBQWWh3RZjFsuevyMGQ==
"@types/node@^10.1.0":
version "10.17.60"
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b"
integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==
+"@types/node@^14.0.0":
+ version "14.18.26"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.26.tgz#239e19f8b4ea1a9eb710528061c1d733dc561996"
+ integrity sha512-0b+utRBSYj8L7XAp0d+DX7lI4cSmowNaaTkk6/1SKzbKkG+doLuPusB9EOvzLJ8ahJSk03bTLIL6cWaEd4dBKA==
+
"@types/normalize-package-data@^2.4.0":
version "2.4.1"
resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301"
@@ -2677,6 +3008,11 @@
dependencies:
"@types/node" "*"
+"@types/semver@^7.3.12":
+ version "7.3.12"
+ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.12.tgz#920447fdd78d76b19de0438b7f60df3c4a80bf1c"
+ integrity sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A==
+
"@types/serve-static@*":
version "1.13.10"
resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9"
@@ -2702,13 +3038,6 @@
resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129"
integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==
-"@types/yargs@^16.0.0":
- version "16.0.4"
- resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977"
- integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==
- dependencies:
- "@types/yargs-parser" "*"
-
"@types/yargs@^17.0.8":
version "17.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz#591522fce85d8739bca7b8bb90d048e4478d186a"
@@ -2721,84 +3050,86 @@
resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.3.tgz#781d360c282436494b32fe7d9f7f8e64b3118aa3"
integrity sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw==
-"@typescript-eslint/eslint-plugin@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.27.0.tgz#23d82a4f21aaafd8f69dbab7e716323bb6695cc8"
- integrity sha512-DDrIA7GXtmHXr1VCcx9HivA39eprYBIFxbQEHI6NyraRDxCGpxAFiYQAT/1Y0vh1C+o2vfBiy4IuPoXxtTZCAQ==
+"@typescript-eslint/eslint-plugin@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.41.0.tgz#f8eeb1c6bb2549f795f3ba71aec3b38d1ab6b1e1"
+ integrity sha512-DXUS22Y57/LAFSg3x7Vi6RNAuLpTXwxB9S2nIA7msBb/Zt8p7XqMwdpdc1IU7CkOQUPgAqR5fWvxuKCbneKGmA==
dependencies:
- "@typescript-eslint/scope-manager" "5.27.0"
- "@typescript-eslint/type-utils" "5.27.0"
- "@typescript-eslint/utils" "5.27.0"
+ "@typescript-eslint/scope-manager" "5.41.0"
+ "@typescript-eslint/type-utils" "5.41.0"
+ "@typescript-eslint/utils" "5.41.0"
debug "^4.3.4"
- functional-red-black-tree "^1.0.1"
ignore "^5.2.0"
regexpp "^3.2.0"
semver "^7.3.7"
tsutils "^3.21.0"
-"@typescript-eslint/parser@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.27.0.tgz#62bb091ed5cf9c7e126e80021bb563dcf36b6b12"
- integrity sha512-8oGjQF46c52l7fMiPPvX4It3u3V3JipssqDfHQ2hcR0AeR8Zge+OYyKUCm5b70X72N1qXt0qgHenwN6Gc2SXZA==
+"@typescript-eslint/parser@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.41.0.tgz#0414a6405007e463dc527b459af1f19430382d67"
+ integrity sha512-HQVfix4+RL5YRWZboMD1pUfFN8MpRH4laziWkkAzyO1fvNOY/uinZcvo3QiFJVS/siNHupV8E5+xSwQZrl6PZA==
dependencies:
- "@typescript-eslint/scope-manager" "5.27.0"
- "@typescript-eslint/types" "5.27.0"
- "@typescript-eslint/typescript-estree" "5.27.0"
+ "@typescript-eslint/scope-manager" "5.41.0"
+ "@typescript-eslint/types" "5.41.0"
+ "@typescript-eslint/typescript-estree" "5.41.0"
debug "^4.3.4"
-"@typescript-eslint/scope-manager@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.27.0.tgz#a272178f613050ed62f51f69aae1e19e870a8bbb"
- integrity sha512-VnykheBQ/sHd1Vt0LJ1JLrMH1GzHO+SzX6VTXuStISIsvRiurue/eRkTqSrG0CexHQgKG8shyJfR4o5VYioB9g==
+"@typescript-eslint/scope-manager@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.41.0.tgz#28e3a41d626288d0628be14cf9de8d49fc30fadf"
+ integrity sha512-xOxPJCnuktUkY2xoEZBKXO5DBCugFzjrVndKdUnyQr3+9aDWZReKq9MhaoVnbL+maVwWJu/N0SEtrtEUNb62QQ==
dependencies:
- "@typescript-eslint/types" "5.27.0"
- "@typescript-eslint/visitor-keys" "5.27.0"
+ "@typescript-eslint/types" "5.41.0"
+ "@typescript-eslint/visitor-keys" "5.41.0"
-"@typescript-eslint/type-utils@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.27.0.tgz#36fd95f6747412251d79c795b586ba766cf0974b"
- integrity sha512-vpTvRRchaf628Hb/Xzfek+85o//zEUotr1SmexKvTfs7czXfYjXVT/a5yDbpzLBX1rhbqxjDdr1Gyo0x1Fc64g==
+"@typescript-eslint/type-utils@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.41.0.tgz#2371601171e9f26a4e6da918a7913f7266890cdf"
+ integrity sha512-L30HNvIG6A1Q0R58e4hu4h+fZqaO909UcnnPbwKiN6Rc3BUEx6ez2wgN7aC0cBfcAjZfwkzE+E2PQQ9nEuoqfA==
dependencies:
- "@typescript-eslint/utils" "5.27.0"
+ "@typescript-eslint/typescript-estree" "5.41.0"
+ "@typescript-eslint/utils" "5.41.0"
debug "^4.3.4"
tsutils "^3.21.0"
-"@typescript-eslint/types@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.27.0.tgz#c3f44b9dda6177a9554f94a74745ca495ba9c001"
- integrity sha512-lY6C7oGm9a/GWhmUDOs3xAVRz4ty/XKlQ2fOLr8GAIryGn0+UBOoJDWyHer3UgrHkenorwvBnphhP+zPmzmw0A==
+"@typescript-eslint/types@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.41.0.tgz#6800abebc4e6abaf24cdf220fb4ce28f4ab09a85"
+ integrity sha512-5BejraMXMC+2UjefDvrH0Fo/eLwZRV6859SXRg+FgbhA0R0l6lDqDGAQYhKbXhPN2ofk2kY5sgGyLNL907UXpA==
-"@typescript-eslint/typescript-estree@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.0.tgz#7965f5b553c634c5354a47dcce0b40b94611e995"
- integrity sha512-QywPMFvgZ+MHSLRofLI7BDL+UczFFHyj0vF5ibeChDAJgdTV8k4xgEwF0geFhVlPc1p8r70eYewzpo6ps+9LJQ==
+"@typescript-eslint/typescript-estree@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.41.0.tgz#bf5c6b3138adbdc73ba4871d060ae12c59366c61"
+ integrity sha512-SlzFYRwFSvswzDSQ/zPkIWcHv8O5y42YUskko9c4ki+fV6HATsTODUPbRbcGDFYP86gaJL5xohUEytvyNNcXWg==
dependencies:
- "@typescript-eslint/types" "5.27.0"
- "@typescript-eslint/visitor-keys" "5.27.0"
+ "@typescript-eslint/types" "5.41.0"
+ "@typescript-eslint/visitor-keys" "5.41.0"
debug "^4.3.4"
globby "^11.1.0"
is-glob "^4.0.3"
semver "^7.3.7"
tsutils "^3.21.0"
-"@typescript-eslint/utils@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.27.0.tgz#d0021cbf686467a6a9499bd0589e19665f9f7e71"
- integrity sha512-nZvCrkIJppym7cIbP3pOwIkAefXOmfGPnCM0LQfzNaKxJHI6VjI8NC662uoiPlaf5f6ymkTy9C3NQXev2mdXmA==
+"@typescript-eslint/utils@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.41.0.tgz#f41ae5883994a249d00b2ce69f4188f3a23fa0f9"
+ integrity sha512-QlvfwaN9jaMga9EBazQ+5DDx/4sAdqDkcs05AsQHMaopluVCUyu1bTRUVKzXbgjDlrRAQrYVoi/sXJ9fmG+KLQ==
dependencies:
"@types/json-schema" "^7.0.9"
- "@typescript-eslint/scope-manager" "5.27.0"
- "@typescript-eslint/types" "5.27.0"
- "@typescript-eslint/typescript-estree" "5.27.0"
+ "@types/semver" "^7.3.12"
+ "@typescript-eslint/scope-manager" "5.41.0"
+ "@typescript-eslint/types" "5.41.0"
+ "@typescript-eslint/typescript-estree" "5.41.0"
eslint-scope "^5.1.1"
eslint-utils "^3.0.0"
+ semver "^7.3.7"
-"@typescript-eslint/visitor-keys@5.27.0":
- version "5.27.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.0.tgz#97aa9a5d2f3df8215e6d3b77f9d214a24db269bd"
- integrity sha512-46cYrteA2MrIAjv9ai44OQDUoCZyHeGIc4lsjCUX2WT6r4C+kidz1bNiR4017wHOPUythYeH+Sc7/cFP97KEAA==
+"@typescript-eslint/visitor-keys@5.41.0":
+ version "5.41.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.41.0.tgz#d3510712bc07d5540160ed3c0f8f213b73e3bcd9"
+ integrity sha512-vilqeHj267v8uzzakbm13HkPMl7cbYpKVjgFWZPIOHIJHZtinvypUhJ5xBXfWYg4eFKqztbMMpOgFpT9Gfx4fw==
dependencies:
- "@typescript-eslint/types" "5.27.0"
+ "@typescript-eslint/types" "5.41.0"
eslint-visitor-keys "^3.3.0"
"@wry/context@^0.4.0":
@@ -2814,7 +3145,27 @@
resolved "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.11.tgz#35cb156e4a96695aa81a9ecc4d03787bc17f1790"
integrity sha512-mwEVBDUVODlsQQ5dfuLUS5/Tf7jqUKyhKYHmVi4fPB6bDMOfWvUPJmKgS1Z7Za/sOI3vzWt4+O7yCiL/70MogA==
dependencies:
- tslib "^1.9.3"
+ tslib "^1.9.3"
+
+"@yarnpkg/lockfile@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
+ integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
+
+"@yarnpkg/parsers@^3.0.0-rc.18":
+ version "3.0.0-rc.22"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/parsers/-/parsers-3.0.0-rc.22.tgz#a78e10e1919ba706beb6a514ddcb09515607ada9"
+ integrity sha512-GAWDjXduYBUVmOzlj3X0OwTQ1BV4ZeDdgw8yXST3K0lB95drWEGxa1at0v7BmHDyK2y1F1IJufc8N4yrcuXjWg==
+ dependencies:
+ js-yaml "^3.10.0"
+ tslib "^2.4.0"
+
+"@zkochan/js-yaml@0.0.6":
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz#975f0b306e705e28b8068a07737fa46d3fc04826"
+ integrity sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==
+ dependencies:
+ argparse "^2.0.1"
JSONStream@^1.0.4:
version "1.3.5"
@@ -2829,7 +3180,14 @@ abbrev@1:
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
-abstract-logging@^2.0.0:
+abort-controller@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
+ integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==
+ dependencies:
+ event-target-shim "^5.0.0"
+
+abstract-logging@^2.0.0, abstract-logging@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839"
integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==
@@ -2870,10 +3228,10 @@ acorn@^8.7.0:
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
-acorn@^8.7.1:
- version "8.7.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30"
- integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==
+acorn@^8.8.0:
+ version "8.8.0"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"
+ integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==
add-stream@^1.0.0:
version "1.0.0"
@@ -2913,6 +3271,13 @@ aggregate-error@^3.0.0:
clean-stack "^2.0.0"
indent-string "^4.0.0"
+ajv-formats@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520"
+ integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==
+ dependencies:
+ ajv "^8.0.0"
+
ajv@^6.10.0, ajv@^6.11.0, ajv@^6.12.4, ajv@^6.12.6:
version "6.12.6"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
@@ -2923,6 +3288,16 @@ ajv@^6.10.0, ajv@^6.11.0, ajv@^6.12.4, ajv@^6.12.6:
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
+ajv@^8.0.0, ajv@^8.10.0, ajv@^8.11.0:
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f"
+ integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==
+ dependencies:
+ fast-deep-equal "^3.1.1"
+ json-schema-traverse "^1.0.0"
+ require-from-string "^2.0.2"
+ uri-js "^4.2.2"
+
ajv@^8.1.0:
version "8.6.3"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.3.tgz#11a66527761dc3e9a3845ea775d2d3c0414e8764"
@@ -2933,13 +3308,18 @@ ajv@^8.1.0:
require-from-string "^2.0.2"
uri-js "^4.2.2"
-ansi-align@^3.0.0:
+ansi-align@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59"
integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
dependencies:
string-width "^4.1.0"
+ansi-colors@^4.1.1:
+ version "4.1.3"
+ resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b"
+ integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==
+
ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
version "4.3.2"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
@@ -2947,10 +3327,12 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
dependencies:
type-fest "^0.21.3"
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
- integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
+ansi-escapes@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-5.0.0.tgz#b6a0caf0eef0c41af190e9a749e0c00ec04bb2a6"
+ integrity sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==
+ dependencies:
+ type-fest "^1.0.2"
ansi-regex@^5.0.1:
version "5.0.1"
@@ -2981,7 +3363,7 @@ ansi-styles@^5.0.0:
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
-ansi-styles@^6.0.0:
+ansi-styles@^6.0.0, ansi-styles@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz#87313c102b8118abd57371afab34618bf7350ed3"
integrity sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==
@@ -3032,31 +3414,14 @@ apollo-client@2.6.10:
tslib "^1.10.0"
zen-observable "^0.8.0"
-apollo-datasource@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-3.2.0.tgz#fe2fbaae7be0ee10deafa5c3f31732e368a564a1"
- integrity sha512-2PK+p6dRFuQQM8F4JbBivGetnJxvb8ggQkY7XLeCSl4qVkBeBjX+mRtsiudk28NUTH3JEll7AgmKj2fHfxYpGQ==
- dependencies:
- apollo-server-caching "^3.2.0"
- apollo-server-env "^4.1.0"
-
-apollo-datasource@^3.3.1:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-3.3.1.tgz#a1168dd68371930de3ed4245ad12fa8600efe2cc"
- integrity sha512-Z3a8rEUXVPIZ1p8xrFL8bcNhWmhOmovgDArvwIwmJOBnh093ZpRfO+ESJEDAN4KswmyzCLDAwjsW4zQOONdRUw==
+apollo-datasource@^3.3.2:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-3.3.2.tgz#5711f8b38d4b7b53fb788cb4dbd4a6a526ea74c8"
+ integrity sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg==
dependencies:
- apollo-server-caching "^3.3.0"
+ "@apollo/utils.keyvaluecache" "^1.0.1"
apollo-server-env "^4.2.1"
-apollo-graphql@^0.9.0:
- version "0.9.5"
- resolved "https://registry.yarnpkg.com/apollo-graphql/-/apollo-graphql-0.9.5.tgz#9113483ca7f7fa49ee9e9a299c45d30b1cf3bf61"
- integrity sha512-RGt5k2JeBqrmnwRM0VOgWFiGKlGJMfmiif/4JvdaEqhMJ+xqe/9cfDYzXfn33ke2eWixsAbjEbRfy8XbaN9nTw==
- dependencies:
- core-js-pure "^3.10.2"
- lodash.sortby "^4.7.0"
- sha.js "^2.4.11"
-
apollo-link-ws@1.0.20:
version "1.0.20"
resolved "https://registry.yarnpkg.com/apollo-link-ws/-/apollo-link-ws-1.0.20.tgz#dfad44121f8445c6d7b7f8101a1b24813ba008ed"
@@ -3089,25 +3454,26 @@ apollo-reporting-protobuf@^3.3.1:
dependencies:
"@apollo/protobufjs" "1.2.2"
-"apollo-server-caching@^0.7.0 || ^3.0.0", apollo-server-caching@^3.2.0:
+apollo-reporting-protobuf@^3.3.3:
+ version "3.3.3"
+ resolved "https://registry.yarnpkg.com/apollo-reporting-protobuf/-/apollo-reporting-protobuf-3.3.3.tgz#df2b7ff73422cd682af3f1805d32301aefdd9e89"
+ integrity sha512-L3+DdClhLMaRZWVmMbBcwl4Ic77CnEBPXLW53F7hkYhkaZD88ivbCVB1w/x5gunO6ZHrdzhjq0FHmTsBvPo7aQ==
+ dependencies:
+ "@apollo/protobufjs" "1.2.6"
+
+apollo-server-caching@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/apollo-server-caching/-/apollo-server-caching-3.2.0.tgz#368bc3288cfc2dab8de900d045dbd66cf457f3f3"
integrity sha512-kR92WjoQVe1Z/EXyh365w6Vz8egkRCKmd3mE7KJvKgk+f0+AGO1LPPrez5IhbCXxAgChqzpHhq2FIyfOqEuLFQ==
dependencies:
lru-cache "^6.0.0"
-apollo-server-caching@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/apollo-server-caching/-/apollo-server-caching-3.3.0.tgz#f501cbeb820a4201d98c2b768c085f22848d9dc5"
- integrity sha512-Wgcb0ArjZ5DjQ7ID+tvxUcZ7Yxdbk5l1MxZL8D8gkyjooOkhPNzjRVQ7ubPoXqO54PrOMOTm1ejVhsF+AfIirQ==
- dependencies:
- lru-cache "^6.0.0"
-
-apollo-server-core@3.8.1, apollo-server-core@^3.8.1:
- version "3.8.1"
- resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-3.8.1.tgz#51baba3a1073ad7aa950ffbfc5e3bbb5740d013c"
- integrity sha512-7A6F+HWmz/1gIW/MvE/0yq/UwrYG/dQCyfk2areoWkvSmg86oV2umuvlnEvTbLE2LiJHBoDP4T+PIqv6pnlLGw==
+apollo-server-core@3.10.3, apollo-server-core@^3.10.3:
+ version "3.10.3"
+ resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-3.10.3.tgz#64db45703785e9e79e7c5dadb6df2f7ee6fcbecc"
+ integrity sha512-PiTirlcaszgnJGzSsGui9XWh0KAh0BUW+GvRKN6O0H0qOSXSLmoqqyL83J+u+HaUZGyyiE0+VOkyCcuF+kKbEw==
dependencies:
+ "@apollo/utils.keyvaluecache" "^1.0.1"
"@apollo/utils.logger" "^1.0.0"
"@apollo/utils.usagereporting" "^1.0.0"
"@apollographql/apollo-tools" "^0.5.3"
@@ -3115,49 +3481,21 @@ apollo-server-core@3.8.1, apollo-server-core@^3.8.1:
"@graphql-tools/mock" "^8.1.2"
"@graphql-tools/schema" "^8.0.0"
"@josephg/resolvable" "^1.0.0"
- apollo-datasource "^3.3.1"
- apollo-reporting-protobuf "^3.3.1"
- apollo-server-caching "^3.3.0"
+ apollo-datasource "^3.3.2"
+ apollo-reporting-protobuf "^3.3.3"
apollo-server-env "^4.2.1"
apollo-server-errors "^3.3.1"
- apollo-server-plugin-base "^3.6.0"
- apollo-server-types "^3.6.0"
+ apollo-server-plugin-base "^3.6.3"
+ apollo-server-types "^3.6.3"
async-retry "^1.2.1"
fast-json-stable-stringify "^2.1.0"
graphql-tag "^2.11.0"
loglevel "^1.6.8"
lru-cache "^6.0.0"
sha.js "^2.4.11"
- uuid "^8.0.0"
+ uuid "^9.0.0"
whatwg-mimetype "^3.0.0"
-"apollo-server-core@^2.23.0 || ^3.0.0":
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-3.4.1.tgz#284287a17502318796ea8308522abb27bc37a955"
- integrity sha512-v1mX3ijrIPbg6iAySw+uXgTW03cxVAZkyKhvPVWAD5yzXTqmPlVnonHJyoCq/P8B0v6sIjufnIqclHuq5/D/Xw==
- dependencies:
- "@apollographql/apollo-tools" "^0.5.1"
- "@apollographql/graphql-playground-html" "1.6.29"
- "@graphql-tools/mock" "^8.1.2"
- "@graphql-tools/schema" "^8.0.0"
- "@graphql-tools/utils" "^8.0.0"
- "@josephg/resolvable" "^1.0.0"
- apollo-datasource "^3.2.0"
- apollo-graphql "^0.9.0"
- apollo-reporting-protobuf "^3.1.0"
- apollo-server-caching "^3.2.0"
- apollo-server-env "^4.1.0"
- apollo-server-errors "^3.2.0"
- apollo-server-plugin-base "^3.3.0"
- apollo-server-types "^3.3.0"
- async-retry "^1.2.1"
- fast-json-stable-stringify "^2.1.0"
- graphql-tag "^2.11.0"
- loglevel "^1.6.8"
- lru-cache "^6.0.0"
- sha.js "^2.4.11"
- uuid "^8.0.0"
-
apollo-server-env@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-4.1.0.tgz#20b69216d87b4e73166b28d2675e72823655fe75"
@@ -3172,67 +3510,55 @@ apollo-server-env@^4.2.1:
dependencies:
node-fetch "^2.6.7"
-"apollo-server-errors@^2.5.0 || ^3.0.0", apollo-server-errors@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-3.2.0.tgz#6c5051107b073c09bb55c2554878af0e97d59d08"
- integrity sha512-Y7YH3JVAaR1199ao4dae3j1UrF9D/6AJwHpsORTjI3BvrwjU1X7Nk1VvEHn9bZfZF6ONaqUM+uCLm5c8GPhffQ==
-
apollo-server-errors@^3.3.1:
version "3.3.1"
resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz#ba5c00cdaa33d4cbd09779f8cb6f47475d1cd655"
integrity sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA==
-apollo-server-express@3.8.1:
- version "3.8.1"
- resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-3.8.1.tgz#79a979c60a6e6d49ae5396c13aeb467389831500"
- integrity sha512-58QJFFbLoBfQ3SOp+0PHOqJWVxHf2WzjB3DU2MlVxHi/CfrDbjf7EYjuWTtuvIuzuoEG6kAWLGn2zEDlLmXk1A==
+apollo-server-express@3.10.3:
+ version "3.10.3"
+ resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-3.10.3.tgz#946b857c7d8516235a757e853966dd1189f247e1"
+ integrity sha512-Z8m0r10mX8KlGS3noYeRPcWxWR2hX6NHJicjuwZ62PeTZlrDJF5cwGmXqbUg/sCTPx7Ny//ZEASBTwFFp8DOeQ==
dependencies:
"@types/accepts" "^1.3.5"
"@types/body-parser" "1.19.2"
"@types/cors" "2.8.12"
- "@types/express" "4.17.13"
- "@types/express-serve-static-core" "4.17.28"
+ "@types/express" "4.17.14"
+ "@types/express-serve-static-core" "4.17.31"
accepts "^1.3.5"
- apollo-server-core "^3.8.1"
- apollo-server-types "^3.6.0"
+ apollo-server-core "^3.10.3"
+ apollo-server-types "^3.6.3"
body-parser "^1.19.0"
cors "^2.8.5"
parseurl "^1.3.3"
-apollo-server-fastify@3.8.1:
- version "3.8.1"
- resolved "https://registry.yarnpkg.com/apollo-server-fastify/-/apollo-server-fastify-3.8.1.tgz#c4b4dcaee9b7d0a241aac3892b66e71a049cebad"
- integrity sha512-2yMGVUBzRd0q4+WmiJyqIVRrAwe4GSPDqExNCM/Nz2nWH9VeHJ2Ak5UiZnr5EQWumodTybrL+9sw489yi8osuQ==
+apollo-server-fastify@3.10.3:
+ version "3.10.3"
+ resolved "https://registry.yarnpkg.com/apollo-server-fastify/-/apollo-server-fastify-3.10.3.tgz#8a066287934572a0eeaabea89a4608a0200783b4"
+ integrity sha512-cCcoDM/PaXWPRGjZvvU3JEipoDs24lB/QKMA0jiWpo5yfseRN6VygFKMdiQuo8RJEtpzQ6A5L8omQkhs6reDNw==
dependencies:
"@fastify/accepts" "^3.0.0"
"@fastify/cors" "^7.0.0"
- apollo-server-core "^3.8.1"
- apollo-server-types "^3.6.0"
+ apollo-server-core "^3.10.3"
+ apollo-server-types "^3.6.3"
-apollo-server-plugin-base@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-3.3.0.tgz#7615cc763848c33099ed4ac8dd5134fbf94df97c"
- integrity sha512-4a4KpePhoU9FAIN2YjWm1Cfl7Y3AyRXLH8ZncSRCDcQFWww8gc/ZGqWZ+udRo4ejKvzLjnTwVyxfrd80sf9sHw==
- dependencies:
- apollo-server-types "^3.3.0"
-
-apollo-server-plugin-base@^3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-3.6.0.tgz#f85e19fa4a33866ef1b4235077397a63a9a7343e"
- integrity sha512-GtXhczRGpTLQyFPWeWSnX1VcN2JaaAU7WT8PzoTQuJKYJ/Aj5mPebHbfG+PXQlDmI8IgyCKf7B1HIRnJqvAZbg==
+apollo-server-plugin-base@^3.6.3:
+ version "3.6.3"
+ resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-3.6.3.tgz#7eaf24af19641ddccf37307f294aba6877bf4c86"
+ integrity sha512-/Q0Zx8N8La97faKV0siGHDzfZ56ygN6ovtUpPbr+1GIbNmUzkte3lWW2YV08HmxiRmC2i2OGN80exNJEvbKvNA==
dependencies:
- apollo-server-types "^3.6.0"
+ apollo-server-types "^3.6.3"
-apollo-server-plugin-response-cache@3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/apollo-server-plugin-response-cache/-/apollo-server-plugin-response-cache-3.6.0.tgz#dbe97d20adf64e97159f62827ba01159eea8e317"
- integrity sha512-rpoTR69BJ//e/QrwKZMJ3ElnYu9DqmN74r/eCa99Hc/IXnx7DmO0kT+n5A6TjyFrE00899Doe7z4htyRSoHN3Q==
+apollo-server-plugin-response-cache@3.7.1:
+ version "3.7.1"
+ resolved "https://registry.yarnpkg.com/apollo-server-plugin-response-cache/-/apollo-server-plugin-response-cache-3.7.1.tgz#ee48637ff487880d97fb7311838e6e9eea01233e"
+ integrity sha512-3FHwwySf1kQl8dGC+2E08LtDeFGUOeqckLchAD1REYx1vwMZbGhmEIwaNezjXwxkTM5Y7l38n0vQTka6YoQN7w==
dependencies:
- apollo-server-caching "^3.3.0"
- apollo-server-plugin-base "^3.6.0"
- apollo-server-types "^3.6.0"
+ "@apollo/utils.keyvaluecache" "^1.0.1"
+ apollo-server-plugin-base "^3.6.3"
+ apollo-server-types "^3.6.3"
-"apollo-server-types@^0.9.0 || ^3.0.0", apollo-server-types@^3.0.2, apollo-server-types@^3.3.0:
+apollo-server-types@^3.0.2:
version "3.3.0"
resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-3.3.0.tgz#20448e2c88e2045764a5fe82ab66069e79c4a834"
integrity sha512-m+GyuXyuZ7YdZO1NIMJdJoOKsocCPx/WRVzBjDegYxNcAa/lDvNYU3hFyX87UGXt8Xsd9VIHxdhO88S6jkgCmw==
@@ -3241,14 +3567,14 @@ apollo-server-plugin-response-cache@3.6.0:
apollo-server-caching "^3.2.0"
apollo-server-env "^4.1.0"
-apollo-server-types@^3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-3.6.0.tgz#29fd8369aad99d42f72b760eb12bfe2c888da901"
- integrity sha512-zISCkwXvwTHK2AysWSfLAUvDLSDJ0xj8pnfxDv34hqA+G9JqsLbykJdSL1Y1kT53HU4RWF6ymTuTwwOmmBiAWA==
+apollo-server-types@^3.6.3:
+ version "3.6.3"
+ resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-3.6.3.tgz#7818cab914c865dafa53ea263ca6cb1854b4f05a"
+ integrity sha512-+7caNTLdevpWI2dGKSa7CWdyudO3NBuJ3HzcrYxjBei6Bth9YdRUNzPSFmBjlm2baHF0GsrMwLpjO+HStJzm3A==
dependencies:
+ "@apollo/utils.keyvaluecache" "^1.0.1"
"@apollo/utils.logger" "^1.0.0"
- apollo-reporting-protobuf "^3.3.1"
- apollo-server-caching "^3.3.0"
+ apollo-reporting-protobuf "^3.3.3"
apollo-server-env "^4.2.1"
apollo-utilities@1.3.4, apollo-utilities@^1.3.0, apollo-utilities@^1.3.4:
@@ -3266,11 +3592,6 @@ append-field@^1.0.0:
resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56"
integrity sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY=
-aproba@^1.0.3:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
- integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
-
"aproba@^1.0.3 || ^2.0.0", aproba@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc"
@@ -3289,14 +3610,6 @@ are-we-there-yet@^3.0.0:
delegates "^1.0.0"
readable-stream "^3.6.0"
-are-we-there-yet@~1.1.2:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146"
- integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==
- dependencies:
- delegates "^1.0.0"
- readable-stream "^2.0.6"
-
arg@^4.1.0:
version "4.1.3"
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
@@ -3399,6 +3712,11 @@ async-retry@1.3.3, async-retry@^1.2.1, async-retry@^1.3.3:
dependencies:
retry "0.13.1"
+async@^3.2.3:
+ version "3.2.4"
+ resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c"
+ integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==
+
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
@@ -3429,6 +3747,15 @@ avvio@^7.1.2:
fastq "^1.6.1"
queue-microtask "^1.1.2"
+avvio@^8.2.0:
+ version "8.2.0"
+ resolved "https://registry.yarnpkg.com/avvio/-/avvio-8.2.0.tgz#aff28b0266617bf07ffc1c2d5f4220c3663ce1c2"
+ integrity sha512-bbCQdg7bpEv6kGH41RO/3B2/GMMmJSo2iBK+X8AWN9mujtfUipMDfIjsgHCfpnKqoGEQrrmCDKSa5OQ19+fDmg==
+ dependencies:
+ archy "^1.0.0"
+ debug "^4.0.0"
+ fastq "^1.6.1"
+
axios@0.27.2:
version "0.27.2"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972"
@@ -3437,15 +3764,24 @@ axios@0.27.2:
follow-redirects "^1.14.9"
form-data "^4.0.0"
-babel-jest@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.0.tgz#95a67f8e2e7c0042e7b3ad3951b8af41a533b5ea"
- integrity sha512-zNKk0yhDZ6QUwfxh9k07GII6siNGMJWVUU49gmFj5gfdqDKLqa2RArXOF2CODp4Dr7dLxN2cvAV+667dGJ4b4w==
+axios@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-1.1.2.tgz#8b6f6c540abf44ab98d9904e8daf55351ca4a331"
+ integrity sha512-bznQyETwElsXl2RK7HLLwb5GPpOLlycxHCtrpDR/4RqqBzjARaOTo3jz4IgtntWUYee7Ne4S8UHd92VCuzPaWA==
+ dependencies:
+ follow-redirects "^1.15.0"
+ form-data "^4.0.0"
+ proxy-from-env "^1.1.0"
+
+babel-jest@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.2.2.tgz#2c15abd8c2081293c9c3f4f80a4ed1d51542fee5"
+ integrity sha512-kkq2QSDIuvpgfoac3WZ1OOcHsQQDU5xYk2Ql7tLdJ8BVAYbefEXal+NfS45Y5LVZA7cxC8KYcQMObpCt1J025w==
dependencies:
- "@jest/transform" "^28.1.0"
+ "@jest/transform" "^29.2.2"
"@types/babel__core" "^7.1.14"
babel-plugin-istanbul "^6.1.1"
- babel-preset-jest "^28.0.2"
+ babel-preset-jest "^29.2.0"
chalk "^4.0.0"
graceful-fs "^4.2.9"
slash "^3.0.0"
@@ -3461,10 +3797,10 @@ babel-plugin-istanbul@^6.1.1:
istanbul-lib-instrument "^5.0.4"
test-exclude "^6.0.0"
-babel-plugin-jest-hoist@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.0.2.tgz#9307d03a633be6fc4b1a6bc5c3a87e22bd01dd3b"
- integrity sha512-Kizhn/ZL+68ZQHxSnHyuvJv8IchXD62KQxV77TBDV/xoBFBOfgRAk97GNs6hXdTTCiVES9nB2I6+7MXXrk5llQ==
+babel-plugin-jest-hoist@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz#23ee99c37390a98cfddf3ef4a78674180d823094"
+ integrity sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA==
dependencies:
"@babel/template" "^7.3.3"
"@babel/types" "^7.3.3"
@@ -3489,12 +3825,12 @@ babel-preset-current-node-syntax@^1.0.0:
"@babel/plugin-syntax-optional-chaining" "^7.8.3"
"@babel/plugin-syntax-top-level-await" "^7.8.3"
-babel-preset-jest@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-28.0.2.tgz#d8210fe4e46c1017e9fa13d7794b166e93aa9f89"
- integrity sha512-sYzXIdgIXXroJTFeB3S6sNDWtlJ2dllCdTEsnZ65ACrMojj3hVNFRmnJ1HZtomGi+Be7aqpY/HJ92fr8OhKVkQ==
+babel-preset-jest@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.2.0.tgz#3048bea3a1af222e3505e4a767a974c95a7620dc"
+ integrity sha512-z9JmMJppMxNv8N7fNRHvhMg9cvIkMxQBXgFkane3yKVEvEOP+kB50lk8DFRvF9PGqbyXxlmebKWhuDORO8RgdA==
dependencies:
- babel-plugin-jest-hoist "^28.0.2"
+ babel-plugin-jest-hoist "^29.2.0"
babel-preset-current-node-syntax "^1.0.0"
backo2@^1.0.2:
@@ -3534,7 +3870,7 @@ binary-extensions@^2.0.0:
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
-bl@^4.1.0:
+bl@^4.0.3, bl@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a"
integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
@@ -3586,19 +3922,19 @@ body-parser@^1.19.0:
raw-body "2.4.0"
type-is "~1.6.17"
-boxen@^5.0.0:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50"
- integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==
- dependencies:
- ansi-align "^3.0.0"
- camelcase "^6.2.0"
- chalk "^4.1.0"
- cli-boxes "^2.2.1"
- string-width "^4.2.2"
- type-fest "^0.20.2"
- widest-line "^3.1.0"
- wrap-ansi "^7.0.0"
+boxen@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/boxen/-/boxen-7.0.0.tgz#9e5f8c26e716793fc96edcf7cf754cdf5e3fbf32"
+ integrity sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==
+ dependencies:
+ ansi-align "^3.0.1"
+ camelcase "^7.0.0"
+ chalk "^5.0.1"
+ cli-boxes "^3.0.0"
+ string-width "^5.1.2"
+ type-fest "^2.13.0"
+ widest-line "^4.0.1"
+ wrap-ansi "^8.0.1"
brace-expansion@^1.1.7:
version "1.1.11"
@@ -3691,13 +4027,12 @@ builtins@^5.0.0:
dependencies:
semver "^7.0.0"
-busboy@^0.2.11:
- version "0.2.14"
- resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.2.14.tgz#6c2a622efcf47c57bbbe1e2a9c37ad36c7925453"
- integrity sha1-bCpiLvz0fFe7vh4qnDetNseSVFM=
+busboy@^1.0.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893"
+ integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==
dependencies:
- dicer "0.2.5"
- readable-stream "1.1.x"
+ streamsearch "^1.1.0"
byte-size@^7.0.0:
version "7.0.1"
@@ -3714,7 +4049,7 @@ bytes@3.1.2:
resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
-cacache@^15.0.5, cacache@^15.2.0:
+cacache@^15.2.0:
version "15.3.0"
resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb"
integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==
@@ -3767,18 +4102,23 @@ cacheable-lookup@^6.0.4:
resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.4.tgz#65c0e51721bb7f9f2cb513aed6da4a1b93ad7dc8"
integrity sha512-mbcDEZCkv2CZF4G01kr8eBd/5agkt9oCqz75tJMSIsquvRZ2sL6Hi5zGVKi/0OSC9oO1GHfJ2AV0ZIOY9vye0A==
-cacheable-request@^6.0.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912"
- integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==
+cacheable-lookup@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27"
+ integrity sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==
+
+cacheable-request@^10.2.1:
+ version "10.2.1"
+ resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-10.2.1.tgz#cbc7480bf057fb7bd5bc7520f7e5a43d9c865626"
+ integrity sha512-3tLJyBjGuXw1s5gpKFSG3iS4kaKT4id04dZi98wzHQp/8cqZNweBnrF9J+rrlvrf4M53OdtDGNctNHFias8BEA==
dependencies:
- clone-response "^1.0.2"
- get-stream "^5.1.0"
- http-cache-semantics "^4.0.0"
- keyv "^3.0.0"
- lowercase-keys "^2.0.0"
- normalize-url "^4.1.0"
- responselike "^1.0.2"
+ "@types/http-cache-semantics" "^4.0.1"
+ get-stream "^6.0.1"
+ http-cache-semantics "^4.1.0"
+ keyv "^4.5.0"
+ mimic-response "^4.0.0"
+ normalize-url "^7.1.0"
+ responselike "^3.0.0"
cacheable-request@^7.0.2:
version "7.0.2"
@@ -3825,6 +4165,11 @@ camelcase@^6.2.0:
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809"
integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==
+camelcase@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.0.tgz#fd112621b212126741f998d614cbc2a8623fd174"
+ integrity sha512-JToIvOmz6nhGsUhAYScbo2d6Py5wojjNfoxoc2mEVLUdJ70gJK2gnd+ABY1Tc3sVMyK7QDPtN0T/XdlCQWITyQ==
+
caniuse-lite@^1.0.30001274:
version "1.0.30001278"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001278.tgz#51cafc858df77d966b17f59b5839250b24417fff"
@@ -3835,7 +4180,15 @@ caniuse-lite@^1.0.30001286:
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz#ebc9086026534cab0dab99425d9c3b4425e5f450"
integrity sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA==
-chalk@5.0.1, chalk@^5.0.0:
+chalk@4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a"
+ integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==
+ dependencies:
+ ansi-styles "^4.1.0"
+ supports-color "^7.1.0"
+
+chalk@5.0.1, chalk@^5.0.0, chalk@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.0.1.tgz#ca57d71e82bb534a296df63bbacc4a1c22b2a4b6"
integrity sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==
@@ -3849,7 +4202,7 @@ chalk@^2.0.0:
escape-string-regexp "^1.0.5"
supports-color "^5.3.0"
-chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1:
+chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1:
version "4.1.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
@@ -3867,7 +4220,7 @@ chardet@^0.7.0:
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
-chokidar@3.5.3:
+chokidar@3.5.3, chokidar@^3.5.1:
version "3.5.3"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
@@ -3920,12 +4273,12 @@ clean-stack@^2.0.0:
resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
-cli-boxes@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f"
- integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==
+cli-boxes@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-3.0.0.tgz#71a10c716feeba005e4504f36329ef0b17cf3145"
+ integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==
-cli-cursor@^3.1.0:
+cli-cursor@3.1.0, cli-cursor@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==
@@ -3951,7 +4304,7 @@ cli-highlight@^2.1.11:
parse5-htmlparser2-tree-adapter "^6.0.0"
yargs "^16.0.0"
-cli-spinners@^2.5.0, cli-spinners@^2.6.1:
+cli-spinners@2.6.1, cli-spinners@^2.5.0, cli-spinners@^2.6.1:
version "2.6.1"
resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d"
integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==
@@ -3977,6 +4330,11 @@ cli-width@^3.0.0:
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6"
integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==
+cli-width@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-4.0.0.tgz#a5622f6a3b0a9e3e711a25f099bf2399f608caf6"
+ integrity sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw==
+
cliui@^7.0.2:
version "7.0.4"
resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
@@ -4007,13 +4365,6 @@ clone@^1.0.2:
resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4=
-cmd-shim@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd"
- integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw==
- dependencies:
- mkdirp-infer-owner "^2.0.0"
-
cmd-shim@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724"
@@ -4026,17 +4377,10 @@ co@^4.6.0:
resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
-code-block-writer@^11.0.0:
- version "11.0.0"
- resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-11.0.0.tgz#5956fb186617f6740e2c3257757fea79315dd7d4"
- integrity sha512-GEqWvEWWsOvER+g9keO4ohFoD3ymwyCnqY3hoTr7GZipYFwEhMHJw+TtV0rfgRhNImM6QWZGO2XYjlJVyYT62w==
- dependencies:
- tslib "2.3.1"
-
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
- integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
+code-block-writer@^11.0.3:
+ version "11.0.3"
+ resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-11.0.3.tgz#9eec2993edfb79bfae845fbc093758c0a0b73b76"
+ integrity sha512-NiujjUFB4SwScJq2bwbYUtXbZhBSlY6vYzm++3Q6oC+U+injTqfPYFK8wS9COOmb2lueqp0ZRB4nK1VYeHgNyw==
collect-v8-coverage@^1.0.0:
version "1.0.1"
@@ -4077,12 +4421,17 @@ colorette@^2.0.16:
resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da"
integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==
-columnify@^1.5.4:
- version "1.5.4"
- resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb"
- integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=
+colorette@^2.0.17:
+ version "2.0.17"
+ resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.17.tgz#5dd4c0d15e2984b7433cb4a9f2ead45063b80c47"
+ integrity sha512-hJo+3Bkn0NCHybn9Tu35fIeoOKGOk5OCC32y4Hz2It+qlCO2Q3DeQ1hRn/tDDMQKRYUEzqsl7jbF6dYKjlE60g==
+
+columnify@^1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3"
+ integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==
dependencies:
- strip-ansi "^3.0.0"
+ strip-ansi "^6.0.1"
wcwidth "^1.0.0"
combined-stream@^1.0.6, combined-stream@^1.0.8:
@@ -4153,7 +4502,7 @@ concat-stream@^2.0.0:
readable-stream "^3.0.2"
typedarray "^0.0.6"
-config-chain@^1.1.12:
+config-chain@^1.1.11, config-chain@^1.1.12:
version "1.1.13"
resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"
integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
@@ -4161,24 +4510,23 @@ config-chain@^1.1.12:
ini "^1.3.4"
proto-list "~1.2.1"
-configstore@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96"
- integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==
+configstore@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/configstore/-/configstore-6.0.0.tgz#49eca2ebc80983f77e09394a1a56e0aca8235566"
+ integrity sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==
dependencies:
- dot-prop "^5.2.0"
- graceful-fs "^4.1.2"
- make-dir "^3.0.0"
- unique-string "^2.0.0"
- write-file-atomic "^3.0.0"
- xdg-basedir "^4.0.0"
+ dot-prop "^6.0.1"
+ graceful-fs "^4.2.6"
+ unique-string "^3.0.0"
+ write-file-atomic "^3.0.3"
+ xdg-basedir "^5.0.1"
consola@^2.15.0:
version "2.15.3"
resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550"
integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==
-console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0:
+console-control-strings@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
@@ -4210,7 +4558,7 @@ conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12:
compare-func "^2.0.0"
q "^1.5.1"
-conventional-changelog-core@^4.2.2:
+conventional-changelog-core@^4.2.4:
version "4.2.4"
resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f"
integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==
@@ -4306,21 +4654,11 @@ cookie@^0.4.0:
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1"
integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==
-cookie@^0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432"
- integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==
-
cookiejar@^2.1.3:
version "2.1.3"
resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc"
integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==
-core-js-pure@^3.10.2:
- version "3.19.1"
- resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.19.1.tgz#edffc1fc7634000a55ba05e95b3f0fe9587a5aa4"
- integrity sha512-Q0Knr8Es84vtv62ei6/6jXH/7izKmOrtrxH9WJTHLCMAVeU+8TF8z8Nr08CsH4Ot0oJKzBzJJL9SJBYIv7WlfQ==
-
core-util-is@~1.0.0:
version "1.0.3"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
@@ -4334,15 +4672,12 @@ cors@2.8.5, cors@^2.8.5:
object-assign "^4"
vary "^1"
-cosmiconfig-typescript-loader@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-2.0.0.tgz#bc4f5bfcaa11a353714ecdef00c4f2226ef191b8"
- integrity sha512-2NlGul/E3vTQEANqPziqkA01vfiuUU8vT0jZAuUIjEW8u3eCcnCQWLggapCjhbF76s7KQF0fM0kXSKmzaDaG1g==
- dependencies:
- cosmiconfig "^7"
- ts-node "^10.7.0"
+cosmiconfig-typescript-loader@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.0.0.tgz#4a6d856c1281135197346a6f64dfa73a9cd9fefa"
+ integrity sha512-cVpucSc2Tf+VPwCCR7SZzmQTQkPbkk4O01yXsYqXBIbjE1bhwqSyAgYQkRK1un4i0OPziTleqFhdkmOc4RQ/9g==
-cosmiconfig@7.0.1, cosmiconfig@^7, cosmiconfig@^7.0.0:
+cosmiconfig@7.0.1, cosmiconfig@^7.0.0:
version "7.0.1"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d"
integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==
@@ -4367,10 +4702,12 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
shebang-command "^2.0.0"
which "^2.0.1"
-crypto-random-string@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5"
- integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==
+crypto-random-string@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2"
+ integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==
+ dependencies:
+ type-fest "^1.0.1"
cssfilter@0.0.10:
version "0.0.10"
@@ -4387,6 +4724,11 @@ data-uri-to-buffer@3, data-uri-to-buffer@^3.0.1:
resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636"
integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==
+data-uri-to-buffer@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz#b5db46aea50f6176428ac05b73be39a57701a64b"
+ integrity sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==
+
dateformat@^3.0.0:
version "3.0.3"
resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae"
@@ -4445,18 +4787,6 @@ decamelize@^1.1.0:
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
-decode-uri-component@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
- integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
-
-decompress-response@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
- integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
- dependencies:
- mimic-response "^1.0.0"
-
decompress-response@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
@@ -4512,11 +4842,6 @@ defaults@^1.0.3:
dependencies:
clone "^1.0.2"
-defer-to-connect@^1.0.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
- integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
-
defer-to-connect@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
@@ -4602,23 +4927,15 @@ dezalgo@1.0.3, dezalgo@^1.0.0:
asap "^2.0.0"
wrappy "1"
-dicer@0.2.5:
- version "0.2.5"
- resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.2.5.tgz#5996c086bb33218c812c090bddc09cd12facb70f"
- integrity sha1-WZbAhrszIYyBLAkL3cCc0S+stw8=
- dependencies:
- readable-stream "1.1.x"
- streamsearch "0.1.2"
-
-diff-sequences@^27.5.1:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327"
- integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==
+diff-sequences@^29.0.0:
+ version "29.0.0"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.0.0.tgz#bae49972ef3933556bcb0800b72e8579d19d9e4f"
+ integrity sha512-7Qe/zd1wxSDL4D/X/FPjOMB+ZMDt71W94KYaq05I2l0oQqgXgs7s4ftYYmV38gBSrPz2vcygxfs1xn0FT+rKNA==
-diff-sequences@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.0.2.tgz#40f8d4ffa081acbd8902ba35c798458d0ff1af41"
- integrity sha512-YtEoNynLDFCRznv/XDalsKGSZDoj0U5kLnXvY0JSq3nBboRrZXjD81+eSiwi+nzcZDwedMmcowcxNwwgFW23mQ==
+diff-sequences@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.2.0.tgz#4c55b5b40706c7b5d2c5c75999a50c56d214e8f6"
+ integrity sha512-413SY5JpYeSBZxmenGEmCVQ8mCgtFJF0w9PROdaS6z987XC2Pd2GOKqOITLtMftmyFZqgtCOb/QA7/Z3ZXfzIw==
diff@^4.0.1:
version "4.0.2"
@@ -4646,7 +4963,7 @@ doctrine@^3.0.0:
dependencies:
esutils "^2.0.2"
-dot-prop@^5.1.0, dot-prop@^5.2.0:
+dot-prop@^5.1.0:
version "5.3.0"
resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88"
integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==
@@ -4660,21 +4977,33 @@ dot-prop@^6.0.1:
dependencies:
is-obj "^2.0.0"
-duplexer3@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
- integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=
+dotenv@~10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
+ integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
duplexer@^0.1.1:
version "0.1.2"
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
+eastasianwidth@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
+ integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
+
ee-first@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
+ejs@^3.1.7:
+ version "3.1.8"
+ resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b"
+ integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==
+ dependencies:
+ jake "^10.8.5"
+
electron-to-chromium@^1.3.886:
version "1.3.889"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.889.tgz#0b7c6f7628559592d5406deda281788f37107790"
@@ -4685,10 +5014,10 @@ electron-to-chromium@^1.4.17:
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz#ce44c6d6cc449e7688a4356b8c261cfeafa26833"
integrity sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q==
-emittery@^0.10.2:
- version "0.10.2"
- resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.2.tgz#902eec8aedb8c41938c46e9385e9db7e03182933"
- integrity sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==
+emittery@^0.13.1:
+ version "0.13.1"
+ resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad"
+ integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==
emoji-regex@^8.0.0:
version "8.0.0"
@@ -4717,13 +5046,20 @@ encoding@^0.1.12, encoding@^0.1.13:
dependencies:
iconv-lite "^0.6.2"
-end-of-stream@^1.1.0:
+end-of-stream@^1.1.0, end-of-stream@^1.4.1:
version "1.4.4"
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
dependencies:
once "^1.4.0"
+enquirer@~2.3.6:
+ version "2.3.6"
+ resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
+ integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==
+ dependencies:
+ ansi-colors "^4.1.1"
+
env-paths@^2.2.0:
version "2.2.1"
resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
@@ -4805,10 +5141,10 @@ escalade@^3.1.1:
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
-escape-goat@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675"
- integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==
+escape-goat@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081"
+ integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==
escape-html@~1.0.3:
version "1.0.3"
@@ -4830,6 +5166,11 @@ escape-string-regexp@^4.0.0:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+escape-string-regexp@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8"
+ integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==
+
escodegen@^1.8.1:
version "1.14.3"
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503"
@@ -4882,10 +5223,10 @@ eslint-plugin-import@2.26.0:
resolve "^1.22.0"
tsconfig-paths "^3.14.1"
-eslint-plugin-prettier@4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz#8b99d1e4b8b24a762472b4567992023619cb98e0"
- integrity sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==
+eslint-plugin-prettier@4.2.1:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b"
+ integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==
dependencies:
prettier-linter-helpers "^1.0.0"
@@ -4922,13 +5263,15 @@ eslint-visitor-keys@^3.3.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
-eslint@8.16.0:
- version "8.16.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.16.0.tgz#6d936e2d524599f2a86c708483b4c372c5d3bbae"
- integrity sha512-MBndsoXY/PeVTDJeWsYj7kLZ5hQpJOfMYLsF6LicLHQWbRDG19lK5jOix4DPl8yY4SUFcE3txy86OzFLWT+yoA==
+eslint@8.26.0:
+ version "8.26.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.26.0.tgz#2bcc8836e6c424c4ac26a5674a70d44d84f2181d"
+ integrity sha512-kzJkpaw1Bfwheq4VXUezFriD1GxszX6dUekM7Z3aC2o4hju+tsR/XyTC3RcoSD7jmy9VkPU3+N6YjVU2e96Oyg==
dependencies:
- "@eslint/eslintrc" "^1.3.0"
- "@humanwhocodes/config-array" "^0.9.2"
+ "@eslint/eslintrc" "^1.3.3"
+ "@humanwhocodes/config-array" "^0.11.6"
+ "@humanwhocodes/module-importer" "^1.0.1"
+ "@nodelib/fs.walk" "^1.2.8"
ajv "^6.10.0"
chalk "^4.0.0"
cross-spawn "^7.0.2"
@@ -4938,18 +5281,21 @@ eslint@8.16.0:
eslint-scope "^7.1.1"
eslint-utils "^3.0.0"
eslint-visitor-keys "^3.3.0"
- espree "^9.3.2"
+ espree "^9.4.0"
esquery "^1.4.0"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
file-entry-cache "^6.0.1"
- functional-red-black-tree "^1.0.1"
- glob-parent "^6.0.1"
+ find-up "^5.0.0"
+ glob-parent "^6.0.2"
globals "^13.15.0"
+ grapheme-splitter "^1.0.4"
ignore "^5.2.0"
import-fresh "^3.0.0"
imurmurhash "^0.1.4"
is-glob "^4.0.0"
+ is-path-inside "^3.0.3"
+ js-sdsl "^4.1.4"
js-yaml "^4.1.0"
json-stable-stringify-without-jsonify "^1.0.1"
levn "^0.4.1"
@@ -4961,14 +5307,13 @@ eslint@8.16.0:
strip-ansi "^6.0.1"
strip-json-comments "^3.1.0"
text-table "^0.2.0"
- v8-compile-cache "^2.0.3"
-espree@^9.3.2:
- version "9.3.2"
- resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.2.tgz#f58f77bd334731182801ced3380a8cc859091596"
- integrity sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==
+espree@^9.4.0:
+ version "9.4.0"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.0.tgz#cd4bc3d6e9336c433265fc0aa016fc1aaf182f8a"
+ integrity sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==
dependencies:
- acorn "^8.7.1"
+ acorn "^8.8.0"
acorn-jsx "^5.3.2"
eslint-visitor-keys "^3.3.0"
@@ -4977,7 +5322,7 @@ esprima@^4.0.0, esprima@^4.0.1:
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-esquery@^1.4.0:
+esquery@^1.0.1, esquery@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"
integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==
@@ -5011,6 +5356,11 @@ etag@~1.8.1:
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
+event-target-shim@^5.0.0:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
+ integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
+
eventemitter3@^3.1.0:
version "3.1.2"
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
@@ -5061,16 +5411,27 @@ exit@^0.1.2:
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
-expect@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/expect/-/expect-28.1.0.tgz#10e8da64c0850eb8c39a480199f14537f46e8360"
- integrity sha512-qFXKl8Pmxk8TBGfaFKRtcQjfXEnKAs+dmlxdwvukJZorwrAabT7M3h8oLOG01I2utEhkmUTi17CHaPBovZsKdw==
+expect@^29.0.0:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-29.0.1.tgz#a2fa64a59cffe4b4007877e730bc82be3d1742bb"
+ integrity sha512-yQgemsjLU+1S8t2A7pXT3Sn/v5/37LY8J+tocWtKEA0iEYYc6gfKbbJJX2fxHZmd7K9WpdbQqXUpmYkq1aewYg==
+ dependencies:
+ "@jest/expect-utils" "^29.0.1"
+ jest-get-type "^29.0.0"
+ jest-matcher-utils "^29.0.1"
+ jest-message-util "^29.0.1"
+ jest-util "^29.0.1"
+
+expect@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-29.2.2.tgz#ba2dd0d7e818727710324a6e7f13dd0e6d086106"
+ integrity sha512-hE09QerxZ5wXiOhqkXy5d2G9ar+EqOyifnCXCpMNu+vZ6DG9TJ6CO2c2kPDSLqERTTWrO7OZj8EkYHQqSd78Yw==
dependencies:
- "@jest/expect-utils" "^28.1.0"
- jest-get-type "^28.0.2"
- jest-matcher-utils "^28.1.0"
- jest-message-util "^28.1.0"
- jest-util "^28.1.0"
+ "@jest/expect-utils" "^29.2.2"
+ jest-get-type "^29.2.0"
+ jest-matcher-utils "^29.2.2"
+ jest-message-util "^29.2.1"
+ jest-util "^29.2.1"
express@4.18.1:
version "4.18.1"
@@ -5133,10 +5494,10 @@ fast-diff@^1.1.2:
resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03"
integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
-fast-glob@3.2.11, fast-glob@^3.2.11, fast-glob@^3.2.9:
- version "3.2.11"
- resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
- integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
+fast-glob@3.2.12:
+ version "3.2.12"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"
+ integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
dependencies:
"@nodelib/fs.stat" "^2.0.2"
"@nodelib/fs.walk" "^1.2.3"
@@ -5144,7 +5505,7 @@ fast-glob@3.2.11, fast-glob@^3.2.11, fast-glob@^3.2.9:
merge2 "^1.3.0"
micromatch "^4.0.4"
-fast-glob@^3.1.1:
+fast-glob@3.2.7, fast-glob@^3.1.1:
version "3.2.7"
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1"
integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==
@@ -5155,6 +5516,17 @@ fast-glob@^3.1.1:
merge2 "^1.3.0"
micromatch "^4.0.4"
+fast-glob@^3.2.11, fast-glob@^3.2.9:
+ version "3.2.11"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
+ integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
+ dependencies:
+ "@nodelib/fs.stat" "^2.0.2"
+ "@nodelib/fs.walk" "^1.2.3"
+ glob-parent "^5.1.2"
+ merge2 "^1.3.0"
+ micromatch "^4.0.4"
+
fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
@@ -5179,21 +5551,49 @@ fast-json-stringify@^2.5.2:
rfdc "^1.2.0"
string-similarity "^4.0.1"
+fast-json-stringify@^5.0.0:
+ version "5.0.5"
+ resolved "https://registry.yarnpkg.com/fast-json-stringify/-/fast-json-stringify-5.0.5.tgz#9bcec65128303274600d95f74e4814e360346e68"
+ integrity sha512-NGXE7I6dBcSTM1pprcLEIQ6nHp424mDn8ABleM17Sp7XkyPLlbIDed41/VhUiqnLICX7XiOoFsNHx/nnJ8qhig==
+ dependencies:
+ ajv "^8.10.0"
+ ajv-formats "^2.1.1"
+ deepmerge "^4.2.2"
+ fast-uri "^2.1.0"
+ rfdc "^1.2.0"
+
fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
+fast-querystring@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fast-querystring/-/fast-querystring-1.0.0.tgz#d6151cd025d4b100e09e24045f6c35ae9ff191ef"
+ integrity sha512-3LQi62IhQoDlmt4ULCYmh17vRO2EtS7hTSsG4WwoKWgV7GLMKBOecEh+aiavASnLx8I2y89OD33AGLo0ccRhzA==
+ dependencies:
+ fast-decode-uri-component "^1.0.1"
+
fast-redact@^3.0.0:
version "3.0.2"
resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.0.2.tgz#c940ba7162dde3aeeefc522926ae8c5231412904"
integrity sha512-YN+CYfCVRVMUZOUPeinHNKgytM1wPI/C/UCLEi56EsY2dwwvI00kIJHJoI7pMVqGoMew8SMZ2SSfHKHULHXDsg==
+fast-redact@^3.1.1:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.1.tgz#790fcff8f808c2e12fabbfb2be5cb2deda448fa0"
+ integrity sha512-odVmjC8x8jNeMZ3C+rPMESzXVSEU8tSWSHv9HFxP2mm89G/1WwqhrerJDQm9Zus8X6aoRgQDThKqptdNA6bt+A==
+
fast-safe-stringify@2.1.1, fast-safe-stringify@^2.0.8, fast-safe-stringify@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884"
integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==
+fast-uri@^2.0.0, fast-uri@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-2.1.0.tgz#9279432d6b53675c90116b947ed2bbba582d6fb5"
+ integrity sha512-qKRta6N7BWEFVlyonVY/V+BMLgFqktCUV0QjT259ekAIlbVrMaFnFLxJ4s/JPl4tou56S1BzPufI60bLe29fHA==
+
"fastify-cors-deprecated@npm:fastify-cors@6.0.3":
version "6.0.3"
resolved "https://registry.yarnpkg.com/fastify-cors/-/fastify-cors-6.0.3.tgz#1907f92c3f855a18ef6fb6213186c73cf0bbf9e4"
@@ -5210,11 +5610,6 @@ fastify-cors@6.1.0:
fastify-cors-deprecated "npm:fastify-cors@6.0.3"
process-warning "^1.0.0"
-fastify-error@^0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/fastify-error/-/fastify-error-0.3.1.tgz#8eb993e15e3cf57f0357fc452af9290f1c1278d2"
- integrity sha512-oCfpcsDndgnDVgiI7bwFKAun2dO+4h84vBlkWsWnz/OUK9Reff5UFoFl241xTiLeHWX/vU9zkDVXqYUxjOwHcQ==
-
"fastify-formbody-deprecated@npm:fastify-formbody@5.2.0":
version "5.2.0"
resolved "https://registry.yarnpkg.com/fastify-formbody/-/fastify-formbody-5.2.0.tgz#942f0847f106888cad419812590cfff7ffb61f92"
@@ -5235,32 +5630,11 @@ fastify-plugin@^3.0.0:
resolved "https://registry.yarnpkg.com/fastify-plugin/-/fastify-plugin-3.0.0.tgz#cf1b8c8098e3b5a7c8c30e6aeb06903370c054ca"
integrity sha512-ZdCvKEEd92DNLps5n0v231Bha8bkz1DjnPP/aEz37rz/q42Z5JVLmgnqR4DYuNn3NXAO3IDCPyRvgvxtJ4Ym4w==
-fastify-static@^4.2.2:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/fastify-static/-/fastify-static-4.5.0.tgz#0d3feff5373f5ed9c4e4cf31a2b84c2f70c35bb2"
- integrity sha512-Q7Tgl55AjsmBwiO4hKYib2BUCt+XTWLJ6Xp8YPPHU3EsrKNpevJ4cz8pjf1Ey1QhHw9O8Y2FDKdu+IC74oHvqw==
- dependencies:
- content-disposition "^0.5.3"
- encoding-negotiator "^2.0.1"
- fastify-plugin "^3.0.0"
- glob "^7.1.4"
- p-limit "^3.1.0"
- readable-stream "^3.4.0"
- send "^0.17.1"
-
fastify-warning@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/fastify-warning/-/fastify-warning-0.2.0.tgz#e717776026a4493dc9a2befa44db6d17f618008f"
integrity sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw==
-fastify-websocket@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/fastify-websocket/-/fastify-websocket-4.0.0.tgz#7d22e0fbd15cf64628b3fb77010f65e4880942b5"
- integrity sha512-XeeE2r4SkkLBp83NZ3BKCEdR6KFPEtiiIAUrvJhsvLJFRCV6BCnF5ZdchZ6ghPQ5rJ1VwcWlajuXHlQWwXX/YQ==
- dependencies:
- fastify-plugin "^3.0.0"
- ws "^8.0.0"
-
fastify@3.29.0:
version "3.29.0"
resolved "https://registry.yarnpkg.com/fastify/-/fastify-3.29.0.tgz#b840107f4fd40cc999b886548bfcda8062e38168"
@@ -5282,6 +5656,26 @@ fastify@3.29.0:
semver "^7.3.2"
tiny-lru "^8.0.1"
+fastify@4.9.2:
+ version "4.9.2"
+ resolved "https://registry.yarnpkg.com/fastify/-/fastify-4.9.2.tgz#0f5cfb3e1960320a9cae920efb59c3605c5577c7"
+ integrity sha512-Mk3hv7ZRet2huMYN6IJ8RGy1TAAC7LJsCEjxLf808zafAADNu43xRzbl7FSEIBxKyhntTM0F626Oc34LUNcUxQ==
+ dependencies:
+ "@fastify/ajv-compiler" "^3.3.1"
+ "@fastify/error" "^3.0.0"
+ "@fastify/fast-json-stringify-compiler" "^4.1.0"
+ abstract-logging "^2.0.1"
+ avvio "^8.2.0"
+ find-my-way "^7.3.0"
+ light-my-request "^5.6.1"
+ pino "^8.5.0"
+ process-warning "^2.0.0"
+ proxy-addr "^2.0.7"
+ rfdc "^1.3.0"
+ secure-json-parse "^2.5.0"
+ semver "^7.3.7"
+ tiny-lru "^9.0.2"
+
fastparallel@^2.3.0:
version "2.4.1"
resolved "https://registry.yarnpkg.com/fastparallel/-/fastparallel-2.4.1.tgz#0d984a5813ffa67f30b4a5cb4cb8cbe61c7ee5a5"
@@ -5311,13 +5705,29 @@ fetch-blob@^3.1.2:
dependencies:
web-streams-polyfill "^3.0.3"
-figures@^3.0.0:
+fetch-blob@^3.1.4:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9"
+ integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==
+ dependencies:
+ node-domexception "^1.0.0"
+ web-streams-polyfill "^3.0.3"
+
+figures@3.2.0, figures@^3.0.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af"
integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==
dependencies:
escape-string-regexp "^1.0.5"
+figures@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-5.0.0.tgz#126cd055052dea699f8a54e8c9450e6ecfc44d5f"
+ integrity sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==
+ dependencies:
+ escape-string-regexp "^5.0.0"
+ is-unicode-supported "^1.2.0"
+
file-entry-cache@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
@@ -5330,6 +5740,13 @@ file-uri-to-path@2:
resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba"
integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==
+filelist@^1.0.1:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5"
+ integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==
+ dependencies:
+ minimatch "^5.0.1"
+
fill-range@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
@@ -5337,11 +5754,6 @@ fill-range@^7.0.1:
dependencies:
to-regex-range "^5.0.1"
-filter-obj@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b"
- integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs=
-
finalhandler@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
@@ -5365,6 +5777,15 @@ find-my-way@^4.5.0:
safe-regex2 "^2.0.0"
semver-store "^0.3.0"
+find-my-way@^7.3.0:
+ version "7.3.1"
+ resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-7.3.1.tgz#fd8a0b468a18c283e05be59f93a627f37e306cfa"
+ integrity sha512-kGvM08SOkqvheLcuQ8GW9t/H901Qb9rZEbcNWbXopzy4jDRoaJpJoObPSKf4MnQLZ20ZTp7rL5MpF6rf+pqmyg==
+ dependencies:
+ fast-deep-equal "^3.1.3"
+ fast-querystring "^1.0.0"
+ safe-regex2 "^2.0.0"
+
find-up@^2.0.0, find-up@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
@@ -5396,6 +5817,11 @@ flat-cache@^3.0.4:
flatted "^3.1.0"
rimraf "^3.0.2"
+flat@^5.0.2:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
+ integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
+
flatstr@^1.0.12:
version "1.0.12"
resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931"
@@ -5411,6 +5837,11 @@ follow-redirects@^1.14.9:
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.0.tgz#06441868281c86d0dda4ad8bdaead2d02dca89d4"
integrity sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==
+follow-redirects@^1.15.0:
+ version "1.15.2"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
+ integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
+
foreach@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
@@ -5421,6 +5852,11 @@ form-data-encoder@1.7.1:
resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96"
integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==
+form-data-encoder@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-2.1.2.tgz#5996b7c236e8c418d08316055a2235226c5e4061"
+ integrity sha512-FCaIOVTRA9E0siY6FeXid7D5yrCqpsErplUkE2a1BEiKj1BE9z6FbKB4ntDTwC4NVLie9p+4E9nX4mWwEOT05A==
+
form-data@4.0.0, form-data@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
@@ -5448,6 +5884,13 @@ form-data@^3.0.0:
combined-stream "^1.0.8"
mime-types "^2.1.12"
+formdata-polyfill@^4.0.10:
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423"
+ integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==
+ dependencies:
+ fetch-blob "^3.1.2"
+
formidable@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/formidable/-/formidable-2.0.1.tgz#4310bc7965d185536f9565184dee74fbb75557ff"
@@ -5468,6 +5911,11 @@ fresh@0.5.2:
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
+fs-constants@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
+ integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
+
fs-extra@^10.0.0:
version "10.0.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1"
@@ -5477,6 +5925,15 @@ fs-extra@^10.0.0:
jsonfile "^6.0.1"
universalify "^2.0.0"
+fs-extra@^10.1.0:
+ version "10.1.0"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
+ integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
+ dependencies:
+ graceful-fs "^4.2.0"
+ jsonfile "^6.0.1"
+ universalify "^2.0.0"
+
fs-extra@^8.1.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
@@ -5526,11 +5983,6 @@ function-bind@^1.1.1:
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-functional-red-black-tree@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
- integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
-
gauge@^4.0.3:
version "4.0.4"
resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce"
@@ -5545,20 +5997,6 @@ gauge@^4.0.3:
strip-ansi "^6.0.1"
wide-align "^1.1.5"
-gauge@~2.7.3:
- version "2.7.4"
- resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
- integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
- dependencies:
- aproba "^1.0.3"
- console-control-strings "^1.0.0"
- has-unicode "^2.0.0"
- object-assign "^4.1.0"
- signal-exit "^3.0.0"
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wide-align "^1.1.0"
-
generate-function@^2.3.1:
version "2.3.1"
resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f"
@@ -5576,14 +6014,23 @@ get-caller-file@^2.0.5:
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1:
+get-intrinsic@^1.0.1, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==
dependencies:
function-bind "^1.1.1"
has "^1.0.3"
- has-symbols "^1.0.1"
+ has-symbols "^1.0.1"
+
+get-intrinsic@^1.0.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598"
+ integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==
+ dependencies:
+ function-bind "^1.1.1"
+ has "^1.0.3"
+ has-symbols "^1.0.3"
get-package-type@^0.1.0:
version "0.1.0"
@@ -5605,13 +6052,6 @@ get-port@^5.1.1:
resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193"
integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==
-get-stream@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
- integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
- dependencies:
- pump "^3.0.0"
-
get-stream@^5.1.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
@@ -5671,20 +6111,20 @@ git-semver-tags@^4.1.1:
meow "^8.0.0"
semver "^6.0.0"
-git-up@^4.0.0:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759"
- integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA==
+git-up@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467"
+ integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==
dependencies:
- is-ssh "^1.3.0"
- parse-url "^6.0.0"
+ is-ssh "^1.4.0"
+ parse-url "^8.1.0"
-git-url-parse@11.6.0, git-url-parse@^11.4.4:
- version "11.6.0"
- resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605"
- integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g==
+git-url-parse@13.1.0, git-url-parse@^13.1.0:
+ version "13.1.0"
+ resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-13.1.0.tgz#07e136b5baa08d59fabdf0e33170de425adf07b4"
+ integrity sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==
dependencies:
- git-up "^4.0.0"
+ git-up "^7.0.0"
gitconfiglocal@^1.0.0:
version "1.0.0"
@@ -5700,14 +6140,26 @@ glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2:
dependencies:
is-glob "^4.0.1"
-glob-parent@^6.0.1:
+glob-parent@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
dependencies:
is-glob "^4.0.3"
-glob@^7.0.0, glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
+glob@7.1.4:
+ version "7.1.4"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
+ integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
+ dependencies:
+ fs.realpath "^1.0.0"
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "^3.0.4"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+glob@^7.0.0, glob@^7.1.3, glob@^7.1.4:
version "7.2.0"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
@@ -5756,10 +6208,10 @@ globals@^13.15.0:
dependencies:
type-fest "^0.20.2"
-globby@13.1.1:
- version "13.1.1"
- resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.1.tgz#7c44a93869b0b7612e38f22ed532bfe37b25ea6f"
- integrity sha512-XMzoDZbGZ37tufiv7g0N4F/zp3zkwdFtVbV3EHsVl1KQr4RPLfNoT068/97RPshz2J5xYNEjLKKBKaGHifBd3Q==
+globby@13.1.2:
+ version "13.1.2"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.2.tgz#29047105582427ab6eca4f905200667b056da515"
+ integrity sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==
dependencies:
dir-glob "^3.0.1"
fast-glob "^3.2.11"
@@ -5791,10 +6243,27 @@ globby@^11.1.0:
merge2 "^1.4.1"
slash "^3.0.0"
-got@12.0.4:
- version "12.0.4"
- resolved "https://registry.yarnpkg.com/got/-/got-12.0.4.tgz#e3b6bf6992425f904076fd71aac7030da5122de8"
- integrity sha512-2Eyz4iU/ktq7wtMFXxzK7g5p35uNYLLdiZarZ5/Yn3IJlNEpBd5+dCgcAyxN8/8guZLszffwe3wVyw+DEVrpBg==
+got@12.5.1:
+ version "12.5.1"
+ resolved "https://registry.yarnpkg.com/got/-/got-12.5.1.tgz#0796191c61478273f4cdbeb19d358a75a54a008d"
+ integrity sha512-sD16AK8cCyUoPtKr/NMvLTFFa+T3i3S+zoiuvhq0HP2YiqBZA9AtlBjAdsQBsLBK7slPuvmfE0OxhGi7N5dD4w==
+ dependencies:
+ "@sindresorhus/is" "^5.2.0"
+ "@szmarczak/http-timer" "^5.0.1"
+ cacheable-lookup "^7.0.0"
+ cacheable-request "^10.2.1"
+ decompress-response "^6.0.0"
+ form-data-encoder "^2.1.2"
+ get-stream "^6.0.1"
+ http2-wrapper "^2.1.10"
+ lowercase-keys "^3.0.0"
+ p-cancelable "^3.0.0"
+ responselike "^3.0.0"
+
+got@^12.1.0:
+ version "12.1.0"
+ resolved "https://registry.yarnpkg.com/got/-/got-12.1.0.tgz#099f3815305c682be4fd6b0ee0726d8e4c6b0af4"
+ integrity sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==
dependencies:
"@sindresorhus/is" "^4.6.0"
"@szmarczak/http-timer" "^5.0.1"
@@ -5810,38 +6279,31 @@ got@12.0.4:
p-cancelable "^3.0.0"
responselike "^2.0.0"
-got@^9.6.0:
- version "9.6.0"
- resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85"
- integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==
- dependencies:
- "@sindresorhus/is" "^0.14.0"
- "@szmarczak/http-timer" "^1.1.2"
- cacheable-request "^6.0.0"
- decompress-response "^3.3.0"
- duplexer3 "^0.1.4"
- get-stream "^4.1.0"
- lowercase-keys "^1.0.1"
- mimic-response "^1.0.1"
- p-cancelable "^1.0.0"
- to-readable-stream "^1.0.0"
- url-parse-lax "^3.0.0"
+graceful-fs@4.2.10, graceful-fs@^4.2.6:
+ version "4.2.10"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"
+ integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0:
version "4.2.8"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==
-graceful-fs@^4.2.6:
- version "4.2.10"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"
- integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
-
graceful-fs@^4.2.9:
version "4.2.9"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96"
integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==
+grapheme-splitter@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"
+ integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
+
+"graphql-16@npm:graphql@16.6.0":
+ version "16.6.0"
+ resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.6.0.tgz#c2dcffa4649db149f6282af726c8c83f1c7c5fdb"
+ integrity sha512-KPIBPDlW7NxrbT/eh4qPXz5FiFdL5UbaA0XUNz2Rp3Z3hqBSkbj0GVjwFDztsWVauZUWsbKHgMg++sk8UX0bkw==
+
graphql-jit@^0.7.0:
version "0.7.3"
resolved "https://registry.yarnpkg.com/graphql-jit/-/graphql-jit-0.7.3.tgz#cdc14d93efb8aba75cafb0be263cbafd4881d4d9"
@@ -5923,6 +6385,11 @@ has-symbols@^1.0.1, has-symbols@^1.0.2:
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==
+has-symbols@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
+ integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
+
has-tostringtag@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
@@ -5930,15 +6397,15 @@ has-tostringtag@^1.0.0:
dependencies:
has-symbols "^1.0.2"
-has-unicode@^2.0.0, has-unicode@^2.0.1:
+has-unicode@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
-has-yarn@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77"
- integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==
+has-yarn@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d"
+ integrity sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==
has@^1.0.3:
version "1.0.3"
@@ -5962,6 +6429,13 @@ hosted-git-info@^2.1.4:
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
+hosted-git-info@^3.0.6:
+ version "3.0.8"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d"
+ integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==
+ dependencies:
+ lru-cache "^6.0.0"
+
hosted-git-info@^4.0.0, hosted-git-info@^4.0.1:
version "4.0.2"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961"
@@ -6102,13 +6576,6 @@ ieee754@^1.1.13, ieee754@^1.2.1:
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
-ignore-walk@^3.0.3:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335"
- integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==
- dependencies:
- minimatch "^3.0.4"
-
ignore-walk@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-5.0.1.tgz#5f199e23e1288f518d90358d461387788a154776"
@@ -6116,16 +6583,16 @@ ignore-walk@^5.0.1:
dependencies:
minimatch "^5.0.1"
+ignore@^5.0.4, ignore@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
+ integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
+
ignore@^5.1.4:
version "5.1.9"
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb"
integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==
-ignore@^5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
- integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
-
import-fresh@^3.0.0, import-fresh@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
@@ -6134,10 +6601,10 @@ import-fresh@^3.0.0, import-fresh@^3.2.1:
parent-module "^1.0.0"
resolve-from "^4.0.0"
-import-lazy@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43"
- integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=
+import-lazy@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153"
+ integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
import-local@^3.0.2:
version "3.0.3"
@@ -6190,20 +6657,41 @@ ini@^1.3.2, ini@^1.3.4, ini@~1.3.0:
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
-init-package-json@^2.0.2:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646"
- integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA==
+init-package-json@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-3.0.2.tgz#f5bc9bac93f2bdc005778bc2271be642fecfcd69"
+ integrity sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A==
dependencies:
- npm-package-arg "^8.1.5"
+ npm-package-arg "^9.0.1"
promzard "^0.3.0"
- read "~1.0.1"
- read-package-json "^4.1.1"
+ read "^1.0.7"
+ read-package-json "^5.0.0"
semver "^7.3.5"
validate-npm-package-license "^3.0.4"
- validate-npm-package-name "^3.0.0"
+ validate-npm-package-name "^4.0.0"
-inquirer@8.2.4:
+inquirer@9.1.2:
+ version "9.1.2"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-9.1.2.tgz#37f5486f3de0e38820aad83a1f75c52c747e2f9a"
+ integrity sha512-Hj2Ml1WpxKJU2npP2Rj0OURGkHV+GtNW2CwFdHDiXlqUBAUrWTcZHxCkFywX/XHzOS7wrG/kExgJFbUkVgyHzg==
+ dependencies:
+ ansi-escapes "^5.0.0"
+ chalk "^5.0.1"
+ cli-cursor "^4.0.0"
+ cli-width "^4.0.0"
+ external-editor "^3.0.3"
+ figures "^5.0.0"
+ lodash "^4.17.21"
+ mute-stream "0.0.8"
+ ora "^6.1.2"
+ run-async "^2.4.0"
+ rxjs "^7.5.6"
+ string-width "^5.1.2"
+ strip-ansi "^7.0.1"
+ through "^2.3.6"
+ wrap-ansi "^8.0.1"
+
+inquirer@^8.2.4:
version "8.2.4"
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4"
integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==
@@ -6224,25 +6712,6 @@ inquirer@8.2.4:
through "^2.3.6"
wrap-ansi "^7.0.0"
-inquirer@^7.3.3:
- version "7.3.3"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003"
- integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==
- dependencies:
- ansi-escapes "^4.2.1"
- chalk "^4.1.0"
- cli-cursor "^3.1.0"
- cli-width "^3.0.0"
- external-editor "^3.0.3"
- figures "^3.0.0"
- lodash "^4.17.19"
- mute-stream "0.0.8"
- run-async "^2.4.0"
- rxjs "^6.6.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
- through "^2.3.6"
-
internal-slot@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c"
@@ -6307,7 +6776,7 @@ is-callable@^1.1.4, is-callable@^1.2.4:
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945"
integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==
-is-ci@3.0.1:
+is-ci@3.0.1, is-ci@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867"
integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==
@@ -6352,13 +6821,6 @@ is-extglob@^2.1.1:
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
- dependencies:
- number-is-nan "^1.0.0"
-
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
@@ -6414,10 +6876,10 @@ is-negative-zero@^2.0.1:
resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24"
integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==
-is-npm@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8"
- integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==
+is-npm@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-6.0.0.tgz#b59e75e8915543ca5d881ecff864077cba095261"
+ integrity sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==
is-number-object@^1.0.4:
version "1.0.6"
@@ -6436,7 +6898,7 @@ is-obj@^2.0.0:
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982"
integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
-is-path-inside@^3.0.2:
+is-path-inside@^3.0.2, is-path-inside@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
@@ -6486,12 +6948,12 @@ is-shared-array-buffer@^1.0.1:
resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6"
integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==
-is-ssh@^1.3.0:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e"
- integrity sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ==
+is-ssh@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2"
+ integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==
dependencies:
- protocols "^1.1.0"
+ protocols "^2.0.1"
is-stream@^2.0.0:
version "2.0.1"
@@ -6545,7 +7007,7 @@ is-unicode-supported@^0.1.0:
resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"
integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==
-is-unicode-supported@^1.1.0:
+is-unicode-supported@^1.1.0, is-unicode-supported@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.2.0.tgz#f4f54f34d8ebc84a46b93559a036763b6d3e1014"
integrity sha512-wH+U77omcRzevfIG8dDhTS0V9zZyweakfD01FULl97+0EHiJTTZtJqxPSkIIo/SDPv/i07k/C9jAPY+jwLLeUQ==
@@ -6574,10 +7036,10 @@ is-wsl@^2.2.0:
dependencies:
is-docker "^2.0.0"
-is-yarn-global@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232"
- integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==
+is-yarn-global@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.4.0.tgz#714d94453327db9ea98fbf1a0c5f2b88f59ddd5c"
+ integrity sha512-HneQBCrXGBy15QnaDfcn6OLoU8AQPAa0Qn0IeJR/QCo4E8dNZaGGwxpCwWyEBQC5QvFonP8d6t60iGpAHVAfNA==
isarray@0.0.1:
version "0.0.1"
@@ -6669,406 +7131,464 @@ iterate-value@^1.0.2:
es-get-iterator "^1.0.2"
iterate-iterator "^1.0.1"
-jest-changed-files@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-28.0.2.tgz#7d7810660a5bd043af9e9cfbe4d58adb05e91531"
- integrity sha512-QX9u+5I2s54ZnGoMEjiM2WeBvJR2J7w/8ZUmH2um/WLAuGAYFQcsVXY9+1YL6k0H/AGUdH8pXUAv6erDqEsvIA==
+jake@^10.8.5:
+ version "10.8.5"
+ resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46"
+ integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==
+ dependencies:
+ async "^3.2.3"
+ chalk "^4.0.2"
+ filelist "^1.0.1"
+ minimatch "^3.0.4"
+
+jest-changed-files@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.2.0.tgz#b6598daa9803ea6a4dce7968e20ab380ddbee289"
+ integrity sha512-qPVmLLyBmvF5HJrY7krDisx6Voi8DmlV3GZYX0aFNbaQsZeoz1hfxcCMbqDGuQCxU1dJy9eYc2xscE8QrCCYaA==
dependencies:
execa "^5.0.0"
- throat "^6.0.1"
+ p-limit "^3.1.0"
-jest-circus@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.0.tgz#e229f590911bd54d60efaf076f7acd9360296dae"
- integrity sha512-rNYfqfLC0L0zQKRKsg4n4J+W1A2fbyGH7Ss/kDIocp9KXD9iaL111glsLu7+Z7FHuZxwzInMDXq+N1ZIBkI/TQ==
+jest-circus@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.2.2.tgz#1dc4d35fd49bf5e64d3cc505fb2db396237a6dfa"
+ integrity sha512-upSdWxx+Mh4DV7oueuZndJ1NVdgtTsqM4YgywHEx05UMH5nxxA2Qu9T9T9XVuR021XxqSoaKvSmmpAbjwwwxMw==
dependencies:
- "@jest/environment" "^28.1.0"
- "@jest/expect" "^28.1.0"
- "@jest/test-result" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/environment" "^29.2.2"
+ "@jest/expect" "^29.2.2"
+ "@jest/test-result" "^29.2.1"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
chalk "^4.0.0"
co "^4.6.0"
dedent "^0.7.0"
is-generator-fn "^2.0.0"
- jest-each "^28.1.0"
- jest-matcher-utils "^28.1.0"
- jest-message-util "^28.1.0"
- jest-runtime "^28.1.0"
- jest-snapshot "^28.1.0"
- jest-util "^28.1.0"
- pretty-format "^28.1.0"
+ jest-each "^29.2.1"
+ jest-matcher-utils "^29.2.2"
+ jest-message-util "^29.2.1"
+ jest-runtime "^29.2.2"
+ jest-snapshot "^29.2.2"
+ jest-util "^29.2.1"
+ p-limit "^3.1.0"
+ pretty-format "^29.2.1"
slash "^3.0.0"
stack-utils "^2.0.3"
- throat "^6.0.1"
-jest-cli@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.0.tgz#cd1d8adb9630102d5ba04a22895f63decdd7ac1f"
- integrity sha512-fDJRt6WPRriHrBsvvgb93OxgajHHsJbk4jZxiPqmZbMDRcHskfJBBfTyjFko0jjfprP544hOktdSi9HVgl4VUQ==
+jest-cli@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.2.2.tgz#feaf0aa57d327e80d4f2f18d5f8cd2e77cac5371"
+ integrity sha512-R45ygnnb2CQOfd8rTPFR+/fls0d+1zXS6JPYTBBrnLPrhr58SSuPTiA5Tplv8/PXpz4zXR/AYNxmwIj6J6nrvg==
dependencies:
- "@jest/core" "^28.1.0"
- "@jest/test-result" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/core" "^29.2.2"
+ "@jest/test-result" "^29.2.1"
+ "@jest/types" "^29.2.1"
chalk "^4.0.0"
exit "^0.1.2"
graceful-fs "^4.2.9"
import-local "^3.0.2"
- jest-config "^28.1.0"
- jest-util "^28.1.0"
- jest-validate "^28.1.0"
+ jest-config "^29.2.2"
+ jest-util "^29.2.1"
+ jest-validate "^29.2.2"
prompts "^2.0.1"
yargs "^17.3.1"
-jest-config@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.0.tgz#fca22ca0760e746fe1ce1f9406f6b307ab818501"
- integrity sha512-aOV80E9LeWrmflp7hfZNn/zGA4QKv/xsn2w8QCBP0t0+YqObuCWTSgNbHJ0j9YsTuCO08ZR/wsvlxqqHX20iUA==
+jest-config@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.2.2.tgz#bf98623a46454d644630c1f0de8bba3f495c2d59"
+ integrity sha512-Q0JX54a5g1lP63keRfKR8EuC7n7wwny2HoTRDb8cx78IwQOiaYUVZAdjViY3WcTxpR02rPUpvNVmZ1fkIlZPcw==
dependencies:
"@babel/core" "^7.11.6"
- "@jest/test-sequencer" "^28.1.0"
- "@jest/types" "^28.1.0"
- babel-jest "^28.1.0"
+ "@jest/test-sequencer" "^29.2.2"
+ "@jest/types" "^29.2.1"
+ babel-jest "^29.2.2"
chalk "^4.0.0"
ci-info "^3.2.0"
deepmerge "^4.2.2"
glob "^7.1.3"
graceful-fs "^4.2.9"
- jest-circus "^28.1.0"
- jest-environment-node "^28.1.0"
- jest-get-type "^28.0.2"
- jest-regex-util "^28.0.2"
- jest-resolve "^28.1.0"
- jest-runner "^28.1.0"
- jest-util "^28.1.0"
- jest-validate "^28.1.0"
+ jest-circus "^29.2.2"
+ jest-environment-node "^29.2.2"
+ jest-get-type "^29.2.0"
+ jest-regex-util "^29.2.0"
+ jest-resolve "^29.2.2"
+ jest-runner "^29.2.2"
+ jest-util "^29.2.1"
+ jest-validate "^29.2.2"
micromatch "^4.0.4"
parse-json "^5.2.0"
- pretty-format "^28.1.0"
+ pretty-format "^29.2.1"
slash "^3.0.0"
strip-json-comments "^3.1.1"
-jest-diff@^27.5.1:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def"
- integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==
+jest-diff@^29.0.1:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.0.1.tgz#d14e900a38ee4798d42feaaf0c61cb5b98e4c028"
+ integrity sha512-l8PYeq2VhcdxG9tl5cU78ClAlg/N7RtVSp0v3MlXURR0Y99i6eFnegmasOandyTmO6uEdo20+FByAjBFEO9nuw==
dependencies:
chalk "^4.0.0"
- diff-sequences "^27.5.1"
- jest-get-type "^27.5.1"
- pretty-format "^27.5.1"
+ diff-sequences "^29.0.0"
+ jest-get-type "^29.0.0"
+ pretty-format "^29.0.1"
-jest-diff@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-28.1.0.tgz#77686fef899ec1873dbfbf9330e37dd429703269"
- integrity sha512-8eFd3U3OkIKRtlasXfiAQfbovgFgRDb0Ngcs2E+FMeBZ4rUezqIaGjuyggJBp+llosQXNEWofk/Sz4Hr5gMUhA==
+jest-diff@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.2.1.tgz#027e42f5a18b693fb2e88f81b0ccab533c08faee"
+ integrity sha512-gfh/SMNlQmP3MOUgdzxPOd4XETDJifADpT937fN1iUGz+9DgOu2eUPHH25JDkLVcLwwqxv3GzVyK4VBUr9fjfA==
dependencies:
chalk "^4.0.0"
- diff-sequences "^28.0.2"
- jest-get-type "^28.0.2"
- pretty-format "^28.1.0"
+ diff-sequences "^29.2.0"
+ jest-get-type "^29.2.0"
+ pretty-format "^29.2.1"
-jest-docblock@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-28.0.2.tgz#3cab8abea53275c9d670cdca814fc89fba1298c2"
- integrity sha512-FH10WWw5NxLoeSdQlJwu+MTiv60aXV/t8KEwIRGEv74WARE1cXIqh1vGdy2CraHuWOOrnzTWj/azQKqW4fO7xg==
+jest-docblock@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.2.0.tgz#307203e20b637d97cee04809efc1d43afc641e82"
+ integrity sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==
dependencies:
detect-newline "^3.0.0"
-jest-each@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-28.1.0.tgz#54ae66d6a0a5b1913e9a87588d26c2687c39458b"
- integrity sha512-a/XX02xF5NTspceMpHujmOexvJ4GftpYXqr6HhhmKmExtMXsyIN/fvanQlt/BcgFoRKN4OCXxLQKth9/n6OPFg==
+jest-each@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.2.1.tgz#6b0a88ee85c2ba27b571a6010c2e0c674f5c9b29"
+ integrity sha512-sGP86H/CpWHMyK3qGIGFCgP6mt+o5tu9qG4+tobl0LNdgny0aitLXs9/EBacLy3Bwqy+v4uXClqJgASJWcruYw==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
chalk "^4.0.0"
- jest-get-type "^28.0.2"
- jest-util "^28.1.0"
- pretty-format "^28.1.0"
-
-jest-environment-node@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.0.tgz#6ed2150aa31babba0c488c5b4f4d813a585c68e6"
- integrity sha512-gBLZNiyrPw9CSMlTXF1yJhaBgWDPVvH0Pq6bOEwGMXaYNzhzhw2kA/OijNF8egbCgDS0/veRv97249x2CX+udQ==
- dependencies:
- "@jest/environment" "^28.1.0"
- "@jest/fake-timers" "^28.1.0"
- "@jest/types" "^28.1.0"
+ jest-get-type "^29.2.0"
+ jest-util "^29.2.1"
+ pretty-format "^29.2.1"
+
+jest-environment-node@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.2.2.tgz#a64b272773870c3a947cd338c25fd34938390bc2"
+ integrity sha512-B7qDxQjkIakQf+YyrqV5dICNs7tlCO55WJ4OMSXsqz1lpI/0PmeuXdx2F7eU8rnPbRkUR/fItSSUh0jvE2y/tw==
+ dependencies:
+ "@jest/environment" "^29.2.2"
+ "@jest/fake-timers" "^29.2.2"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
- jest-mock "^28.1.0"
- jest-util "^28.1.0"
+ jest-mock "^29.2.2"
+ jest-util "^29.2.1"
-jest-get-type@^27.5.1:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1"
- integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==
+jest-get-type@^29.0.0:
+ version "29.0.0"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.0.0.tgz#843f6c50a1b778f7325df1129a0fd7aa713aef80"
+ integrity sha512-83X19z/HuLKYXYHskZlBAShO7UfLFXu/vWajw9ZNJASN32li8yHMaVGAQqxFW1RCFOkB7cubaL6FaJVQqqJLSw==
-jest-get-type@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz#34622e628e4fdcd793d46db8a242227901fcf203"
- integrity sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==
+jest-get-type@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.2.0.tgz#726646f927ef61d583a3b3adb1ab13f3a5036408"
+ integrity sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==
-jest-haste-map@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-28.1.0.tgz#6c1ee2daf1c20a3e03dbd8e5b35c4d73d2349cf0"
- integrity sha512-xyZ9sXV8PtKi6NCrJlmq53PyNVHzxmcfXNVvIRHpHmh1j/HChC4pwKgyjj7Z9us19JMw8PpQTJsFWOsIfT93Dw==
+jest-haste-map@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.2.1.tgz#f803fec57f8075e6c55fb5cd551f99a72471c699"
+ integrity sha512-wF460rAFmYc6ARcCFNw4MbGYQjYkvjovb9GBT+W10Um8q5nHq98jD6fHZMDMO3tA56S8XnmNkM8GcA8diSZfnA==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
"@types/graceful-fs" "^4.1.3"
"@types/node" "*"
anymatch "^3.0.3"
fb-watchman "^2.0.0"
graceful-fs "^4.2.9"
- jest-regex-util "^28.0.2"
- jest-util "^28.1.0"
- jest-worker "^28.1.0"
+ jest-regex-util "^29.2.0"
+ jest-util "^29.2.1"
+ jest-worker "^29.2.1"
micromatch "^4.0.4"
- walker "^1.0.7"
+ walker "^1.0.8"
optionalDependencies:
fsevents "^2.3.2"
-jest-leak-detector@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-28.1.0.tgz#b65167776a8787443214d6f3f54935a4c73c8a45"
- integrity sha512-uIJDQbxwEL2AMMs2xjhZl2hw8s77c3wrPaQ9v6tXJLGaaQ+4QrNJH5vuw7hA7w/uGT/iJ42a83opAqxGHeyRIA==
+jest-leak-detector@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.2.1.tgz#ec551686b7d512ec875616c2c3534298b1ffe2fc"
+ integrity sha512-1YvSqYoiurxKOJtySc+CGVmw/e1v4yNY27BjWTVzp0aTduQeA7pdieLiW05wTYG/twlKOp2xS/pWuikQEmklug==
+ dependencies:
+ jest-get-type "^29.2.0"
+ pretty-format "^29.2.1"
+
+jest-matcher-utils@^29.0.1:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.0.1.tgz#eaa92dd5405c2df9d31d45ec4486361d219de3e9"
+ integrity sha512-/e6UbCDmprRQFnl7+uBKqn4G22c/OmwriE5KCMVqxhElKCQUDcFnq5XM9iJeKtzy4DUjxT27y9VHmKPD8BQPaw==
dependencies:
- jest-get-type "^28.0.2"
- pretty-format "^28.1.0"
+ chalk "^4.0.0"
+ jest-diff "^29.0.1"
+ jest-get-type "^29.0.0"
+ pretty-format "^29.0.1"
-jest-matcher-utils@^27.0.0:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab"
- integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==
+jest-matcher-utils@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.2.2.tgz#9202f8e8d3a54733266784ce7763e9a08688269c"
+ integrity sha512-4DkJ1sDPT+UX2MR7Y3od6KtvRi9Im1ZGLGgdLFLm4lPexbTaCgJW5NN3IOXlQHF7NSHY/VHhflQ+WoKtD/vyCw==
dependencies:
chalk "^4.0.0"
- jest-diff "^27.5.1"
- jest-get-type "^27.5.1"
- pretty-format "^27.5.1"
+ jest-diff "^29.2.1"
+ jest-get-type "^29.2.0"
+ pretty-format "^29.2.1"
-jest-matcher-utils@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-28.1.0.tgz#2ae398806668eeabd293c61712227cb94b250ccf"
- integrity sha512-onnax0n2uTLRQFKAjC7TuaxibrPSvZgKTcSCnNUz/tOjJ9UhxNm7ZmPpoQavmTDUjXvUQ8KesWk2/VdrxIFzTQ==
+jest-message-util@^29.0.1:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.0.1.tgz#85c4b5b90296c228da158e168eaa5b079f2ab879"
+ integrity sha512-wRMAQt3HrLpxSubdnzOo68QoTfQ+NLXFzU0Heb18ZUzO2S9GgaXNEdQ4rpd0fI9dq2NXkpCk1IUWSqzYKji64A==
dependencies:
+ "@babel/code-frame" "^7.12.13"
+ "@jest/types" "^29.0.1"
+ "@types/stack-utils" "^2.0.0"
chalk "^4.0.0"
- jest-diff "^28.1.0"
- jest-get-type "^28.0.2"
- pretty-format "^28.1.0"
+ graceful-fs "^4.2.9"
+ micromatch "^4.0.4"
+ pretty-format "^29.0.1"
+ slash "^3.0.0"
+ stack-utils "^2.0.3"
-jest-message-util@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-28.1.0.tgz#7e8f0b9049e948e7b94c2a52731166774ba7d0af"
- integrity sha512-RpA8mpaJ/B2HphDMiDlrAZdDytkmwFqgjDZovM21F35lHGeUeCvYmm6W+sbQ0ydaLpg5bFAUuWG1cjqOl8vqrw==
+jest-message-util@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.2.1.tgz#3a51357fbbe0cc34236f17a90d772746cf8d9193"
+ integrity sha512-Dx5nEjw9V8C1/Yj10S/8ivA8F439VS8vTq1L7hEgwHFn9ovSKNpYW/kwNh7UglaEgXO42XxzKJB+2x0nSglFVw==
dependencies:
"@babel/code-frame" "^7.12.13"
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
"@types/stack-utils" "^2.0.0"
chalk "^4.0.0"
graceful-fs "^4.2.9"
micromatch "^4.0.4"
- pretty-format "^28.1.0"
+ pretty-format "^29.2.1"
slash "^3.0.0"
stack-utils "^2.0.3"
-jest-mock@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-28.1.0.tgz#ccc7cc12a9b330b3182db0c651edc90d163ff73e"
- integrity sha512-H7BrhggNn77WhdL7O1apG0Q/iwl0Bdd5E1ydhCJzL3oBLh/UYxAwR3EJLsBZ9XA3ZU4PA3UNw4tQjduBTCTmLw==
+jest-mock@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.2.2.tgz#9045618b3f9d27074bbcf2d55bdca6a5e2e8bca7"
+ integrity sha512-1leySQxNAnivvbcx0sCB37itu8f4OX2S/+gxLAV4Z62shT4r4dTG9tACDywUAEZoLSr36aYUTsVp3WKwWt4PMQ==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
+ jest-util "^29.2.1"
jest-pnp-resolver@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
-jest-regex-util@^28.0.2:
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-28.0.2.tgz#afdc377a3b25fb6e80825adcf76c854e5bf47ead"
- integrity sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==
+jest-regex-util@^29.2.0:
+ version "29.2.0"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.2.0.tgz#82ef3b587e8c303357728d0322d48bbfd2971f7b"
+ integrity sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA==
-jest-resolve-dependencies@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.0.tgz#167becb8bee6e20b5ef4a3a728ec67aef6b0b79b"
- integrity sha512-Ue1VYoSZquPwEvng7Uefw8RmZR+me/1kr30H2jMINjGeHgeO/JgrR6wxj2ofkJ7KSAA11W3cOrhNCbj5Dqqd9g==
+jest-resolve-dependencies@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.2.2.tgz#1f444766f37a25f1490b5137408b6ff746a05d64"
+ integrity sha512-wWOmgbkbIC2NmFsq8Lb+3EkHuW5oZfctffTGvwsA4JcJ1IRk8b2tg+hz44f0lngvRTeHvp3Kyix9ACgudHH9aQ==
dependencies:
- jest-regex-util "^28.0.2"
- jest-snapshot "^28.1.0"
+ jest-regex-util "^29.2.0"
+ jest-snapshot "^29.2.2"
-jest-resolve@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-28.1.0.tgz#b1f32748a6cee7d1779c7ef639c0a87078de3d35"
- integrity sha512-vvfN7+tPNnnhDvISuzD1P+CRVP8cK0FHXRwPAcdDaQv4zgvwvag2n55/h5VjYcM5UJG7L4TwE5tZlzcI0X2Lhw==
+jest-resolve@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.2.2.tgz#ad6436053b0638b41e12bbddde2b66e1397b35b5"
+ integrity sha512-3gaLpiC3kr14rJR3w7vWh0CBX2QAhfpfiQTwrFPvVrcHe5VUBtIXaR004aWE/X9B2CFrITOQAp5gxLONGrk6GA==
dependencies:
chalk "^4.0.0"
graceful-fs "^4.2.9"
- jest-haste-map "^28.1.0"
+ jest-haste-map "^29.2.1"
jest-pnp-resolver "^1.2.2"
- jest-util "^28.1.0"
- jest-validate "^28.1.0"
+ jest-util "^29.2.1"
+ jest-validate "^29.2.2"
resolve "^1.20.0"
resolve.exports "^1.1.0"
slash "^3.0.0"
-jest-runner@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.0.tgz#aefe2a1e618a69baa0b24a50edc54fdd7e728eaa"
- integrity sha512-FBpmuh1HB2dsLklAlRdOxNTTHKFR6G1Qmd80pVDvwbZXTriqjWqjei5DKFC1UlM732KjYcE6yuCdiF0WUCOS2w==
+jest-runner@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.2.2.tgz#6b5302ed15eba8bf05e6b14d40f1e8d469564da3"
+ integrity sha512-1CpUxXDrbsfy9Hr9/1zCUUhT813kGGK//58HeIw/t8fa/DmkecEwZSWlb1N/xDKXg3uCFHQp1GCvlSClfImMxg==
dependencies:
- "@jest/console" "^28.1.0"
- "@jest/environment" "^28.1.0"
- "@jest/test-result" "^28.1.0"
- "@jest/transform" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/console" "^29.2.1"
+ "@jest/environment" "^29.2.2"
+ "@jest/test-result" "^29.2.1"
+ "@jest/transform" "^29.2.2"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
chalk "^4.0.0"
- emittery "^0.10.2"
+ emittery "^0.13.1"
graceful-fs "^4.2.9"
- jest-docblock "^28.0.2"
- jest-environment-node "^28.1.0"
- jest-haste-map "^28.1.0"
- jest-leak-detector "^28.1.0"
- jest-message-util "^28.1.0"
- jest-resolve "^28.1.0"
- jest-runtime "^28.1.0"
- jest-util "^28.1.0"
- jest-watcher "^28.1.0"
- jest-worker "^28.1.0"
+ jest-docblock "^29.2.0"
+ jest-environment-node "^29.2.2"
+ jest-haste-map "^29.2.1"
+ jest-leak-detector "^29.2.1"
+ jest-message-util "^29.2.1"
+ jest-resolve "^29.2.2"
+ jest-runtime "^29.2.2"
+ jest-util "^29.2.1"
+ jest-watcher "^29.2.2"
+ jest-worker "^29.2.1"
+ p-limit "^3.1.0"
source-map-support "0.5.13"
- throat "^6.0.1"
-
-jest-runtime@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.0.tgz#4847dcb2a4eb4b0f9eaf41306897e51fb1665631"
- integrity sha512-wNYDiwhdH/TV3agaIyVF0lsJ33MhyujOe+lNTUiolqKt8pchy1Hq4+tDMGbtD5P/oNLA3zYrpx73T9dMTOCAcg==
- dependencies:
- "@jest/environment" "^28.1.0"
- "@jest/fake-timers" "^28.1.0"
- "@jest/globals" "^28.1.0"
- "@jest/source-map" "^28.0.2"
- "@jest/test-result" "^28.1.0"
- "@jest/transform" "^28.1.0"
- "@jest/types" "^28.1.0"
+
+jest-runtime@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.2.2.tgz#4068ee82423769a481460efd21d45a8efaa5c179"
+ integrity sha512-TpR1V6zRdLynckKDIQaY41od4o0xWL+KOPUCZvJK2bu5P1UXhjobt5nJ2ICNeIxgyj9NGkO0aWgDqYPVhDNKjA==
+ dependencies:
+ "@jest/environment" "^29.2.2"
+ "@jest/fake-timers" "^29.2.2"
+ "@jest/globals" "^29.2.2"
+ "@jest/source-map" "^29.2.0"
+ "@jest/test-result" "^29.2.1"
+ "@jest/transform" "^29.2.2"
+ "@jest/types" "^29.2.1"
+ "@types/node" "*"
chalk "^4.0.0"
cjs-module-lexer "^1.0.0"
collect-v8-coverage "^1.0.0"
- execa "^5.0.0"
glob "^7.1.3"
graceful-fs "^4.2.9"
- jest-haste-map "^28.1.0"
- jest-message-util "^28.1.0"
- jest-mock "^28.1.0"
- jest-regex-util "^28.0.2"
- jest-resolve "^28.1.0"
- jest-snapshot "^28.1.0"
- jest-util "^28.1.0"
+ jest-haste-map "^29.2.1"
+ jest-message-util "^29.2.1"
+ jest-mock "^29.2.2"
+ jest-regex-util "^29.2.0"
+ jest-resolve "^29.2.2"
+ jest-snapshot "^29.2.2"
+ jest-util "^29.2.1"
slash "^3.0.0"
strip-bom "^4.0.0"
-jest-snapshot@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.0.tgz#4b74fa8816707dd10fe9d551c2c258e5a67b53b6"
- integrity sha512-ex49M2ZrZsUyQLpLGxQtDbahvgBjlLPgklkqGM0hq/F7W/f8DyqZxVHjdy19QKBm4O93eDp+H5S23EiTbbUmHw==
+jest-snapshot@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.2.2.tgz#1016ce60297b77382386bad561107174604690c2"
+ integrity sha512-GfKJrpZ5SMqhli3NJ+mOspDqtZfJBryGA8RIBxF+G+WbDoC7HCqKaeAss4Z/Sab6bAW11ffasx8/vGsj83jyjA==
dependencies:
"@babel/core" "^7.11.6"
"@babel/generator" "^7.7.2"
+ "@babel/plugin-syntax-jsx" "^7.7.2"
"@babel/plugin-syntax-typescript" "^7.7.2"
"@babel/traverse" "^7.7.2"
"@babel/types" "^7.3.3"
- "@jest/expect-utils" "^28.1.0"
- "@jest/transform" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/expect-utils" "^29.2.2"
+ "@jest/transform" "^29.2.2"
+ "@jest/types" "^29.2.1"
"@types/babel__traverse" "^7.0.6"
"@types/prettier" "^2.1.5"
babel-preset-current-node-syntax "^1.0.0"
chalk "^4.0.0"
- expect "^28.1.0"
+ expect "^29.2.2"
graceful-fs "^4.2.9"
- jest-diff "^28.1.0"
- jest-get-type "^28.0.2"
- jest-haste-map "^28.1.0"
- jest-matcher-utils "^28.1.0"
- jest-message-util "^28.1.0"
- jest-util "^28.1.0"
+ jest-diff "^29.2.1"
+ jest-get-type "^29.2.0"
+ jest-haste-map "^29.2.1"
+ jest-matcher-utils "^29.2.2"
+ jest-message-util "^29.2.1"
+ jest-util "^29.2.1"
natural-compare "^1.4.0"
- pretty-format "^28.1.0"
+ pretty-format "^29.2.1"
semver "^7.3.5"
-jest-util@^28.0.0:
- version "28.0.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-28.0.0.tgz#c4c24f04e6d89209265198bd9fffe65cca1d1058"
- integrity sha512-wSZjUR74ZR076RfyWdZ0tI3+U87QmK+RCB5igUKRUhinclf4O9om6UNBy0u9YfT6shKhno3l/eiQVmRp/AEfeA==
+jest-util@^29.0.0:
+ version "29.0.3"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.0.3.tgz#06d1d77f9a1bea380f121897d78695902959fbc0"
+ integrity sha512-Q0xaG3YRG8QiTC4R6fHjHQPaPpz9pJBEi0AeOE4mQh/FuWOijFjGXMMOfQEaU9i3z76cNR7FobZZUQnL6IyfdQ==
+ dependencies:
+ "@jest/types" "^29.0.3"
+ "@types/node" "*"
+ chalk "^4.0.0"
+ ci-info "^3.2.0"
+ graceful-fs "^4.2.9"
+ picomatch "^2.2.3"
+
+jest-util@^29.0.1:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.0.1.tgz#f854a4a8877c7817316c4afbc2a851ceb2e71598"
+ integrity sha512-GIWkgNfkeA9d84rORDHPGGTFBrRD13A38QVSKE0bVrGSnoR1KDn8Kqz+0yI5kezMgbT/7zrWaruWP1Kbghlb2A==
dependencies:
- "@jest/types" "^28.0.0"
+ "@jest/types" "^29.0.1"
"@types/node" "*"
chalk "^4.0.0"
ci-info "^3.2.0"
graceful-fs "^4.2.9"
picomatch "^2.2.3"
-jest-util@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-28.1.0.tgz#d54eb83ad77e1dd441408738c5a5043642823be5"
- integrity sha512-qYdCKD77k4Hwkose2YBEqQk7PzUf/NSE+rutzceduFveQREeH6b+89Dc9+wjX9dAwHcgdx4yedGA3FQlU/qCTA==
+jest-util@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.2.1.tgz#f26872ba0dc8cbefaba32c34f98935f6cf5fc747"
+ integrity sha512-P5VWDj25r7kj7kl4pN2rG/RN2c1TLfYYYZYULnS/35nFDjBai+hBeo3MDrYZS7p6IoY3YHZnt2vq4L6mKnLk0g==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
chalk "^4.0.0"
ci-info "^3.2.0"
graceful-fs "^4.2.9"
picomatch "^2.2.3"
-jest-validate@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-28.1.0.tgz#8a6821f48432aba9f830c26e28226ad77b9a0e18"
- integrity sha512-Lly7CJYih3vQBfjLeANGgBSBJ7pEa18cxpQfQEq2go2xyEzehnHfQTjoUia8xUv4x4J80XKFIDwJJThXtRFQXQ==
+jest-validate@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.2.2.tgz#e43ce1931292dfc052562a11bc681af3805eadce"
+ integrity sha512-eJXATaKaSnOuxNfs8CLHgdABFgUrd0TtWS8QckiJ4L/QVDF4KVbZFBBOwCBZHOS0Rc5fOxqngXeGXE3nGQkpQA==
dependencies:
- "@jest/types" "^28.1.0"
+ "@jest/types" "^29.2.1"
camelcase "^6.2.0"
chalk "^4.0.0"
- jest-get-type "^28.0.2"
+ jest-get-type "^29.2.0"
leven "^3.1.0"
- pretty-format "^28.1.0"
+ pretty-format "^29.2.1"
-jest-watcher@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-28.1.0.tgz#aaa7b4164a4e77eeb5f7d7b25ede5e7b4e9c9aaf"
- integrity sha512-tNHMtfLE8Njcr2IRS+5rXYA4BhU90gAOwI9frTGOqd+jX0P/Au/JfRSNqsf5nUTcWdbVYuLxS1KjnzILSoR5hA==
+jest-watcher@^29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.2.2.tgz#7093d4ea8177e0a0da87681a9e7b09a258b9daf7"
+ integrity sha512-j2otfqh7mOvMgN2WlJ0n7gIx9XCMWntheYGlBK7+5g3b1Su13/UAK7pdKGyd4kDlrLwtH2QPvRv5oNIxWvsJ1w==
dependencies:
- "@jest/test-result" "^28.1.0"
- "@jest/types" "^28.1.0"
+ "@jest/test-result" "^29.2.1"
+ "@jest/types" "^29.2.1"
"@types/node" "*"
ansi-escapes "^4.2.1"
chalk "^4.0.0"
- emittery "^0.10.2"
- jest-util "^28.1.0"
+ emittery "^0.13.1"
+ jest-util "^29.2.1"
string-length "^4.0.1"
-jest-worker@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-28.1.0.tgz#ced54757a035e87591e1208253a6e3aac1a855e5"
- integrity sha512-ZHwM6mNwaWBR52Snff8ZvsCTqQsvhCxP/bT1I6T6DAnb6ygkshsyLQIMxFwHpYxht0HOoqt23JlC01viI7T03A==
+jest-worker@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.2.1.tgz#8ba68255438252e1674f990f0180c54dfa26a3b1"
+ integrity sha512-ROHTZ+oj7sBrgtv46zZ84uWky71AoYi0vEV9CdEtc1FQunsoAGe5HbQmW76nI5QWdvECVPrSi1MCVUmizSavMg==
dependencies:
"@types/node" "*"
+ jest-util "^29.2.1"
merge-stream "^2.0.0"
supports-color "^8.0.0"
-jest@28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/jest/-/jest-28.1.0.tgz#f420e41c8f2395b9a30445a97189ebb57593d831"
- integrity sha512-TZR+tHxopPhzw3c3560IJXZWLNHgpcz1Zh0w5A65vynLGNcg/5pZ+VildAd7+XGOu6jd58XMY/HNn0IkZIXVXg==
+jest@29.2.2:
+ version "29.2.2"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-29.2.2.tgz#24da83cbbce514718acd698926b7679109630476"
+ integrity sha512-r+0zCN9kUqoON6IjDdjbrsWobXM/09Nd45kIPRD8kloaRh1z5ZCMdVsgLXGxmlL7UpAJsvCYOQNO+NjvG/gqiQ==
dependencies:
- "@jest/core" "^28.1.0"
+ "@jest/core" "^29.2.2"
+ "@jest/types" "^29.2.1"
import-local "^3.0.2"
- jest-cli "^28.1.0"
+ jest-cli "^29.2.2"
+
+js-levenshtein@^1.1.6:
+ version "1.1.6"
+ resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d"
+ integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==
+
+js-sdsl@^4.1.4:
+ version "4.1.4"
+ resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.1.4.tgz#78793c90f80e8430b7d8dc94515b6c77d98a26a6"
+ integrity sha512-Y2/yD55y5jteOAmY50JbUZYwk3CP3wnLPEZnlR1w9oKhITrBEtAxwuWKebFf8hMrPMgbYwFoWK/lH2sBkErELw==
js-tokens@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-js-yaml@^3.13.1:
+js-yaml@4.1.0, js-yaml@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
+ integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
+ dependencies:
+ argparse "^2.0.1"
+
+js-yaml@^3.10.0, js-yaml@^3.13.1:
version "3.14.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
@@ -7076,23 +7596,11 @@ js-yaml@^3.13.1:
argparse "^1.0.7"
esprima "^4.0.0"
-js-yaml@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
- integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
- dependencies:
- argparse "^2.0.1"
-
jsesc@^2.5.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
-json-buffer@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
- integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
-
json-buffer@3.0.1, json-buffer@~3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
@@ -7157,6 +7665,11 @@ json5@^2.2.1:
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
+jsonc-parser@3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76"
+ integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==
+
jsonfile@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
@@ -7188,13 +7701,6 @@ just-diff@^5.0.1:
resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-5.0.2.tgz#68854c94280c37d28cb266d8f29bdd2cd29f003e"
integrity sha512-uGd6F+eIZ4T95EinP8ubINGkbEy3jrgBym+6LjW+ja1UG1WQIcEcQ6FLeyXtVJZglk+bj7fvEn+Cu2LBxkgiYQ==
-keyv@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9"
- integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==
- dependencies:
- json-buffer "3.0.0"
-
keyv@^4.0.0:
version "4.2.9"
resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.2.9.tgz#b8f25d4968b583ed7f07fceadab646d4baadad6b"
@@ -7203,6 +7709,13 @@ keyv@^4.0.0:
compress-brotli "^1.3.8"
json-buffer "3.0.1"
+keyv@^4.5.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.0.tgz#dbce9ade79610b6e641a9a65f2f6499ba06b9bc6"
+ integrity sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==
+ dependencies:
+ json-buffer "3.0.1"
+
kind-of@^6.0.2, kind-of@^6.0.3:
version "6.0.3"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
@@ -7213,12 +7726,12 @@ kleur@^3.0.3:
resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
-latest-version@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face"
- integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==
+latest-version@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da"
+ integrity sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==
dependencies:
- package-json "^6.3.0"
+ package-json "^8.1.0"
lerna-changelog@2.2.0:
version "2.2.0"
@@ -7234,29 +7747,34 @@ lerna-changelog@2.2.0:
progress "^2.0.0"
yargs "^17.1.0"
-lerna@5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/lerna/-/lerna-5.0.0.tgz#077e35d41fcead5ea223af1862dc25475e1aaf2a"
- integrity sha512-dUYmJ7H9k/xHtwKpQWLTNUa1jnFUiW4o4K2LFkRchlIijoIUT4yK/RprIxNvYCrLrEaOdZryvY5UZvSHI2tBxA==
- dependencies:
- "@lerna/add" "5.0.0"
- "@lerna/bootstrap" "5.0.0"
- "@lerna/changed" "5.0.0"
- "@lerna/clean" "5.0.0"
- "@lerna/cli" "5.0.0"
- "@lerna/create" "5.0.0"
- "@lerna/diff" "5.0.0"
- "@lerna/exec" "5.0.0"
- "@lerna/import" "5.0.0"
- "@lerna/info" "5.0.0"
- "@lerna/init" "5.0.0"
- "@lerna/link" "5.0.0"
- "@lerna/list" "5.0.0"
- "@lerna/publish" "5.0.0"
- "@lerna/run" "5.0.0"
- "@lerna/version" "5.0.0"
+lerna@6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/lerna/-/lerna-6.0.1.tgz#7b14f05d1e17dc628478d33f225a579a6088d317"
+ integrity sha512-aNodtj1jyuEqzYmkYh+vTfRuzLkG3RZkvYxFCuLeXXzIYD5pjMHtf+1q4m03SPsZt+cElhhwkgjdg6GjihraBw==
+ dependencies:
+ "@lerna/add" "6.0.1"
+ "@lerna/bootstrap" "6.0.1"
+ "@lerna/changed" "6.0.1"
+ "@lerna/clean" "6.0.1"
+ "@lerna/cli" "6.0.1"
+ "@lerna/command" "6.0.1"
+ "@lerna/create" "6.0.1"
+ "@lerna/diff" "6.0.1"
+ "@lerna/exec" "6.0.1"
+ "@lerna/import" "6.0.1"
+ "@lerna/info" "6.0.1"
+ "@lerna/init" "6.0.1"
+ "@lerna/link" "6.0.1"
+ "@lerna/list" "6.0.1"
+ "@lerna/publish" "6.0.1"
+ "@lerna/run" "6.0.1"
+ "@lerna/version" "6.0.1"
+ "@nrwl/devkit" ">=14.8.6 < 16"
import-local "^3.0.2"
- npmlog "^4.1.2"
+ inquirer "^8.2.4"
+ npmlog "^6.0.2"
+ nx ">=14.8.6 < 16"
+ typescript "^3 || ^4"
leven@^3.1.0:
version "3.1.0"
@@ -7279,26 +7797,26 @@ levn@~0.3.0:
prelude-ls "~1.1.2"
type-check "~0.3.2"
-libnpmaccess@^4.0.1:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec"
- integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ==
+libnpmaccess@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-6.0.3.tgz#473cc3e4aadb2bc713419d92e45d23b070d8cded"
+ integrity sha512-4tkfUZprwvih2VUZYMozL7EMKgQ5q9VW2NtRyxWtQWlkLTAWHRklcAvBN49CVqEkhUw7vTX2fNgB5LzgUucgYg==
dependencies:
aproba "^2.0.0"
minipass "^3.1.1"
- npm-package-arg "^8.1.2"
- npm-registry-fetch "^11.0.0"
+ npm-package-arg "^9.0.1"
+ npm-registry-fetch "^13.0.0"
-libnpmpublish@^4.0.0:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794"
- integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw==
+libnpmpublish@^6.0.4:
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-6.0.4.tgz#adb41ec6b0c307d6f603746a4d929dcefb8f1a0b"
+ integrity sha512-lvAEYW8mB8QblL6Q/PI/wMzKNvIrF7Kpujf/4fGS/32a2i3jzUXi04TNyIBcK6dQJ34IgywfaKGh+Jq4HYPFmg==
dependencies:
- normalize-package-data "^3.0.2"
- npm-package-arg "^8.1.2"
- npm-registry-fetch "^11.0.0"
- semver "^7.1.3"
- ssri "^8.0.1"
+ normalize-package-data "^4.0.0"
+ npm-package-arg "^9.0.1"
+ npm-registry-fetch "^13.0.0"
+ semver "^7.3.7"
+ ssri "^9.0.0"
libphonenumber-js@^1.9.43:
version "1.9.44"
@@ -7325,6 +7843,15 @@ light-my-request@^4.2.0:
fastify-warning "^0.2.0"
set-cookie-parser "^2.4.1"
+light-my-request@^5.6.1:
+ version "5.6.1"
+ resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-5.6.1.tgz#cff5c75d8cb35a354433d75406fea74a2f8bcdb1"
+ integrity sha512-sbJnC1UBRivi9L1kICr3CESb82pNiPNB3TvtdIrZZqW0Qh8uDXvoywMmWKZlihDcmw952CMICCzM+54LDf+E+g==
+ dependencies:
+ cookie "^0.5.0"
+ process-warning "^2.0.0"
+ set-cookie-parser "^2.4.1"
+
lilconfig@2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25"
@@ -7335,13 +7862,13 @@ lines-and-columns@^1.1.6:
resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00"
integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=
-lint-staged@13.0.0:
- version "13.0.0"
- resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa"
- integrity sha512-vWban5utFt78VZohbosUxNIa46KKJ+KOQTDWTQ8oSl1DLEEVl9zhUtaQbiiydAmx+h2wKJK2d0+iMaRmknuWRQ==
+lint-staged@13.0.3:
+ version "13.0.3"
+ resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.3.tgz#d7cdf03a3830b327a2b63c6aec953d71d9dc48c6"
+ integrity sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==
dependencies:
cli-truncate "^3.1.0"
- colorette "^2.0.16"
+ colorette "^2.0.17"
commander "^9.3.0"
debug "^4.3.4"
execa "^6.1.0"
@@ -7350,7 +7877,7 @@ lint-staged@13.0.0:
micromatch "^4.0.5"
normalize-path "^3.0.0"
object-inspect "^1.12.2"
- pidtree "^0.5.0"
+ pidtree "^0.6.0"
string-argv "^0.3.1"
yaml "^2.1.1"
@@ -7410,11 +7937,6 @@ locate-path@^6.0.0:
dependencies:
p-locate "^5.0.0"
-lodash._reinterpolate@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
- integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
-
lodash.ismatch@^4.4.0:
version "4.4.0"
resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37"
@@ -7445,27 +7967,12 @@ lodash.sortby@^4.7.0:
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=
-lodash.template@^4.5.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab"
- integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==
- dependencies:
- lodash._reinterpolate "^3.0.0"
- lodash.templatesettings "^4.0.0"
-
-lodash.templatesettings@^4.0.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33"
- integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==
- dependencies:
- lodash._reinterpolate "^3.0.0"
-
lodash.xorby@^4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/lodash.xorby/-/lodash.xorby-4.7.0.tgz#9c19a6f9f063a6eb53dd03c1b6871799801463d7"
integrity sha1-nBmm+fBjputT3QPBtocXmYAUY9c=
-lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.7.0:
+lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -7506,11 +8013,6 @@ long@^4.0.0:
resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28"
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
-lowercase-keys@^1.0.0, lowercase-keys@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
- integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
-
lowercase-keys@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
@@ -7535,11 +8037,16 @@ lru-cache@^6.0.0:
dependencies:
yallist "^4.0.0"
-lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1:
+lru-cache@^7.10.1, lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1:
version "7.10.1"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.10.1.tgz#db577f42a94c168f676b638d15da8fb073448cab"
integrity sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A==
+lru-cache@^7.13.1:
+ version "7.14.0"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.14.0.tgz#21be64954a4680e303a09e9468f880b98a0b3c7f"
+ integrity sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==
+
macos-release@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-3.0.1.tgz#7d2a1329a616297db4a57f3d3ba8fa07a7caadd6"
@@ -7587,28 +8094,7 @@ make-fetch-happen@^10.0.3, make-fetch-happen@^10.0.6, make-fetch-happen@^10.1.2:
socks-proxy-agent "^6.1.1"
ssri "^9.0.0"
-make-fetch-happen@^8.0.9:
- version "8.0.14"
- resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222"
- integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ==
- dependencies:
- agentkeepalive "^4.1.3"
- cacache "^15.0.5"
- http-cache-semantics "^4.1.0"
- http-proxy-agent "^4.0.1"
- https-proxy-agent "^5.0.0"
- is-lambda "^1.0.1"
- lru-cache "^6.0.0"
- minipass "^3.1.3"
- minipass-collect "^1.0.2"
- minipass-fetch "^1.3.2"
- minipass-flush "^1.0.5"
- minipass-pipeline "^1.2.4"
- promise-retry "^2.0.1"
- socks-proxy-agent "^5.0.0"
- ssri "^8.0.0"
-
-make-fetch-happen@^9.0.0, make-fetch-happen@^9.0.1:
+make-fetch-happen@^9.0.0:
version "9.1.0"
resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968"
integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==
@@ -7669,26 +8155,26 @@ meow@^8.0.0:
type-fest "^0.18.0"
yargs-parser "^20.2.3"
-mercurius-integration-testing@4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/mercurius-integration-testing/-/mercurius-integration-testing-4.0.0.tgz#8ba8d0dbbbc052340106f3bd4c233836fecf232d"
- integrity sha512-iYUQZN2K12Rf6Qfk/iMO2YugTEnBmrf9H2aiX21HPpsd9NWNvK3o5jLiWsAp/1+rFIX73tknX+TuRMdO1texyg==
+mercurius-integration-testing@6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/mercurius-integration-testing/-/mercurius-integration-testing-6.0.1.tgz#758d4447fff27a0061c7503989693bf40de7a3de"
+ integrity sha512-YBjsR0KtjtnlGIuyOpg40PD57eq9XKSSsyisrsGUAY2Ql4nY6nP8oM3JN2zjk7j8zYlZRnIiZKovsTOddqXZdA==
dependencies:
"@graphql-typed-document-node/core" "^3.1.1"
- cookie "^0.4.2"
- ws "^8.4.2"
+ cookie "^0.5.0"
+ ws "^8.9.0"
-mercurius@8.12.2:
- version "8.12.2"
- resolved "https://registry.yarnpkg.com/mercurius/-/mercurius-8.12.2.tgz#78a94c764d987f9efb9ade43ff4c79891131fe91"
- integrity sha512-3bLLjGapSsYStSDNgcGOkz2biSzHIHVCMi7ecGBVXLS8uBGCb1dlruYS83rq74AhOLdpWMwWReZ6jqyuc8SZNw==
+mercurius@8.13.1:
+ version "8.13.1"
+ resolved "https://registry.yarnpkg.com/mercurius/-/mercurius-8.13.1.tgz#90d906b133ba3c4325f78d15605dbc4e0055dcb1"
+ integrity sha512-Z9oZrOoqRqelETySQZjCV/nPMdscRY5zbcvEMV8Ze63TPvJocreJL7Jam1kWtYnjmyOcyH2DPxdLRobZJf0Xjw==
dependencies:
+ "@fastify/error" "^2.0.0"
+ "@fastify/static" "^5.0.0"
+ "@fastify/websocket" "^5.0.0"
"@types/isomorphic-form-data" "^2.0.0"
events.on "^1.0.1"
- fastify-error "^0.3.1"
fastify-plugin "^3.0.0"
- fastify-static "^4.2.2"
- fastify-websocket "^4.0.0"
graphql "^15.5.1"
graphql-jit "^0.7.0"
mqemitter "^4.4.1"
@@ -7788,7 +8274,7 @@ mime@1.6.0:
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
-mime@^2.5.0:
+mime@2.6.0:
version "2.6.0"
resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
@@ -7803,7 +8289,7 @@ mimic-fn@^4.0.0:
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
-mimic-response@^1.0.0, mimic-response@^1.0.1:
+mimic-response@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
@@ -7813,11 +8299,23 @@ mimic-response@^3.1.0:
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
+mimic-response@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f"
+ integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==
+
min-indent@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
+minimatch@3.0.5:
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3"
+ integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==
+ dependencies:
+ brace-expansion "^1.1.7"
+
minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
@@ -7839,6 +8337,13 @@ minimatch@^5.0.1:
dependencies:
brace-expansion "^2.0.1"
+minimatch@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7"
+ integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==
+ dependencies:
+ brace-expansion "^2.0.1"
+
minimist-options@4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619"
@@ -7860,7 +8365,7 @@ minipass-collect@^1.0.2:
dependencies:
minipass "^3.0.0"
-minipass-fetch@^1.3.0, minipass-fetch@^1.3.2:
+minipass-fetch@^1.3.2:
version "1.4.1"
resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6"
integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==
@@ -7987,17 +8492,16 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-multer@1.4.4:
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4.tgz#e2bc6cac0df57a8832b858d7418ccaa8ebaf7d8c"
- integrity sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw==
+multer@1.4.4-lts.1:
+ version "1.4.4-lts.1"
+ resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4-lts.1.tgz#24100f701a4611211cfae94ae16ea39bb314e04d"
+ integrity sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg==
dependencies:
append-field "^1.0.0"
- busboy "^0.2.11"
+ busboy "^1.0.0"
concat-stream "^1.5.2"
mkdirp "^0.5.4"
object-assign "^4.1.1"
- on-finished "^2.3.0"
type-is "^1.6.4"
xtend "^4.0.0"
@@ -8058,6 +8562,21 @@ new-github-release-url@2.0.0:
dependencies:
type-fest "^2.5.1"
+node-abort-controller@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.0.1.tgz#f91fa50b1dee3f909afabb7e261b1e1d6b0cb74e"
+ integrity sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==
+
+node-addon-api@^3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161"
+ integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==
+
+node-domexception@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"
+ integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==
+
node-fetch@*:
version "3.0.0"
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.0.0.tgz#79da7146a520036f2c5f644e4a26095f17e411ea"
@@ -8066,6 +8585,15 @@ node-fetch@*:
data-uri-to-buffer "^3.0.1"
fetch-blob "^3.1.2"
+node-fetch@3.2.10:
+ version "3.2.10"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.10.tgz#e8347f94b54ae18b57c9c049ef641cef398a85c8"
+ integrity sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==
+ dependencies:
+ data-uri-to-buffer "^4.0.0"
+ fetch-blob "^3.1.4"
+ formdata-polyfill "^4.0.10"
+
node-fetch@^2.6.1, node-fetch@^2.6.7:
version "2.6.7"
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"
@@ -8073,6 +8601,11 @@ node-fetch@^2.6.1, node-fetch@^2.6.7:
dependencies:
whatwg-url "^5.0.0"
+node-gyp-build@^4.3.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40"
+ integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==
+
node-gyp@^9.0.0:
version "9.0.0"
resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-9.0.0.tgz#e1da2067427f3eb5bb56820cb62bc6b1e4bd2089"
@@ -8116,7 +8649,7 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.5.0:
semver "2 || 3 || 4 || 5"
validate-npm-package-license "^3.0.1"
-normalize-package-data@^3.0.0, normalize-package-data@^3.0.2:
+normalize-package-data@^3.0.0:
version "3.0.3"
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e"
integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==
@@ -8141,16 +8674,16 @@ normalize-path@3.0.0, normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-normalize-url@^4.1.0:
- version "4.5.1"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a"
- integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==
-
-normalize-url@^6.0.1, normalize-url@^6.1.0:
+normalize-url@^6.0.1:
version "6.1.0"
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
+normalize-url@^7.1.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-7.2.0.tgz#5317f78cff95f5fa1e76cc0b5e33245c43781e11"
+ integrity sha512-uhXOdZry0L6M2UIo9BTt7FdpBDiAGN/7oItedQwPKh8jh31ZlvC8U9Xl/EJ3aijDHaywXTW3QbZ6LuCocur1YA==
+
npm-bundled@^1.1.1, npm-bundled@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1"
@@ -8170,13 +8703,13 @@ npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1:
resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2"
integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==
-npm-package-arg@^8.0.0, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5:
- version "8.1.5"
- resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44"
- integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==
+npm-package-arg@8.1.1:
+ version "8.1.1"
+ resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.1.tgz#00ebf16ac395c63318e67ce66780a06db6df1b04"
+ integrity sha512-CsP95FhWQDwNqiYS+Q0mZ7FAEDytDZAkNxQqea6IaAFJTAY9Lhhqyl0irU/6PMc7BGfUmnsbHcqxJD7XuVM/rg==
dependencies:
- hosted-git-info "^4.0.1"
- semver "^7.3.4"
+ hosted-git-info "^3.0.6"
+ semver "^7.0.0"
validate-npm-package-name "^3.0.0"
npm-package-arg@^9.0.0, npm-package-arg@^9.0.1:
@@ -8188,16 +8721,6 @@ npm-package-arg@^9.0.0, npm-package-arg@^9.0.1:
semver "^7.3.5"
validate-npm-package-name "^4.0.0"
-npm-packlist@^2.1.4:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8"
- integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg==
- dependencies:
- glob "^7.1.6"
- ignore-walk "^3.0.3"
- npm-bundled "^1.1.1"
- npm-normalize-package-bin "^1.0.1"
-
npm-packlist@^5.0.0:
version "5.0.4"
resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-5.0.4.tgz#b8a0635964dbf72baeeb7e69ec32e822f1c26159"
@@ -8208,27 +8731,25 @@ npm-packlist@^5.0.0:
npm-bundled "^1.1.2"
npm-normalize-package-bin "^1.0.1"
+npm-packlist@^5.1.0, npm-packlist@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-5.1.1.tgz#79bcaf22a26b6c30aa4dd66b976d69cc286800e0"
+ integrity sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==
+ dependencies:
+ glob "^8.0.1"
+ ignore-walk "^5.0.1"
+ npm-bundled "^1.1.2"
+ npm-normalize-package-bin "^1.0.1"
+
npm-pick-manifest@^7.0.0:
version "7.0.1"
resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz#76dda30a7cd6b99be822217a935c2f5eacdaca4c"
integrity sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==
dependencies:
- npm-install-checks "^5.0.0"
- npm-normalize-package-bin "^1.0.1"
- npm-package-arg "^9.0.0"
- semver "^7.3.5"
-
-npm-registry-fetch@^11.0.0:
- version "11.0.0"
- resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76"
- integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA==
- dependencies:
- make-fetch-happen "^9.0.1"
- minipass "^3.1.3"
- minipass-fetch "^1.3.0"
- minipass-json-stream "^1.0.1"
- minizlib "^2.0.0"
- npm-package-arg "^8.0.0"
+ npm-install-checks "^5.0.0"
+ npm-normalize-package-bin "^1.0.1"
+ npm-package-arg "^9.0.0"
+ semver "^7.3.5"
npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1:
version "13.1.1"
@@ -8243,19 +8764,18 @@ npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1:
npm-package-arg "^9.0.1"
proc-log "^2.0.0"
-npm-registry-fetch@^9.0.0:
- version "9.0.0"
- resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661"
- integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA==
+npm-registry-fetch@^13.3.0:
+ version "13.3.0"
+ resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-13.3.0.tgz#0ce10fa4a699a1e70685ecf41bbfb4150d74231b"
+ integrity sha512-10LJQ/1+VhKrZjIuY9I/+gQTvumqqlgnsCufoXETHAPFTS3+M+Z5CFhZRDHGavmJ6rOye3UvNga88vl8n1r6gg==
dependencies:
- "@npmcli/ci-detect" "^1.0.0"
- lru-cache "^6.0.0"
- make-fetch-happen "^8.0.9"
- minipass "^3.1.3"
- minipass-fetch "^1.3.0"
+ make-fetch-happen "^10.0.6"
+ minipass "^3.1.6"
+ minipass-fetch "^2.0.3"
minipass-json-stream "^1.0.1"
- minizlib "^2.0.0"
- npm-package-arg "^8.0.0"
+ minizlib "^2.1.2"
+ npm-package-arg "^9.0.1"
+ proc-log "^2.0.0"
npm-run-path@^4.0.1:
version "4.0.1"
@@ -8271,16 +8791,6 @@ npm-run-path@^5.1.0:
dependencies:
path-key "^4.0.0"
-npmlog@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
- integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
- dependencies:
- are-we-there-yet "~1.1.2"
- console-control-strings "~1.1.0"
- gauge "~2.7.3"
- set-blocking "~2.0.0"
-
npmlog@^6.0.0, npmlog@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830"
@@ -8291,12 +8801,48 @@ npmlog@^6.0.0, npmlog@^6.0.2:
gauge "^4.0.3"
set-blocking "^2.0.0"
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
- integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
+nx@15.0.0, "nx@>=14.8.6 < 16":
+ version "15.0.0"
+ resolved "https://registry.yarnpkg.com/nx/-/nx-15.0.0.tgz#8f1a291b7393861242b5c0f0d03c6317aed9c182"
+ integrity sha512-uh9Ou5oj7yr6Uyp4QhqW1vIVoanYn1sJM1jzOyoT17GAhhODfS0BtQgUvlmInDuRqP8LMaPg4LXFMby07U1HXg==
+ dependencies:
+ "@nrwl/cli" "15.0.0"
+ "@nrwl/tao" "15.0.0"
+ "@parcel/watcher" "2.0.4"
+ "@yarnpkg/lockfile" "^1.1.0"
+ "@yarnpkg/parsers" "^3.0.0-rc.18"
+ "@zkochan/js-yaml" "0.0.6"
+ axios "^1.0.0"
+ chalk "4.1.0"
+ chokidar "^3.5.1"
+ cli-cursor "3.1.0"
+ cli-spinners "2.6.1"
+ cliui "^7.0.2"
+ dotenv "~10.0.0"
+ enquirer "~2.3.6"
+ fast-glob "3.2.7"
+ figures "3.2.0"
+ flat "^5.0.2"
+ fs-extra "^10.1.0"
+ glob "7.1.4"
+ ignore "^5.0.4"
+ js-yaml "4.1.0"
+ jsonc-parser "3.2.0"
+ minimatch "3.0.5"
+ npm-run-path "^4.0.1"
+ open "^8.4.0"
+ semver "7.3.4"
+ string-width "^4.2.3"
+ strong-log-transformer "^2.1.0"
+ tar-stream "~2.2.0"
+ tmp "~0.2.1"
+ tsconfig-paths "^3.9.0"
+ tslib "^2.3.0"
+ v8-compile-cache "2.3.0"
+ yargs "^17.4.0"
+ yargs-parser "21.0.1"
-object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
+object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
@@ -8306,12 +8852,12 @@ object-hash@3.0.0:
resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9"
integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==
-object-inspect@^1.11.0, object-inspect@^1.9.0:
+object-inspect@^1.11.0:
version "1.11.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1"
integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==
-object-inspect@^1.12.2:
+object-inspect@^1.12.2, object-inspect@^1.9.0:
version "1.12.2"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"
integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==
@@ -8348,6 +8894,11 @@ object.values@^1.1.5:
define-properties "^1.1.3"
es-abstract "^1.19.1"
+on-exit-leak-free@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4"
+ integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w==
+
on-finished@2.4.1:
version "2.4.1"
resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
@@ -8355,7 +8906,7 @@ on-finished@2.4.1:
dependencies:
ee-first "1.1.1"
-on-finished@^2.3.0, on-finished@~2.3.0:
+on-finished@~2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=
@@ -8383,7 +8934,7 @@ onetime@^6.0.0:
dependencies:
mimic-fn "^4.0.0"
-open@8.4.0:
+open@8.4.0, open@^8.4.0:
version "8.4.0"
resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8"
integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==
@@ -8423,10 +8974,10 @@ optionator@^0.9.1:
type-check "^0.4.0"
word-wrap "^1.2.3"
-ora@6.1.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/ora/-/ora-6.1.0.tgz#86aa07058c4e9fb91444412d103b0d7e01aca973"
- integrity sha512-CxEP6845hLK+NHFWZ+LplGO4zfw4QSfxTlqMfvlJ988GoiUeZDMzCvqsZkFHv69sPICmJH1MDxZoQFOKXerAVw==
+ora@6.1.2, ora@^6.1.2:
+ version "6.1.2"
+ resolved "https://registry.yarnpkg.com/ora/-/ora-6.1.2.tgz#7b3c1356b42fd90fb1dad043d5dbe649388a0bf5"
+ integrity sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==
dependencies:
bl "^5.0.0"
chalk "^5.0.0"
@@ -8466,11 +9017,6 @@ os-tmpdir@~1.0.2:
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
-p-cancelable@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
- integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
-
p-cancelable@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050"
@@ -8608,17 +9154,17 @@ pac-resolver@^5.0.0:
ip "^1.1.5"
netmask "^2.0.1"
-package-json@^6.3.0:
- version "6.5.0"
- resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0"
- integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==
+package-json@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/package-json/-/package-json-8.1.0.tgz#2a22806f1ed7c786c8e6ff26cfe20003bf4c6850"
+ integrity sha512-hySwcV8RAWeAfPsXb9/HGSPn8lwDnv6fabH+obUZKX169QknRkRhPxd1yMubpKDskLFATkl3jHpNtVtDPFA0Wg==
dependencies:
- got "^9.6.0"
- registry-auth-token "^4.0.0"
- registry-url "^5.0.0"
- semver "^6.2.0"
+ got "^12.1.0"
+ registry-auth-token "^5.0.1"
+ registry-url "^6.0.0"
+ semver "^7.3.7"
-pacote@^13.0.3, pacote@^13.0.5, pacote@^13.4.1:
+pacote@^13.0.3:
version "13.4.1"
resolved "https://registry.yarnpkg.com/pacote/-/pacote-13.4.1.tgz#b6610bf8903abc075bfffa02a2cedafe81a97293"
integrity sha512-FqlSWlD8n+ejCE17GF/lf0yasztMGFl4UFzYQk5njaK/qPPWfVDWnfQwqmqeXObWLSmIBew+O+CFD24vxkVDjg==
@@ -8645,6 +9191,33 @@ pacote@^13.0.3, pacote@^13.0.5, pacote@^13.4.1:
ssri "^9.0.0"
tar "^6.1.11"
+pacote@^13.6.1:
+ version "13.6.1"
+ resolved "https://registry.yarnpkg.com/pacote/-/pacote-13.6.1.tgz#ac6cbd9032b4c16e5c1e0c60138dfe44e4cc589d"
+ integrity sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==
+ dependencies:
+ "@npmcli/git" "^3.0.0"
+ "@npmcli/installed-package-contents" "^1.0.7"
+ "@npmcli/promise-spawn" "^3.0.0"
+ "@npmcli/run-script" "^4.1.0"
+ cacache "^16.0.0"
+ chownr "^2.0.0"
+ fs-minipass "^2.1.0"
+ infer-owner "^1.0.4"
+ minipass "^3.1.6"
+ mkdirp "^1.0.4"
+ npm-package-arg "^9.0.0"
+ npm-packlist "^5.1.0"
+ npm-pick-manifest "^7.0.0"
+ npm-registry-fetch "^13.0.1"
+ proc-log "^2.0.0"
+ promise-retry "^2.0.1"
+ read-package-json "^5.0.0"
+ read-package-json-fast "^2.0.3"
+ rimraf "^3.0.2"
+ ssri "^9.0.0"
+ tar "^6.1.11"
+
parent-module@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
@@ -8679,25 +9252,19 @@ parse-json@^5.0.0, parse-json@^5.2.0:
json-parse-even-better-errors "^2.3.0"
lines-and-columns "^1.1.6"
-parse-path@^4.0.0:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf"
- integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA==
+parse-path@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b"
+ integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==
dependencies:
- is-ssh "^1.3.0"
- protocols "^1.4.0"
- qs "^6.9.4"
- query-string "^6.13.8"
+ protocols "^2.0.0"
-parse-url@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d"
- integrity sha512-cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw==
+parse-url@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d"
+ integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==
dependencies:
- is-ssh "^1.3.0"
- normalize-url "^6.1.0"
- parse-path "^4.0.0"
- protocols "^1.4.0"
+ parse-path "^7.0.0"
parse5-htmlparser2-tree-adapter@^6.0.0:
version "6.0.1"
@@ -8798,10 +9365,10 @@ picomatch@^2.3.1:
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
-pidtree@^0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1"
- integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==
+pidtree@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c"
+ integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==
pify@^2.3.0:
version "2.3.0"
@@ -8823,11 +9390,24 @@ pify@^5.0.0:
resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f"
integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==
+pino-abstract-transport@v1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3"
+ integrity sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA==
+ dependencies:
+ readable-stream "^4.0.0"
+ split2 "^4.0.0"
+
pino-std-serializers@^3.1.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671"
integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg==
+pino-std-serializers@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.0.0.tgz#4c20928a1bafca122fdc2a7a4a171ca1c5f9c526"
+ integrity sha512-mMMOwSKrmyl+Y12Ri2xhH1lbzQxwwpuru9VjyJpgFIH4asSj88F2csdMwN6+M5g1Ll4rmsYghHLQJw81tgZ7LQ==
+
pino@^6.13.0:
version "6.13.3"
resolved "https://registry.yarnpkg.com/pino/-/pino-6.13.3.tgz#60b93bcda1541f92fb37b3f2be0a25cf1d05b6fe"
@@ -8841,6 +9421,23 @@ pino@^6.13.0:
quick-format-unescaped "^4.0.3"
sonic-boom "^1.0.2"
+pino@^8.5.0:
+ version "8.6.1"
+ resolved "https://registry.yarnpkg.com/pino/-/pino-8.6.1.tgz#3fc43acc79bcd3e871670347854f7359e2612f10"
+ integrity sha512-fi+V2K98eMZjQ/uEHHSiMALNrz7HaFdKNYuyA3ZUrbH0f1e8sPFDmeRGzg7ZH2q4QDxGnJPOswmqlEaTAZeDPA==
+ dependencies:
+ atomic-sleep "^1.0.0"
+ fast-redact "^3.1.1"
+ on-exit-leak-free "^2.1.0"
+ pino-abstract-transport v1.0.0
+ pino-std-serializers "^6.0.0"
+ process-warning "^2.0.0"
+ quick-format-unescaped "^4.0.3"
+ real-require "^0.2.0"
+ safe-stable-stringify "^2.3.1"
+ sonic-boom "^3.1.0"
+ thread-stream "^2.0.0"
+
pirates@^4.0.4:
version "4.0.5"
resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
@@ -8863,11 +9460,6 @@ prelude-ls@~1.1.2:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
-prepend-http@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
- integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=
-
prettier-linter-helpers@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b"
@@ -8875,46 +9467,36 @@ prettier-linter-helpers@^1.0.0:
dependencies:
fast-diff "^1.1.2"
-prettier@2.6.2:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032"
- integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==
-
-pretty-format@^27.0.0:
- version "27.3.1"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5"
- integrity sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA==
- dependencies:
- "@jest/types" "^27.2.5"
- ansi-regex "^5.0.1"
- ansi-styles "^5.0.0"
- react-is "^17.0.1"
+prettier@2.7.1:
+ version "2.7.1"
+ resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64"
+ integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==
-pretty-format@^27.4.6:
- version "27.4.6"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.6.tgz#1b784d2f53c68db31797b2348fa39b49e31846b7"
- integrity sha512-NblstegA1y/RJW2VyML+3LlpFjzx62cUrtBIKIWDXEDkjNeleA7Od7nrzcs/VLQvAeV4CgSYhrN39DRN88Qi/g==
+pretty-format@^28.0.0:
+ version "28.1.1"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.1.tgz#f731530394e0f7fcd95aba6b43c50e02d86b95cb"
+ integrity sha512-wwJbVTGFHeucr5Jw2bQ9P+VYHyLdAqedFLEkdQUVaBF/eiidDwH5OpilINq4mEfhbCjLnirt6HTTDhv1HaTIQw==
dependencies:
+ "@jest/schemas" "^28.0.2"
ansi-regex "^5.0.1"
ansi-styles "^5.0.0"
- react-is "^17.0.1"
+ react-is "^18.0.0"
-pretty-format@^27.5.1:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e"
- integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==
+pretty-format@^29.0.0, pretty-format@^29.0.1:
+ version "29.0.1"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.0.1.tgz#2f8077114cdac92a59b464292972a106410c7ad0"
+ integrity sha512-iTHy3QZMzuL484mSTYbQIM1AHhEQsH8mXWS2/vd2yFBYnG3EBqGiMONo28PlPgrW7P/8s/1ISv+y7WH306l8cw==
dependencies:
- ansi-regex "^5.0.1"
+ "@jest/schemas" "^29.0.0"
ansi-styles "^5.0.0"
- react-is "^17.0.1"
+ react-is "^18.0.0"
-pretty-format@^28.1.0:
- version "28.1.0"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.0.tgz#8f5836c6a0dfdb834730577ec18029052191af55"
- integrity sha512-79Z4wWOYCdvQkEoEuSlBhHJqWeZ8D8YRPiPctJFCtvuaClGpiwiQYSCUOE6IEKUbbFukKOTFIUAXE8N4EQTo1Q==
+pretty-format@^29.2.1:
+ version "29.2.1"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.2.1.tgz#86e7748fe8bbc96a6a4e04fa99172630907a9611"
+ integrity sha512-Y41Sa4aLCtKAXvwuIpTvcFBkyeYp2gdFWzXGA+ZNES3VwURIB165XO/z7CjETwzCCS53MjW/rLMyyqEnTtaOfA==
dependencies:
- "@jest/schemas" "^28.0.2"
- ansi-regex "^5.0.1"
+ "@jest/schemas" "^29.0.0"
ansi-styles "^5.0.0"
react-is "^18.0.0"
@@ -8933,6 +9515,11 @@ process-warning@^1.0.0:
resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616"
integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==
+process-warning@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.0.0.tgz#341dbeaac985b90a04ebcd844d50097c7737b2ee"
+ integrity sha512-+MmoAXoUX+VTHAlwns0h+kFUWFs/3FZy+ZuchkgjyOu3oioLAo2LB5aCfKPh2+P9O18i3m43tUEv3YqttSy0Ww==
+
progress@^2.0.0:
version "2.0.3"
resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
@@ -8993,10 +9580,10 @@ proto-list@~1.2.1:
resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=
-protocols@^1.1.0, protocols@^1.4.0:
- version "1.4.8"
- resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8"
- integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg==
+protocols@^2.0.0, protocols@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86"
+ integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==
proxy-addr@^2.0.7, proxy-addr@~2.0.7:
version "2.0.7"
@@ -9020,7 +9607,7 @@ proxy-agent@5.0.0:
proxy-from-env "^1.0.0"
socks-proxy-agent "^5.0.0"
-proxy-from-env@^1.0.0:
+proxy-from-env@^1.0.0, proxy-from-env@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
@@ -9033,17 +9620,17 @@ pump@^3.0.0:
end-of-stream "^1.1.0"
once "^1.3.1"
-punycode@^2.1.0, punycode@^2.1.1:
+punycode@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
-pupa@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62"
- integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==
+pupa@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/pupa/-/pupa-3.1.0.tgz#f15610274376bbcc70c9a3aa8b505ea23f41c579"
+ integrity sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==
dependencies:
- escape-goat "^2.0.0"
+ escape-goat "^4.0.0"
q@^1.5.1:
version "1.5.1"
@@ -9055,7 +9642,7 @@ qlobber@^5.0.0:
resolved "https://registry.yarnpkg.com/qlobber/-/qlobber-5.0.3.tgz#24728d6ba5382d502c7e09f6860b95a9c71615cd"
integrity sha512-wW4GTZPePyh0RgOsM18oDyOUlXfurVRgoNyJfS+y7VWPyd0GYhQp5T2tycZFZjonH+hngxIfklGJhTP/ghidgQ==
-qs@6.10.3, qs@^6.10.3:
+qs@6.10.3:
version "6.10.3"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e"
integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==
@@ -9072,23 +9659,13 @@ qs@6.9.3:
resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e"
integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==
-qs@^6.9.4:
- version "6.10.1"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a"
- integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==
+qs@^6.11.0:
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
+ integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
dependencies:
side-channel "^1.0.4"
-query-string@^6.13.8:
- version "6.14.1"
- resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a"
- integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw==
- dependencies:
- decode-uri-component "^0.2.0"
- filter-obj "^1.1.0"
- split-on-first "^1.0.0"
- strict-uri-encode "^2.0.0"
-
queue-microtask@^1.1.2, queue-microtask@^1.2.2:
version "1.2.3"
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
@@ -9134,7 +9711,7 @@ raw-body@2.5.1, raw-body@^2.2.0:
iconv-lite "0.4.24"
unpipe "1.0.0"
-rc@^1.2.8:
+rc@1.2.8:
version "1.2.8"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
@@ -9144,21 +9721,11 @@ rc@^1.2.8:
minimist "^1.2.0"
strip-json-comments "~2.0.1"
-react-is@^17.0.1:
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
- integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
-
react-is@^18.0.0:
version "18.0.0"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.0.0.tgz#026f6c4a27dbe33bf4a35655b9e1327c4e55e3f5"
integrity sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw==
-read-cmd-shim@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9"
- integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw==
-
read-cmd-shim@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz#62b8c638225c61e6cc607f8f4b779f3b8238f155"
@@ -9172,27 +9739,7 @@ read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3:
json-parse-even-better-errors "^2.3.0"
npm-normalize-package-bin "^1.0.1"
-read-package-json@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9"
- integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng==
- dependencies:
- glob "^7.1.1"
- json-parse-even-better-errors "^2.3.0"
- normalize-package-data "^3.0.0"
- npm-normalize-package-bin "^1.0.0"
-
-read-package-json@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-4.1.1.tgz#153be72fce801578c1c86b8ef2b21188df1b9eea"
- integrity sha512-P82sbZJ3ldDrWCOSKxJT0r/CXMWR0OR3KRh55SgKo3p91GSIEEC32v3lSHAvO/UcH3/IoL7uqhOFBduAnwdldw==
- dependencies:
- glob "^7.1.1"
- json-parse-even-better-errors "^2.3.0"
- normalize-package-data "^3.0.0"
- npm-normalize-package-bin "^1.0.0"
-
-read-package-json@^5.0.0:
+read-package-json@^5.0.0, read-package-json@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-5.0.1.tgz#1ed685d95ce258954596b13e2e0e76c7d0ab4c26"
integrity sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==
@@ -9238,7 +9785,7 @@ read-pkg@^5.2.0:
parse-json "^5.0.0"
type-fest "^0.6.0"
-read@1, read@~1.0.1:
+read@1, read@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4"
integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=
@@ -9255,7 +9802,7 @@ readable-stream@1.1.x:
isarray "0.0.1"
string_decoder "~0.10.x"
-readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@^3.6.0:
+readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
version "3.6.0"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
@@ -9264,7 +9811,7 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stre
string_decoder "^1.1.1"
util-deprecate "^1.0.1"
-readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@~2.3.6:
+readable-stream@^2.2.2, readable-stream@~2.3.6:
version "2.3.7"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
@@ -9277,6 +9824,13 @@ readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@~2.3.6:
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
+readable-stream@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.0.0.tgz#da7105d03430a28ef4080785a43e6a45d4cdc4d1"
+ integrity sha512-Mf7ilWBP6AV3tF3MjtBrHMH3roso7wIrpgzCwt9ybvqiJQVWIEBMnp/W+S//yvYSsUUi2cJIwD7q7m57l0AqZw==
+ dependencies:
+ abort-controller "^3.0.0"
+
readdir-scoped-modules@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309"
@@ -9294,6 +9848,11 @@ readdirp@~3.6.0:
dependencies:
picomatch "^2.2.1"
+real-require@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78"
+ integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==
+
rechoir@^0.6.2:
version "0.6.2"
resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
@@ -9327,51 +9886,52 @@ regexpp@^3.2.0:
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
-registry-auth-token@^4.0.0:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250"
- integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==
+registry-auth-token@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.0.1.tgz#5e6cd106e6c251135a046650c58476fc03e92833"
+ integrity sha512-UfxVOj8seK1yaIOiieV4FIP01vfBDLsY0H9sQzi9EbbUdJiuuBjJgLa1DpImXMNPnVkBD4eVxTEXcrZA6kfpJA==
dependencies:
- rc "^1.2.8"
+ "@pnpm/npm-conf" "^1.0.4"
-registry-url@^5.0.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009"
- integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==
+registry-url@^6.0.0:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-6.0.1.tgz#056d9343680f2f64400032b1e199faa692286c58"
+ integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==
dependencies:
- rc "^1.2.8"
+ rc "1.2.8"
-release-it@15.0.0:
- version "15.0.0"
- resolved "https://registry.yarnpkg.com/release-it/-/release-it-15.0.0.tgz#82be33b3d483b2832b6a43faf765fdb82af6bc2a"
- integrity sha512-Dnio6p+1O88UdQZmPjdXqq+Nrrn5t0USZyOctTPK5M36kOOfQTdp8V1Wlagz9QYIYr93NwovEZ+f4wK0P/kHbw==
+release-it@15.5.0:
+ version "15.5.0"
+ resolved "https://registry.yarnpkg.com/release-it/-/release-it-15.5.0.tgz#773c247d4fd5a5e5c8801b02bf1e7e9e536bee27"
+ integrity sha512-/pQo/PwEXAWRBgVGLE+3IQ3hUoeiDZMGAo/Egin1envCyLyjzrU7+0P2w4iZ1Xv5OxhC2AcaPaN5eY1ql47cBA==
dependencies:
"@iarna/toml" "2.2.5"
- "@octokit/rest" "18.12.0"
+ "@octokit/rest" "19.0.4"
async-retry "1.3.3"
chalk "5.0.1"
cosmiconfig "7.0.1"
execa "6.1.0"
form-data "4.0.0"
- git-url-parse "11.6.0"
- globby "13.1.1"
- got "12.0.4"
- inquirer "8.2.4"
+ git-url-parse "13.1.0"
+ globby "13.1.2"
+ got "12.5.1"
+ inquirer "9.1.2"
is-ci "3.0.1"
lodash "4.17.21"
mime-types "2.1.35"
new-github-release-url "2.0.0"
+ node-fetch "3.2.10"
open "8.4.0"
- ora "6.1.0"
+ ora "6.1.2"
os-name "5.0.1"
promise.allsettled "1.0.5"
proxy-agent "5.0.0"
semver "7.3.7"
shelljs "0.8.5"
- update-notifier "5.1.0"
+ update-notifier "6.0.2"
url-join "5.0.0"
wildcard-match "5.1.2"
- yargs-parser "21.0.1"
+ yargs-parser "21.1.1"
require-directory@^2.1.1:
version "2.1.1"
@@ -9434,13 +9994,6 @@ resolve@^1.22.0:
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"
-responselike@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
- integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=
- dependencies:
- lowercase-keys "^1.0.0"
-
responselike@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723"
@@ -9448,6 +10001,13 @@ responselike@^2.0.0:
dependencies:
lowercase-keys "^2.0.0"
+responselike@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/responselike/-/responselike-3.0.0.tgz#20decb6c298aff0dbee1c355ca95461d42823626"
+ integrity sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==
+ dependencies:
+ lowercase-keys "^3.0.0"
+
restore-cursor@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
@@ -9508,19 +10068,26 @@ run-parallel@^1.1.9:
dependencies:
queue-microtask "^1.2.2"
-rxjs@7.5.5, rxjs@^7.5.5:
+rxjs@7.5.7:
+ version "7.5.7"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.7.tgz#2ec0d57fdc89ece220d2e702730ae8f1e49def39"
+ integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==
+ dependencies:
+ tslib "^2.1.0"
+
+rxjs@^7.5.5:
version "7.5.5"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f"
integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==
dependencies:
tslib "^2.1.0"
-rxjs@^6.6.0:
- version "6.6.7"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
- integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
+rxjs@^7.5.6:
+ version "7.5.6"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.6.tgz#0446577557862afd6903517ce7cae79ecb9662bc"
+ integrity sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==
dependencies:
- tslib "^1.9.0"
+ tslib "^2.1.0"
safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
@@ -9539,7 +10106,7 @@ safe-regex2@^2.0.0:
dependencies:
ret "~0.2.0"
-safe-stable-stringify@^2.0.0, safe-stable-stringify@^2.3.0:
+safe-stable-stringify@^2.0.0, safe-stable-stringify@^2.3.0, safe-stable-stringify@^2.3.1:
version "2.3.1"
resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.3.1.tgz#ab67cbe1fe7d40603ca641c5e765cb942d04fc73"
integrity sha512-kYBSfT+troD9cDA85VDnHZ1rpHC50O0g1e6WlGHVCz/g+JS+9WKLj+XwFYyR8UbrZN8ll9HUpDAAddY58MGisg==
@@ -9554,12 +10121,17 @@ secure-json-parse@^2.0.0, secure-json-parse@^2.4.0:
resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.4.0.tgz#5aaeaaef85c7a417f76271a4f5b0cc3315ddca85"
integrity sha512-Q5Z/97nbON5t/L/sH6mY2EacfjVGwrCcSi5D3btRO2GZ8pf1K1UN7Z9H5J57hjVU2Qzxr1xO+FmBhOvEkzCMmg==
-semver-diff@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b"
- integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==
+secure-json-parse@^2.5.0:
+ version "2.5.0"
+ resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.5.0.tgz#f929829df2adc7ccfb53703569894d051493a6ac"
+ integrity sha512-ZQruFgZnIWH+WyO9t5rWt4ZEGqCKPwhiw+YbzTwpmT9elgLrLcfuyUiSnwwjUiVy9r4VM3urtbNF1xmEh9IL2w==
+
+semver-diff@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5"
+ integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==
dependencies:
- semver "^6.3.0"
+ semver "^7.3.5"
semver-store@^0.3.0:
version "0.3.0"
@@ -9571,6 +10143,13 @@ semver-store@^0.3.0:
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
+semver@7.3.4:
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97"
+ integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==
+ dependencies:
+ lru-cache "^6.0.0"
+
semver@7.3.7, semver@^7.0.0, semver@^7.3.7:
version "7.3.7"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f"
@@ -9578,18 +10157,25 @@ semver@7.3.7, semver@^7.0.0, semver@^7.3.7:
dependencies:
lru-cache "^6.0.0"
-semver@7.x, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
+semver@7.x, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
version "7.3.5"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
dependencies:
lru-cache "^6.0.0"
-semver@^6.0.0, semver@^6.2.0, semver@^6.3.0:
+semver@^6.0.0, semver@^6.3.0:
version "6.3.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+semver@^7.3.8:
+ version "7.3.8"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798"
+ integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==
+ dependencies:
+ lru-cache "^6.0.0"
+
send@0.18.0:
version "0.18.0"
resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
@@ -9638,7 +10224,7 @@ serve-static@1.15.0:
parseurl "~1.3.3"
send "0.18.0"
-set-blocking@^2.0.0, set-blocking@~2.0.0:
+set-blocking@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
@@ -9703,7 +10289,7 @@ side-channel@^1.0.3, side-channel@^1.0.4:
get-intrinsic "^1.0.2"
object-inspect "^1.9.0"
-signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3:
+signal-exit@^3.0.2, signal-exit@^3.0.3:
version "3.0.5"
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f"
integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==
@@ -9817,6 +10403,13 @@ sonic-boom@^1.0.2:
atomic-sleep "^1.0.0"
flatstr "^1.0.12"
+sonic-boom@^3.1.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.2.0.tgz#ce9f2de7557e68be2e52c8df6d9b052e7d348143"
+ integrity sha512-SbbZ+Kqj/XIunvIAgUZRlqd6CGQYq71tRRbXR92Za8J/R3Yh4Av+TWENiSiEgnlwckYLyP0YZQWVfyNC0dzLaA==
+ dependencies:
+ atomic-sleep "^1.0.0"
+
sort-keys@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
@@ -9875,11 +10468,6 @@ spdx-license-ids@^3.0.0:
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b"
integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==
-split-on-first@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
- integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==
-
split2@^3.0.0:
version "3.2.2"
resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f"
@@ -9887,6 +10475,11 @@ split2@^3.0.0:
dependencies:
readable-stream "^3.0.0"
+split2@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809"
+ integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==
+
split@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9"
@@ -9906,7 +10499,7 @@ ssri@^8.0.0, ssri@^8.0.1:
dependencies:
minipass "^3.1.1"
-ssri@^9.0.0:
+ssri@^9.0.0, ssri@^9.0.1:
version "9.0.1"
resolved "https://registry.yarnpkg.com/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057"
integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==
@@ -9930,15 +10523,10 @@ statuses@2.0.1:
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c"
integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=
-streamsearch@0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a"
- integrity sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=
-
-strict-uri-encode@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
- integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=
+streamsearch@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
+ integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
string-argv@^0.3.1:
version "0.3.1"
@@ -9958,16 +10546,7 @@ string-similarity@^4.0.1:
resolved "https://registry.yarnpkg.com/string-similarity/-/string-similarity-4.0.4.tgz#42d01ab0b34660ea8a018da8f56a3309bb8b2a5b"
integrity sha512-/q/8Q4Bl4ZKAPjj8WerIBJWALKkaPRfrvhfF8k/B23i4nzrlRj2/go1m90In7nG/3XDSbOo0+pu6RvCTM9RGMQ==
-string-width@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
-
-"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
+"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ -9985,6 +10564,15 @@ string-width@^5.0.0:
is-fullwidth-code-point "^4.0.0"
strip-ansi "^7.0.1"
+string-width@^5.0.1, string-width@^5.1.2:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
+ integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
+ dependencies:
+ eastasianwidth "^0.2.0"
+ emoji-regex "^9.2.2"
+ strip-ansi "^7.0.1"
+
string.prototype.trimend@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80"
@@ -10020,13 +10608,6 @@ string_decoder@~1.1.1:
dependencies:
safe-buffer "~5.1.0"
-strip-ansi@^3.0.0, strip-ansi@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
- dependencies:
- ansi-regex "^2.0.0"
-
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
@@ -10098,10 +10679,10 @@ subscriptions-transport-ws@0.11.0:
symbol-observable "^1.0.4"
ws "^5.2.0 || ^6.0.0 || ^7.0.0"
-superagent@^7.1.3:
- version "7.1.3"
- resolved "https://registry.yarnpkg.com/superagent/-/superagent-7.1.3.tgz#783ff8330e7c2dad6ad8f0095edc772999273b6b"
- integrity sha512-WA6et4nAvgBCS73lJvv1D0ssI5uk5Gh+TGN/kNe+B608EtcVs/yzfl+OLXTzDs7tOBDIpvgh/WUs1K2OK1zTeQ==
+superagent@^8.0.3:
+ version "8.0.3"
+ resolved "https://registry.yarnpkg.com/superagent/-/superagent-8.0.3.tgz#15c8ec5611a1f01386994cfeeda5aa138bcb7b17"
+ integrity sha512-oBC+aNsCjzzjmO5AOPBPFS+Z7HPzlx+DQr/aHwM08kI+R24gsDmAS1LMfza1fK+P+SKlTAoNZpOvooE/pRO1HA==
dependencies:
component-emitter "^1.3.0"
cookiejar "^2.1.3"
@@ -10110,18 +10691,17 @@ superagent@^7.1.3:
form-data "^4.0.0"
formidable "^2.0.1"
methods "^1.1.2"
- mime "^2.5.0"
- qs "^6.10.3"
- readable-stream "^3.6.0"
- semver "^7.3.7"
+ mime "2.6.0"
+ qs "^6.11.0"
+ semver "^7.3.8"
-supertest@6.2.3:
- version "6.2.3"
- resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.2.3.tgz#291b220126e5faa654d12abe1ada3658757c8c67"
- integrity sha512-3GSdMYTMItzsSYjnIcljxMVZKPW1J9kYHZY+7yLfD0wpPwww97GeImZC1oOk0S5+wYl2niJwuFusBJqwLqYM3g==
+supertest@6.3.1:
+ version "6.3.1"
+ resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.3.1.tgz#a8ad362fc6f323c88730ac191ce30427dc869088"
+ integrity sha512-hRohNeIfk/cA48Cxpa/w48hktP6ZaRqXb0QV5rLvW0C7paRsBU3Q5zydzYrslOJtj/gd48qx540jKtcs6vG1fQ==
dependencies:
methods "^1.1.2"
- superagent "^7.1.3"
+ superagent "^8.0.3"
supports-color@^5.3.0:
version "5.5.0"
@@ -10130,7 +10710,7 @@ supports-color@^5.3.0:
dependencies:
has-flag "^3.0.0"
-supports-color@^7.0.0, supports-color@^7.1.0:
+supports-color@^7.1.0:
version "7.2.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
@@ -10144,14 +10724,6 @@ supports-color@^8.0.0:
dependencies:
has-flag "^4.0.0"
-supports-hyperlinks@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb"
- integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==
- dependencies:
- has-flag "^4.0.0"
- supports-color "^7.0.0"
-
supports-preserve-symlinks-flag@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
@@ -10162,6 +10734,17 @@ symbol-observable@^1.0.2, symbol-observable@^1.0.4:
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==
+tar-stream@~2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287"
+ integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==
+ dependencies:
+ bl "^4.0.3"
+ end-of-stream "^1.4.1"
+ fs-constants "^1.0.0"
+ inherits "^2.0.3"
+ readable-stream "^3.1.1"
+
tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2:
version "6.1.11"
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
@@ -10179,14 +10762,6 @@ temp-dir@^1.0.0:
resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d"
integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=
-terminal-link@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994"
- integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==
- dependencies:
- ansi-escapes "^4.2.1"
- supports-hyperlinks "^2.0.0"
-
test-exclude@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
@@ -10220,10 +10795,12 @@ thenify-all@^1.0.0:
dependencies:
any-promise "^1.0.0"
-throat@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375"
- integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==
+thread-stream@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-2.2.0.tgz#310c03a253f729094ce5d4638ef5186dfa80a9e8"
+ integrity sha512-rUkv4/fnb4rqy/gGy7VuqK6wE1+1DOCOWy4RMeaV69ZHMP11tQKZvZSip1yTgrKCMZzEMcCL/bKfHvSfDHx+iQ==
+ dependencies:
+ real-require "^0.2.0"
through2@^2.0.0:
version "2.0.5"
@@ -10255,6 +10832,11 @@ tiny-lru@^8.0.1:
resolved "https://registry.yarnpkg.com/tiny-lru/-/tiny-lru-8.0.1.tgz#c1d77d806e68035aaa2253e253d212291240ece2"
integrity sha512-eBIAYA0BzSjxBedCaO0CSjertD+u+IvNuFkyD7ESf+qjqHKBr5wFqvEYl91+ZQd7jjq2pO6/fBVwFgb6bxvorw==
+tiny-lru@^9.0.2:
+ version "9.0.2"
+ resolved "https://registry.yarnpkg.com/tiny-lru/-/tiny-lru-9.0.2.tgz#6714626d1961831da99472eb9f6d26b3ff999c39"
+ integrity sha512-SZwDlvflOPYiImKv2Rh/1uccO+r5JsEexLU1szFsVudzk17Sj250xl75/X3aY4vINS1ZulnCPqcndvW9R0y7Yg==
+
tmp@^0.0.33:
version "0.0.33"
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
@@ -10262,6 +10844,13 @@ tmp@^0.0.33:
dependencies:
os-tmpdir "~1.0.2"
+tmp@~0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14"
+ integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==
+ dependencies:
+ rimraf "^3.0.0"
+
tmpl@1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
@@ -10272,11 +10861,6 @@ to-fast-properties@^2.0.0:
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
-to-readable-stream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771"
- integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==
-
to-regex-range@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
@@ -10294,13 +10878,6 @@ toidentifier@1.0.1:
resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
-tr46@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240"
- integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==
- dependencies:
- punycode "^2.1.1"
-
tr46@~0.0.3:
version "0.0.3"
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
@@ -10316,6 +10893,11 @@ trim-newlines@^3.0.0:
resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144"
integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==
+ts-graphviz@^0.16.0:
+ version "0.16.0"
+ resolved "https://registry.yarnpkg.com/ts-graphviz/-/ts-graphviz-0.16.0.tgz#7a6e6b5434854bc90ab861e70d5af0d6d20729a7"
+ integrity sha512-3fTPO+G6bSQNvMh/XQQzyiahVLMMj9kqYO99ivUraNJ3Wp05HZOOVtRhi6w9hq7+laP1MKHjLBtGWqTeb1fcpg==
+
ts-invariant@^0.4.0:
version "0.4.4"
resolved "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.4.4.tgz#97a523518688f93aafad01b0e80eb803eb2abd86"
@@ -10323,32 +10905,32 @@ ts-invariant@^0.4.0:
dependencies:
tslib "^1.9.3"
-ts-jest@28.0.3:
- version "28.0.3"
- resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-28.0.3.tgz#d1c47f167e56eef3989bb51afaf7fc1c87a04c52"
- integrity sha512-HzgbEDQ2KgVtDmpXToqAcKTyGHdHsG23i/iUjfxji92G5eT09S1m9UHZd7csF0Bfgh9txM4JzwHnv7r1waFPlw==
+ts-jest@29.0.3:
+ version "29.0.3"
+ resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.0.3.tgz#63ea93c5401ab73595440733cefdba31fcf9cb77"
+ integrity sha512-Ibygvmuyq1qp/z3yTh9QTwVVAbFdDy/+4BtIQR2sp6baF2SJU/8CKK/hhnGIDY2L90Az2jIqTwZPnN2p+BweiQ==
dependencies:
bs-logger "0.x"
fast-json-stable-stringify "2.x"
- jest-util "^28.0.0"
+ jest-util "^29.0.0"
json5 "^2.2.1"
lodash.memoize "4.x"
make-error "1.x"
semver "7.x"
- yargs-parser "^20.x"
+ yargs-parser "^21.0.1"
-ts-morph@15.0.0:
- version "15.0.0"
- resolved "https://registry.yarnpkg.com/ts-morph/-/ts-morph-15.0.0.tgz#927a85d22909b95fa81e399c94fea655d98be514"
- integrity sha512-OZkg0TI1h6FVe8DZXyBo6p7NfCN9EZZkkA736f243KzQ3cypYWtaLc9eyNn/JH/fWYfQ4d6wIA4oM0vElRTGcQ==
+ts-morph@16.0.0:
+ version "16.0.0"
+ resolved "https://registry.yarnpkg.com/ts-morph/-/ts-morph-16.0.0.tgz#35caca7c286dd70e09e5f72af47536bf3b6a27af"
+ integrity sha512-jGNF0GVpFj0orFw55LTsQxVYEUOCWBAbR5Ls7fTYE5pQsbW18ssTb/6UXx/GYAEjS+DQTp8VoTw0vqYMiaaQuw==
dependencies:
- "@ts-morph/common" "~0.15.0"
- code-block-writer "^11.0.0"
+ "@ts-morph/common" "~0.17.0"
+ code-block-writer "^11.0.3"
-ts-node@10.8.0:
- version "10.8.0"
- resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.8.0.tgz#3ceb5ac3e67ae8025c1950626aafbdecb55d82ce"
- integrity sha512-/fNd5Qh+zTt8Vt1KbYZjRHCE9sI5i7nqfD/dzBBRDeVXZXS6kToW6R7tTU6Nd4XavFs0mAVCg29Q//ML7WsZYA==
+ts-node@10.9.1, ts-node@^10.8.1:
+ version "10.9.1"
+ resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"
+ integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==
dependencies:
"@cspotcode/source-map-support" "^0.8.0"
"@tsconfig/node10" "^1.0.7"
@@ -10364,26 +10946,7 @@ ts-node@10.8.0:
v8-compile-cache-lib "^3.0.1"
yn "3.1.1"
-ts-node@^10.7.0:
- version "10.7.0"
- resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.7.0.tgz#35d503d0fab3e2baa672a0e94f4b40653c2463f5"
- integrity sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==
- dependencies:
- "@cspotcode/source-map-support" "0.7.0"
- "@tsconfig/node10" "^1.0.7"
- "@tsconfig/node12" "^1.0.7"
- "@tsconfig/node14" "^1.0.0"
- "@tsconfig/node16" "^1.0.2"
- acorn "^8.4.1"
- acorn-walk "^8.1.1"
- arg "^4.1.0"
- create-require "^1.1.0"
- diff "^4.0.1"
- make-error "^1.1.1"
- v8-compile-cache-lib "^3.0.0"
- yn "3.1.1"
-
-tsconfig-paths@^3.14.1:
+tsconfig-paths@^3.14.1, tsconfig-paths@^3.9.0:
version "3.14.1"
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a"
integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==
@@ -10393,21 +10956,21 @@ tsconfig-paths@^3.14.1:
minimist "^1.2.6"
strip-bom "^3.0.0"
-tslib@2.3.1, tslib@^2.1.0, tslib@~2.3.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
- integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
-
-tslib@2.4.0, tslib@^2.0.1, tslib@~2.4.0:
+tslib@2.4.0, tslib@^2.0.1, tslib@^2.3.0, tslib@^2.4.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
-tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3:
+tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.3:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
+tslib@^2.1.0, tslib@~2.3.0:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
+ integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
+
tsutils@^3.21.0:
version "3.21.0"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
@@ -10464,6 +11027,16 @@ type-fest@^0.8.1:
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
+type-fest@^1.0.1, type-fest@^1.0.2:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1"
+ integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
+
+type-fest@^2.13.0:
+ version "2.14.0"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.14.0.tgz#f990e19169517d689c98e16d128b231022b27e12"
+ integrity sha512-hQnTQkFjL5ik6HF2fTAM8ycbr94UbQXK364wF930VHb0dfBJ5JBP8qwrR8TaK9zwUEk7meruo2JAUDMwvuxd/w==
+
type-fest@^2.5.1:
version "2.12.2"
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.12.2.tgz#80a53614e6b9b475eb9077472fb7498dc7aa51d0"
@@ -10489,10 +11062,15 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
-typescript@4.7.2:
- version "4.7.2"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4"
- integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==
+typescript@4.8.4:
+ version "4.8.4"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6"
+ integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==
+
+"typescript@^3 || ^4":
+ version "4.8.2"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.2.tgz#e3b33d5ccfb5914e4eeab6699cf208adee3fd790"
+ integrity sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==
typescript@^4.6.4:
version "4.6.4"
@@ -10533,12 +11111,12 @@ unique-slug@^2.0.0:
dependencies:
imurmurhash "^0.1.4"
-unique-string@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d"
- integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==
+unique-string@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a"
+ integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==
dependencies:
- crypto-random-string "^2.0.0"
+ crypto-random-string "^4.0.0"
universal-user-agent@^6.0.0:
version "6.0.0"
@@ -10565,25 +11143,25 @@ upath@^2.0.1:
resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b"
integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==
-update-notifier@5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9"
- integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==
- dependencies:
- boxen "^5.0.0"
- chalk "^4.1.0"
- configstore "^5.0.1"
- has-yarn "^2.1.0"
- import-lazy "^2.1.0"
- is-ci "^2.0.0"
+update-notifier@6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-6.0.2.tgz#a6990253dfe6d5a02bd04fbb6a61543f55026b60"
+ integrity sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==
+ dependencies:
+ boxen "^7.0.0"
+ chalk "^5.0.1"
+ configstore "^6.0.0"
+ has-yarn "^3.0.0"
+ import-lazy "^4.0.0"
+ is-ci "^3.0.1"
is-installed-globally "^0.4.0"
- is-npm "^5.0.0"
- is-yarn-global "^0.3.0"
- latest-version "^5.1.0"
- pupa "^2.1.1"
- semver "^7.3.4"
- semver-diff "^3.1.1"
- xdg-basedir "^4.0.0"
+ is-npm "^6.0.0"
+ is-yarn-global "^0.4.0"
+ latest-version "^7.0.0"
+ pupa "^3.1.0"
+ semver "^7.3.7"
+ semver-diff "^4.0.0"
+ xdg-basedir "^5.1.0"
uri-js@^4.2.2:
version "4.4.1"
@@ -10597,13 +11175,6 @@ url-join@5.0.0:
resolved "https://registry.yarnpkg.com/url-join/-/url-join-5.0.0.tgz#c2f1e5cbd95fa91082a93b58a1f42fecb4bdbcf1"
integrity sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==
-url-parse-lax@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
- integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=
- dependencies:
- prepend-http "^2.0.0"
-
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
@@ -10614,32 +11185,32 @@ utils-merge@1.0.1:
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
-uuid@8.3.2, uuid@^8.0.0, uuid@^8.3.2:
+uuid@8.3.2, uuid@^8.3.2:
version "8.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
-v8-compile-cache-lib@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8"
- integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA==
+uuid@9.0.0, uuid@^9.0.0:
+ version "9.0.0"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5"
+ integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
v8-compile-cache-lib@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
-v8-compile-cache@^2.0.3:
+v8-compile-cache@2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
-v8-to-istanbul@^9.0.0:
- version "9.0.0"
- resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.0.tgz#be0dae58719fc53cb97e5c7ac1d7e6d4f5b19511"
- integrity sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw==
+v8-to-istanbul@^9.0.1:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4"
+ integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==
dependencies:
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jridgewell/trace-mapping" "^0.3.12"
"@types/istanbul-lib-coverage" "^2.0.1"
convert-source-map "^1.6.0"
@@ -10693,7 +11264,7 @@ walk-up-path@^1.0.0:
resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e"
integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==
-walker@^1.0.7:
+walker@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
@@ -10717,11 +11288,6 @@ webidl-conversions@^3.0.0:
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=
-webidl-conversions@^6.1.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
- integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
-
whatwg-mimetype@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7"
@@ -10735,15 +11301,6 @@ whatwg-url@^5.0.0:
tr46 "~0.0.3"
webidl-conversions "^3.0.0"
-whatwg-url@^8.4.0:
- version "8.7.0"
- resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77"
- integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==
- dependencies:
- lodash "^4.7.0"
- tr46 "^2.1.0"
- webidl-conversions "^6.1.0"
-
which-boxed-primitive@^1.0.1, which-boxed-primitive@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
@@ -10784,19 +11341,19 @@ which@^2.0.1, which@^2.0.2:
dependencies:
isexe "^2.0.0"
-wide-align@^1.1.0, wide-align@^1.1.5:
+wide-align@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3"
integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==
dependencies:
string-width "^1.0.2 || 2 || 3 || 4"
-widest-line@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca"
- integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==
+widest-line@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-4.0.1.tgz#a0fc673aaba1ea6f0a0d35b3c2795c9a9cc2ebf2"
+ integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==
dependencies:
- string-width "^4.0.0"
+ string-width "^5.0.1"
wildcard-match@5.1.2:
version "5.1.2"
@@ -10838,6 +11395,15 @@ wrap-ansi@^7.0.0:
string-width "^4.1.0"
strip-ansi "^6.0.0"
+wrap-ansi@^8.0.1:
+ version "8.0.1"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.0.1.tgz#2101e861777fec527d0ea90c57c6b03aac56a5b3"
+ integrity sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==
+ dependencies:
+ ansi-styles "^6.1.0"
+ string-width "^5.0.1"
+ strip-ansi "^7.0.1"
+
wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -10903,10 +11469,10 @@ write-pkg@^4.0.0:
type-fest "^0.4.1"
write-json-file "^3.2.0"
-ws@8.7.0:
- version "8.7.0"
- resolved "https://registry.yarnpkg.com/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957"
- integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg==
+ws@8.10.0:
+ version "8.10.0"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.10.0.tgz#00a28c09dfb76eae4eb45c3b565f771d6951aa51"
+ integrity sha512-+s49uSmZpvtAsd2h37vIPy1RBusaLawVe8of+GyEPsaJTCMpj/2v8NpeK1SHXjBlQ95lQTmQofOJnFiLoaN3yw==
"ws@^5.2.0 || ^6.0.0 || ^7.0.0":
version "7.5.5"
@@ -10918,15 +11484,15 @@ ws@^8.0.0, ws@^8.2.2:
resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba"
integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==
-ws@^8.4.2:
- version "8.4.2"
- resolved "https://registry.yarnpkg.com/ws/-/ws-8.4.2.tgz#18e749868d8439f2268368829042894b6907aa0b"
- integrity sha512-Kbk4Nxyq7/ZWqr/tarI9yIt/+iNNFOjBXEWgTb4ydaNHBNGgvf2QHbS9fdfsndfjFlFwEd4Al+mw83YkaD10ZA==
+ws@^8.9.0:
+ version "8.9.0"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e"
+ integrity sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==
-xdg-basedir@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13"
- integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==
+xdg-basedir@^5.0.1, xdg-basedir@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9"
+ integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==
xregexp@2.0.0:
version "2.0.0"
@@ -10976,12 +11542,17 @@ yargs-parser@20.2.4:
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54"
integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==
-yargs-parser@21.0.1, yargs-parser@^21.0.0:
+yargs-parser@21.0.1, yargs-parser@^21.0.0, yargs-parser@^21.0.1:
version "21.0.1"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==
-yargs-parser@^20.2.2, yargs-parser@^20.2.3, yargs-parser@^20.x:
+yargs-parser@21.1.1:
+ version "21.1.1"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
+ integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
+
+yargs-parser@^20.2.2, yargs-parser@^20.2.3:
version "20.2.9"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
@@ -11025,6 +11596,19 @@ yargs@^17.3.1:
y18n "^5.0.5"
yargs-parser "^21.0.0"
+yargs@^17.4.0:
+ version "17.5.1"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e"
+ integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==
+ dependencies:
+ cliui "^7.0.2"
+ escalade "^3.1.1"
+ get-caller-file "^2.0.5"
+ require-directory "^2.1.1"
+ string-width "^4.2.3"
+ y18n "^5.0.5"
+ yargs-parser "^21.0.0"
+
yn@3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"