@memberjunction/server 3.4.0 → 4.1.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.
Files changed (269) hide show
  1. package/README.md +689 -513
  2. package/dist/agents/skip-agent.d.ts +65 -0
  3. package/dist/agents/skip-agent.d.ts.map +1 -1
  4. package/dist/agents/skip-agent.js +63 -5
  5. package/dist/agents/skip-agent.js.map +1 -1
  6. package/dist/agents/skip-sdk.d.ts +163 -0
  7. package/dist/agents/skip-sdk.d.ts.map +1 -1
  8. package/dist/agents/skip-sdk.js +143 -12
  9. package/dist/agents/skip-sdk.js.map +1 -1
  10. package/dist/apolloServer/index.d.ts +0 -1
  11. package/dist/apolloServer/index.d.ts.map +1 -1
  12. package/dist/auth/APIKeyScopeAuth.d.ts +82 -0
  13. package/dist/auth/APIKeyScopeAuth.d.ts.map +1 -1
  14. package/dist/auth/APIKeyScopeAuth.js +78 -0
  15. package/dist/auth/APIKeyScopeAuth.js.map +1 -1
  16. package/dist/auth/AuthProviderFactory.d.ts +35 -0
  17. package/dist/auth/AuthProviderFactory.d.ts.map +1 -1
  18. package/dist/auth/AuthProviderFactory.js +51 -4
  19. package/dist/auth/AuthProviderFactory.js.map +1 -1
  20. package/dist/auth/BaseAuthProvider.d.ts +21 -0
  21. package/dist/auth/BaseAuthProvider.d.ts.map +1 -1
  22. package/dist/auth/BaseAuthProvider.js +24 -9
  23. package/dist/auth/BaseAuthProvider.js.map +1 -1
  24. package/dist/auth/IAuthProvider.d.ts +32 -0
  25. package/dist/auth/IAuthProvider.d.ts.map +1 -1
  26. package/dist/auth/exampleNewUserSubClass.d.ts +5 -1
  27. package/dist/auth/exampleNewUserSubClass.d.ts.map +1 -1
  28. package/dist/auth/exampleNewUserSubClass.js +21 -6
  29. package/dist/auth/exampleNewUserSubClass.js.map +1 -1
  30. package/dist/auth/index.d.ts +14 -0
  31. package/dist/auth/index.d.ts.map +1 -1
  32. package/dist/auth/index.js +35 -22
  33. package/dist/auth/index.js.map +1 -1
  34. package/dist/auth/initializeProviders.d.ts +3 -0
  35. package/dist/auth/initializeProviders.d.ts.map +1 -1
  36. package/dist/auth/initializeProviders.js +6 -0
  37. package/dist/auth/initializeProviders.js.map +1 -1
  38. package/dist/auth/newUsers.d.ts.map +1 -1
  39. package/dist/auth/newUsers.js +14 -3
  40. package/dist/auth/newUsers.js.map +1 -1
  41. package/dist/auth/providers/Auth0Provider.d.ts +9 -0
  42. package/dist/auth/providers/Auth0Provider.d.ts.map +1 -1
  43. package/dist/auth/providers/Auth0Provider.js +10 -0
  44. package/dist/auth/providers/Auth0Provider.js.map +1 -1
  45. package/dist/auth/providers/CognitoProvider.d.ts +9 -0
  46. package/dist/auth/providers/CognitoProvider.d.ts.map +1 -1
  47. package/dist/auth/providers/CognitoProvider.js +10 -0
  48. package/dist/auth/providers/CognitoProvider.js.map +1 -1
  49. package/dist/auth/providers/GoogleProvider.d.ts +9 -0
  50. package/dist/auth/providers/GoogleProvider.d.ts.map +1 -1
  51. package/dist/auth/providers/GoogleProvider.js +11 -1
  52. package/dist/auth/providers/GoogleProvider.js.map +1 -1
  53. package/dist/auth/providers/MSALProvider.d.ts +9 -0
  54. package/dist/auth/providers/MSALProvider.d.ts.map +1 -1
  55. package/dist/auth/providers/MSALProvider.js +10 -0
  56. package/dist/auth/providers/MSALProvider.js.map +1 -1
  57. package/dist/auth/providers/OktaProvider.d.ts +9 -0
  58. package/dist/auth/providers/OktaProvider.d.ts.map +1 -1
  59. package/dist/auth/providers/OktaProvider.js +10 -0
  60. package/dist/auth/providers/OktaProvider.js.map +1 -1
  61. package/dist/config.d.ts +12 -0
  62. package/dist/config.d.ts.map +1 -1
  63. package/dist/config.js +42 -8
  64. package/dist/config.js.map +1 -1
  65. package/dist/context.d.ts +8 -1
  66. package/dist/context.d.ts.map +1 -1
  67. package/dist/context.js +26 -4
  68. package/dist/context.js.map +1 -1
  69. package/dist/directives/Public.js +2 -0
  70. package/dist/directives/Public.js.map +1 -1
  71. package/dist/entitySubclasses/entityPermissions.server.d.ts +7 -2
  72. package/dist/entitySubclasses/entityPermissions.server.d.ts.map +1 -1
  73. package/dist/entitySubclasses/entityPermissions.server.js +26 -8
  74. package/dist/entitySubclasses/entityPermissions.server.js.map +1 -1
  75. package/dist/generated/generated.d.ts +539 -2
  76. package/dist/generated/generated.d.ts.map +1 -1
  77. package/dist/generated/generated.js +9985 -14951
  78. package/dist/generated/generated.js.map +1 -1
  79. package/dist/generic/DeleteOptionsInput.d.ts +3 -0
  80. package/dist/generic/DeleteOptionsInput.d.ts.map +1 -1
  81. package/dist/generic/DeleteOptionsInput.js +3 -2
  82. package/dist/generic/DeleteOptionsInput.js.map +1 -1
  83. package/dist/generic/KeyInputOutputTypes.js +0 -6
  84. package/dist/generic/KeyInputOutputTypes.js.map +1 -1
  85. package/dist/generic/KeyValuePairInput.d.ts +4 -0
  86. package/dist/generic/KeyValuePairInput.d.ts.map +1 -1
  87. package/dist/generic/KeyValuePairInput.js +4 -2
  88. package/dist/generic/KeyValuePairInput.js.map +1 -1
  89. package/dist/generic/PushStatusResolver.js +0 -3
  90. package/dist/generic/PushStatusResolver.js.map +1 -1
  91. package/dist/generic/ResolverBase.d.ts +58 -0
  92. package/dist/generic/ResolverBase.d.ts.map +1 -1
  93. package/dist/generic/ResolverBase.js +203 -18
  94. package/dist/generic/ResolverBase.js.map +1 -1
  95. package/dist/generic/RunViewResolver.d.ts +22 -0
  96. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  97. package/dist/generic/RunViewResolver.js +42 -108
  98. package/dist/generic/RunViewResolver.js.map +1 -1
  99. package/dist/index.d.ts +12 -0
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +94 -37
  102. package/dist/index.js.map +1 -1
  103. package/dist/orm.d.ts.map +1 -1
  104. package/dist/orm.js +2 -1
  105. package/dist/orm.js.map +1 -1
  106. package/dist/resolvers/APIKeyResolver.d.ts +74 -0
  107. package/dist/resolvers/APIKeyResolver.d.ts.map +1 -1
  108. package/dist/resolvers/APIKeyResolver.js +49 -10
  109. package/dist/resolvers/APIKeyResolver.js.map +1 -1
  110. package/dist/resolvers/ActionResolver.d.ts +189 -0
  111. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  112. package/dist/resolvers/ActionResolver.js +152 -21
  113. package/dist/resolvers/ActionResolver.js.map +1 -1
  114. package/dist/resolvers/ColorResolver.js +0 -5
  115. package/dist/resolvers/ColorResolver.js.map +1 -1
  116. package/dist/resolvers/ComponentRegistryResolver.d.ts +65 -0
  117. package/dist/resolvers/ComponentRegistryResolver.d.ts.map +1 -1
  118. package/dist/resolvers/ComponentRegistryResolver.js +118 -40
  119. package/dist/resolvers/ComponentRegistryResolver.js.map +1 -1
  120. package/dist/resolvers/CreateQueryResolver.d.ts +47 -0
  121. package/dist/resolvers/CreateQueryResolver.d.ts.map +1 -1
  122. package/dist/resolvers/CreateQueryResolver.js +92 -116
  123. package/dist/resolvers/CreateQueryResolver.js.map +1 -1
  124. package/dist/resolvers/DatasetResolver.js +2 -14
  125. package/dist/resolvers/DatasetResolver.js.map +1 -1
  126. package/dist/resolvers/EntityCommunicationsResolver.d.ts +40 -0
  127. package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
  128. package/dist/resolvers/EntityCommunicationsResolver.js +2 -36
  129. package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
  130. package/dist/resolvers/EntityRecordNameResolver.js +0 -7
  131. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  132. package/dist/resolvers/FileCategoryResolver.d.ts +1 -1
  133. package/dist/resolvers/FileCategoryResolver.d.ts.map +1 -1
  134. package/dist/resolvers/FileCategoryResolver.js +15 -3
  135. package/dist/resolvers/FileCategoryResolver.js.map +1 -1
  136. package/dist/resolvers/FileResolver.d.ts +16 -0
  137. package/dist/resolvers/FileResolver.d.ts.map +1 -1
  138. package/dist/resolvers/FileResolver.js +59 -74
  139. package/dist/resolvers/FileResolver.js.map +1 -1
  140. package/dist/resolvers/GetDataContextDataResolver.d.ts +18 -1
  141. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  142. package/dist/resolvers/GetDataContextDataResolver.js +17 -9
  143. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  144. package/dist/resolvers/GetDataResolver.d.ts +19 -0
  145. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  146. package/dist/resolvers/GetDataResolver.js +35 -35
  147. package/dist/resolvers/GetDataResolver.js.map +1 -1
  148. package/dist/resolvers/InfoResolver.d.ts +2 -2
  149. package/dist/resolvers/InfoResolver.d.ts.map +1 -1
  150. package/dist/resolvers/InfoResolver.js +17 -20
  151. package/dist/resolvers/InfoResolver.js.map +1 -1
  152. package/dist/resolvers/MCPResolver.d.ts +325 -1
  153. package/dist/resolvers/MCPResolver.d.ts.map +1 -1
  154. package/dist/resolvers/MCPResolver.js +931 -24
  155. package/dist/resolvers/MCPResolver.js.map +1 -1
  156. package/dist/resolvers/MergeRecordsResolver.js +3 -29
  157. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  158. package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts.map +1 -1
  159. package/dist/resolvers/PotentialDuplicateRecordResolver.js +0 -3
  160. package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -1
  161. package/dist/resolvers/QueryResolver.d.ts +20 -0
  162. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  163. package/dist/resolvers/QueryResolver.js +44 -36
  164. package/dist/resolvers/QueryResolver.js.map +1 -1
  165. package/dist/resolvers/ReportResolver.d.ts +3 -0
  166. package/dist/resolvers/ReportResolver.d.ts.map +1 -1
  167. package/dist/resolvers/ReportResolver.js +9 -10
  168. package/dist/resolvers/ReportResolver.js.map +1 -1
  169. package/dist/resolvers/RunAIAgentResolver.d.ts +54 -0
  170. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  171. package/dist/resolvers/RunAIAgentResolver.js +116 -40
  172. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  173. package/dist/resolvers/RunAIPromptResolver.d.ts +42 -0
  174. package/dist/resolvers/RunAIPromptResolver.d.ts.map +1 -1
  175. package/dist/resolvers/RunAIPromptResolver.js +95 -22
  176. package/dist/resolvers/RunAIPromptResolver.js.map +1 -1
  177. package/dist/resolvers/RunTemplateResolver.js +9 -6
  178. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  179. package/dist/resolvers/RunTestResolver.d.ts +12 -0
  180. package/dist/resolvers/RunTestResolver.d.ts.map +1 -1
  181. package/dist/resolvers/RunTestResolver.js +35 -21
  182. package/dist/resolvers/RunTestResolver.js.map +1 -1
  183. package/dist/resolvers/SqlLoggingConfigResolver.d.ts +312 -0
  184. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  185. package/dist/resolvers/SqlLoggingConfigResolver.js +295 -45
  186. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  187. package/dist/resolvers/SyncDataResolver.d.ts +21 -0
  188. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  189. package/dist/resolvers/SyncDataResolver.js +36 -22
  190. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  191. package/dist/resolvers/SyncRolesUsersResolver.d.ts +14 -0
  192. package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
  193. package/dist/resolvers/SyncRolesUsersResolver.js +54 -21
  194. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  195. package/dist/resolvers/TaskResolver.d.ts +13 -0
  196. package/dist/resolvers/TaskResolver.d.ts.map +1 -1
  197. package/dist/resolvers/TaskResolver.js +22 -7
  198. package/dist/resolvers/TaskResolver.js.map +1 -1
  199. package/dist/resolvers/TelemetryResolver.d.ts +22 -0
  200. package/dist/resolvers/TelemetryResolver.d.ts.map +1 -1
  201. package/dist/resolvers/TelemetryResolver.js +45 -79
  202. package/dist/resolvers/TelemetryResolver.js.map +1 -1
  203. package/dist/resolvers/TransactionGroupResolver.js +11 -13
  204. package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
  205. package/dist/resolvers/UserFavoriteResolver.js +3 -12
  206. package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
  207. package/dist/resolvers/UserResolver.js +10 -0
  208. package/dist/resolvers/UserResolver.js.map +1 -1
  209. package/dist/resolvers/UserViewResolver.js +4 -0
  210. package/dist/resolvers/UserViewResolver.js.map +1 -1
  211. package/dist/resolvers/VersionHistoryResolver.d.ts +39 -0
  212. package/dist/resolvers/VersionHistoryResolver.d.ts.map +1 -0
  213. package/dist/resolvers/VersionHistoryResolver.js +208 -0
  214. package/dist/resolvers/VersionHistoryResolver.js.map +1 -0
  215. package/dist/rest/EntityCRUDHandler.d.ts +19 -0
  216. package/dist/rest/EntityCRUDHandler.d.ts.map +1 -1
  217. package/dist/rest/EntityCRUDHandler.js +55 -0
  218. package/dist/rest/EntityCRUDHandler.js.map +1 -1
  219. package/dist/rest/OAuthCallbackHandler.d.ts +143 -0
  220. package/dist/rest/OAuthCallbackHandler.d.ts.map +1 -0
  221. package/dist/rest/OAuthCallbackHandler.js +634 -0
  222. package/dist/rest/OAuthCallbackHandler.js.map +1 -0
  223. package/dist/rest/RESTEndpointHandler.d.ts +120 -0
  224. package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
  225. package/dist/rest/RESTEndpointHandler.js +213 -24
  226. package/dist/rest/RESTEndpointHandler.js.map +1 -1
  227. package/dist/rest/ViewOperationsHandler.d.ts +19 -0
  228. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  229. package/dist/rest/ViewOperationsHandler.js +39 -0
  230. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  231. package/dist/rest/index.d.ts +1 -0
  232. package/dist/rest/index.d.ts.map +1 -1
  233. package/dist/rest/index.js +1 -0
  234. package/dist/rest/index.js.map +1 -1
  235. package/dist/rest/setupRESTEndpoints.d.ts +35 -0
  236. package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
  237. package/dist/rest/setupRESTEndpoints.js +15 -1
  238. package/dist/rest/setupRESTEndpoints.js.map +1 -1
  239. package/dist/services/ScheduledJobsService.d.ts +31 -0
  240. package/dist/services/ScheduledJobsService.d.ts.map +1 -1
  241. package/dist/services/ScheduledJobsService.js +38 -4
  242. package/dist/services/ScheduledJobsService.js.map +1 -1
  243. package/dist/services/TaskOrchestrator.d.ts +73 -0
  244. package/dist/services/TaskOrchestrator.d.ts.map +1 -1
  245. package/dist/services/TaskOrchestrator.js +137 -15
  246. package/dist/services/TaskOrchestrator.js.map +1 -1
  247. package/dist/types.d.ts +14 -0
  248. package/dist/types.d.ts.map +1 -1
  249. package/dist/types.js +0 -13
  250. package/dist/types.js.map +1 -1
  251. package/dist/util.d.ts +37 -1
  252. package/dist/util.d.ts.map +1 -1
  253. package/dist/util.js +55 -8
  254. package/dist/util.js.map +1 -1
  255. package/package.json +83 -78
  256. package/src/auth/exampleNewUserSubClass.ts +1 -5
  257. package/src/auth/newUsers.ts +4 -2
  258. package/src/entitySubclasses/entityPermissions.server.ts +1 -3
  259. package/src/generated/generated.ts +4707 -2664
  260. package/src/index.ts +73 -62
  261. package/src/resolvers/FileCategoryResolver.ts +1 -1
  262. package/src/resolvers/InfoResolver.ts +10 -6
  263. package/src/resolvers/MCPResolver.ts +910 -10
  264. package/src/resolvers/PotentialDuplicateRecordResolver.ts +0 -4
  265. package/src/resolvers/VersionHistoryResolver.ts +177 -0
  266. package/src/rest/OAuthCallbackHandler.ts +766 -0
  267. package/src/rest/RESTEndpointHandler.ts +58 -35
  268. package/src/rest/index.ts +2 -1
  269. package/src/rest/setupRESTEndpoints.ts +13 -12
