@memberjunction/server 3.3.0 → 3.4.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 (103) hide show
  1. package/README.md +59 -0
  2. package/dist/auth/BaseAuthProvider.d.ts +1 -0
  3. package/dist/auth/BaseAuthProvider.d.ts.map +1 -1
  4. package/dist/auth/BaseAuthProvider.js +2 -0
  5. package/dist/auth/BaseAuthProvider.js.map +1 -1
  6. package/dist/auth/IAuthProvider.d.ts +1 -0
  7. package/dist/auth/IAuthProvider.d.ts.map +1 -1
  8. package/dist/config.js +2 -2
  9. package/dist/config.js.map +1 -1
  10. package/dist/generated/generated.d.ts +431 -2
  11. package/dist/generated/generated.d.ts.map +1 -1
  12. package/dist/generated/generated.js +3052 -379
  13. package/dist/generated/generated.js.map +1 -1
  14. package/dist/generic/ResolverBase.d.ts +1 -0
  15. package/dist/generic/ResolverBase.d.ts.map +1 -1
  16. package/dist/generic/ResolverBase.js +30 -0
  17. package/dist/generic/ResolverBase.js.map +1 -1
  18. package/dist/index.d.ts +2 -2
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +2 -2
  21. package/dist/index.js.map +1 -1
  22. package/dist/resolvers/APIKeyResolver.d.ts +2 -1
  23. package/dist/resolvers/APIKeyResolver.d.ts.map +1 -1
  24. package/dist/resolvers/APIKeyResolver.js +4 -1
  25. package/dist/resolvers/APIKeyResolver.js.map +1 -1
  26. package/dist/resolvers/ActionResolver.d.ts +2 -1
  27. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  28. package/dist/resolvers/ActionResolver.js +4 -1
  29. package/dist/resolvers/ActionResolver.js.map +1 -1
  30. package/dist/resolvers/DatasetResolver.d.ts +5 -4
  31. package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
  32. package/dist/resolvers/DatasetResolver.js +7 -4
  33. package/dist/resolvers/DatasetResolver.js.map +1 -1
  34. package/dist/resolvers/EntityCommunicationsResolver.d.ts +2 -1
  35. package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
  36. package/dist/resolvers/EntityCommunicationsResolver.js +3 -1
  37. package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
  38. package/dist/resolvers/GetDataContextDataResolver.d.ts +2 -1
  39. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  40. package/dist/resolvers/GetDataContextDataResolver.js +10 -3
  41. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  42. package/dist/resolvers/MCPResolver.d.ts +37 -0
  43. package/dist/resolvers/MCPResolver.d.ts.map +1 -0
  44. package/dist/resolvers/MCPResolver.js +363 -0
  45. package/dist/resolvers/MCPResolver.js.map +1 -0
  46. package/dist/resolvers/MergeRecordsResolver.d.ts +2 -1
  47. package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
  48. package/dist/resolvers/MergeRecordsResolver.js +3 -1
  49. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  50. package/dist/resolvers/QueryResolver.d.ts +2 -1
  51. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  52. package/dist/resolvers/QueryResolver.js +6 -1
  53. package/dist/resolvers/QueryResolver.js.map +1 -1
  54. package/dist/resolvers/ReportResolver.d.ts +2 -1
  55. package/dist/resolvers/ReportResolver.d.ts.map +1 -1
  56. package/dist/resolvers/ReportResolver.js +4 -1
  57. package/dist/resolvers/ReportResolver.js.map +1 -1
  58. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  59. package/dist/resolvers/RunAIAgentResolver.js +2 -0
  60. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  61. package/dist/resolvers/RunAIPromptResolver.d.ts.map +1 -1
  62. package/dist/resolvers/RunAIPromptResolver.js +3 -0
  63. package/dist/resolvers/RunAIPromptResolver.js.map +1 -1
  64. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  65. package/dist/resolvers/RunTemplateResolver.js +1 -0
  66. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  67. package/dist/resolvers/TaskResolver.d.ts.map +1 -1
  68. package/dist/resolvers/TaskResolver.js +1 -0
  69. package/dist/resolvers/TaskResolver.js.map +1 -1
  70. package/dist/resolvers/UserResolver.d.ts.map +1 -1
  71. package/dist/resolvers/UserResolver.js +4 -0
  72. package/dist/resolvers/UserResolver.js.map +1 -1
  73. package/package.json +47 -46
  74. package/src/auth/BaseAuthProvider.ts +3 -0
  75. package/src/auth/IAuthProvider.ts +5 -0
  76. package/src/config.ts +2 -2
  77. package/src/generated/generated.ts +2020 -334
  78. package/src/generic/ResolverBase.ts +89 -3
  79. package/src/index.ts +10 -2
  80. package/src/resolvers/APIKeyResolver.ts +8 -1
  81. package/src/resolvers/ActionResolver.ts +8 -1
  82. package/src/resolvers/DatasetResolver.ts +11 -4
  83. package/src/resolvers/EntityCommunicationsResolver.ts +5 -1
  84. package/src/resolvers/GetDataContextDataResolver.ts +14 -6
  85. package/src/resolvers/MCPResolver.ts +480 -0
  86. package/src/resolvers/MergeRecordsResolver.ts +5 -1
  87. package/src/resolvers/QueryResolver.ts +17 -3
  88. package/src/resolvers/ReportResolver.ts +8 -1
  89. package/src/resolvers/RunAIAgentResolver.ts +6 -0
  90. package/src/resolvers/RunAIPromptResolver.ts +10 -1
  91. package/src/resolvers/RunTemplateResolver.ts +4 -1
  92. package/src/resolvers/TaskResolver.ts +3 -0
  93. package/src/resolvers/UserResolver.ts +15 -3
  94. package/dist/resolvers/AskSkipResolver.d.ts +0 -123
  95. package/dist/resolvers/AskSkipResolver.d.ts.map +0 -1
  96. package/dist/resolvers/AskSkipResolver.js +0 -1788
  97. package/dist/resolvers/AskSkipResolver.js.map +0 -1
  98. package/dist/scheduler/LearningCycleScheduler.d.ts +0 -4
  99. package/dist/scheduler/LearningCycleScheduler.d.ts.map +0 -1
  100. package/dist/scheduler/LearningCycleScheduler.js +0 -4
  101. package/dist/scheduler/LearningCycleScheduler.js.map +0 -1
  102. package/src/resolvers/AskSkipResolver.ts +0 -3446
  103. package/src/scheduler/LearningCycleScheduler.ts +0 -320
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/server",
3
- "version": "3.3.0",
3
+ "version": "3.4.0",
4
4
  "description": "MemberJunction: This project provides API access via GraphQL to the common data store.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./src/index.ts",
@@ -26,51 +26,52 @@
26
26
  "@apollo/server": "^4.9.1",
27
27
  "@graphql-tools/schema": "latest",
28
28
  "@graphql-tools/utils": "^10.0.1",
29
- "@memberjunction/actions": "3.3.0",
30
- "@memberjunction/actions-apollo": "3.3.0",
31
- "@memberjunction/actions-bizapps-accounting": "3.3.0",
32
- "@memberjunction/actions-bizapps-crm": "3.3.0",
33
- "@memberjunction/actions-bizapps-formbuilders": "3.3.0",
34
- "@memberjunction/actions-bizapps-lms": "3.3.0",
35
- "@memberjunction/actions-bizapps-social": "3.3.0",
36
- "@memberjunction/ai": "3.3.0",
37
- "@memberjunction/ai-agent-manager": "3.3.0",
38
- "@memberjunction/ai-agent-manager-actions": "3.3.0",
39
- "@memberjunction/ai-agents": "3.3.0",
40
- "@memberjunction/ai-core-plus": "3.3.0",
41
- "@memberjunction/ai-prompts": "3.3.0",
42
- "@memberjunction/ai-provider-bundle": "3.3.0",
43
- "@memberjunction/ai-vectors-pinecone": "3.3.0",
44
- "@memberjunction/aiengine": "3.3.0",
45
- "@memberjunction/communication-ms-graph": "3.3.0",
46
- "@memberjunction/communication-sendgrid": "3.3.0",
47
- "@memberjunction/component-registry-client-sdk": "3.3.0",
48
- "@memberjunction/config": "3.3.0",
49
- "@memberjunction/core": "3.3.0",
50
- "@memberjunction/core-actions": "3.3.0",
51
- "@memberjunction/core-entities": "3.3.0",
52
- "@memberjunction/core-entities-server": "3.3.0",
53
- "@memberjunction/data-context": "3.3.0",
54
- "@memberjunction/data-context-server": "3.3.0",
55
- "@memberjunction/doc-utils": "3.3.0",
56
- "@memberjunction/api-keys": "3.3.0",
57
- "@memberjunction/encryption": "3.3.0",
58
- "@memberjunction/entity-communications-server": "3.3.0",
59
- "@memberjunction/external-change-detection": "3.3.0",
60
- "@memberjunction/global": "3.3.0",
61
- "@memberjunction/graphql-dataprovider": "3.3.0",
62
- "@memberjunction/interactive-component-types": "3.3.0",
63
- "@memberjunction/notifications": "3.3.0",
64
- "@memberjunction/queue": "3.3.0",
65
- "@memberjunction/scheduling-actions": "3.3.0",
66
- "@memberjunction/scheduling-base-types": "3.3.0",
67
- "@memberjunction/scheduling-engine": "3.3.0",
68
- "@memberjunction/scheduling-engine-base": "3.3.0",
69
- "@memberjunction/skip-types": "3.3.0",
70
- "@memberjunction/sqlserver-dataprovider": "3.3.0",
71
- "@memberjunction/storage": "3.3.0",
72
- "@memberjunction/templates": "3.3.0",
73
- "@memberjunction/testing-engine": "3.3.0",
29
+ "@memberjunction/actions": "3.4.0",
30
+ "@memberjunction/actions-apollo": "3.4.0",
31
+ "@memberjunction/actions-bizapps-accounting": "3.4.0",
32
+ "@memberjunction/actions-bizapps-crm": "3.4.0",
33
+ "@memberjunction/actions-bizapps-formbuilders": "3.4.0",
34
+ "@memberjunction/actions-bizapps-lms": "3.4.0",
35
+ "@memberjunction/actions-bizapps-social": "3.4.0",
36
+ "@memberjunction/ai": "3.4.0",
37
+ "@memberjunction/ai-mcp-client": "3.4.0",
38
+ "@memberjunction/ai-agent-manager": "3.4.0",
39
+ "@memberjunction/ai-agent-manager-actions": "3.4.0",
40
+ "@memberjunction/ai-agents": "3.4.0",
41
+ "@memberjunction/ai-core-plus": "3.4.0",
42
+ "@memberjunction/ai-prompts": "3.4.0",
43
+ "@memberjunction/ai-provider-bundle": "3.4.0",
44
+ "@memberjunction/ai-vectors-pinecone": "3.4.0",
45
+ "@memberjunction/aiengine": "3.4.0",
46
+ "@memberjunction/communication-ms-graph": "3.4.0",
47
+ "@memberjunction/communication-sendgrid": "3.4.0",
48
+ "@memberjunction/component-registry-client-sdk": "3.4.0",
49
+ "@memberjunction/config": "3.4.0",
50
+ "@memberjunction/core": "3.4.0",
51
+ "@memberjunction/core-actions": "3.4.0",
52
+ "@memberjunction/core-entities": "3.4.0",
53
+ "@memberjunction/core-entities-server": "3.4.0",
54
+ "@memberjunction/data-context": "3.4.0",
55
+ "@memberjunction/data-context-server": "3.4.0",
56
+ "@memberjunction/doc-utils": "3.4.0",
57
+ "@memberjunction/api-keys": "3.4.0",
58
+ "@memberjunction/encryption": "3.4.0",
59
+ "@memberjunction/entity-communications-server": "3.4.0",
60
+ "@memberjunction/external-change-detection": "3.4.0",
61
+ "@memberjunction/global": "3.4.0",
62
+ "@memberjunction/graphql-dataprovider": "3.4.0",
63
+ "@memberjunction/interactive-component-types": "3.4.0",
64
+ "@memberjunction/notifications": "3.4.0",
65
+ "@memberjunction/queue": "3.4.0",
66
+ "@memberjunction/scheduling-actions": "3.4.0",
67
+ "@memberjunction/scheduling-base-types": "3.4.0",
68
+ "@memberjunction/scheduling-engine": "3.4.0",
69
+ "@memberjunction/scheduling-engine-base": "3.4.0",
70
+ "@memberjunction/skip-types": "3.4.0",
71
+ "@memberjunction/sqlserver-dataprovider": "3.4.0",
72
+ "@memberjunction/storage": "3.4.0",
73
+ "@memberjunction/templates": "3.4.0",
74
+ "@memberjunction/testing-engine": "3.4.0",
74
75
  "@types/compression": "^1.7.5",
