@memberjunction/server 6.2.0-edge.3 → 6.2.0-edge.5

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 (543) hide show
  1. package/README.md +20 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/agentSessions/BridgeHostInstance.d.ts +25 -0
  4. package/dist/agentSessions/BridgeHostInstance.d.ts.map +1 -0
  5. package/dist/agentSessions/BridgeHostInstance.js +30 -0
  6. package/dist/agentSessions/BridgeHostInstance.js.map +1 -0
  7. package/dist/agentSessions/HostInstance.d.ts +75 -11
  8. package/dist/agentSessions/HostInstance.d.ts.map +1 -1
  9. package/dist/agentSessions/HostInstance.js +99 -28
  10. package/dist/agentSessions/HostInstance.js.map +1 -1
  11. package/dist/agentSessions/ReturningVisitorRecap.d.ts.map +1 -1
  12. package/dist/agentSessions/ReturningVisitorRecap.js +7 -3
  13. package/dist/agentSessions/ReturningVisitorRecap.js.map +1 -1
  14. package/dist/agentSessions/SessionJanitor.d.ts +236 -27
  15. package/dist/agentSessions/SessionJanitor.d.ts.map +1 -1
  16. package/dist/agentSessions/SessionJanitor.js +682 -54
  17. package/dist/agentSessions/SessionJanitor.js.map +1 -1
  18. package/dist/agentSessions/SessionManager.d.ts +48 -3
  19. package/dist/agentSessions/SessionManager.d.ts.map +1 -1
  20. package/dist/agentSessions/SessionManager.js +112 -9
  21. package/dist/agentSessions/SessionManager.js.map +1 -1
  22. package/dist/agentSessions/SessionRunIDVerifier.d.ts +63 -0
  23. package/dist/agentSessions/SessionRunIDVerifier.d.ts.map +1 -0
  24. package/dist/agentSessions/SessionRunIDVerifier.js +129 -0
  25. package/dist/agentSessions/SessionRunIDVerifier.js.map +1 -0
  26. package/dist/agentSessions/index.d.ts +2 -0
  27. package/dist/agentSessions/index.d.ts.map +1 -1
  28. package/dist/agentSessions/index.js +10 -3
  29. package/dist/agentSessions/index.js.map +1 -1
  30. package/dist/apiRoot.d.ts +32 -0
  31. package/dist/apiRoot.d.ts.map +1 -0
  32. package/dist/apiRoot.js +67 -0
  33. package/dist/apiRoot.js.map +1 -0
  34. package/dist/auth/AuthProviderCatalogRouter.d.ts.map +1 -1
  35. package/dist/auth/AuthProviderCatalogRouter.js +25 -0
  36. package/dist/auth/AuthProviderCatalogRouter.js.map +1 -1
  37. package/dist/auth/LoginScreenEngine.d.ts +22 -0
  38. package/dist/auth/LoginScreenEngine.d.ts.map +1 -0
  39. package/dist/auth/LoginScreenEngine.js +57 -0
  40. package/dist/auth/LoginScreenEngine.js.map +1 -0
  41. package/dist/auth/actionAuthorization.d.ts +40 -0
  42. package/dist/auth/actionAuthorization.d.ts.map +1 -0
  43. package/dist/auth/actionAuthorization.js +94 -0
  44. package/dist/auth/actionAuthorization.js.map +1 -0
  45. package/dist/auth/index.d.ts +1 -0
  46. package/dist/auth/index.d.ts.map +1 -1
  47. package/dist/auth/index.js +4 -10
  48. package/dist/auth/index.js.map +1 -1
  49. package/dist/auth/magicLink/MagicLinkRouter.d.ts.map +1 -1
  50. package/dist/auth/magicLink/MagicLinkRouter.js +3 -2
  51. package/dist/auth/magicLink/MagicLinkRouter.js.map +1 -1
  52. package/dist/auth/magicLink/MagicLinkService.d.ts.map +1 -1
  53. package/dist/auth/magicLink/MagicLinkService.js +6 -3
  54. package/dist/auth/magicLink/MagicLinkService.js.map +1 -1
  55. package/dist/auth/newUsers.d.ts +10 -0
  56. package/dist/auth/newUsers.d.ts.map +1 -1
  57. package/dist/auth/newUsers.js +80 -11
  58. package/dist/auth/newUsers.js.map +1 -1
  59. package/dist/config.d.ts +2514 -22
  60. package/dist/config.d.ts.map +1 -1
  61. package/dist/config.js +166 -4
  62. package/dist/config.js.map +1 -1
  63. package/dist/context.d.ts +8 -0
  64. package/dist/context.d.ts.map +1 -1
  65. package/dist/context.js +14 -11
  66. package/dist/context.js.map +1 -1
  67. package/dist/coreRoutes.d.ts +29 -0
  68. package/dist/coreRoutes.d.ts.map +1 -0
  69. package/dist/coreRoutes.js +142 -0
  70. package/dist/coreRoutes.js.map +1 -0
  71. package/dist/generated/graphql-schemas/__mj.d.ts +504 -3
  72. package/dist/generated/graphql-schemas/__mj.d.ts.map +1 -1
  73. package/dist/generated/graphql-schemas/__mj.js +2456 -7
  74. package/dist/generated/graphql-schemas/__mj.js.map +1 -1
  75. package/dist/generic/CacheInvalidationResolver.d.ts +43 -8
  76. package/dist/generic/CacheInvalidationResolver.d.ts.map +1 -1
  77. package/dist/generic/CacheInvalidationResolver.js +59 -19
  78. package/dist/generic/CacheInvalidationResolver.js.map +1 -1
  79. package/dist/generic/OrphanedConversationDetailReconciler.js +3 -3
  80. package/dist/generic/OrphanedConversationDetailReconciler.js.map +1 -1
  81. package/dist/generic/PushStatusResolver.js +1 -1
  82. package/dist/generic/PushStatusResolver.js.map +1 -1
  83. package/dist/generic/ResolverBase.d.ts +123 -48
  84. package/dist/generic/ResolverBase.d.ts.map +1 -1
  85. package/dist/generic/ResolverBase.js +293 -305
  86. package/dist/generic/ResolverBase.js.map +1 -1
  87. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  88. package/dist/generic/RunViewResolver.js +16 -0
  89. package/dist/generic/RunViewResolver.js.map +1 -1
  90. package/dist/globalCors.d.ts +33 -0
  91. package/dist/globalCors.d.ts.map +1 -0
  92. package/dist/globalCors.js +58 -0
  93. package/dist/globalCors.js.map +1 -0
  94. package/dist/index.d.ts +17 -0
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +219 -278
  97. package/dist/index.js.map +1 -1
  98. package/dist/isolatedProvider.d.ts +20 -0
  99. package/dist/isolatedProvider.d.ts.map +1 -0
  100. package/dist/isolatedProvider.js +22 -0
  101. package/dist/isolatedProvider.js.map +1 -0
  102. package/dist/multiTenancy/index.d.ts.map +1 -1
  103. package/dist/multiTenancy/index.js +22 -2
  104. package/dist/multiTenancy/index.js.map +1 -1
  105. package/dist/realtimeProxy/RealtimeProxyServer.d.ts +44 -4
  106. package/dist/realtimeProxy/RealtimeProxyServer.d.ts.map +1 -1
  107. package/dist/realtimeProxy/RealtimeProxyServer.js +121 -16
  108. package/dist/realtimeProxy/RealtimeProxyServer.js.map +1 -1
  109. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts +171 -0
  110. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts.map +1 -0
  111. package/dist/realtimeProxy/RealtimeRelayTunnel.js +532 -0
  112. package/dist/realtimeProxy/RealtimeRelayTunnel.js.map +1 -0
  113. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts +148 -0
  114. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts.map +1 -0
  115. package/dist/realtimeSessions/RealtimeSessionEventService.js +191 -0
  116. package/dist/realtimeSessions/RealtimeSessionEventService.js.map +1 -0
  117. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts +66 -0
  118. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts.map +1 -0
  119. package/dist/realtimeSessions/RealtimeSessionVerificationService.js +139 -0
  120. package/dist/realtimeSessions/RealtimeSessionVerificationService.js.map +1 -0
  121. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts +38 -0
  122. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts.map +1 -0
  123. package/dist/realtimeSessions/RealtimeVerifyRouter.js +99 -0
  124. package/dist/realtimeSessions/RealtimeVerifyRouter.js.map +1 -0
  125. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts +100 -0
  126. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts.map +1 -0
  127. package/dist/realtimeSessions/RecordingAssemblyScheduler.js +173 -0
  128. package/dist/realtimeSessions/RecordingAssemblyScheduler.js.map +1 -0
  129. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts +61 -0
  130. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts.map +1 -0
  131. package/dist/realtimeSessions/SessionVerificationPortsBase.js +149 -0
  132. package/dist/realtimeSessions/SessionVerificationPortsBase.js.map +1 -0
  133. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts +57 -0
  134. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts.map +1 -0
  135. package/dist/realtimeSessions/SlidingWindowRateLimiter.js +69 -0
  136. package/dist/realtimeSessions/SlidingWindowRateLimiter.js.map +1 -0
  137. package/dist/realtimeSessions/index.d.ts +19 -0
  138. package/dist/realtimeSessions/index.d.ts.map +1 -0
  139. package/dist/realtimeSessions/index.js +19 -0
  140. package/dist/realtimeSessions/index.js.map +1 -0
  141. package/dist/realtimeSessions/ownedRealtimeSession.d.ts +30 -0
  142. package/dist/realtimeSessions/ownedRealtimeSession.d.ts.map +1 -0
  143. package/dist/realtimeSessions/ownedRealtimeSession.js +47 -0
  144. package/dist/realtimeSessions/ownedRealtimeSession.js.map +1 -0
  145. package/dist/realtimeSessions/sessionAccess.d.ts +92 -0
  146. package/dist/realtimeSessions/sessionAccess.d.ts.map +1 -0
  147. package/dist/realtimeSessions/sessionAccess.js +94 -0
  148. package/dist/realtimeSessions/sessionAccess.js.map +1 -0
  149. package/dist/realtimeSessions/sessionConfigStamps.d.ts +70 -0
  150. package/dist/realtimeSessions/sessionConfigStamps.d.ts.map +1 -0
  151. package/dist/realtimeSessions/sessionConfigStamps.js +93 -0
  152. package/dist/realtimeSessions/sessionConfigStamps.js.map +1 -0
  153. package/dist/realtimeSessions/subscriptionAuthorization.d.ts +65 -0
  154. package/dist/realtimeSessions/subscriptionAuthorization.d.ts.map +1 -0
  155. package/dist/realtimeSessions/subscriptionAuthorization.js +71 -0
  156. package/dist/realtimeSessions/subscriptionAuthorization.js.map +1 -0
  157. package/dist/realtimeSessions/verificationCore.d.ts +243 -0
  158. package/dist/realtimeSessions/verificationCore.d.ts.map +1 -0
  159. package/dist/realtimeSessions/verificationCore.js +356 -0
  160. package/dist/realtimeSessions/verificationCore.js.map +1 -0
  161. package/dist/realtimeSessions/verificationPages.d.ts +66 -0
  162. package/dist/realtimeSessions/verificationPages.d.ts.map +1 -0
  163. package/dist/realtimeSessions/verificationPages.js +110 -0
  164. package/dist/realtimeSessions/verificationPages.js.map +1 -0
  165. package/dist/realtimeSessions/verificationPolicy.d.ts +147 -0
  166. package/dist/realtimeSessions/verificationPolicy.d.ts.map +1 -0
  167. package/dist/realtimeSessions/verificationPolicy.js +249 -0
  168. package/dist/realtimeSessions/verificationPolicy.js.map +1 -0
  169. package/dist/realtimeSessions/verificationWorkflow.d.ts +263 -0
  170. package/dist/realtimeSessions/verificationWorkflow.d.ts.map +1 -0
  171. package/dist/realtimeSessions/verificationWorkflow.js +435 -0
  172. package/dist/realtimeSessions/verificationWorkflow.js.map +1 -0
  173. package/dist/realtimeWidget/widgetGuestElevation.d.ts +20 -2
  174. package/dist/realtimeWidget/widgetGuestElevation.d.ts.map +1 -1
  175. package/dist/realtimeWidget/widgetGuestElevation.js +31 -2
  176. package/dist/realtimeWidget/widgetGuestElevation.js.map +1 -1
  177. package/dist/resolvers/ActionResolver.d.ts +31 -5
  178. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  179. package/dist/resolvers/ActionResolver.js +75 -14
  180. package/dist/resolvers/ActionResolver.js.map +1 -1
  181. package/dist/resolvers/AdhocQueryResolver.d.ts +14 -1
  182. package/dist/resolvers/AdhocQueryResolver.d.ts.map +1 -1
  183. package/dist/resolvers/AdhocQueryResolver.js +21 -5
  184. package/dist/resolvers/AdhocQueryResolver.js.map +1 -1
  185. package/dist/resolvers/ArtifactFileResolver.d.ts +5 -1
  186. package/dist/resolvers/ArtifactFileResolver.d.ts.map +1 -1
  187. package/dist/resolvers/ArtifactFileResolver.js +9 -7
  188. package/dist/resolvers/ArtifactFileResolver.js.map +1 -1
  189. package/dist/resolvers/CacheStatsResolver.d.ts +27 -0
  190. package/dist/resolvers/CacheStatsResolver.d.ts.map +1 -1
  191. package/dist/resolvers/CacheStatsResolver.js +113 -2
  192. package/dist/resolvers/CacheStatsResolver.js.map +1 -1
  193. package/dist/resolvers/ClientToolRequestResolver.d.ts +4 -2
  194. package/dist/resolvers/ClientToolRequestResolver.d.ts.map +1 -1
  195. package/dist/resolvers/ClientToolRequestResolver.js +28 -10
  196. package/dist/resolvers/ClientToolRequestResolver.js.map +1 -1
  197. package/dist/resolvers/ConversationRunEventsResolver.d.ts +8 -4
  198. package/dist/resolvers/ConversationRunEventsResolver.d.ts.map +1 -1
  199. package/dist/resolvers/ConversationRunEventsResolver.js +6 -6
  200. package/dist/resolvers/ConversationRunEventsResolver.js.map +1 -1
  201. package/dist/resolvers/DatasetResolver.d.ts +24 -3
  202. package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
  203. package/dist/resolvers/DatasetResolver.js +57 -8
  204. package/dist/resolvers/DatasetResolver.js.map +1 -1
  205. package/dist/resolvers/EntityRecordNameResolver.d.ts +2 -1
  206. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
  207. package/dist/resolvers/EntityRecordNameResolver.js +3 -2
  208. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  209. package/dist/resolvers/FetchEntityVectorsResolver.d.ts +27 -1
  210. package/dist/resolvers/FetchEntityVectorsResolver.d.ts.map +1 -1
  211. package/dist/resolvers/FetchEntityVectorsResolver.js +148 -2
  212. package/dist/resolvers/FetchEntityVectorsResolver.js.map +1 -1
  213. package/dist/resolvers/FileResolver.d.ts +82 -11
  214. package/dist/resolvers/FileResolver.d.ts.map +1 -1
  215. package/dist/resolvers/FileResolver.js +279 -101
  216. package/dist/resolvers/FileResolver.js.map +1 -1
  217. package/dist/resolvers/GetDataContextDataResolver.d.ts +33 -7
  218. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  219. package/dist/resolvers/GetDataContextDataResolver.js +117 -38
  220. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  221. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  222. package/dist/resolvers/GetDataResolver.js +6 -3
  223. package/dist/resolvers/GetDataResolver.js.map +1 -1
  224. package/dist/resolvers/HumanHandoffResolver.d.ts.map +1 -1
  225. package/dist/resolvers/HumanHandoffResolver.js +7 -1
  226. package/dist/resolvers/HumanHandoffResolver.js.map +1 -1
  227. package/dist/resolvers/IntegrationDiscoveryResolver.d.ts.map +1 -1
  228. package/dist/resolvers/IntegrationDiscoveryResolver.js +4 -2
  229. package/dist/resolvers/IntegrationDiscoveryResolver.js.map +1 -1
  230. package/dist/resolvers/MCPResolver.d.ts.map +1 -1
  231. package/dist/resolvers/MCPResolver.js +9 -4
  232. package/dist/resolvers/MCPResolver.js.map +1 -1
  233. package/dist/resolvers/QueryResolver.d.ts +2 -0
  234. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  235. package/dist/resolvers/QueryResolver.js +13 -0
  236. package/dist/resolvers/QueryResolver.js.map +1 -1
  237. package/dist/resolvers/RealtimeBridgeResolver.d.ts +54 -2
  238. package/dist/resolvers/RealtimeBridgeResolver.d.ts.map +1 -1
  239. package/dist/resolvers/RealtimeBridgeResolver.js +155 -10
  240. package/dist/resolvers/RealtimeBridgeResolver.js.map +1 -1
  241. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +157 -33
  242. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  243. package/dist/resolvers/RealtimeClientSessionResolver.js +404 -116
  244. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  245. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts +61 -0
  246. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts.map +1 -0
  247. package/dist/resolvers/RealtimeSessionEventsResolver.js +130 -0
  248. package/dist/resolvers/RealtimeSessionEventsResolver.js.map +1 -0
  249. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts +85 -0
  250. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts.map +1 -0
  251. package/dist/resolvers/RealtimeSessionVerificationResolver.js +188 -0
  252. package/dist/resolvers/RealtimeSessionVerificationResolver.js.map +1 -0
  253. package/dist/resolvers/RemoteBrowserActionResolver.d.ts +2 -0
  254. package/dist/resolvers/RemoteBrowserActionResolver.d.ts.map +1 -1
  255. package/dist/resolvers/RemoteBrowserActionResolver.js +5 -1
  256. package/dist/resolvers/RemoteBrowserActionResolver.js.map +1 -1
  257. package/dist/resolvers/RunAIAgentResolver.d.ts +10 -0
  258. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  259. package/dist/resolvers/RunAIAgentResolver.js +100 -14
  260. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  261. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  262. package/dist/resolvers/RunTemplateResolver.js +12 -11
  263. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  264. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts +12 -1
  265. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts.map +1 -1
  266. package/dist/resolvers/SearchKnowledgeStreamResolver.js +15 -2
  267. package/dist/resolvers/SearchKnowledgeStreamResolver.js.map +1 -1
  268. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  269. package/dist/resolvers/SqlLoggingConfigResolver.js +2 -3
  270. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  271. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  272. package/dist/resolvers/SyncDataResolver.js +6 -2
  273. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  274. package/dist/resolvers/SyncRolesUsersResolver.d.ts +2 -0
  275. package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
  276. package/dist/resolvers/SyncRolesUsersResolver.js +23 -6
  277. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  278. package/dist/resolvers/TaskGraphFrameResolver.d.ts +2 -1
  279. package/dist/resolvers/TaskGraphFrameResolver.d.ts.map +1 -1
  280. package/dist/resolvers/TaskGraphFrameResolver.js +28 -1
  281. package/dist/resolvers/TaskGraphFrameResolver.js.map +1 -1
  282. package/dist/resolvers/TestQuerySQLResolver.d.ts +24 -0
  283. package/dist/resolvers/TestQuerySQLResolver.d.ts.map +1 -1
  284. package/dist/resolvers/TestQuerySQLResolver.js +65 -13
  285. package/dist/resolvers/TestQuerySQLResolver.js.map +1 -1
  286. package/dist/resolvers/TransactionGroupResolver.d.ts +19 -2
  287. package/dist/resolvers/TransactionGroupResolver.d.ts.map +1 -1
  288. package/dist/resolvers/TransactionGroupResolver.js +102 -24
  289. package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
  290. package/dist/resolvers/UserAvatarResolver.d.ts +16 -0
  291. package/dist/resolvers/UserAvatarResolver.d.ts.map +1 -0
  292. package/dist/resolvers/UserAvatarResolver.js +124 -0
  293. package/dist/resolvers/UserAvatarResolver.js.map +1 -0
  294. package/dist/resolvers/UserResolver.d.ts.map +1 -1
  295. package/dist/resolvers/UserResolver.js +2 -17
  296. package/dist/resolvers/UserResolver.js.map +1 -1
  297. package/dist/resolvers/agent-run-data-guard.d.ts +31 -0
  298. package/dist/resolvers/agent-run-data-guard.d.ts.map +1 -0
  299. package/dist/resolvers/agent-run-data-guard.js +72 -0
  300. package/dist/resolvers/agent-run-data-guard.js.map +1 -0
  301. package/dist/resolvers/agentVisionConsentAudit.d.ts +37 -0
  302. package/dist/resolvers/agentVisionConsentAudit.d.ts.map +1 -0
  303. package/dist/resolvers/agentVisionConsentAudit.js +63 -0
  304. package/dist/resolvers/agentVisionConsentAudit.js.map +1 -0
  305. package/dist/resolvers/avatarInputValidation.d.ts +40 -0
  306. package/dist/resolvers/avatarInputValidation.d.ts.map +1 -0
  307. package/dist/resolvers/avatarInputValidation.js +97 -0
  308. package/dist/resolvers/avatarInputValidation.js.map +1 -0
  309. package/dist/resolvers/currentUserRoles.d.ts +29 -0
  310. package/dist/resolvers/currentUserRoles.d.ts.map +1 -1
  311. package/dist/resolvers/currentUserRoles.js +30 -0
  312. package/dist/resolvers/currentUserRoles.js.map +1 -1
  313. package/dist/resolvers/meetings/meetingMutations.d.ts +6 -0
  314. package/dist/resolvers/meetings/meetingMutations.d.ts.map +1 -1
  315. package/dist/resolvers/meetings/meetingMutations.js +21 -0
  316. package/dist/resolvers/meetings/meetingMutations.js.map +1 -1
  317. package/dist/rest/RealtimeRecordingHandler.d.ts +49 -0
  318. package/dist/rest/RealtimeRecordingHandler.d.ts.map +1 -0
  319. package/dist/rest/RealtimeRecordingHandler.js +383 -0
  320. package/dist/rest/RealtimeRecordingHandler.js.map +1 -0
  321. package/dist/rest/ViewOperationsHandler.d.ts +3 -1
  322. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  323. package/dist/rest/ViewOperationsHandler.js +21 -12
  324. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  325. package/dist/rest/setupRESTEndpoints.d.ts +6 -0
  326. package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
  327. package/dist/rest/setupRESTEndpoints.js +6 -0
  328. package/dist/rest/setupRESTEndpoints.js.map +1 -1
  329. package/dist/serverExtensionReservedRoots.d.ts +12 -10
  330. package/dist/serverExtensionReservedRoots.d.ts.map +1 -1
  331. package/dist/serverExtensionReservedRoots.js +14 -17
  332. package/dist/serverExtensionReservedRoots.js.map +1 -1
  333. package/dist/services/MJStorageBlobStore.d.ts +8 -1
  334. package/dist/services/MJStorageBlobStore.d.ts.map +1 -1
  335. package/dist/services/MJStorageBlobStore.js +25 -19
  336. package/dist/services/MJStorageBlobStore.js.map +1 -1
  337. package/dist/services/StartTaskGraphDispatcher.js +2 -2
  338. package/dist/services/StartTaskGraphDispatcher.js.map +1 -1
  339. package/dist/services/TaskGraphActionRunner.d.ts +5 -3
  340. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -1
  341. package/dist/services/TaskGraphActionRunner.js +27 -5
  342. package/dist/services/TaskGraphActionRunner.js.map +1 -1
  343. package/dist/services/TaskGraphAgentRunner.d.ts +14 -2
  344. package/dist/services/TaskGraphAgentRunner.d.ts.map +1 -1
  345. package/dist/services/TaskGraphAgentRunner.js +157 -9
  346. package/dist/services/TaskGraphAgentRunner.js.map +1 -1
  347. package/dist/services/TaskGraphContinuationDeliverer.d.ts +57 -4
  348. package/dist/services/TaskGraphContinuationDeliverer.d.ts.map +1 -1
  349. package/dist/services/TaskGraphContinuationDeliverer.js +607 -18
  350. package/dist/services/TaskGraphContinuationDeliverer.js.map +1 -1
  351. package/dist/sharedCache.d.ts +105 -0
  352. package/dist/sharedCache.d.ts.map +1 -0
  353. package/dist/sharedCache.js +279 -0
  354. package/dist/sharedCache.js.map +1 -0
  355. package/dist/types.d.ts +6 -0
  356. package/dist/types.d.ts.map +1 -1
  357. package/dist/types.js.map +1 -1
  358. package/package.json +99 -96
  359. package/src/__tests__/ActionResolver.authorization.test.ts +353 -0
  360. package/src/__tests__/AdhocQueryResolver.sqlAuthorizer.test.ts +104 -0
  361. package/src/__tests__/BridgeHostInstance.test.ts +232 -0
  362. package/src/__tests__/ClientToolRequestResolver.test.ts +116 -0
  363. package/src/__tests__/DatasetResolver.itemFilters.test.ts +201 -0
  364. package/src/__tests__/EntityRecordNameResolver.rowSecurity.test.ts +152 -0
  365. package/src/__tests__/FetchEntityVectorsResolver.test.ts +433 -0
  366. package/src/__tests__/FileResolver.storageAccess.test.ts +562 -0
  367. package/src/__tests__/GetDataContextDataResolver.sqlItems.test.ts +416 -0
  368. package/src/__tests__/HostInstance.test.ts +84 -0
  369. package/src/__tests__/HumanHandoffResolver.test.ts +17 -0
  370. package/src/__tests__/ListOperationsResolver.adhocScreen.test.ts +137 -0
  371. package/src/__tests__/LoginScreenEngine.test.ts +86 -0
  372. package/src/__tests__/MJStorageBlobStore.storageGate.test.ts +63 -0
  373. package/src/__tests__/MeetingResolver.test.ts +75 -1
  374. package/src/__tests__/RealtimeBridgeResolver.test.ts +415 -6
  375. package/src/__tests__/RealtimeClientSessionResolver.configTamper.test.ts +383 -0
  376. package/src/__tests__/RealtimeClientSessionResolver.test.ts +682 -58
  377. package/src/__tests__/RealtimeProxyServer.test.ts +16 -1
  378. package/src/__tests__/RealtimeRelay.test.ts +876 -0
  379. package/src/__tests__/RecordingAssemblyScheduler.test.ts +178 -0
  380. package/src/__tests__/RemoteBrowserActionResolver.goalRunLink.test.ts +129 -0
  381. package/src/__tests__/ResolverBase.adhocReadScope.test.ts +133 -2
  382. package/src/__tests__/ResolverBase.aggregateScreen.test.ts +174 -0
  383. package/src/__tests__/ResolverBase.balancedClause.test.ts +155 -0
  384. package/src/__tests__/ResolverBase.clauseUnscopedRead.test.ts +127 -0
  385. package/src/__tests__/ResolverBase.clientOldValues.test.ts +212 -6
  386. package/src/__tests__/ResolverBase.filterEscaping.test.ts +5 -2
  387. package/src/__tests__/ReturningVisitorRecap.test.ts +115 -0
  388. package/src/__tests__/RunAIAgentResolver.branch.test.ts +170 -0
  389. package/src/__tests__/RunAIAgentResolver.historyFrom.test.ts +6 -4
  390. package/src/__tests__/RunAIAgentResolver.runDataGuard.test.ts +258 -0
  391. package/src/__tests__/RunAIAgentResolver.stoppedPredecessor.test.ts +166 -0
  392. package/src/__tests__/RunTemplateResolver.test.ts +132 -0
  393. package/src/__tests__/RunViewResolver.cacheCheckForwarding.test.ts +63 -0
  394. package/src/__tests__/RunViewResolver.cacheCheckScreen.test.ts +165 -0
  395. package/src/__tests__/SearchKnowledgeStreamResolver.test.ts +161 -0
  396. package/src/__tests__/SessionJanitor.test.ts +1203 -21
  397. package/src/__tests__/SessionManager.test.ts +240 -17
  398. package/src/__tests__/SessionRunIDVerifier.test.ts +251 -0
  399. package/src/__tests__/SyncRolesUsersResolver.userRoles.test.ts +97 -0
  400. package/src/__tests__/TaskGraphActionRunner.durablePayload.test.ts +25 -0
  401. package/src/__tests__/TaskGraphAgentRunner.test.ts +266 -0
  402. package/src/__tests__/TaskGraphContinuationDeliverer.test.ts +403 -22
  403. package/src/__tests__/TaskGraphFrameResolver.test.ts +22 -0
  404. package/src/__tests__/TestQuerySQLResolver.test.ts +274 -0
  405. package/src/__tests__/TransactionGroupResolver.refusals.test.ts +98 -1
  406. package/src/__tests__/UpdateMJDataContextItem.oldValues.test.ts +220 -0
  407. package/src/__tests__/UserAvatarResolver.test.ts +255 -0
  408. package/src/__tests__/UserResolver.currentUser.test.ts +16 -1
  409. package/src/__tests__/ViewOperationsHandler.clauseScreen.test.ts +157 -0
  410. package/src/__tests__/actionAuthorization.test.ts +130 -0
  411. package/src/__tests__/agent-run-data-guard.test.ts +130 -0
  412. package/src/__tests__/agentVisionConsentAudit.test.ts +118 -0
  413. package/src/__tests__/apiRootBoot.test.ts +202 -0
  414. package/src/__tests__/avatarInputValidation.test.ts +160 -0
  415. package/src/__tests__/cacheInvalidationRecordData.test.ts +64 -0
  416. package/src/__tests__/conversationRunEvents.test.ts +56 -14
  417. package/src/__tests__/globalCors.test.ts +217 -0
  418. package/src/__tests__/isolatedProviderTransactions.test.ts +169 -0
  419. package/src/__tests__/magicLinkService.consume.test.ts +6 -0
  420. package/src/__tests__/magicLinkService.provisionLog.test.ts +5 -0
  421. package/src/__tests__/multiTenancy.postgresRewrite.test.ts +181 -0
  422. package/src/__tests__/multiTenancy.security.test.ts +51 -0
  423. package/src/__tests__/multiTenancy.test.ts +1 -1
  424. package/src/__tests__/newUsers.template.test.ts +151 -0
  425. package/src/__tests__/newUsers.test.ts +74 -5
  426. package/src/__tests__/orphanedConversationDetailReconciler.test.ts +17 -2
  427. package/src/__tests__/ownedRealtimeSession.test.ts +39 -0
  428. package/src/__tests__/pushStatusResolver.filter.test.ts +7 -0
  429. package/src/__tests__/realtimeRecordingHandler.test.ts +652 -0
  430. package/src/__tests__/realtimeSessions/RealtimeSessionEventService.test.ts +201 -0
  431. package/src/__tests__/realtimeSessions/RealtimeSessionEventsResolver.test.ts +215 -0
  432. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationResolver.test.ts +102 -0
  433. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationService.test.ts +349 -0
  434. package/src/__tests__/realtimeSessions/RealtimeVerifyRouter.test.ts +131 -0
  435. package/src/__tests__/realtimeSessions/SlidingWindowRateLimiter.test.ts +56 -0
  436. package/src/__tests__/realtimeSessions/helpers.ts +4 -0
  437. package/src/__tests__/realtimeSessions/sessionAccess.test.ts +129 -0
  438. package/src/__tests__/realtimeSessions/sessionConfigStamps.test.ts +124 -0
  439. package/src/__tests__/realtimeSessions/verificationCore.test.ts +355 -0
  440. package/src/__tests__/realtimeSessions/verificationPages.test.ts +84 -0
  441. package/src/__tests__/realtimeSessions/verificationPolicy.test.ts +226 -0
  442. package/src/__tests__/realtimeSessions/verificationWorkflow.test.ts +633 -0
  443. package/src/__tests__/resolverBase.fls.test.ts +87 -4
  444. package/src/__tests__/serverExtensionHostOverlay.test.ts +66 -0
  445. package/src/__tests__/serverExtensionReservedRoots.test.ts +11 -96
  446. package/src/__tests__/sharedCache.test.ts +312 -0
  447. package/src/__tests__/widgetGuestElevation.test.ts +44 -0
  448. package/src/agentSessions/BridgeHostInstance.ts +32 -0
  449. package/src/agentSessions/HostInstance.ts +124 -28
  450. package/src/agentSessions/ReturningVisitorRecap.ts +7 -3
  451. package/src/agentSessions/SessionJanitor.ts +821 -59
  452. package/src/agentSessions/SessionManager.ts +138 -26
  453. package/src/agentSessions/SessionRunIDVerifier.ts +171 -0
  454. package/src/agentSessions/index.ts +10 -3
  455. package/src/apiRoot.ts +78 -0
  456. package/src/auth/AuthProviderCatalogRouter.ts +26 -0
  457. package/src/auth/LoginScreenEngine.ts +50 -0
  458. package/src/auth/actionAuthorization.ts +116 -0
  459. package/src/auth/index.ts +4 -8
  460. package/src/auth/magicLink/MagicLinkRouter.ts +3 -2
  461. package/src/auth/magicLink/MagicLinkService.ts +6 -3
  462. package/src/auth/newUsers.ts +99 -11
  463. package/src/config.ts +171 -5
  464. package/src/context.ts +15 -10
  465. package/src/coreRoutes.ts +166 -0
  466. package/src/generated/graphql-schemas/__mj.ts +1815 -57
  467. package/src/generic/CacheInvalidationResolver.ts +73 -18
  468. package/src/generic/OrphanedConversationDetailReconciler.ts +3 -3
  469. package/src/generic/PushStatusResolver.ts +1 -1
  470. package/src/generic/ResolverBase.ts +335 -326
  471. package/src/generic/RunViewResolver.ts +21 -0
  472. package/src/globalCors.ts +71 -0
  473. package/src/index.ts +231 -300
  474. package/src/isolatedProvider.ts +22 -0
  475. package/src/multiTenancy/index.ts +24 -2
  476. package/src/realtimeProxy/RealtimeProxyServer.ts +148 -16
  477. package/src/realtimeProxy/RealtimeRelayTunnel.ts +645 -0
  478. package/src/realtimeSessions/README.md +179 -0
  479. package/src/realtimeSessions/RealtimeSessionEventService.ts +274 -0
  480. package/src/realtimeSessions/RealtimeSessionVerificationService.ts +168 -0
  481. package/src/realtimeSessions/RealtimeVerifyRouter.ts +109 -0
  482. package/src/realtimeSessions/RecordingAssemblyScheduler.ts +234 -0
  483. package/src/realtimeSessions/SessionVerificationPortsBase.ts +189 -0
  484. package/src/realtimeSessions/SlidingWindowRateLimiter.ts +92 -0
  485. package/src/realtimeSessions/index.ts +18 -0
  486. package/src/realtimeSessions/ownedRealtimeSession.ts +55 -0
  487. package/src/realtimeSessions/sessionAccess.ts +145 -0
  488. package/src/realtimeSessions/sessionConfigStamps.ts +123 -0
  489. package/src/realtimeSessions/subscriptionAuthorization.ts +116 -0
  490. package/src/realtimeSessions/verificationCore.ts +502 -0
  491. package/src/realtimeSessions/verificationPages.ts +149 -0
  492. package/src/realtimeSessions/verificationPolicy.ts +321 -0
  493. package/src/realtimeSessions/verificationWorkflow.ts +702 -0
  494. package/src/realtimeWidget/widgetGuestElevation.ts +34 -2
  495. package/src/resolvers/ActionResolver.ts +84 -21
  496. package/src/resolvers/AdhocQueryResolver.ts +24 -6
  497. package/src/resolvers/ArtifactFileResolver.ts +9 -8
  498. package/src/resolvers/CacheStatsResolver.ts +89 -2
  499. package/src/resolvers/ClientToolRequestResolver.ts +25 -7
  500. package/src/resolvers/ConversationRunEventsResolver.ts +15 -11
  501. package/src/resolvers/DatasetResolver.ts +70 -10
  502. package/src/resolvers/EntityRecordNameResolver.ts +3 -2
  503. package/src/resolvers/FetchEntityVectorsResolver.ts +179 -2
  504. package/src/resolvers/FileResolver.ts +321 -106
  505. package/src/resolvers/GetDataContextDataResolver.ts +139 -41
  506. package/src/resolvers/GetDataResolver.ts +6 -3
  507. package/src/resolvers/HumanHandoffResolver.ts +8 -0
  508. package/src/resolvers/IntegrationDiscoveryResolver.ts +4 -2
  509. package/src/resolvers/MCPResolver.ts +8 -5
  510. package/src/resolvers/QueryResolver.ts +11 -0
  511. package/src/resolvers/RealtimeBridgeResolver.ts +163 -11
  512. package/src/resolvers/RealtimeClientSessionResolver.ts +511 -129
  513. package/src/resolvers/RealtimeSessionEventsResolver.ts +133 -0
  514. package/src/resolvers/RealtimeSessionVerificationResolver.ts +174 -0
  515. package/src/resolvers/RemoteBrowserActionResolver.ts +11 -1
  516. package/src/resolvers/RunAIAgentResolver.ts +116 -14
  517. package/src/resolvers/RunTemplateResolver.ts +13 -12
  518. package/src/resolvers/SearchKnowledgeStreamResolver.ts +19 -3
  519. package/src/resolvers/SqlLoggingConfigResolver.ts +2 -4
  520. package/src/resolvers/SyncDataResolver.ts +6 -2
  521. package/src/resolvers/SyncRolesUsersResolver.ts +24 -6
  522. package/src/resolvers/TaskGraphFrameResolver.ts +33 -1
  523. package/src/resolvers/TestQuerySQLResolver.ts +68 -13
  524. package/src/resolvers/TransactionGroupResolver.ts +131 -27
  525. package/src/resolvers/UserAvatarResolver.ts +111 -0
  526. package/src/resolvers/UserResolver.ts +2 -16
  527. package/src/resolvers/__tests__/GetDataResolver.validation.test.ts +95 -0
  528. package/src/resolvers/agent-run-data-guard.ts +89 -0
  529. package/src/resolvers/agentVisionConsentAudit.ts +82 -0
  530. package/src/resolvers/avatarInputValidation.ts +123 -0
  531. package/src/resolvers/currentUserRoles.ts +32 -1
  532. package/src/resolvers/meetings/meetingMutations.ts +21 -0
  533. package/src/rest/RealtimeRecordingHandler.ts +464 -0
  534. package/src/rest/ViewOperationsHandler.ts +29 -13
  535. package/src/rest/setupRESTEndpoints.ts +6 -0
  536. package/src/serverExtensionReservedRoots.ts +14 -17
  537. package/src/services/MJStorageBlobStore.ts +31 -30
  538. package/src/services/StartTaskGraphDispatcher.ts +2 -2
  539. package/src/services/TaskGraphActionRunner.ts +25 -5
  540. package/src/services/TaskGraphAgentRunner.ts +188 -11
  541. package/src/services/TaskGraphContinuationDeliverer.ts +713 -17
  542. package/src/sharedCache.ts +305 -0
  543. package/src/types.ts +7 -0
