Files
ontime/apps/server/src/api-data/sheets/sheets.router.ts
T
Alex Christoffer Rasmussen 7c1d2f4554 refactor: small cleanups (#2059)
* refactor: remove unneeded async

* chore: add express Router type to all routes

* refactor: don't use index in react key

* refactor: correctly get error message in excel route

* refactor: avoid exporting muteable values
2026-04-26 17:32:50 +02:00

36 lines
1.1 KiB
TypeScript

/**
* This is a feature specific router for integration with google sheets
*/
import express, { Router } from 'express';
import {
getWorksheetMetadataFromSheet,
getWorksheetOptionsFromSheet,
readFromSheet,
requestConnection,
revokeAuthentication,
verifyAuthentication,
writeToSheet,
} from './sheets.controller.js';
import { uploadClientSecret } from './sheets.middleware.js';
import {
validateRequestConnection,
validateSheetId,
validateSheetOptions,
validateWorksheetMetadata,
} from './sheets.validation.js';
export const router: Router = express.Router();
router.get('/connect', verifyAuthentication);
router.post('/:sheetId/connect', uploadClientSecret, validateRequestConnection, requestConnection);
router.post('/revoke', revokeAuthentication);
router.post('/:sheetId/worksheet-options', validateSheetId, getWorksheetOptionsFromSheet);
router.post('/:sheetId/metadata', validateWorksheetMetadata, getWorksheetMetadataFromSheet);
router.post('/:sheetId/read', validateSheetOptions, readFromSheet);
router.post('/:sheetId/write', validateSheetOptions, writeToSheet);