75
76
  "@types/cors": "^2.8.13",
76
77
  "@types/jsonwebtoken": "9.0.6",
@@ -15,6 +15,8 @@ export abstract class BaseAuthProvider implements IAuthProvider {
15
15
  issuer: string;
16
16
  audience: string;
17
17
  jwksUri: string;
18
+ /** OAuth client ID for this provider (used by OAuth proxy for upstream auth) */
19
+ clientId?: string;
18
20
  protected config: AuthProviderConfig;
19
21
  protected jwksClient: jwksClient.JwksClient;
20
22
 
@@ -24,6 +26,7 @@ export abstract class BaseAuthProvider implements IAuthProvider {
24
26
  this.issuer = config.issuer;
25
27
  this.audience = config.audience;
26
28
  this.jwksUri = config.jwksUri;
29
+ this.clientId = config.clientId;
27
30
 
28
31
  // Create HTTP agent with keep-alive to prevent socket hangups
29
32
  const agent = this.jwksUri.startsWith('https')
@@ -26,6 +26,11 @@ export interface IAuthProvider {
26
26
  */
27
27
  jwksUri: string;
28
28
 
29
+ /**
30
+ * OAuth client ID for this provider (optional, used by OAuth proxy for upstream authentication)
31
+ */
32
+ clientId?: string;
33
+
29
34
  /**
30
35
  * Validates that the provider configuration is complete and valid
31
36
  */
package/src/config.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { cosmiconfigSync } from 'cosmiconfig';
3
3
  import { LogError, LogStatus } from '@memberjunction/core';
4
- import { mergeConfigs } from '@memberjunction/config';
4
+ import { mergeConfigs, parseBooleanEnv } from '@memberjunction/config';
5
5
 
6
6
  const explorer = cosmiconfigSync('mj', { searchStrategy: 'global' });
7
7
 
@@ -224,7 +224,7 @@ export const DEFAULT_SERVER_CONFIG: Partial<ConfigInfo> = {
224
224
  dbPassword: process.env.DB_PASSWORD,
225
225
  dbReadOnlyUsername: process.env.DB_READ_ONLY_USERNAME,
226
226
  dbReadOnlyPassword: process.env.DB_READ_ONLY_PASSWORD,
227
- dbTrustServerCertificate: ['true', '1', 'Y', 'y'].includes(process.env.DB_TRUST_SERVER_CERTIFICATE ?? '') ? 'Y' : 'N',
227
+ dbTrustServerCertificate: parseBooleanEnv(process.env.DB_TRUST_SERVER_CERTIFICATE) ? 'Y' : 'N',
228
228
  dbInstanceName: process.env.DB_INSTANCE_NAME,
229
229
  mjCoreSchema: process.env.MJ_CORE_SCHEMA ?? '__mj',
230
230