1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.GqlParamsFactory = void 0;
|
4 | const gql_paramtype_enum_1 = require("../enums/gql-paramtype.enum");
|
5 | const normalize_resolver_args_1 = require("../utils/normalize-resolver-args");
|
6 | class GqlParamsFactory {
|
7 | exchangeKeyForValue(type, data, args) {
|
8 | if (!args) {
|
9 | return null;
|
10 | }
|
11 | args = (0, normalize_resolver_args_1.normalizeResolverArgs)(args);
|
12 | switch (type) {
|
13 | case gql_paramtype_enum_1.GqlParamtype.ROOT:
|
14 | return args[0];
|
15 | case gql_paramtype_enum_1.GqlParamtype.ARGS:
|
16 | return data && args[1] ? args[1][data] : args[1];
|
17 | case gql_paramtype_enum_1.GqlParamtype.CONTEXT:
|
18 | return data && args[2] ? args[2][data] : args[2];
|
19 | case gql_paramtype_enum_1.GqlParamtype.INFO:
|
20 | return data && args[3] ? args[3][data] : args[3];
|
21 | default:
|
22 | return null;
|
23 | }
|
24 | }
|
25 | }
|
26 | exports.GqlParamsFactory = GqlParamsFactory;
|