mirror of
https://github.com/aleleba/create-node-ts-graphql-server.git
synced 2025-04-19 14:17:59 -06:00
PR-780243: adding only one source of truth.
This commit is contained in:
parent
d65cbe8b37
commit
4881de8667
@ -1,6 +1,15 @@
|
|||||||
|
const { pathsToModuleNameMapper } = require('ts-jest');
|
||||||
|
const { compilerOptions } = require('./tsconfig');
|
||||||
|
|
||||||
|
const aliases = pathsToModuleNameMapper(compilerOptions.paths, {
|
||||||
|
prefix: '<rootDir>'
|
||||||
|
});
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
testEnvironment: 'node',
|
testEnvironment: 'node',
|
||||||
transform: {
|
transform: {
|
||||||
"^.+\\.ts$": "ts-jest"
|
"^.+\\.ts$": "ts-jest"
|
||||||
|
},moduleNameMapper: {
|
||||||
|
...aliases,
|
||||||
},
|
},
|
||||||
};
|
};
|
13
package-lock.json
generated
13
package-lock.json
generated
@ -45,6 +45,7 @@
|
|||||||
"eslint-webpack-plugin": "^4.0.0",
|
"eslint-webpack-plugin": "^4.0.0",
|
||||||
"jest": "^29.5.0",
|
"jest": "^29.5.0",
|
||||||
"nodemon": "^2.0.21",
|
"nodemon": "^2.0.21",
|
||||||
|
"resolve-ts-aliases": "^1.0.1",
|
||||||
"supertest": "^6.3.3",
|
"supertest": "^6.3.3",
|
||||||
"ts-jest": "^29.0.5",
|
"ts-jest": "^29.0.5",
|
||||||
"ts-loader": "^9.4.2",
|
"ts-loader": "^9.4.2",
|
||||||
@ -9425,6 +9426,12 @@
|
|||||||
"node": ">=4"
|
"node": ">=4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/resolve-ts-aliases": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/resolve-ts-aliases/-/resolve-ts-aliases-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-BEFJ2lO9FhuJ+QVK8ZJxuDaFM2/oXt0YJJU9bS2R4zoWfMQOmrT0fLeSClXo7PMAD/kEbRfcGUHqhYKn/ZFPOg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/resolve.exports": {
|
"node_modules/resolve.exports": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz",
|
||||||
@ -17885,6 +17892,12 @@
|
|||||||
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"resolve-ts-aliases": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/resolve-ts-aliases/-/resolve-ts-aliases-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-BEFJ2lO9FhuJ+QVK8ZJxuDaFM2/oXt0YJJU9bS2R4zoWfMQOmrT0fLeSClXo7PMAD/kEbRfcGUHqhYKn/ZFPOg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"resolve.exports": {
|
"resolve.exports": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.0.tgz",
|
||||||
|
@ -66,6 +66,7 @@
|
|||||||
"eslint-webpack-plugin": "^4.0.0",
|
"eslint-webpack-plugin": "^4.0.0",
|
||||||
"jest": "^29.5.0",
|
"jest": "^29.5.0",
|
||||||
"nodemon": "^2.0.21",
|
"nodemon": "^2.0.21",
|
||||||
|
"resolve-ts-aliases": "^1.0.1",
|
||||||
"supertest": "^6.3.3",
|
"supertest": "^6.3.3",
|
||||||
"ts-jest": "^29.0.5",
|
"ts-jest": "^29.0.5",
|
||||||
"ts-loader": "^9.4.2",
|
"ts-loader": "^9.4.2",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
import { getTest, addText } from '../../controllers/controllerGraphQL';
|
import { getTest, addText } from '@controllerGraphQL';
|
||||||
|
|
||||||
// A map of functions which return data for the schema.
|
// A map of functions which return data for the schema.
|
||||||
const resolvers = {
|
const resolvers = {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { makeExecutableSchema } from '@graphql-tools/schema';
|
import { makeExecutableSchema } from '@graphql-tools/schema';
|
||||||
import resolvers from'../resolvers';
|
import resolvers from'@GraphQL/resolvers';
|
||||||
import Test from './Test.gql';
|
import Test from './Test.gql';
|
||||||
|
|
||||||
// The GraphQL schema
|
// The GraphQL schema
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
import express from 'express'; //express
|
import express from 'express'; //express
|
||||||
import { graphqlHTTP } from 'express-graphql';
|
import { graphqlHTTP } from 'express-graphql';
|
||||||
import { config } from '../../config';
|
import { config } from '@config';
|
||||||
import schema from './schema';
|
import schema from '@GraphQL/schema';
|
||||||
|
|
||||||
const server = express.Router();//Router de Express
|
const server = express.Router();//Router de Express
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
import { getTestModel, addTextModel } from '../../models';
|
import { getTestModel, addTextModel } from '@models';
|
||||||
|
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
export const getTest = async ({rootValue, args, context}) => {
|
export const getTest = async ({rootValue, args, context}) => {
|
||||||
|
@ -6,11 +6,11 @@ import cors from 'cors';
|
|||||||
import cookieParser from 'cookie-parser';
|
import cookieParser from 'cookie-parser';
|
||||||
import { useServer } from 'graphql-ws/lib/use/ws';
|
import { useServer } from 'graphql-ws/lib/use/ws';
|
||||||
import { execute, subscribe } from 'graphql';
|
import { execute, subscribe } from 'graphql';
|
||||||
import GraphQLserver from './GraphQL/server';// Server of GraphQL,
|
import GraphQLserver from '@GraphQL/server';// Server of GraphQL,
|
||||||
import expressPlayground from 'graphql-playground-middleware-express';
|
import expressPlayground from 'graphql-playground-middleware-express';
|
||||||
import schema from './GraphQL/schema';
|
import schema from '@GraphQL/schema';
|
||||||
import { config } from '../config';
|
import { config } from '@config';
|
||||||
import apiRouter from './routes';
|
import apiRouter from '@routes';
|
||||||
|
|
||||||
const app = express(), //creating app
|
const app = express(), //creating app
|
||||||
whitelist = config.WHITELIST_URLS,
|
whitelist = config.WHITELIST_URLS,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import server from '../../index';
|
import server from '@src';
|
||||||
import supertest from 'supertest';
|
import supertest from 'supertest';
|
||||||
describe('global server tests', () => {
|
describe('global server tests', () => {
|
||||||
let request;
|
let request;
|
||||||
|
@ -6,6 +6,23 @@
|
|||||||
"moduleResolution": "node",
|
"moduleResolution": "node",
|
||||||
"sourceMap": true,
|
"sourceMap": true,
|
||||||
"typeRoots" : ["./src/@types", "./node_modules/@types"],
|
"typeRoots" : ["./src/@types", "./node_modules/@types"],
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"@src/*": ["src/*"],
|
||||||
|
"@src": ["src"],
|
||||||
|
"@routes*": ["src/routes/*"],
|
||||||
|
"@routes": ["src/routes"],
|
||||||
|
"@controllers/*": ["src/controllers/*"],
|
||||||
|
"@controllers": ["src/controllers"],
|
||||||
|
"@models/*": ["src/models/*"],
|
||||||
|
"@models": ["src/models"],
|
||||||
|
"@controllerGraphQL/*": ["src/controllers/controllerGraphQL/*"],
|
||||||
|
"@controllerGraphQL": ["src/controllers/controllerGraphQL"],
|
||||||
|
"@GraphQL/*": ["src/GraphQL/*"],
|
||||||
|
"@GraphQL": ["src/GraphQL"],
|
||||||
|
"@config/*": ["config/*"],
|
||||||
|
"@config": ["config"]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"lib": ["es2015"]
|
"lib": ["es2015"]
|
||||||
}
|
}
|
@ -4,11 +4,13 @@ import { CleanWebpackPlugin } from 'clean-webpack-plugin';
|
|||||||
import ESLintPlugin from 'eslint-webpack-plugin';
|
import ESLintPlugin from 'eslint-webpack-plugin';
|
||||||
import nodeExternals from 'webpack-node-externals';
|
import nodeExternals from 'webpack-node-externals';
|
||||||
import WebpackShellPluginNext from 'webpack-shell-plugin-next';
|
import WebpackShellPluginNext from 'webpack-shell-plugin-next';
|
||||||
|
import { resolveTsAliases } from 'resolve-ts-aliases';
|
||||||
import { deFaultValues } from './config';
|
import { deFaultValues } from './config';
|
||||||
|
|
||||||
const ROOT_DIR = path.resolve(__dirname);
|
const ROOT_DIR = path.resolve(__dirname);
|
||||||
const resolvePath = (...args) => path.resolve(ROOT_DIR, ...args);
|
const resolvePath = (...args) => path.resolve(ROOT_DIR, ...args);
|
||||||
const BUILD_DIR = resolvePath('build');
|
const BUILD_DIR = resolvePath('build');
|
||||||
|
const alias = resolveTsAliases(path.resolve('tsconfig.json'));
|
||||||
|
|
||||||
const config = {
|
const config = {
|
||||||
entry: './src/index.ts',
|
entry: './src/index.ts',
|
||||||
@ -21,13 +23,7 @@ const config = {
|
|||||||
},
|
},
|
||||||
resolve: {
|
resolve: {
|
||||||
extensions: ['.js', '.ts', '.json', '.gql'],
|
extensions: ['.js', '.ts', '.json', '.gql'],
|
||||||
alias: {
|
alias,
|
||||||
'@controllers': path.resolve(__dirname, 'controllers/'),
|
|
||||||
'@models': path.resolve(__dirname, 'models/'),
|
|
||||||
'@controllerGraphQL': path.resolve(__dirname, 'controllers/controllerGraphQL/'),
|
|
||||||
'@GraphQL': path.resolve(__dirname, 'GraphQL/'),
|
|
||||||
'@config': path.resolve(__dirname, 'config/'),
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
mode: 'development',
|
mode: 'development',
|
||||||
module: {
|
module: {
|
||||||
|
@ -4,11 +4,13 @@ import TerserPlugin from 'terser-webpack-plugin';
|
|||||||
import { CleanWebpackPlugin } from 'clean-webpack-plugin';
|
import { CleanWebpackPlugin } from 'clean-webpack-plugin';
|
||||||
import ESLintPlugin from 'eslint-webpack-plugin';
|
import ESLintPlugin from 'eslint-webpack-plugin';
|
||||||
import nodeExternals from 'webpack-node-externals';
|
import nodeExternals from 'webpack-node-externals';
|
||||||
|
import { resolveTsAliases } from 'resolve-ts-aliases';
|
||||||
import { deFaultValues } from './config';
|
import { deFaultValues } from './config';
|
||||||
|
|
||||||
const ROOT_DIR = path.resolve(__dirname);
|
const ROOT_DIR = path.resolve(__dirname);
|
||||||
const resolvePath = (...args) => path.resolve(ROOT_DIR, ...args);
|
const resolvePath = (...args) => path.resolve(ROOT_DIR, ...args);
|
||||||
const BUILD_DIR = resolvePath('build');
|
const BUILD_DIR = resolvePath('build');
|
||||||
|
const alias = resolveTsAliases(path.resolve('tsconfig.json'));
|
||||||
|
|
||||||
const config = {
|
const config = {
|
||||||
entry: './src/index.ts',
|
entry: './src/index.ts',
|
||||||
@ -20,13 +22,7 @@ const config = {
|
|||||||
},
|
},
|
||||||
resolve: {
|
resolve: {
|
||||||
extensions: ['.js', '.ts', '.json', '.gql'],
|
extensions: ['.js', '.ts', '.json', '.gql'],
|
||||||
alias: {
|
alias,
|
||||||
'@controllers': path.resolve(__dirname, 'controllers/'),
|
|
||||||
'@models': path.resolve(__dirname, 'models/'),
|
|
||||||
'@controllerGraphQL': path.resolve(__dirname, 'controllers/controllerGraphQL/'),
|
|
||||||
'@GraphQL': path.resolve(__dirname, 'GraphQL/'),
|
|
||||||
'@config': path.resolve(__dirname, 'config/'),
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
mode: 'production',
|
mode: 'production',
|
||||||
module: {
|
module: {
|
||||||
|
Loading…
Reference in New Issue
Block a user