@memberjunction/server 3.3.0 → 4.0.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 (296) hide show
  1. package/README.md +59 -0
  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/TransactionPlugin.d.ts +4 -0
  11. package/dist/apolloServer/TransactionPlugin.d.ts.map +1 -0
  12. package/dist/apolloServer/TransactionPlugin.js +46 -0
  13. package/dist/apolloServer/TransactionPlugin.js.map +1 -0
  14. package/dist/apolloServer/index.d.ts +0 -1
  15. package/dist/apolloServer/index.d.ts.map +1 -1
  16. package/dist/auth/APIKeyScopeAuth.d.ts +82 -0
  17. package/dist/auth/APIKeyScopeAuth.d.ts.map +1 -1
  18. package/dist/auth/APIKeyScopeAuth.js +78 -0
  19. package/dist/auth/APIKeyScopeAuth.js.map +1 -1
  20. package/dist/auth/AuthProviderFactory.d.ts +35 -0
  21. package/dist/auth/AuthProviderFactory.d.ts.map +1 -1
  22. package/dist/auth/AuthProviderFactory.js +51 -4
  23. package/dist/auth/AuthProviderFactory.js.map +1 -1
  24. package/dist/auth/BaseAuthProvider.d.ts +22 -0
  25. package/dist/auth/BaseAuthProvider.d.ts.map +1 -1
  26. package/dist/auth/BaseAuthProvider.js +25 -8
  27. package/dist/auth/BaseAuthProvider.js.map +1 -1
  28. package/dist/auth/IAuthProvider.d.ts +33 -0
  29. package/dist/auth/IAuthProvider.d.ts.map +1 -1
  30. package/dist/auth/__tests__/backward-compatibility.test.d.ts +2 -0
  31. package/dist/auth/__tests__/backward-compatibility.test.d.ts.map +1 -0
  32. package/dist/auth/__tests__/backward-compatibility.test.js +135 -0
  33. package/dist/auth/__tests__/backward-compatibility.test.js.map +1 -0
  34. package/dist/auth/exampleNewUserSubClass.d.ts +5 -1
  35. package/dist/auth/exampleNewUserSubClass.d.ts.map +1 -1
  36. package/dist/auth/exampleNewUserSubClass.js +21 -6
  37. package/dist/auth/exampleNewUserSubClass.js.map +1 -1
  38. package/dist/auth/index.d.ts +14 -0
  39. package/dist/auth/index.d.ts.map +1 -1
  40. package/dist/auth/index.js +35 -22
  41. package/dist/auth/index.js.map +1 -1
  42. package/dist/auth/initializeProviders.d.ts +3 -0
  43. package/dist/auth/initializeProviders.d.ts.map +1 -1
  44. package/dist/auth/initializeProviders.js +6 -0
  45. package/dist/auth/initializeProviders.js.map +1 -1
  46. package/dist/auth/newUsers.js +11 -2
  47. package/dist/auth/newUsers.js.map +1 -1
  48. package/dist/auth/providers/Auth0Provider.d.ts +9 -0
  49. package/dist/auth/providers/Auth0Provider.d.ts.map +1 -1
  50. package/dist/auth/providers/Auth0Provider.js +10 -0
  51. package/dist/auth/providers/Auth0Provider.js.map +1 -1
  52. package/dist/auth/providers/CognitoProvider.d.ts +9 -0
  53. package/dist/auth/providers/CognitoProvider.d.ts.map +1 -1
  54. package/dist/auth/providers/CognitoProvider.js +10 -0
  55. package/dist/auth/providers/CognitoProvider.js.map +1 -1
  56. package/dist/auth/providers/GoogleProvider.d.ts +9 -0
  57. package/dist/auth/providers/GoogleProvider.d.ts.map +1 -1
  58. package/dist/auth/providers/GoogleProvider.js +11 -1
  59. package/dist/auth/providers/GoogleProvider.js.map +1 -1
  60. package/dist/auth/providers/MSALProvider.d.ts +9 -0
  61. package/dist/auth/providers/MSALProvider.d.ts.map +1 -1
  62. package/dist/auth/providers/MSALProvider.js +10 -0
  63. package/dist/auth/providers/MSALProvider.js.map +1 -1
  64. package/dist/auth/providers/OktaProvider.d.ts +9 -0
  65. package/dist/auth/providers/OktaProvider.d.ts.map +1 -1
  66. package/dist/auth/providers/OktaProvider.js +10 -0
  67. package/dist/auth/providers/OktaProvider.js.map +1 -1
  68. package/dist/config.d.ts +12 -0
  69. package/dist/config.d.ts.map +1 -1
  70. package/dist/config.js +44 -10
  71. package/dist/config.js.map +1 -1
  72. package/dist/context.d.ts +8 -1
  73. package/dist/context.d.ts.map +1 -1
  74. package/dist/context.js +26 -4
  75. package/dist/context.js.map +1 -1
  76. package/dist/directives/Public.js +2 -0
  77. package/dist/directives/Public.js.map +1 -1
  78. package/dist/entitySubclasses/entityPermissions.server.d.ts +7 -2
  79. package/dist/entitySubclasses/entityPermissions.server.d.ts.map +1 -1
  80. package/dist/entitySubclasses/entityPermissions.server.js +26 -8
  81. package/dist/entitySubclasses/entityPermissions.server.js.map +1 -1
  82. package/dist/generated/generated.d.ts +954 -2
  83. package/dist/generated/generated.d.ts.map +1 -1
  84. package/dist/generated/generated.js +12183 -14532
  85. package/dist/generated/generated.js.map +1 -1
  86. package/dist/generic/DeleteOptionsInput.d.ts +3 -0
  87. package/dist/generic/DeleteOptionsInput.d.ts.map +1 -1
  88. package/dist/generic/DeleteOptionsInput.js +3 -2
  89. package/dist/generic/DeleteOptionsInput.js.map +1 -1
  90. package/dist/generic/KeyInputOutputTypes.js +0 -6
  91. package/dist/generic/KeyInputOutputTypes.js.map +1 -1
  92. package/dist/generic/KeyValuePairInput.d.ts +4 -0
  93. package/dist/generic/KeyValuePairInput.d.ts.map +1 -1
  94. package/dist/generic/KeyValuePairInput.js +4 -2
  95. package/dist/generic/KeyValuePairInput.js.map +1 -1
  96. package/dist/generic/PushStatusResolver.js +0 -3
  97. package/dist/generic/PushStatusResolver.js.map +1 -1
  98. package/dist/generic/ResolverBase.d.ts +59 -0
  99. package/dist/generic/ResolverBase.d.ts.map +1 -1
  100. package/dist/generic/ResolverBase.js +233 -18
  101. package/dist/generic/ResolverBase.js.map +1 -1
  102. package/dist/generic/RunViewResolver.d.ts +22 -0
  103. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  104. package/dist/generic/RunViewResolver.js +42 -108
  105. package/dist/generic/RunViewResolver.js.map +1 -1
  106. package/dist/index.d.ts +2 -2
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +84 -39
  109. package/dist/index.js.map +1 -1
  110. package/dist/orm.d.ts.map +1 -1
  111. package/dist/orm.js +2 -1
  112. package/dist/orm.js.map +1 -1
  113. package/dist/resolvers/APIKeyResolver.d.ts +76 -1
  114. package/dist/resolvers/APIKeyResolver.d.ts.map +1 -1
  115. package/dist/resolvers/APIKeyResolver.js +53 -11
  116. package/dist/resolvers/APIKeyResolver.js.map +1 -1
  117. package/dist/resolvers/ActionResolver.d.ts +191 -1
  118. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  119. package/dist/resolvers/ActionResolver.js +156 -22
  120. package/dist/resolvers/ActionResolver.js.map +1 -1
  121. package/dist/resolvers/ColorResolver.js +0 -5
  122. package/dist/resolvers/ColorResolver.js.map +1 -1
  123. package/dist/resolvers/ComponentRegistryResolver.d.ts +65 -0
  124. package/dist/resolvers/ComponentRegistryResolver.d.ts.map +1 -1
  125. package/dist/resolvers/ComponentRegistryResolver.js +118 -40
  126. package/dist/resolvers/ComponentRegistryResolver.js.map +1 -1
  127. package/dist/resolvers/CreateQueryResolver.d.ts +47 -0
  128. package/dist/resolvers/CreateQueryResolver.d.ts.map +1 -1
  129. package/dist/resolvers/CreateQueryResolver.js +92 -116
  130. package/dist/resolvers/CreateQueryResolver.js.map +1 -1
  131. package/dist/resolvers/DatasetResolver.d.ts +5 -4
  132. package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
  133. package/dist/resolvers/DatasetResolver.js +9 -18
  134. package/dist/resolvers/DatasetResolver.js.map +1 -1
  135. package/dist/resolvers/EntityCommunicationsResolver.d.ts +42 -1
  136. package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
  137. package/dist/resolvers/EntityCommunicationsResolver.js +5 -37
  138. package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
  139. package/dist/resolvers/EntityRecordNameResolver.js +0 -7
  140. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  141. package/dist/resolvers/FileCategoryResolver.js +13 -1
  142. package/dist/resolvers/FileCategoryResolver.js.map +1 -1
  143. package/dist/resolvers/FileResolver.d.ts +16 -0
  144. package/dist/resolvers/FileResolver.d.ts.map +1 -1
  145. package/dist/resolvers/FileResolver.js +59 -74
  146. package/dist/resolvers/FileResolver.js.map +1 -1
  147. package/dist/resolvers/GetDataContextDataResolver.d.ts +20 -2
  148. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  149. package/dist/resolvers/GetDataContextDataResolver.js +27 -12
  150. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  151. package/dist/resolvers/GetDataResolver.d.ts +19 -0
  152. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  153. package/dist/resolvers/GetDataResolver.js +35 -35
  154. package/dist/resolvers/GetDataResolver.js.map +1 -1
  155. package/dist/resolvers/InfoResolver.d.ts.map +1 -1
  156. package/dist/resolvers/InfoResolver.js +4 -7
  157. package/dist/resolvers/InfoResolver.js.map +1 -1
  158. package/dist/resolvers/MCPResolver.d.ts +361 -0
  159. package/dist/resolvers/MCPResolver.d.ts.map +1 -0
  160. package/dist/resolvers/MCPResolver.js +1270 -0
  161. package/dist/resolvers/MCPResolver.js.map +1 -0
  162. package/dist/resolvers/MergeRecordsResolver.d.ts +2 -1
  163. package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
  164. package/dist/resolvers/MergeRecordsResolver.js +6 -30
  165. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  166. package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts.map +1 -1
  167. package/dist/resolvers/PotentialDuplicateRecordResolver.js +0 -3
  168. package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -1
  169. package/dist/resolvers/QueryResolver.d.ts +22 -1
  170. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  171. package/dist/resolvers/QueryResolver.js +50 -37
  172. package/dist/resolvers/QueryResolver.js.map +1 -1
  173. package/dist/resolvers/ReportResolver.d.ts +5 -1
  174. package/dist/resolvers/ReportResolver.d.ts.map +1 -1
  175. package/dist/resolvers/ReportResolver.js +13 -11
  176. package/dist/resolvers/ReportResolver.js.map +1 -1
  177. package/dist/resolvers/RunAIAgentResolver.d.ts +54 -0
  178. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  179. package/dist/resolvers/RunAIAgentResolver.js +118 -40
  180. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  181. package/dist/resolvers/RunAIPromptResolver.d.ts +42 -0
  182. package/dist/resolvers/RunAIPromptResolver.d.ts.map +1 -1
  183. package/dist/resolvers/RunAIPromptResolver.js +98 -22
  184. package/dist/resolvers/RunAIPromptResolver.js.map +1 -1
  185. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  186. package/dist/resolvers/RunTemplateResolver.js +10 -6
  187. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  188. package/dist/resolvers/RunTestResolver.d.ts +12 -0
  189. package/dist/resolvers/RunTestResolver.d.ts.map +1 -1
  190. package/dist/resolvers/RunTestResolver.js +35 -21
  191. package/dist/resolvers/RunTestResolver.js.map +1 -1
  192. package/dist/resolvers/SqlLoggingConfigResolver.d.ts +312 -0
  193. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  194. package/dist/resolvers/SqlLoggingConfigResolver.js +295 -45
  195. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  196. package/dist/resolvers/SyncDataResolver.d.ts +21 -0
  197. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  198. package/dist/resolvers/SyncDataResolver.js +36 -22
  199. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  200. package/dist/resolvers/SyncRolesUsersResolver.d.ts +14 -0
  201. package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
  202. package/dist/resolvers/SyncRolesUsersResolver.js +54 -21
  203. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  204. package/dist/resolvers/TaskResolver.d.ts +13 -0
  205. package/dist/resolvers/TaskResolver.d.ts.map +1 -1
  206. package/dist/resolvers/TaskResolver.js +23 -7
  207. package/dist/resolvers/TaskResolver.js.map +1 -1
  208. package/dist/resolvers/TelemetryResolver.d.ts +22 -0
  209. package/dist/resolvers/TelemetryResolver.d.ts.map +1 -1
  210. package/dist/resolvers/TelemetryResolver.js +45 -79
  211. package/dist/resolvers/TelemetryResolver.js.map +1 -1
  212. package/dist/resolvers/TransactionGroupResolver.js +11 -13
  213. package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
  214. package/dist/resolvers/UserFavoriteResolver.js +3 -12
  215. package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
  216. package/dist/resolvers/UserResolver.d.ts.map +1 -1
  217. package/dist/resolvers/UserResolver.js +14 -0
  218. package/dist/resolvers/UserResolver.js.map +1 -1
  219. package/dist/resolvers/UserViewResolver.js +4 -0
  220. package/dist/resolvers/UserViewResolver.js.map +1 -1
  221. package/dist/resolvers/VersionHistoryResolver.d.ts +39 -0
  222. package/dist/resolvers/VersionHistoryResolver.d.ts.map +1 -0
  223. package/dist/resolvers/VersionHistoryResolver.js +208 -0
  224. package/dist/resolvers/VersionHistoryResolver.js.map +1 -0
  225. package/dist/rest/EntityCRUDHandler.d.ts +19 -0
  226. package/dist/rest/EntityCRUDHandler.d.ts.map +1 -1
  227. package/dist/rest/EntityCRUDHandler.js +55 -0
  228. package/dist/rest/EntityCRUDHandler.js.map +1 -1
  229. package/dist/rest/OAuthCallbackHandler.d.ts +143 -0
  230. package/dist/rest/OAuthCallbackHandler.d.ts.map +1 -0
  231. package/dist/rest/OAuthCallbackHandler.js +634 -0
  232. package/dist/rest/OAuthCallbackHandler.js.map +1 -0
  233. package/dist/rest/RESTEndpointHandler.d.ts +120 -0
  234. package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
  235. package/dist/rest/RESTEndpointHandler.js +213 -24
  236. package/dist/rest/RESTEndpointHandler.js.map +1 -1
  237. package/dist/rest/ViewOperationsHandler.d.ts +19 -0
  238. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  239. package/dist/rest/ViewOperationsHandler.js +39 -0
  240. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  241. package/dist/rest/index.d.ts +1 -0
  242. package/dist/rest/index.d.ts.map +1 -1
  243. package/dist/rest/index.js +1 -0
  244. package/dist/rest/index.js.map +1 -1
  245. package/dist/rest/setupRESTEndpoints.d.ts +35 -0
  246. package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
  247. package/dist/rest/setupRESTEndpoints.js +15 -1
  248. package/dist/rest/setupRESTEndpoints.js.map +1 -1
  249. package/dist/services/ScheduledJobsService.d.ts +31 -0
  250. package/dist/services/ScheduledJobsService.d.ts.map +1 -1
  251. package/dist/services/ScheduledJobsService.js +38 -4
  252. package/dist/services/ScheduledJobsService.js.map +1 -1
  253. package/dist/services/TaskOrchestrator.d.ts +73 -0
  254. package/dist/services/TaskOrchestrator.d.ts.map +1 -1
  255. package/dist/services/TaskOrchestrator.js +137 -15
  256. package/dist/services/TaskOrchestrator.js.map +1 -1
  257. package/dist/types.d.ts +14 -0
  258. package/dist/types.d.ts.map +1 -1
  259. package/dist/types.js +0 -13
  260. package/dist/types.js.map +1 -1
  261. package/dist/util.d.ts +37 -1
  262. package/dist/util.d.ts.map +1 -1
  263. package/dist/util.js +55 -8
  264. package/dist/util.js.map +1 -1
  265. package/package.json +79 -77
  266. package/src/auth/BaseAuthProvider.ts +3 -0
  267. package/src/auth/IAuthProvider.ts +5 -0
  268. package/src/auth/exampleNewUserSubClass.ts +1 -5
  269. package/src/config.ts +2 -2
  270. package/src/entitySubclasses/entityPermissions.server.ts +1 -3
  271. package/src/generated/generated.ts +6245 -2558
  272. package/src/generic/ResolverBase.ts +89 -3
  273. package/src/index.ts +71 -64
  274. package/src/resolvers/APIKeyResolver.ts +8 -1
  275. package/src/resolvers/ActionResolver.ts +8 -1
  276. package/src/resolvers/DatasetResolver.ts +11 -4
  277. package/src/resolvers/EntityCommunicationsResolver.ts +5 -1
  278. package/src/resolvers/GetDataContextDataResolver.ts +14 -6
  279. package/src/resolvers/InfoResolver.ts +5 -1
  280. package/src/resolvers/MCPResolver.ts +1380 -0
  281. package/src/resolvers/MergeRecordsResolver.ts +5 -1
  282. package/src/resolvers/PotentialDuplicateRecordResolver.ts +0 -4
  283. package/src/resolvers/QueryResolver.ts +17 -3
  284. package/src/resolvers/ReportResolver.ts +8 -1
  285. package/src/resolvers/RunAIAgentResolver.ts +6 -0
  286. package/src/resolvers/RunAIPromptResolver.ts +10 -1
  287. package/src/resolvers/RunTemplateResolver.ts +4 -1
  288. package/src/resolvers/TaskResolver.ts +3 -0
  289. package/src/resolvers/UserResolver.ts +15 -3
  290. package/src/resolvers/VersionHistoryResolver.ts +177 -0
  291. package/src/rest/OAuthCallbackHandler.ts +766 -0
  292. package/src/rest/RESTEndpointHandler.ts +58 -35
  293. package/src/rest/index.ts +2 -1
  294. package/src/rest/setupRESTEndpoints.ts +13 -12
  295. package/src/resolvers/AskSkipResolver.ts +0 -3446
  296. package/src/scheduler/LearningCycleScheduler.ts +0 -320
