Refactor backend to import/export syntax and update deps
This commit is contained in:
parent
1463773480
commit
7d0f3898de
20 changed files with 3168 additions and 685 deletions
|
|
@ -1,61 +1,61 @@
|
|||
require('dotenv').config();
|
||||
import { config } from 'dotenv'
|
||||
import { Datastore } from '@google-cloud/datastore'
|
||||
import express from 'express'
|
||||
import cors from 'cors'
|
||||
|
||||
const { Datastore } = require('@google-cloud/datastore');
|
||||
const express = require('express');
|
||||
const cors = require('cors');
|
||||
import packageJson from './package.json'
|
||||
|
||||
const package = require('./package.json');
|
||||
import {
|
||||
stats,
|
||||
getEvent,
|
||||
createEvent,
|
||||
getPeople,
|
||||
createPerson,
|
||||
login,
|
||||
updatePerson,
|
||||
taskCleanup,
|
||||
taskRemoveOrphans,
|
||||
} from './routes'
|
||||
|
||||
const stats = require('./routes/stats');
|
||||
const getEvent = require('./routes/getEvent');
|
||||
const createEvent = require('./routes/createEvent');
|
||||
const getPeople = require('./routes/getPeople');
|
||||
const createPerson = require('./routes/createPerson');
|
||||
const login = require('./routes/login');
|
||||
const updatePerson = require('./routes/updatePerson');
|
||||
config()
|
||||
|
||||
const taskCleanup = require('./routes/taskCleanup');
|
||||
const taskLegacyCleanup = require('./routes/taskLegacyCleanup');
|
||||
const taskRemoveOrphans = require('./routes/taskRemoveOrphans');
|
||||
|
||||
const app = express();
|
||||
const port = 8080;
|
||||
const app = express()
|
||||
const port = 8080
|
||||
const corsOptions = {
|
||||
origin: process.env.NODE_ENV === 'production' ? 'https://crab.fit' : 'http://localhost:5173',
|
||||
};
|
||||
origin: process.env.NODE_ENV === 'production' ? 'https://crab.fit' : 'http://localhost:5173',
|
||||
}
|
||||
|
||||
const datastore = new Datastore({
|
||||
keyFilename: process.env.GOOGLE_APPLICATION_CREDENTIALS,
|
||||
});
|
||||
keyFilename: process.env.GOOGLE_APPLICATION_CREDENTIALS,
|
||||
})
|
||||
|
||||
app.use(express.json());
|
||||
app.use((req, res, next) => {
|
||||
req.datastore = datastore;
|
||||
app.use(express.json())
|
||||
app.use((req, _res, next) => {
|
||||
req.datastore = datastore
|
||||
req.types = {
|
||||
event: process.env.NODE_ENV === 'production' ? 'Event' : 'DevEvent',
|
||||
person: process.env.NODE_ENV === 'production' ? 'Person' : 'DevPerson',
|
||||
stats: process.env.NODE_ENV === 'production' ? 'Stats' : 'DevStats',
|
||||
};
|
||||
next();
|
||||
});
|
||||
app.options('*', cors(corsOptions));
|
||||
app.use(cors(corsOptions));
|
||||
}
|
||||
next()
|
||||
})
|
||||
app.options('*', cors(corsOptions))
|
||||
app.use(cors(corsOptions))
|
||||
|
||||
app.get('/', (req, res) => res.send(`Crabfit API v${package.version}`));
|
||||
app.get('/', (_req, res) => res.send(`Crabfit API v${packageJson.version}`))
|
||||
|
||||
app.get('/stats', stats);
|
||||
app.get('/event/:eventId', getEvent);
|
||||
app.post('/event', createEvent);
|
||||
app.get('/event/:eventId/people', getPeople);
|
||||
app.post('/event/:eventId/people', createPerson);
|
||||
app.post('/event/:eventId/people/:personName', login);
|
||||
app.patch('/event/:eventId/people/:personName', updatePerson);
|
||||
app.get('/stats', stats)
|
||||
app.get('/event/:eventId', getEvent)
|
||||
app.post('/event', createEvent)
|
||||
app.get('/event/:eventId/people', getPeople)
|
||||
app.post('/event/:eventId/people', createPerson)
|
||||
app.post('/event/:eventId/people/:personName', login)
|
||||
app.patch('/event/:eventId/people/:personName', updatePerson)
|
||||
|
||||
// Tasks
|
||||
app.get('/tasks/cleanup', taskCleanup);
|
||||
app.get('/tasks/legacyCleanup', taskLegacyCleanup);
|
||||
app.get('/tasks/removeOrphans', taskRemoveOrphans);
|
||||
app.get('/tasks/cleanup', taskCleanup)
|
||||
app.get('/tasks/removeOrphans', taskRemoveOrphans)
|
||||
|
||||
app.listen(port, () => {
|
||||
console.log(`Crabfit API listening at http://localhost:${port} in ${process.env.NODE_ENV === 'production' ? 'prod' : 'dev'} mode`)
|
||||
});
|
||||
console.log(`Crabfit API listening at http://localhost:${port} in ${process.env.NODE_ENV === 'production' ? 'prod' : 'dev'} mode`)
|
||||
})
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue