@graphoria/server 0.1.4 → 0.2.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/src/analyzeQuery/resolveVariables.d.ts.map +1 -1
- package/dist/src/config/helpers/operationHelper.d.ts +60 -6
- package/dist/src/config/helpers/operationHelper.d.ts.map +1 -1
- package/dist/src/config/helpers/operationHelper.test.d.ts +2 -0
- package/dist/src/config/helpers/operationHelper.test.d.ts.map +1 -0
- package/dist/src/config/index.d.ts +65 -60
- package/dist/src/config/index.d.ts.map +1 -1
- package/dist/src/config/types/ai.d.ts +9 -3
- package/dist/src/config/types/ai.d.ts.map +1 -1
- package/dist/src/config/types/auth.d.ts +55 -15
- package/dist/src/config/types/auth.d.ts.map +1 -1
- package/dist/src/config/types/cron.d.ts +96 -2
- package/dist/src/config/types/cron.d.ts.map +1 -1
- package/dist/src/config/types/db.d.ts +186 -24
- package/dist/src/config/types/db.d.ts.map +1 -1
- package/dist/src/config/types/index.d.ts +3 -3
- package/dist/src/config/types/index.d.ts.map +1 -1
- package/dist/src/config/types/operation.d.ts +49 -17
- package/dist/src/config/types/operation.d.ts.map +1 -1
- package/dist/src/config/types/queue.d.ts +59 -12
- package/dist/src/config/types/queue.d.ts.map +1 -1
- package/dist/src/config/types/remote-rest.d.ts +10 -1
- package/dist/src/config/types/remote-rest.d.ts.map +1 -1
- package/dist/src/config/types/remote-schema.d.ts +13 -3
- package/dist/src/config/types/remote-schema.d.ts.map +1 -1
- package/dist/src/config/types/virtual-columns.d.ts +1 -1
- package/dist/src/config/types/virtual-columns.d.ts.map +1 -1
- package/dist/src/configuration/getSchemas/index.d.ts +52 -4
- package/dist/src/configuration/getSchemas/index.d.ts.map +1 -1
- package/dist/src/configuration/getSchemas/mergeEntities/index.d.ts +26 -2
- package/dist/src/configuration/getSchemas/mergeEntities/index.d.ts.map +1 -1
- package/dist/src/configuration/getSchemas/mergeEntities/index.test.d.ts +2 -0
- package/dist/src/configuration/getSchemas/mergeEntities/index.test.d.ts.map +1 -0
- package/dist/src/configuration/getSchemas/type-definition-generator/index.d.ts.map +1 -1
- package/dist/src/configuration/index.d.ts +40 -4
- package/dist/src/configuration/index.d.ts.map +1 -1
- package/dist/src/configuration/rest/generateOpenAPI.d.ts.map +1 -1
- package/dist/src/configuration/rest/handleRESTRequestFactory.d.ts.map +1 -1
- package/dist/src/databases/common.d.ts +3 -1
- package/dist/src/databases/common.d.ts.map +1 -1
- package/dist/src/databases/core/query-builder.d.ts +7 -1
- package/dist/src/databases/core/query-builder.d.ts.map +1 -1
- package/dist/src/databases/directives.d.ts.map +1 -1
- package/dist/src/databases/engines/mssql/connection.d.ts +1 -1
- package/dist/src/databases/engines/mssql/connection.d.ts.map +1 -1
- package/dist/src/databases/engines/mssql/getStructure.d.ts +7 -0
- package/dist/src/databases/engines/mssql/getStructure.d.ts.map +1 -1
- package/dist/src/databases/engines/mssql/query/index.d.ts.map +1 -1
- package/dist/src/databases/engines/mysql/connection.d.ts.map +1 -1
- package/dist/src/databases/engines/mysql/getStructure.d.ts +7 -0
- package/dist/src/databases/engines/mysql/getStructure.d.ts.map +1 -1
- package/dist/src/databases/engines/mysql/placeholders.d.ts +22 -0
- package/dist/src/databases/engines/mysql/placeholders.d.ts.map +1 -0
- package/dist/src/databases/engines/mysql/placeholders.test.d.ts +2 -0
- package/dist/src/databases/engines/mysql/placeholders.test.d.ts.map +1 -0
- package/dist/src/databases/engines/mysql/query/index.d.ts.map +1 -1
- package/dist/src/databases/engines/postgresql/getStructure.d.ts +7 -0
- package/dist/src/databases/engines/postgresql/getStructure.d.ts.map +1 -1
- package/dist/src/databases/engines/postgresql/query/index.d.ts.map +1 -1
- package/dist/src/databases/high-level-operations.d.ts +14 -1
- package/dist/src/databases/high-level-operations.d.ts.map +1 -1
- package/dist/src/databases/metadata/structure.d.ts +7 -0
- package/dist/src/databases/metadata/structure.d.ts.map +1 -1
- package/dist/src/databases/sqlTypeUtils.d.ts.map +1 -1
- package/dist/src/databases/transformers/data-transformers.d.ts +39 -2
- package/dist/src/databases/transformers/data-transformers.d.ts.map +1 -1
- package/dist/src/singletons/env.d.ts +21 -3
- package/dist/src/singletons/env.d.ts.map +1 -1
- package/dist/src/types/configuration.d.ts +1 -1
- package/dist/src/types/configuration.d.ts.map +1 -1
- package/dist/src/types/env.d.ts +127 -51
- package/dist/src/types/env.d.ts.map +1 -1
- package/dist/src/types/resolver.d.ts +12 -2
- package/dist/src/types/resolver.d.ts.map +1 -1
- package/dist/src/types/zod/auth.d.ts +6 -6
- package/dist/src/types/zod/configuration.d.ts +85 -45
- package/dist/src/types/zod/configuration.d.ts.map +1 -1
- package/dist/src/types/zod/cron.d.ts +1 -1
- package/dist/src/types/zod/cron.d.ts.map +1 -1
- package/dist/src/types/zod/db.d.ts +167 -8
- package/dist/src/types/zod/db.d.ts.map +1 -1
- package/dist/src/types/zod/queue.d.ts +26 -26
- package/dist/src/types/zod/strict-keys.test.d.ts +2 -0
- package/dist/src/types/zod/strict-keys.test.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/analyzeQuery/resolveVariables.ts +37 -7
- package/src/config/helpers/operationHelper.ts +146 -5
- package/src/config/index.ts +139 -62
- package/src/config/types/ai.ts +2 -2
- package/src/config/types/auth.ts +37 -6
- package/src/config/types/cron.ts +1 -1
- package/src/config/types/db.ts +56 -9
- package/src/config/types/index.ts +5 -0
- package/src/config/types/operation.ts +49 -9
- package/src/config/types/queue.ts +8 -8
- package/src/config/types/remote-rest.ts +1 -1
- package/src/config/types/remote-schema.ts +2 -2
- package/src/config/types/virtual-columns.ts +1 -1
- package/src/configuration/getSchemas/mergeEntities/index.ts +6 -0
- package/src/configuration/getSchemas/type-definition-generator/index.ts +13 -4
- package/src/configuration/rest/generateOpenAPI.ts +5 -9
- package/src/configuration/rest/handleRESTRequestFactory.ts +40 -14
- package/src/databases/common.ts +279 -83
- package/src/databases/directives.ts +26 -8
- package/src/databases/engines/mssql/connection.ts +1 -1
- package/src/databases/engines/mssql/getStructure.ts +1 -0
- package/src/databases/engines/mssql/query/index.ts +29 -11
- package/src/databases/engines/mysql/auth.ts +2 -2
- package/src/databases/engines/mysql/connection.ts +5 -4
- package/src/databases/engines/mysql/getStructure.ts +61 -29
- package/src/databases/engines/mysql/placeholders.ts +84 -0
- package/src/databases/engines/mysql/query/index.ts +49 -4
- package/src/databases/engines/postgresql/getStructure.ts +1 -0
- package/src/databases/engines/postgresql/query/index.ts +40 -2
- package/src/databases/high-level-operations.ts +25 -0
- package/src/databases/sqlTypeUtils.ts +3 -1
- package/src/subscriptions/strategies/index.ts +1 -1
- package/src/subscriptions/strategies/queue.ts +1 -1
- package/src/types/configuration.ts +7 -1
- package/src/types/resolver.ts +17 -1
- package/src/types/zod/configuration.ts +1 -1
- package/src/types/zod/db.ts +4 -0
|
@@ -3,6 +3,22 @@ import { z } from "zod";
|
|
|
3
3
|
* Default input type when no schema is provided
|
|
4
4
|
*/
|
|
5
5
|
export type DefaultInput = Record<string, unknown>;
|
|
6
|
+
/**
|
|
7
|
+
* A gql.tada / `TypedDocumentNode` query document. Every GraphQL AST node has a
|
|
8
|
+
* `kind`, which distinguishes a document from a plain string query; documents
|
|
9
|
+
* additionally carry their result type on the `__apiType` phantom property.
|
|
10
|
+
*/
|
|
11
|
+
export type AnyQueryDocument = {
|
|
12
|
+
readonly kind: string;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Extracts a query document's result type (the GraphQL `data` payload) from its
|
|
16
|
+
* gql.tada / TypedDocumentNode `__apiType` phantom. A plain string query (or a
|
|
17
|
+
* document without embedded types) resolves to `unknown`.
|
|
18
|
+
*/
|
|
19
|
+
export type QueryResultOf<TQuery> = TQuery extends string ? unknown : TQuery extends {
|
|
20
|
+
__apiType?: (variables: any) => infer TResult;
|
|
21
|
+
} ? TResult : unknown;
|
|
6
22
|
/**
|
|
7
23
|
* Zod schema for REST configuration
|
|
8
24
|
*/
|
|
@@ -18,14 +34,14 @@ export declare const OperationRestConfigZod: z.ZodObject<{
|
|
|
18
34
|
pathParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
19
35
|
queryParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
20
36
|
body: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
21
|
-
}, z.core.$
|
|
37
|
+
}, z.core.$strict>;
|
|
22
38
|
/**
|
|
23
39
|
* Zod schema for GraphQL configuration
|
|
24
40
|
*/
|
|
25
41
|
export declare const OperationGraphQLConfigZod: z.ZodObject<{
|
|
26
42
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
27
43
|
name: z.ZodOptional<z.ZodString>;
|
|
28
|
-
}, z.core.$
|
|
44
|
+
}, z.core.$strict>;
|
|
29
45
|
/**
|
|
30
46
|
* Zod schema for cache configuration
|
|
31
47
|
*/
|
|
@@ -37,7 +53,7 @@ export declare const OperationCacheConfigZod: z.ZodObject<{
|
|
|
37
53
|
updateAgeOnGet: z.ZodOptional<z.ZodBoolean>;
|
|
38
54
|
updateAgeOnHas: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
39
55
|
ttlAutopurge: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
40
|
-
}, z.core.$
|
|
56
|
+
}, z.core.$strict>;
|
|
41
57
|
/**
|
|
42
58
|
* REST exposure configuration for an operation
|
|
43
59
|
*/
|
|
@@ -60,7 +76,7 @@ export declare const OperationZod: z.ZodObject<{
|
|
|
60
76
|
init: z.ZodOptional<z.ZodCustom<OperationInitHook<any>, OperationInitHook<any>>>;
|
|
61
77
|
beforeRequest: z.ZodOptional<z.ZodCustom<OperationBeforeRequestHook<any, any, any>, OperationBeforeRequestHook<any, any, any>>>;
|
|
62
78
|
afterRequest: z.ZodOptional<z.ZodCustom<OperationAfterRequestHook<any>, OperationAfterRequestHook<any>>>;
|
|
63
|
-
}, z.core.$
|
|
79
|
+
}, z.core.$strict>>;
|
|
64
80
|
rest: z.ZodOptional<z.ZodObject<{
|
|
65
81
|
path: z.ZodString;
|
|
66
82
|
method: z.ZodDefault<z.ZodEnum<{
|
|
@@ -73,11 +89,11 @@ export declare const OperationZod: z.ZodObject<{
|
|
|
73
89
|
pathParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
74
90
|
queryParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
75
91
|
body: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
76
|
-
}, z.core.$
|
|
92
|
+
}, z.core.$strict>>;
|
|
77
93
|
graphql: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
78
94
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
79
95
|
name: z.ZodOptional<z.ZodString>;
|
|
80
|
-
}, z.core.$
|
|
96
|
+
}, z.core.$strict>>>;
|
|
81
97
|
cache: z.ZodOptional<z.ZodObject<{
|
|
82
98
|
max: z.ZodOptional<z.ZodNumber>;
|
|
83
99
|
maxSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -86,8 +102,8 @@ export declare const OperationZod: z.ZodObject<{
|
|
|
86
102
|
updateAgeOnGet: z.ZodOptional<z.ZodBoolean>;
|
|
87
103
|
updateAgeOnHas: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
88
104
|
ttlAutopurge: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
89
|
-
}, z.core.$
|
|
90
|
-
}, z.core.$
|
|
105
|
+
}, z.core.$strict>>;
|
|
106
|
+
}, z.core.$strict>;
|
|
91
107
|
export type Operation = z.input<typeof OperationZod>;
|
|
92
108
|
export declare const OperationsZod: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
93
109
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -99,7 +115,7 @@ export declare const OperationsZod: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
99
115
|
init: z.ZodOptional<z.ZodCustom<OperationInitHook<any>, OperationInitHook<any>>>;
|
|
100
116
|
beforeRequest: z.ZodOptional<z.ZodCustom<OperationBeforeRequestHook<any, any, any>, OperationBeforeRequestHook<any, any, any>>>;
|
|
101
117
|
afterRequest: z.ZodOptional<z.ZodCustom<OperationAfterRequestHook<any>, OperationAfterRequestHook<any>>>;
|
|
102
|
-
}, z.core.$
|
|
118
|
+
}, z.core.$strict>>;
|
|
103
119
|
rest: z.ZodOptional<z.ZodObject<{
|
|
104
120
|
path: z.ZodString;
|
|
105
121
|
method: z.ZodDefault<z.ZodEnum<{
|
|
@@ -112,11 +128,11 @@ export declare const OperationsZod: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
112
128
|
pathParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
113
129
|
queryParams: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
114
130
|
body: z.ZodOptional<z.ZodCustom<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
|
|
115
|
-
}, z.core.$
|
|
131
|
+
}, z.core.$strict>>;
|
|
116
132
|
graphql: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
117
133
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
118
134
|
name: z.ZodOptional<z.ZodString>;
|
|
119
|
-
}, z.core.$
|
|
135
|
+
}, z.core.$strict>>>;
|
|
120
136
|
cache: z.ZodOptional<z.ZodObject<{
|
|
121
137
|
max: z.ZodOptional<z.ZodNumber>;
|
|
122
138
|
maxSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -125,17 +141,28 @@ export declare const OperationsZod: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
125
141
|
updateAgeOnGet: z.ZodOptional<z.ZodBoolean>;
|
|
126
142
|
updateAgeOnHas: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
127
143
|
ttlAutopurge: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
128
|
-
}, z.core.$
|
|
129
|
-
}, z.core.$
|
|
144
|
+
}, z.core.$strict>>;
|
|
145
|
+
}, z.core.$strict>>;
|
|
130
146
|
export type Operations = z.input<typeof OperationsZod>;
|
|
131
147
|
/**
|
|
132
|
-
* Context passed to beforeRequest hook
|
|
148
|
+
* Context passed to beforeRequest hook.
|
|
149
|
+
*
|
|
150
|
+
* `input` is the merged view of every REST parameter source. `pathParams`,
|
|
151
|
+
* `queryParams`, and `body` expose each source separately (parsed with its own
|
|
152
|
+
* schema), or `undefined` when that source has no schema configured.
|
|
133
153
|
*/
|
|
134
|
-
export type BeforeRequestContext<TInput = DefaultInput> = {
|
|
154
|
+
export type BeforeRequestContext<TInput = DefaultInput, TPathParams = unknown, TQueryParams = unknown, TBody = unknown> = {
|
|
135
155
|
input: TInput;
|
|
156
|
+
pathParams?: TPathParams;
|
|
157
|
+
queryParams?: TQueryParams;
|
|
158
|
+
body?: TBody;
|
|
136
159
|
};
|
|
137
160
|
/**
|
|
138
|
-
* Context passed to afterRequest hook
|
|
161
|
+
* Context passed to the afterRequest hook.
|
|
162
|
+
*
|
|
163
|
+
* `output` is the operation's output payload — for query-based operations the
|
|
164
|
+
* unwrapped GraphQL `data` (the hook's return replaces `data` in the response
|
|
165
|
+
* envelope); for handler-based operations the value the handler returned.
|
|
139
166
|
*/
|
|
140
167
|
export type AfterRequestContext<TOutput = unknown> = {
|
|
141
168
|
output: TOutput;
|
|
@@ -171,7 +198,12 @@ export type OperationInitHook<TInitData = unknown> = (options: OperationOptions)
|
|
|
171
198
|
*/
|
|
172
199
|
export type OperationBeforeRequestHook<TInput = DefaultInput, TInitData = unknown, TVariables = Record<string, unknown>> = (context: BeforeRequestContext<TInput>, initData: TInitData | undefined) => TVariables | Promise<TVariables>;
|
|
173
200
|
/**
|
|
174
|
-
* AfterRequest hook
|
|
201
|
+
* AfterRequest hook — transforms the output after a successful query/handler.
|
|
202
|
+
*
|
|
203
|
+
* Receives the output payload and returns the (possibly transformed) payload.
|
|
204
|
+
* Runs on success only; throw to turn a successful response into an error. For
|
|
205
|
+
* cached query operations it runs on the cache miss and the transformed result
|
|
206
|
+
* is cached, so cache hits reuse it without re-invoking the hook.
|
|
175
207
|
*/
|
|
176
208
|
export type OperationAfterRequestHook<TOutput = unknown> = (context: AfterRequestContext<TOutput>) => TOutput | Promise<TOutput>;
|
|
177
209
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/config/types/operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/config/types/operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,21 +3,29 @@ import { z } from "zod";
|
|
|
3
3
|
* Reconnection configuration
|
|
4
4
|
*/
|
|
5
5
|
export declare const ReconnectConfigZod: z.ZodObject<{
|
|
6
|
+
/** Initial delay before first reconnect attempt (ms) */
|
|
6
7
|
initialDelay: z.ZodDefault<z.ZodNumber>;
|
|
8
|
+
/** Maximum delay between reconnect attempts (ms) */
|
|
7
9
|
maxDelay: z.ZodDefault<z.ZodNumber>;
|
|
10
|
+
/** Multiplier for exponential backoff */
|
|
8
11
|
multiplier: z.ZodDefault<z.ZodNumber>;
|
|
12
|
+
/** Maximum number of reconnect attempts (0 = infinite) */
|
|
9
13
|
maxAttempts: z.ZodDefault<z.ZodNumber>;
|
|
10
|
-
}, z.core.$
|
|
14
|
+
}, z.core.$strict>;
|
|
11
15
|
export type ReconnectConfig = z.input<typeof ReconnectConfigZod>;
|
|
12
16
|
/**
|
|
13
17
|
* Publisher configuration — defines how to send messages
|
|
14
18
|
*/
|
|
15
19
|
export declare const PublisherConfigZod: z.ZodObject<{
|
|
20
|
+
/** Topic/Exchange name to publish to */
|
|
16
21
|
topic: z.ZodString;
|
|
22
|
+
/** Routing key (RabbitMQ) or message key (Kafka) */
|
|
17
23
|
routingKey: z.ZodOptional<z.ZodString>;
|
|
24
|
+
/** Whether messages should survive broker restart (RabbitMQ only) */
|
|
18
25
|
persistent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
26
|
+
/** Custom headers (Kafka only) */
|
|
19
27
|
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
20
|
-
}, z.core.$
|
|
28
|
+
}, z.core.$strict>;
|
|
21
29
|
export type PublisherConfig = z.input<typeof PublisherConfigZod>;
|
|
22
30
|
/**
|
|
23
31
|
* Cache invalidation context passed to subscriber handlers
|
|
@@ -36,68 +44,103 @@ export type SubscriberHandler = (message: unknown, context: {
|
|
|
36
44
|
* Subscriber configuration — defines how to receive messages
|
|
37
45
|
*/
|
|
38
46
|
export declare const SubscriberConfigZod: z.ZodObject<{
|
|
47
|
+
/** Topic/Exchange name to subscribe to */
|
|
39
48
|
topic: z.ZodString;
|
|
49
|
+
/** Pattern for filtering messages (routing key pattern for RabbitMQ) */
|
|
40
50
|
pattern: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
51
|
+
/** Explicit queue name (RabbitMQ) — auto-generated if not provided */
|
|
41
52
|
queue: z.ZodOptional<z.ZodString>;
|
|
53
|
+
/** Consumer group ID (Kafka) — auto-generated if not provided */
|
|
42
54
|
group: z.ZodOptional<z.ZodString>;
|
|
55
|
+
/** Whether queue should survive broker restart (RabbitMQ only) */
|
|
43
56
|
durable: z.ZodOptional<z.ZodBoolean>;
|
|
57
|
+
/** Whether queue should auto-delete when no consumers (RabbitMQ only) */
|
|
44
58
|
autoDelete: z.ZodOptional<z.ZodBoolean>;
|
|
59
|
+
/** Handler function to process received messages */
|
|
45
60
|
handler: z.ZodOptional<z.ZodCustom<SubscriberHandler, SubscriberHandler>>;
|
|
46
|
-
}, z.core.$
|
|
61
|
+
}, z.core.$strict>;
|
|
47
62
|
export type SubscriberConfig = z.input<typeof SubscriberConfigZod>;
|
|
48
63
|
/**
|
|
49
64
|
* Topic/Exchange configuration — for auto-setup
|
|
50
65
|
*/
|
|
51
66
|
export declare const TopicConfigZod: z.ZodObject<{
|
|
67
|
+
/** Exchange type (RabbitMQ only) */
|
|
52
68
|
type: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
53
69
|
headers: "headers";
|
|
54
70
|
topic: "topic";
|
|
55
71
|
direct: "direct";
|
|
56
72
|
fanout: "fanout";
|
|
57
73
|
}>>>;
|
|
74
|
+
/** Whether exchange should survive broker restart */
|
|
58
75
|
durable: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
76
|
+
/** Whether exchange should auto-delete when no bindings */
|
|
59
77
|
autoDelete: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
60
|
-
}, z.core.$
|
|
78
|
+
}, z.core.$strict>;
|
|
61
79
|
export type TopicConfig = z.input<typeof TopicConfigZod>;
|
|
62
80
|
/**
|
|
63
81
|
* Base queue configuration shared by all providers
|
|
64
82
|
*/
|
|
65
83
|
export declare const BaseQueueConfigZod: z.ZodObject<{
|
|
84
|
+
/** Unique name for this queue connection */
|
|
66
85
|
name: z.ZodString;
|
|
86
|
+
/** Whether to auto-create topics/exchanges/queues */
|
|
67
87
|
autoSetup: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
88
|
+
/** Whether this queue is enabled */
|
|
68
89
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
90
|
+
/** Reconnection configuration */
|
|
69
91
|
reconnect: z.ZodOptional<z.ZodObject<{
|
|
92
|
+
/** Initial delay before first reconnect attempt (ms) */
|
|
70
93
|
initialDelay: z.ZodDefault<z.ZodNumber>;
|
|
94
|
+
/** Maximum delay between reconnect attempts (ms) */
|
|
71
95
|
maxDelay: z.ZodDefault<z.ZodNumber>;
|
|
96
|
+
/** Multiplier for exponential backoff */
|
|
72
97
|
multiplier: z.ZodDefault<z.ZodNumber>;
|
|
98
|
+
/** Maximum number of reconnect attempts (0 = infinite) */
|
|
73
99
|
maxAttempts: z.ZodDefault<z.ZodNumber>;
|
|
74
|
-
}, z.core.$
|
|
100
|
+
}, z.core.$strict>>;
|
|
101
|
+
/** Publishers keyed by resolver name — become GraphQL mutations */
|
|
75
102
|
publishers: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
103
|
+
/** Topic/Exchange name to publish to */
|
|
76
104
|
topic: z.ZodString;
|
|
105
|
+
/** Routing key (RabbitMQ) or message key (Kafka) */
|
|
77
106
|
routingKey: z.ZodOptional<z.ZodString>;
|
|
107
|
+
/** Whether messages should survive broker restart (RabbitMQ only) */
|
|
78
108
|
persistent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
109
|
+
/** Custom headers (Kafka only) */
|
|
79
110
|
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
80
|
-
}, z.core.$
|
|
111
|
+
}, z.core.$strict>>>>;
|
|
112
|
+
/** Subscribers keyed by subscription name — become GraphQL subscriptions */
|
|
81
113
|
subscribers: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
114
|
+
/** Topic/Exchange name to subscribe to */
|
|
82
115
|
topic: z.ZodString;
|
|
116
|
+
/** Pattern for filtering messages (routing key pattern for RabbitMQ) */
|
|
83
117
|
pattern: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
118
|
+
/** Explicit queue name (RabbitMQ) — auto-generated if not provided */
|
|
84
119
|
queue: z.ZodOptional<z.ZodString>;
|
|
120
|
+
/** Consumer group ID (Kafka) — auto-generated if not provided */
|
|
85
121
|
group: z.ZodOptional<z.ZodString>;
|
|
122
|
+
/** Whether queue should survive broker restart (RabbitMQ only) */
|
|
86
123
|
durable: z.ZodOptional<z.ZodBoolean>;
|
|
124
|
+
/** Whether queue should auto-delete when no consumers (RabbitMQ only) */
|
|
87
125
|
autoDelete: z.ZodOptional<z.ZodBoolean>;
|
|
126
|
+
/** Handler function to process received messages */
|
|
88
127
|
handler: z.ZodOptional<z.ZodCustom<SubscriberHandler, SubscriberHandler>>;
|
|
89
|
-
}, z.core.$
|
|
128
|
+
}, z.core.$strict>>>>;
|
|
129
|
+
/** Topic configurations for customizing auto-setup behavior */
|
|
90
130
|
topics: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
131
|
+
/** Exchange type (RabbitMQ only) */
|
|
91
132
|
type: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
92
133
|
headers: "headers";
|
|
93
134
|
topic: "topic";
|
|
94
135
|
direct: "direct";
|
|
95
136
|
fanout: "fanout";
|
|
96
137
|
}>>>;
|
|
138
|
+
/** Whether exchange should survive broker restart */
|
|
97
139
|
durable: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
140
|
+
/** Whether exchange should auto-delete when no bindings */
|
|
98
141
|
autoDelete: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
99
|
-
}, z.core.$
|
|
100
|
-
}, z.core.$
|
|
142
|
+
}, z.core.$strict>>>>;
|
|
143
|
+
}, z.core.$strict>;
|
|
101
144
|
/**
|
|
102
145
|
* RabbitMQ connection configuration (object form)
|
|
103
146
|
*/
|
|
@@ -107,15 +150,19 @@ export declare const RabbitMQConnectionZod: z.ZodObject<{
|
|
|
107
150
|
username: z.ZodOptional<z.ZodString>;
|
|
108
151
|
password: z.ZodOptional<z.ZodString>;
|
|
109
152
|
vhost: z.ZodDefault<z.ZodString>;
|
|
110
|
-
}, z.core.$
|
|
153
|
+
}, z.core.$strict>;
|
|
111
154
|
export type RabbitMQConnection = z.input<typeof RabbitMQConnectionZod>;
|
|
112
155
|
/**
|
|
113
156
|
* Kafka connection configuration
|
|
114
157
|
*/
|
|
115
158
|
export declare const KafkaConnectionZod: z.ZodObject<{
|
|
159
|
+
/** Broker addresses — "host:port" or ["host1:port1", "host2:port2"] */
|
|
116
160
|
brokers: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
|
|
161
|
+
/** Client identifier sent to the broker (default: "datagraph-<queue name>") */
|
|
117
162
|
clientId: z.ZodOptional<z.ZodString>;
|
|
163
|
+
/** Enable SSL/TLS */
|
|
118
164
|
ssl: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
165
|
+
/** SASL authentication (optional) */
|
|
119
166
|
sasl: z.ZodOptional<z.ZodObject<{
|
|
120
167
|
mechanism: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
121
168
|
plain: "plain";
|
|
@@ -124,8 +171,8 @@ export declare const KafkaConnectionZod: z.ZodObject<{
|
|
|
124
171
|
}>>>;
|
|
125
172
|
username: z.ZodString;
|
|
126
173
|
password: z.ZodString;
|
|
127
|
-
}, z.core.$
|
|
128
|
-
}, z.core.$
|
|
174
|
+
}, z.core.$strict>>;
|
|
175
|
+
}, z.core.$strict>;
|
|
129
176
|
export type KafkaConnection = z.input<typeof KafkaConnectionZod>;
|
|
130
177
|
/** RabbitMQ queue config as authored by the user (pre-transform) */
|
|
131
178
|
export type RabbitMQQueueConfig = z.input<typeof BaseQueueConfigZod> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../src/config/types/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB;;GAEG;AACH,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../src/config/types/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,16 +3,25 @@ import { z } from "zod";
|
|
|
3
3
|
* Remote REST API configuration (OpenAPI-based)
|
|
4
4
|
*/
|
|
5
5
|
export declare const RemoteRESTConfigZod: z.ZodObject<{
|
|
6
|
+
/** Unique identifier for this remote REST API */
|
|
6
7
|
name: z.ZodString;
|
|
8
|
+
/** Base URL of the remote API for proxying requests */
|
|
7
9
|
url: z.ZodOptional<z.ZodURL>;
|
|
10
|
+
/** URL to fetch the OpenAPI spec from */
|
|
8
11
|
specUrl: z.ZodOptional<z.ZodURL>;
|
|
12
|
+
/** Local file path to the OpenAPI spec (JSON or YAML) */
|
|
9
13
|
specPath: z.ZodOptional<z.ZodString>;
|
|
14
|
+
/** Whether the remote REST API is enabled (default: true) */
|
|
10
15
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
16
|
+
/** Subpath prefix under /rest (default: name) */
|
|
11
17
|
prefix: z.ZodOptional<z.ZodString>;
|
|
18
|
+
/** Static headers to send with every proxied request */
|
|
12
19
|
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
20
|
+
/** Client headers to forward to the remote endpoint */
|
|
13
21
|
forwardHeaders: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
22
|
+
/** Request timeout in milliseconds (default: 10000) */
|
|
14
23
|
timeout: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
15
|
-
}, z.core.$
|
|
24
|
+
}, z.core.$strict>;
|
|
16
25
|
/** Authoring type for remote REST API config */
|
|
17
26
|
export type RemoteRESTConfig = z.input<typeof RemoteRESTConfigZod>;
|
|
18
27
|
//# sourceMappingURL=remote-rest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-rest.d.ts","sourceRoot":"","sources":["../../../../src/config/types/remote-rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"remote-rest.d.ts","sourceRoot":"","sources":["../../../../src/config/types/remote-rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,mBAAmB;IAC9B,iDAAiD;;IAEjD,uDAAuD;;IAEvD,yCAAyC;;IAEzC,yDAAyD;;IAEzD,6DAA6D;;IAE7D,iDAAiD;;IAEjD,wDAAwD;;IAExD,uDAAuD;;IAEvD,uDAAuD;;kBAEvD,CAAC;AAEH,gDAAgD;AAChD,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
@@ -3,25 +3,35 @@ import { z } from "zod";
|
|
|
3
3
|
* Remote GraphQL schema introspection configuration
|
|
4
4
|
*/
|
|
5
5
|
export declare const RemoteSchemaIntrospectionConfigZod: z.ZodOptional<z.ZodObject<{
|
|
6
|
+
/** Re-introspect interval in ms (0 = only at startup, default: 0) */
|
|
6
7
|
interval: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
7
|
-
}, z.core.$
|
|
8
|
+
}, z.core.$strict>>;
|
|
8
9
|
/** Authoring type for remote schema introspection config */
|
|
9
10
|
export type RemoteSchemaIntrospectionConfig = z.input<typeof RemoteSchemaIntrospectionConfigZod>;
|
|
10
11
|
/**
|
|
11
12
|
* Remote GraphQL schema configuration
|
|
12
13
|
*/
|
|
13
14
|
export declare const RemoteSchemaConfigZod: z.ZodObject<{
|
|
15
|
+
/** Unique identifier for this remote schema */
|
|
14
16
|
name: z.ZodString;
|
|
17
|
+
/** Remote GraphQL endpoint URL */
|
|
15
18
|
url: z.ZodURL;
|
|
19
|
+
/** Whether the remote schema is enabled (default: true) */
|
|
16
20
|
enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
21
|
+
/** Type/field prefix (default: name + "_") */
|
|
17
22
|
prefix: z.ZodOptional<z.ZodString>;
|
|
23
|
+
/** Static headers to send with every request */
|
|
18
24
|
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
25
|
+
/** Client headers to forward to the remote endpoint */
|
|
19
26
|
forwardHeaders: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
|
+
/** Request timeout in milliseconds (default: 10000) */
|
|
20
28
|
timeout: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
29
|
+
/** Introspection configuration */
|
|
21
30
|
introspection: z.ZodOptional<z.ZodObject<{
|
|
31
|
+
/** Re-introspect interval in ms (0 = only at startup, default: 0) */
|
|
22
32
|
interval: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
23
|
-
}, z.core.$
|
|
24
|
-
}, z.core.$
|
|
33
|
+
}, z.core.$strict>>;
|
|
34
|
+
}, z.core.$strict>;
|
|
25
35
|
/** Authoring type for remote GraphQL schema config */
|
|
26
36
|
export type RemoteSchemaConfig = z.input<typeof RemoteSchemaConfigZod>;
|
|
27
37
|
//# sourceMappingURL=remote-schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-schema.d.ts","sourceRoot":"","sources":["../../../../src/config/types/remote-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,kCAAkC;;
|
|
1
|
+
{"version":3,"file":"remote-schema.d.ts","sourceRoot":"","sources":["../../../../src/config/types/remote-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,kCAAkC;IAE3C,qEAAqE;;mBAG5D,CAAC;AAEd,4DAA4D;AAC5D,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAEjG;;GAEG;AACH,eAAO,MAAM,qBAAqB;IAChC,+CAA+C;;IAE/C,kCAAkC;;IAElC,2DAA2D;;IAE3D,8CAA8C;;IAE9C,gDAAgD;;IAEhD,uDAAuD;;IAEvD,uDAAuD;;IAEvD,kCAAkC;;QA1BhC,qEAAqE;;;kBA4BvE,CAAC;AAEH,sDAAsD;AACtD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -11,7 +11,7 @@ export declare const VirtualColumnZod: z.ZodObject<{
|
|
|
11
11
|
function: z.ZodOptional<z.ZodString>;
|
|
12
12
|
params: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
13
|
expression: z.ZodOptional<z.ZodString>;
|
|
14
|
-
}, z.core.$
|
|
14
|
+
}, z.core.$strict>;
|
|
15
15
|
/**
|
|
16
16
|
* Virtual column type definition for computed/virtual columns in database schema
|
|
17
17
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"virtual-columns.d.ts","sourceRoot":"","sources":["../../../../src/config/types/virtual-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"virtual-columns.d.ts","sourceRoot":"","sources":["../../../../src/config/types/virtual-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;kBAS3B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,uBAAuB,GAAG,CACpC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EAAE,KACd,iBAAiB,CAAC;AAEvB;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,yBAAyB,GAAG,CACtC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,OAAO,EACnB,UAAU,EAAE,MAAM,KACf,iBAAiB,CAAC;AAEvB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,iBAAiB,CAAC;AAEpF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,iBAAiB,CAAC;AAMlF,eAAO,MAAM,qBAAqB,EAAE,uBAalC,CAAC;AAEH,eAAO,MAAM,uBAAuB,EAAE,yBAWpC,CAAC;AAEH,eAAO,MAAM,yBAAyB,EAAE,2BAUrC,CAAC;AAEJ,eAAO,MAAM,uBAAuB,EAAE,yBAUnC,CAAC"}
|
|
@@ -72,7 +72,7 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
72
72
|
db: {
|
|
73
73
|
name: string;
|
|
74
74
|
enabled: boolean;
|
|
75
|
-
type: "mssql" | "
|
|
75
|
+
type: "mssql" | "pg" | "mysql";
|
|
76
76
|
connection: {
|
|
77
77
|
host: string;
|
|
78
78
|
port: number;
|
|
@@ -102,6 +102,12 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
102
102
|
source: string;
|
|
103
103
|
target: string;
|
|
104
104
|
}[];
|
|
105
|
+
conditions?: {
|
|
106
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
107
|
+
source?: string | undefined;
|
|
108
|
+
target?: string | undefined;
|
|
109
|
+
value?: string | number | boolean | undefined;
|
|
110
|
+
}[] | undefined;
|
|
105
111
|
}[];
|
|
106
112
|
columnDescriptions: Record<string, string>;
|
|
107
113
|
description?: string | undefined;
|
|
@@ -173,7 +179,7 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
173
179
|
db: {
|
|
174
180
|
name: string;
|
|
175
181
|
enabled: boolean;
|
|
176
|
-
type: "mssql" | "
|
|
182
|
+
type: "mssql" | "pg" | "mysql";
|
|
177
183
|
connection: {
|
|
178
184
|
host: string;
|
|
179
185
|
port: number;
|
|
@@ -203,6 +209,12 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
203
209
|
source: string;
|
|
204
210
|
target: string;
|
|
205
211
|
}[];
|
|
212
|
+
conditions?: {
|
|
213
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
214
|
+
source?: string | undefined;
|
|
215
|
+
target?: string | undefined;
|
|
216
|
+
value?: string | number | boolean | undefined;
|
|
217
|
+
}[] | undefined;
|
|
206
218
|
}[];
|
|
207
219
|
columnDescriptions: Record<string, string>;
|
|
208
220
|
description?: string | undefined;
|
|
@@ -442,6 +454,12 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
442
454
|
source: string;
|
|
443
455
|
target: string;
|
|
444
456
|
}[];
|
|
457
|
+
conditions?: {
|
|
458
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
459
|
+
source?: string | undefined;
|
|
460
|
+
target?: string | undefined;
|
|
461
|
+
value?: string | number | boolean | undefined;
|
|
462
|
+
}[] | undefined;
|
|
445
463
|
}[];
|
|
446
464
|
relationshipsReversed: {
|
|
447
465
|
internalName: string;
|
|
@@ -455,6 +473,12 @@ export declare const getSchema: (entityOfRole: EntitiesOfRole, auth?: Auth | nul
|
|
|
455
473
|
source: string;
|
|
456
474
|
target: string;
|
|
457
475
|
}[];
|
|
476
|
+
conditions?: {
|
|
477
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
478
|
+
source?: string | undefined;
|
|
479
|
+
target?: string | undefined;
|
|
480
|
+
value?: string | number | boolean | undefined;
|
|
481
|
+
}[] | undefined;
|
|
458
482
|
}[];
|
|
459
483
|
};
|
|
460
484
|
isVirtualColumn: (table: string, column: string) => import("../../types/configuration").VirtualColumn | undefined;
|
|
@@ -469,7 +493,7 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
469
493
|
db: {
|
|
470
494
|
name: string;
|
|
471
495
|
enabled: boolean;
|
|
472
|
-
type: "mssql" | "
|
|
496
|
+
type: "mssql" | "pg" | "mysql";
|
|
473
497
|
connection: {
|
|
474
498
|
host: string;
|
|
475
499
|
port: number;
|
|
@@ -499,6 +523,12 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
499
523
|
source: string;
|
|
500
524
|
target: string;
|
|
501
525
|
}[];
|
|
526
|
+
conditions?: {
|
|
527
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
528
|
+
source?: string | undefined;
|
|
529
|
+
target?: string | undefined;
|
|
530
|
+
value?: string | number | boolean | undefined;
|
|
531
|
+
}[] | undefined;
|
|
502
532
|
}[];
|
|
503
533
|
columnDescriptions: Record<string, string>;
|
|
504
534
|
description?: string | undefined;
|
|
@@ -570,7 +600,7 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
570
600
|
db: {
|
|
571
601
|
name: string;
|
|
572
602
|
enabled: boolean;
|
|
573
|
-
type: "mssql" | "
|
|
603
|
+
type: "mssql" | "pg" | "mysql";
|
|
574
604
|
connection: {
|
|
575
605
|
host: string;
|
|
576
606
|
port: number;
|
|
@@ -600,6 +630,12 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
600
630
|
source: string;
|
|
601
631
|
target: string;
|
|
602
632
|
}[];
|
|
633
|
+
conditions?: {
|
|
634
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
635
|
+
source?: string | undefined;
|
|
636
|
+
target?: string | undefined;
|
|
637
|
+
value?: string | number | boolean | undefined;
|
|
638
|
+
}[] | undefined;
|
|
603
639
|
}[];
|
|
604
640
|
columnDescriptions: Record<string, string>;
|
|
605
641
|
description?: string | undefined;
|
|
@@ -839,6 +875,12 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
839
875
|
source: string;
|
|
840
876
|
target: string;
|
|
841
877
|
}[];
|
|
878
|
+
conditions?: {
|
|
879
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
880
|
+
source?: string | undefined;
|
|
881
|
+
target?: string | undefined;
|
|
882
|
+
value?: string | number | boolean | undefined;
|
|
883
|
+
}[] | undefined;
|
|
842
884
|
}[];
|
|
843
885
|
relationshipsReversed: {
|
|
844
886
|
internalName: string;
|
|
@@ -852,6 +894,12 @@ export declare const getSchemas: (tablesAndStoredProceduresForRole: Record<strin
|
|
|
852
894
|
source: string;
|
|
853
895
|
target: string;
|
|
854
896
|
}[];
|
|
897
|
+
conditions?: {
|
|
898
|
+
operator: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "like" | "is_null" | "is_not_null";
|
|
899
|
+
source?: string | undefined;
|
|
900
|
+
target?: string | undefined;
|
|
901
|
+
value?: string | number | boolean | undefined;
|
|
902
|
+
}[] | undefined;
|
|
855
903
|
}[];
|
|
856
904
|
};
|
|
857
905
|
isVirtualColumn: (table: string, column: string) => import("../../types/configuration").VirtualColumn | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/configuration/getSchemas/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOtD,eAAO,MAAM,sBAAsB,GAAI,QAAQ,aAAa,yCAAoC,CAAC;AAEjG,eAAO,MAAM,cAAc,GAAI,gBAAgB,cAAc,EAAE,UAAS,OAAe;;;;CAOtF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAErE,eAAO,MAAM,WAAW,GACtB,UAAU,cAAc,EACxB,aAAa,oBAAoB,EACjC,OAAM,IAAI,GAAG,IAAW,EACxB,uBAAsB,oBAAoB,GAAG,IAAW;;;;;;;;;;;;;;;;;;;;;;;;CAQzD,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC;AAErF,eAAO,MAAM,SAAS,GACpB,cAAc,cAAc,EAC5B,OAAM,IAAI,GAAG,IAAW,EACxB,uBAAsB,oBAAoB,GAAG,IAAW,EACxD,YAAW,OAAe
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/configuration/getSchemas/index.ts"],"names":[],"mappings":"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"}
|