@@ -14,6 +14,11 @@ import { Arg, Ctx, Field, InputType, Mutation, ObjectType, registerEnumType } fr
14
14
  import { CompositeKey, LogError, Metadata, RunView } from '@memberjunction/core';
15
15
  import { RequireSystemUser } from '../directives/RequireSystemUser.js';
16
16
  import { CompositeKeyInputType, CompositeKeyOutputType } from '../generic/KeyInputOutputTypes.js';
17
+ /**
18
+ * This type defines the possible list of actions that can be taken in syncing data: Create, Update, CreateOrUpdate, Delete, or DeleteWithFilter
19
+ * 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
20
+ * this can be used to ensure cleaning out data from a subset of a given table.
21
+ */
17
22
  export var SyncDataActionType;
18
23
  (function (SyncDataActionType) {
19
24
  SyncDataActionType["Create"] = "Create";
@@ -23,16 +28,10 @@ export var SyncDataActionType;
23
28
  SyncDataActionType["DeleteWithFilter"] = "DeleteWithFilter";
24
29
  })(SyncDataActionType || (SyncDataActionType = {}));
25
30
  registerEnumType(SyncDataActionType, {
26
- name: "SyncDataActionType",
27
- description: "Specifies the type of action to be taken in syncing, Create, Update, CreateOrUpdate, Delete"
31
+ name: "SyncDataActionType", // GraphQL Enum Name
32
+ description: "Specifies the type of action to be taken in syncing, Create, Update, CreateOrUpdate, Delete" // Description,
28
33
  });
