import express from 'express' import { Request, Security, Route, Tags, Example, Get } from 'tsoa' export interface InfoResponse { mode: string cors: string whiteList: string[] protocol: string } @Route('SASjsApi/info') @Tags('Info') export class InfoController { /** * @summary Get server info (mode, cors, whiteList, protocol). * */ @Example({ mode: 'desktop', cors: 'enable', whiteList: ['http://example.com', 'http://example2.com'], protocol: 'http' }) @Get('/') public info(): InfoResponse { const response = { mode: process.env.MODE ?? 'desktop', cors: process.env.CORS ?? process.env.MODE === 'server' ? 'disable' : 'enable', whiteList: process.env.WHITELIST?.split(' ') ?? [], protocol: process.env.PROTOCOL ?? 'http' } return response } }