From 96cdb827c8989564f40baae9fd795441240b6b7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20My=C5=9Bliwiec?= Date: Fri, 17 Jan 2025 11:10:58 +0100 Subject: [PATCH] sample: update graphql samples --- sample/12-graphql-schema-first/package.json | 4 ++-- sample/22-graphql-prisma/package.json | 20 +++++++++---------- .../22-graphql-prisma/src/graphql.schema.ts | 2 +- .../src/posts/posts.resolvers.ts | 8 ++++---- .../src/prisma/prisma.service.ts | 8 +------- sample/23-graphql-code-first/package.json | 14 ++++++------- sample/23-graphql-code-first/schema.gql | 2 +- .../src/recipes/recipes.resolver.ts | 2 +- .../gateway/package.json | 17 ++++++++-------- .../posts-application/package.json | 10 +++++----- .../src/posts/posts.module.ts | 6 ++++-- .../users-application/package.json | 10 +++++----- .../src/users/users.module.ts | 6 ++++-- .../gateway/package.json | 12 +++++------ .../posts-application/package.json | 12 +++++------ .../posts-application/src/posts/posts.graphql | 1 + .../users-application/package.json | 19 +++++++++--------- sample/33-graphql-mercurius/package.json | 6 +++--- sample/33-graphql-mercurius/schema.gql | 2 +- 19 files changed, 81 insertions(+), 80 deletions(-) diff --git a/sample/12-graphql-schema-first/package.json b/sample/12-graphql-schema-first/package.json index bf081b8ab..23f81f593 100644 --- a/sample/12-graphql-schema-first/package.json +++ b/sample/12-graphql-schema-first/package.json @@ -21,10 +21,10 @@ "dependencies": { "@apollo/server": "4.11.3", "@graphql-tools/utils": "10.7.2", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", "class-transformer": "0.5.1", "class-validator": "0.14.1", diff --git a/sample/22-graphql-prisma/package.json b/sample/22-graphql-prisma/package.json index 2d6d4ab50..98df74126 100644 --- a/sample/22-graphql-prisma/package.json +++ b/sample/22-graphql-prisma/package.json @@ -21,16 +21,16 @@ }, "dependencies": { "@apollo/server": "4.11.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "@prisma/client": "4.16.2", + "@prisma/client": "6.2.1", "class-transformer": "0.5.1", "class-validator": "0.14.1", - "graphql": "16.8.1", - "graphql-subscriptions": "2.0.0", + "graphql": "16.10.0", + "graphql-subscriptions": "3.0.0", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", "rxjs": "7.8.1" @@ -41,11 +41,11 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", - "@types/node": "22.10.6", + "@types/express": "5.0.0", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", - "@typescript-eslint/eslint-plugin": "5.62.0", - "@typescript-eslint/parser": "5.62.0", + "@typescript-eslint/eslint-plugin": "8.20.0", + "@typescript-eslint/parser": "8.20.0", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", "eslint-plugin-import": "2.31.0", @@ -53,7 +53,7 @@ "globals": "15.14.0", "jest": "29.7.0", "prettier": "3.4.2", - "prisma": "^4.15.0", + "prisma": "^6.2.1", "supertest": "7.0.0", "ts-jest": "29.2.5", "ts-loader": "9.5.2", diff --git a/sample/22-graphql-prisma/src/graphql.schema.ts b/sample/22-graphql-prisma/src/graphql.schema.ts index 38a134f7f..6f4a7dc5c 100755 --- a/sample/22-graphql-prisma/src/graphql.schema.ts +++ b/sample/22-graphql-prisma/src/graphql.schema.ts @@ -5,7 +5,7 @@ */ /* tslint:disable */ -/* eslint-disable */ + export class NewPost { title: string; text: string; diff --git a/sample/22-graphql-prisma/src/posts/posts.resolvers.ts b/sample/22-graphql-prisma/src/posts/posts.resolvers.ts index 5ecb8c28f..7516c1283 100755 --- a/sample/22-graphql-prisma/src/posts/posts.resolvers.ts +++ b/sample/22-graphql-prisma/src/posts/posts.resolvers.ts @@ -1,7 +1,7 @@ -import { Resolver, Query, Mutation, Args, Subscription } from '@nestjs/graphql'; -import { PostsService } from './posts.service'; -import { Post, NewPost, UpdatePost } from 'src/graphql.schema'; +import { Args, Mutation, Query, Resolver, Subscription } from '@nestjs/graphql'; import { PubSub } from 'graphql-subscriptions'; +import { NewPost, Post, UpdatePost } from 'src/graphql.schema'; +import { PostsService } from './posts.service'; const pubSub = new PubSub(); @@ -38,6 +38,6 @@ export class PostsResolvers { @Subscription('postCreated') postCreated() { - return pubSub.asyncIterator('postCreated'); + return pubSub.asyncIterableIterator('postCreated'); } } diff --git a/sample/22-graphql-prisma/src/prisma/prisma.service.ts b/sample/22-graphql-prisma/src/prisma/prisma.service.ts index edf653202..359f950b7 100755 --- a/sample/22-graphql-prisma/src/prisma/prisma.service.ts +++ b/sample/22-graphql-prisma/src/prisma/prisma.service.ts @@ -1,4 +1,4 @@ -import { INestApplication, Injectable, OnModuleInit } from '@nestjs/common'; +import { Injectable, OnModuleInit } from '@nestjs/common'; import { PrismaClient } from '@prisma/client'; @Injectable() @@ -6,10 +6,4 @@ export class PrismaService extends PrismaClient implements OnModuleInit { async onModuleInit() { await this.$connect(); } - - async enableShutdownHooks(app: INestApplication) { - this.$on('beforeExit', async () => { - await app.close(); - }); - } } diff --git a/sample/23-graphql-code-first/package.json b/sample/23-graphql-code-first/package.json index bcf962a29..e90dade65 100644 --- a/sample/23-graphql-code-first/package.json +++ b/sample/23-graphql-code-first/package.json @@ -20,16 +20,16 @@ }, "dependencies": { "@apollo/server": "4.11.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", "class-transformer": "0.5.1", "class-validator": "0.14.1", - "graphql": "16.8.1", - "graphql-query-complexity": "0.12.0", - "graphql-subscriptions": "2.0.0", + "graphql": "16.10.0", + "graphql-query-complexity": "1.0.0", + "graphql-subscriptions": "3.0.0", "reflect-metadata": "0.2.2", "rxjs": "7.8.1" }, @@ -39,8 +39,8 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", - "@types/node": "22.10.6", + "@types/express": "5.0.0", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", "eslint": "9.18.0", "eslint-plugin-prettier": "5.2.2", diff --git a/sample/23-graphql-code-first/schema.gql b/sample/23-graphql-code-first/schema.gql index 7a46060d1..5d883904b 100644 --- a/sample/23-graphql-code-first/schema.gql +++ b/sample/23-graphql-code-first/schema.gql @@ -4,7 +4,7 @@ directive @upper on FIELD_DEFINITION -"""recipe """ +"""recipe""" type Recipe { id: ID! description: String diff --git a/sample/23-graphql-code-first/src/recipes/recipes.resolver.ts b/sample/23-graphql-code-first/src/recipes/recipes.resolver.ts index c4ec6a20f..4634934cb 100644 --- a/sample/23-graphql-code-first/src/recipes/recipes.resolver.ts +++ b/sample/23-graphql-code-first/src/recipes/recipes.resolver.ts @@ -42,6 +42,6 @@ export class RecipesResolver { @Subscription(returns => Recipe) recipeAdded() { - return pubSub.asyncIterator('recipeAdded'); + return pubSub.asyncIterableIterator('recipeAdded'); } } diff --git a/sample/31-graphql-federation-code-first/gateway/package.json b/sample/31-graphql-federation-code-first/gateway/package.json index 6362c4ee9..8e3ae2b04 100644 --- a/sample/31-graphql-federation-code-first/gateway/package.json +++ b/sample/31-graphql-federation-code-first/gateway/package.json @@ -21,12 +21,12 @@ "dependencies": { "@apollo/gateway": "2.9.3", "@apollo/server": "4.11.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -34,18 +34,18 @@ "ts-morph": "25.0.0" }, "devDependencies": { + "@eslint/eslintrc": "3.2.0", + "@eslint/js": "9.18.0", "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", - "@typescript-eslint/eslint-plugin": "5.62.0", - "@typescript-eslint/parser": "5.62.0", "eslint": "9.18.0", - "eslint-config-prettier": "10.0.1", "eslint-plugin-prettier": "5.2.2", + "globals": "15.14.0", "jest": "29.7.0", "prettier": "3.4.2", "supertest": "7.0.0", @@ -54,6 +54,7 @@ "ts-node": "10.9.2", "tsconfig-paths": "4.2.0", "typescript": "5.7.3", + "typescript-eslint": "8.20.0", "webpack": "5.97.1" }, "jest": { diff --git a/sample/31-graphql-federation-code-first/posts-application/package.json b/sample/31-graphql-federation-code-first/posts-application/package.json index fabae1979..d9b28b195 100644 --- a/sample/31-graphql-federation-code-first/posts-application/package.json +++ b/sample/31-graphql-federation-code-first/posts-application/package.json @@ -23,12 +23,12 @@ "@apollo/gateway": "2.9.3", "@apollo/server": "4.11.3", "@apollo/subgraph": "2.9.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -41,9 +41,9 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", diff --git a/sample/31-graphql-federation-code-first/posts-application/src/posts/posts.module.ts b/sample/31-graphql-federation-code-first/posts-application/src/posts/posts.module.ts index a3048ea0a..da2bfd70b 100644 --- a/sample/31-graphql-federation-code-first/posts-application/src/posts/posts.module.ts +++ b/sample/31-graphql-federation-code-first/posts-application/src/posts/posts.module.ts @@ -1,3 +1,4 @@ +import { ApolloServerPluginInlineTrace } from '@apollo/server/plugin/inlineTrace'; import { ApolloFederationDriver, ApolloFederationDriverConfig, @@ -8,13 +9,14 @@ import { User } from './models/user.model'; import { PostsResolver } from './posts.resolver'; import { PostsService } from './posts.service'; import { UsersResolver } from './users.resolver'; -import { ApolloServerPluginInlineTrace } from '@apollo/server/plugin/inlineTrace'; @Module({ imports: [ GraphQLModule.forRoot({ driver: ApolloFederationDriver, - autoSchemaFile: true, + autoSchemaFile: { + federation: 2, + }, plugins: [ApolloServerPluginInlineTrace()], buildSchemaOptions: { orphanedTypes: [User], diff --git a/sample/31-graphql-federation-code-first/users-application/package.json b/sample/31-graphql-federation-code-first/users-application/package.json index 1272ffb2d..a89658e2a 100644 --- a/sample/31-graphql-federation-code-first/users-application/package.json +++ b/sample/31-graphql-federation-code-first/users-application/package.json @@ -22,12 +22,12 @@ "@apollo/gateway": "2.9.3", "@apollo/server": "4.11.3", "@apollo/subgraph": "2.9.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -40,9 +40,9 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", diff --git a/sample/31-graphql-federation-code-first/users-application/src/users/users.module.ts b/sample/31-graphql-federation-code-first/users-application/src/users/users.module.ts index 10c7a3b33..be992a5e9 100644 --- a/sample/31-graphql-federation-code-first/users-application/src/users/users.module.ts +++ b/sample/31-graphql-federation-code-first/users-application/src/users/users.module.ts @@ -1,3 +1,4 @@ +import { ApolloServerPluginInlineTrace } from '@apollo/server/plugin/inlineTrace'; import { ApolloFederationDriver, ApolloFederationDriverConfig, @@ -6,14 +7,15 @@ import { Module } from '@nestjs/common'; import { GraphQLModule } from '@nestjs/graphql'; import { UsersResolver } from './users.resolver'; import { UsersService } from './users.service'; -import { ApolloServerPluginInlineTrace } from '@apollo/server/plugin/inlineTrace'; @Module({ providers: [UsersResolver, UsersService], imports: [ GraphQLModule.forRoot({ driver: ApolloFederationDriver, - autoSchemaFile: true, + autoSchemaFile: { + federation: 2, + }, plugins: [ApolloServerPluginInlineTrace()], }), ], diff --git a/sample/32-graphql-federation-schema-first/gateway/package.json b/sample/32-graphql-federation-schema-first/gateway/package.json index 4e2337d80..4bc7d8322 100644 --- a/sample/32-graphql-federation-schema-first/gateway/package.json +++ b/sample/32-graphql-federation-schema-first/gateway/package.json @@ -22,13 +22,13 @@ }, "dependencies": { "@apollo/gateway": "2.9.3", - "@apollo/server": "^4.7.4", - "@nestjs/apollo": "12.2.2", + "@apollo/server": "^4.11.3", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -41,9 +41,9 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", diff --git a/sample/32-graphql-federation-schema-first/posts-application/package.json b/sample/32-graphql-federation-schema-first/posts-application/package.json index 3afadde99..1c27b9371 100644 --- a/sample/32-graphql-federation-schema-first/posts-application/package.json +++ b/sample/32-graphql-federation-schema-first/posts-application/package.json @@ -22,14 +22,14 @@ }, "dependencies": { "@apollo/gateway": "2.9.3", - "@apollo/server": "^4.7.4", + "@apollo/server": "^4.11.3", "@apollo/subgraph": "2.9.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -42,9 +42,9 @@ "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", diff --git a/sample/32-graphql-federation-schema-first/posts-application/src/posts/posts.graphql b/sample/32-graphql-federation-schema-first/posts-application/src/posts/posts.graphql index d92dd1aff..b408faf64 100644 --- a/sample/32-graphql-federation-schema-first/posts-application/src/posts/posts.graphql +++ b/sample/32-graphql-federation-schema-first/posts-application/src/posts/posts.graphql @@ -13,4 +13,5 @@ extend type User @key(fields: "id") { extend type Query { getPosts: [Post] + findPost(id: ID!): Post } diff --git a/sample/32-graphql-federation-schema-first/users-application/package.json b/sample/32-graphql-federation-schema-first/users-application/package.json index 07b56a0c2..80a5b1d62 100644 --- a/sample/32-graphql-federation-schema-first/users-application/package.json +++ b/sample/32-graphql-federation-schema-first/users-application/package.json @@ -21,14 +21,14 @@ }, "dependencies": { "@apollo/gateway": "2.9.3", - "@apollo/server": "^4.7.4", + "@apollo/server": "^4.11.3", "@apollo/subgraph": "2.9.3", - "@nestjs/apollo": "12.2.2", + "@nestjs/apollo": "13.0.0", "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", + "@nestjs/graphql": "13.0.0", "@nestjs/platform-express": "11.0.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "graphql-tools": "9.0.11", "reflect-metadata": "0.2.2", "rimraf": "6.0.1", @@ -36,15 +36,15 @@ "ts-morph": "25.0.0" }, "devDependencies": { + "@eslint/eslintrc": "3.2.0", + "@eslint/js": "9.18.0", "@nestjs/cli": "10.4.9", "@nestjs/schematics": "10.2.3", "@nestjs/testing": "11.0.1", - "@types/express": "4.17.21", + "@types/express": "5.0.0", "@types/jest": "29.5.14", - "@types/node": "22.10.6", + "@types/node": "22.10.7", "@types/supertest": "6.0.2", - "@typescript-eslint/eslint-plugin": "5.62.0", - "@typescript-eslint/parser": "5.62.0", "eslint": "9.18.0", "eslint-config-prettier": "10.0.1", "eslint-plugin-prettier": "5.2.2", @@ -55,7 +55,8 @@ "ts-loader": "9.5.2", "ts-node": "10.9.2", "tsconfig-paths": "4.2.0", - "typescript": "5.7.3" + "typescript": "5.7.3", + "typescript-eslint": "8.20.0" }, "jest": { "moduleFileExtensions": [ diff --git a/sample/33-graphql-mercurius/package.json b/sample/33-graphql-mercurius/package.json index 9ddec8524..f8caaf723 100644 --- a/sample/33-graphql-mercurius/package.json +++ b/sample/33-graphql-mercurius/package.json @@ -21,12 +21,12 @@ "dependencies": { "@nestjs/common": "11.0.1", "@nestjs/core": "11.0.1", - "@nestjs/graphql": "12.2.2", - "@nestjs/mercurius": "12.2.2", + "@nestjs/graphql": "13.0.0", + "@nestjs/mercurius": "13.0.0", "@nestjs/platform-fastify": "11.0.1", "class-transformer": "0.5.1", "class-validator": "0.14.1", - "graphql": "16.8.1", + "graphql": "16.10.0", "mercurius": "16.0.1", "reflect-metadata": "0.2.2", "rxjs": "7.8.1" diff --git a/sample/33-graphql-mercurius/schema.gql b/sample/33-graphql-mercurius/schema.gql index e11c56434..bf7b8131c 100644 --- a/sample/33-graphql-mercurius/schema.gql +++ b/sample/33-graphql-mercurius/schema.gql @@ -16,7 +16,7 @@ scalar Date type Query { recipe(id: String!): Recipe! - recipes(skip: Int = 0, take: Int = 25): [Recipe!]! + recipes(skip: Int! = 0, take: Int! = 25): [Recipe!]! } type Mutation {