@graphitation/supermassive 3.8.0-alpha.3 → 3.8.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/.eslintcache +1 -1
- package/CHANGELOG.md +5 -5
- package/hooks.md +64 -0
- package/lib/executeWithoutSchema.d.ts.map +1 -1
- package/lib/executeWithoutSchema.js +132 -70
- package/lib/executeWithoutSchema.js.map +2 -2
- package/lib/executeWithoutSchema.mjs +132 -70
- package/lib/executeWithoutSchema.mjs.map +2 -2
- package/lib/hooks/types.d.ts +69 -9
- package/lib/hooks/types.d.ts.map +1 -1
- package/lib/hooks/types.js.map +1 -1
- package/package.json +1 -1
package/lib/hooks/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { OperationDefinitionNode } from "graphql";
|
|
2
2
|
import type { ResolveInfo, TotalExecutionResult } from "../types";
|
|
3
|
+
import { PromiseOrValue } from "../jsutils/PromiseOrValue";
|
|
3
4
|
interface BaseExecuteHookArgs<ResolveContext> {
|
|
4
5
|
context: ResolveContext;
|
|
5
6
|
}
|
|
@@ -31,37 +32,96 @@ export interface BeforeSubscriptionEventEmitHookArgs<ResolveContext> extends Bas
|
|
|
31
32
|
eventPayload: unknown;
|
|
32
33
|
}
|
|
33
34
|
export interface BeforeFieldResolveHook<ResolveContext = unknown, BeforeHookContext = unknown> {
|
|
34
|
-
(args: BaseExecuteFieldHookArgs<ResolveContext>):
|
|
35
|
+
(args: BaseExecuteFieldHookArgs<ResolveContext>): PromiseOrValue<BeforeHookContext> | PromiseOrValue<Error>;
|
|
35
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Represents a user in the system.
|
|
39
|
+
*/
|
|
36
40
|
export interface BeforeFieldSubscribe<ResolveContext = unknown, BeforeHookContext = unknown> {
|
|
37
|
-
(args: BaseExecuteFieldHookArgs<ResolveContext>):
|
|
41
|
+
(args: BaseExecuteFieldHookArgs<ResolveContext>): PromiseOrValue<BeforeHookContext> | PromiseOrValue<Error>;
|
|
38
42
|
}
|
|
39
43
|
export interface AfterFieldResolveHook<ResolveContext = unknown, BeforeHookContext = unknown, AfterHookContext = BeforeHookContext> {
|
|
40
|
-
(args: AfterFieldResolveHookArgs<ResolveContext, BeforeHookContext>): AfterHookContext |
|
|
44
|
+
(args: AfterFieldResolveHookArgs<ResolveContext, BeforeHookContext>): AfterHookContext | Error;
|
|
41
45
|
}
|
|
42
46
|
export interface AfterFieldSubscribe<ResolveContext = unknown, BeforeHookContext = unknown, AfterHookContext = BeforeHookContext> {
|
|
43
|
-
(args: AfterFieldSubscribeHookArgs<ResolveContext, BeforeHookContext>): AfterHookContext |
|
|
47
|
+
(args: AfterFieldSubscribeHookArgs<ResolveContext, BeforeHookContext>): AfterHookContext | Error;
|
|
44
48
|
}
|
|
45
49
|
export interface AfterFieldCompleteHook<ResolveContext = unknown, AfterHookContext = unknown> {
|
|
46
|
-
(args: AfterFieldCompleteHookArgs<ResolveContext, AfterHookContext>): void |
|
|
50
|
+
(args: AfterFieldCompleteHookArgs<ResolveContext, AfterHookContext>): void | Error;
|
|
47
51
|
}
|
|
48
52
|
export interface AfterBuildResponseHook<ResolveContext = unknown> {
|
|
49
|
-
(args: AfterBuildResponseHookArgs<ResolveContext>): void |
|
|
53
|
+
(args: AfterBuildResponseHookArgs<ResolveContext>): void | Error;
|
|
50
54
|
}
|
|
51
55
|
export interface BeforeOperationExecuteHook<ResolveContext = unknown> {
|
|
52
|
-
(args: BaseExecuteOperationHookArgs<ResolveContext>):
|
|
56
|
+
(args: BaseExecuteOperationHookArgs<ResolveContext>): PromiseOrValue<void> | PromiseOrValue<Error>;
|
|
53
57
|
}
|
|
54
58
|
export interface BeforeSubscriptionEventEmitHook<ResolveContext = unknown> {
|
|
55
|
-
(args: BeforeSubscriptionEventEmitHookArgs<ResolveContext>):
|
|
59
|
+
(args: BeforeSubscriptionEventEmitHookArgs<ResolveContext>): PromiseOrValue<void> | PromiseOrValue<Error>;
|
|
56
60
|
}
|
|
57
61
|
export interface ExecutionHooks<ResolveContext = unknown, BeforeHookContext = unknown, AfterHookContext = BeforeHookContext> {
|
|
62
|
+
/**
|
|
63
|
+
* Called before every operation.
|
|
64
|
+
*
|
|
65
|
+
* @hook
|
|
66
|
+
* @throws {Error} Stops execution and sets `data` to `null` and registers the error.
|
|
67
|
+
* @returns {Error} The error is registered and execution continues.
|
|
68
|
+
*/
|
|
58
69
|
beforeOperationExecute?: BeforeOperationExecuteHook<ResolveContext>;
|
|
70
|
+
/**
|
|
71
|
+
* Called before every subscription event emit.
|
|
72
|
+
*
|
|
73
|
+
* @hook
|
|
74
|
+
* @throws {Error} Sets `data` to `null` and registers the error.
|
|
75
|
+
* @returns {Error} The error is registered and execution continues.
|
|
76
|
+
*/
|
|
59
77
|
beforeSubscriptionEventEmit?: BeforeSubscriptionEventEmitHook<ResolveContext>;
|
|
78
|
+
/**
|
|
79
|
+
* Called before every field resolution.
|
|
80
|
+
*
|
|
81
|
+
* @hook
|
|
82
|
+
* @throws {Error} The field is not executed and is handled as if it has returned `null`.
|
|
83
|
+
* @returns {Error} The error is registered and execution continues.
|
|
84
|
+
*/
|
|
60
85
|
beforeFieldResolve?: BeforeFieldResolveHook<ResolveContext, BeforeHookContext>;
|
|
86
|
+
/**
|
|
87
|
+
* Called before subscription event stream creation.
|
|
88
|
+
*
|
|
89
|
+
* @hook
|
|
90
|
+
* @throws {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.
|
|
91
|
+
* @returns {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.
|
|
92
|
+
*/
|
|
61
93
|
beforeFieldSubscribe?: BeforeFieldSubscribe<ResolveContext, BeforeHookContext>;
|
|
94
|
+
/**
|
|
95
|
+
* Called after every field resolution.
|
|
96
|
+
*
|
|
97
|
+
* @hook
|
|
98
|
+
* @throws {Error} The field is set to `null` and the error is registered.
|
|
99
|
+
* @returns {Error} The error is registered and execution continues.
|
|
100
|
+
*/
|
|
62
101
|
afterFieldResolve?: AfterFieldResolveHook<ResolveContext, BeforeHookContext, AfterHookContext>;
|
|
102
|
+
/**
|
|
103
|
+
* Called after subscription event stream creation.
|
|
104
|
+
*
|
|
105
|
+
* @hook
|
|
106
|
+
* @throws {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.
|
|
107
|
+
* @returns {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.
|
|
108
|
+
*/
|
|
63
109
|
afterFieldSubscribe?: AfterFieldSubscribe<ResolveContext, BeforeHookContext, AfterHookContext>;
|
|
110
|
+
/**
|
|
111
|
+
* Called when field value is completed.
|
|
112
|
+
*
|
|
113
|
+
* @hook
|
|
114
|
+
* @throws {Error} The field is set to `null` and the error is registered.
|
|
115
|
+
* @returns {Error} The error is registered and execution continues.
|
|
116
|
+
*/
|
|
64
117
|
afterFieldComplete?: AfterFieldCompleteHook<ResolveContext, AfterHookContext>;
|
|
118
|
+
/**
|
|
119
|
+
* Called after the response is built.
|
|
120
|
+
*
|
|
121
|
+
* @hook
|
|
122
|
+
* @throws {Error} Returns no data property, only errors.
|
|
123
|
+
* @returns {Error} The error is registered and execution continues.
|
|
124
|
+
*/
|
|
65
125
|
afterBuildResponse?: AfterBuildResponseHook<ResolveContext>;
|
|
66
126
|
}
|
|
67
127
|
export {};
|
package/lib/hooks/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"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"}
|
package/lib/hooks/types.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/hooks/types.ts"],
|
|
4
|
-
"sourcesContent": ["import type {
|
|
4
|
+
"sourcesContent": ["import type { OperationDefinitionNode } from \"graphql\";\nimport type { ResolveInfo, TotalExecutionResult } from \"../types\";\nimport { PromiseOrValue } from \"../jsutils/PromiseOrValue\";\n\ninterface BaseExecuteHookArgs<ResolveContext> {\n context: ResolveContext;\n}\n\nexport interface BaseExecuteFieldHookArgs<ResolveContext>\n extends BaseExecuteHookArgs<ResolveContext> {\n resolveInfo: ResolveInfo;\n}\n\nexport interface PostExecuteFieldHookArgs<ResolveContext, HookContext>\n extends BaseExecuteFieldHookArgs<ResolveContext> {\n hookContext: HookContext;\n}\n\nexport interface AfterFieldResolveHookArgs<ResolveContext, HookContext>\n extends PostExecuteFieldHookArgs<ResolveContext, HookContext> {\n result?: unknown;\n error?: unknown;\n}\n\nexport interface AfterFieldSubscribeHookArgs<ResolveContext, HookContext>\n extends PostExecuteFieldHookArgs<ResolveContext, HookContext> {\n result?: unknown;\n error?: unknown;\n}\n\nexport interface AfterFieldCompleteHookArgs<ResolveContext, HookContext>\n extends PostExecuteFieldHookArgs<ResolveContext, HookContext> {\n result?: unknown;\n error?: unknown;\n}\n\nexport interface BaseExecuteOperationHookArgs<ResolveContext>\n extends BaseExecuteHookArgs<ResolveContext> {\n operation: OperationDefinitionNode;\n}\n\nexport interface AfterBuildResponseHookArgs<ResolveContext>\n extends BaseExecuteOperationHookArgs<ResolveContext> {\n result: TotalExecutionResult;\n}\n\nexport interface BeforeSubscriptionEventEmitHookArgs<ResolveContext>\n extends BaseExecuteOperationHookArgs<ResolveContext> {\n eventPayload: unknown;\n}\n\nexport interface BeforeFieldResolveHook<\n ResolveContext = unknown,\n BeforeHookContext = unknown,\n> {\n (args: BaseExecuteFieldHookArgs<ResolveContext>):\n | PromiseOrValue<BeforeHookContext>\n | PromiseOrValue<Error>;\n}\n\n/**\n * Represents a user in the system.\n */\nexport interface BeforeFieldSubscribe<\n ResolveContext = unknown,\n BeforeHookContext = unknown,\n> {\n (args: BaseExecuteFieldHookArgs<ResolveContext>):\n | PromiseOrValue<BeforeHookContext>\n | PromiseOrValue<Error>;\n}\n\nexport interface AfterFieldResolveHook<\n ResolveContext = unknown,\n BeforeHookContext = unknown,\n AfterHookContext = BeforeHookContext,\n> {\n (args: AfterFieldResolveHookArgs<ResolveContext, BeforeHookContext>):\n | AfterHookContext\n | Error;\n}\n\nexport interface AfterFieldSubscribe<\n ResolveContext = unknown,\n BeforeHookContext = unknown,\n AfterHookContext = BeforeHookContext,\n> {\n (args: AfterFieldSubscribeHookArgs<ResolveContext, BeforeHookContext>):\n | AfterHookContext\n | Error;\n}\n\nexport interface AfterFieldCompleteHook<\n ResolveContext = unknown,\n AfterHookContext = unknown,\n> {\n (\n args: AfterFieldCompleteHookArgs<ResolveContext, AfterHookContext>,\n ): void | Error;\n}\n\nexport interface AfterBuildResponseHook<ResolveContext = unknown> {\n (args: AfterBuildResponseHookArgs<ResolveContext>): void | Error;\n}\n\nexport interface BeforeOperationExecuteHook<ResolveContext = unknown> {\n (args: BaseExecuteOperationHookArgs<ResolveContext>):\n | PromiseOrValue<void>\n | PromiseOrValue<Error>;\n}\n\nexport interface BeforeSubscriptionEventEmitHook<ResolveContext = unknown> {\n (args: BeforeSubscriptionEventEmitHookArgs<ResolveContext>):\n | PromiseOrValue<void>\n | PromiseOrValue<Error>;\n}\n\nexport interface ExecutionHooks<\n ResolveContext = unknown,\n BeforeHookContext = unknown,\n AfterHookContext = BeforeHookContext,\n> {\n /**\n * Called before every operation.\n *\n * @hook\n * @throws {Error} Stops execution and sets `data` to `null` and registers the error.\n * @returns {Error} The error is registered and execution continues.\n */\n beforeOperationExecute?: BeforeOperationExecuteHook<ResolveContext>;\n /**\n * Called before every subscription event emit.\n *\n * @hook\n * @throws {Error} Sets `data` to `null` and registers the error.\n * @returns {Error} The error is registered and execution continues.\n */\n beforeSubscriptionEventEmit?: BeforeSubscriptionEventEmitHook<ResolveContext>;\n /**\n * Called before every field resolution.\n *\n * @hook\n * @throws {Error} The field is not executed and is handled as if it has returned `null`.\n * @returns {Error} The error is registered and execution continues.\n */\n beforeFieldResolve?: BeforeFieldResolveHook<\n ResolveContext,\n BeforeHookContext\n >;\n /**\n * Called before subscription event stream creation.\n *\n * @hook\n * @throws {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.\n * @returns {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.\n */\n beforeFieldSubscribe?: BeforeFieldSubscribe<\n ResolveContext,\n BeforeHookContext\n >;\n /**\n * Called after every field resolution.\n *\n * @hook\n * @throws {Error} The field is set to `null` and the error is registered.\n * @returns {Error} The error is registered and execution continues.\n */\n afterFieldResolve?: AfterFieldResolveHook<\n ResolveContext,\n BeforeHookContext,\n AfterHookContext\n >;\n\n /**\n * Called after subscription event stream creation.\n *\n * @hook\n * @throws {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.\n * @returns {Error} Stops execution and sets `data` to `undefined` and error is returned in `errors` field.\n */\n afterFieldSubscribe?: AfterFieldSubscribe<\n ResolveContext,\n BeforeHookContext,\n AfterHookContext\n >;\n /**\n * Called when field value is completed.\n *\n * @hook\n * @throws {Error} The field is set to `null` and the error is registered.\n * @returns {Error} The error is registered and execution continues.\n */\n afterFieldComplete?: AfterFieldCompleteHook<ResolveContext, AfterHookContext>;\n /**\n * Called after the response is built.\n *\n * @hook\n * @throws {Error} Returns no data property, only errors.\n * @returns {Error} The error is registered and execution continues.\n */\n afterBuildResponse?: AfterBuildResponseHook<ResolveContext>;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|