mirror of https://github.com/nocodb/nocodb
flisowna
2 years ago
1 changed files with 47 additions and 0 deletions
@ -0,0 +1,47 @@
|
||||
import { Request, Response, Router } from 'express'; |
||||
import { KanbanType, MapType, ViewTypes } from 'nocodb-sdk'; |
||||
import View from '../../models/View'; |
||||
import KanbanView from '../../models/KanbanView'; |
||||
import ncMetaAclMw from '../helpers/ncMetaAclMw'; |
||||
import { Tele } from 'nc-help'; |
||||
import { metaApiMetrics } from '../helpers/apiMetrics'; |
||||
import MapView from '../../models/MapView'; |
||||
|
||||
export async function mapViewGet(req: Request, res: Response<MapType>) { |
||||
res.json(await MapView.get(req.params.mapViewId)); |
||||
} |
||||
|
||||
export async function mapViewCreate(req: Request<any, any>, res) { |
||||
Tele.emit('evt', { evt_type: 'vtable:created', show_as: 'map' }); |
||||
const view = await View.insert({ |
||||
...req.body, |
||||
// todo: sanitize
|
||||
fk_model_id: req.params.tableId, |
||||
type: ViewTypes.MAP, |
||||
}); |
||||
res.json(view); |
||||
} |
||||
|
||||
export async function mapViewUpdate(req, res) { |
||||
Tele.emit('evt', { evt_type: 'view:updated', type: 'map' }); |
||||
res.json(await MapView.update(req.params.mapViewId, req.body)); |
||||
} |
||||
|
||||
const router = Router({ mergeParams: true }); |
||||
|
||||
router.post( |
||||
'/api/v1/db/meta/tables/:tableId/maps', |
||||
metaApiMetrics, |
||||
ncMetaAclMw(mapViewCreate, 'mapViewCreate') |
||||
); |
||||
router.patch( |
||||
'/api/v1/db/meta/maps/:mapViewId', |
||||
metaApiMetrics, |
||||
ncMetaAclMw(mapViewUpdate, 'mapViewUpdate') |
||||
); |
||||
router.get( |
||||
'/api/v1/db/meta/maps/:mapViewId', |
||||
metaApiMetrics, |
||||
ncMetaAclMw(mapViewGet, 'mapViewGet') |
||||
); |
||||
export default router; |
Loading…
Reference in new issue