1- import express , { Request , Response } from 'express' ;
1+ import express from 'express' ;
22import morgan from 'morgan' ;
33
44import { createLogger } from './logger' ;
5+ import medicationRoutes from './routes/medicationRoutes' ;
6+ import reminderRoutes from './routes/reminderRoutes' ;
57import userRoutes from './routes/userRoutes' ;
6- import { HTTP_400_BAD_REQUEST } from './status' ;
8+ import { homeAssistantHeaders } from './middlewares/homeAssistantHeaders' ;
9+ import { errorHandling } from './middlewares/errorHandling' ;
10+ import { applicationJson } from './middlewares/applicationJson' ;
711
812const app = express ( ) ;
913
@@ -15,39 +19,15 @@ app.use(morgan('dev', {
1519 } ,
1620} ) ) ;
1721
22+ app . use ( applicationJson ) ;
1823app . use ( express . json ( ) ) ;
1924
20- app . use ( ( request : Request , response : Response , next ) => {
21- const homeAssistantUserId = request . get ( 'x-remote-user-id' ) ;
22- if ( homeAssistantUserId === undefined ) {
23- response
24- . status ( HTTP_400_BAD_REQUEST )
25- . json ( { message : 'Missing required header: x-remote-user-id.' } ) ;
26- return ;
27- }
28- request . homeAssistantUserId = homeAssistantUserId ;
29-
30- const homeAssistantUserName = request . get ( 'x-remote-user-name' ) ;
31- if ( homeAssistantUserName === undefined ) {
32- response
33- . status ( HTTP_400_BAD_REQUEST )
34- . json ( { message : 'Missing required header: x-remote-user-name.' } ) ;
35- return ;
36- }
37- request . homeAssistantUserName = homeAssistantUserName ;
38-
39- const homeAssistantUserDisplayName = request . get ( 'x-remote-user-display-name' ) ;
40- if ( homeAssistantUserDisplayName === undefined ) {
41- response
42- . status ( HTTP_400_BAD_REQUEST )
43- . json ( { message : 'Missing required header: x-remote-user-display-name.' } ) ;
44- return ;
45- }
46- request . homeAssistantUserDisplayName = homeAssistantUserDisplayName ;
47-
48- next ( ) ;
49- } ) ;
25+ app . use ( homeAssistantHeaders ) ;
5026
27+ app . use ( '/medication' , medicationRoutes ) ;
28+ app . use ( '/reminder' , reminderRoutes ) ;
5129app . use ( '/user' , userRoutes ) ;
5230
31+ app . use ( errorHandling ) ;
32+
5333export default app ;
0 commit comments