remove node server from project
This commit is contained in:
parent
0c1eb7329d
commit
094536449d
@ -12,7 +12,7 @@ RUN npm install --only=prod
|
|||||||
|
|
||||||
COPY . /app
|
COPY . /app
|
||||||
|
|
||||||
RUN npm run build:client
|
RUN npm run build
|
||||||
|
|
||||||
|
|
||||||
FROM nginx:alpine
|
FROM nginx:alpine
|
||||||
|
|||||||
24
package.json
24
package.json
@ -12,7 +12,6 @@
|
|||||||
"@testing-library/user-event": "^7.1.2",
|
"@testing-library/user-event": "^7.1.2",
|
||||||
"antd": "^4.9.4",
|
"antd": "^4.9.4",
|
||||||
"axios": "^0.21.1",
|
"axios": "^0.21.1",
|
||||||
"cors": "^2.8.5",
|
|
||||||
"craco-less": "^1.17.1",
|
"craco-less": "^1.17.1",
|
||||||
"graphql": "^15.4.0",
|
"graphql": "^15.4.0",
|
||||||
"js-cookie": "^2.2.1",
|
"js-cookie": "^2.2.1",
|
||||||
@ -36,38 +35,21 @@
|
|||||||
"validator": "^13.5.1"
|
"validator": "^13.5.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/cors": "^2.8.8",
|
|
||||||
"@types/express": "^4.17.9",
|
|
||||||
"@types/jest": "^26.0.15",
|
"@types/jest": "^26.0.15",
|
||||||
"@types/lodash": "^4.14.165",
|
"@types/lodash": "^4.14.165",
|
||||||
"@types/luxon": "^1.25.0",
|
"@types/luxon": "^1.25.0",
|
||||||
"@types/node": "^14.14.12",
|
|
||||||
"@types/pluralize": "^0.0.29",
|
"@types/pluralize": "^0.0.29",
|
||||||
"@types/react-router-dom": "^5.1.6",
|
"@types/react-router-dom": "^5.1.6",
|
||||||
"@types/styled-components": "^5.1.2",
|
"@types/styled-components": "^5.1.2",
|
||||||
"@types/styled-system": "^5.1.10",
|
"@types/styled-system": "^5.1.10",
|
||||||
"cross-env": "^7.0.3",
|
"cross-env": "^7.0.3",
|
||||||
"express": "^4.17.1",
|
"dotenv": "^8.2.0"
|
||||||
"express-http-proxy": "^1.6.2",
|
|
||||||
"http-proxy-middleware": "^1.0.6",
|
|
||||||
"nodemon": "^2.0.6",
|
|
||||||
"rimraf": "^3.0.2",
|
|
||||||
"wait-on": "^5.2.0",
|
|
||||||
"webpack-cli": "^4.2.0",
|
|
||||||
"webpack-node-externals": "^2.5.2"
|
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "craco test",
|
"test": "craco test",
|
||||||
"eject": "react-scripts eject",
|
"eject": "react-scripts eject",
|
||||||
"dev": "cross-env NODE_ENV=development REACT_APP_CRM=dev concurrently -p name -c \"yellow,magenta,blue\" -n \"webpack-server,nodemon-server,CRA\" \"npm run dev:server:webpack\" \"npm run dev:server:nodemon\" \"npm run dev:client\"",
|
"start": "cross-env NODE_ENV=development REACT_APP_CRM=dev craco start",
|
||||||
"dev:client:only": "craco start",
|
"build": "craco build"
|
||||||
"dev:client": "wait-on -l tcp:3001 && craco start",
|
|
||||||
"dev:server": "concurrently -p name -c \"yellow,magenta\" -n \"webpack-server,nodemon-server\" \"npm run dev:server:webpack\" \"npm run dev:server:nodemon\"",
|
|
||||||
"dev:server:webpack": "webpack --config webpack.config.server.js --watch",
|
|
||||||
"dev:server:nodemon": "rimraf build/server.js && wait-on -l build/server.js && nodemon build/server.js",
|
|
||||||
"build": "npm run build:client && npm run build:server",
|
|
||||||
"build:client": "craco build",
|
|
||||||
"build:server": "webpack --config webpack.config.server.js"
|
|
||||||
},
|
},
|
||||||
"eslintConfig": {
|
"eslintConfig": {
|
||||||
"extends": "react-app"
|
"extends": "react-app"
|
||||||
|
|||||||
@ -1,11 +0,0 @@
|
|||||||
import { SERVER_PORT } from 'core/constants/urls';
|
|
||||||
|
|
||||||
export const API_HOSTNAME = window.location.hostname;
|
|
||||||
|
|
||||||
export const getServerUrl = (...url) =>
|
|
||||||
String.prototype.concat(
|
|
||||||
(process.env.NODE_ENV === 'development' &&
|
|
||||||
`http://${API_HOSTNAME}:${SERVER_PORT}`) ||
|
|
||||||
'',
|
|
||||||
...url,
|
|
||||||
);
|
|
||||||
@ -1,5 +1,4 @@
|
|||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { getServerUrl } from 'client/common/urls';
|
|
||||||
import { CORE_PROXY_URL } from 'core/constants/urls';
|
import { CORE_PROXY_URL } from 'core/constants/urls';
|
||||||
import { IPreparedData } from 'core/types/Calculation/Requests';
|
import { IPreparedData } from 'core/types/Calculation/Requests';
|
||||||
import { IGetCalculationResponse } from 'core/types/Calculation/Responses';
|
import { IGetCalculationResponse } from 'core/types/Calculation/Responses';
|
||||||
@ -11,8 +10,7 @@ export default class {
|
|||||||
new Promise((resolve, reject) => {
|
new Promise((resolve, reject) => {
|
||||||
axios
|
axios
|
||||||
.post<IGetCalculationResponse>(
|
.post<IGetCalculationResponse>(
|
||||||
getServerUrl(
|
String.prototype.concat(
|
||||||
'/proxy',
|
|
||||||
CORE_PROXY_URL,
|
CORE_PROXY_URL,
|
||||||
'/api',
|
'/api',
|
||||||
'/v1',
|
'/v1',
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
import { ApolloClient, InMemoryCache } from '@apollo/client';
|
import { ApolloClient, InMemoryCache } from '@apollo/client';
|
||||||
import { getServerUrl } from 'client/common/urls';
|
|
||||||
import { CRM_PROXY_URL } from 'core/constants/urls';
|
import { CRM_PROXY_URL } from 'core/constants/urls';
|
||||||
|
|
||||||
export default new ApolloClient({
|
export default new ApolloClient({
|
||||||
uri: getServerUrl('/proxy', CRM_PROXY_URL, '/'),
|
uri: String.prototype.concat('/proxy', CRM_PROXY_URL, '/'),
|
||||||
cache: new InMemoryCache(),
|
cache: new InMemoryCache(),
|
||||||
});
|
});
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import { getServerUrl } from 'client/common/urls';
|
|
||||||
import { CRM_PROXY_URL } from 'core/constants/urls';
|
import { CRM_PROXY_URL } from 'core/constants/urls';
|
||||||
import {
|
import {
|
||||||
ICreateKpRequest,
|
ICreateKpRequest,
|
||||||
@ -103,7 +102,11 @@ export default class {
|
|||||||
new Promise((resolve, reject) => {
|
new Promise((resolve, reject) => {
|
||||||
axios
|
axios
|
||||||
.post<IQuote>(
|
.post<IQuote>(
|
||||||
getServerUrl('/proxy', CRM_PROXY_URL, '/offer', '/leasingcalculator'),
|
String.prototype.concat(
|
||||||
|
CRM_PROXY_URL,
|
||||||
|
'/offer',
|
||||||
|
'/leasingcalculator',
|
||||||
|
),
|
||||||
data,
|
data,
|
||||||
)
|
)
|
||||||
.then(res => {
|
.then(res => {
|
||||||
|
|||||||
@ -85,7 +85,6 @@ export default async () => {
|
|||||||
calculationUrls.setUrl({
|
calculationUrls.setUrl({
|
||||||
name: 'kpUrl',
|
name: 'kpUrl',
|
||||||
url: String.prototype.concat(
|
url: String.prototype.concat(
|
||||||
'/proxy',
|
|
||||||
CRM_PROXY_URL,
|
CRM_PROXY_URL,
|
||||||
new_quote.offerprintformapi,
|
new_quote.offerprintformapi,
|
||||||
),
|
),
|
||||||
|
|||||||
@ -1,13 +1,2 @@
|
|||||||
export const SERVER_PORT = 3001;
|
|
||||||
|
|
||||||
export const CRM_URL =
|
|
||||||
process.env.REACT_APP_CRM === 'dev'
|
|
||||||
? 'http://crmgraphql-dev.evoleasing.ru'
|
|
||||||
: 'http://crm-graphql.evoleasing.ru';
|
|
||||||
export const CRM_PROXY_URL = '/crmgraphql';
|
export const CRM_PROXY_URL = '/crmgraphql';
|
||||||
|
|
||||||
export const CORE_URL =
|
|
||||||
process.env.NODE_ENV === 'development'
|
|
||||||
? 'http://localhost:5000'
|
|
||||||
: 'http://core:5000';
|
|
||||||
export const CORE_PROXY_URL = '/core';
|
export const CORE_PROXY_URL = '/core';
|
||||||
|
|||||||
@ -1,14 +1,8 @@
|
|||||||
import axios from 'axios';
|
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import ReactDOM from 'react-dom';
|
import ReactDOM from 'react-dom';
|
||||||
import App from './client/App';
|
import App from './client/App';
|
||||||
import * as serviceWorker from './client/serviceWorker';
|
import * as serviceWorker from './client/serviceWorker';
|
||||||
import './index.css';
|
import './index.css';
|
||||||
import { getServerUrl } from 'client/common/urls';
|
|
||||||
|
|
||||||
if (process.env.NODE_ENV === 'development') {
|
|
||||||
axios.defaults.baseURL = getServerUrl();
|
|
||||||
}
|
|
||||||
|
|
||||||
ReactDOM.render(
|
ReactDOM.render(
|
||||||
// <React.StrictMode>
|
// <React.StrictMode>
|
||||||
|
|||||||
@ -1,19 +0,0 @@
|
|||||||
import cors from 'cors';
|
|
||||||
import express from 'express';
|
|
||||||
import { SERVER_PORT } from './../core/constants/urls';
|
|
||||||
import routes from './routes';
|
|
||||||
|
|
||||||
const app = express();
|
|
||||||
|
|
||||||
/**EXTENTIONS */
|
|
||||||
app.use(cors({ origin: process.env.NODE_ENV === 'development' && '*' }));
|
|
||||||
/**EXTENTIONS */
|
|
||||||
|
|
||||||
/**ROUTES */
|
|
||||||
app.use('/', routes);
|
|
||||||
/**ROUTES */
|
|
||||||
|
|
||||||
app.listen(SERVER_PORT, () => {
|
|
||||||
console.log('ENV: ', process.env.NODE_ENV);
|
|
||||||
console.log(`Server now listening on port: ${SERVER_PORT}`);
|
|
||||||
});
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
import { Router } from 'express';
|
|
||||||
import proxy from './proxy';
|
|
||||||
|
|
||||||
const routes = Router();
|
|
||||||
|
|
||||||
routes.use('/proxy', proxy);
|
|
||||||
|
|
||||||
export default routes;
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
import { Router } from 'express';
|
|
||||||
import proxy from 'express-http-proxy';
|
|
||||||
import {
|
|
||||||
CRM_PROXY_URL,
|
|
||||||
CRM_URL,
|
|
||||||
CORE_URL,
|
|
||||||
CORE_PROXY_URL,
|
|
||||||
} from '../../core/constants/urls';
|
|
||||||
|
|
||||||
const router = Router();
|
|
||||||
|
|
||||||
router.use(CRM_PROXY_URL, proxy(CRM_URL));
|
|
||||||
router.use(CORE_PROXY_URL, proxy(CORE_URL));
|
|
||||||
|
|
||||||
export default router;
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"extends": "../../tsconfig.json",
|
|
||||||
"compilerOptions": {
|
|
||||||
"outDir": "../../dist",
|
|
||||||
"noEmit": false,
|
|
||||||
"sourceMap": true,
|
|
||||||
"module": "esnext",
|
|
||||||
"strict": true,
|
|
||||||
"target": "esnext",
|
|
||||||
"moduleResolution": "node",
|
|
||||||
"noImplicitAny": false
|
|
||||||
},
|
|
||||||
"exclude": ["../../build", "../client"],
|
|
||||||
"include": ["."]
|
|
||||||
}
|
|
||||||
@ -1,39 +0,0 @@
|
|||||||
const path = require('path');
|
|
||||||
const nodeExternals = require('webpack-node-externals');
|
|
||||||
|
|
||||||
module.exports = {
|
|
||||||
mode: process.env.NODE_ENV || 'development',
|
|
||||||
target: 'node',
|
|
||||||
devtool: 'inline-source-map',
|
|
||||||
entry: { server: './src/server/index.ts' },
|
|
||||||
output: {
|
|
||||||
path: path.resolve(__dirname, 'build'),
|
|
||||||
filename: '[name].js',
|
|
||||||
},
|
|
||||||
resolve: {
|
|
||||||
extensions: ['.ts', '.tsx', '.js'],
|
|
||||||
},
|
|
||||||
// don't compile node_modules
|
|
||||||
externals: [nodeExternals()],
|
|
||||||
optimization: {
|
|
||||||
splitChunks: {
|
|
||||||
chunks: 'all',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
module: {
|
|
||||||
rules: [
|
|
||||||
{
|
|
||||||
test: /\.tsx?$/,
|
|
||||||
use: [
|
|
||||||
{
|
|
||||||
loader: 'ts-loader',
|
|
||||||
options: {
|
|
||||||
// use the tsconfig in the server directory
|
|
||||||
configFile: 'src/server/tsconfig.json',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
Reference in New Issue
Block a user