@@ -18,20 +18,11 @@ import * as fs from 'fs/promises';
18
18
  import { loadConfig } from '../config.js';
19
19
  import { ResolverBase } from '../generic/ResolverBase.js';
20
20
  import { GetReadOnlyProvider } from '../util.js';
21
+ /**
22
+ * Configuration options for SQL logging sessions.
23
+ * These options control how SQL statements are captured, formatted, and saved.
24
+ */
21
25
  let SqlLoggingOptions = class SqlLoggingOptions {
22
- formatAsMigration;
23
- description;
24
- statementTypes;
25
- batchSeparator;
26
- prettyPrint;
27
- logRecordChangeMetadata;
28
- retainEmptyLogFiles;
29
- filterByUserId;
30
- filterPatterns;
31
- filterType;
32
- verboseOutput;
33
- defaultSchemaName;
34
- sessionName;
35
26
  };
36
27
  __decorate([
37
28
  Field(() => Boolean, { nullable: true }),
@@ -90,13 +81,6 @@ SqlLoggingOptions = __decorate([
90
81
  ], SqlLoggingOptions);
91
82
  export { SqlLoggingOptions };
92
83
  let SqlLoggingSession = class SqlLoggingSession {
93
- id;
94
- filePath;
95
- startTime;
96
- statementCount;
97
- options;
98
- sessionName;
99
- filterByUserId;
100
84
  };
101
85
  __decorate([
102
86
  Field(() => String),
@@ -131,19 +115,6 @@ SqlLoggingSession = __decorate([
131
115
  ], SqlLoggingSession);
132
116
  export { SqlLoggingSession };
133
117
  let SqlLoggingOptionsInput = class SqlLoggingOptionsInput {
134
- formatAsMigration;
135
- description;
136
- statementTypes;
137
- batchSeparator;
138
- prettyPrint;
139
- logRecordChangeMetadata;
140
- retainEmptyLogFiles;
141
- filterByUserId;
142
- filterPatterns;
143
- filterType;
144
- verboseOutput;
145
- defaultSchemaName;
146
- sessionName;
147
118
  };
148
119
  __decorate([
149
120
  Field(() => Boolean, { nullable: true }),
@@ -202,9 +173,6 @@ SqlLoggingOptionsInput = __decorate([
202
173
  ], SqlLoggingOptionsInput);
203
174
  export { SqlLoggingOptionsInput };
204
175
  let StartSqlLoggingInput = class StartSqlLoggingInput {
205
- fileName;
206
- options;
207
- filterToCurrentUser;
208
176
  };
209
177
  __decorate([
210
178
  Field(() => String, { nullable: true }),
@@ -223,13 +191,6 @@ StartSqlLoggingInput = __decorate([
223
191
  ], StartSqlLoggingInput);
224
192
  export { StartSqlLoggingInput };
225
193
  let SqlLoggingConfig = class SqlLoggingConfig {
226
- enabled;
227
- defaultOptions;
228
- allowedLogDirectory;
229
- maxActiveSessions;
230
- autoCleanupEmptyFiles;
231
- sessionTimeout;
232
- activeSessionCount;
233
194
  };
234
195
  __decorate([
235
196
  Field(() => Boolean),
@@ -263,20 +224,66 @@ SqlLoggingConfig = __decorate([
263
224
  ObjectType()
264
225
  ], SqlLoggingConfig);
265
226
  export { SqlLoggingConfig };
227
+ /**
228
+ * GraphQL resolver for SQL logging configuration and session management.
229
+ * Provides queries and mutations for controlling SQL logging functionality.
230
+ *
231
+ * **Security**: All operations require Owner-level privileges.
232
+ *
233
+ * @example
234
+ * ```typescript
235
+ * // Start a new logging session
236
+ * const session = await startSqlLogging({
237
+ * fileName: "my-session.sql",
238
+ * filterToCurrentUser: true,
239
+ * options: {
240
+ * prettyPrint: true,
241
+ * statementTypes: "both"
242
+ * }
243
+ * });
244
+ *
245
+ * // Get current configuration
246
+ * const config = await sqlLoggingConfig();
247
+ *
248
+ * // List active sessions
249
+ * const sessions = await activeSqlLoggingSessions();
250
+ *
251
+ * // Stop a session
252
+ * await stopSqlLogging(session.id);
253
+ * ```
254
+ */
266
255
  let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBase {
267
256
  static { SqlLoggingConfigResolver_1 = this; }
268
- static LOG_FILE_PREFIX = 'sql-log-';
269
- static sessionTimeouts = new Map();
257
+ /** Default prefix for auto-generated SQL log filenames */
258
+ static { this.LOG_FILE_PREFIX = 'sql-log-'; }
259
+ /** Track active session timeouts for proper cleanup when sessions are manually stopped */
260
+ static { this.sessionTimeouts = new Map(); }
261
+ /**
262
+ * Validates that the current user has Owner-level privileges required for SQL logging operations.
263
+ *
264
+ * This method performs authentication and authorization checks:
265
+ * - Verifies user is authenticated (has email in context)
266
+ * - Looks up user in UserCache by email (case-insensitive)
267
+ * - Checks that user Type field equals 'Owner' (trimmed for nchar padding)
268
+ *
269
+ * @param context - The GraphQL application context containing user authentication data
270
+ * @returns Promise resolving to the authenticated UserInfo object
271
+ * @throws Error if user is not authenticated, not found, or lacks Owner privileges
272
+ *
273
+ * @private
274
+ */
270
275
  async checkOwnerAccess(context) {
271
276
  const userEmail = context.userPayload?.email;
272
277
  if (!userEmail) {
273
278
  throw new Error('User not authenticated');
274
279
  }
280
+ // Get the user from cache
275
281
  const users = UserCache.Instance.Users;
276
282
  const user = users.find(u => u.Email.toLowerCase() === userEmail.toLowerCase());
277
283
  if (!user) {
278
284
  throw new Error('User not found');
279
285
  }
286
+ // Debug logging
280
287
  console.log('SQL Logging access check:', {
281
288
  email: user.Email,
282
289
  type: user.Type,
@@ -284,11 +291,42 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
284
291
  typeTrimmed: user.Type?.trim(),
285
292
  isOwner: user.Type?.trim().toLowerCase() === 'owner'
286
293
  });
294
+ // Check if user has Type = 'Owner' (trim and case-insensitive for nchar fields)
287
295
  if (user.Type?.trim().toLowerCase() !== 'owner') {
288
296
  throw new Error('Access denied. This feature requires Owner privileges.');
289
297
  }
290
298
  return user;
291
299
  }
300
+ /**
301
+ * Retrieves the current SQL logging configuration and status information.
302
+ *
303
+ * Returns comprehensive configuration details including:
304
+ * - Whether SQL logging is enabled in server config
305
+ * - Default logging options (formatting, statement types, etc.)
306
+ * - File system settings (log directory, cleanup options)
307
+ * - Session limits and timeout settings
308
+ * - Count of currently active logging sessions
309
+ *
310
+ * @param context - GraphQL context (requires Owner privileges)
311
+ * @returns Promise resolving to complete SQL logging configuration
312
+ * @throws Error if user lacks Owner privileges
313
+ *
314
+ * @example
315
+ * ```graphql
316
+ * query {
317
+ * sqlLoggingConfig {
318
+ * enabled
319
+ * activeSessionCount
320
+ * maxActiveSessions
321
+ * allowedLogDirectory
322
+ * defaultOptions {
323
+ * prettyPrint
324
+ * statementTypes
325
+ * }
326
+ * }
327
+ * }
328
+ * ```
329
+ */
292
330
  async sqlLoggingConfig(context) {
293
331
  await this.checkOwnerAccess(context);
294
332
  const config = await loadConfig();
@@ -311,6 +349,37 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
311
349
  activeSessionCount: activeSessions.length
312
350
  };
313
351
  }
352
+ /**
353
+ * Retrieves a list of all currently active SQL logging sessions.
354
+ *
355
+ * Returns detailed information for each active session including:
356
+ * - Unique session identifier and file path
357
+ * - Start time and statement count
358
+ * - Session configuration options
359
+ * - User filtering settings
360
+ *
361
+ * @param context - GraphQL context (requires Owner privileges)
362
+ * @returns Promise resolving to array of active SqlLoggingSession objects
363
+ * @throws Error if user lacks Owner privileges
364
+ *
365
+ * @example
366
+ * ```graphql
367
+ * query {
368
+ * activeSqlLoggingSessions {
369
+ * id
370
+ * sessionName
371
+ * filePath
372
+ * startTime
373
+ * statementCount
374
+ * filterByUserId
375
+ * options {
376
+ * prettyPrint
377
+ * statementTypes
378
+ * }
379
+ * }
380
+ * }
381
+ * ```
382
+ */
314
383
  async activeSqlLoggingSessions(context) {
315
384
  await this.checkOwnerAccess(context);
316
385
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
@@ -325,25 +394,67 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
325
394
  filterByUserId: session.options.filterByUserId
326
395
  }));
327
396
  }
397
+ /**
398
+ * Creates and starts a new SQL logging session with specified configuration.
399
+ *
400
+ * This mutation:
401
+ * - Validates SQL logging is enabled and session limits
402
+ * - Creates a secure file path within the allowed log directory
403
+ * - Configures session options (filtering, formatting, etc.)
404
+ * - Starts the logging session in SQLServerDataProvider
405
+ * - Sets up automatic cleanup after session timeout
406
+ *
407
+ * @param input - Configuration for the new logging session
408
+ * @param input.fileName - Optional custom filename for the log file
409
+ * @param input.filterToCurrentUser - Whether to filter SQL to current user only
410
+ * @param input.options - Logging options (formatting, statement types, etc.)
411
+ * @param context - GraphQL context (requires Owner privileges)
412
+ * @returns Promise resolving to the created SqlLoggingSession object
413
+ * @throws Error if logging disabled, session limit reached, or invalid file path
414
+ *
415
+ * @example
416
+ * ```graphql
417
+ * mutation {
418
+ * startSqlLogging(input: {
419
+ * fileName: "debug-session.sql"
420
+ * filterToCurrentUser: true
421
+ * options: {
422
+ * prettyPrint: true
423
+ * statementTypes: "both"
424
+ * sessionName: "Debug Session"
425
+ * }
426
+ * }) {
427
+ * id
428
+ * filePath
429
+ * sessionName
430
+ * }
431
+ * }
432
+ * ```
433
+ */
328
434
  async startSqlLogging(input, context) {
329
435
  await this.checkOwnerAccess(context);
330
436
  const config = await loadConfig();
437
+ // Check if SQL logging is enabled
331
438
  if (!config.sqlLogging?.enabled) {
332
439
  throw new Error('SQL logging is not enabled in the server configuration');
333
440
  }
441
+ // Check max active sessions
334
442
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
335
443
  const activeSessions = provider.GetActiveSqlLoggingSessions();
336
444
  if (activeSessions.length >= (config.sqlLogging.maxActiveSessions ?? 5)) {
337
445
  throw new Error(`Maximum number of active SQL logging sessions (${config.sqlLogging.maxActiveSessions}) reached`);
338
446
  }
447
+ // Prepare file path
339
448
  const allowedDir = path.resolve(config.sqlLogging.allowedLogDirectory ?? './logs/sql');
340
449
  await this.ensureDirectoryExists(allowedDir);
341
450
  const fileName = input.fileName || `${SqlLoggingConfigResolver_1.LOG_FILE_PREFIX}${new Date().toISOString().replace(/[:.]/g, '-')}.sql`;
342
451
  const filePath = path.join(allowedDir, fileName);
452
+ // Validate file path is within allowed directory
343
453
  const resolvedPath = path.resolve(filePath);
344
454
  if (!resolvedPath.startsWith(allowedDir)) {
345
455
  throw new Error('Invalid file path - must be within allowed log directory');
346
456
  }
457
+ // Merge options with defaults
347
458
  const defaultOptions = config.sqlLogging.defaultOptions || {};
348
459
  const userInfo = input.filterToCurrentUser ? this.GetUserFromPayload(context.userPayload) : undefined;
349
460
  const sessionOptions = {
@@ -352,7 +463,9 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
352
463
  sessionName: input.options?.sessionName || `Session started by ${context.userPayload.email}`,
353
464
  filterByUserId: input.filterToCurrentUser ? userInfo?.ID : input.options?.filterByUserId
354
465
  };
466
+ // Create the logging session
355
467
  const session = await provider.CreateSqlLogger(filePath, sessionOptions);
468
+ // Set up auto-cleanup after timeout with proper tracking
356
469
  if (config.sqlLogging.sessionTimeout > 0) {
357
470
  const timeoutId = setTimeout(async () => {
358
471
  try {
@@ -360,9 +473,11 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
360
473
  SqlLoggingConfigResolver_1.sessionTimeouts.delete(session.id);
361
474
  }
362
475
  catch (e) {
476
+ // Session might already be disposed - log for debugging
363
477
  console.warn(`Auto-cleanup failed for SQL logging session ${session.id}:`, e);
364
478
  }
365
479
  }, config.sqlLogging.sessionTimeout);
480
+ // Track the timeout so we can cancel it if session is manually stopped
366
481
  SqlLoggingConfigResolver_1.sessionTimeouts.set(session.id, timeoutId);
367
482
  }
368
483
  return {
@@ -375,13 +490,36 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
375
490
  filterByUserId: session.options.filterByUserId,
376
491
  };
377
492
  }
493
+ /**
494
+ * Stops and disposes of a specific SQL logging session.
495
+ *
496
+ * This mutation:
497
+ * - Validates the session exists and user has access
498
+ * - Calls dispose() on the session to close file handles
499
+ * - Removes the session from the active sessions map
500
+ * - Performs any configured cleanup operations
501
+ *
502
+ * @param sessionId - Unique identifier of the session to stop
503
+ * @param context - GraphQL context (requires Owner privileges)
504
+ * @returns Promise resolving to true if session was successfully stopped
505
+ * @throws Error if session not found or user lacks Owner privileges
506
+ *
507
+ * @example
508
+ * ```graphql
509
+ * mutation {
510
+ * stopSqlLogging(sessionId: "session-123-456")
511
+ * }
512
+ * ```
513
+ */
378
514
  async stopSqlLogging(sessionId, context) {
379
515
  await this.checkOwnerAccess(context);
380
516
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
517
+ // Use the public method to get and dispose the session
381
518
  const session = provider.GetSqlLoggingSessionById(sessionId);
382
519
  if (!session) {
383
520
  throw new Error(`SQL logging session ${sessionId} not found`);
384
521
  }
522
+ // Clear any scheduled timeout for this session
385
523
  const timeoutId = SqlLoggingConfigResolver_1.sessionTimeouts.get(sessionId);
386
524
  if (timeoutId) {
387
525
  clearTimeout(timeoutId);
@@ -390,14 +528,63 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
390
528
  await session.dispose();
391
529
  return true;
392
530
  }
531
+ /**
532
+ * Stops and disposes of all currently active SQL logging sessions.
533
+ *
534
+ * This is a convenience method that:
535
+ * - Calls DisposeAllSqlLoggingSessions() on the data provider
536
+ * - Ensures all file handles are properly closed
537
+ * - Clears the active sessions map
538
+ * - Performs cleanup for all sessions at once
539
+ *
540
+ * @param context - GraphQL context (requires Owner privileges)
541
+ * @returns Promise resolving to true if all sessions were successfully stopped
542
+ * @throws Error if user lacks Owner privileges
543
+ *
544
+ * @example
545
+ * ```graphql
546
+ * mutation {
547
+ * stopAllSqlLogging
548
+ * }
549
+ * ```
550
+ */
393
551
  async stopAllSqlLogging(context) {
394
552
  await this.checkOwnerAccess(context);
395
553
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
396
554
  await provider.DisposeAllSqlLoggingSessions();
397
555
  return true;
398
556
  }
557
+ /**
558
+ * Updates the default SQL logging options for new sessions.
559
+ *
560
+ * **Note**: This updates runtime configuration only, not the static config file.
561
+ * Changes apply to new sessions but do not persist across server restarts.
562
+ * In a production system, consider persisting changes to a database.
563
+ *
564
+ * @param options - New default options to apply (partial update supported)
565
+ * @param context - GraphQL context (requires Owner privileges)
566
+ * @returns Promise resolving to the updated SqlLoggingOptions object
567
+ * @throws Error if SQL logging not configured or user lacks Owner privileges
568
+ *
569
+ * @example
570
+ * ```graphql
571
+ * mutation {
572
+ * updateSqlLoggingDefaults(options: {
573
+ * prettyPrint: true
574
+ * statementTypes: "both"
575
+ * logRecordChangeMetadata: false
576
+ * }) {
577
+ * prettyPrint
578
+ * statementTypes
579
+ * formatAsMigration
580
+ * }
581
+ * }
582
+ * ```
583
+ */
399
584
  async updateSqlLoggingDefaults(options, context) {
400
585
  await this.checkOwnerAccess(context);
586
+ // Note: This updates the runtime configuration only, not the file
587
+ // In a production system, you might want to persist this to a database
401
588
  const config = await loadConfig();
402
589
  if (!config.sqlLogging) {
403
590
  throw new Error('SQL logging configuration not found');
@@ -408,29 +595,58 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
408
595
  };
409
596
  return config.sqlLogging.defaultOptions;
410
597
  }
598
+ /**
599
+ * Reads the contents of a specific SQL log file.
600
+ *
601
+ * This method:
602
+ * - Validates the session exists and user has access
603
+ * - Ensures the file path is within the allowed log directory
604
+ * - Reads the file content with optional line limits
605
+ * - Returns the content as a string
606
+ *
607
+ * @param sessionId - Unique identifier of the logging session
608
+ * @param maxLines - Maximum number of lines to read (optional, defaults to all)
609
+ * @param context - GraphQL context (requires Owner privileges)
610
+ * @returns Promise resolving to the log file content
611
+ * @throws Error if session not found, file not accessible, or user lacks privileges
612
+ *
613
+ * @example
614
+ * ```graphql
615
+ * query {
616
+ * readSqlLogFile(sessionId: "session-123", maxLines: 100)
617
+ * }
618
+ * ```
619
+ */
411
620
  async readSqlLogFile(sessionId, maxLines, context) {
412
621
  await this.checkOwnerAccess(context);
413
622
  const config = await loadConfig();
623
+ // Check if SQL logging is enabled
414
624
  if (!config.sqlLogging?.enabled) {
415
625
  throw new Error('SQL logging is not enabled in the server configuration');
416
626
  }
627
+ // Find the session
417
628
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
418
629
  const sessions = provider.GetActiveSqlLoggingSessions();
419
630
  const session = sessions.find((s) => s.id === sessionId);
420
631
  if (!session) {
421
632
  throw new Error(`SQL logging session ${sessionId} not found`);
422
633
  }
634
+ // Validate file path is within allowed directory
423
635
  const allowedDir = path.resolve(config.sqlLogging.allowedLogDirectory ?? './logs/sql');
424
636
  const resolvedPath = path.resolve(session.filePath);
425
637
  if (!resolvedPath.startsWith(allowedDir)) {
426
638
  throw new Error('Access denied - file path outside allowed directory');
427
639
  }
428
640
  try {
641
+ // Check if file exists
429
642
  await fs.access(session.filePath);
643
+ // Read file content
430
644
  const content = await fs.readFile(session.filePath, 'utf-8');
645
+ // Apply line limit if specified
431
646
  if (maxLines && maxLines > 0) {
432
647
  const lines = content.split('\n');
433
648
  if (lines.length > maxLines) {
649
+ // Return the last N lines
434
650
  return lines.slice(-maxLines).join('\n');
435
651
  }
436
652
  }
@@ -443,11 +659,36 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
443
659
  throw new Error(`Failed to read log file: ${error.message}`);
444
660
  }
445
661
  }
662
+ /**
663
+ * Debug query to check what the current user email is in the SQL provider.
664
+ * This helps diagnose user filtering issues when SQL statements aren't being captured.
665
+ *
666
+ * Returns a comparison of the user email stored in the SQLServerDataProvider
667
+ * versus the user email from the GraphQL context, which helps identify mismatches
668
+ * that could prevent SQL filtering from working correctly.
669
+ *
670
+ * @param context - GraphQL context containing user information
671
+ * @returns Formatted string showing both email values and whether they match
672
+ * @throws Error if user doesn't have Owner privileges
673
+ */
446
674
  async debugCurrentUserEmail(context) {
447
675
  await this.checkOwnerAccess(context);
448
676
  const contextUserEmail = context.userPayload?.email || 'NOT_SET';
449
677
  return `Context User Email: "${contextUserEmail}" | Note: Provider no longer stores user email - uses contextUser parameter for SQL logging`;
450
678
  }
679
+ /**
680
+ * Ensures the specified log directory exists, creating it if necessary.
681
+ *
682
+ * This method:
683
+ * - Attempts to access the directory to check if it exists
684
+ * - Creates the directory recursively if it doesn't exist
685
+ * - Handles permission and file system errors gracefully
686
+ *
687
+ * @param dir - Absolute path to the directory to ensure exists
688
+ * @throws Error if directory cannot be created due to permissions or other issues
689
+ *
690
+ * @private
691
+ */
451
692
  async ensureDirectoryExists(dir) {
452
693
  try {
453
694
  await fs.access(dir);
@@ -456,6 +697,14 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
456
697
  await fs.mkdir(dir, { recursive: true });
457
698
  }
458
699
  }
700
+ /**
701
+ * Converts SqlLoggingOptions from the provider to the GraphQL-compatible type.
702
+ * The provider's filterPatterns can contain RegExp objects, but GraphQL only supports strings.
703
+ *
704
+ * @param options - Options from SQLServerDataProvider
705
+ * @returns GraphQL-compatible SqlLoggingOptions
706
+ * @private
707
+ */
459
708
  convertOptionsToGraphQL(options) {
460
709
  return {
461
710
  formatAsMigration: options.formatAsMigration,
@@ -469,6 +718,7 @@ let SqlLoggingConfigResolver = class SqlLoggingConfigResolver extends ResolverBa
469
718
  sessionName: options.sessionName,
470
719
  verboseOutput: options.verboseOutput,
471
720
  defaultSchemaName: options.defaultSchemaName,
721
+ // Convert RegExp objects to their string representation
472
722
  filterPatterns: options.filterPatterns?.map((p) => (p instanceof RegExp ? p.toString() : String(p))),
473
723
  filterType: options.filterType,
474
724
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SqlLoggingConfigResolver.js","sourceRoot":"","sources":["../../src/resolvers/SqlLoggingConfigResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqlLoggingConfigResolver.js","sourceRoot":"","sources":["../../src/resolvers/SqlLoggingConfigResolver.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import { AppContext, UserPayload } from '../types.js';
2
2
  import { BaseEntity, CompositeKey, Metadata, UserInfo } from '@memberjunction/core';
3
3
  import { CompositeKeyInputType, CompositeKeyOutputType } from '../generic/KeyInputOutputTypes.js';
4
+ /**
5
+ * This type defines the possible list of actions that can be taken in syncing data: Create, Update, CreateOrUpdate, Delete, or DeleteWithFilter
6
+ * DeleteWithFilter is where you specify a valid SQL expression that can be used in a where clause to get a list of records in a given entity to delete
7
+ * this can be used to ensure cleaning out data from a subset of a given table.
8
+ */
4
9
  export declare enum SyncDataActionType {
5
10
  Create = "Create",
6
11
  Update = "Update",
@@ -13,7 +18,13 @@ export declare class ActionItemInputType {
13
18
  PrimaryKey?: CompositeKeyInputType;
14
19
  AlternateKey?: CompositeKeyInputType;
15
20
  Type: SyncDataActionType;
21
+ /**
22
+ * This field is a JSON representation of the field values of the entity to be created or updated. It is used for all ActionTypes except for
23
+ */
16
24
  RecordJSON?: string;
25
+ /**
26
+ * This field is only provided when the Action Type is DeleteWithFilter. It is a valid SQL expression that can be used in a where clause to get a list of records in a given entity to delete
27
+ */
17
28
  DeleteFilter?: string;
18
29
  }
19
30
  export declare class ActionItemOutputType {
@@ -23,7 +34,13 @@ export declare class ActionItemOutputType {
23
34
  PrimaryKey?: CompositeKeyOutputType;
24
35
  AlternateKey?: CompositeKeyOutputType;
25
36
  Type: SyncDataActionType;
37
+ /**
38
+ * This field is a JSON representation of the field values of the entity to be created or updated. It is used for all ActionTypes except for
39
+ */
26
40
  RecordJSON?: string;
41
+ /**
42
+ * This field is only provided when the Action Type is DeleteWithFilter. It is a valid SQL expression that can be used in a where clause to get a list of records in a given entity to delete
43
+ */
27
44
  DeleteFilter?: string;
28
45
  }
29
46
  export declare class SyncDataResultType {
@@ -31,6 +48,10 @@ export declare class SyncDataResultType {
31
48
  Results: ActionItemOutputType[];
32
49
  }
33
50
  export declare class SyncDataResolver {
51
+ /**
52
+ * This mutation will sync the specified items with the existing system. Items will be processed in order and the results of each operation will be returned in the Results array within the return value.
53
+ * @param items - an array of ActionItemInputType objects that specify the action to be taken on the specified entity with the specified primary key and the JSON representation of the field values.
54
+ */
34
55
  SyncData(items: ActionItemInputType[], context: AppContext): Promise<{
35
56
  Success: boolean;
36
57
  Results: ActionItemOutputType[];
@@ -1 +1 @@
1
- {"version":3,"file":"SyncDataResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/SyncDataResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAoD,QAAQ,EAAW,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE/I,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAUlG,oBAAY,kBAAkB;IAC1B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,cAAc,mBAAmB;IACjC,MAAM,WAAW;IACjB,gBAAgB,qBAAqB;CACtC;AAQD,qBACa,mBAAmB;IAE5B,UAAU,EAAG,MAAM,CAAC;IAGpB,UAAU,CAAC,EAAE,qBAAqB,CAAC;IAGnC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAGrC,IAAI,EAAG,kBAAkB,CAAC;IAM1B,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAGH,qBACa,oBAAoB;IAE7B,OAAO,EAAE,OAAO,CAAC;IAGjB,YAAY,EAAE,MAAM,CAAC;IAGrB,UAAU,EAAG,MAAM,CAAC;IAGpB,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAGpC,YAAY,CAAC,EAAE,sBAAsB,CAAC;IAGtC,IAAI,EAAG,kBAAkB,CAAC;IAM1B,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBACa,kBAAkB;IAE7B,OAAO,EAAE,OAAO,CAAC;IAGjB,OAAO,EAAE,oBAAoB,EAAE,CAAM;CACtC;AAKD,qBAAa,gBAAgB;IAOnB,QAAQ,CAC8B,KAAK,EAAE,mBAAmB,EAAE,EACjE,OAAO,EAAE,UAAU;;;;cAuBV,gCAAgC,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;cAkBlG,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;cAWzF,cAAc,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;cAmDrI,8BAA8B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW;cAiCzI,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;cA6BzG,4BAA4B,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW;cAuBnK,oBAAoB,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW;cA8CzI,oBAAoB,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW;cAyBvH,oBAAoB,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW;cAqB3J,yBAAyB,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW;CAqB/I"}
1
+ {"version":3,"file":"SyncDataResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/SyncDataResolver.ts"],"names":[],"mappings":"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"}