正在显示
16 个修改的文件
包含
326 行增加
和
0 行删除
.eslintrc.js
0 → 100644
| 1 | +module.exports = { | ||
| 2 | + parser: '@typescript-eslint/parser', | ||
| 3 | + parserOptions: { | ||
| 4 | + project: 'tsconfig.json', | ||
| 5 | + sourceType: 'module', | ||
| 6 | + }, | ||
| 7 | + plugins: ['@typescript-eslint/eslint-plugin'], | ||
| 8 | + extends: [ | ||
| 9 | + 'plugin:@typescript-eslint/recommended', | ||
| 10 | + 'prettier/@typescript-eslint', | ||
| 11 | + 'plugin:prettier/recommended', | ||
| 12 | + ], | ||
| 13 | + root: true, | ||
| 14 | + env: { | ||
| 15 | + node: true, | ||
| 16 | + jest: true, | ||
| 17 | + }, | ||
| 18 | + ignorePatterns: ['.eslintrc.js'], | ||
| 19 | + rules: { | ||
| 20 | + '@typescript-eslint/interface-name-prefix': 'off', | ||
| 21 | + '@typescript-eslint/explicit-function-return-type': 'off', | ||
| 22 | + '@typescript-eslint/explicit-module-boundary-types': 'off', | ||
| 23 | + '@typescript-eslint/no-explicit-any': 'off', | ||
| 24 | + }, | ||
| 25 | +}; |
.gitignore
0 → 100644
| 1 | +# compiled output | ||
| 2 | +/dist | ||
| 3 | +/node_modules | ||
| 4 | + | ||
| 5 | +# Logs | ||
| 6 | +logs | ||
| 7 | +*.log | ||
| 8 | +npm-debug.log* | ||
| 9 | +yarn-debug.log* | ||
| 10 | +yarn-error.log* | ||
| 11 | +lerna-debug.log* | ||
| 12 | + | ||
| 13 | +# OS | ||
| 14 | +.DS_Store | ||
| 15 | + | ||
| 16 | +# Tests | ||
| 17 | +/coverage | ||
| 18 | +/.nyc_output | ||
| 19 | + | ||
| 20 | +# IDEs and editors | ||
| 21 | +/.idea | ||
| 22 | +.project | ||
| 23 | +.classpath | ||
| 24 | +.c9/ | ||
| 25 | +*.launch | ||
| 26 | +.settings/ | ||
| 27 | +*.sublime-workspace | ||
| 28 | + | ||
| 29 | +# IDE - VSCode | ||
| 30 | +.vscode/* | ||
| 31 | +!.vscode/settings.json | ||
| 32 | +!.vscode/tasks.json | ||
| 33 | +!.vscode/launch.json | ||
| 34 | +!.vscode/extensions.json |
.prettierrc
0 → 100644
README.md
0 → 100644
| 1 | +<p align="center"> | ||
| 2 | + <a href="http://nestjs.com/" target="blank"><img src="https://nestjs.com/img/logo_text.svg" width="320" alt="Nest Logo" /></a> | ||
| 3 | +</p> | ||
| 4 | + | ||
| 5 | +[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456 | ||
| 6 | +[circleci-url]: https://circleci.com/gh/nestjs/nest | ||
| 7 | + | ||
| 8 | + <p align="center">A progressive <a href="http://nodejs.org" target="_blank">Node.js</a> framework for building efficient and scalable server-side applications.</p> | ||
| 9 | + <p align="center"> | ||
| 10 | +<a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/v/@nestjs/core.svg" alt="NPM Version" /></a> | ||
| 11 | +<a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/l/@nestjs/core.svg" alt="Package License" /></a> | ||
| 12 | +<a href="https://www.npmjs.com/~nestjscore" target="_blank"><img src="https://img.shields.io/npm/dm/@nestjs/common.svg" alt="NPM Downloads" /></a> | ||
| 13 | +<a href="https://circleci.com/gh/nestjs/nest" target="_blank"><img src="https://img.shields.io/circleci/build/github/nestjs/nest/master" alt="CircleCI" /></a> | ||
| 14 | +<a href="https://coveralls.io/github/nestjs/nest?branch=master" target="_blank"><img src="https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9" alt="Coverage" /></a> | ||
| 15 | +<a href="https://discord.gg/G7Qnnhy" target="_blank"><img src="https://img.shields.io/badge/discord-online-brightgreen.svg" alt="Discord"/></a> | ||
| 16 | +<a href="https://opencollective.com/nest#backer" target="_blank"><img src="https://opencollective.com/nest/backers/badge.svg" alt="Backers on Open Collective" /></a> | ||
| 17 | +<a href="https://opencollective.com/nest#sponsor" target="_blank"><img src="https://opencollective.com/nest/sponsors/badge.svg" alt="Sponsors on Open Collective" /></a> | ||
| 18 | + <a href="https://paypal.me/kamilmysliwiec" target="_blank"><img src="https://img.shields.io/badge/Donate-PayPal-ff3f59.svg"/></a> | ||
| 19 | + <a href="https://opencollective.com/nest#sponsor" target="_blank"><img src="https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg" alt="Support us"></a> | ||
| 20 | + <a href="https://twitter.com/nestframework" target="_blank"><img src="https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow"></a> | ||
| 21 | +</p> | ||
| 22 | + <!--[](https://opencollective.com/nest#backer) | ||
| 23 | + [](https://opencollective.com/nest#sponsor)--> | ||
| 24 | + | ||
| 25 | +## Description | ||
| 26 | + | ||
| 27 | +[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository. | ||
| 28 | + | ||
| 29 | +## Installation | ||
| 30 | + | ||
| 31 | +```bash | ||
| 32 | +$ npm install | ||
| 33 | +``` | ||
| 34 | + | ||
| 35 | +## Running the app | ||
| 36 | + | ||
| 37 | +```bash | ||
| 38 | +# development | ||
| 39 | +$ npm run start | ||
| 40 | + | ||
| 41 | +# watch mode | ||
| 42 | +$ npm run start:dev | ||
| 43 | + | ||
| 44 | +# production mode | ||
| 45 | +$ npm run start:prod | ||
| 46 | +``` | ||
| 47 | + | ||
| 48 | +## Test | ||
| 49 | + | ||
| 50 | +```bash | ||
| 51 | +# unit tests | ||
| 52 | +$ npm run test | ||
| 53 | + | ||
| 54 | +# e2e tests | ||
| 55 | +$ npm run test:e2e | ||
| 56 | + | ||
| 57 | +# test coverage | ||
| 58 | +$ npm run test:cov | ||
| 59 | +``` | ||
| 60 | + | ||
| 61 | +## Support | ||
| 62 | + | ||
| 63 | +Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support). | ||
| 64 | + | ||
| 65 | +## Stay in touch | ||
| 66 | + | ||
| 67 | +- Author - [Kamil Myśliwiec](https://kamilmysliwiec.com) | ||
| 68 | +- Website - [https://nestjs.com](https://nestjs.com/) | ||
| 69 | +- Twitter - [@nestframework](https://twitter.com/nestframework) | ||
| 70 | + | ||
| 71 | +## License | ||
| 72 | + | ||
| 73 | +Nest is [MIT licensed](LICENSE). |
nest-cli.json
0 → 100644
package-lock.json
0 → 100644
此 diff 太大无法显示。
package.json
0 → 100644
| 1 | +{ | ||
| 2 | + "name": "nestjs-graphql", | ||
| 3 | + "version": "0.0.1", | ||
| 4 | + "description": "", | ||
| 5 | + "author": "", | ||
| 6 | + "private": true, | ||
| 7 | + "license": "UNLICENSED", | ||
| 8 | + "scripts": { | ||
| 9 | + "prebuild": "rimraf dist", | ||
| 10 | + "build": "nest build", | ||
| 11 | + "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", | ||
| 12 | + "start": "nest start", | ||
| 13 | + "start:dev": "nest start --watch", | ||
| 14 | + "start:debug": "nest start --debug --watch", | ||
| 15 | + "start:prod": "node dist/main", | ||
| 16 | + "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", | ||
| 17 | + "test": "jest", | ||
| 18 | + "test:watch": "jest --watch", | ||
| 19 | + "test:cov": "jest --coverage", | ||
| 20 | + "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", | ||
| 21 | + "test:e2e": "jest --config ./test/jest-e2e.json" | ||
| 22 | + }, | ||
| 23 | + "dependencies": { | ||
| 24 | + "@nestjs/common": "^7.5.1", | ||
| 25 | + "@nestjs/core": "^7.5.1", | ||
| 26 | + "@nestjs/graphql": "^7.9.9", | ||
| 27 | + "@nestjs/platform-express": "^7.5.1", | ||
| 28 | + "apollo-server-express": "^2.21.0", | ||
| 29 | + "graphql": "^15.5.0", | ||
| 30 | + "graphql-tools": "^7.0.4", | ||
| 31 | + "reflect-metadata": "^0.1.13", | ||
| 32 | + "rimraf": "^3.0.2", | ||
| 33 | + "rxjs": "^6.6.3" | ||
| 34 | + }, | ||
| 35 | + "devDependencies": { | ||
| 36 | + "@nestjs/cli": "^7.5.1", | ||
| 37 | + "@nestjs/schematics": "^7.1.3", | ||
| 38 | + "@nestjs/testing": "^7.5.1", | ||
| 39 | + "@types/express": "^4.17.8", | ||
| 40 | + "@types/jest": "^26.0.15", | ||
| 41 | + "@types/node": "^14.14.6", | ||
| 42 | + "@types/supertest": "^2.0.10", | ||
| 43 | + "@typescript-eslint/eslint-plugin": "^4.6.1", | ||
| 44 | + "@typescript-eslint/parser": "^4.6.1", | ||
| 45 | + "eslint": "^7.12.1", | ||
| 46 | + "eslint-config-prettier": "7.2.0", | ||
| 47 | + "eslint-plugin-prettier": "^3.1.4", | ||
| 48 | + "jest": "^26.6.3", | ||
| 49 | + "prettier": "^2.1.2", | ||
| 50 | + "supertest": "^6.0.0", | ||
| 51 | + "ts-jest": "^26.4.3", | ||
| 52 | + "ts-loader": "^8.0.8", | ||
| 53 | + "ts-node": "^9.0.0", | ||
| 54 | + "tsconfig-paths": "^3.9.0", | ||
| 55 | + "typescript": "^4.0.5" | ||
| 56 | + }, | ||
| 57 | + "jest": { | ||
| 58 | + "moduleFileExtensions": [ | ||
| 59 | + "js", | ||
| 60 | + "json", | ||
| 61 | + "ts" | ||
| 62 | + ], | ||
| 63 | + "rootDir": "src", | ||
| 64 | + "testRegex": ".*\\.spec\\.ts$", | ||
| 65 | + "transform": { | ||
| 66 | + "^.+\\.(t|j)s$": "ts-jest" | ||
| 67 | + }, | ||
| 68 | + "collectCoverageFrom": [ | ||
| 69 | + "**/*.(t|j)s" | ||
| 70 | + ], | ||
| 71 | + "coverageDirectory": "../coverage", | ||
| 72 | + "testEnvironment": "node" | ||
| 73 | + } | ||
| 74 | +} |
src/app.controller.spec.ts
0 → 100644
| 1 | +import { Test, TestingModule } from '@nestjs/testing'; | ||
| 2 | +import { AppController } from './app.controller'; | ||
| 3 | +import { AppService } from './app.service'; | ||
| 4 | + | ||
| 5 | +describe('AppController', () => { | ||
| 6 | + let appController: AppController; | ||
| 7 | + | ||
| 8 | + beforeEach(async () => { | ||
| 9 | + const app: TestingModule = await Test.createTestingModule({ | ||
| 10 | + controllers: [AppController], | ||
| 11 | + providers: [AppService], | ||
| 12 | + }).compile(); | ||
| 13 | + | ||
| 14 | + appController = app.get<AppController>(AppController); | ||
| 15 | + }); | ||
| 16 | + | ||
| 17 | + describe('root', () => { | ||
| 18 | + it('should return "Hello World!"', () => { | ||
| 19 | + expect(appController.getHello()).toBe('Hello World!'); | ||
| 20 | + }); | ||
| 21 | + }); | ||
| 22 | +}); |
src/app.controller.ts
0 → 100644
| 1 | +import { Controller, Get } from '@nestjs/common'; | ||
| 2 | +import { AppService } from './app.service'; | ||
| 3 | + | ||
| 4 | +@Controller() | ||
| 5 | +export class AppController { | ||
| 6 | + constructor(private readonly appService: AppService) {} | ||
| 7 | + | ||
| 8 | + @Get() | ||
| 9 | + getHello(): string { | ||
| 10 | + return this.appService.getHello(); | ||
| 11 | + } | ||
| 12 | +} |
src/app.module.ts
0 → 100644
src/app.service.ts
0 → 100644
src/main.ts
0 → 100644
test/app.e2e-spec.ts
0 → 100644
| 1 | +import { Test, TestingModule } from '@nestjs/testing'; | ||
| 2 | +import { INestApplication } from '@nestjs/common'; | ||
| 3 | +import * as request from 'supertest'; | ||
| 4 | +import { AppModule } from './../src/app.module'; | ||
| 5 | + | ||
| 6 | +describe('AppController (e2e)', () => { | ||
| 7 | + let app: INestApplication; | ||
| 8 | + | ||
| 9 | + beforeEach(async () => { | ||
| 10 | + const moduleFixture: TestingModule = await Test.createTestingModule({ | ||
| 11 | + imports: [AppModule], | ||
| 12 | + }).compile(); | ||
| 13 | + | ||
| 14 | + app = moduleFixture.createNestApplication(); | ||
| 15 | + await app.init(); | ||
| 16 | + }); | ||
| 17 | + | ||
| 18 | + it('/ (GET)', () => { | ||
| 19 | + return request(app.getHttpServer()) | ||
| 20 | + .get('/') | ||
| 21 | + .expect(200) | ||
| 22 | + .expect('Hello World!'); | ||
| 23 | + }); | ||
| 24 | +}); |
test/jest-e2e.json
0 → 100644
tsconfig.build.json
0 → 100644
tsconfig.json
0 → 100644
| 1 | +{ | ||
| 2 | + "compilerOptions": { | ||
| 3 | + "module": "commonjs", | ||
| 4 | + "declaration": true, | ||
| 5 | + "removeComments": true, | ||
| 6 | + "emitDecoratorMetadata": true, | ||
| 7 | + "experimentalDecorators": true, | ||
| 8 | + "allowSyntheticDefaultImports": true, | ||
| 9 | + "target": "es2017", | ||
| 10 | + "sourceMap": true, | ||
| 11 | + "outDir": "./dist", | ||
| 12 | + "baseUrl": "./", | ||
| 13 | + "incremental": true | ||
| 14 | + } | ||
| 15 | +} |
-
请 注册 或 登录 后发表评论