@newmo/graphql-fake-server 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/cli.d.ts +3 -0
- package/dist/esm/cli.d.ts.map +1 -1
- package/dist/esm/cli.js +51 -1
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/server.d.ts +5 -5
- package/dist/esm/server.d.ts.map +1 -1
- package/dist/esm/server.js +5 -5
- package/dist/esm/server.js.map +1 -1
- package/package.json +3 -3
- package/src/cli.ts +51 -1
- package/src/server.ts +10 -10
package/dist/esm/cli.d.ts
CHANGED
|
@@ -4,6 +4,9 @@ export declare const cli: {
|
|
|
4
4
|
schema: string | undefined;
|
|
5
5
|
mainPort: string | undefined;
|
|
6
6
|
apolloPort: string | undefined;
|
|
7
|
+
maxRegisteredSequences: string | undefined;
|
|
8
|
+
maxQueryDepth: string | undefined;
|
|
9
|
+
maxFieldRecursionDepth: string | undefined;
|
|
7
10
|
logLevel: string | undefined;
|
|
8
11
|
};
|
|
9
12
|
positionals: [];
|
package/dist/esm/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAgBA,eAAO,MAAM,GAAG
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAgBA,eAAO,MAAM,GAAG;;;;;;;;;;;CAuCd,CAAC;AACH,eAAO,MAAM,GAAG,iBAEb,UAAU,KAAS,QAAQ;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CA2FA,CAAC"}
|
package/dist/esm/cli.js
CHANGED
|
@@ -21,7 +21,6 @@ export const cli = parseArgs({
|
|
|
21
21
|
type: "string",
|
|
22
22
|
description: "Path to the schema file. e.g. schema.graphql",
|
|
23
23
|
},
|
|
24
|
-
// --port
|
|
25
24
|
mainPort: {
|
|
26
25
|
type: "string",
|
|
27
26
|
description: "Port to run the server on",
|
|
@@ -32,6 +31,21 @@ export const cli = parseArgs({
|
|
|
32
31
|
description: "Port to run the server on",
|
|
33
32
|
default: "4002",
|
|
34
33
|
},
|
|
34
|
+
maxRegisteredSequences: {
|
|
35
|
+
type: "string",
|
|
36
|
+
description: "Max number of registered sequences.",
|
|
37
|
+
default: "1000",
|
|
38
|
+
},
|
|
39
|
+
maxQueryDepth: {
|
|
40
|
+
type: "string",
|
|
41
|
+
description: "max query depth for complexity of query",
|
|
42
|
+
default: "3",
|
|
43
|
+
},
|
|
44
|
+
maxFieldRecursionDepth: {
|
|
45
|
+
type: "string",
|
|
46
|
+
description: "maxFieldRecursionDepth for creating fake data",
|
|
47
|
+
default: "4",
|
|
48
|
+
},
|
|
35
49
|
logLevel: {
|
|
36
50
|
type: "string",
|
|
37
51
|
description: "log level: debug, info, warn, error",
|
|
@@ -68,9 +82,45 @@ export const run = async ({ values, } = cli) => {
|
|
|
68
82
|
exitCode: 1,
|
|
69
83
|
};
|
|
70
84
|
}
|
|
85
|
+
const maxFieldRecursionDepth = values.maxFieldRecursionDepth
|
|
86
|
+
? Number.parseInt(values.maxFieldRecursionDepth, 10)
|
|
87
|
+
: Number.NaN;
|
|
88
|
+
if (Number.isNaN(maxFieldRecursionDepth)) {
|
|
89
|
+
logger.info(HELP);
|
|
90
|
+
return {
|
|
91
|
+
stdout: "",
|
|
92
|
+
stderr: "maxFieldRecursionDepth must be a number",
|
|
93
|
+
exitCode: 1,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
const maxQueryDepth = values.maxQueryDepth
|
|
97
|
+
? Number.parseInt(values.maxQueryDepth, 10)
|
|
98
|
+
: Number.NaN;
|
|
99
|
+
if (Number.isNaN(maxQueryDepth)) {
|
|
100
|
+
logger.info(HELP);
|
|
101
|
+
return {
|
|
102
|
+
stdout: "",
|
|
103
|
+
stderr: "maxQueryDepth must be a number",
|
|
104
|
+
exitCode: 1,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
const maxRegisteredSequences = values.maxRegisteredSequences
|
|
108
|
+
? Number.parseInt(values.maxRegisteredSequences, 10)
|
|
109
|
+
: Number.NaN;
|
|
110
|
+
if (Number.isNaN(maxRegisteredSequences)) {
|
|
111
|
+
logger.info(HELP);
|
|
112
|
+
return {
|
|
113
|
+
stdout: "",
|
|
114
|
+
stderr: "maxRegisteredSequences must be a number",
|
|
115
|
+
exitCode: 1,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
71
118
|
try {
|
|
72
119
|
const server = await createFakeServer({
|
|
73
120
|
schemaFilePath: schemaPath,
|
|
121
|
+
maxRegisteredSequences,
|
|
122
|
+
maxFieldRecursionDepth,
|
|
123
|
+
maxQueryDepth,
|
|
74
124
|
ports: {
|
|
75
125
|
fakeServer: mainPort,
|
|
76
126
|
apolloServer: apolloPort,
|
package/dist/esm/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAiB,YAAY,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,IAAI,GAAG;;;;;;;;;CASZ,CAAC;AACF,kBAAkB;AAClB,MAAM,CAAC,MAAM,GAAG,GAAG,SAAS,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE;QACL,WAAW;QACX,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8CAA8C;SAC9D;QACD,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/server.d.ts
CHANGED
|
@@ -8,18 +8,18 @@ export type CreateFakeServerOptions = {
|
|
|
8
8
|
apolloServer: number;
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* max query depth for complexity of query
|
|
12
12
|
* Default is 3
|
|
13
13
|
*/
|
|
14
|
-
|
|
14
|
+
maxQueryDepth?: number;
|
|
15
15
|
/**
|
|
16
|
-
* maxFieldRecursionDepth for
|
|
16
|
+
* maxFieldRecursionDepth for creating fake data
|
|
17
17
|
* Default is maxDepth + 1
|
|
18
18
|
*/
|
|
19
19
|
maxFieldRecursionDepth?: number;
|
|
20
20
|
/**
|
|
21
21
|
* max number of registered sequences
|
|
22
|
-
* Default is
|
|
22
|
+
* Default is 1000
|
|
23
23
|
* If the number of registered sequences exceeds this number, the oldest sequence is deleted.
|
|
24
24
|
*/
|
|
25
25
|
maxRegisteredSequences?: number;
|
|
@@ -32,7 +32,7 @@ type FakeServerInternal = {
|
|
|
32
32
|
fakeServer: number;
|
|
33
33
|
apolloServer: number;
|
|
34
34
|
};
|
|
35
|
-
|
|
35
|
+
maxQueryDepth: number;
|
|
36
36
|
maxFieldRecursionDepth: number;
|
|
37
37
|
maxRegisteredSequences: number;
|
|
38
38
|
logLevel: LogLevel;
|
package/dist/esm/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,UAAU,EAAc,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,KAAK,QAAQ,EAAgB,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,uBAAuB,GAAG;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;;;OAGG;IACH,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,UAAU,EAAc,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,KAAK,QAAQ,EAAgB,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,uBAAuB,GAAG;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACvB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE;QACH,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,QAAQ,EAAE,QAAQ,CAAC;CACtB,CAAC;AAiBF,MAAM,MAAM,4BAA4B,GAAG;IACvC,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACrC,CAAC;AACF,MAAM,MAAM,yBAAyB,GAAG;IACpC,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,GAAG,yBAAyB,CAAC;AAC/F,MAAM,MAAM,yBAAyB,GAC/B;IACI,EAAE,EAAE,IAAI,CAAC;CACZ,GACD;IACI,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AA+MR,eAAO,MAAM,gBAAgB,YAAmB,uBAAuB;;;;;;;;EAuBtE,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAAmB,kBAAkB;;;;;;;;EA6BzE,CAAC"}
|
package/dist/esm/server.js
CHANGED
|
@@ -21,7 +21,7 @@ const creteApolloServer = async (options) => {
|
|
|
21
21
|
}),
|
|
22
22
|
mocks,
|
|
23
23
|
}),
|
|
24
|
-
validationRules: [depthLimit(options.
|
|
24
|
+
validationRules: [depthLimit(options.maxQueryDepth)],
|
|
25
25
|
});
|
|
26
26
|
};
|
|
27
27
|
const validateSequenceRegistration = (data) => {
|
|
@@ -216,14 +216,14 @@ export const createFakeServer = async (options) => {
|
|
|
216
216
|
fakeServer: options.ports?.fakeServer ?? 4000,
|
|
217
217
|
apolloServer: options.ports?.apolloServer ?? 4001,
|
|
218
218
|
};
|
|
219
|
-
const
|
|
220
|
-
const maxFieldRecursionDepth = options.maxFieldRecursionDepth ??
|
|
221
|
-
const maxRegisteredSequences = options.maxRegisteredSequences ??
|
|
219
|
+
const maxQueryDepth = options.maxQueryDepth ?? 3;
|
|
220
|
+
const maxFieldRecursionDepth = options.maxFieldRecursionDepth ?? maxQueryDepth + 1;
|
|
221
|
+
const maxRegisteredSequences = options.maxRegisteredSequences ?? 1000;
|
|
222
222
|
return createFakeServerInternal({
|
|
223
223
|
ports,
|
|
224
224
|
schema,
|
|
225
225
|
mockObject,
|
|
226
|
-
|
|
226
|
+
maxQueryDepth,
|
|
227
227
|
maxFieldRecursionDepth,
|
|
228
228
|
maxRegisteredSequences,
|
|
229
229
|
logLevel: options.logLevel ?? "info",
|
package/dist/esm/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,kBAAkB;AAClB,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAmB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAiB,YAAY,EAAE,MAAM,aAAa,CAAC;AAuC1D,MAAM,iBAAiB,GAAG,KAAK,EAAE,OAA2B,EAAE,EAAE;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAC5B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACpD,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC,CACL,CAAC;IACF,OAAO,IAAI,YAAY,CAAC;QACpB,MAAM,EAAE,gBAAgB,CAAC;YACrB,MAAM,EAAE,oBAAoB,CAAC;gBACzB,QAAQ,EAAE,OAAO,CAAC,MAAM;aAC3B,CAAC;YACF,KAAK;SACR,CAAC;QACF,eAAe,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@newmo/graphql-fake-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "GraphQL fake server for testing",
|
|
6
6
|
"keywords": [
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"@graphql-tools/mock": "^9.0.2",
|
|
52
52
|
"@graphql-tools/schema": "^10.0.3",
|
|
53
53
|
"@hono/node-server": "^1.11.1",
|
|
54
|
-
"@newmo/graphql-fake-core": "0.
|
|
54
|
+
"@newmo/graphql-fake-core": "0.5.0",
|
|
55
55
|
"graphql-depth-limit": "^1.1.0",
|
|
56
56
|
"hono": "^4.3.2"
|
|
57
57
|
},
|
|
@@ -77,5 +77,5 @@
|
|
|
77
77
|
"access": "public",
|
|
78
78
|
"registry": "https://registry.npmjs.org/"
|
|
79
79
|
},
|
|
80
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "1e88ed12568a98b30277f4e98e7b65501f778782"
|
|
81
81
|
}
|
package/src/cli.ts
CHANGED
|
@@ -22,7 +22,6 @@ export const cli = parseArgs({
|
|
|
22
22
|
type: "string",
|
|
23
23
|
description: "Path to the schema file. e.g. schema.graphql",
|
|
24
24
|
},
|
|
25
|
-
// --port
|
|
26
25
|
mainPort: {
|
|
27
26
|
type: "string",
|
|
28
27
|
description: "Port to run the server on",
|
|
@@ -33,6 +32,21 @@ export const cli = parseArgs({
|
|
|
33
32
|
description: "Port to run the server on",
|
|
34
33
|
default: "4002",
|
|
35
34
|
},
|
|
35
|
+
maxRegisteredSequences: {
|
|
36
|
+
type: "string",
|
|
37
|
+
description: "Max number of registered sequences.",
|
|
38
|
+
default: "1000",
|
|
39
|
+
},
|
|
40
|
+
maxQueryDepth: {
|
|
41
|
+
type: "string",
|
|
42
|
+
description: "max query depth for complexity of query",
|
|
43
|
+
default: "3",
|
|
44
|
+
},
|
|
45
|
+
maxFieldRecursionDepth: {
|
|
46
|
+
type: "string",
|
|
47
|
+
description: "maxFieldRecursionDepth for creating fake data",
|
|
48
|
+
default: "4",
|
|
49
|
+
},
|
|
36
50
|
logLevel: {
|
|
37
51
|
type: "string",
|
|
38
52
|
description: "log level: debug, info, warn, error",
|
|
@@ -76,9 +90,45 @@ export const run = async ({
|
|
|
76
90
|
exitCode: 1,
|
|
77
91
|
};
|
|
78
92
|
}
|
|
93
|
+
const maxFieldRecursionDepth = values.maxFieldRecursionDepth
|
|
94
|
+
? Number.parseInt(values.maxFieldRecursionDepth, 10)
|
|
95
|
+
: Number.NaN;
|
|
96
|
+
if (Number.isNaN(maxFieldRecursionDepth)) {
|
|
97
|
+
logger.info(HELP);
|
|
98
|
+
return {
|
|
99
|
+
stdout: "",
|
|
100
|
+
stderr: "maxFieldRecursionDepth must be a number",
|
|
101
|
+
exitCode: 1,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
const maxQueryDepth = values.maxQueryDepth
|
|
105
|
+
? Number.parseInt(values.maxQueryDepth, 10)
|
|
106
|
+
: Number.NaN;
|
|
107
|
+
if (Number.isNaN(maxQueryDepth)) {
|
|
108
|
+
logger.info(HELP);
|
|
109
|
+
return {
|
|
110
|
+
stdout: "",
|
|
111
|
+
stderr: "maxQueryDepth must be a number",
|
|
112
|
+
exitCode: 1,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
const maxRegisteredSequences = values.maxRegisteredSequences
|
|
116
|
+
? Number.parseInt(values.maxRegisteredSequences, 10)
|
|
117
|
+
: Number.NaN;
|
|
118
|
+
if (Number.isNaN(maxRegisteredSequences)) {
|
|
119
|
+
logger.info(HELP);
|
|
120
|
+
return {
|
|
121
|
+
stdout: "",
|
|
122
|
+
stderr: "maxRegisteredSequences must be a number",
|
|
123
|
+
exitCode: 1,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
79
126
|
try {
|
|
80
127
|
const server = await createFakeServer({
|
|
81
128
|
schemaFilePath: schemaPath,
|
|
129
|
+
maxRegisteredSequences,
|
|
130
|
+
maxFieldRecursionDepth,
|
|
131
|
+
maxQueryDepth,
|
|
82
132
|
ports: {
|
|
83
133
|
fakeServer: mainPort,
|
|
84
134
|
apolloServer: apolloPort,
|
package/src/server.ts
CHANGED
|
@@ -19,18 +19,18 @@ export type CreateFakeServerOptions = {
|
|
|
19
19
|
apolloServer: number;
|
|
20
20
|
};
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
22
|
+
* max query depth for complexity of query
|
|
23
23
|
* Default is 3
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
maxQueryDepth?: number;
|
|
26
26
|
/**
|
|
27
|
-
* maxFieldRecursionDepth for
|
|
27
|
+
* maxFieldRecursionDepth for creating fake data
|
|
28
28
|
* Default is maxDepth + 1
|
|
29
29
|
*/
|
|
30
30
|
maxFieldRecursionDepth?: number;
|
|
31
31
|
/**
|
|
32
32
|
* max number of registered sequences
|
|
33
|
-
* Default is
|
|
33
|
+
* Default is 1000
|
|
34
34
|
* If the number of registered sequences exceeds this number, the oldest sequence is deleted.
|
|
35
35
|
*/
|
|
36
36
|
maxRegisteredSequences?: number;
|
|
@@ -44,7 +44,7 @@ type FakeServerInternal = {
|
|
|
44
44
|
fakeServer: number;
|
|
45
45
|
apolloServer: number;
|
|
46
46
|
};
|
|
47
|
-
|
|
47
|
+
maxQueryDepth: number;
|
|
48
48
|
maxFieldRecursionDepth: number;
|
|
49
49
|
maxRegisteredSequences: number;
|
|
50
50
|
logLevel: LogLevel;
|
|
@@ -62,7 +62,7 @@ const creteApolloServer = async (options: FakeServerInternal) => {
|
|
|
62
62
|
}),
|
|
63
63
|
mocks,
|
|
64
64
|
}),
|
|
65
|
-
validationRules: [depthLimit(options.
|
|
65
|
+
validationRules: [depthLimit(options.maxQueryDepth)],
|
|
66
66
|
});
|
|
67
67
|
};
|
|
68
68
|
export type RegisterSequenceNetworkError = {
|
|
@@ -302,14 +302,14 @@ export const createFakeServer = async (options: CreateFakeServerOptions) => {
|
|
|
302
302
|
fakeServer: options.ports?.fakeServer ?? 4000,
|
|
303
303
|
apolloServer: options.ports?.apolloServer ?? 4001,
|
|
304
304
|
};
|
|
305
|
-
const
|
|
306
|
-
const maxFieldRecursionDepth = options.maxFieldRecursionDepth ??
|
|
307
|
-
const maxRegisteredSequences = options.maxRegisteredSequences ??
|
|
305
|
+
const maxQueryDepth = options.maxQueryDepth ?? 3;
|
|
306
|
+
const maxFieldRecursionDepth = options.maxFieldRecursionDepth ?? maxQueryDepth + 1;
|
|
307
|
+
const maxRegisteredSequences = options.maxRegisteredSequences ?? 1000;
|
|
308
308
|
return createFakeServerInternal({
|
|
309
309
|
ports,
|
|
310
310
|
schema,
|
|
311
311
|
mockObject,
|
|
312
|
-
|
|
312
|
+
maxQueryDepth,
|
|
313
313
|
maxFieldRecursionDepth,
|
|
314
314
|
maxRegisteredSequences,
|
|
315
315
|
logLevel: options.logLevel ?? "info",
|