29
34
  let ActionItemInputType = class ActionItemInputType {
30
- EntityName;
31
- PrimaryKey;
32
- AlternateKey;
33
- Type;
34
- RecordJSON;
35
- DeleteFilter;
36
35
  };
37
36
  __decorate([
38
37
  Field(() => String),
@@ -63,14 +62,6 @@ ActionItemInputType = __decorate([
63
62
  ], ActionItemInputType);
64
63
  export { ActionItemInputType };
65
64
  let ActionItemOutputType = class ActionItemOutputType {
66
- Success;
67
- ErrorMessage;
68
- EntityName;
69
- PrimaryKey;
70
- AlternateKey;
71
- Type;
72
- RecordJSON;
73
- DeleteFilter;
74
65
  };
75
66
  __decorate([
76
67
  Field(() => Boolean),
@@ -109,8 +100,9 @@ ActionItemOutputType = __decorate([
109
100
  ], ActionItemOutputType);
110
101
  export { ActionItemOutputType };
111
102
  let SyncDataResultType = class SyncDataResultType {
112
- Success;
113
- Results = [];
103
+ constructor() {
104
+ this.Results = [];
105
+ }
114
106
  };
115
107
  __decorate([
116
108
  Field(() => Boolean),
@@ -126,17 +118,22 @@ SyncDataResultType = __decorate([
126
118
  export { SyncDataResultType };
127
119
  const __metadata_DatasetItems = [];
128
120
  export class SyncDataResolver {
121
+ /**
122
+ * 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.
123
+ * @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.
124
+ */
129
125
  async SyncData(items, context) {
130
126
  try {
127
+ // iterate through the items
131
128
  const md = new Metadata();
132
129
  const results = [];
133
130
  for (const item of items) {
134
131
  results.push(await this.SyncSingleItem(item, context, md, context.userPayload));
135
132
  }
136
133
  if (await this.DoSyncItemsAffectMetadata(context.userPayload.userRecord, items)) {
137
- await md.Refresh();
134
+ await md.Refresh(); // force refesh the metadata which will cause a reload from the DB
138
135
  }
139
- const overallSuccess = !results.some((r) => !r.Success);
136
+ const overallSuccess = !results.some((r) => !r.Success); // if any element in the array of results has a Success value of false, then the overall success is false
140
137
  return { Success: overallSuccess, Results: results };
141
138
  }
142
139
  catch (err) {
@@ -146,7 +143,7 @@ export class SyncDataResolver {
146
143
  }
147
144
  async GetLowercaseMetadataEntitiesList(user, forceRefresh = false) {
148
145
  if (forceRefresh || __metadata_DatasetItems.length === 0) {
149
- const rv = new RunView();
146
+ const rv = new RunView(); // cache this, veyr simple - should use an engine for this stuff later
150
147
  const result = await rv.RunView({
151
148
  EntityName: "Dataset Items",
152
149
  ExtraFilter: "Dataset = 'MJ_Metadata'",
@@ -158,16 +155,18 @@ export class SyncDataResolver {
158
155
  }));
159
156
  }
160
157
  }
158
+ // now return the list of entities
161
159
  return __metadata_DatasetItems;
162
160
  }
163
161
  async DoSyncItemsAffectMetadata(user, items) {
162
+ // check to see if any of the items affect any of these entities:
164
163
  const entitiesToCheck = await this.GetLowercaseMetadataEntitiesList(user, false);
165
164
  for (const item of items) {
166
165
  if (entitiesToCheck.find(e => e === item.EntityName.trim().toLowerCase())) {
167
166
  return true;
168
167
  }
169
168
  }
170
- return false;
169
+ return false; // didn't find any
171
170
  }
172
171
  async SyncSingleItem(item, context, md, userPayload) {
173
172
  const result = new ActionItemOutputType();
@@ -194,6 +193,7 @@ export class SyncDataResolver {
194
193
  await this.SyncSingleItemUpdate(entityObject, pk, ak, fieldValues, result, userPayload);
195
194
  break;
196
195
  case SyncDataActionType.CreateOrUpdate:
196
+ // in this case we attempt to load the item first, if it is not possible to load the item, then we create it
197
197
  await this.SyncSingleItemCreateOrUpdate(entityObject, pk, ak, fieldValues, result, userPayload);
198
198
  break;
199
199
  case SyncDataActionType.Delete:
@@ -220,6 +220,7 @@ export class SyncDataResolver {
220
220
  }
221
221
  async SyncSingleItemDeleteWithFilter(entityName, filter, result, user, userPayload) {
222
222
  try {
223
+ // here we will iterate through the result of a RunView on the entityname/filter and delete each matching record
223
224
  let overallSuccess = true;
224
225
  let combinedErrorMessage = "";
225
226
  const rv = new RunView();
@@ -251,6 +252,7 @@ export class SyncDataResolver {
251
252
  }
252
253
  async LoadFromAlternateKey(entityName, alternateKey, user) {
253
254
  try {
255
+ // no primary key provided, attempt to look up the primary key based on the
254
256
  const rv = new RunView();
255
257
  const md = new Metadata();
256
258
  const entity = md.EntityByName(entityName);
@@ -267,6 +269,7 @@ export class SyncDataResolver {
267
269
  return r.Results[0];
268
270
  }
269
271
  else {
272
+ //LogError (`Failed to load the item with alternate key: ${alternateKey.KeyValuePairs.map((kvp) => `${kvp.FieldName} = ${kvp.Value}`).join(' AND ')}. Result: ${r.Success} and ${r.Results?.length} items returned`);
270
273
  return null;
271
274
  }
272
275
  }
@@ -277,8 +280,10 @@ export class SyncDataResolver {
277
280
  }
278
281
  async SyncSingleItemCreateOrUpdate(entityObject, pk, ak, fieldValues, result, userPayload) {
279
282
  if (!pk || pk.KeyValuePairs.length === 0) {
283
+ // no primary key try to load from alt key
280
284
  const altKeyResult = await this.LoadFromAlternateKey(entityObject.EntityInfo.Name, ak, entityObject.ContextCurrentUser);
281
285
  if (!altKeyResult) {
286
+ // no record found, create a new one
282
287
  await this.SyncSingleItemCreate(entityObject, fieldValues, result, userPayload);
283
288
  }
284
289
  else {
@@ -286,6 +291,7 @@ export class SyncDataResolver {
286
291
  }
287
292
  }
288
293
  else {
294
+ // have a primary key do the usual load
289
295
  if (await entityObject.InnerLoad(pk)) {
290
296
  await this.InnerSyncSingleItemUpdate(entityObject, fieldValues, result, userPayload);
291
297
  }
@@ -301,6 +307,7 @@ export class SyncDataResolver {
301
307
  result.ErrorMessage = 'Failed to load the item, it is possible the record with the specified primary key does not exist';
302
308
  }
303
309
  else {
310
+ // pass back the full record as it was JUST BEFORE the delete, often quite useful on the other end
304
311
  result.RecordJSON = await altKeyResult.GetDataObjectJSON({
305
312
  includeRelatedEntityData: false,
306
313
  excludeFields: [],
@@ -318,6 +325,7 @@ export class SyncDataResolver {
318
325
  }
319
326
  }
320
327
  else if (await entityObject.InnerLoad(pk)) {
328
+ // pass back the full record as it was JUST BEFORE the delete, often quite useful on the other end
321
329
  result.RecordJSON = await entityObject.GetDataObjectJSON({
322
330
  includeRelatedEntityData: false,
323
331
  excludeFields: [],
@@ -338,6 +346,7 @@ export class SyncDataResolver {
338
346
  }
339
347
  }
340
348
  async SyncSingleItemCreate(entityObject, fieldValues, result, userPayload) {
349
+ // make sure we strip out the primary key from fieldValues before we pass it in because otherwise it will appear to be an existing record to the BaseEntity
341
350
  const noPKValues = { ...fieldValues };
342
351
  entityObject.EntityInfo.PrimaryKeys.forEach((pk) => {
343
352
  delete noPKValues[pk.Name];
@@ -346,6 +355,7 @@ export class SyncDataResolver {
346
355
  if (await entityObject.Save()) {
347
356
  result.Success = true;
348
357
  result.PrimaryKey = new CompositeKey(entityObject.PrimaryKeys.map((pk) => ({ FieldName: pk.Name, Value: pk.Value })));
358
+ // pass back the full record AFTER the sync, that's often quite useful on the other end
349
359
  result.RecordJSON = await entityObject.GetDataObjectJSON({
350
360
  includeRelatedEntityData: false,
351
361
  excludeFields: [],
@@ -361,8 +371,10 @@ export class SyncDataResolver {
361
371
  }
362
372
  async SyncSingleItemUpdate(entityObject, pk, ak, fieldValues, result, userPayload) {
363
373
  if (!pk || pk.KeyValuePairs.length === 0) {
374
+ // no pk, attempt to load by alt key
364
375
  const altKeyResult = await this.LoadFromAlternateKey(entityObject.EntityInfo.Name, ak, entityObject.ContextCurrentUser);
365
376
  if (!altKeyResult) {
377
+ // no record found, create a new one
366
378
  result.ErrorMessage = 'Failed to load the item, it is possible the record with the specified alternate key does not exist';
367
379
  }
368
380
  else {
@@ -373,6 +385,7 @@ export class SyncDataResolver {
373
385
  await this.InnerSyncSingleItemUpdate(entityObject, fieldValues, result, userPayload);
374
386
  }
375
387
  else {
388
+ // failed to load the item
376
389
  result.ErrorMessage = 'Failed to load the item, it is possible the record with the specified primary key does not exist';
377
390
  }
378
391
  }
@@ -383,6 +396,7 @@ export class SyncDataResolver {
383
396
  if (!result.PrimaryKey || result.PrimaryKey.KeyValuePairs.length === 0) {
384
397
  result.PrimaryKey = new CompositeKey(entityObject.PrimaryKeys.map((pk) => ({ FieldName: pk.Name, Value: pk.Value })));
385
398
  }
399
+ // pass back the full record AFTER the sync, that's often quite useful on the other end
386
400
  result.RecordJSON = await entityObject.GetDataObjectJSON({
387
401
  includeRelatedEntityData: false,
388
402
  excludeFields: [],
@@ -1 +1 @@
1
- {"version":3,"file":"SyncDataResolver.js","sourceRoot":"","sources":["../../src/resolvers/SyncDataResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncDataResolver.js","sourceRoot":"","sources":["../../src/resolvers/SyncDataResolver.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,16 @@ export declare class RolesAndUsersInputType {
28
28
  Roles: RoleInputType[];
29
29
  }
30
30
  export declare class SyncRolesAndUsersResolver {
31
+ /**
32
+ * This mutation will sync both the roles and the users, and the user/role relationships in the system with the data provided in the input.
33
+ * Roles are matched by the name (case insensitive) and users are matched by email
34
+ * @param data
35
+ */
31
36
  SyncRolesAndUsers(data: RolesAndUsersInputType, context: AppContext): Promise<SyncRolesAndUsersResultType>;
37
+ /**
38
+ * This mutation will sync the roles in the system with the data provided in the input, using the role name for matching (case insensitive)
39
+ * @param data
40
+ */
32
41
  SyncRoles(roles: RoleInputType[], context: AppContext): Promise<SyncRolesAndUsersResultType>;
33
42
  protected UpdateExistingRoles(currentRoles: RoleEntity[], futureRoles: RoleInputType[], userPayload: UserPayload): Promise<SyncRolesAndUsersResultType>;
34
43
  protected AddNewRoles(currentRoles: RoleEntity[], futureRoles: RoleInputType[], user: UserInfo, userPayload: UserPayload): Promise<boolean>;
@@ -36,6 +45,11 @@ export declare class SyncRolesAndUsersResolver {
36
45
  get StandardRoles(): string[];
37
46
  IsStandardRole(roleName: string): boolean;
38
47
  protected DeleteSingleRole(role: RoleEntity, rv: RunView, user: UserInfo, userPayload: UserPayload): Promise<boolean>;
48
+ /**
49
+ * This mutation will sync the just the users in the system with the data provided in the input, matches existing users by email
50
+ * @important This method will NOT work if the roles are not already in sync, meaning if User/Role relationships exist in the input data where the Role doesn't already exist in this system the sync will fail
51
+ * @param data
52
+ */
39
53
  SyncUsers(users: UserInputType[], context: AppContext): Promise<SyncRolesAndUsersResultType>;
40
54
  protected UpdateExistingUsers(currentUsers: UserEntity[], futureUsers: UserInputType[], userPayload: UserPayload): Promise<boolean>;
41
55
  protected AddNewUsers(currentUsers: UserEntity[], futureUsers: UserInputType[], userPayload: UserPayload): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"SyncRolesUsersResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/SyncRolesUsersResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncRolesUsersResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/SyncRolesUsersResolver.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,6 @@ import { LogError, Metadata, RunView } from '@memberjunction/core';
15
15
  import { RequireSystemUser } from '../directives/RequireSystemUser.js';
16
16
  import { UserCache } from '@memberjunction/sqlserver-dataprovider';
17
17
  let SyncRolesAndUsersResultType = class SyncRolesAndUsersResultType {
18
- Success;
19
18
  };
20
19
  __decorate([
21
20
  Field(() => Boolean),
@@ -26,9 +25,6 @@ SyncRolesAndUsersResultType = __decorate([
26
25
  ], SyncRolesAndUsersResultType);
27
26
  export { SyncRolesAndUsersResultType };
28
27
  let RoleInputType = class RoleInputType {
29
- ID;
30
- Name;
31
- Description;
32
28
  };
33
29
  __decorate([
34
30
  Field(() => String),
@@ -52,18 +48,10 @@ export var UserType;
52
48
  UserType["User"] = "User";
53
49
  })(UserType || (UserType = {}));
54
50
  registerEnumType(UserType, {
55
- name: "UserType",
51
+ name: "UserType", // GraphQL Enum Name
56
52
  description: "Defines whether a user is an Owner or a User",
57
53
  });
58
54
  let UserInputType = class UserInputType {
59
- ID;
60
- Name;
61
- Email;
62
- Type;
63
- FirstName;
64
- LastName;
65
- Title;
66
- Roles;
67
55
  };
68
56
  __decorate([
69
57
  Field(() => String),
@@ -102,8 +90,6 @@ UserInputType = __decorate([
102
90
  ], UserInputType);
103
91
  export { UserInputType };
104
92
  let RolesAndUsersInputType = class RolesAndUsersInputType {
105
- Users;
106
- Roles;
107
93
  };
108
94
  __decorate([
109
95
  Field(() => [UserInputType]),
@@ -118,12 +104,22 @@ RolesAndUsersInputType = __decorate([
118
104
  ], RolesAndUsersInputType);
119
105
  export { RolesAndUsersInputType };
120
106
  export class SyncRolesAndUsersResolver {
107
+ /**
108
+ * This mutation will sync both the roles and the users, and the user/role relationships in the system with the data provided in the input.
109
+ * Roles are matched by the name (case insensitive) and users are matched by email
110
+ * @param data
111
+ */
121
112
  async SyncRolesAndUsers(data, context) {
122
113
  try {
114
+ // first we sync the roles, then the users
123
115
  const roleResult = await this.SyncRoles(data.Roles, context);
124
116
  if (roleResult?.Success) {
125
117
  const usersResult = await this.SyncUsers(data.Users, context);
126
118
  if (usersResult?.Success) {
119
+ // refresh the user cache, don't set an auto-refresh
120
+ // interval here becuase that is alreayd done at startup
121
+ // and will keep going on its own as per the config. This is a
122
+ // special one-time refresh since we made changes here.
127
123
  await UserCache.Instance.Refresh(context.dataSource);
128
124
  }
129
125
  return usersResult;
@@ -137,8 +133,14 @@ export class SyncRolesAndUsersResolver {
137
133
  throw new Error('Error syncing roles and users\n\n' + err);
138
134
  }
139
135
  }
136
+ /**
137
+ * This mutation will sync the roles in the system with the data provided in the input, using the role name for matching (case insensitive)
138
+ * @param data
139
+ */
140
140
  async SyncRoles(roles, context) {
141
141
  try {
142
+ // we iterate through the provided roles and we remove roles that are not in the input and add roles that are new
143
+ // and update roles that already exist
142
144
  const rv = new RunView();
143
145
  const result = await rv.RunView({
144
146
  EntityName: "Roles",
@@ -152,7 +154,7 @@ export class SyncRolesAndUsersResolver {
152
154
  }
153
155
  }
154
156
  }
155
- return { Success: false };
157
+ return { Success: false }; // if we get here, something went wrong
156
158
  }
157
159
  catch (err) {
158
160
  LogError(err);
@@ -160,6 +162,7 @@ export class SyncRolesAndUsersResolver {
160
162
  }
161
163
  }
162
164
  async UpdateExistingRoles(currentRoles, futureRoles, userPayload) {
165
+ // go through the future roles and update any that are in the current roles
163
166
  const md = new Metadata();
164
167
  let ok = true;
165
168
  for (const update of futureRoles) {
@@ -172,6 +175,7 @@ export class SyncRolesAndUsersResolver {
172
175
  return { Success: ok };
173
176
  }
174
177
  async AddNewRoles(currentRoles, futureRoles, user, userPayload) {
178
+ // go through the future roles and add any that are not in the current roles
175
179
  const md = new Metadata();
176
180
  let ok = true;
177
181
  for (const add of futureRoles) {
@@ -187,6 +191,7 @@ export class SyncRolesAndUsersResolver {
187
191
  async DeleteRemovedRoles(currentRoles, futureRoles, user, userPayload) {
188
192
  const rv = new RunView();
189
193
  let ok = true;
194
+ // iterate through the existing roles and remove any that are not in the input
190
195
  for (const remove of currentRoles) {
191
196
  if (!this.IsStandardRole(remove.Name)) {
192
197
  if (!futureRoles.find(r => r.Name.trim().toLowerCase() === remove.Name.trim().toLowerCase())) {
@@ -203,6 +208,7 @@ export class SyncRolesAndUsersResolver {
203
208
  return this.StandardRoles.find(r => r.toLowerCase() === roleName.toLowerCase()) !== undefined;
204
209
  }
205
210
  async DeleteSingleRole(role, rv, user, userPayload) {
211
+ // first, remove all the UserRole records that match this role
206
212
  let ok = true;
207
213
  const r2 = await rv.RunView({
208
214
  EntityName: "User Roles",
@@ -211,19 +217,27 @@ export class SyncRolesAndUsersResolver {
211
217
  }, user);
212
218
  if (r2.Success) {
213
219
  for (const ur of r2.Results) {
214
- ok = ok && await ur.Delete();
220
+ ok = ok && await ur.Delete(); // remove the user role
215
221
  }
216
222
  }
217
- return ok && role.Delete();
223
+ return ok && role.Delete(); // remove the role
218
224
  }
225
+ /**
226
+ * This mutation will sync the just the users in the system with the data provided in the input, matches existing users by email
227
+ * @important This method will NOT work if the roles are not already in sync, meaning if User/Role relationships exist in the input data where the Role doesn't already exist in this system the sync will fail
228
+ * @param data
229
+ */
219
230
  async SyncUsers(users, context) {
220
231
  try {
232
+ // first, we sync up the users and then the user roles.
233
+ // for syncing users we first remove users that are no longer in the input, then we add new users and update existing users
221
234
  const rv = new RunView();
222
235
  const result = await rv.RunView({
223
236
  EntityName: "Users",
224
237
  ResultType: 'entity_object'
225
238
  }, context.userPayload.userRecord);
226
239
  if (result && result.Success) {
240
+ // go through current users and remove those that are not in the input
227
241
  const currentUsers = result.Results;
228
242
  if (await this.DeleteRemovedUsers(currentUsers, users, context.userPayload.userRecord, context.userPayload)) {
229
243
  if (await this.AddNewUsers(currentUsers, users, context.userPayload)) {
@@ -235,7 +249,7 @@ export class SyncRolesAndUsersResolver {
235
249
  }
236
250
  }
237
251
  }
238
- return { Success: false };
252
+ return { Success: false }; // if we get here, something went wrong
239
253
  }
240
254
  catch (err) {
241
255
  LogError(err);
@@ -243,6 +257,7 @@ export class SyncRolesAndUsersResolver {
243
257
  }
244
258
  }
245
259
  async UpdateExistingUsers(currentUsers, futureUsers, userPayload) {
260
+ // go through the future users and update any that are in the current users
246
261
  let ok = true;
247
262
  for (const update of futureUsers) {
248
263
  const current = currentUsers.find(c => c.Email?.trim().toLowerCase() === update.Email?.trim().toLowerCase());
@@ -258,11 +273,13 @@ export class SyncRolesAndUsersResolver {
258
273
  return ok;
259
274
  }
260
275
  async AddNewUsers(currentUsers, futureUsers, userPayload) {
276
+ // add users that are not in the current users
261
277
  const md = new Metadata();
262
278
  let ok = true;
263
279
  for (const add of futureUsers) {
264
280
  const match = currentUsers.find(currentUser => currentUser.Email?.trim().toLowerCase() === add.Email?.trim().toLowerCase());
265
281
  if (match) {
282
+ // make sure the IsActive bit is set to true
266
283
  match.IsActive = true;
267
284
  ok = ok && await match.Save();
268
285
  }
@@ -281,9 +298,11 @@ export class SyncRolesAndUsersResolver {
281
298
  return ok;
282
299
  }
283
300
  async DeleteRemovedUsers(currentUsers, futureUsers, u, userPayload) {
301
+ // remove users that are not in the future users
284
302
  const rv = new RunView();
285
303
  const md = new Metadata();
286
304
  let ok = true;
305
+ //const tg = await md.CreateTransactionGroup(); HAVING PROBLEMS with this, so skipping for now, I think the entire thing is wrapped in a transaction and that's causing issues with two styles of trans wrappers
287
306
  for (const remove of currentUsers) {
288
307
  if (remove.Type.trim().toLowerCase() !== 'owner') {
289
308
  if (!futureUsers.find(r => r.Email.trim().toLowerCase() === remove.Email.trim().toLowerCase())) {
@@ -294,6 +313,7 @@ export class SyncRolesAndUsersResolver {
294
313
  return ok;
295
314
  }
296
315
  async DeleteSingleUser(user, rv, u, userPayload) {
316
+ // first, remove all the UserRole records that match this user
297
317
  let ok = true;
298
318
  const r2 = await rv.RunView({
299
319
  EntityName: "User Roles",
@@ -302,18 +322,21 @@ export class SyncRolesAndUsersResolver {
302
322
  }, u);
303
323
  if (r2.Success) {
304
324
  for (const ur of r2.Results) {
305
- ok = ok && await ur.Delete();
325
+ //ur.TransactionGroup = tg;
326
+ ok = ok && await ur.Delete(); // remove the user role
306
327
  }
307
328
  }
308
329
  if (await user.Delete()) {
309
330
  return ok;
310
331
  }
311
332
  else {
333
+ // in some cases there are a lot of fkey constraints that prevent the user from being deleted, so we mark the user as inactive instead
312
334
  user.IsActive = false;
313
335
  return await user.Save() && ok;
314
336
  }
315
337
  }
316
338
  async SyncUserRoles(users, u, userPayload) {
339
+ // for each user in the users array, make sure there is a User Role that matches. First, get a list of all DATABASE user and roels so we have that for fast lookup in memory
317
340
  const rv = new RunView();
318
341
  const md = new Metadata();
319
342
  const p1 = rv.RunView({
@@ -328,19 +351,26 @@ export class SyncRolesAndUsersResolver {
328
351
  EntityName: "User Roles",
329
352
  ResultType: 'entity_object'
330
353
  }, u);
354
+ // await both
331
355
  const [uResult, rResult, urResult] = await Promise.all([p1, p2, p3]);
332
356
  if (uResult.Success && rResult.Success && urResult.Success) {
357
+ // we have the DB users and roles, and user roles
333
358
  const dbUsers = uResult.Results;
334
359
  const dbRoles = rResult.Results;
335
360
  const dbUserRoles = urResult.Results;
336
361
  let ok = true;
362
+ // now, we can do lookups in memory from those DB roles and Users for their ID values
363
+ // now we will iterate through the users input type and for each role, make sure it is in there
364
+ //const tg = await md.CreateTransactionGroup();
337
365
  for (const user of users) {
338
366
  const dbUser = dbUsers.find(u => u.Email.trim().toLowerCase() === user.Email.trim().toLowerCase());
339
367
  if (dbUser) {
340
368
  for (const role of user.Roles) {
341
369
  const dbRole = dbRoles.find(r => r.Name.trim().toLowerCase() === role.Name.trim().toLowerCase());
342
370
  if (dbRole) {
371
+ // now we need to make sure there is a user role that matches this user and role
343
372
  if (!dbUserRoles.find(ur => ur.UserID === dbUser.ID && ur.RoleID === dbRole.ID)) {
373
+ // we need to add a user role
344
374
  const ur = await md.GetEntityObject("User Roles", u);
345
375
  ur.UserID = dbUser.ID;
346
376
  ur.RoleID = dbRole.ID;
@@ -348,11 +378,14 @@ export class SyncRolesAndUsersResolver {
348
378
  }
349
379
  }
350
380
  }
381
+ // now, we check for DB user roles that are NOT in the user.Roles property as they are no longer part of the user's roles
351
382
  const thisUserDBRoles = dbUserRoles.filter(ur => ur.UserID === dbUser.ID);
352
383
  for (const dbUserRole of thisUserDBRoles) {
353
384
  const role = user.Roles.find(r => r.Name.trim().toLowerCase() === dbRoles.find(rr => rr.ID === dbUserRole.RoleID)?.Name.trim().toLowerCase());
354
385
  if (!role && !this.IsStandardRole(dbUserRole.Role)) {
355
- ok = ok && await dbUserRole.Delete();
386
+ // this user role is no longer in the user's roles, we need to remove it
387
+ //dbUserRole.TransactionGroup = tg;
388
+ ok = ok && await dbUserRole.Delete(); // remove the user role - we use await for the DELETE, not the save
356
389
  }
357
390
  }
358
391
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SyncRolesUsersResolver.js","sourceRoot":"","sources":["../../src/resolvers/SyncRolesUsersResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncRolesUsersResolver.js","sourceRoot":"","sources":["../../src/resolvers/SyncRolesUsersResolver.ts"],"names":[],"mappings":"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"}