@memberjunction/server 5.13.0 → 5.15.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/agents/skip-sdk.d.ts +8 -0
- package/dist/agents/skip-sdk.d.ts.map +1 -1
- package/dist/agents/skip-sdk.js +19 -0
- package/dist/agents/skip-sdk.js.map +1 -1
- package/dist/config.d.ts +37 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -0
- package/dist/config.js.map +1 -1
- package/dist/generated/generated.d.ts +169 -0
- package/dist/generated/generated.d.ts.map +1 -1
- package/dist/generated/generated.js +909 -1
- package/dist/generated/generated.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
- package/dist/resolvers/GetDataResolver.js +2 -1
- package/dist/resolvers/GetDataResolver.js.map +1 -1
- package/dist/resolvers/{CreateQueryResolver.d.ts → QuerySystemUserResolver.d.ts} +26 -82
- package/dist/resolvers/QuerySystemUserResolver.d.ts.map +1 -0
- package/dist/resolvers/{CreateQueryResolver.js → QuerySystemUserResolver.js} +123 -486
- package/dist/resolvers/QuerySystemUserResolver.js.map +1 -0
- package/dist/resolvers/TestQuerySQLResolver.d.ts +54 -0
- package/dist/resolvers/TestQuerySQLResolver.d.ts.map +1 -0
- package/dist/resolvers/TestQuerySQLResolver.js +189 -0
- package/dist/resolvers/TestQuerySQLResolver.js.map +1 -0
- package/package.json +59 -59
- package/src/agents/skip-sdk.ts +22 -0
- package/src/config.ts +8 -0
- package/src/generated/generated.ts +635 -2
- package/src/index.ts +2 -1
- package/src/resolvers/GetDataResolver.ts +2 -1
- package/src/resolvers/{CreateQueryResolver.ts → QuerySystemUserResolver.ts} +143 -413
- package/src/resolvers/TestQuerySQLResolver.ts +149 -0
- package/dist/resolvers/CreateQueryResolver.d.ts.map +0 -1
- package/dist/resolvers/CreateQueryResolver.js.map +0 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { Arg, Ctx, Field, InputType, Int, ObjectType, Query, Resolver } from 'type-graphql';
|
|
2
|
+
import { GraphQLJSONObject } from 'graphql-type-json';
|
|
3
|
+
import { RunQuery, IRunQueryProvider, LogError, LogStatus, QueryExecutionSpec } from '@memberjunction/core';
|
|
4
|
+
import { AppContext } from '../types.js';
|
|
5
|
+
import { RequireSystemUser } from '../directives/RequireSystemUser.js';
|
|
6
|
+
import { GetReadOnlyProvider } from '../util.js';
|
|
7
|
+
import { ResolverBase } from '../generic/ResolverBase.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* GraphQL input type for inline dependency queries.
|
|
11
|
+
* Self-referencing to support recursive dependency trees.
|
|
12
|
+
*/
|
|
13
|
+
@InputType()
|
|
14
|
+
export class QueryDependencySpecInput {
|
|
15
|
+
@Field(() => String, { description: 'Query name as referenced in the composition token' })
|
|
16
|
+
Name: string;
|
|
17
|
+
|
|
18
|
+
@Field(() => String, { description: 'Category path as referenced in the composition token (e.g., "/Analytics/Sales/")' })
|
|
19
|
+
CategoryPath: string;
|
|
20
|
+
|
|
21
|
+
@Field(() => String, { description: 'The raw SQL for this dependency' })
|
|
22
|
+
SQL: string;
|
|
23
|
+
|
|
24
|
+
@Field(() => Boolean, { nullable: true, description: 'Whether this dependency uses Nunjucks template syntax' })
|
|
25
|
+
UsesTemplate?: boolean;
|
|
26
|
+
|
|
27
|
+
@Field(() => GraphQLJSONObject, { nullable: true, description: 'Parameters for this dependency\'s Nunjucks templates' })
|
|
28
|
+
Parameters?: Record<string, string>;
|
|
29
|
+
|
|
30
|
+
@Field(() => [QueryDependencySpecInput], { nullable: true, description: 'Nested dependencies (recursive)' })
|
|
31
|
+
Dependencies?: QueryDependencySpecInput[];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* GraphQL input type for transient query execution.
|
|
36
|
+
* Accepts the full QueryExecutionSpec shape for testing unsaved queries
|
|
37
|
+
* with composition + Nunjucks template processing.
|
|
38
|
+
*/
|
|
39
|
+
@InputType()
|
|
40
|
+
export class TestQuerySQLInput {
|
|
41
|
+
@Field(() => String, { description: 'The raw SQL — may contain {{query:"..."}} and {{ param }} tokens' })
|
|
42
|
+
SQL: string;
|
|
43
|
+
|
|
44
|
+
@Field(() => GraphQLJSONObject, { nullable: true, description: 'Parameter values for Nunjucks template substitution' })
|
|
45
|
+
Parameters?: Record<string, string>;
|
|
46
|
+
|
|
47
|
+
@Field(() => Boolean, { nullable: true, description: 'Whether this query uses Nunjucks template syntax' })
|
|
48
|
+
UsesTemplate?: boolean;
|
|
49
|
+
|
|
50
|
+
@Field(() => [QueryDependencySpecInput], { nullable: true, description: 'Inline dependency queries for composition resolution' })
|
|
51
|
+
Dependencies?: QueryDependencySpecInput[];
|
|
52
|
+
|
|
53
|
+
@Field(() => Int, { nullable: true, defaultValue: 100, description: 'Max rows to return (default: 100)' })
|
|
54
|
+
MaxRows?: number;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* GraphQL output type for transient query execution results.
|
|
59
|
+
*/
|
|
60
|
+
@ObjectType()
|
|
61
|
+
export class TestQuerySQLResult {
|
|
62
|
+
@Field(() => Boolean, { description: 'Whether the query executed successfully' })
|
|
63
|
+
Success: boolean;
|
|
64
|
+
|
|
65
|
+
@Field(() => String, { nullable: true, description: 'JSON-stringified result rows' })
|
|
66
|
+
Results?: string;
|
|
67
|
+
|
|
68
|
+
@Field(() => Int, { description: 'Number of rows returned' })
|
|
69
|
+
RowCount: number;
|
|
70
|
+
|
|
71
|
+
@Field(() => Int, { description: 'Execution time in milliseconds' })
|
|
72
|
+
ExecutionTime: number;
|
|
73
|
+
|
|
74
|
+
@Field(() => String, { nullable: true, description: 'Error message if execution failed' })
|
|
75
|
+
ErrorMessage?: string;
|
|
76
|
+
|
|
77
|
+
@Field(() => String, { nullable: true, description: 'JSON-stringified applied parameters including defaults' })
|
|
78
|
+
AppliedParameters?: string;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Resolver for testing transient (unsaved) query SQL with full composition + Nunjucks template processing.
|
|
83
|
+
*
|
|
84
|
+
* This resolver exposes the lower-layer spec-based execution pipeline via GraphQL,
|
|
85
|
+
* enabling external systems (e.g., Skip-Brain) to test query SQL before saving to the database.
|
|
86
|
+
*
|
|
87
|
+
* Security:
|
|
88
|
+
* - Requires system user authentication (@RequireSystemUser)
|
|
89
|
+
* - Uses read-only database connection (no mutation possible)
|
|
90
|
+
* - Enforces MaxRows limit (default 100) to prevent unbounded queries
|
|
91
|
+
*
|
|
92
|
+
* @see https://github.com/MemberJunction/MJ/issues/2172
|
|
93
|
+
*/
|
|
94
|
+
@Resolver()
|
|
95
|
+
export class TestQuerySQLResolver extends ResolverBase {
|
|
96
|
+
@RequireSystemUser()
|
|
97
|
+
@Query(() => TestQuerySQLResult, {
|
|
98
|
+
description: 'Test transient SQL with full composition + Nunjucks template processing without requiring a saved query'
|
|
99
|
+
})
|
|
100
|
+
async TestQuerySQL(
|
|
101
|
+
@Arg('input', () => TestQuerySQLInput) input: TestQuerySQLInput,
|
|
102
|
+
@Ctx() context: AppContext
|
|
103
|
+
): Promise<TestQuerySQLResult> {
|
|
104
|
+
try {
|
|
105
|
+
// Use read-only provider for security — no mutation possible
|
|
106
|
+
const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: false });
|
|
107
|
+
if (!provider) {
|
|
108
|
+
return {
|
|
109
|
+
Success: false,
|
|
110
|
+
RowCount: 0,
|
|
111
|
+
ExecutionTime: 0,
|
|
112
|
+
ErrorMessage: 'Read-only data source is not available. TestQuerySQL requires a read-only connection for security.',
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
const rq = new RunQuery(provider as unknown as IRunQueryProvider);
|
|
117
|
+
|
|
118
|
+
const spec: QueryExecutionSpec = {
|
|
119
|
+
SQL: input.SQL,
|
|
120
|
+
Parameters: input.Parameters,
|
|
121
|
+
UsesTemplate: input.UsesTemplate,
|
|
122
|
+
Dependencies: input.Dependencies,
|
|
123
|
+
MaxRows: input.MaxRows ?? 100,
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
LogStatus(`TestQuerySQL: Executing transient query (MaxRows=${spec.MaxRows}, UsesTemplate=${spec.UsesTemplate ?? false}, Dependencies=${spec.Dependencies?.length ?? 0})`);
|
|
127
|
+
|
|
128
|
+
const result = await rq.ExecuteFromSpec(spec, context.userPayload.userRecord);
|
|
129
|
+
|
|
130
|
+
return {
|
|
131
|
+
Success: result.Success,
|
|
132
|
+
Results: result.Results ? JSON.stringify(result.Results) : undefined,
|
|
133
|
+
RowCount: result.RowCount,
|
|
134
|
+
ExecutionTime: result.ExecutionTime,
|
|
135
|
+
ErrorMessage: result.ErrorMessage || undefined,
|
|
136
|
+
AppliedParameters: result.AppliedParameters ? JSON.stringify(result.AppliedParameters) : undefined,
|
|
137
|
+
};
|
|
138
|
+
} catch (err) {
|
|
139
|
+
LogError(err);
|
|
140
|
+
const errorMessage = err instanceof Error ? err.message : String(err);
|
|
141
|
+
return {
|
|
142
|
+
Success: false,
|
|
143
|
+
RowCount: 0,
|
|
144
|
+
ExecutionTime: 0,
|
|
145
|
+
ErrorMessage: `TestQuerySQL failed: ${errorMessage}`,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CreateQueryResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/CreateQueryResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CreateQueryResolver.js","sourceRoot":"","sources":["../../src/resolvers/CreateQueryResolver.ts"],"names":[],"mappings":"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"}
|