@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/auth/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAGzE,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAsB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAOpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,cAAc,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAGzE,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAsB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAOpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AAkCrC;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAY7F,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAWlF,CAAC;AAEH,qBAAa,WAAW;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,MAAM,QAAQ,SAAS,EAAE,IAAI,kBAAkB,SAmB3F,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,GAAI,SAAS,UAAU,KAAG;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAiC5B,CAAC;AAEF,eAAO,MAAM,aAAa,GAAU,aAAa,GAAG,CAAC,cAAc,EAAE,6BAA4B,OAAc,KAAG,OAAO,CAAC,QAAQ,CAYjI,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,MAAM,EACd,YAAY,MAAM,EAClB,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,aAAa,GAAG,CAAC,cAAc,EAC/B,6BAA4B,OAAc,KACzC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAyE9B,CAAC"}
|
package/dist/auth/index.js
CHANGED
|
@@ -8,6 +8,7 @@ import { initializeAuthProviders } from './initializeProviders.js';
|
|
|
8
8
|
export { TokenExpiredError } from './tokenExpiredError.js';
|
|
9
9
|
export { AuthProviderFactory } from './AuthProviderFactory.js';
|
|
10
10
|
export * from './APIKeyScopeAuth.js';
|
|
11
|
+
// This is a hard-coded forever constant due to internal migrations
|
|
11
12
|
class MissingAuthError extends Error {
|
|
12
13
|
constructor() {
|
|
13
14
|
super('No authentication providers configured. Please configure at least one auth provider in mj.config.cjs');
|
|
@@ -19,6 +20,8 @@ const refreshUserCache = async (dataSource) => {
|
|
|
19
20
|
await UserCache.Instance.Refresh(dataSource);
|
|
20
21
|
const endTime = Date.now();
|
|
21
22
|
const elapsed = endTime - startTime;
|
|
23
|
+
// if elapsed time is less than the delay setting, wait for the additional time to achieve the full delay
|
|
24
|
+
// the below also makes sure we never go more than a 30 second total delay
|
|
22
25
|
const delay = configInfo.userHandling.updateCacheWhenNotFoundDelay
|
|
23
26
|
? configInfo.userHandling.updateCacheWhenNotFoundDelay < 30000
|
|
24
27
|
? configInfo.userHandling.updateCacheWhenNotFoundDelay
|
|
@@ -30,6 +33,10 @@ const refreshUserCache = async (dataSource) => {
|
|
|
30
33
|
const finalElapsed = finalTime - startTime;
|
|
31
34
|
console.log(` UserCache updated in ${elapsed}ms, total elapsed time of ${finalElapsed}ms including delay of ${delay}ms (if needed). Attempting to find the user again via recursive call`);
|
|
32
35
|
};
|
|
36
|
+
/**
|
|
37
|
+
* Gets validation options for a specific issuer
|
|
38
|
+
* This maintains backward compatibility with the old structure
|
|
39
|
+
*/
|
|
33
40
|
export const getValidationOptions = (issuer) => {
|
|
34
41
|
const factory = AuthProviderFactory.getInstance();
|
|
35
42
|
const provider = factory.getByIssuer(issuer);
|
|
@@ -41,6 +48,10 @@ export const getValidationOptions = (issuer) => {
|
|
|
41
48
|
jwksUri: provider.jwksUri
|
|
42
49
|
};
|
|
43
50
|
};
|
|
51
|
+
/**
|
|
52
|
+
* Backward compatible validationOptions object
|
|
53
|
+
* @deprecated Use getValidationOptions() or AuthProviderRegistry instead
|
|
54
|
+
*/
|
|
44
55
|
export const validationOptions = new Proxy({}, {
|
|
45
56
|
get: (target, prop) => {
|
|
46
57
|
return getValidationOptions(prop);
|
|
@@ -54,32 +65,19 @@ export const validationOptions = new Proxy({}, {
|
|
|
54
65
|
}
|
|
55
66
|
});
|
|
56
67
|
export class UserPayload {
|
|
57
|
-
aio;
|
|
58
|
-
aud;
|
|
59
|
-
exp;
|
|
60
|
-
iat;
|
|
61
|
-
iss;
|
|
62
|
-
name;
|
|
63
|
-
nbf;
|
|
64
|
-
nonce;
|
|
65
|
-
oid;
|
|
66
|
-
preferred_username;
|
|
67
|
-
rh;
|
|
68
|
-
sub;
|
|
69
|
-
tid;
|
|
70
|
-
uti;
|
|
71
|
-
ver;
|
|
72
|
-
email;
|
|
73
|
-
given_name;
|
|
74
|
-
family_name;
|
|
75
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Gets signing keys for JWT validation
|
|
71
|
+
*/
|
|
76
72
|
export const getSigningKeys = (issuer) => (header, cb) => {
|
|
77
73
|
const factory = AuthProviderFactory.getInstance();
|
|
74
|
+
// Initialize providers if not already done
|
|
78
75
|
if (!factory.hasProviders()) {
|
|
79
76
|
initializeAuthProviders();
|
|
80
77
|
}
|
|
81
78
|
const provider = factory.getByIssuer(issuer);
|
|
82
79
|
if (!provider) {
|
|
80
|
+
// Check if we have any providers at all
|
|
83
81
|
if (!factory.hasProviders()) {
|
|
84
82
|
throw new MissingAuthError();
|
|
85
83
|
}
|
|
@@ -87,10 +85,14 @@ export const getSigningKeys = (issuer) => (header, cb) => {
|
|
|
87
85
|
}
|
|
88
86
|
provider.getSigningKey(header, cb);
|
|
89
87
|
};
|
|
88
|
+
/**
|
|
89
|
+
* Extracts user information from JWT payload using the appropriate provider
|
|
90
|
+
*/
|
|
90
91
|
export const extractUserInfoFromPayload = (payload) => {
|
|
91
92
|
const factory = AuthProviderFactory.getInstance();
|
|
92
93
|
const issuer = payload.iss;
|
|
93
94
|
if (!issuer) {
|
|
95
|
+
// Fallback to default extraction
|
|
94
96
|
const preferredUsername = payload.preferred_username;
|
|
95
97
|
return {
|
|
96
98
|
email: payload.email || preferredUsername,
|
|
@@ -102,6 +104,7 @@ export const extractUserInfoFromPayload = (payload) => {
|
|
|
102
104
|
}
|
|
103
105
|
const provider = factory.getByIssuer(issuer);
|
|
104
106
|
if (!provider) {
|
|
107
|
+
// Fallback to default extraction
|
|
105
108
|
const fullName = payload.name;
|
|
106
109
|
const preferredUsername = payload.preferred_username;
|
|
107
110
|
return {
|
|
@@ -120,7 +123,7 @@ export const getSystemUser = async (dataSource, attemptCacheUpdateIfNeeded = tru
|
|
|
120
123
|
if (dataSource && attemptCacheUpdateIfNeeded) {
|
|
121
124
|
console.warn(`System user not found in cache. Updating cache in attempt to find the user...`);
|
|
122
125
|
await refreshUserCache(dataSource);
|
|
123
|
-
return getSystemUser(dataSource, false);
|
|
126
|
+
return getSystemUser(dataSource, false); // try one more time but do not update cache next time if not found
|
|
124
127
|
}
|
|
125
128
|
throw new Error(`System user ID '${UserCache.Instance.SYSTEM_USER_ID}' not found in database`);
|
|
126
129
|
}
|
|
@@ -131,6 +134,8 @@ export const verifyUserRecord = async (email, firstName, lastName, requestDomain
|
|
|
131
134
|
return undefined;
|
|
132
135
|
let user = UserCache.Instance.Users.find((u) => {
|
|
133
136
|
if (!u.Email || u.Email.trim() === '') {
|
|
137
|
+
// this condition should never occur. If it doesn throw a console error including the user id
|
|
138
|
+
// DB requires non-null but this is just an extra check and we could in theory have a blank string in the DB
|
|
134
139
|
console.error(`SYSTEM METADATA ISSUE: User ${u.ID} has no email address`);
|
|
135
140
|
return false;
|
|
136
141
|
}
|
|
@@ -142,19 +147,25 @@ export const verifyUserRecord = async (email, firstName, lastName, requestDomain
|
|
|
142
147
|
firstName &&
|
|
143
148
|
lastName &&
|
|
144
149
|
(requestDomain || configInfo.userHandling.newUserLimitedToAuthorizedDomains === false)) {
|
|
150
|
+
// check to see if the domain that we have a request coming in from matches one of the domains in the autoCreateNewUsersDomains setting
|
|
145
151
|
let passesDomainCheck = configInfo.userHandling.newUserLimitedToAuthorizedDomains ===
|
|
146
|
-
false;
|
|
152
|
+
false; /*in this first condition, we are set up to NOT care about domain */
|
|
147
153
|
if (!passesDomainCheck && requestDomain) {
|
|
154
|
+
/*in this second condition, we check the domain against authorized domains*/
|
|
148
155
|
passesDomainCheck = configInfo.userHandling.newUserAuthorizedDomains.some((pattern) => {
|
|
156
|
+
// Convert wildcard domain patterns to regular expressions
|
|
149
157
|
const regex = new RegExp('^' + pattern.toLowerCase().trim().replace(/\./g, '\\.').replace(/\*/g, '.*') + '$');
|
|
150
158
|
return regex.test(requestDomain?.toLowerCase().trim());
|
|
151
159
|
});
|
|
152
160
|
}
|
|
153
161
|
if (passesDomainCheck) {
|
|
162
|
+
// we have a domain from the request that matches one of the domains provided by the configuration, so we will create a new user
|
|
154
163
|
console.warn(`User ${email} not found in cache. Attempting to create a new user...`);
|
|
155
|
-
const newUserCreator = MJGlobal.Instance.ClassFactory.CreateInstance(NewUserBase);
|
|
164
|
+
const newUserCreator = MJGlobal.Instance.ClassFactory.CreateInstance(NewUserBase); // this will create the object that handles creating the new user for us
|
|
156
165
|
const newUser = await newUserCreator.createNewUser(firstName, lastName, email);
|
|
157
166
|
if (newUser) {
|
|
167
|
+
// new user worked! we already have the stuff we need for the cache, so no need to go to the DB now, just create a new UserInfo object and use the return value from the createNewUser method
|
|
168
|
+
// to init it, including passing in the role list for the user.
|
|
158
169
|
const md = new Metadata();
|
|
159
170
|
const initData = newUser.GetAll();
|
|
160
171
|
initData.UserRoles = configInfo.userHandling.newUserRoles.map((role) => {
|
|
@@ -172,12 +183,14 @@ export const verifyUserRecord = async (email, firstName, lastName, requestDomain
|
|
|
172
183
|
}
|
|
173
184
|
}
|
|
174
185
|
if (!user && configInfo.userHandling.updateCacheWhenNotFound && dataSource && attemptCacheUpdateIfNeeded) {
|
|
186
|
+
// if we get here that means in the above, if we were attempting to create a new user, it did not work, or it wasn't attempted and we have a config that asks us to auto update the cache
|
|
175
187
|
console.warn(`User ${email} not found in cache. Updating cache in attempt to find the user...`);
|
|
176
188
|
await refreshUserCache(dataSource);
|
|
177
|
-
return verifyUserRecord(email, firstName, lastName, requestDomain, dataSource, false);
|
|
189
|
+
return verifyUserRecord(email, firstName, lastName, requestDomain, dataSource, false); // try one more time but do not update cache next time if not found
|
|
178
190
|
}
|
|
179
191
|
}
|
|
180
192
|
return user;
|
|
181
193
|
};
|
|
194
|
+
// Initialize providers on module load
|
|
182
195
|
initializeAuthProviders();
|
|
183
196
|
//# sourceMappingURL=index.js.map
|
package/dist/auth/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAY,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,cAAc,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAY,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AAErC,mEAAmE;AAEnE,MAAM,gBAAiB,SAAQ,KAAK;IAClC;QACE,KAAK,CAAC,sGAAsG,CAAC,CAAC;QAC9G,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,MAAM,gBAAgB,GAAG,KAAK,EAAE,UAA+B,EAAE,EAAE;IACjE,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,MAAM,OAAO,GAAW,OAAO,GAAG,SAAS,CAAC;IAE5C,yGAAyG;IACzG,0EAA0E;IAC1E,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,4BAA4B;QAChE,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,4BAA4B,GAAG,KAAK;YAC5D,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,4BAA4B;YACtD,CAAC,CAAC,KAAK;QACT,CAAC,CAAC,CAAC,CAAC;IACN,IAAI,OAAO,GAAG,KAAK;QAAE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC;IAE1F,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,YAAY,GAAW,SAAS,GAAG,SAAS,CAAC;IAEnD,OAAO,CAAC,GAAG,CACT,2BAA2B,OAAO,6BAA6B,YAAY,yBAAyB,KAAK,sEAAsE,CAChL,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAqD,EAAE;IACxG,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;KAC1B,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA0D,IAAI,KAAK,CAAC,EAAE,EAAE;IACpG,GAAG,EAAE,CAAC,MAAM,EAAE,IAAY,EAAE,EAAE;QAC5B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,GAAG,EAAE,CAAC,MAAM,EAAE,IAAY,EAAE,EAAE;QAC5B,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;IAClD,CAAC;IACD,OAAO,EAAE,GAAG,EAAE;QACZ,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;QAClD,OAAO,OAAO,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,OAAO,WAAW;CAoBvB;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,MAAiB,EAAE,EAAsB,EAAE,EAAE;IAC9F,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;IAElD,2CAA2C;IAC3C,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAC5B,uBAAuB,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,wCAAwC;QACxC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,EAAE,CAAC;QAC/B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,MAAM,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAmB,EAM5D,EAAE;IACF,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAE3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,iCAAiC;QACjC,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAwC,CAAC;QAC3E,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,KAA2B,IAAI,iBAAiB;YAC/D,SAAS,EAAE,OAAO,CAAC,UAAgC;YACnD,QAAQ,EAAE,OAAO,CAAC,WAAiC;YACnD,QAAQ,EAAE,OAAO,CAAC,IAA0B;YAC5C,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,iCAAiC;QACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAA0B,CAAC;QACpD,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAwC,CAAC;QAC3E,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,KAA2B,IAAI,iBAAiB;YAC/D,SAAS,EAAE,OAAO,CAAC,UAAgC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9E,QAAQ,EAAE,OAAO,CAAC,WAAiC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzG,QAAQ;YACR,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,UAA+B,EAAE,6BAAsC,IAAI,EAAqB,EAAE;IACpI,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACtD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,IAAI,UAAU,IAAI,0BAA0B,EAAE,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAE9F,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACnC,OAAO,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,mEAAmE;QAC9G,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,CAAC,QAAQ,CAAC,cAAc,yBAAyB,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,KAAc,EACd,SAAkB,EAClB,QAAiB,EACjB,aAAsB,EACtB,UAA+B,EAC/B,6BAAsC,IAAI,EACX,EAAE;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAE7B,IAAI,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7C,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtC,6FAA6F;YAC7F,4GAA4G;YAC5G,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;YAC1E,OAAO,KAAK,CAAC;QACf,CAAC;;YAAM,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IACE,UAAU,CAAC,YAAY,CAAC,kBAAkB;YAC1C,SAAS;YACT,QAAQ;YACR,CAAC,aAAa,IAAI,UAAU,CAAC,YAAY,CAAC,iCAAiC,KAAK,KAAK,CAAC,EACtF,CAAC;YACD,uIAAuI;YACvI,IAAI,iBAAiB,GACnB,UAAU,CAAC,YAAY,CAAC,iCAAiC;gBACzD,KAAK,CAAC,CAAC,oEAAoE;YAC7E,IAAI,CAAC,iBAAiB,IAAI,aAAa,EAAE,CAAC;gBACxC,4EAA4E;gBAC5E,iBAAiB,GAAG,UAAU,CAAC,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;oBACpF,0DAA0D;oBAC1D,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;oBAC9G,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,iBAAiB,EAAE,CAAC;gBACtB,gIAAgI;gBAChI,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,yDAAyD,CAAC,CAAC;gBACrF,MAAM,cAAc,GAAgB,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAc,WAAW,CAAC,CAAC,CAAC,wEAAwE;gBACrL,MAAM,OAAO,GAAsB,MAAM,cAAc,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAClG,IAAI,OAAO,EAAE,CAAC;oBACZ,6LAA6L;oBAC7L,+DAA+D;oBAC/D,MAAM,EAAE,GAAa,IAAI,QAAQ,EAAE,CAAC;oBAEpC,MAAM,QAAQ,GAA2F,OAAO,CAAC,MAAM,EAAE,CAAC;oBAE1H,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBACrE,MAAM,QAAQ,GAAyB,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;wBAC7E,MAAM,MAAM,GAAW,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAEnD,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;oBACjE,CAAC,CAAC,CAAC;oBAEH,IAAI,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBACjD,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,mBAAmB,KAAK,wBAAwB,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CACV,QAAQ,KAAK,wCAAwC,aAAa,uNAAuN,CAC1R,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,YAAY,CAAC,uBAAuB,IAAI,UAAU,IAAI,0BAA0B,EAAE,CAAC;YACzG,yLAAyL;YACzL,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,oEAAoE,CAAC,CAAC;YAEhG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAEnC,OAAO,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,mEAAmE;QAC5J,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,sCAAsC;AACtC,uBAAuB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializeProviders.d.ts","sourceRoot":"","sources":["../../src/auth/initializeProviders.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"initializeProviders.d.ts","sourceRoot":"","sources":["../../src/auth/initializeProviders.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAuB9C"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { configInfo } from '../config.js';
|
|
2
2
|
import { LogError, LogStatus } from '@memberjunction/core';
|
|
3
3
|
import { AuthProviderFactory } from './AuthProviderFactory.js';
|
|
4
|
+
/**
|
|
5
|
+
* Initialize authentication providers from configuration
|
|
6
|
+
*/
|
|
4
7
|
export function initializeAuthProviders() {
|
|
5
8
|
const factory = AuthProviderFactory.getInstance();
|
|
9
|
+
// Clear any existing providers
|
|
6
10
|
factory.clear();
|
|
11
|
+
// Initialize providers from authProviders config
|
|
7
12
|
if (configInfo.authProviders && configInfo.authProviders.length > 0) {
|
|
8
13
|
for (const providerConfig of configInfo.authProviders) {
|
|
9
14
|
try {
|
|
@@ -16,6 +21,7 @@ export function initializeAuthProviders() {
|
|
|
16
21
|
}
|
|
17
22
|
}
|
|
18
23
|
}
|
|
24
|
+
// Validate we have at least one provider
|
|
19
25
|
if (!factory.hasProviders()) {
|
|
20
26
|
LogError('No authentication providers configured. Please configure authProviders array in mj.config.cjs');
|
|
21
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializeProviders.js","sourceRoot":"","sources":["../../src/auth/initializeProviders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAsB,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"initializeProviders.js","sourceRoot":"","sources":["../../src/auth/initializeProviders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAsB,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;IAElD,+BAA+B;IAC/B,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhB,iDAAiD;IACjD,IAAI,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,mBAAmB,CAAC,cAAc,CAAC,cAAoC,CAAC,CAAC;gBAC1F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC3B,SAAS,CAAC,6BAA6B,QAAQ,CAAC,IAAI,WAAW,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC;YACzF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,sCAAsC,cAAc,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAC5B,QAAQ,CAAC,+FAA+F,CAAC,CAAC;IAC5G,CAAC;AACH,CAAC"}
|
package/dist/auth/newUsers.js
CHANGED
|
@@ -18,7 +18,7 @@ export class NewUserBase {
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
const md = new Metadata();
|
|
21
|
-
const user = await md.GetEntityObject('Users', contextUser);
|
|
21
|
+
const user = await md.GetEntityObject('Users', contextUser); // To-Do - change this to be a different defined user for the user creation process
|
|
22
22
|
user.NewRecord();
|
|
23
23
|
user.Name = email;
|
|
24
24
|
user.IsActive = true;
|
|
@@ -39,6 +39,7 @@ export class NewUserBase {
|
|
|
39
39
|
return null;
|
|
40
40
|
}
|
|
41
41
|
if (configInfo.userHandling && configInfo.userHandling.newUserRoles) {
|
|
42
|
+
// user created, now create however many roles we need to create for this user based on the config settings
|
|
42
43
|
LogStatus(`User ${user.Email} created, assigning roles`);
|
|
43
44
|
for (const role of configInfo.userHandling.newUserRoles) {
|
|
44
45
|
const userRoleEntity = await md.GetEntityObject('User Roles', contextUser);
|
|
@@ -59,10 +60,15 @@ export class NewUserBase {
|
|
|
59
60
|
}
|
|
60
61
|
}
|
|
61
62
|
}
|
|
63
|
+
// Create UserApplication records if specified in the config
|
|
62
64
|
if (configInfo.userHandling && configInfo.userHandling.CreateUserApplicationRecords) {
|
|
63
65
|
LogStatus("Creating User Applications for new user: " + user.Name);
|
|
66
|
+
// Determine which applications to create UserApplication records for
|
|
67
|
+
// If UserApplications config array has entries, use those
|
|
68
|
+
// Otherwise, fall back to applications with DefaultForNewUser = true
|
|
64
69
|
let applicationsToCreate = [];
|
|
65
70
|
if (configInfo.userHandling.UserApplications && configInfo.userHandling.UserApplications.length > 0) {
|
|
71
|
+
// Use explicitly configured applications
|
|
66
72
|
for (const appName of configInfo.userHandling.UserApplications) {
|
|
67
73
|
const toLowerCase = appName.trim().toLocaleLowerCase();
|
|
68
74
|
const application = md.Applications.find(a => a.Name.trim().toLocaleLowerCase() === toLowerCase);
|
|
@@ -75,20 +81,23 @@ export class NewUserBase {
|
|
|
75
81
|
}
|
|
76
82
|
}
|
|
77
83
|
else {
|
|
84
|
+
// Fall back to DefaultForNewUser applications from metadata
|
|
78
85
|
LogStatus(`No UserApplications configured, using DefaultForNewUser applications for new user ${user.Name}`);
|
|
79
86
|
applicationsToCreate = md.Applications.filter(a => a.DefaultForNewUser);
|
|
80
87
|
LogStatus(`Found ${applicationsToCreate.length} applications with DefaultForNewUser=true`);
|
|
81
88
|
}
|
|
89
|
+
// Create UserApplication records for each application
|
|
82
90
|
for (const [appIndex, application] of applicationsToCreate.entries()) {
|
|
83
91
|
const userApplication = await md.GetEntityObject('User Applications', contextUser);
|
|
84
92
|
userApplication.NewRecord();
|
|
85
93
|
userApplication.UserID = user.ID;
|
|
86
94
|
userApplication.ApplicationID = application.ID;
|
|
87
|
-
userApplication.Sequence = appIndex;
|
|
95
|
+
userApplication.Sequence = appIndex; // Set sequence based on order
|
|
88
96
|
userApplication.IsActive = true;
|
|
89
97
|
const userApplicationSaveResult = await userApplication.Save();
|
|
90
98
|
if (userApplicationSaveResult) {
|
|
91
99
|
LogStatus(`Created User Application ${application.Name} for new user ${user.Name}`);
|
|
100
|
+
//now create a UserApplicationEntity records for each entity in the application
|
|
92
101
|
const rv = new RunView();
|
|
93
102
|
const rvResult = await rv.RunView({
|
|
94
103
|
EntityName: 'Application Entities',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newUsers.js","sourceRoot":"","sources":["../../src/auth/newUsers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAA2B,MAAM,sBAAsB,CAAC;AAE3I,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,OAAO,WAAW;IACb,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAa,EAAE,mBAA2B,MAAM,EAAE,cAAuB,EAAE,oBAA6B;QACpK,IAAI,CAAC;YACD,IAAI,WAAW,GAAoB,IAAI,CAAC;YAExC,MAAM,6BAA6B,GAAW,UAAU,EAAE,YAAY,EAAE,6BAA6B,CAAC;YACtG,IAAG,6BAA6B,EAAC,CAAC;gBAC9B,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,QAAQ,CAAC,+BAA+B,UAAU,EAAE,YAAY,EAAE,6BAA6B,sDAAsD,CAAC,CAAC;gBAEvJ,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAI,OAAO,CAAE,CAAC;gBACvF,IAAI,CAAC,WAAW,EAAE,CAAC;oBACf,QAAQ,CAAC,uFAAuF,CAAC,CAAC;oBAClG,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;YAED,MAAM,EAAE,GAAa,IAAI,QAAQ,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAa,OAAO,EAAE,WAAW,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"newUsers.js","sourceRoot":"","sources":["../../src/auth/newUsers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { JwtPayload } from 'jsonwebtoken';
|
|
2
2
|
import { AuthProviderConfig, AuthUserInfo } from '@memberjunction/core';
|
|
3
3
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
4
|
+
/**
|
|
5
|
+
* Auth0 authentication provider implementation
|
|
6
|
+
*/
|
|
4
7
|
export declare class Auth0Provider extends BaseAuthProvider {
|
|
5
8
|
constructor(config: AuthProviderConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Extracts user information from Auth0 JWT payload
|
|
11
|
+
*/
|
|
6
12
|
extractUserInfo(payload: JwtPayload): AuthUserInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Validates Auth0-specific configuration
|
|
15
|
+
*/
|
|
7
16
|
validateConfig(): boolean;
|
|
8
17
|
}
|
|
9
18
|
//# sourceMappingURL=Auth0Provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auth0Provider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/Auth0Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"Auth0Provider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/Auth0Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;GAEG;AACH,qBACa,aAAc,SAAQ,gBAAgB;gBACrC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;IAiBlD;;OAEG;IACH,cAAc,IAAI,OAAO;CAO1B"}
|
|
@@ -9,11 +9,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { RegisterClass } from '@memberjunction/global';
|
|
11
11
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
12
|
+
/**
|
|
13
|
+
* Auth0 authentication provider implementation
|
|
14
|
+
*/
|
|
12
15
|
let Auth0Provider = class Auth0Provider extends BaseAuthProvider {
|
|
13
16
|
constructor(config) {
|
|
14
17
|
super(config);
|
|
15
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Extracts user information from Auth0 JWT payload
|
|
21
|
+
*/
|
|
16
22
|
extractUserInfo(payload) {
|
|
23
|
+
// Auth0 uses standard OIDC claims
|
|
17
24
|
const email = payload.email;
|
|
18
25
|
const fullName = payload.name;
|
|
19
26
|
const firstName = payload.given_name;
|
|
@@ -27,6 +34,9 @@ let Auth0Provider = class Auth0Provider extends BaseAuthProvider {
|
|
|
27
34
|
preferredUsername
|
|
28
35
|
};
|
|
29
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Validates Auth0-specific configuration
|
|
39
|
+
*/
|
|
30
40
|
validateConfig() {
|
|
31
41
|
const baseValid = super.validateConfig();
|
|
32
42
|
const hasClientId = !!this.config.clientId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auth0Provider.js","sourceRoot":"","sources":["../../../src/auth/providers/Auth0Provider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"Auth0Provider.js","sourceRoot":"","sources":["../../../src/auth/providers/Auth0Provider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;GAEG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,gBAAgB;IACjD,YAAY,MAA0B;QACpC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAmB;QACjC,kCAAkC;QAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAA2B,CAAC;QAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAA0B,CAAC;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAgC,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAiC,CAAC;QAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAwC,IAAI,KAAK,CAAC;QAEpF,OAAO;YACL,KAAK;YACL,SAAS,EAAE,SAAS,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxE,QAAQ;YACR,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAEvC,OAAO,SAAS,IAAI,WAAW,IAAI,SAAS,CAAC;IAC/C,CAAC;CACF,CAAA;AAnCY,aAAa;IADzB,aAAa,CAAC,gBAAgB,EAAE,OAAO,CAAC;;GAC5B,aAAa,CAmCzB"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { JwtPayload } from 'jsonwebtoken';
|
|
2
2
|
import { AuthProviderConfig, AuthUserInfo } from '@memberjunction/core';
|
|
3
3
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
4
|
+
/**
|
|
5
|
+
* AWS Cognito authentication provider implementation
|
|
6
|
+
*/
|
|
4
7
|
export declare class CognitoProvider extends BaseAuthProvider {
|
|
5
8
|
constructor(config: AuthProviderConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Extracts user information from Cognito JWT payload
|
|
11
|
+
*/
|
|
6
12
|
extractUserInfo(payload: JwtPayload): AuthUserInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Validates Cognito-specific configuration
|
|
15
|
+
*/
|
|
7
16
|
validateConfig(): boolean;
|
|
8
17
|
}
|
|
9
18
|
//# sourceMappingURL=CognitoProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CognitoProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/CognitoProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"CognitoProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/CognitoProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D;;GAEG;AACH,qBACa,eAAgB,SAAQ,gBAAgB;gBACvC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;IAoBlD;;OAEG;IACH,cAAc,IAAI,OAAO;CAQ1B"}
|
|
@@ -9,11 +9,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { RegisterClass } from '@memberjunction/global';
|
|
11
11
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
12
|
+
/**
|
|
13
|
+
* AWS Cognito authentication provider implementation
|
|
14
|
+
*/
|
|
12
15
|
let CognitoProvider = class CognitoProvider extends BaseAuthProvider {
|
|
13
16
|
constructor(config) {
|
|
14
17
|
super(config);
|
|
15
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Extracts user information from Cognito JWT payload
|
|
21
|
+
*/
|
|
16
22
|
extractUserInfo(payload) {
|
|
23
|
+
// Cognito uses custom claims with 'cognito:' prefix for some fields
|
|
17
24
|
const email = payload.email ||
|
|
18
25
|
payload['cognito:username'];
|
|
19
26
|
const fullName = payload.name;
|
|
@@ -30,6 +37,9 @@ let CognitoProvider = class CognitoProvider extends BaseAuthProvider {
|
|
|
30
37
|
preferredUsername
|
|
31
38
|
};
|
|
32
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Validates Cognito-specific configuration
|
|
42
|
+
*/
|
|
33
43
|
validateConfig() {
|
|
34
44
|
const baseValid = super.validateConfig();
|
|
35
45
|
const hasClientId = !!this.config.clientId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CognitoProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/CognitoProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"CognitoProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/CognitoProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D;;GAEG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,gBAAgB;IACnD,YAAY,MAA0B;QACpC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAmB;QACjC,oEAAoE;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAA2B;YACnC,OAAO,CAAC,kBAAkB,CAAuB,CAAC;QAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAA0B,CAAC;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAgC,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAiC,CAAC;QAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAuB;YAClD,OAAO,CAAC,kBAAwC;YAChD,KAAK,CAAC;QAE/B,OAAO;YACL,KAAK;YACL,SAAS,EAAE,SAAS,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxE,QAAQ;YACR,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QAE/C,OAAO,SAAS,IAAI,WAAW,IAAI,SAAS,IAAI,aAAa,CAAC;IAChE,CAAC;CACF,CAAA;AAvCY,eAAe;IAD3B,aAAa,CAAC,gBAAgB,EAAE,SAAS,CAAC;;GAC9B,eAAe,CAuC3B"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { JwtPayload } from 'jsonwebtoken';
|
|
2
2
|
import { AuthProviderConfig, AuthUserInfo } from '@memberjunction/core';
|
|
3
3
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
4
|
+
/**
|
|
5
|
+
* Google Identity Platform authentication provider implementation
|
|
6
|
+
*/
|
|
4
7
|
export declare class GoogleProvider extends BaseAuthProvider {
|
|
5
8
|
constructor(config: AuthProviderConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Extracts user information from Google JWT payload
|
|
11
|
+
*/
|
|
6
12
|
extractUserInfo(payload: JwtPayload): AuthUserInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Validates Google-specific configuration
|
|
15
|
+
*/
|
|
7
16
|
validateConfig(): boolean;
|
|
8
17
|
}
|
|
9
18
|
//# sourceMappingURL=GoogleProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/GoogleProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"GoogleProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/GoogleProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D;;GAEG;AACH,qBACa,cAAe,SAAQ,gBAAgB;gBACtC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;IAiBlD;;OAEG;IACH,cAAc,IAAI,OAAO;CAM1B"}
|
|
@@ -9,16 +9,23 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { RegisterClass } from '@memberjunction/global';
|
|
11
11
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
12
|
+
/**
|
|
13
|
+
* Google Identity Platform authentication provider implementation
|
|
14
|
+
*/
|
|
12
15
|
let GoogleProvider = class GoogleProvider extends BaseAuthProvider {
|
|
13
16
|
constructor(config) {
|
|
14
17
|
super(config);
|
|
15
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Extracts user information from Google JWT payload
|
|
21
|
+
*/
|
|
16
22
|
extractUserInfo(payload) {
|
|
23
|
+
// Google uses standard OIDC claims
|
|
17
24
|
const email = payload.email;
|
|
18
25
|
const fullName = payload.name;
|
|
19
26
|
const firstName = payload.given_name;
|
|
20
27
|
const lastName = payload.family_name;
|
|
21
|
-
const preferredUsername = email;
|
|
28
|
+
const preferredUsername = email; // Google typically uses email as username
|
|
22
29
|
return {
|
|
23
30
|
email,
|
|
24
31
|
firstName: firstName || fullName?.split(' ')[0],
|
|
@@ -27,6 +34,9 @@ let GoogleProvider = class GoogleProvider extends BaseAuthProvider {
|
|
|
27
34
|
preferredUsername
|
|
28
35
|
};
|
|
29
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Validates Google-specific configuration
|
|
39
|
+
*/
|
|
30
40
|
validateConfig() {
|
|
31
41
|
const baseValid = super.validateConfig();
|
|
32
42
|
const hasClientId = !!this.config.clientId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/GoogleProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"GoogleProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/GoogleProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D;;GAEG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gBAAgB;IAClD,YAAY,MAA0B;QACpC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAmB;QACjC,mCAAmC;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAA2B,CAAC;QAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAA0B,CAAC;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAgC,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAiC,CAAC;QAC3D,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,0CAA0C;QAE3E,OAAO;YACL,KAAK;YACL,SAAS,EAAE,SAAS,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxE,QAAQ;YACR,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAE3C,OAAO,SAAS,IAAI,WAAW,CAAC;IAClC,CAAC;CACF,CAAA;AAlCY,cAAc;IAD1B,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC;;GAC7B,cAAc,CAkC1B"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { JwtPayload } from 'jsonwebtoken';
|
|
2
2
|
import { AuthProviderConfig, AuthUserInfo } from '@memberjunction/core';
|
|
3
3
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
4
|
+
/**
|
|
5
|
+
* Microsoft Authentication Library (MSAL) provider implementation
|
|
6
|
+
*/
|
|
4
7
|
export declare class MSALProvider extends BaseAuthProvider {
|
|
5
8
|
constructor(config: AuthProviderConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Extracts user information from MSAL/Azure AD JWT payload
|
|
11
|
+
*/
|
|
6
12
|
extractUserInfo(payload: JwtPayload): AuthUserInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Validates MSAL-specific configuration
|
|
15
|
+
*/
|
|
7
16
|
validateConfig(): boolean;
|
|
8
17
|
}
|
|
9
18
|
//# sourceMappingURL=MSALProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MSALProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/MSALProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"MSALProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/MSALProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;GAEG;AACH,qBACa,YAAa,SAAQ,gBAAgB;gBACpC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;IAiBlD;;OAEG;IACH,cAAc,IAAI,OAAO;CAO1B"}
|
|
@@ -9,11 +9,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { RegisterClass } from '@memberjunction/global';
|
|
11
11
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
12
|
+
/**
|
|
13
|
+
* Microsoft Authentication Library (MSAL) provider implementation
|
|
14
|
+
*/
|
|
12
15
|
let MSALProvider = class MSALProvider extends BaseAuthProvider {
|
|
13
16
|
constructor(config) {
|
|
14
17
|
super(config);
|
|
15
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Extracts user information from MSAL/Azure AD JWT payload
|
|
21
|
+
*/
|
|
16
22
|
extractUserInfo(payload) {
|
|
23
|
+
// MSAL/Azure AD uses some custom claims
|
|
17
24
|
const email = payload.email || payload.preferred_username;
|
|
18
25
|
const fullName = payload.name;
|
|
19
26
|
const firstName = payload.given_name;
|
|
@@ -27,6 +34,9 @@ let MSALProvider = class MSALProvider extends BaseAuthProvider {
|
|
|
27
34
|
preferredUsername
|
|
28
35
|
};
|
|
29
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Validates MSAL-specific configuration
|
|
39
|
+
*/
|
|
30
40
|
validateConfig() {
|
|
31
41
|
const baseValid = super.validateConfig();
|
|
32
42
|
const hasClientId = !!this.config.clientId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MSALProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/MSALProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"MSALProvider.js","sourceRoot":"","sources":["../../../src/auth/providers/MSALProvider.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;GAEG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,gBAAgB;IAChD,YAAY,MAA0B;QACpC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAmB;QACjC,wCAAwC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAA2B,IAAI,OAAO,CAAC,kBAAwC,CAAC;QACtG,MAAM,QAAQ,GAAG,OAAO,CAAC,IAA0B,CAAC;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAgC,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAiC,CAAC;QAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,kBAAwC,CAAC;QAE3E,OAAO;YACL,KAAK;YACL,SAAS,EAAE,SAAS,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxE,QAAQ;YACR,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC3C,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAE3C,OAAO,SAAS,IAAI,WAAW,IAAI,WAAW,CAAC;IACjD,CAAC;CACF,CAAA;AAnCY,YAAY;IADxB,aAAa,CAAC,gBAAgB,EAAE,MAAM,CAAC;;GAC3B,YAAY,CAmCxB"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { JwtPayload } from 'jsonwebtoken';
|
|
2
2
|
import { AuthProviderConfig, AuthUserInfo } from '@memberjunction/core';
|
|
3
3
|
import { BaseAuthProvider } from '../BaseAuthProvider.js';
|
|
4
|
+
/**
|
|
5
|
+
* Okta authentication provider implementation
|
|
6
|
+
*/
|
|
4
7
|
export declare class OktaProvider extends BaseAuthProvider {
|
|
5
8
|
constructor(config: AuthProviderConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Extracts user information from Okta JWT payload
|
|
11
|
+
*/
|
|
6
12
|
extractUserInfo(payload: JwtPayload): AuthUserInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Validates Okta-specific configuration
|
|
15
|
+
*/
|
|
7
16
|
validateConfig(): boolean;
|
|
8
17
|
}
|
|
9
18
|
//# sourceMappingURL=OktaProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OktaProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/OktaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"OktaProvider.d.ts","sourceRoot":"","sources":["../../../src/auth/providers/OktaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D;;GAEG;AACH,qBACa,YAAa,SAAQ,gBAAgB;gBACpC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;IAiBlD;;OAEG;IACH,cAAc,IAAI,OAAO;CAO1B"}
|