@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.
- package/README.md +59 -0
- package/dist/agents/skip-agent.d.ts +65 -0
- package/dist/agents/skip-agent.d.ts.map +1 -1
- package/dist/agents/skip-agent.js +63 -5
- package/dist/agents/skip-agent.js.map +1 -1
- package/dist/agents/skip-sdk.d.ts +163 -0
- package/dist/agents/skip-sdk.d.ts.map +1 -1
- package/dist/agents/skip-sdk.js +143 -12
- package/dist/agents/skip-sdk.js.map +1 -1
- package/dist/apolloServer/TransactionPlugin.d.ts +4 -0
- package/dist/apolloServer/TransactionPlugin.d.ts.map +1 -0
- package/dist/apolloServer/TransactionPlugin.js +46 -0
- package/dist/apolloServer/TransactionPlugin.js.map +1 -0
- package/dist/apolloServer/index.d.ts +0 -1
- package/dist/apolloServer/index.d.ts.map +1 -1
- package/dist/auth/APIKeyScopeAuth.d.ts +82 -0
- package/dist/auth/APIKeyScopeAuth.d.ts.map +1 -1
- package/dist/auth/APIKeyScopeAuth.js +78 -0
- package/dist/auth/APIKeyScopeAuth.js.map +1 -1
- package/dist/auth/AuthProviderFactory.d.ts +35 -0
- package/dist/auth/AuthProviderFactory.d.ts.map +1 -1
- package/dist/auth/AuthProviderFactory.js +51 -4
- package/dist/auth/AuthProviderFactory.js.map +1 -1
- package/dist/auth/BaseAuthProvider.d.ts +22 -0
- package/dist/auth/BaseAuthProvider.d.ts.map +1 -1
- package/dist/auth/BaseAuthProvider.js +25 -8
- package/dist/auth/BaseAuthProvider.js.map +1 -1
- package/dist/auth/IAuthProvider.d.ts +33 -0
- package/dist/auth/IAuthProvider.d.ts.map +1 -1
- package/dist/auth/__tests__/backward-compatibility.test.d.ts +2 -0
- package/dist/auth/__tests__/backward-compatibility.test.d.ts.map +1 -0
- package/dist/auth/__tests__/backward-compatibility.test.js +135 -0
- package/dist/auth/__tests__/backward-compatibility.test.js.map +1 -0
- package/dist/auth/exampleNewUserSubClass.d.ts +5 -1
- package/dist/auth/exampleNewUserSubClass.d.ts.map +1 -1
- package/dist/auth/exampleNewUserSubClass.js +21 -6
- package/dist/auth/exampleNewUserSubClass.js.map +1 -1
- package/dist/auth/index.d.ts +14 -0
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +35 -22
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/initializeProviders.d.ts +3 -0
- package/dist/auth/initializeProviders.d.ts.map +1 -1
- package/dist/auth/initializeProviders.js +6 -0
- package/dist/auth/initializeProviders.js.map +1 -1
- package/dist/auth/newUsers.js +11 -2
- package/dist/auth/newUsers.js.map +1 -1
- package/dist/auth/providers/Auth0Provider.d.ts +9 -0
- package/dist/auth/providers/Auth0Provider.d.ts.map +1 -1
- package/dist/auth/providers/Auth0Provider.js +10 -0
- package/dist/auth/providers/Auth0Provider.js.map +1 -1
- package/dist/auth/providers/CognitoProvider.d.ts +9 -0
- package/dist/auth/providers/CognitoProvider.d.ts.map +1 -1
- package/dist/auth/providers/CognitoProvider.js +10 -0
- package/dist/auth/providers/CognitoProvider.js.map +1 -1
- package/dist/auth/providers/GoogleProvider.d.ts +9 -0
- package/dist/auth/providers/GoogleProvider.d.ts.map +1 -1
- package/dist/auth/providers/GoogleProvider.js +11 -1
- package/dist/auth/providers/GoogleProvider.js.map +1 -1
- package/dist/auth/providers/MSALProvider.d.ts +9 -0
- package/dist/auth/providers/MSALProvider.d.ts.map +1 -1
- package/dist/auth/providers/MSALProvider.js +10 -0
- package/dist/auth/providers/MSALProvider.js.map +1 -1
- package/dist/auth/providers/OktaProvider.d.ts +9 -0
- package/dist/auth/providers/OktaProvider.d.ts.map +1 -1
- package/dist/auth/providers/OktaProvider.js +10 -0
- package/dist/auth/providers/OktaProvider.js.map +1 -1
- package/dist/config.d.ts +12 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +44 -10
- package/dist/config.js.map +1 -1
- package/dist/context.d.ts +8 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +26 -4
- package/dist/context.js.map +1 -1
- package/dist/directives/Public.js +2 -0
- package/dist/directives/Public.js.map +1 -1
- package/dist/entitySubclasses/entityPermissions.server.d.ts +7 -2
- package/dist/entitySubclasses/entityPermissions.server.d.ts.map +1 -1
- package/dist/entitySubclasses/entityPermissions.server.js +26 -8
- package/dist/entitySubclasses/entityPermissions.server.js.map +1 -1
- package/dist/generated/generated.d.ts +954 -2
- package/dist/generated/generated.d.ts.map +1 -1
- package/dist/generated/generated.js +12183 -14532
- package/dist/generated/generated.js.map +1 -1
- package/dist/generic/DeleteOptionsInput.d.ts +3 -0
- package/dist/generic/DeleteOptionsInput.d.ts.map +1 -1
- package/dist/generic/DeleteOptionsInput.js +3 -2
- package/dist/generic/DeleteOptionsInput.js.map +1 -1
- package/dist/generic/KeyInputOutputTypes.js +0 -6
- package/dist/generic/KeyInputOutputTypes.js.map +1 -1
- package/dist/generic/KeyValuePairInput.d.ts +4 -0
- package/dist/generic/KeyValuePairInput.d.ts.map +1 -1
- package/dist/generic/KeyValuePairInput.js +4 -2
- package/dist/generic/KeyValuePairInput.js.map +1 -1
- package/dist/generic/PushStatusResolver.js +0 -3
- package/dist/generic/PushStatusResolver.js.map +1 -1
- package/dist/generic/ResolverBase.d.ts +59 -0
- package/dist/generic/ResolverBase.d.ts.map +1 -1
- package/dist/generic/ResolverBase.js +233 -18
- package/dist/generic/ResolverBase.js.map +1 -1
- package/dist/generic/RunViewResolver.d.ts +22 -0
- package/dist/generic/RunViewResolver.d.ts.map +1 -1
- package/dist/generic/RunViewResolver.js +42 -108
- package/dist/generic/RunViewResolver.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +84 -39
- package/dist/index.js.map +1 -1
- package/dist/orm.d.ts.map +1 -1
- package/dist/orm.js +2 -1
- package/dist/orm.js.map +1 -1
- package/dist/resolvers/APIKeyResolver.d.ts +76 -1
- package/dist/resolvers/APIKeyResolver.d.ts.map +1 -1
- package/dist/resolvers/APIKeyResolver.js +53 -11
- package/dist/resolvers/APIKeyResolver.js.map +1 -1
- package/dist/resolvers/ActionResolver.d.ts +191 -1
- package/dist/resolvers/ActionResolver.d.ts.map +1 -1
- package/dist/resolvers/ActionResolver.js +156 -22
- package/dist/resolvers/ActionResolver.js.map +1 -1
- package/dist/resolvers/ColorResolver.js +0 -5
- package/dist/resolvers/ColorResolver.js.map +1 -1
- package/dist/resolvers/ComponentRegistryResolver.d.ts +65 -0
- package/dist/resolvers/ComponentRegistryResolver.d.ts.map +1 -1
- package/dist/resolvers/ComponentRegistryResolver.js +118 -40
- package/dist/resolvers/ComponentRegistryResolver.js.map +1 -1
- package/dist/resolvers/CreateQueryResolver.d.ts +47 -0
- package/dist/resolvers/CreateQueryResolver.d.ts.map +1 -1
- package/dist/resolvers/CreateQueryResolver.js +92 -116
- package/dist/resolvers/CreateQueryResolver.js.map +1 -1
- package/dist/resolvers/DatasetResolver.d.ts +5 -4
- package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
- package/dist/resolvers/DatasetResolver.js +9 -18
- package/dist/resolvers/DatasetResolver.js.map +1 -1
- package/dist/resolvers/EntityCommunicationsResolver.d.ts +42 -1
- package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
- package/dist/resolvers/EntityCommunicationsResolver.js +5 -37
- package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
- package/dist/resolvers/EntityRecordNameResolver.js +0 -7
- package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
- package/dist/resolvers/FileCategoryResolver.js +13 -1
- package/dist/resolvers/FileCategoryResolver.js.map +1 -1
- package/dist/resolvers/FileResolver.d.ts +16 -0
- package/dist/resolvers/FileResolver.d.ts.map +1 -1
- package/dist/resolvers/FileResolver.js +59 -74
- package/dist/resolvers/FileResolver.js.map +1 -1
- package/dist/resolvers/GetDataContextDataResolver.d.ts +20 -2
- package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
- package/dist/resolvers/GetDataContextDataResolver.js +27 -12
- package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
- package/dist/resolvers/GetDataResolver.d.ts +19 -0
- package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
- package/dist/resolvers/GetDataResolver.js +35 -35
- package/dist/resolvers/GetDataResolver.js.map +1 -1
- package/dist/resolvers/InfoResolver.d.ts.map +1 -1
- package/dist/resolvers/InfoResolver.js +4 -7
- package/dist/resolvers/InfoResolver.js.map +1 -1
- package/dist/resolvers/MCPResolver.d.ts +361 -0
- package/dist/resolvers/MCPResolver.d.ts.map +1 -0
- package/dist/resolvers/MCPResolver.js +1270 -0
- package/dist/resolvers/MCPResolver.js.map +1 -0
- package/dist/resolvers/MergeRecordsResolver.d.ts +2 -1
- package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
- package/dist/resolvers/MergeRecordsResolver.js +6 -30
- package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
- package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts.map +1 -1
- package/dist/resolvers/PotentialDuplicateRecordResolver.js +0 -3
- package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -1
- package/dist/resolvers/QueryResolver.d.ts +22 -1
- package/dist/resolvers/QueryResolver.d.ts.map +1 -1
- package/dist/resolvers/QueryResolver.js +50 -37
- package/dist/resolvers/QueryResolver.js.map +1 -1
- package/dist/resolvers/ReportResolver.d.ts +5 -1
- package/dist/resolvers/ReportResolver.d.ts.map +1 -1
- package/dist/resolvers/ReportResolver.js +13 -11
- package/dist/resolvers/ReportResolver.js.map +1 -1
- package/dist/resolvers/RunAIAgentResolver.d.ts +54 -0
- package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
- package/dist/resolvers/RunAIAgentResolver.js +118 -40
- package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
- package/dist/resolvers/RunAIPromptResolver.d.ts +42 -0
- package/dist/resolvers/RunAIPromptResolver.d.ts.map +1 -1
- package/dist/resolvers/RunAIPromptResolver.js +98 -22
- package/dist/resolvers/RunAIPromptResolver.js.map +1 -1
- package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
- package/dist/resolvers/RunTemplateResolver.js +10 -6
- package/dist/resolvers/RunTemplateResolver.js.map +1 -1
- package/dist/resolvers/RunTestResolver.d.ts +12 -0
- package/dist/resolvers/RunTestResolver.d.ts.map +1 -1
- package/dist/resolvers/RunTestResolver.js +35 -21
- package/dist/resolvers/RunTestResolver.js.map +1 -1
- package/dist/resolvers/SqlLoggingConfigResolver.d.ts +312 -0
- package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
- package/dist/resolvers/SqlLoggingConfigResolver.js +295 -45
- package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
- package/dist/resolvers/SyncDataResolver.d.ts +21 -0
- package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
- package/dist/resolvers/SyncDataResolver.js +36 -22
- package/dist/resolvers/SyncDataResolver.js.map +1 -1
- package/dist/resolvers/SyncRolesUsersResolver.d.ts +14 -0
- package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
- package/dist/resolvers/SyncRolesUsersResolver.js +54 -21
- package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
- package/dist/resolvers/TaskResolver.d.ts +13 -0
- package/dist/resolvers/TaskResolver.d.ts.map +1 -1
- package/dist/resolvers/TaskResolver.js +23 -7
- package/dist/resolvers/TaskResolver.js.map +1 -1
- package/dist/resolvers/TelemetryResolver.d.ts +22 -0
- package/dist/resolvers/TelemetryResolver.d.ts.map +1 -1
- package/dist/resolvers/TelemetryResolver.js +45 -79
- package/dist/resolvers/TelemetryResolver.js.map +1 -1
- package/dist/resolvers/TransactionGroupResolver.js +11 -13
- package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
- package/dist/resolvers/UserFavoriteResolver.js +3 -12
- package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
- package/dist/resolvers/UserResolver.d.ts.map +1 -1
- package/dist/resolvers/UserResolver.js +14 -0
- package/dist/resolvers/UserResolver.js.map +1 -1
- package/dist/resolvers/UserViewResolver.js +4 -0
- package/dist/resolvers/UserViewResolver.js.map +1 -1
- package/dist/resolvers/VersionHistoryResolver.d.ts +39 -0
- package/dist/resolvers/VersionHistoryResolver.d.ts.map +1 -0
- package/dist/resolvers/VersionHistoryResolver.js +208 -0
- package/dist/resolvers/VersionHistoryResolver.js.map +1 -0
- package/dist/rest/EntityCRUDHandler.d.ts +19 -0
- package/dist/rest/EntityCRUDHandler.d.ts.map +1 -1
- package/dist/rest/EntityCRUDHandler.js +55 -0
- package/dist/rest/EntityCRUDHandler.js.map +1 -1
- package/dist/rest/OAuthCallbackHandler.d.ts +143 -0
- package/dist/rest/OAuthCallbackHandler.d.ts.map +1 -0
- package/dist/rest/OAuthCallbackHandler.js +634 -0
- package/dist/rest/OAuthCallbackHandler.js.map +1 -0
- package/dist/rest/RESTEndpointHandler.d.ts +120 -0
- package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
- package/dist/rest/RESTEndpointHandler.js +213 -24
- package/dist/rest/RESTEndpointHandler.js.map +1 -1
- package/dist/rest/ViewOperationsHandler.d.ts +19 -0
- package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
- package/dist/rest/ViewOperationsHandler.js +39 -0
- package/dist/rest/ViewOperationsHandler.js.map +1 -1
- package/dist/rest/index.d.ts +1 -0
- package/dist/rest/index.d.ts.map +1 -1
- package/dist/rest/index.js +1 -0
- package/dist/rest/index.js.map +1 -1
- package/dist/rest/setupRESTEndpoints.d.ts +35 -0
- package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
- package/dist/rest/setupRESTEndpoints.js +15 -1
- package/dist/rest/setupRESTEndpoints.js.map +1 -1
- package/dist/services/ScheduledJobsService.d.ts +31 -0
- package/dist/services/ScheduledJobsService.d.ts.map +1 -1
- package/dist/services/ScheduledJobsService.js +38 -4
- package/dist/services/ScheduledJobsService.js.map +1 -1
- package/dist/services/TaskOrchestrator.d.ts +73 -0
- package/dist/services/TaskOrchestrator.d.ts.map +1 -1
- package/dist/services/TaskOrchestrator.js +137 -15
- package/dist/services/TaskOrchestrator.js.map +1 -1
- package/dist/types.d.ts +14 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -13
- package/dist/types.js.map +1 -1
- package/dist/util.d.ts +37 -1
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +55 -8
- package/dist/util.js.map +1 -1
- package/package.json +79 -77
- package/src/auth/BaseAuthProvider.ts +3 -0
- package/src/auth/IAuthProvider.ts +5 -0
- package/src/auth/exampleNewUserSubClass.ts +1 -5
- package/src/config.ts +2 -2
- package/src/entitySubclasses/entityPermissions.server.ts +1 -3
- package/src/generated/generated.ts +6245 -2558
- package/src/generic/ResolverBase.ts +89 -3
- package/src/index.ts +71 -64
- package/src/resolvers/APIKeyResolver.ts +8 -1
- package/src/resolvers/ActionResolver.ts +8 -1
- package/src/resolvers/DatasetResolver.ts +11 -4
- package/src/resolvers/EntityCommunicationsResolver.ts +5 -1
- package/src/resolvers/GetDataContextDataResolver.ts +14 -6
- package/src/resolvers/InfoResolver.ts +5 -1
- package/src/resolvers/MCPResolver.ts +1380 -0
- package/src/resolvers/MergeRecordsResolver.ts +5 -1
- package/src/resolvers/PotentialDuplicateRecordResolver.ts +0 -4
- package/src/resolvers/QueryResolver.ts +17 -3
- package/src/resolvers/ReportResolver.ts +8 -1
- package/src/resolvers/RunAIAgentResolver.ts +6 -0
- package/src/resolvers/RunAIPromptResolver.ts +10 -1
- package/src/resolvers/RunTemplateResolver.ts +4 -1
- package/src/resolvers/TaskResolver.ts +3 -0
- package/src/resolvers/UserResolver.ts +15 -3
- package/src/resolvers/VersionHistoryResolver.ts +177 -0
- package/src/rest/OAuthCallbackHandler.ts +766 -0
- package/src/rest/RESTEndpointHandler.ts +58 -35
- package/src/rest/index.ts +2 -1
- package/src/rest/setupRESTEndpoints.ts +13 -12
- package/src/resolvers/AskSkipResolver.ts +0 -3446
- package/src/scheduler/LearningCycleScheduler.ts +0 -320
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,GAAG,MAAM,OAAO,CAAC;AAIxB,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
import { getSystemUser } from './auth/index.js';
|
|
2
2
|
import { MJEvent, MJEventType, MJGlobal } from '@memberjunction/global';
|
|
3
3
|
export class ProviderInfo {
|
|
4
|
-
provider;
|
|
5
|
-
type;
|
|
6
4
|
}
|
|
7
5
|
export class DataSourceInfo {
|
|
8
|
-
dataSource;
|
|
9
|
-
host;
|
|
10
|
-
port;
|
|
11
|
-
instance;
|
|
12
|
-
database;
|
|
13
|
-
userName;
|
|
14
|
-
type;
|
|
15
6
|
constructor(init) {
|
|
16
7
|
this.dataSource = init.dataSource;
|
|
17
8
|
this.host = init.host;
|
|
@@ -23,10 +14,6 @@ export class DataSourceInfo {
|
|
|
23
14
|
}
|
|
24
15
|
;
|
|
25
16
|
export class MJServerEvent {
|
|
26
|
-
type;
|
|
27
|
-
dataSources;
|
|
28
|
-
userPayload;
|
|
29
|
-
systemUser;
|
|
30
17
|
}
|
|
31
18
|
export const MJ_SERVER_EVENT_CODE = 'MJ_SERVER_EVENT';
|
|
32
19
|
export async function raiseEvent(type, dataSources, userPayload, component) {
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAmCxE,MAAM,OAAO,YAAY;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAmCxE,MAAM,OAAO,YAAY;CAGxB;AAED,MAAM,OAAO,cAAc;IASzB,YAAY,IAA4J;QACtK,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;CACF;AAAA,CAAC;AA6BF,MAAM,OAAO,aAAa;CAKzB;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAA2B,EAAE,WAA6B,EAAE,WAAwB,EAAE,SAAe;IACpI,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,KAAK,CAAC,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;IAEzC,MAAM,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;IAC1B,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC;IACjB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,cAAc,CAAC;IACvC,GAAG,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC"}
|
package/dist/util.d.ts
CHANGED
|
@@ -1,22 +1,58 @@
|
|
|
1
|
-
import { DataSourceInfo, ProviderInfo } from './types';
|
|
1
|
+
import { DataSourceInfo, ProviderInfo } from './types.js';
|
|
2
2
|
import sql from 'mssql';
|
|
3
3
|
import { DatabaseProviderBase } from '@memberjunction/core';
|
|
4
4
|
type StreamCallback = (jsonObject: any) => void;
|
|
5
|
+
/**
|
|
6
|
+
* Utility function to handle HTTP/HTTPS requests with optional compression, custom headers, and streaming response callback for JSON objects.
|
|
7
|
+
* This function accumulates data chunks and parses complete JSON objects, assuming newline-delimited JSON in the stream.
|
|
8
|
+
*
|
|
9
|
+
* @param {string} url - The URL to which the request is sent.
|
|
10
|
+
* @param {any} payload - The payload to be sent with the request.
|
|
11
|
+
* @param {boolean} useCompression - Flag to determine if payload compression should be used.
|
|
12
|
+
* @param {Record<string, string> | null} headers - Custom headers for the request. Can be null.
|
|
13
|
+
* @param {StreamCallback} [streamCallback] - Optional callback for handling streaming JSON objects.
|
|
14
|
+
* @returns {Promise<any[]>} - A promise that resolves to an array of all JSON objects received during the streaming process.
|
|
15
|
+
*/
|
|
5
16
|
export declare function sendPostRequest(url: string, payload: any, useCompression: boolean, headers: Record<string, string> | null, streamCallback?: StreamCallback): Promise<any[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Returns the read-only data source if it exists, otherwise returns the read-write data source if options is not provided or if options.allowFallbackToReadWrite is true.
|
|
19
|
+
* @param dataSources
|
|
20
|
+
* @param options
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
6
23
|
export declare function GetReadOnlyDataSource(dataSources: DataSourceInfo[], options?: {
|
|
7
24
|
allowFallbackToReadWrite: boolean;
|
|
8
25
|
}): sql.ConnectionPool & {
|
|
9
26
|
query: (sql: string, params?: any) => Promise<any[]>;
|
|
10
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* Returns the read-only provider if it exists, otherwise returns the original provider if options is not provided or if options.allowFallbackToReadWrite is true.
|
|
30
|
+
* @param options
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
11
33
|
export declare function GetReadOnlyProvider(providers: Array<ProviderInfo>, options?: {
|
|
12
34
|
allowFallbackToReadWrite: boolean;
|
|
13
35
|
}): DatabaseProviderBase;
|
|
36
|
+
/**
|
|
37
|
+
* Returns the read-write provider if it exists, otherwise returns the original provider if options is not provided or if options.allowFallbackToReadOnly is true.
|
|
38
|
+
* @param options
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
14
41
|
export declare function GetReadWriteProvider(providers: Array<ProviderInfo>, options?: {
|
|
15
42
|
allowFallbackToReadOnly: boolean;
|
|
16
43
|
}): DatabaseProviderBase;
|
|
44
|
+
/**
|
|
45
|
+
* Returns the read-write data source if it exists, otherwise throws an error.
|
|
46
|
+
* @param dataSources
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
17
49
|
export declare function GetReadWriteDataSource(dataSources: DataSourceInfo[]): sql.ConnectionPool & {
|
|
18
50
|
query: (sql: string, params?: any) => Promise<any[]>;
|
|
19
51
|
};
|
|
52
|
+
/**
|
|
53
|
+
* Extends a ConnectionPool with a query method that returns results in the format expected by generated code
|
|
54
|
+
* This provides backwards compatibility with code that expects TypeORM-style query results
|
|
55
|
+
*/
|
|
20
56
|
export declare function extendConnectionPoolWithQuery(pool: sql.ConnectionPool): sql.ConnectionPool & {
|
|
21
57
|
query: (sql: string, params?: any) => Promise<any[]>;
|
|
22
58
|
};
|
package/dist/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAuHjL;AAGC;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,EAAE;IAAC,wBAAwB,EAAE,OAAO,CAAA;CAAC,GAAG,GAAG,CAAC,cAAc,GAAG;IAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;CAAE,CAcjM;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,EAAE;IAAC,wBAAwB,EAAE,OAAO,CAAA;CAAC,GAAG,oBAAoB,CAcvI;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,EAAE;IAAC,uBAAuB,EAAE,OAAO,CAAA;CAAC,GAAG,oBAAoB,CAcvI;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,cAAc,GAAG;IAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;CAAE,CAMnJ;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,GAAG;IAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;CAAE,CAmBrJ"}
|
package/dist/util.js
CHANGED
|
@@ -6,6 +6,17 @@ import { URL } from 'url';
|
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
import sql from 'mssql';
|
|
8
8
|
const gzip = promisify(gzipCallback);
|
|
9
|
+
/**
|
|
10
|
+
* Utility function to handle HTTP/HTTPS requests with optional compression, custom headers, and streaming response callback for JSON objects.
|
|
11
|
+
* This function accumulates data chunks and parses complete JSON objects, assuming newline-delimited JSON in the stream.
|
|
12
|
+
*
|
|
13
|
+
* @param {string} url - The URL to which the request is sent.
|
|
14
|
+
* @param {any} payload - The payload to be sent with the request.
|
|
15
|
+
* @param {boolean} useCompression - Flag to determine if payload compression should be used.
|
|
16
|
+
* @param {Record<string, string> | null} headers - Custom headers for the request. Can be null.
|
|
17
|
+
* @param {StreamCallback} [streamCallback] - Optional callback for handling streaming JSON objects.
|
|
18
|
+
* @returns {Promise<any[]>} - A promise that resolves to an array of all JSON objects received during the streaming process.
|
|
19
|
+
*/
|
|
9
20
|
export async function sendPostRequest(url, payload, useCompression, headers, streamCallback) {
|
|
10
21
|
return new Promise(async (resolve, reject) => {
|
|
11
22
|
try {
|
|
@@ -14,7 +25,7 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
14
25
|
if (useCompression) {
|
|
15
26
|
try {
|
|
16
27
|
data = await gzip(Buffer.from(JSON.stringify(payload)));
|
|
17
|
-
headers = headers || {};
|
|
28
|
+
headers = headers || {}; // Ensure headers is an object
|
|
18
29
|
headers['Content-Encoding'] = 'gzip';
|
|
19
30
|
}
|
|
20
31
|
catch (error) {
|
|
@@ -45,8 +56,9 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
45
56
|
let streamEnded = false;
|
|
46
57
|
const handleStreamEnd = () => {
|
|
47
58
|
if (streamEnded)
|
|
48
|
-
return;
|
|
59
|
+
return; // Prevent double-resolution
|
|
49
60
|
streamEnded = true;
|
|
61
|
+
// Attempt to parse any remaining data in buffer in case it's a complete JSON object
|
|
50
62
|
if (buffer.trim()) {
|
|
51
63
|
try {
|
|
52
64
|
const jsonObject = JSON.parse(buffer.trim());
|
|
@@ -55,6 +67,7 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
55
67
|
}
|
|
56
68
|
catch (e) {
|
|
57
69
|
const err = z.object({ message: z.string() }).safeParse(e);
|
|
70
|
+
// Handle JSON parse error for the last chunk
|
|
58
71
|
console.warn(`Error in postRequest().stream(end) while parsing JSON object: ${err.success ? err.data.message : e}`);
|
|
59
72
|
}
|
|
60
73
|
}
|
|
@@ -73,17 +86,20 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
73
86
|
}
|
|
74
87
|
catch (e) {
|
|
75
88
|
const err = z.object({ message: z.string() }).safeParse(e);
|
|
89
|
+
// Handle JSON parse error for cases of malformed JSON objects
|
|
76
90
|
console.warn(`Error in postRequest().stream(data) while parsing JSON object: ${err.success ? err.data.message : e}`);
|
|
77
91
|
}
|
|
78
92
|
}
|
|
79
93
|
});
|
|
80
94
|
stream.on('end', handleStreamEnd);
|
|
95
|
+
// Handle premature connection close (e.g., server crashes mid-response)
|
|
81
96
|
stream.on('close', () => {
|
|
82
97
|
if (!streamEnded) {
|
|
83
98
|
console.warn(`Stream closed prematurely for ${url}`);
|
|
84
99
|
handleStreamEnd();
|
|
85
100
|
}
|
|
86
101
|
});
|
|
102
|
+
// Handle stream errors (decompression failures, etc.)
|
|
87
103
|
stream.on('error', (e) => {
|
|
88
104
|
if (!streamEnded) {
|
|
89
105
|
console.error(`Stream error for ${url}:`, e);
|
|
@@ -95,7 +111,9 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
95
111
|
const err = z.object({ message: z.string() }).safeParse(e);
|
|
96
112
|
const errorMessage = err.success ? err.data.message : String(e);
|
|
97
113
|
console.error(`Error in sendPostRequest().req.on(error) for ${hostname}:${port}${pathname}: ${errorMessage}`);
|
|
114
|
+
// Create a more informative error for the rejection
|
|
98
115
|
const contextualError = new Error(`HTTP request failed to ${url}: ${errorMessage}`);
|
|
116
|
+
// Preserve the original error as the cause
|
|
99
117
|
if (e instanceof Error) {
|
|
100
118
|
contextualError.cause = e;
|
|
101
119
|
}
|
|
@@ -111,12 +129,20 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
111
129
|
}
|
|
112
130
|
});
|
|
113
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* Returns the read-only data source if it exists, otherwise returns the read-write data source if options is not provided or if options.allowFallbackToReadWrite is true.
|
|
134
|
+
* @param dataSources
|
|
135
|
+
* @param options
|
|
136
|
+
* @returns
|
|
137
|
+
*/
|
|
114
138
|
export function GetReadOnlyDataSource(dataSources, options) {
|
|
115
139
|
const readOnlyDataSource = dataSources.find((ds) => ds.type === 'Read-Only');
|
|
116
140
|
if (readOnlyDataSource) {
|
|
117
141
|
return extendConnectionPoolWithQuery(readOnlyDataSource.dataSource);
|
|
118
142
|
}
|
|
119
143
|
else if (!options || options.allowFallbackToReadWrite) {
|
|
144
|
+
// default behavior for backward compatibility prior to MJ 2.22.3 where we introduced this functionality was to have a single
|
|
145
|
+
// connection, so for back-compatability, if we don't have a read-only data source, we'll fall back to the read-write data source
|
|
120
146
|
const readWriteDataSource = dataSources.find((ds) => ds.type === 'Read-Write');
|
|
121
147
|
if (readWriteDataSource) {
|
|
122
148
|
return extendConnectionPoolWithQuery(readWriteDataSource.dataSource);
|
|
@@ -124,34 +150,49 @@ export function GetReadOnlyDataSource(dataSources, options) {
|
|
|
124
150
|
}
|
|
125
151
|
throw new Error('No suitable data source found');
|
|
126
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Returns the read-only provider if it exists, otherwise returns the original provider if options is not provided or if options.allowFallbackToReadWrite is true.
|
|
155
|
+
* @param options
|
|
156
|
+
* @returns
|
|
157
|
+
*/
|
|
127
158
|
export function GetReadOnlyProvider(providers, options) {
|
|
128
159
|
if (!providers || providers.length === 0)
|
|
129
|
-
return null;
|
|
160
|
+
return null; // no providers available
|
|
130
161
|
const readOnlyProvider = providers.find((p) => p.type === 'Read-Only');
|
|
131
162
|
if (readOnlyProvider) {
|
|
132
163
|
return readOnlyProvider.provider;
|
|
133
164
|
}
|
|
134
165
|
else if (options?.allowFallbackToReadWrite) {
|
|
135
|
-
return providers[0].provider;
|
|
166
|
+
return providers[0].provider; // if no read-only provider is provided, use the original provider since we are allowed to fallback to read-write
|
|
136
167
|
}
|
|
137
168
|
else {
|
|
138
|
-
return null;
|
|
169
|
+
return null; // no read only provider available and we are not allowed to fallback to read-write
|
|
139
170
|
}
|
|
140
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Returns the read-write provider if it exists, otherwise returns the original provider if options is not provided or if options.allowFallbackToReadOnly is true.
|
|
174
|
+
* @param options
|
|
175
|
+
* @returns
|
|
176
|
+
*/
|
|
141
177
|
export function GetReadWriteProvider(providers, options) {
|
|
142
178
|
if (!providers || providers.length === 0)
|
|
143
|
-
return null;
|
|
179
|
+
return null; // no providers available
|
|
144
180
|
const readWriteProvider = providers.find((p) => p.type === 'Read-Write');
|
|
145
181
|
if (readWriteProvider) {
|
|
146
182
|
return readWriteProvider.provider;
|
|
147
183
|
}
|
|
148
184
|
else if (options?.allowFallbackToReadOnly) {
|
|
149
|
-
return GetReadOnlyProvider(providers, { allowFallbackToReadWrite: false });
|
|
185
|
+
return GetReadOnlyProvider(providers, { allowFallbackToReadWrite: false }); // if no read-write provider is provided, use the read-only provider since we are allowed to fallback to read-only
|
|
150
186
|
}
|
|
151
187
|
else {
|
|
152
|
-
return null;
|
|
188
|
+
return null; // no read-write provider available and we are not allowed to fallback to read-only
|
|
153
189
|
}
|
|
154
190
|
}
|
|
191
|
+
/**
|
|
192
|
+
* Returns the read-write data source if it exists, otherwise throws an error.
|
|
193
|
+
* @param dataSources
|
|
194
|
+
* @returns
|
|
195
|
+
*/
|
|
155
196
|
export function GetReadWriteDataSource(dataSources) {
|
|
156
197
|
const readWriteDataSource = dataSources.find((ds) => ds.type === 'Read-Write');
|
|
157
198
|
if (readWriteDataSource) {
|
|
@@ -159,15 +200,21 @@ export function GetReadWriteDataSource(dataSources) {
|
|
|
159
200
|
}
|
|
160
201
|
throw new Error('No suitable read-write data source found');
|
|
161
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* Extends a ConnectionPool with a query method that returns results in the format expected by generated code
|
|
205
|
+
* This provides backwards compatibility with code that expects TypeORM-style query results
|
|
206
|
+
*/
|
|
162
207
|
export function extendConnectionPoolWithQuery(pool) {
|
|
163
208
|
const extendedPool = pool;
|
|
164
209
|
extendedPool.query = async (sqlQuery, parameters) => {
|
|
165
210
|
const request = new sql.Request(pool);
|
|
211
|
+
// Add parameters if provided
|
|
166
212
|
if (parameters) {
|
|
167
213
|
if (Array.isArray(parameters)) {
|
|
168
214
|
parameters.forEach((value, index) => {
|
|
169
215
|
request.input(`p${index}`, value);
|
|
170
216
|
});
|
|
217
|
+
// Replace ? with @p0, @p1, etc. in the query
|
|
171
218
|
let paramIndex = 0;
|
|
172
219
|
sqlQuery = sqlQuery.replace(/\?/g, () => `@p${paramIndex++}`);
|
|
173
220
|
}
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,GAAG,MAAM,OAAO,CAAC;AAGxB,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/server",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.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",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
".": "./dist/index.js"
|
|
16
16
|
},
|
|
17
17
|
"scripts": {
|
|
18
|
-
"build": "tsc",
|
|
18
|
+
"build": "tsc && tsc-alias -f",
|
|
19
19
|
"bundle": "tsc -noEmit && pkgroll --sourcemap --minify",
|
|
20
20
|
"watch": "tsc -w",
|
|
21
21
|
"test": "node --experimental-vm-modules node_modules/jest/bin/jest.js",
|
|
@@ -25,91 +25,93 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@apollo/server": "^4.9.1",
|
|
27
27
|
"@graphql-tools/schema": "latest",
|
|
28
|
-
"@graphql-tools/utils": "^
|
|
29
|
-
"@memberjunction/actions": "
|
|
30
|
-
"@memberjunction/actions-apollo": "
|
|
31
|
-
"@memberjunction/actions-bizapps-accounting": "
|
|
32
|
-
"@memberjunction/actions-bizapps-crm": "
|
|
33
|
-
"@memberjunction/actions-bizapps-formbuilders": "
|
|
34
|
-
"@memberjunction/actions-bizapps-lms": "
|
|
35
|
-
"@memberjunction/actions-bizapps-social": "
|
|
36
|
-
"@memberjunction/ai": "
|
|
37
|
-
"@memberjunction/ai-
|
|
38
|
-
"@memberjunction/ai-agent-manager
|
|
39
|
-
"@memberjunction/ai-
|
|
40
|
-
"@memberjunction/ai-
|
|
41
|
-
"@memberjunction/ai-
|
|
42
|
-
"@memberjunction/ai-
|
|
43
|
-
"@memberjunction/ai-
|
|
44
|
-
"@memberjunction/
|
|
45
|
-
"@memberjunction/
|
|
46
|
-
"@memberjunction/communication-
|
|
47
|
-
"@memberjunction/
|
|
48
|
-
"@memberjunction/
|
|
49
|
-
"@memberjunction/
|
|
50
|
-
"@memberjunction/core
|
|
51
|
-
"@memberjunction/core-
|
|
52
|
-
"@memberjunction/core-entities
|
|
53
|
-
"@memberjunction/
|
|
54
|
-
"@memberjunction/data-context
|
|
55
|
-
"@memberjunction/
|
|
56
|
-
"@memberjunction/
|
|
57
|
-
"@memberjunction/
|
|
58
|
-
"@memberjunction/
|
|
59
|
-
"@memberjunction/
|
|
60
|
-
"@memberjunction/
|
|
61
|
-
"@memberjunction/
|
|
62
|
-
"@memberjunction/
|
|
63
|
-
"@memberjunction/
|
|
64
|
-
"@memberjunction/
|
|
65
|
-
"@memberjunction/
|
|
66
|
-
"@memberjunction/scheduling-
|
|
67
|
-
"@memberjunction/scheduling-
|
|
68
|
-
"@memberjunction/scheduling-engine
|
|
69
|
-
"@memberjunction/
|
|
70
|
-
"@memberjunction/
|
|
71
|
-
"@memberjunction/
|
|
72
|
-
"@memberjunction/
|
|
73
|
-
"@memberjunction/
|
|
74
|
-
"@
|
|
75
|
-
"@
|
|
76
|
-
"@types/
|
|
77
|
-
"@types/
|
|
78
|
-
"@types/
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"
|
|
28
|
+
"@graphql-tools/utils": "^11.0.0",
|
|
29
|
+
"@memberjunction/actions": "4.0.0",
|
|
30
|
+
"@memberjunction/actions-apollo": "4.0.0",
|
|
31
|
+
"@memberjunction/actions-bizapps-accounting": "4.0.0",
|
|
32
|
+
"@memberjunction/actions-bizapps-crm": "4.0.0",
|
|
33
|
+
"@memberjunction/actions-bizapps-formbuilders": "4.0.0",
|
|
34
|
+
"@memberjunction/actions-bizapps-lms": "4.0.0",
|
|
35
|
+
"@memberjunction/actions-bizapps-social": "4.0.0",
|
|
36
|
+
"@memberjunction/ai": "4.0.0",
|
|
37
|
+
"@memberjunction/ai-mcp-client": "4.0.0",
|
|
38
|
+
"@memberjunction/ai-agent-manager": "4.0.0",
|
|
39
|
+
"@memberjunction/ai-agent-manager-actions": "4.0.0",
|
|
40
|
+
"@memberjunction/ai-agents": "4.0.0",
|
|
41
|
+
"@memberjunction/ai-core-plus": "4.0.0",
|
|
42
|
+
"@memberjunction/ai-prompts": "4.0.0",
|
|
43
|
+
"@memberjunction/ai-provider-bundle": "4.0.0",
|
|
44
|
+
"@memberjunction/ai-vectors-pinecone": "4.0.0",
|
|
45
|
+
"@memberjunction/aiengine": "4.0.0",
|
|
46
|
+
"@memberjunction/communication-ms-graph": "4.0.0",
|
|
47
|
+
"@memberjunction/communication-sendgrid": "4.0.0",
|
|
48
|
+
"@memberjunction/component-registry-client-sdk": "4.0.0",
|
|
49
|
+
"@memberjunction/config": "4.0.0",
|
|
50
|
+
"@memberjunction/core": "4.0.0",
|
|
51
|
+
"@memberjunction/core-actions": "4.0.0",
|
|
52
|
+
"@memberjunction/core-entities": "4.0.0",
|
|
53
|
+
"@memberjunction/core-entities-server": "4.0.0",
|
|
54
|
+
"@memberjunction/data-context": "4.0.0",
|
|
55
|
+
"@memberjunction/data-context-server": "4.0.0",
|
|
56
|
+
"@memberjunction/doc-utils": "4.0.0",
|
|
57
|
+
"@memberjunction/api-keys": "4.0.0",
|
|
58
|
+
"@memberjunction/encryption": "4.0.0",
|
|
59
|
+
"@memberjunction/entity-communications-server": "4.0.0",
|
|
60
|
+
"@memberjunction/external-change-detection": "4.0.0",
|
|
61
|
+
"@memberjunction/global": "4.0.0",
|
|
62
|
+
"@memberjunction/graphql-dataprovider": "4.0.0",
|
|
63
|
+
"@memberjunction/interactive-component-types": "4.0.0",
|
|
64
|
+
"@memberjunction/notifications": "4.0.0",
|
|
65
|
+
"@memberjunction/queue": "4.0.0",
|
|
66
|
+
"@memberjunction/scheduling-actions": "4.0.0",
|
|
67
|
+
"@memberjunction/scheduling-base-types": "4.0.0",
|
|
68
|
+
"@memberjunction/scheduling-engine": "4.0.0",
|
|
69
|
+
"@memberjunction/scheduling-engine-base": "4.0.0",
|
|
70
|
+
"@memberjunction/skip-types": "4.0.0",
|
|
71
|
+
"@memberjunction/sqlserver-dataprovider": "4.0.0",
|
|
72
|
+
"@memberjunction/storage": "4.0.0",
|
|
73
|
+
"@memberjunction/templates": "4.0.0",
|
|
74
|
+
"@memberjunction/testing-engine": "4.0.0",
|
|
75
|
+
"@memberjunction/version-history": "4.0.0",
|
|
76
|
+
"@types/compression": "^1.8.1",
|
|
77
|
+
"@types/cors": "^2.8.19",
|
|
78
|
+
"@types/jsonwebtoken": "9.0.10",
|
|
79
|
+
"@types/node": "24.10.11",
|
|
80
|
+
"@types/ws": "8.18.1",
|
|
81
|
+
"axios": "^1.13.4",
|
|
82
|
+
"body-parser": "^2.2.2",
|
|
83
|
+
"class-validator": "^0.14.3",
|
|
84
|
+
"cloudevents": "^10.0.0",
|
|
85
|
+
"compression": "^1.8.1",
|
|
86
|
+
"cors": "^2.8.6",
|
|
85
87
|
"cosmiconfig": "9.0.0",
|
|
86
|
-
"dotenv": "^
|
|
87
|
-
"express": "^5.1
|
|
88
|
-
"fast-glob": "^3.3.
|
|
89
|
-
"graphql": "^16.
|
|
90
|
-
"graphql-scalars": "^1.
|
|
88
|
+
"dotenv": "^17.2.4",
|
|
89
|
+
"express": "^5.2.1",
|
|
90
|
+
"fast-glob": "^3.3.3",
|
|
91
|
+
"graphql": "^16.12.0",
|
|
92
|
+
"graphql-scalars": "^1.25.0",
|
|
91
93
|
"graphql-subscriptions": "^2.0.0",
|
|
92
94
|
"graphql-type-json": "0.3.2",
|
|
93
95
|
"graphql-ws": "^5.14.0",
|
|
94
|
-
"jsonwebtoken": "9.0.
|
|
95
|
-
"jwks-rsa": "^3.
|
|
96
|
-
"lru-cache": "^
|
|
97
|
-
"mssql": "^
|
|
96
|
+
"jsonwebtoken": "9.0.3",
|
|
97
|
+
"jwks-rsa": "^3.2.2",
|
|
98
|
+
"lru-cache": "^11.2.5",
|
|
99
|
+
"mssql": "^12.2.0",
|
|
98
100
|
"reflect-metadata": "0.2.2",
|
|
99
|
-
"rxjs": "^7.8.
|
|
101
|
+
"rxjs": "^7.8.2",
|
|
100
102
|
"type-graphql": "2.0.0-beta.3",
|
|
101
103
|
"typedi": "^0.10.0",
|
|
102
|
-
"uuid": "^
|
|
103
|
-
"ws": "^8.
|
|
104
|
-
"zod": "
|
|
104
|
+
"uuid": "^13.0.0",
|
|
105
|
+
"ws": "^8.19.0",
|
|
106
|
+
"zod": "~3.24.4"
|
|
105
107
|
},
|
|
106
108
|
"devDependencies": {
|
|
107
109
|
"@jest/globals": "^30.2.0",
|
|
108
|
-
"@types/jest": "^
|
|
109
|
-
"jest": "^
|
|
110
|
-
"pkgroll": "2.
|
|
111
|
-
"ts-jest": "^29.
|
|
112
|
-
"typescript": "^5.
|
|
110
|
+
"@types/jest": "^30.0.0",
|
|
111
|
+
"jest": "^30.2.0",
|
|
112
|
+
"pkgroll": "2.23.0",
|
|
113
|
+
"ts-jest": "^29.4.6",
|
|
114
|
+
"typescript": "^5.9.3"
|
|
113
115
|
},
|
|
114
116
|
"repository": {
|
|
115
117
|
"type": "git",
|
|
@@ -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
|
*/
|
|
@@ -74,8 +74,4 @@ export class ExampleNewUserSubClass extends NewUserBase {
|
|
|
74
74
|
return undefined;
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
export function LoadExampleNewUserSubClass() {
|
|
80
|
-
// do nothing, just having this forces the above class to get registered via its @RegisterClass decorator
|
|
81
|
-
}
|
|
77
|
+
}
|
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:
|
|
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
|
|