fix: one click demo

This commit is contained in:
Ahmed Bouhuolia
2024-08-19 21:21:39 +02:00
parent fed620505d
commit cca596b4a9
10 changed files with 270 additions and 23 deletions

View File

@@ -3,6 +3,8 @@ import { Service, Inject } from 'typedi';
import asyncMiddleware from '@/api/middleware/asyncMiddleware';
import BaseController from '@/api/controllers/BaseController';
import { OneClickDemoApplication } from '@/services/OneClickDemo/OneClickDemoApplication';
import { reset } from 'colorette';
import { body } from 'express-validator';
@Service()
export class OneClickDemoController extends BaseController {
@@ -16,6 +18,14 @@ export class OneClickDemoController extends BaseController {
const router = Router();
router.post('/one_click', asyncMiddleware(this.oneClickDemo.bind(this)));
router.post(
'/one_click_signin',
[
body('demo_id').exists(),
],
this.validationResult,
asyncMiddleware(this.oneClickSignIn.bind(this))
);
return router;
}
@@ -38,4 +48,26 @@ export class OneClickDemoController extends BaseController {
next(error);
}
}
/**
*
* @param {Request} req
* @param {Response} res
* @param {NextFunction} next
*/
private async oneClickSignIn(
req: Request,
res: Response,
next: NextFunction
) {
const { demoId } = this.matchedBodyData(req);
try {
const data = await this.oneClickDemoApp.autoSignIn(demoId);
return res.status(200).send(data);
} catch (error) {
next(error);
}
}
}