@@ -13,8 +13,10 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
13
13
  import { Arg, Ctx, Field, InputType, Int, ObjectType, Query, Resolver } from 'type-graphql';
14
14
  import { GraphQLJSONObject } from 'graphql-type-json';
15
15
  import { RunQuery, LogError, LogStatus } from '@memberjunction/core';
16
+ import { RenderPipeline } from '@memberjunction/generic-database-provider';
16
17
  import { GetReadOnlyProvider } from '../util.js';
17
18
  import { ResolverBase } from '../generic/ResolverBase.js';
19
+ import { IsScopeLimitedPrincipal } from '../auth/scopeLimitedPrincipal.js';
18
20
  /**
19
21
  * GraphQL input type for inline dependency queries.
20
22
  * Self-referencing to support recursive dependency trees.
@@ -125,6 +127,14 @@ export { TestQuerySQLResult };
125
127
  *
126
128
  * Security:
127
129
  * - Requires `query:test` scope for API key users (no-op for JWT auth)
130
+ * - Refuses scope-limited principals (see {@link IsScopeLimitedPrincipal}). Raw SQL bypasses
131
+ * RunView, entity permissions and row-level security, so the RLS scope tokens that confine a
132
+ * magic-link session are never applied on this path — there is no narrower filter to fall back
133
+ * to, only refusal.
134
+ * - Authorizes the RENDERED SQL: every table reference must be an entity base view the caller
135
+ * reads unscoped (CanRead, no row-level filter, no denied fields). Entities with row/field
136
+ * policy for this user are refused — raw SQL cannot apply that policy, so those reads belong
137
+ * on RunView. Same screen as {@link AdhocQueryResolver.ExecuteAdhocQuery}.
128
138
  * - Uses read-only database connection (no mutation possible)
129
139
  * - Enforces MaxRows limit (default 100) to prevent unbounded queries
130
140
  *
@@ -134,15 +144,23 @@ let TestQuerySQLResolver = class TestQuerySQLResolver extends ResolverBase {
134
144
  async TestQuerySQL(input, context) {
135
145
  try {
136
146
  await this.CheckAPIKeyScopeAuthorization('query:test', '*', context.userPayload);
147
+ // SECURITY: refuse principals whose read authority is narrower than their role grant.
148
+ // Transient test SQL does not go through RunView, entity permissions or row-level
149
+ // security, so the RLS scope tokens that confine a magic-link session are never
150
+ // substituted. There is no filter to narrow, so the only correct answer for such a
151
+ // principal is no — the same refusal ExecuteAdhocQuery applies.
152
+ if (IsScopeLimitedPrincipal(context.userPayload?.userRecord)) {
153
+ return this.buildErrorResult('Ad-hoc SQL execution is not permitted for scope-limited sessions.');
154
+ }
137
155
  // Use read-only provider for security — no mutation possible
138
156
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: false });
139
157
  if (!provider) {
140
- return {
141
- Success: false,
142
- RowCount: 0,
143
- ExecutionTime: 0,
144
- ErrorMessage: 'Read-only data source is not available. TestQuerySQL requires a read-only connection for security.',
145
- };
158
+ return this.buildErrorResult('Read-only data source is not available. TestQuerySQL requires a read-only connection for security.');
159
+ }
160
+ const contextUser = context.userPayload?.userRecord;
161
+ const refusal = this.AuthorizeRenderedTestSQL(input, provider, contextUser);
162
+ if (refusal) {
163
+ return this.buildErrorResult(refusal);
146
164
  }
147
165
  const rq = new RunQuery(provider);
148
166
  const spec = {
@@ -153,7 +171,7 @@ let TestQuerySQLResolver = class TestQuerySQLResolver extends ResolverBase {
153
171
  MaxRows: input.MaxRows ?? 100,
154
172
  };
155
173
  LogStatus(`TestQuerySQL: Executing transient query (MaxRows=${spec.MaxRows}, UsesTemplate=${spec.UsesTemplate ?? false}, Dependencies=${spec.Dependencies?.length ?? 0})`);
156
- const result = await rq.ExecuteFromSpec(spec, context.userPayload.userRecord);
174
+ const result = await rq.ExecuteFromSpec(spec, contextUser);
157
175
  return {
158
176
  Success: result.Success,
159
177
  Results: result.Results ? JSON.stringify(result.Results) : undefined,
@@ -167,14 +185,48 @@ let TestQuerySQLResolver = class TestQuerySQLResolver extends ResolverBase {
167
185
  catch (err) {
168
186
  LogError(err);
169
187
  const errorMessage = err instanceof Error ? err.message : String(err);
170
- return {
171
- Success: false,
172
- RowCount: 0,
173
- ExecutionTime: 0,
174
- ErrorMessage: `TestQuerySQL failed: ${errorMessage}`,
175
- };
188
+ return this.buildErrorResult(`TestQuerySQL failed: ${errorMessage}`);
176
189
  }
177
190
  }
191
+ /**
192
+ * SECURITY: authorizes the READ itself, against the SQL that will actually run — the same
193
+ * screen `AdhocQueryResolver.AuthorizeRenderedSQL` applies to ad-hoc SQL. Rendering comes
194
+ * first because composition (`{{query:"..."}}`), inline dependencies and Nunjucks templates
195
+ * can introduce table references the raw input never named, so the render here uses the same
196
+ * Parameters / UsesTemplate / Dependencies the execution spec will. Every table reference in
197
+ * the rendered SQL must be an entity base view the caller can read UNSCOPED — CanRead with no
198
+ * row-level filter and no denied fields — because raw SQL applies neither (see
199
+ * `assertFullQueryUsesReadableEntityViews`). The provider renders the same input the same way
200
+ * and only wraps it in server-built MaxRows capping, so the rendered SQL is the full set of
201
+ * reads. Returns the refusal message, or null.
202
+ */
203
+ AuthorizeRenderedTestSQL(input, provider, contextUser) {
204
+ try {
205
+ const rendered = RenderPipeline.Run(input.SQL, {
206
+ Platform: provider.PlatformKey,
207
+ ContextUser: contextUser,
208
+ Parameters: input.Parameters,
209
+ UsesTemplate: input.UsesTemplate,
210
+ Dependencies: input.Dependencies,
211
+ OriginalSQL: input.SQL,
212
+ RequireReadStatement: true,
213
+ });
214
+ this.assertFullQueryUsesReadableEntityViews(rendered.Trace.AfterTemplates, provider, contextUser, 'transient test SQL');
215
+ return null;
216
+ }
217
+ catch (err) {
218
+ return err instanceof Error ? err.message : String(err);
219
+ }
220
+ }
221
+ /** Builds a failed TestQuerySQLResult carrying the given message. */
222
+ buildErrorResult(errorMessage) {
223
+ return {
224
+ Success: false,
225
+ RowCount: 0,
226
+ ExecutionTime: 0,
227
+ ErrorMessage: errorMessage,
228
+ };
229
+ }
178
230
  };
