1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.RouteParamsFactory = void 0;
|
4 | const route_paramtypes_enum_1 = require("@nestjs/common/enums/route-paramtypes.enum");
|
5 | class RouteParamsFactory {
|
6 | exchangeKeyForValue(key, data, { req, res, next }) {
|
7 | switch (key) {
|
8 | case route_paramtypes_enum_1.RouteParamtypes.NEXT:
|
9 | return next;
|
10 | case route_paramtypes_enum_1.RouteParamtypes.REQUEST:
|
11 | return req;
|
12 | case route_paramtypes_enum_1.RouteParamtypes.RESPONSE:
|
13 | return res;
|
14 | case route_paramtypes_enum_1.RouteParamtypes.BODY:
|
15 | return data && req.body ? req.body[data] : req.body;
|
16 | case route_paramtypes_enum_1.RouteParamtypes.PARAM:
|
17 | return data ? req.params[data] : req.params;
|
18 | case route_paramtypes_enum_1.RouteParamtypes.HOST:
|
19 | const hosts = req.hosts || {};
|
20 | return data ? hosts[data] : hosts;
|
21 | case route_paramtypes_enum_1.RouteParamtypes.QUERY:
|
22 | return data ? req.query[data] : req.query;
|
23 | case route_paramtypes_enum_1.RouteParamtypes.HEADERS:
|
24 | return data ? req.headers[data.toLowerCase()] : req.headers;
|
25 | case route_paramtypes_enum_1.RouteParamtypes.SESSION:
|
26 | return req.session;
|
27 | case route_paramtypes_enum_1.RouteParamtypes.FILE:
|
28 | return req[data || 'file'];
|
29 | case route_paramtypes_enum_1.RouteParamtypes.FILES:
|
30 | return req.files;
|
31 | case route_paramtypes_enum_1.RouteParamtypes.IP:
|
32 | return req.ip;
|
33 | default:
|
34 | return null;
|
35 | }
|
36 | }
|
37 | }
|
38 | exports.RouteParamsFactory = RouteParamsFactory;
|