179
231
  __decorate([
180
232
  Query(() => TestQuerySQLResult, {
@@ -1 +1 @@
1
- {"version":3,"file":"TestQuerySQLResolver.js","sourceRoot":"","sources":["../../src/resolvers/TestQuerySQLResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TestQuerySQLResolver.js","sourceRoot":"","sources":["../../src/resolvers/TestQuerySQLResolver.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { AppContext } from '../types.js';
2
- import { BaseEntity } from '@memberjunction/core';
2
+ import { TransactionGroupBase, BaseEntity } from '@memberjunction/core';
3
3
  import { ResolverBase } from '../generic/ResolverBase.js';
4
4
  export declare enum TransactionVariableType {
5
5
  Define = "Define",
@@ -38,6 +38,23 @@ export declare class TransactionResolver extends ResolverBase {
38
38
  */
39
39
  protected GetScopePathForOperation(operationType: TransactionOperationType): string;
40
40
  ExecuteTransactionGroup(group: TransactionInputType, context: AppContext): Promise<TransactionOutputType>;
41
- protected PrepareReturnValue(success: boolean, entityObjects: BaseEntity[], objectValues: any[], group: TransactionInputType): Promise<TransactionOutputType>;
41
+ /**
42
+ * Adds the network payload's variables to the group, mapping each one's item index to the entity
43
+ * object built for that item.
44
+ */
45
+ protected AddNetworkVariables(group: TransactionInputType, entityObjects: BaseEntity[], tg: TransactionGroupBase): void;
46
+ protected PrepareReturnValue(success: boolean, entityObjects: BaseEntity[], objectValues: unknown[], group: TransactionInputType, preUpdateValues?: Map<number, Record<string, unknown>>): Promise<TransactionOutputType>;
47
+ /**
48
+ * Serializes a delta return payload for an `Update` transaction group item containing:
49
+ * - Primary key fields
50
+ * - All keys sent by the client in `sentValues` (`objectValues[i]`)
51
+ * - Any `TransactionVariable` fields targeting this item
52
+ * - `__mj_CreatedAt` and `__mj_UpdatedAt`
53
+ * - Virtual fields when any foreign key field was in `sentValues`
54
+ * - Any field whose post-save value differs from its pre-update DB snapshot (`preSaveValues`),
55
+ * capturing virtual fields, triggers, or server-side `BeforeSave()` mutations automatically
56
+ * while omitting unchanged columns.
57
+ */
58
+ private serializeUpdateReturnValue;
42
59
  }
43
60
  //# sourceMappingURL=TransactionGroupResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionGroupResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAA0F,UAAU,EAA0C,MAAM,sBAAsB,CAAC;AAGlL,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,oBAAY,uBAAuB;IAC/B,MAAM,WAAW;IACjB,GAAG,QAAQ;CACd;AAOD,oBAAY,wBAAwB;IAChC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;CACpB;AAQD,qBACa,4BAA4B;IAErC,IAAI,EAAG,MAAM,CAAC;IAGd,SAAS,EAAG,MAAM,CAAC;IAGnB,SAAS,EAAG,MAAM,CAAC;IAGnB,IAAI,EAAG,uBAAuB,CAAC;CAClC;AAED,qBACa,wBAAwB;IAEjC,UAAU,EAAE,MAAM,CAAC;IAGnB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,aAAa,EAAE,wBAAwB,CAAC;CAC3C;AAED,qBACa,oBAAoB;IAE7B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAGlC,SAAS,CAAC,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC;CACrD;AAGD,qBACa,qBAAqB;IAE9B,OAAO,EAAE,OAAO,CAAC;IAGjB,aAAa,EAAE,MAAM,EAAE,CAAC;IAGxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACzB;AAiBD,qBAAa,mBAAoB,SAAQ,YAAY;IACjD;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,CAAC,aAAa,EAAE,wBAAwB,GAAG,MAAM;IAY7E,uBAAuB,CACc,KAAK,EAAE,oBAAoB,EAC/D,OAAO,EAAE,UAAU;cAmIV,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAoBtK"}
1
+ {"version":3,"file":"TransactionGroupResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAsG,oBAAoB,EAAE,UAAU,EAA0C,MAAM,sBAAsB,CAAC;AAGpN,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,oBAAY,uBAAuB;IAC/B,MAAM,WAAW;IACjB,GAAG,QAAQ;CACd;AAOD,oBAAY,wBAAwB;IAChC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;CACpB;AAQD,qBACa,4BAA4B;IAErC,IAAI,EAAG,MAAM,CAAC;IAGd,SAAS,EAAG,MAAM,CAAC;IAGnB,SAAS,EAAG,MAAM,CAAC;IAGnB,IAAI,EAAG,uBAAuB,CAAC;CAClC;AAED,qBACa,wBAAwB;IAEjC,UAAU,EAAE,MAAM,CAAC;IAGnB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,aAAa,EAAE,wBAAwB,CAAC;CAC3C;AAED,qBACa,oBAAoB;IAE7B,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAGlC,SAAS,CAAC,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAC;CACrD;AAGD,qBACa,qBAAqB;IAE9B,OAAO,EAAE,OAAO,CAAC;IAGjB,aAAa,EAAE,MAAM,EAAE,CAAC;IAGxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACzB;AAiBD,qBAAa,mBAAoB,SAAQ,YAAY;IACjD;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,CAAC,aAAa,EAAE,wBAAwB,GAAG,MAAM;IAY7E,uBAAuB,CACc,KAAK,EAAE,oBAAoB,EAC/D,OAAO,EAAE,UAAU;IAiI1B;;;OAGG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,oBAAoB,GAAG,IAAI;cAYvG,kBAAkB,CAC9B,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,UAAU,EAAE,EAC3B,YAAY,EAAE,OAAO,EAAE,EACvB,KAAK,EAAE,oBAAoB,EAC3B,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACvD,OAAO,CAAC,qBAAqB,CAAC;IA+BjC;;;;;;;;;;OAUG;YACW,0BAA0B;CA8D3C"}
@@ -11,8 +11,8 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
13
  import { Arg, Ctx, Field, InputType, Int, Mutation, ObjectType, registerEnumType } from 'type-graphql';
14
- import { CompositeKey, KeyValuePair, LogError, Metadata, TransactionVariable } from '@memberjunction/core';
15
- import { SafeJSONParse } from '@memberjunction/global';
14
+ import { CompositeKey, EntityInfo, KeyValuePair, LogError, Metadata, TransactionVariable } from '@memberjunction/core';
15
+ import { SafeJSONParse, ValuesEqual } from '@memberjunction/global';
16
16
  import { GetReadWriteProvider } from '../util.js';
17
17
  import { ResolverBase } from '../generic/ResolverBase.js';
18
18
  export var TransactionVariableType;
@@ -159,10 +159,17 @@ export class TransactionResolver extends ResolverBase {
159
159
  // rows were all refused arrive at Submit() empty, take its legitimate "nothing to do"
160
160
  // branch, and report success for writes that never happened.
161
161
  const refusals = [];
162
+ const preUpdateValues = new Map();
163
+ // instantiate an entity object for every item first, so the group's variables are known
164
+ // BEFORE any Save()/Delete() runs below: a 'Use' variable sets its field at Submit(), after
165
+ // every server-side write check has passed, so an entity whose check depends on a field's
166
+ // final value must be able to see that a variable will set it.
167
+ for (const item of group.Items) {
168
+ entityObjects.push(await md.GetEntityObject(item.EntityName, context.userPayload.userRecord));
169
+ }
170
+ this.AddNetworkVariables(group, entityObjects, tg);
162
171
  for (const [index, item] of group.Items.entries()) {
163
- // instantiate a new entity object for the item
164
- const entity = await md.GetEntityObject(item.EntityName, context.userPayload.userRecord);
165
- entityObjects.push(entity); // save for later for mapping variables if needed
172
+ const entity = entityObjects[index];
166
173
  // get the values from the payload
167
174
  const itemValues = SafeJSONParse(item.EntityObjectJSON);
168
175
  // build a primary key for the item
@@ -177,6 +184,12 @@ export class TransactionResolver extends ResolverBase {
177
184
  case "Create":
178
185
  if (item.OperationType === "Update") {
179
186
  await entity.InnerLoad(pkey);
187
+ if (typeof entity.GetDataObject === 'function') {
188
+ preUpdateValues.set(index, await entity.GetDataObject());
189
+ }
190
+ else if (typeof entity.GetAll === 'function') {
191
+ preUpdateValues.set(index, { ...entity.GetAll() });
192
+ }
180
193
  }
181
194
  objectValues.push(itemValues);
182
195
  entity.SetMany(itemValues, true);
@@ -220,30 +233,16 @@ export class TransactionResolver extends ResolverBase {
220
233
  if (refusals.length > 0) {
221
234
  LogError(`TransactionResolver::ExecuteTransactionGroup --- ${refusals.length} of ${group.Items.length} ` +
222
235
  `item(s) were refused, so the group was not submitted:\n${refusals.join('\n')}`);
223
- return await this.PrepareReturnValue(false, entityObjects, objectValues, group);
224
- }
225
- // now, we need to set the variables
226
- if (group.Variables && group.Variables.length > 0) {
227
- for (const networkVar of group.Variables) {
228
- // for each variable, add it to the transaction group and map the index from the network payload to the specific entity object loaded up above
229
- if (networkVar.ItemIndex >= 0 && networkVar.ItemIndex < entityObjects.length) {
230
- const entityObject = entityObjects[networkVar.ItemIndex];
231
- const newVar = new TransactionVariable(networkVar.Name, entityObject, networkVar.FieldName, networkVar.Type);
232
- tg.AddVariable(newVar);
233
- }
234
- else {
235
- throw new Error(`TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + 'Invalid ItemIndex ${networkVar.ItemIndex} in TransactionVariable "${JSON.stringify(networkVar)}"`);
236
- }
237
- }
236
+ return await this.PrepareReturnValue(false, entityObjects, objectValues, group, preUpdateValues);
238
237
  }
239
238
  // after all that, we are ready to roll, so let's run the TG
240
239
  if (await tg.Submit()) {
241
240
  // success!
242
- return await this.PrepareReturnValue(true, entityObjects, objectValues, group);
241
+ return await this.PrepareReturnValue(true, entityObjects, objectValues, group, preUpdateValues);
243
242
  }
244
243
  else {
245
244
  // failure, send back the results
246
- return await this.PrepareReturnValue(false, entityObjects, objectValues, group);
245
+ return await this.PrepareReturnValue(false, entityObjects, objectValues, group, preUpdateValues);
247
246
  }
248
247
  }
249
248
  catch (err) {
@@ -251,15 +250,33 @@ export class TransactionResolver extends ResolverBase {
251
250
  throw new Error('TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + err);
252
251
  }
253
252
  }
254
- async PrepareReturnValue(success, entityObjects, objectValues, group) {
253
+ /**
254
+ * Adds the network payload's variables to the group, mapping each one's item index to the entity
255
+ * object built for that item.
256
+ */
257
+ AddNetworkVariables(group, entityObjects, tg) {
258
+ for (const networkVar of group.Variables ?? []) {
259
+ if (networkVar.ItemIndex >= 0 && networkVar.ItemIndex < entityObjects.length) {
260
+ const entityObject = entityObjects[networkVar.ItemIndex];
261
+ tg.AddVariable(new TransactionVariable(networkVar.Name, entityObject, networkVar.FieldName, networkVar.Type));
262
+ }
263
+ else {
264
+ throw new Error(`TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + 'Invalid ItemIndex ${networkVar.ItemIndex} in TransactionVariable "${JSON.stringify(networkVar)}"`);
265
+ }
266
+ }
267
+ }
268
+ async PrepareReturnValue(success, entityObjects, objectValues, group, preUpdateValues) {
255
269
  const jsonResults = [];
256
270
  for (let i = 0; i < group.Items.length; i++) {
257
271
  const item = group.Items[i];
258
272
  if (item.OperationType === 'Delete') {
259
273
  jsonResults.push(JSON.stringify(objectValues[i]));
260
274
  }
275
+ else if (item.OperationType === 'Update') {
276
+ jsonResults.push(await this.serializeUpdateReturnValue(entityObjects[i], objectValues[i], preUpdateValues?.get(i), group, i));
277
+ }
261
278
  else {
262
- // create or update, return what is in the database
279
+ // create, return what is in the database
263
280
  jsonResults.push(await entityObjects[i].GetDataObjectJSON());
264
281
  }
265
282
  }
@@ -269,6 +286,67 @@ export class TransactionResolver extends ResolverBase {
269
286
  ResultsJSON: jsonResults
270
287
  };
271
288
  }
289
+ /**
290
+ * Serializes a delta return payload for an `Update` transaction group item containing:
291
+ * - Primary key fields
292
+ * - All keys sent by the client in `sentValues` (`objectValues[i]`)
293
+ * - Any `TransactionVariable` fields targeting this item
294
+ * - `__mj_CreatedAt` and `__mj_UpdatedAt`
295
+ * - Virtual fields when any foreign key field was in `sentValues`
296
+ * - Any field whose post-save value differs from its pre-update DB snapshot (`preSaveValues`),
297
+ * capturing virtual fields, triggers, or server-side `BeforeSave()` mutations automatically
298
+ * while omitting unchanged columns.
299
+ */
300
+ async serializeUpdateReturnValue(entity, sentValues, preSaveValues, group, itemIndex) {
301
+ const fullDataObj = typeof entity.GetDataObject === 'function'
302
+ ? await entity.GetDataObject()
303
+ : SafeJSONParse(await entity.GetDataObjectJSON());
304
+ if (!fullDataObj || typeof fullDataObj !== 'object' || !sentValues || typeof sentValues !== 'object') {
305
+ return await entity.GetDataObjectJSON();
306
+ }
307
+ const sentRecord = sentValues;
308
+ const includeKeys = new Set([
309
+ EntityInfo.CreatedAtFieldName,
310
+ EntityInfo.UpdatedAtFieldName,
311
+ ]);
312
+ for (const pk of entity.PrimaryKeys ?? []) {
313
+ if (pk?.Name) {
314
+ includeKeys.add(pk.Name);
315
+ }
316
+ }
317
+ for (const key of Object.keys(sentRecord)) {
318
+ includeKeys.add(key);
319
+ }
320
+ for (const v of group.Variables ?? []) {
321
+ if (v.ItemIndex === itemIndex && v.FieldName) {
322
+ includeKeys.add(v.FieldName);
323
+ }
324
+ }
325
+ if (Array.isArray(entity.Fields)) {
326
+ for (const f of entity.Fields) {
327
+ if (f.EntityFieldInfo?.IsSpecialDateField ||
328
+ Boolean(f.EntityFieldInfo?.IsVirtual) ||
329
+ Boolean(f.EntityFieldInfo?.IsComputed) ||
330
+ f.ReadOnly) {
331
+ includeKeys.add(f.Name);
332
+ }
333
+ }
334
+ }
335
+ if (preSaveValues) {
336
+ for (const key of Object.keys(fullDataObj)) {
337
+ if (!ValuesEqual(fullDataObj[key], preSaveValues[key])) {
338
+ includeKeys.add(key);
339
+ }
340
+ }
341
+ }
342
+ const deltaObj = {};
343
+ for (const key of Object.keys(fullDataObj)) {
344
+ if (includeKeys.has(key)) {
345
+ deltaObj[key] = fullDataObj[key];
346
+ }
347
+ }
348
+ return JSON.stringify(deltaObj);
349
+ }
272
350
  }
273
351
  __decorate([
274
352
  Mutation(() => TransactionOutputType),
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionGroupResolver.js","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionGroupResolver.js","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEvG,OAAO,EAAE,YAAY,EAAE,UAAU,EAAqB,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAA4E,MAAM,sBAAsB,CAAC;AACpN,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,MAAM,CAAN,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IAC/B,4CAAiB,CAAA;IACjB,sCAAW,CAAA;AACf,CAAC,EAHW,uBAAuB,KAAvB,uBAAuB,QAGlC;AAED,gBAAgB,CAAC,uBAAuB,EAAE;IACtC,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE,+CAA+C;CAC/D,CAAC,CAAC;AAEH,MAAM,CAAN,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAChC,6CAAiB,CAAA;IACjB,6CAAiB,CAAA;IACjB,6CAAiB,CAAA;AACrB,CAAC,EAJW,wBAAwB,KAAxB,wBAAwB,QAInC;AAED,gBAAgB,CAAC,wBAAwB,EAAE;IACvC,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,4DAA4D;CAC5E,CAAC,CAAC;AAII,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;CAYxC,CAAA;AAVG;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;0DACN;AAGd;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;;+DACE;AAGnB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;+DACD;AAGnB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;;0DACN;AAXtB,4BAA4B;IADxC,SAAS,EAAE;GACC,4BAA4B,CAYxC;;AAGM,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;CASpC,CAAA;AAPG;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;4DACD;AAGnB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;kEACK;AAGzB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC;;+DACE;AAR/B,wBAAwB;IADpC,SAAS,EAAE;GACC,wBAAwB,CASpC;;AAGM,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAMhC,CAAA;AAJG;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,wBAAwB,CAAC,CAAC;;mDACN;AAGlC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,4BAA4B,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;;uDACZ;AALzC,oBAAoB;IADhC,SAAS,EAAE;GACC,oBAAoB,CAMhC;;AAIM,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CASjC,CAAA;AAPG;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;;sDACJ;AAGjB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;;4DACE;AAGxB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;;0DACA;AARb,qBAAqB;IADjC,UAAU,EAAE;GACA,qBAAqB,CASjC;;AAID;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,KAAa,EAAE,IAA8B,EAAE,MAAkB;IAC1F,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IAC5D,OAAO,MAAM,KAAK,KAAK,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,MAAM,MAAM,IAAI,mCAAmC,EAAE,CAAC;AACvH,CAAC;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACjD;;;;OAIG;IACO,wBAAwB,CAAC,aAAuC;QACtE,QAAQ,aAAa,EAAE,CAAC;YACpB,KAAK,wBAAwB,CAAC,MAAM;gBAChC,OAAO,eAAe,CAAC;YAC3B,KAAK,wBAAwB,CAAC,MAAM;gBAChC,OAAO,eAAe,CAAC;YAC3B,KAAK,wBAAwB,CAAC,MAAM;gBAChC,OAAO,eAAe,CAAC;QAC/B,CAAC;IACL,CAAC;IAGK,AAAN,KAAK,CAAC,uBAAuB,CACc,KAA2B,EAC/D,OAAmB;QAEtB,2FAA2F;QAC3F,sFAAsF;QACtF,wFAAwF;QACxF,0FAA0F;QAC1F,yFAAyF;QACzF,yFAAyF;QACzF,sFAAsF;QACtF,mFAAmF;QACnF,yDAAyD;QACzD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,6BAA6B,CACpC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,EACjD,IAAI,CAAC,UAAU,EACf,OAAO,CAAC,WAAW,CACtB,CAAC;QACN,CAAC;QAED,IAAI,CAAC;YACD,wIAAwI;YACxI,MAAM,EAAE,GAAI,oBAAoB,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAkC,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC1I,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,sBAAsB,EAAE,CAAC;YAC7C,MAAM,aAAa,GAAiB,EAAE,CAAC;YACvC,MAAM,YAAY,GAAU,EAAE,CAAC;YAC/B,2FAA2F;YAC3F,4FAA4F;YAC5F,4FAA4F;YAC5F,sFAAsF;YACtF,6DAA6D;YAC7D,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,MAAM,eAAe,GAAG,IAAI,GAAG,EAAmC,CAAC;YAEnE,wFAAwF;YACxF,4FAA4F;YAC5F,0FAA0F;YAC1F,+DAA+D;YAC/D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC7B,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;YAClG,CAAC;YACD,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YAEnD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;gBAEpC,kCAAkC;gBAClC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACxD,mCAAmC;gBACnC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBACtD,MAAM,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC;oBAC9B,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC;oBACvB,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAC/B,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC,CAAC,CAAC;gBACJ,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;oBACzB,KAAK,QAAQ,CAAC;oBACd,KAAK,QAAQ;wBACT,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;4BAClC,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;4BAC7B,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gCAC7C,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;4BAC7D,CAAC;iCAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gCAC7C,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,GAAI,MAAM,CAAC,MAAM,EAA8B,EAAE,CAAC,CAAC;4BACpF,CAAC;wBACL,CAAC;wBACD,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC9B,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;wBACjC,MAAM,CAAC,gBAAgB,GAAG,EAAE,CAAC;wBAC7B,IAAI,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;4BACvB,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;wBAC5D,CAAC;wBACD,MAAM;oBACV,KAAK,QAAQ;wBACT,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;wBAC7B,4EAA4E;wBAC5E,mEAAmE;wBACnE,yEAAyE;wBACzE,yEAAyE;wBACzE,4EAA4E;wBAC5E,6EAA6E;wBAC7E,iDAAiD;wBACjD,4EAA4E;wBAC5E,wEAAwE;wBACxE,0DAA0D;wBAC1D,4EAA4E;wBAC5E,+DAA+D;wBAC/D,YAAY,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;wBAChD,MAAM,CAAC,gBAAgB,GAAG,EAAE,CAAC;wBAC7B,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;4BACzB,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;wBAC5D,CAAC;wBACD,MAAM;gBACd,CAAC;YACL,CAAC;YAED,sFAAsF;YACtF,uFAAuF;YACvF,gFAAgF;YAChF,6DAA6D;YAC7D,EAAE;YACF,sFAAsF;YACtF,kFAAkF;YAClF,sFAAsF;YACtF,wFAAwF;YACxF,wDAAwD;YACxD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,QAAQ,CACJ,oDAAoD,QAAQ,CAAC,MAAM,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG;oBAC/F,0DAA0D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClF,CAAC;gBACF,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YACrG,CAAC;YAED,4DAA4D;YAC5D,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;gBACpB,WAAW;gBACX,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YACpG,CAAC;iBACI,CAAC;gBACF,iCAAiC;gBACjC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YACrG,CAAC;QACL,CAAC;QACD,OAAO,GAAG,EAAE,CAAC;YACT,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,4DAA4D,GAAG,GAAG,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;IAED;;;OAGG;IACO,mBAAmB,CAAC,KAA2B,EAAE,aAA2B,EAAE,EAAwB;QAC5G,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,SAAS,IAAI,CAAC,IAAI,UAAU,CAAC,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC3E,MAAM,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACzD,EAAE,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAClH,CAAC;iBACI,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,oFAAoF,UAAU,CAAC,SAAS,4BAA4B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACvL,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,kBAAkB,CAC9B,OAAgB,EAChB,aAA2B,EAC3B,YAAuB,EACvB,KAA2B,EAC3B,eAAsD;QAEtD,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;gBAClC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,CAAC;iBACI,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;gBACvC,WAAW,CAAC,IAAI,CACZ,MAAM,IAAI,CAAC,0BAA0B,CACjC,aAAa,CAAC,CAAC,CAAC,EAChB,YAAY,CAAC,CAAC,CAAC,EACf,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC,EACvB,KAAK,EACL,CAAC,CACJ,CACJ,CAAC;YACN,CAAC;iBACI,CAAC;gBACF,yCAAyC;gBACzC,WAAW,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;QAED,OAAO;YACH,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YACrE,WAAW,EAAE,WAAW;SAC3B,CAAA;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,0BAA0B,CACpC,MAAkB,EAClB,UAAmB,EACnB,aAAkD,EAClD,KAA2B,EAC3B,SAAiB;QAEjB,MAAM,WAAW,GAAmC,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU;YAC1F,CAAC,CAAE,MAAM,MAAM,CAAC,aAAa,EAA8B;YAC3D,CAAC,CAAC,aAAa,CAA0B,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnG,OAAO,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,UAAU,GAAG,UAAqC,CAAC;QACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS;YAChC,UAAU,CAAC,kBAAkB;YAC7B,UAAU,CAAC,kBAAkB;SAChC,CAAC,CAAC;QAEH,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YACxC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;gBACX,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;gBAC3C,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC5B,IACI,CAAC,CAAC,eAAe,EAAE,kBAAkB;oBACrC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,SAAS,CAAC;oBACrC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,UAAU,CAAC;oBACtC,CAAC,CAAC,QAAQ,EACZ,CAAC;oBACC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAChB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACrD,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;CAEJ;AAjQS;IADL,QAAQ,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC;IAErC,WAAA,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAE,CAAA;IACzC,WAAA,GAAG,EAAE,CAAA;;qCAD4C,oBAAoB;;kEAgIrE"}
@@ -0,0 +1,16 @@
1
+ import { AppContext } from '../types.js';
2
+ import { ResolverBase } from '../generic/ResolverBase.js';
3
+ export declare class UpdateMyAvatarResult {
4
+ Success: boolean;
5
+ ErrorMessage?: string;
6
+ }
7
+ export declare class UserAvatarResolver extends ResolverBase {
8
+ /**
9
+ * Sets the CALLER's avatar. Null or empty clears a column; both null reverts to the default.
10
+ * Validation failures and save failures are returned as `Success: false` with a message.
11
+ */
12
+ UpdateMyAvatar(ctx: AppContext, imageURL?: string | null, iconClass?: string | null): Promise<UpdateMyAvatarResult>;
13
+ /** Loads the caller's own row as the system user and writes ONLY the two avatar columns. */
14
+ private saveAvatar;
15
+ }
16
+ //# sourceMappingURL=UserAvatarResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserAvatarResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserAvatarResolver.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D,qBACa,oBAAoB;IAE/B,OAAO,EAAE,OAAO,CAAC;IAGjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBACa,kBAAmB,SAAQ,YAAY;IAClD;;;OAGG;IAEG,cAAc,CACX,GAAG,EAAE,UAAU,EAC6B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAC5E,OAAO,CAAC,oBAAoB,CAAC;IAuBhC,4FAA4F;YAC9E,UAAU;CAyBzB"}
@@ -0,0 +1,124 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ /**
14
+ * @fileoverview Self-service avatar mutation: `UpdateMyAvatar(ImageURL, IconClass)`.
15
+ *
16
+ * WHY THIS EXISTS. Explorer's My Profile photo used to be a plain entity save of the caller's own
17
+ * `MJ: Users` row, which needs Update permission on `MJ: Users`. A deployment that locks its
18
+ * security model down cannot give ordinary users that permission: a row-level "own row only"
19
+ * filter restricts ROWS, not COLUMNS, so a user who may update their own row may also rewrite
20
+ * their own `Email` — and many read filters key on `{{UserEmail}}`, so the new value would match
21
+ * another person's memberships. MJ has no per-role field permissions (`MJUserEntityServer` in
22
+ * core-entities-server documents the same limit for `Type`). On such deployments every avatar save
23
+ * failed, and the login avatar sync failed silently.
24
+ *
25
+ * WHAT IT DOES. The caller comes ONLY from the request context — there is no user-ID argument. The
26
+ * input is validated at this trust boundary (`ValidateAvatarInput`). The caller's own row is then
27
+ * loaded AS THE SYSTEM USER, any state other than the two avatar columns is discarded, and only
28
+ * `UserImageURL` and `UserImageIconClass` are set before saving. Because the write is made as the
29
+ * system user, the caller's ID is logged. It works the same whether or not the caller holds Update
30
+ * on `MJ: Users`.
31
+ *
32
+ * Scope-limited sessions are refused (`IsScopeLimitedPrincipal`). An anonymous magic-link guest IS
33
+ * the shared Anonymous principal, so "their own row" belongs to every guest, and a system-user save
34
+ * goes around the entity permissions and RLS that confine any magic-link session.
35
+ *
36
+ * `MJUserEntityServer` accepts this save: the system user is the seeded `Type='Owner'` user, which
37
+ * is exempt from its invariants, and the save changes neither `Type` nor `Name` in any case.
38
+ *
39
+ * @module @memberjunction/server/resolvers/UserAvatarResolver
40
+ */
41
+ import { Arg, Ctx, Field, Mutation, ObjectType, Resolver } from 'type-graphql';
42
+ import { LogError, LogStatus } from '@memberjunction/core';
43
+ import { GetReadWriteProvider } from '../util.js';
44
+ import { GetSystemUser } from '../auth/index.js';
45
+ import { IsScopeLimitedPrincipal } from '../auth/scopeLimitedPrincipal.js';
46
+ import { ResolverBase } from '../generic/ResolverBase.js';
47
+ import { ValidateAvatarInput } from './avatarInputValidation.js';
48
+ /** What the browser sees when the save fails. The server's detail goes to the log only. */
49
+ const SAVE_FAILED_MESSAGE = 'Could not save your avatar. Please try again or contact your administrator.';
50
+ let UpdateMyAvatarResult = class UpdateMyAvatarResult {
51
+ };
52
+ __decorate([
53
+ Field(),
54
+ __metadata("design:type", Boolean)
55
+ ], UpdateMyAvatarResult.prototype, "Success", void 0);
56
+ __decorate([
57
+ Field({ nullable: true }),
58
+ __metadata("design:type", String)
59
+ ], UpdateMyAvatarResult.prototype, "ErrorMessage", void 0);
60
+ UpdateMyAvatarResult = __decorate([
61
+ ObjectType()
62
+ ], UpdateMyAvatarResult);
63
+ export { UpdateMyAvatarResult };
64
+ let UserAvatarResolver = class UserAvatarResolver extends ResolverBase {
65
+ /**
66
+ * Sets the CALLER's avatar. Null or empty clears a column; both null reverts to the default.
67
+ * Validation failures and save failures are returned as `Success: false` with a message.
68
+ */
69
+ async UpdateMyAvatar(ctx, imageURL, iconClass) {
70
+ const caller = ctx.userPayload?.userRecord;
71
+ if (!caller?.ID) {
72
+ throw new Error('User is not authenticated');
73
+ }
74
+ if (IsScopeLimitedPrincipal(caller)) {
75
+ return { Success: false, ErrorMessage: 'Changing your avatar is not permitted for scope-limited sessions.' };
76
+ }
77
+ await this.CheckAPIKeyScopeAuthorization('entity:update', 'MJ: Users', ctx.userPayload);
78
+ const input = ValidateAvatarInput(imageURL, iconClass);
79
+ if (!input.Valid) {
80
+ return { Success: false, ErrorMessage: input.ErrorMessage };
81
+ }
82
+ try {
83
+ return await this.saveAvatar(ctx, caller, input.ImageURL, input.IconClass);
84
+ }
85
+ catch (e) {
86
+ LogError(`UpdateMyAvatar: failed for user ${caller.ID}: ${e instanceof Error ? e.message : String(e)}`);
87
+ return { Success: false, ErrorMessage: SAVE_FAILED_MESSAGE };
88
+ }
89
+ }
90
+ /** Loads the caller's own row as the system user and writes ONLY the two avatar columns. */
91
+ async saveAvatar(ctx, caller, imageURL, iconClass) {
92
+ const systemUser = await GetSystemUser();
93
+ const provider = GetReadWriteProvider(ctx.providers);
94
+ const user = await provider.GetEntityObject('MJ: Users', systemUser);
95
+ if (!(await user.Load(caller.ID))) {
96
+ LogError(`UpdateMyAvatar: could not load the MJ: Users row for user ${caller.ID}`);
97
+ return { Success: false, ErrorMessage: 'Could not load your user record.' };
98
+ }
99
+ user.Revert(); // nothing but the two avatar columns may reach the write
100
+ user.UserImageURL = imageURL;
101
+ user.UserImageIconClass = iconClass;
102
+ LogStatus(`UpdateMyAvatar: user ${caller.ID} requested an avatar change; saving as the system user`);
103
+ if (!(await user.Save())) {
104
+ const detail = user.LatestResult?.CompleteMessage ?? 'unknown error';
105
+ LogError(`UpdateMyAvatar: save failed for user ${caller.ID}: ${detail}`);
106
+ return { Success: false, ErrorMessage: SAVE_FAILED_MESSAGE };
107
+ }
108
+ return { Success: true };
109
+ }
110
+ };
111
+ __decorate([
112
+ Mutation(() => UpdateMyAvatarResult),
113
+ __param(0, Ctx()),
114
+ __param(1, Arg('ImageURL', () => String, { nullable: true })),
115
+ __param(2, Arg('IconClass', () => String, { nullable: true })),
116
+ __metadata("design:type", Function),
117
+ __metadata("design:paramtypes", [Object, String, String]),
118
+ __metadata("design:returntype", Promise)
119
+ ], UserAvatarResolver.prototype, "UpdateMyAvatar", null);
120
+ UserAvatarResolver = __decorate([
121
+ Resolver()
122
+ ], UserAvatarResolver);
123
+ export { UserAvatarResolver };
124
+ //# sourceMappingURL=UserAvatarResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserAvatarResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserAvatarResolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA2E,MAAM,wBAAwB,CAAC;AAG7H,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAUrF;;;;;GAKG;AACH,qBACa,eAAgB,SAAQ,OAAO;IAE1C,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAYD,qBACa,YAAa,SAAQ,kBAAkB;IAG5C,WAAW,CAAQ,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC;IA0CjE,QAAQ,CAAuB,EAAE,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IASxF,gBAAgB,CAA+B,UAAU,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAShH,WAAW,CAA6B,KAAK,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAS1G;;;;OAIG;YACW,gBAAgB;YA2BhB,oBAAoB;CAkBnC;AACD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"UserResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA2E,MAAM,wBAAwB,CAAC;AAG7H,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAWrF;;;;;GAKG;AACH,qBACa,eAAgB,SAAQ,OAAO;IAE1C,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAYD,qBACa,YAAa,SAAQ,kBAAkB;IAG5C,WAAW,CAAQ,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC;IA2BjE,QAAQ,CAAuB,EAAE,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IASxF,gBAAgB,CAA+B,UAAU,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAShH,WAAW,CAA6B,KAAK,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAS1G;;;;OAIG;YACW,gBAAgB;YA2BhB,oBAAoB;CAkBnC;AACD,eAAe,YAAY,CAAC"}
@@ -15,7 +15,7 @@ import { RunView } from '@memberjunction/core';
15
15
  import { UUIDsEqual } from '@memberjunction/global';
16
16
  import { MJUser_, MJUserRole_, MJUserResolverBase } from '../generated/generated.js';
17
17
  import { GetReadOnlyProvider } from '../util.js';
18
- import { AssertRoleLoadSucceeded, RequireContextUser, RequireLoadedUser, RequireRoleProvider, UserIdExtraFilter, } from './currentUserRoles.js';
18
+ import { AssertRoleLoadSucceeded, RequireContextUser, RequireLoadedUser, RequireRoleProvider, SessionUserFields, UserIdExtraFilter, } from './currentUserRoles.js';
19
19
  /**
20
20
  * CurrentUser payload. Extends the generated user type with a first-class `Roles`
21
21
  * field — child-array FieldResolvers (`MJUserRoles_UserIDArray`) are no longer
@@ -37,22 +37,7 @@ let UserResolver = class UserResolver extends MJUserResolverBase {
37
37
  await this.CheckAPIKeyScopeAuthorization('user:read', '*', context.userPayload);
38
38
  if (context.userPayload.userRecord) {
39
39
  const userRecord = context.userPayload.userRecord;
40
- const userData = {
41
- ID: userRecord.ID,
42
- Name: userRecord.Name,
43
- FirstName: userRecord.FirstName,
44
- LastName: userRecord.LastName,
45
- Title: userRecord.Title,
46
- Email: userRecord.Email,
47
- Type: userRecord.Type,
48
- IsActive: userRecord.IsActive,
49
- LinkedRecordType: userRecord.LinkedRecordType,
50
- EmployeeID: userRecord.EmployeeID,
51
- LinkedEntityID: userRecord.LinkedEntityID,
52
- LinkedEntityRecordID: userRecord.LinkedEntityRecordID,
53
- __mj_CreatedAt: userRecord.__mj_CreatedAt,
54
- __mj_UpdatedAt: userRecord.__mj_UpdatedAt,
55
- };
40
+ const userData = SessionUserFields(userRecord);
56
41
  console.log('CurrentUser (from userRecord)', userData.Email);
57
42
  const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true });
58
43
  const mapped = await this.MapFieldNamesToCodeNames('MJ: Users', userData, userRecord, provider);