@memberjunction/ng-bootstrap 4.0.0 → 4.2.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 CHANGED
@@ -1,10 +1,6 @@
1
1
  # @memberjunction/ng-bootstrap
2
2
 
3
- MemberJunction 3.0 Angular Bootstrap - Encapsulates all Angular authentication and initialization logic into a reusable module.
4
-
5
- ## Overview
6
-
7
- In MemberJunction 3.0, Angular applications (MJExplorer) become **minimal configuration files** (~15-20 lines) that import all functionality from NPM packages. This package provides the `MJBootstrapModule` and `MJBootstrapComponent` that handle all authentication, GraphQL setup, and application initialization.
3
+ MemberJunction Angular Bootstrap -- encapsulates all Angular authentication and initialization logic into a single reusable module. Reduces an entire MJExplorer application module to approximately 15 lines of code.
8
4
 
9
5
  ## Installation
10
6
 
@@ -12,22 +8,51 @@ In MemberJunction 3.0, Angular applications (MJExplorer) become **minimal config
12
8
  npm install @memberjunction/ng-bootstrap
13
9
  ```
14
10
 
15
- ## Usage
11
+ ## Overview
16
12
 
17
- ### Basic Usage (Minimal MJExplorer 3.0)
13
+ In MemberJunction 3.0+, Angular applications become minimal configuration files that delegate authentication, GraphQL setup, metadata loading, and user validation to this bootstrap package. The `MJBootstrapModule` configures all necessary providers via `forRoot()`, while `MJBootstrapComponent` serves as the root component handling the full application lifecycle from login through to the authenticated shell.
14
+
15
+ ```mermaid
16
+ flowchart TD
17
+ subgraph Bootstrap["MJBootstrapModule.forRoot(env)"]
18
+ A["MJEnvironmentConfig"]
19
+ A --> B["Auth Provider (MSAL / Auth0)"]
20
+ A --> C["GraphQL Client + WebSocket"]
21
+ A --> D["MJ_ENVIRONMENT Token"]
22
+ end
23
+ subgraph Lifecycle["MJBootstrapComponent"]
24
+ E["Login Screen"] --> F["Authentication"]
25
+ F --> G["Token Management"]
26
+ G --> H["Metadata Loading"]
27
+ H --> I["User Validation"]
28
+ I --> J["Startup Validation"]
29
+ J --> K["Authenticated Shell"]
30
+ end
31
+ subgraph States["Application States"]
32
+ L["Not Authenticated"]
33
+ M["Authenticated"]
34
+ N["Error State"]
35
+ O["Validation Banner"]
36
+ end
37
+
38
+ Bootstrap --> Lifecycle
39
+ Lifecycle --> States
40
+
41
+ style Bootstrap fill:#2d6a9f,stroke:#1a4971,color:#fff
42
+ style Lifecycle fill:#7c5295,stroke:#563a6b,color:#fff
43
+ style States fill:#2d8659,stroke:#1a5c3a,color:#fff
44
+ ```
18
45
 
19
- Create your `packages/explorer/src/app/app.module.ts`:
46
+ ## Usage
47
+
48
+ ### Minimal Application Module
20
49
 
21
50
  ```typescript
22
51
  import { NgModule } from '@angular/core';
23
52
  import { BrowserModule } from '@angular/platform-browser';
24
53
  import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
25
-
26
54
  import { MJBootstrapModule, MJBootstrapComponent } from '@memberjunction/ng-bootstrap';
27
55
  import { MJExplorerModule } from '@memberjunction/ng-explorer-core';
28
- import { CoreGeneratedFormsModule } from '@memberjunction/ng-core-entity-forms';
29
- import { GeneratedFormsModule } from '@mycompany/generated-forms';
30
-
31
56
  import { environment } from '../environments/environment';
32
57
 
33
58
  @NgModule({
@@ -35,21 +60,15 @@ import { environment } from '../environments/environment';
35
60
  BrowserModule,
36
61
  BrowserAnimationsModule,
37
62
  MJBootstrapModule.forRoot(environment),
38
- MJExplorerModule,
39
- CoreGeneratedFormsModule,
40
- GeneratedFormsModule
63
+ MJExplorerModule
41
64
  ],
42
- bootstrap: [MJBootstrapComponent] // Use MJBootstrapComponent as the bootstrap component
65
+ bootstrap: [MJBootstrapComponent]
43
66
  })
44
67
  export class AppModule {}
45
68
  ```
46
69
 
47
- **That's it!** Your entire MJExplorer application module in ~15 lines.
48
-
49
70
  ### Environment Configuration
50
71
 
51
- Create your `packages/explorer/src/environments/environment.ts`:
52
-
53
72
  ```typescript
54
73
  import { MJEnvironmentConfig } from '@memberjunction/ng-bootstrap';
55
74
 
@@ -70,62 +89,31 @@ export const environment: MJEnvironmentConfig = {
70
89
  };
71
90
  ```
72
91
 
73
- ## What It Does
74
-
75
- The `MJBootstrapModule` and `MJBootstrapComponent` handle:
76
-
77
- 1. **Authentication Flow** - MSAL or Auth0 login/logout with proper token management
78
- 2. **GraphQL Client Setup** - Configures GraphQL client with WebSocket support
79
- 3. **Token Refresh** - Automatic token refresh before expiration
80
- 4. **Metadata Loading** - Loads MemberJunction metadata and entity definitions
81
- 5. **User Validation** - Checks user access and permissions
82
- 6. **Error Handling** - Displays appropriate error messages for auth failures
83
- 7. **Startup Validation** - Runs system validation checks on initialization
84
- 8. **Navigation** - Handles initial navigation after successful login
85
-
86
- ## Component Structure
87
-
88
- The bootstrap component provides a clean template structure:
89
-
90
- ```html
91
- <mj-bootstrap>
92
- <!-- Authenticated: Shows the main shell -->
93
- @if (authenticated) {
94
- <mj-shell></mj-shell>
95
- }
96
-
97
- <!-- Not authenticated: Shows login screen -->
98
- @if (!authenticated) {
99
- <mj-login></mj-login>
100
- }
101
-
102
- <!-- Error state: Shows error message -->
103
- @if (hasError) {
104
- <mj-error></mj-error>
105
- }
106
-
107
- <!-- Validation issues: Shows validation banner -->
108
- @if (showValidation) {
109
- <mj-validation-banner></mj-validation-banner>
110
- }
111
- </mj-bootstrap>
112
- ```
92
+ ## What It Handles
93
+
94
+ | Concern | Description |
95
+ |---------|-------------|
96
+ | Authentication | MSAL or Auth0 login/logout with token management |
97
+ | GraphQL setup | Client configuration with WebSocket subscriptions |
98
+ | Token refresh | Automatic token refresh before expiration |
99
+ | Metadata loading | MemberJunction entity metadata and definitions |
100
+ | User validation | Access and permission checks |
101
+ | Startup validation | System health checks on initialization |
102
+ | Error handling | Appropriate error messages for auth failures |
103
+ | Navigation | Initial routing after successful login |
113
104
 
114
105
  ## API Reference
115
106
 
116
- ### `MJBootstrapModule.forRoot(environment: MJEnvironmentConfig)`
107
+ ### MJBootstrapModule.forRoot(environment)
117
108
 
118
109
  Configures the bootstrap module with environment settings.
119
110
 
120
- #### Parameters
121
-
122
- - `environment` - MJEnvironmentConfig object with application settings
111
+ **Parameters:**
112
+ - `environment: MJEnvironmentConfig` -- Application configuration
123
113
 
124
- #### Returns
114
+ **Returns:** `ModuleWithProviders<MJBootstrapModule>`
125
115
 
126
- ModuleWithProviders with environment configuration injected
127
-
128
- ### `MJEnvironmentConfig` Interface
116
+ ### MJEnvironmentConfig
129
117
 
130
118
  ```typescript
131
119
  interface MJEnvironmentConfig {
@@ -135,116 +123,46 @@ interface MJEnvironmentConfig {
135
123
  AUTH_TYPE: 'msal' | 'auth0';
136
124
  MJ_CORE_SCHEMA_NAME: string;
137
125
 
138
- // MSAL-specific (optional)
126
+ // MSAL-specific
139
127
  CLIENT_ID?: string;
140
128
  TENANT_ID?: string;
141
129
 
142
- // Auth0-specific (optional)
130
+ // Auth0-specific
143
131
  AUTH0_DOMAIN?: string;
144
132
  AUTH0_CLIENTID?: string;
145
-
146
- // Additional custom properties
147
- [key: string]: any;
148
- }
149
- ```
150
-
151
- ## Migration from 2.x
152
-
153
- In MemberJunction 2.x, your MJExplorer had:
154
- - `app.component.ts` with ~245 lines of authentication logic
155
- - `app.module.ts` with ~107 lines of module imports and configuration
156
-
157
- **Before (2.x):**
158
- ```typescript
159
- // app.component.ts - 245 lines of auth/initialization code
160
- @Component({...})
161
- export class AppComponent implements OnInit {
162
- // Complex authentication logic
163
- // GraphQL setup
164
- // Error handling
165
- // Navigation logic
166
- // ...
167
133
  }
168
-
169
- // app.module.ts - 107 lines of imports and configuration
170
- @NgModule({
171
- declarations: [AppComponent, ...],
172
- imports: [BrowserModule, ...many modules...],
173
- providers: [...many providers...],
174
- bootstrap: [AppComponent]
175
- })
176
- export class AppModule {}
177
134
  ```
178
135
 
179
- **After (3.0):**
180
- ```typescript
181
- // app.module.ts - ~15 lines total
182
- @NgModule({
183
- imports: [
184
- BrowserModule,
185
- BrowserAnimationsModule,
186
- MJBootstrapModule.forRoot(environment),
187
- MJExplorerModule,
188
- GeneratedFormsModule
189
- ],
190
- bootstrap: [MJBootstrapComponent]
191
- })
192
- export class AppModule {}
193
- ```
194
-
195
- All the complexity is now encapsulated in this package and updated via NPM.
136
+ ### Injection Tokens
196
137
 
197
- ## Advanced Usage
138
+ - `MJ_ENVIRONMENT` -- Provides the `MJEnvironmentConfig` throughout the application
198
139
 
199
- ### Custom Error Handling
140
+ ### MJStartupValidationService
200
141
 
201
- You can extend the bootstrap component to add custom error handling:
142
+ An optional interface for implementing custom startup validation:
202
143
 
203
144
  ```typescript
204
- import { MJBootstrapComponent } from '@memberjunction/ng-bootstrap';
205
-
206
- @Component({
207
- selector: 'app-custom-bootstrap',
208
- template: `
209
- <mj-bootstrap></mj-bootstrap>
210
- @if (hasCustomError) {
211
- <app-custom-error></app-custom-error>
212
- }
213
- `
214
- })
215
- export class CustomBootstrapComponent extends MJBootstrapComponent {
216
- // Add custom logic
145
+ interface MJStartupValidationService {
146
+ Validate(): Promise<ValidationResult>;
217
147
  }
218
148
  ```
219
149
 
220
- ### Multiple Auth Providers
221
-
222
- Configure your environment to support both MSAL and Auth0:
223
-
224
- ```typescript
225
- export const environment: MJEnvironmentConfig = {
226
- production: false,
227
- AUTH_TYPE: 'msal', // Default
228
-
229
- // MSAL config
230
- CLIENT_ID: 'msal-client-id',
231
- TENANT_ID: 'tenant-id',
232
-
233
- // Auth0 config (fallback)
234
- AUTH0_DOMAIN: 'yourapp.us.auth0.com',
235
- AUTH0_CLIENTID: 'auth0-client-id'
236
- };
237
- ```
150
+ ## Migration from MJ 2.x
238
151
 
239
- ## Benefits
152
+ MemberJunction 2.x required ~350 lines of custom code in `app.component.ts` and `app.module.ts` for authentication and initialization. With 3.0+, this entire surface area is encapsulated in the bootstrap package:
240
153
 
241
- - **Zero-copy updates** - `npm update` brings all improvements automatically
242
- - **No stale code** - Authentication logic stays up-to-date with MJ releases
243
- - **Minimal surface area** - Fewer lines of code means fewer places for bugs
244
- - **Standard patterns** - Everyone uses the same authentication flow
245
- - **Type safety** - Full TypeScript support with proper interfaces
246
- - **Tested** - Core authentication logic is tested across all MJ applications
154
+ | Before (2.x) | After (3.0+) |
155
+ |--------------|--------------|
156
+ | ~245 lines in `app.component.ts` | Removed entirely |
157
+ | ~107 lines in `app.module.ts` | ~15 lines |
158
+ | Custom auth logic | `MJBootstrapModule.forRoot(env)` |
159
+ | Manual GraphQL setup | Automatic |
160
+ | Custom error handling | Built-in |
247
161
 
248
- ## License
162
+ ## Dependencies
249
163
 
250
- MIT
164
+ - [@memberjunction/core](../../MJCore/README.md) -- Core framework
165
+ - [@memberjunction/graphql-dataprovider](../../GraphQLDataProvider/README.md) -- GraphQL client
166
+ - [@memberjunction/ng-auth-services](../auth-services/README.md) -- Authentication services
167
+ - [@memberjunction/ng-explorer-core](../../Angular/Explorer/explorer-core/README.md) -- Explorer shell
168
+ - [@memberjunction/ng-shared](../shared/README.md) -- Shared utilities
@@ -18,7 +18,7 @@ import { CodeArtifactViewerComponent, ComponentArtifactViewerComponent, HtmlArti
18
18
  import { FlowAgentFormSectionComponent } from '@memberjunction/ng-core-entity-forms';
19
19
  import { ArtifactConfigPanelComponent, ArtifactPartComponent, QueryConfigPanelComponent, QueryPartComponent, ViewConfigPanelComponent, ViewPartComponent, WebURLConfigPanelComponent, WebURLPartComponent } from '@memberjunction/ng-dashboard-viewer';
20
20
  import { APIKeysResourceComponent, ActionExplorerComponent, ActionsOverviewComponent, AgentConfigurationComponent, CodeManagementComponent, CommunicationDashboardComponent, CommunicationLogsResourceComponent, CommunicationMonitorResourceComponent, CommunicationProvidersResourceComponent, CommunicationRunsResourceComponent, CommunicationTemplatesResourceComponent, ComponentStudioDashboardComponent, CredentialsAuditResourceComponent, CredentialsCategoriesResourceComponent, CredentialsDashboardComponent, CredentialsListResourceComponent, CredentialsOverviewResourceComponent, CredentialsTypesResourceComponent, DashboardBrowserResourceComponent, DataExplorerDashboardComponent, DataExplorerResourceComponent, EntityAdminDashboardComponent, EntityIntegrationComponent, ExecutionMonitoringComponent, HomeApplication, HomeDashboardComponent, ListsBrowseResource, ListsCategoriesResource, ListsMyListsResource, ListsOperationsResource, MCPDashboardComponent, ModelManagementComponent, PromptManagementComponent, QueryBrowserResourceComponent, ScheduledActionsComponent, SchedulingActivityResourceComponent, SchedulingDashboardComponent, SchedulingJobsResourceComponent, SchedulingOverviewResourceComponent, SecurityPermissionsComponent, SystemConfigurationComponent, SystemDiagnosticsComponent, TestingAnalyticsResourceComponent, TestingDashboardComponent, TestingDashboardTabResourceComponent, TestingExplorerResourceComponent, TestingReviewResourceComponent, TestingRunsResourceComponent, VersionHistoryDiffResourceComponent, VersionHistoryGraphResourceComponent, VersionHistoryLabelsResourceComponent, VersionHistoryRestoreResourceComponent } from '@memberjunction/ng-dashboards';
21
- import { ArtifactResource, BaseUserMenu, ChatConversationsResource, DashboardResource, EntityRecordResource, ListDetailResource, QueryResource, SearchResultsResource, UserViewResource } from '@memberjunction/ng-explorer-core';
21
+ import { ArtifactResource, ChatConversationsResource, DashboardResource, EntityRecordResource, ListDetailResource, QueryResource, SearchResultsResource, UserViewResource } from '@memberjunction/ng-explorer-core';
22
22
  import { ApplicationManagementComponent, EntityPermissionsComponent, RoleManagementComponent, SettingsComponent, SqlLoggingComponent, UserManagementComponent } from '@memberjunction/ng-explorer-settings';
23
23
  import { FileBrowserResource } from '@memberjunction/ng-file-storage';
24
24
 
@@ -481,7 +481,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
481
481
  * AUTO-GENERATED FILE - DO NOT EDIT
482
482
  * Generated by mj codegen manifest
483
483
  * App: @memberjunction/ng-bootstrap
484
- * Dependency tree: 491 packages walked, 14 contain @RegisterClass
484
+ * Dependency tree: 490 packages walked, 14 contain @RegisterClass
485
485
  *
486
486
  * This file imports every @RegisterClass decorated class by name and places
487
487
  * them in an exported array, creating a static code path that prevents
@@ -863,7 +863,6 @@ const CLASS_REGISTRATIONS = [
863
863
  VersionHistoryLabelsResourceComponent,
864
864
  VersionHistoryRestoreResourceComponent,
865
865
  ArtifactResource,
866
- BaseUserMenu,
867
866
  ChatConversationsResource,
868
867
  DashboardResource,
869
868
  EntityRecordResource,
@@ -882,7 +881,7 @@ const CLASS_REGISTRATIONS = [
882
881
  /** Marker constant indicating the manifest has been loaded. */
883
882
  const CLASS_REGISTRATIONS_MANIFEST_LOADED = true;
884
883
  /** Total @RegisterClass decorated classes discovered in dependency tree */
885
- const CLASS_REGISTRATIONS_COUNT = 383;
884
+ const CLASS_REGISTRATIONS_COUNT = 382;
886
885
  /** Packages imported by this manifest */
887
886
  const CLASS_REGISTRATIONS_PACKAGES = [
888
887
  '@memberjunction/actions-base',
@@ -1 +1 @@
1
- {"version":3,"file":"memberjunction-ng-bootstrap.mjs","sources":["../../src/lib/bootstrap.types.ts","../../src/lib/bootstrap.component.ts","../../src/lib/services/initialization.service.ts","../../src/lib/components/auth-shell.component.ts","../../src/lib/bootstrap.module.ts","../../src/generated/mj-class-registrations.ts","../../src/public-api.ts","../../src/memberjunction-ng-bootstrap.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Injection token for MJ Environment Configuration\n */\nexport const MJ_ENVIRONMENT = new InjectionToken<MJEnvironmentConfig>('MJ_ENVIRONMENT');\n\n/**\n * Injection token for optional startup validation service\n */\nexport const MJ_STARTUP_VALIDATION = new InjectionToken<MJStartupValidationService | null>('MJ_STARTUP_VALIDATION', {\n providedIn: 'root',\n factory: () => null // Default to null if not provided\n});\n\n/**\n * Optional interface for startup validation services\n * Applications can provide their own implementation to handle startup validation\n */\nexport interface MJStartupValidationService {\n /**\n * Runs validation checks during application startup\n */\n validateSystemSetup(): void;\n\n /**\n * Adds a validation issue for missing user roles\n */\n addNoRolesValidationIssue(): void;\n}\n\n/**\n * Environment configuration interface for MemberJunction Angular applications\n */\nexport interface MJEnvironmentConfig {\n /**\n * Whether the app is running in production mode\n */\n production: boolean;\n\n /**\n * GraphQL HTTP endpoint URL\n * @example 'http://localhost:4000/graphql'\n */\n GRAPHQL_URI: string;\n\n /**\n * GraphQL WebSocket endpoint URL for subscriptions\n * @example 'ws://localhost:4000/graphql'\n */\n GRAPHQL_WS_URI: string;\n\n /**\n * Authentication provider type\n */\n AUTH_TYPE: 'msal' | 'auth0';\n\n /**\n * MemberJunction core schema name in the database\n * @default '__mj'\n */\n MJ_CORE_SCHEMA_NAME: string;\n\n /**\n * Microsoft Azure AD/Entra Client ID (for MSAL auth)\n */\n CLIENT_ID?: string;\n\n /**\n * Microsoft Azure AD/Entra Tenant ID (for MSAL auth)\n */\n TENANT_ID?: string;\n\n /**\n * Auth0 domain (for Auth0 auth)\n * @example 'myapp.us.auth0.com'\n */\n AUTH0_DOMAIN?: string;\n\n /**\n * Auth0 client ID (for Auth0 auth)\n */\n AUTH0_CLIENTID?: string;\n\n /**\n * Additional custom environment properties\n */\n [key: string]: any;\n}\n","/**\n * MemberJunction 3.0 Bootstrap Component\n *\n * Minimal placeholder component for future fully encapsulated bootstrap.\n * Currently applications should use MJInitializationService directly in their app.component.\n */\n\nimport { Component, Inject, OnInit } from '@angular/core';\nimport { SetProductionStatus } from '@memberjunction/core';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from './bootstrap.types';\n\n@Component({\n standalone: false,\n selector: 'mj-bootstrap',\n template: `\n <div class=\"mj-bootstrap-container\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [`\n .mj-bootstrap-container {\n display: block;\n width: 100%;\n height: 100%;\n }\n `]\n})\nexport class MJBootstrapComponent implements OnInit {\n constructor(\n @Inject(MJ_ENVIRONMENT) private environment: MJEnvironmentConfig\n ) {}\n\n ngOnInit() {\n console.log('🚀 MemberJunction 3.0 Bootstrap');\n SetProductionStatus(this.environment.production);\n }\n}\n","/**\n * MemberJunction 3.0 Initialization Service\n *\n * Handles all core initialization tasks:\n * - Generated entities loading\n * - GraphQL client setup\n * - Token refresh configuration\n * - System validation\n */\n\nimport { Injectable, Inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Metadata } from '@memberjunction/core';\nimport { setupGraphQLClient, GraphQLProviderConfigData } from '@memberjunction/graphql-dataprovider';\nimport { MJAuthBase, StandardUserInfo, AuthErrorType } from '@memberjunction/ng-auth-services';\nimport { SharedService } from '@memberjunction/ng-shared';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT, MJStartupValidationService, MJ_STARTUP_VALIDATION } from '../bootstrap.types';\n\nexport interface InitializationResult {\n success: boolean;\n error?: {\n message: string;\n type: 'no_access' | 'no_roles' | 'auth_error' | 'unknown';\n showValidationOnly?: boolean;\n };\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MJInitializationService {\n constructor(\n private router: Router,\n private authBase: MJAuthBase,\n @Inject(MJ_STARTUP_VALIDATION) private startupValidationService: MJStartupValidationService | null\n ) {}\n\n /**\n * Initialize GraphQL client with authentication token and refresh callback\n */\n async initializeGraphQL(token: string, environment: MJEnvironmentConfig): Promise<void> {\n const url: string = environment.GRAPHQL_URI;\n const wsurl: string = environment.GRAPHQL_WS_URI;\n\n const start = Date.now();\n const config = new GraphQLProviderConfigData(\n token,\n url,\n wsurl,\n async () => {\n // Token refresh callback - refreshToken() returns StandardAuthToken directly or throws\n const token = await this.authBase.refreshToken();\n return token.idToken;\n },\n environment.MJ_CORE_SCHEMA_NAME\n );\n\n await setupGraphQLClient(config);\n const end = Date.now();\n console.log(`✓ GraphQL Client Setup Complete: ${end - start}ms`);\n }\n\n /**\n * Refresh shared data and validate user access\n */\n async validateUserAccess(): Promise<InitializationResult> {\n await SharedService.RefreshData(true);\n\n const md = new Metadata();\n\n if (!md.CurrentUser) {\n return {\n success: false,\n error: {\n message: \"You don't have access to the application, contact your system administrator.\",\n type: 'no_access'\n }\n };\n }\n\n return { success: true };\n }\n\n /**\n * Run startup validation checks (if validation service is provided)\n */\n runValidationChecks(): void {\n if (!this.startupValidationService) {\n return; // No validation service provided\n }\n\n // Small delay to ensure everything is initialized\n setTimeout(() => {\n this.startupValidationService?.validateSystemSetup();\n }, 500);\n }\n\n /**\n * Navigate to initial route after successful login\n */\n navigateToInitialRoute(initialPath: string, document: Document): void {\n localStorage.removeItem('jwt-retry-ts');\n\n if (initialPath === '/') {\n // Use first nav item instead\n setTimeout(() => {\n // Find the KendoDrawer element and simulate a click for the first item\n const drawerElement = document.querySelector('li.k-drawer-item.k-level-0') as any;\n if (drawerElement) drawerElement.click();\n }, 10); // Wait for the drawer to finish render\n } else {\n this.router.navigateByUrl(initialPath, { replaceUrl: true });\n }\n }\n\n /**\n * Check if error is related to missing user roles\n */\n isNoUserRolesError(err: any): boolean {\n try {\n if (!err || typeof err !== 'object') return false;\n\n // Check for GraphQL-style errors\n if (err.response && Array.isArray(err.response.errors)) {\n return err.response.errors.some((e: any) =>\n e && e.message && typeof e.message === 'string' &&\n e.message.includes('does not have read permissions on User Roles')\n );\n }\n\n // Check for specific \"ResourceTypes\" error\n if (err.toString && typeof err.toString === 'function') {\n const errorString = err.toString();\n if (errorString.includes(\"Cannot read properties of undefined (reading 'ResourceTypes')\")) {\n return true;\n }\n }\n\n // Check for error message directly on the error object\n if (err.message && typeof err.message === 'string') {\n const message = err.message;\n return message.includes('does not have read permissions on User Roles') ||\n message.includes(\"Cannot read properties of undefined (reading 'ResourceTypes')\");\n }\n\n // Check for nested error object\n if (err.error && typeof err.error === 'object') {\n return this.isNoUserRolesError(err.error);\n }\n\n return false;\n } catch (e) {\n console.error('Error while checking for user roles error:', e);\n return false;\n }\n }\n\n /**\n * Handle no roles error by showing validation banner (if validation service is provided)\n */\n handleNoRolesError(): InitializationResult {\n this.startupValidationService?.addNoRolesValidationIssue();\n\n return {\n success: false,\n error: {\n message: 'User has no roles assigned',\n type: 'no_roles',\n showValidationOnly: true\n }\n };\n }\n\n /**\n * Handle authentication retry logic\n */\n async handleAuthRetry(err: any): Promise<boolean> {\n const retryKey = 'auth-retry-dt';\n const lastRetryDateTime = localStorage.getItem(retryKey);\n const yesterday = +new Date(Date.now() - 1 * 24 * 60 * 60 * 1000);\n const retriedRecently = lastRetryDateTime && +new Date(lastRetryDateTime) > yesterday;\n\n const authError = this.authBase.classifyError(err);\n const isTokenExpired = authError.type === AuthErrorType.TOKEN_EXPIRED;\n\n if (!retriedRecently && isTokenExpired) {\n console.log('JWT Expired, retrying once: ' + err);\n localStorage.setItem(retryKey, new Date().toISOString());\n await this.authBase.login({ appState: { target: window.location.pathname } }).toPromise();\n return true;\n }\n\n return false;\n }\n\n /**\n * Get auth error message for display\n */\n getAuthErrorMessage(err: unknown): string {\n const authError = this.authBase.classifyError(err);\n\n switch (authError.type) {\n case AuthErrorType.NO_ACTIVE_SESSION:\n return \"Welcome back! Please log in to your account.\";\n case AuthErrorType.INTERACTION_REQUIRED:\n case AuthErrorType.TOKEN_EXPIRED:\n return \"Your session has expired. Please log in to your account.\";\n default:\n return authError.userMessage || \"Welcome back! Please log in to your account.\";\n }\n }\n}\n","/**\n * MemberJunction 3.0 Auth Shell Component\n *\n * Handles authentication flow and initialization for MJ applications.\n * This component encapsulates all the auth logic that was previously in app.component.ts\n */\n\nimport { Component, OnInit, Inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { Router } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { SetProductionStatus, LogError, LogStatus } from '@memberjunction/core';\nimport { MJAuthBase, StandardUserInfo, AuthErrorType } from '@memberjunction/ng-auth-services';\nimport { MJInitializationService } from '../services/initialization.service';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from '../bootstrap.types';\n\n@Component({\n standalone: false,\n selector: 'mj-auth-shell',\n template: `\n <div class=\"mj-auth-shell\">\n @if (!HasError || showValidationOnly) {\n <ng-content></ng-content>\n }\n \n @if (HasError && !showValidationOnly) {\n <div class=\"error-container\">\n <h2>Error</h2>\n <p>{{ ErrorMessage }}</p>\n </div>\n }\n </div>\n `,\n styles: [`\n .mj-auth-shell {\n width: 100%;\n height: 100%;\n display: block;\n }\n\n .error-container {\n padding: 20px;\n text-align: center;\n }\n\n .error-container h2 {\n color: #d32f2f;\n margin-bottom: 10px;\n }\n `]\n})\nexport class MJAuthShellComponent implements OnInit {\n public HasError = false;\n public ErrorMessage: any = '';\n public showValidationOnly = false;\n public subHeaderText: string = \"Welcome back! Please log in to your account.\";\n\n private initialPath = '/';\n\n constructor(\n private router: Router,\n @Inject(DOCUMENT) public document: Document,\n public authBase: MJAuthBase,\n private initService: MJInitializationService,\n @Inject(MJ_ENVIRONMENT) private environment: MJEnvironmentConfig\n ) {}\n\n async ngOnInit() {\n console.log('🚀 MemberJunction 3.0 - Auth Shell Initializing');\n\n SetProductionStatus(this.environment.production);\n this.initialPath = window.location.pathname + (window.location.search ? window.location.search : '');\n\n await this.setupAuth();\n }\n\n /**\n * Handle successful login and initialize the application\n */\n async handleLogin(token: string, userInfo: StandardUserInfo): Promise<void> {\n if (!token) return;\n\n try {\n // Initialize GraphQL client\n await this.initService.initializeGraphQL(token, this.environment);\n\n // Validate user access and refresh data\n const validationResult = await this.initService.validateUserAccess();\n\n if (!validationResult.success) {\n this.HasError = true;\n this.ErrorMessage = validationResult.error!.message;\n throw new Error(this.ErrorMessage);\n }\n\n // Run startup validation checks\n this.initService.runValidationChecks();\n\n // Navigate to initial route\n this.initService.navigateToInitialRoute(this.initialPath, this.document);\n\n } catch (err: any) {\n // Check for no roles error\n if (this.initService.isNoUserRolesError(err)) {\n this.showValidationOnly = true;\n this.HasError = true;\n const result = this.initService.handleNoRolesError();\n return; // Don't throw, allow UI to show validation banner\n }\n\n // Try auth retry if applicable\n const retried = await this.initService.handleAuthRetry(err);\n if (retried) {\n return; // Retry initiated\n }\n\n // Show error\n this.HasError = true;\n this.ErrorMessage = err;\n LogError('Error Logging In: ' + err);\n throw err;\n }\n }\n\n /**\n * Setup authentication and handle auth state changes\n */\n async setupAuth(): Promise<void> {\n // Auth provider already initialized by APP_INITIALIZER\n\n // Listen for user info changes\n this.authBase.getUserInfo()\n .pipe(take(1))\n .subscribe({\n next: async (userInfo) => {\n if (userInfo) {\n const token = await this.authBase.getIdToken();\n\n if (token) {\n await this.handleLogin(token, userInfo);\n } else {\n console.error('User info available but no token found');\n }\n }\n },\n error: (err: unknown) => {\n LogError('Error Logging In: ' + err);\n this.subHeaderText = this.initService.getAuthErrorMessage(err);\n }\n });\n\n // Check if user is authenticated\n this.authBase.isAuthenticated()\n .pipe(take(1))\n .subscribe((loggedIn: boolean) => {\n if (!loggedIn) {\n // Display login screen - auth state is managed by provider\n console.log('User not authenticated, showing login screen');\n }\n });\n }\n}\n","/**\n * MemberJunction 3.0 Bootstrap Module\n *\n * Provides the MJBootstrapComponent and all necessary services for MemberJunction Angular applications.\n * This module encapsulates all the authentication and initialization logic that was previously\n * spread across app.component.ts and app.module.ts.\n *\n * Usage:\n * ```typescript\n * @NgModule({\n * imports: [\n * BrowserModule,\n * BrowserAnimationsModule,\n * MJBootstrapModule.forRoot(environment),\n * // ... other MJ modules\n * ],\n * bootstrap: [AppComponent]\n * })\n * export class AppModule {}\n * ```\n */\n\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MJBootstrapComponent } from './bootstrap.component';\nimport { MJAuthShellComponent } from './components/auth-shell.component';\nimport { MJInitializationService } from './services/initialization.service';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from './bootstrap.types';\nimport { MJAuthBase } from '@memberjunction/ng-auth-services';\n\n/**\n * Initialize auth provider before Angular routing starts\n * This ensures auth providers can process OAuth redirect responses before Angular's router\n * consumes the URL hash\n */\nexport function initializeAuth(authService: MJAuthBase): () => Promise<void> {\n return () => authService.initialize();\n}\n\n@NgModule({\n declarations: [\n MJBootstrapComponent,\n MJAuthShellComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n MJBootstrapComponent,\n MJAuthShellComponent\n ]\n})\nexport class MJBootstrapModule {\n /**\n * Configure the bootstrap module with environment settings\n *\n * @param environment - Environment configuration for the application\n * @returns ModuleWithProviders with environment configuration and all services\n *\n * @example\n * ```typescript\n * import { environment } from '../environments/environment';\n *\n * @NgModule({\n * imports: [\n * MJBootstrapModule.forRoot(environment)\n * ]\n * })\n * export class AppModule {}\n * ```\n */\n static forRoot(environment: MJEnvironmentConfig): ModuleWithProviders<MJBootstrapModule> {\n return {\n ngModule: MJBootstrapModule,\n providers: [\n { provide: MJ_ENVIRONMENT, useValue: environment },\n // MJInitializationService uses providedIn: 'root'\n {\n provide: APP_INITIALIZER,\n useFactory: initializeAuth,\n deps: [MJAuthBase],\n multi: true\n }\n ]\n };\n }\n}\n","/**\n * AUTO-GENERATED FILE - DO NOT EDIT\n * Generated by mj codegen manifest\n * App: @memberjunction/ng-bootstrap\n * Dependency tree: 491 packages walked, 14 contain @RegisterClass\n *\n * This file imports every @RegisterClass decorated class by name and places\n * them in an exported array, creating a static code path that prevents\n * tree-shaking from removing them.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n// @memberjunction/actions-base (2 classes)\nimport {\n ActionEntityExtended,\n EntityActionEntityExtended,\n} from '@memberjunction/actions-base';\n\n// @memberjunction/ai-core-plus (7 classes)\nimport {\n AIAgentEntityExtended,\n AIAgentRunEntityExtended,\n AIAgentRunStepEntityExtended,\n AIModelEntityExtended,\n AIPromptCategoryEntityExtended,\n AIPromptEntityExtended,\n AIPromptRunEntityExtended,\n} from '@memberjunction/ai-core-plus';\n\n// @memberjunction/ai-engine-base (4 classes)\nimport {\n AICredentialBindingEntityExtended,\n PerHundredThousandTokensPriceUnitType,\n PerMillionTokensPriceUnitType,\n PerThousandTokensPriceUnitType,\n} from '@memberjunction/ai-engine-base';\n\n// @memberjunction/communication-types (1 classes)\nimport {\n CommunicationProviderEntityExtended,\n} from '@memberjunction/communication-types';\n\n// @memberjunction/core-entities (282 classes)\nimport {\n AIActionEntity,\n AIAgentActionEntity,\n AIAgentArtifactTypeEntity,\n AIAgentConfigurationEntity,\n AIAgentDataSourceEntity,\n AIAgentEntity,\n AIAgentExampleEntity,\n AIAgentLearningCycleEntity,\n AIAgentModalityEntity,\n AIAgentModelEntity,\n AIAgentNoteEntity,\n AIAgentNoteTypeEntity,\n AIAgentPermissionEntity,\n AIAgentPromptEntity,\n AIAgentRelationshipEntity,\n AIAgentRequestEntity,\n AIAgentRunEntity,\n AIAgentRunMediaEntity,\n AIAgentRunStepEntity,\n AIAgentStepEntity,\n AIAgentStepPathEntity,\n AIAgentTypeEntity,\n AIArchitectureEntity,\n AIConfigurationEntity,\n AIConfigurationParamEntity,\n AICredentialBindingEntity,\n AIModalityEntity,\n AIModelActionEntity,\n AIModelArchitectureEntity,\n AIModelCostEntity,\n AIModelEntity,\n AIModelModalityEntity,\n AIModelPriceTypeEntity,\n AIModelPriceUnitTypeEntity,\n AIModelTypeEntity,\n AIModelVendorEntity,\n AIPromptCategoryEntity,\n AIPromptEntity,\n AIPromptModelEntity,\n AIPromptRunEntity,\n AIPromptRunMediaEntity,\n AIPromptTypeEntity,\n AIResultCacheEntity,\n AIVendorEntity,\n AIVendorTypeDefinitionEntity,\n AIVendorTypeEntity,\n APIApplicationEntity,\n APIApplicationScopeEntity,\n APIKeyApplicationEntity,\n APIKeyEntity,\n APIKeyScopeEntity,\n APIKeyUsageLogEntity,\n APIScopeEntity,\n AccessControlRuleEntity,\n ActionAuthorizationEntity,\n ActionCategoryEntity,\n ActionContextEntity,\n ActionContextTypeEntity,\n ActionEntity,\n ActionExecutionLogEntity,\n ActionFilterEntity,\n ActionLibraryEntity,\n ActionParamEntity,\n ActionResultCodeEntity,\n ApplicationEntity,\n ApplicationEntityEntity,\n ApplicationSettingEntity,\n ArtifactEntity,\n ArtifactPermissionEntity,\n ArtifactTypeEntity,\n ArtifactUseEntity,\n ArtifactVersionAttributeEntity,\n ArtifactVersionEntity,\n AuditLogEntity,\n AuditLogTypeEntity,\n AuthorizationEntity,\n AuthorizationRoleEntity,\n CollectionArtifactEntity,\n CollectionEntity,\n CollectionPermissionEntity,\n CommunicationBaseMessageTypeEntity,\n CommunicationLogEntity,\n CommunicationProviderEntity,\n CommunicationProviderMessageTypeEntity,\n CommunicationRunEntity,\n CompanyEntity,\n CompanyIntegrationEntity,\n CompanyIntegrationRecordMapEntity,\n CompanyIntegrationRunAPILogEntity,\n CompanyIntegrationRunDetailEntity,\n CompanyIntegrationRunEntity,\n ComponentDependencyEntity,\n ComponentEntity,\n ComponentEntityExtended,\n ComponentLibraryEntity,\n ComponentLibraryLinkEntity,\n ComponentRegistryEntity,\n ContentFileTypeEntity,\n ContentItemAttributeEntity,\n ContentItemEntity,\n ContentItemTagEntity,\n ContentProcessRunEntity,\n ContentSourceEntity,\n ContentSourceParamEntity,\n ContentSourceTypeEntity,\n ContentSourceTypeParamEntity,\n ContentTypeAttributeEntity,\n ContentTypeEntity,\n ConversationArtifactEntity,\n ConversationArtifactPermissionEntity,\n ConversationArtifactVersionEntity,\n ConversationDetailArtifactEntity,\n ConversationDetailAttachmentEntity,\n ConversationDetailEntity,\n ConversationDetailRatingEntity,\n ConversationEntity,\n CredentialCategoryEntity,\n CredentialEntity,\n CredentialTypeEntity,\n DashboardCategoryEntity,\n DashboardCategoryLinkEntity,\n DashboardCategoryPermissionEntity,\n DashboardEntity,\n DashboardEntityExtended,\n DashboardPartTypeEntity,\n DashboardPermissionEntity,\n DashboardUserPreferenceEntity,\n DashboardUserStateEntity,\n DataContextEntity,\n DataContextItemEntity,\n DatasetEntity,\n DatasetItemEntity,\n DuplicateRunDetailEntity,\n DuplicateRunDetailMatchEntity,\n DuplicateRunEntity,\n EmployeeCompanyIntegrationEntity,\n EmployeeEntity,\n EmployeeRoleEntity,\n EmployeeSkillEntity,\n EncryptionAlgorithmEntity,\n EncryptionKeyEntity,\n EncryptionKeySourceEntity,\n EntityAIActionEntity,\n EntityActionEntity,\n EntityActionFilterEntity,\n EntityActionInvocationEntity,\n EntityActionInvocationTypeEntity,\n EntityActionParamEntity,\n EntityCommunicationFieldEntity,\n EntityCommunicationMessageTypeEntity,\n EntityDocumentEntity,\n EntityDocumentRunEntity,\n EntityDocumentSettingEntity,\n EntityDocumentTypeEntity,\n EntityEntity,\n EntityEntityExtended,\n EntityFieldEntity,\n EntityFieldEntityExtended,\n EntityFieldValueEntity,\n EntityPermissionEntity,\n EntityRecordDocumentEntity,\n EntityRelationshipDisplayComponentEntity,\n EntityRelationshipEntity,\n EntitySettingEntity,\n EnvironmentEntity,\n EnvironmentEntityExtended,\n ErrorLogEntity,\n ExplorerNavigationItemEntity,\n FileCategoryEntity,\n FileEntity,\n FileEntityRecordLinkEntity,\n FileStorageAccountEntity,\n FileStorageProviderEntity,\n GeneratedCodeCategoryEntity,\n GeneratedCodeEntity,\n IntegrationEntity,\n IntegrationURLFormatEntity,\n LibraryEntity,\n LibraryItemEntity,\n ListCategoryEntity,\n ListDetailEntity,\n ListDetailEntityExtended,\n ListEntity,\n ListInvitationEntity,\n ListShareEntity,\n MCPServerConnectionEntity,\n MCPServerConnectionPermissionEntity,\n MCPServerConnectionToolEntity,\n MCPServerEntity,\n MCPServerToolEntity,\n MCPToolExecutionLogEntity,\n OAuthAuthServerMetadataCacheEntity,\n OAuthAuthorizationStateEntity,\n OAuthClientRegistrationEntity,\n OAuthTokenEntity,\n OutputDeliveryTypeEntity,\n OutputFormatTypeEntity,\n OutputTriggerTypeEntity,\n ProjectEntity,\n PublicLinkEntity,\n QueryCategoryEntity,\n QueryEntity,\n QueryEntityEntity,\n QueryFieldEntity,\n QueryParameterEntity,\n QueryPermissionEntity,\n QueueEntity,\n QueueTaskEntity,\n QueueTypeEntity,\n RecommendationEntity,\n RecommendationItemEntity,\n RecommendationProviderEntity,\n RecommendationRunEntity,\n RecordChangeEntity,\n RecordChangeReplayRunEntity,\n RecordLinkEntity,\n RecordMergeDeletionLogEntity,\n RecordMergeLogEntity,\n ReportCategoryEntity,\n ReportEntity,\n ReportSnapshotEntity,\n ReportUserStateEntity,\n ReportVersionEntity,\n ResourceLinkEntity,\n ResourcePermissionEntity,\n ResourcePermissionEntityExtended,\n ResourceTypeEntity,\n RoleEntity,\n RowLevelSecurityFilterEntity,\n ScheduledActionEntity,\n ScheduledActionEntityExtended,\n ScheduledActionParamEntity,\n ScheduledJobEntity,\n ScheduledJobRunEntity,\n ScheduledJobTypeEntity,\n SchemaInfoEntity,\n SkillEntity,\n TagEntity,\n TaggedItemEntity,\n TaskDependencyEntity,\n TaskEntity,\n TaskTypeEntity,\n TemplateCategoryEntity,\n TemplateContentEntity,\n TemplateContentTypeEntity,\n TemplateEntity,\n TemplateEntityExtended,\n TemplateParamEntity,\n TestEntity,\n TestRubricEntity,\n TestRunEntity,\n TestRunFeedbackEntity,\n TestSuiteEntity,\n TestSuiteRunEntity,\n TestSuiteTestEntity,\n TestTypeEntity,\n UserApplicationEntity,\n UserApplicationEntityEntity,\n UserEntity,\n UserFavoriteEntity,\n UserNotificationEntity,\n UserNotificationPreferenceEntity,\n UserNotificationTypeEntity,\n UserRecordLogEntity,\n UserRoleEntity,\n UserSettingEntity,\n UserViewCategoryEntity,\n UserViewEntity,\n UserViewEntityExtended,\n UserViewRunDetailEntity,\n UserViewRunEntity,\n VectorDatabaseEntity,\n VectorIndexEntity,\n VersionInstallationEntity,\n VersionLabelEntity,\n VersionLabelItemEntity,\n VersionLabelRestoreEntity,\n WorkflowEngineEntity,\n WorkflowEntity,\n WorkflowRunEntity,\n WorkspaceEntity,\n WorkspaceItemEntity,\n} from '@memberjunction/core-entities';\n\n// @memberjunction/entity-communications-base (1 classes)\nimport {\n EntityCommunicationMessageTypeExtended,\n} from '@memberjunction/entity-communications-base';\n\n// @memberjunction/ng-artifacts (6 classes)\nimport {\n CodeArtifactViewerComponent,\n ComponentArtifactViewerComponent,\n HtmlArtifactViewerComponent,\n JsonArtifactViewerComponent,\n MarkdownArtifactViewerComponent,\n SvgArtifactViewerComponent,\n} from '@memberjunction/ng-artifacts';\n\n// @memberjunction/ng-auth-services (3 classes)\nimport {\n MJAuth0Provider,\n MJMSALProvider,\n MJOktaProvider,\n} from '@memberjunction/ng-auth-services';\n\n// @memberjunction/ng-core-entity-forms (1 classes)\nimport {\n FlowAgentFormSectionComponent,\n} from '@memberjunction/ng-core-entity-forms';\n\n// @memberjunction/ng-dashboard-viewer (8 classes)\nimport {\n ArtifactConfigPanelComponent,\n ArtifactPartComponent,\n QueryConfigPanelComponent,\n QueryPartComponent,\n ViewConfigPanelComponent,\n ViewPartComponent,\n WebURLConfigPanelComponent,\n WebURLPartComponent,\n} from '@memberjunction/ng-dashboard-viewer';\n\n// @memberjunction/ng-dashboards (52 classes)\nimport {\n APIKeysResourceComponent,\n ActionExplorerComponent,\n ActionsOverviewComponent,\n AgentConfigurationComponent,\n CodeManagementComponent,\n CommunicationDashboardComponent,\n CommunicationLogsResourceComponent,\n CommunicationMonitorResourceComponent,\n CommunicationProvidersResourceComponent,\n CommunicationRunsResourceComponent,\n CommunicationTemplatesResourceComponent,\n ComponentStudioDashboardComponent,\n CredentialsAuditResourceComponent,\n CredentialsCategoriesResourceComponent,\n CredentialsDashboardComponent,\n CredentialsListResourceComponent,\n CredentialsOverviewResourceComponent,\n CredentialsTypesResourceComponent,\n DashboardBrowserResourceComponent,\n DataExplorerDashboardComponent,\n DataExplorerResourceComponent,\n EntityAdminDashboardComponent,\n EntityIntegrationComponent,\n ExecutionMonitoringComponent,\n HomeApplication,\n HomeDashboardComponent,\n ListsBrowseResource,\n ListsCategoriesResource,\n ListsMyListsResource,\n ListsOperationsResource,\n MCPDashboardComponent,\n ModelManagementComponent,\n PromptManagementComponent,\n QueryBrowserResourceComponent,\n ScheduledActionsComponent,\n SchedulingActivityResourceComponent,\n SchedulingDashboardComponent,\n SchedulingJobsResourceComponent,\n SchedulingOverviewResourceComponent,\n SecurityPermissionsComponent,\n SystemConfigurationComponent,\n SystemDiagnosticsComponent,\n TestingAnalyticsResourceComponent,\n TestingDashboardComponent,\n TestingDashboardTabResourceComponent,\n TestingExplorerResourceComponent,\n TestingReviewResourceComponent,\n TestingRunsResourceComponent,\n VersionHistoryDiffResourceComponent,\n VersionHistoryGraphResourceComponent,\n VersionHistoryLabelsResourceComponent,\n VersionHistoryRestoreResourceComponent,\n} from '@memberjunction/ng-dashboards';\n\n// @memberjunction/ng-explorer-core (9 classes)\nimport {\n ArtifactResource,\n BaseUserMenu,\n ChatConversationsResource,\n DashboardResource,\n EntityRecordResource,\n ListDetailResource,\n QueryResource,\n SearchResultsResource,\n UserViewResource,\n} from '@memberjunction/ng-explorer-core';\n\n// @memberjunction/ng-explorer-settings (6 classes)\nimport {\n ApplicationManagementComponent,\n EntityPermissionsComponent,\n RoleManagementComponent,\n SettingsComponent,\n SqlLoggingComponent,\n UserManagementComponent,\n} from '@memberjunction/ng-explorer-settings';\n\n// @memberjunction/ng-file-storage (1 classes)\nimport {\n FileBrowserResource,\n} from '@memberjunction/ng-file-storage';\n\n/**\n * Runtime references to every @RegisterClass decorated class.\n * This array creates a static code path the bundler cannot tree-shake.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const CLASS_REGISTRATIONS: any[] = [\n ActionEntityExtended,\n EntityActionEntityExtended,\n AIAgentEntityExtended,\n AIAgentRunEntityExtended,\n AIAgentRunStepEntityExtended,\n AIModelEntityExtended,\n AIPromptCategoryEntityExtended,\n AIPromptEntityExtended,\n AIPromptRunEntityExtended,\n AICredentialBindingEntityExtended,\n PerHundredThousandTokensPriceUnitType,\n PerMillionTokensPriceUnitType,\n PerThousandTokensPriceUnitType,\n CommunicationProviderEntityExtended,\n AIActionEntity,\n AIAgentActionEntity,\n AIAgentArtifactTypeEntity,\n AIAgentConfigurationEntity,\n AIAgentDataSourceEntity,\n AIAgentEntity,\n AIAgentExampleEntity,\n AIAgentLearningCycleEntity,\n AIAgentModalityEntity,\n AIAgentModelEntity,\n AIAgentNoteEntity,\n AIAgentNoteTypeEntity,\n AIAgentPermissionEntity,\n AIAgentPromptEntity,\n AIAgentRelationshipEntity,\n AIAgentRequestEntity,\n AIAgentRunEntity,\n AIAgentRunMediaEntity,\n AIAgentRunStepEntity,\n AIAgentStepEntity,\n AIAgentStepPathEntity,\n AIAgentTypeEntity,\n AIArchitectureEntity,\n AIConfigurationEntity,\n AIConfigurationParamEntity,\n AICredentialBindingEntity,\n AIModalityEntity,\n AIModelActionEntity,\n AIModelArchitectureEntity,\n AIModelCostEntity,\n AIModelEntity,\n AIModelModalityEntity,\n AIModelPriceTypeEntity,\n AIModelPriceUnitTypeEntity,\n AIModelTypeEntity,\n AIModelVendorEntity,\n AIPromptCategoryEntity,\n AIPromptEntity,\n AIPromptModelEntity,\n AIPromptRunEntity,\n AIPromptRunMediaEntity,\n AIPromptTypeEntity,\n AIResultCacheEntity,\n AIVendorEntity,\n AIVendorTypeDefinitionEntity,\n AIVendorTypeEntity,\n APIApplicationEntity,\n APIApplicationScopeEntity,\n APIKeyApplicationEntity,\n APIKeyEntity,\n APIKeyScopeEntity,\n APIKeyUsageLogEntity,\n APIScopeEntity,\n AccessControlRuleEntity,\n ActionAuthorizationEntity,\n ActionCategoryEntity,\n ActionContextEntity,\n ActionContextTypeEntity,\n ActionEntity,\n ActionExecutionLogEntity,\n ActionFilterEntity,\n ActionLibraryEntity,\n ActionParamEntity,\n ActionResultCodeEntity,\n ApplicationEntity,\n ApplicationEntityEntity,\n ApplicationSettingEntity,\n ArtifactEntity,\n ArtifactPermissionEntity,\n ArtifactTypeEntity,\n ArtifactUseEntity,\n ArtifactVersionAttributeEntity,\n ArtifactVersionEntity,\n AuditLogEntity,\n AuditLogTypeEntity,\n AuthorizationEntity,\n AuthorizationRoleEntity,\n CollectionArtifactEntity,\n CollectionEntity,\n CollectionPermissionEntity,\n CommunicationBaseMessageTypeEntity,\n CommunicationLogEntity,\n CommunicationProviderEntity,\n CommunicationProviderMessageTypeEntity,\n CommunicationRunEntity,\n CompanyEntity,\n CompanyIntegrationEntity,\n CompanyIntegrationRecordMapEntity,\n CompanyIntegrationRunAPILogEntity,\n CompanyIntegrationRunDetailEntity,\n CompanyIntegrationRunEntity,\n ComponentDependencyEntity,\n ComponentEntity,\n ComponentEntityExtended,\n ComponentLibraryEntity,\n ComponentLibraryLinkEntity,\n ComponentRegistryEntity,\n ContentFileTypeEntity,\n ContentItemAttributeEntity,\n ContentItemEntity,\n ContentItemTagEntity,\n ContentProcessRunEntity,\n ContentSourceEntity,\n ContentSourceParamEntity,\n ContentSourceTypeEntity,\n ContentSourceTypeParamEntity,\n ContentTypeAttributeEntity,\n ContentTypeEntity,\n ConversationArtifactEntity,\n ConversationArtifactPermissionEntity,\n ConversationArtifactVersionEntity,\n ConversationDetailArtifactEntity,\n ConversationDetailAttachmentEntity,\n ConversationDetailEntity,\n ConversationDetailRatingEntity,\n ConversationEntity,\n CredentialCategoryEntity,\n CredentialEntity,\n CredentialTypeEntity,\n DashboardCategoryEntity,\n DashboardCategoryLinkEntity,\n DashboardCategoryPermissionEntity,\n DashboardEntity,\n DashboardEntityExtended,\n DashboardPartTypeEntity,\n DashboardPermissionEntity,\n DashboardUserPreferenceEntity,\n DashboardUserStateEntity,\n DataContextEntity,\n DataContextItemEntity,\n DatasetEntity,\n DatasetItemEntity,\n DuplicateRunDetailEntity,\n DuplicateRunDetailMatchEntity,\n DuplicateRunEntity,\n EmployeeCompanyIntegrationEntity,\n EmployeeEntity,\n EmployeeRoleEntity,\n EmployeeSkillEntity,\n EncryptionAlgorithmEntity,\n EncryptionKeyEntity,\n EncryptionKeySourceEntity,\n EntityAIActionEntity,\n EntityActionEntity,\n EntityActionFilterEntity,\n EntityActionInvocationEntity,\n EntityActionInvocationTypeEntity,\n EntityActionParamEntity,\n EntityCommunicationFieldEntity,\n EntityCommunicationMessageTypeEntity,\n EntityDocumentEntity,\n EntityDocumentRunEntity,\n EntityDocumentSettingEntity,\n EntityDocumentTypeEntity,\n EntityEntity,\n EntityEntityExtended,\n EntityFieldEntity,\n EntityFieldEntityExtended,\n EntityFieldValueEntity,\n EntityPermissionEntity,\n EntityRecordDocumentEntity,\n EntityRelationshipDisplayComponentEntity,\n EntityRelationshipEntity,\n EntitySettingEntity,\n EnvironmentEntity,\n EnvironmentEntityExtended,\n ErrorLogEntity,\n ExplorerNavigationItemEntity,\n FileCategoryEntity,\n FileEntity,\n FileEntityRecordLinkEntity,\n FileStorageAccountEntity,\n FileStorageProviderEntity,\n GeneratedCodeCategoryEntity,\n GeneratedCodeEntity,\n IntegrationEntity,\n IntegrationURLFormatEntity,\n LibraryEntity,\n LibraryItemEntity,\n ListCategoryEntity,\n ListDetailEntity,\n ListDetailEntityExtended,\n ListEntity,\n ListInvitationEntity,\n ListShareEntity,\n MCPServerConnectionEntity,\n MCPServerConnectionPermissionEntity,\n MCPServerConnectionToolEntity,\n MCPServerEntity,\n MCPServerToolEntity,\n MCPToolExecutionLogEntity,\n OAuthAuthServerMetadataCacheEntity,\n OAuthAuthorizationStateEntity,\n OAuthClientRegistrationEntity,\n OAuthTokenEntity,\n OutputDeliveryTypeEntity,\n OutputFormatTypeEntity,\n OutputTriggerTypeEntity,\n ProjectEntity,\n PublicLinkEntity,\n QueryCategoryEntity,\n QueryEntity,\n QueryEntityEntity,\n QueryFieldEntity,\n QueryParameterEntity,\n QueryPermissionEntity,\n QueueEntity,\n QueueTaskEntity,\n QueueTypeEntity,\n RecommendationEntity,\n RecommendationItemEntity,\n RecommendationProviderEntity,\n RecommendationRunEntity,\n RecordChangeEntity,\n RecordChangeReplayRunEntity,\n RecordLinkEntity,\n RecordMergeDeletionLogEntity,\n RecordMergeLogEntity,\n ReportCategoryEntity,\n ReportEntity,\n ReportSnapshotEntity,\n ReportUserStateEntity,\n ReportVersionEntity,\n ResourceLinkEntity,\n ResourcePermissionEntity,\n ResourcePermissionEntityExtended,\n ResourceTypeEntity,\n RoleEntity,\n RowLevelSecurityFilterEntity,\n ScheduledActionEntity,\n ScheduledActionEntityExtended,\n ScheduledActionParamEntity,\n ScheduledJobEntity,\n ScheduledJobRunEntity,\n ScheduledJobTypeEntity,\n SchemaInfoEntity,\n SkillEntity,\n TagEntity,\n TaggedItemEntity,\n TaskDependencyEntity,\n TaskEntity,\n TaskTypeEntity,\n TemplateCategoryEntity,\n TemplateContentEntity,\n TemplateContentTypeEntity,\n TemplateEntity,\n TemplateEntityExtended,\n TemplateParamEntity,\n TestEntity,\n TestRubricEntity,\n TestRunEntity,\n TestRunFeedbackEntity,\n TestSuiteEntity,\n TestSuiteRunEntity,\n TestSuiteTestEntity,\n TestTypeEntity,\n UserApplicationEntity,\n UserApplicationEntityEntity,\n UserEntity,\n UserFavoriteEntity,\n UserNotificationEntity,\n UserNotificationPreferenceEntity,\n UserNotificationTypeEntity,\n UserRecordLogEntity,\n UserRoleEntity,\n UserSettingEntity,\n UserViewCategoryEntity,\n UserViewEntity,\n UserViewEntityExtended,\n UserViewRunDetailEntity,\n UserViewRunEntity,\n VectorDatabaseEntity,\n VectorIndexEntity,\n VersionInstallationEntity,\n VersionLabelEntity,\n VersionLabelItemEntity,\n VersionLabelRestoreEntity,\n WorkflowEngineEntity,\n WorkflowEntity,\n WorkflowRunEntity,\n WorkspaceEntity,\n WorkspaceItemEntity,\n EntityCommunicationMessageTypeExtended,\n CodeArtifactViewerComponent,\n ComponentArtifactViewerComponent,\n HtmlArtifactViewerComponent,\n JsonArtifactViewerComponent,\n MarkdownArtifactViewerComponent,\n SvgArtifactViewerComponent,\n MJAuth0Provider,\n MJMSALProvider,\n MJOktaProvider,\n FlowAgentFormSectionComponent,\n ArtifactConfigPanelComponent,\n ArtifactPartComponent,\n QueryConfigPanelComponent,\n QueryPartComponent,\n ViewConfigPanelComponent,\n ViewPartComponent,\n WebURLConfigPanelComponent,\n WebURLPartComponent,\n APIKeysResourceComponent,\n ActionExplorerComponent,\n ActionsOverviewComponent,\n AgentConfigurationComponent,\n CodeManagementComponent,\n CommunicationDashboardComponent,\n CommunicationLogsResourceComponent,\n CommunicationMonitorResourceComponent,\n CommunicationProvidersResourceComponent,\n CommunicationRunsResourceComponent,\n CommunicationTemplatesResourceComponent,\n ComponentStudioDashboardComponent,\n CredentialsAuditResourceComponent,\n CredentialsCategoriesResourceComponent,\n CredentialsDashboardComponent,\n CredentialsListResourceComponent,\n CredentialsOverviewResourceComponent,\n CredentialsTypesResourceComponent,\n DashboardBrowserResourceComponent,\n DataExplorerDashboardComponent,\n DataExplorerResourceComponent,\n EntityAdminDashboardComponent,\n EntityIntegrationComponent,\n ExecutionMonitoringComponent,\n HomeApplication,\n HomeDashboardComponent,\n ListsBrowseResource,\n ListsCategoriesResource,\n ListsMyListsResource,\n ListsOperationsResource,\n MCPDashboardComponent,\n ModelManagementComponent,\n PromptManagementComponent,\n QueryBrowserResourceComponent,\n ScheduledActionsComponent,\n SchedulingActivityResourceComponent,\n SchedulingDashboardComponent,\n SchedulingJobsResourceComponent,\n SchedulingOverviewResourceComponent,\n SecurityPermissionsComponent,\n SystemConfigurationComponent,\n SystemDiagnosticsComponent,\n TestingAnalyticsResourceComponent,\n TestingDashboardComponent,\n TestingDashboardTabResourceComponent,\n TestingExplorerResourceComponent,\n TestingReviewResourceComponent,\n TestingRunsResourceComponent,\n VersionHistoryDiffResourceComponent,\n VersionHistoryGraphResourceComponent,\n VersionHistoryLabelsResourceComponent,\n VersionHistoryRestoreResourceComponent,\n ArtifactResource,\n BaseUserMenu,\n ChatConversationsResource,\n DashboardResource,\n EntityRecordResource,\n ListDetailResource,\n QueryResource,\n SearchResultsResource,\n UserViewResource,\n ApplicationManagementComponent,\n EntityPermissionsComponent,\n RoleManagementComponent,\n SettingsComponent,\n SqlLoggingComponent,\n UserManagementComponent,\n FileBrowserResource,\n];\n\n/** Marker constant indicating the manifest has been loaded. */\nexport const CLASS_REGISTRATIONS_MANIFEST_LOADED = true;\n\n/** Total @RegisterClass decorated classes discovered in dependency tree */\nexport const CLASS_REGISTRATIONS_COUNT = 383;\n\n/** Packages imported by this manifest */\nexport const CLASS_REGISTRATIONS_PACKAGES = [\n '@memberjunction/actions-base',\n '@memberjunction/ai-core-plus',\n '@memberjunction/ai-engine-base',\n '@memberjunction/communication-types',\n '@memberjunction/core-entities',\n '@memberjunction/entity-communications-base',\n '@memberjunction/ng-artifacts',\n '@memberjunction/ng-auth-services',\n '@memberjunction/ng-core-entity-forms',\n '@memberjunction/ng-dashboard-viewer',\n '@memberjunction/ng-dashboards',\n '@memberjunction/ng-explorer-core',\n '@memberjunction/ng-explorer-settings',\n '@memberjunction/ng-file-storage',\n] as const;\n","/**\n * Public API Surface of @memberjunction/ng-bootstrap\n */\n\nexport * from './lib/bootstrap.module';\nexport * from './lib/bootstrap.component';\nexport * from './lib/bootstrap.types';\nexport * from './lib/services/initialization.service';\nexport * from './lib/components/auth-shell.component';\n\n/**\n * Pre-built class registrations manifest for all @memberjunction/* Angular packages.\n * Importing this module prevents tree-shaking of MJ's dynamically registered classes.\n * Generated at MJ build time and ships with the package.\n */\nexport * from './generated/mj-class-registrations';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.MJInitializationService"],"mappings":"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"}
1
+ {"version":3,"file":"memberjunction-ng-bootstrap.mjs","sources":["../../src/lib/bootstrap.types.ts","../../src/lib/bootstrap.component.ts","../../src/lib/services/initialization.service.ts","../../src/lib/components/auth-shell.component.ts","../../src/lib/bootstrap.module.ts","../../src/generated/mj-class-registrations.ts","../../src/public-api.ts","../../src/memberjunction-ng-bootstrap.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Injection token for MJ Environment Configuration\n */\nexport const MJ_ENVIRONMENT = new InjectionToken<MJEnvironmentConfig>('MJ_ENVIRONMENT');\n\n/**\n * Injection token for optional startup validation service\n */\nexport const MJ_STARTUP_VALIDATION = new InjectionToken<MJStartupValidationService | null>('MJ_STARTUP_VALIDATION', {\n providedIn: 'root',\n factory: () => null // Default to null if not provided\n});\n\n/**\n * Optional interface for startup validation services\n * Applications can provide their own implementation to handle startup validation\n */\nexport interface MJStartupValidationService {\n /**\n * Runs validation checks during application startup\n */\n validateSystemSetup(): void;\n\n /**\n * Adds a validation issue for missing user roles\n */\n addNoRolesValidationIssue(): void;\n}\n\n/**\n * Environment configuration interface for MemberJunction Angular applications\n */\nexport interface MJEnvironmentConfig {\n /**\n * Whether the app is running in production mode\n */\n production: boolean;\n\n /**\n * GraphQL HTTP endpoint URL\n * @example 'http://localhost:4000/graphql'\n */\n GRAPHQL_URI: string;\n\n /**\n * GraphQL WebSocket endpoint URL for subscriptions\n * @example 'ws://localhost:4000/graphql'\n */\n GRAPHQL_WS_URI: string;\n\n /**\n * Authentication provider type\n */\n AUTH_TYPE: 'msal' | 'auth0';\n\n /**\n * MemberJunction core schema name in the database\n * @default '__mj'\n */\n MJ_CORE_SCHEMA_NAME: string;\n\n /**\n * Microsoft Azure AD/Entra Client ID (for MSAL auth)\n */\n CLIENT_ID?: string;\n\n /**\n * Microsoft Azure AD/Entra Tenant ID (for MSAL auth)\n */\n TENANT_ID?: string;\n\n /**\n * Auth0 domain (for Auth0 auth)\n * @example 'myapp.us.auth0.com'\n */\n AUTH0_DOMAIN?: string;\n\n /**\n * Auth0 client ID (for Auth0 auth)\n */\n AUTH0_CLIENTID?: string;\n\n /**\n * Additional custom environment properties\n */\n [key: string]: any;\n}\n","/**\n * MemberJunction 3.0 Bootstrap Component\n *\n * Minimal placeholder component for future fully encapsulated bootstrap.\n * Currently applications should use MJInitializationService directly in their app.component.\n */\n\nimport { Component, Inject, OnInit } from '@angular/core';\nimport { SetProductionStatus } from '@memberjunction/core';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from './bootstrap.types';\n\n@Component({\n standalone: false,\n selector: 'mj-bootstrap',\n template: `\n <div class=\"mj-bootstrap-container\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [`\n .mj-bootstrap-container {\n display: block;\n width: 100%;\n height: 100%;\n }\n `]\n})\nexport class MJBootstrapComponent implements OnInit {\n constructor(\n @Inject(MJ_ENVIRONMENT) private environment: MJEnvironmentConfig\n ) {}\n\n ngOnInit() {\n console.log('🚀 MemberJunction 3.0 Bootstrap');\n SetProductionStatus(this.environment.production);\n }\n}\n","/**\n * MemberJunction 3.0 Initialization Service\n *\n * Handles all core initialization tasks:\n * - Generated entities loading\n * - GraphQL client setup\n * - Token refresh configuration\n * - System validation\n */\n\nimport { Injectable, Inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Metadata } from '@memberjunction/core';\nimport { setupGraphQLClient, GraphQLProviderConfigData } from '@memberjunction/graphql-dataprovider';\nimport { MJAuthBase, StandardUserInfo, AuthErrorType } from '@memberjunction/ng-auth-services';\nimport { SharedService } from '@memberjunction/ng-shared';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT, MJStartupValidationService, MJ_STARTUP_VALIDATION } from '../bootstrap.types';\n\nexport interface InitializationResult {\n success: boolean;\n error?: {\n message: string;\n type: 'no_access' | 'no_roles' | 'auth_error' | 'unknown';\n showValidationOnly?: boolean;\n };\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MJInitializationService {\n constructor(\n private router: Router,\n private authBase: MJAuthBase,\n @Inject(MJ_STARTUP_VALIDATION) private startupValidationService: MJStartupValidationService | null\n ) {}\n\n /**\n * Initialize GraphQL client with authentication token and refresh callback\n */\n async initializeGraphQL(token: string, environment: MJEnvironmentConfig): Promise<void> {\n const url: string = environment.GRAPHQL_URI;\n const wsurl: string = environment.GRAPHQL_WS_URI;\n\n const start = Date.now();\n const config = new GraphQLProviderConfigData(\n token,\n url,\n wsurl,\n async () => {\n // Token refresh callback - refreshToken() returns StandardAuthToken directly or throws\n const token = await this.authBase.refreshToken();\n return token.idToken;\n },\n environment.MJ_CORE_SCHEMA_NAME\n );\n\n await setupGraphQLClient(config);\n const end = Date.now();\n console.log(`✓ GraphQL Client Setup Complete: ${end - start}ms`);\n }\n\n /**\n * Refresh shared data and validate user access\n */\n async validateUserAccess(): Promise<InitializationResult> {\n await SharedService.RefreshData(true);\n\n const md = new Metadata();\n\n if (!md.CurrentUser) {\n return {\n success: false,\n error: {\n message: \"You don't have access to the application, contact your system administrator.\",\n type: 'no_access'\n }\n };\n }\n\n return { success: true };\n }\n\n /**\n * Run startup validation checks (if validation service is provided)\n */\n runValidationChecks(): void {\n if (!this.startupValidationService) {\n return; // No validation service provided\n }\n\n // Small delay to ensure everything is initialized\n setTimeout(() => {\n this.startupValidationService?.validateSystemSetup();\n }, 500);\n }\n\n /**\n * Navigate to initial route after successful login\n */\n navigateToInitialRoute(initialPath: string, document: Document): void {\n localStorage.removeItem('jwt-retry-ts');\n\n if (initialPath === '/') {\n // Use first nav item instead\n setTimeout(() => {\n // Find the KendoDrawer element and simulate a click for the first item\n const drawerElement = document.querySelector('li.k-drawer-item.k-level-0') as any;\n if (drawerElement) drawerElement.click();\n }, 10); // Wait for the drawer to finish render\n } else {\n this.router.navigateByUrl(initialPath, { replaceUrl: true });\n }\n }\n\n /**\n * Check if error is related to missing user roles\n */\n isNoUserRolesError(err: any): boolean {\n try {\n if (!err || typeof err !== 'object') return false;\n\n // Check for GraphQL-style errors\n if (err.response && Array.isArray(err.response.errors)) {\n return err.response.errors.some((e: any) =>\n e && e.message && typeof e.message === 'string' &&\n e.message.includes('does not have read permissions on User Roles')\n );\n }\n\n // Check for specific \"ResourceTypes\" error\n if (err.toString && typeof err.toString === 'function') {\n const errorString = err.toString();\n if (errorString.includes(\"Cannot read properties of undefined (reading 'ResourceTypes')\")) {\n return true;\n }\n }\n\n // Check for error message directly on the error object\n if (err.message && typeof err.message === 'string') {\n const message = err.message;\n return message.includes('does not have read permissions on User Roles') ||\n message.includes(\"Cannot read properties of undefined (reading 'ResourceTypes')\");\n }\n\n // Check for nested error object\n if (err.error && typeof err.error === 'object') {\n return this.isNoUserRolesError(err.error);\n }\n\n return false;\n } catch (e) {\n console.error('Error while checking for user roles error:', e);\n return false;\n }\n }\n\n /**\n * Handle no roles error by showing validation banner (if validation service is provided)\n */\n handleNoRolesError(): InitializationResult {\n this.startupValidationService?.addNoRolesValidationIssue();\n\n return {\n success: false,\n error: {\n message: 'User has no roles assigned',\n type: 'no_roles',\n showValidationOnly: true\n }\n };\n }\n\n /**\n * Handle authentication retry logic\n */\n async handleAuthRetry(err: any): Promise<boolean> {\n const retryKey = 'auth-retry-dt';\n const lastRetryDateTime = localStorage.getItem(retryKey);\n const yesterday = +new Date(Date.now() - 1 * 24 * 60 * 60 * 1000);\n const retriedRecently = lastRetryDateTime && +new Date(lastRetryDateTime) > yesterday;\n\n const authError = this.authBase.classifyError(err);\n const isTokenExpired = authError.type === AuthErrorType.TOKEN_EXPIRED;\n\n if (!retriedRecently && isTokenExpired) {\n console.log('JWT Expired, retrying once: ' + err);\n localStorage.setItem(retryKey, new Date().toISOString());\n await this.authBase.login({ appState: { target: window.location.pathname } }).toPromise();\n return true;\n }\n\n return false;\n }\n\n /**\n * Get auth error message for display\n */\n getAuthErrorMessage(err: unknown): string {\n const authError = this.authBase.classifyError(err);\n\n switch (authError.type) {\n case AuthErrorType.NO_ACTIVE_SESSION:\n return \"Welcome back! Please log in to your account.\";\n case AuthErrorType.INTERACTION_REQUIRED:\n case AuthErrorType.TOKEN_EXPIRED:\n return \"Your session has expired. Please log in to your account.\";\n default:\n return authError.userMessage || \"Welcome back! Please log in to your account.\";\n }\n }\n}\n","/**\n * MemberJunction 3.0 Auth Shell Component\n *\n * Handles authentication flow and initialization for MJ applications.\n * This component encapsulates all the auth logic that was previously in app.component.ts\n */\n\nimport { Component, OnInit, Inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { Router } from '@angular/router';\nimport { take } from 'rxjs/operators';\nimport { SetProductionStatus, LogError, LogStatus } from '@memberjunction/core';\nimport { MJAuthBase, StandardUserInfo, AuthErrorType } from '@memberjunction/ng-auth-services';\nimport { MJInitializationService } from '../services/initialization.service';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from '../bootstrap.types';\n\n@Component({\n standalone: false,\n selector: 'mj-auth-shell',\n template: `\n <div class=\"mj-auth-shell\">\n @if (!HasError || showValidationOnly) {\n <ng-content></ng-content>\n }\n \n @if (HasError && !showValidationOnly) {\n <div class=\"error-container\">\n <h2>Error</h2>\n <p>{{ ErrorMessage }}</p>\n </div>\n }\n </div>\n `,\n styles: [`\n .mj-auth-shell {\n width: 100%;\n height: 100%;\n display: block;\n }\n\n .error-container {\n padding: 20px;\n text-align: center;\n }\n\n .error-container h2 {\n color: #d32f2f;\n margin-bottom: 10px;\n }\n `]\n})\nexport class MJAuthShellComponent implements OnInit {\n public HasError = false;\n public ErrorMessage: any = '';\n public showValidationOnly = false;\n public subHeaderText: string = \"Welcome back! Please log in to your account.\";\n\n private initialPath = '/';\n\n constructor(\n private router: Router,\n @Inject(DOCUMENT) public document: Document,\n public authBase: MJAuthBase,\n private initService: MJInitializationService,\n @Inject(MJ_ENVIRONMENT) private environment: MJEnvironmentConfig\n ) {}\n\n async ngOnInit() {\n console.log('🚀 MemberJunction 3.0 - Auth Shell Initializing');\n\n SetProductionStatus(this.environment.production);\n this.initialPath = window.location.pathname + (window.location.search ? window.location.search : '');\n\n await this.setupAuth();\n }\n\n /**\n * Handle successful login and initialize the application\n */\n async handleLogin(token: string, userInfo: StandardUserInfo): Promise<void> {\n if (!token) return;\n\n try {\n // Initialize GraphQL client\n await this.initService.initializeGraphQL(token, this.environment);\n\n // Validate user access and refresh data\n const validationResult = await this.initService.validateUserAccess();\n\n if (!validationResult.success) {\n this.HasError = true;\n this.ErrorMessage = validationResult.error!.message;\n throw new Error(this.ErrorMessage);\n }\n\n // Run startup validation checks\n this.initService.runValidationChecks();\n\n // Navigate to initial route\n this.initService.navigateToInitialRoute(this.initialPath, this.document);\n\n } catch (err: any) {\n // Check for no roles error\n if (this.initService.isNoUserRolesError(err)) {\n this.showValidationOnly = true;\n this.HasError = true;\n const result = this.initService.handleNoRolesError();\n return; // Don't throw, allow UI to show validation banner\n }\n\n // Try auth retry if applicable\n const retried = await this.initService.handleAuthRetry(err);\n if (retried) {\n return; // Retry initiated\n }\n\n // Show error\n this.HasError = true;\n this.ErrorMessage = err;\n LogError('Error Logging In: ' + err);\n throw err;\n }\n }\n\n /**\n * Setup authentication and handle auth state changes\n */\n async setupAuth(): Promise<void> {\n // Auth provider already initialized by APP_INITIALIZER\n\n // Listen for user info changes\n this.authBase.getUserInfo()\n .pipe(take(1))\n .subscribe({\n next: async (userInfo) => {\n if (userInfo) {\n const token = await this.authBase.getIdToken();\n\n if (token) {\n await this.handleLogin(token, userInfo);\n } else {\n console.error('User info available but no token found');\n }\n }\n },\n error: (err: unknown) => {\n LogError('Error Logging In: ' + err);\n this.subHeaderText = this.initService.getAuthErrorMessage(err);\n }\n });\n\n // Check if user is authenticated\n this.authBase.isAuthenticated()\n .pipe(take(1))\n .subscribe((loggedIn: boolean) => {\n if (!loggedIn) {\n // Display login screen - auth state is managed by provider\n console.log('User not authenticated, showing login screen');\n }\n });\n }\n}\n","/**\n * MemberJunction 3.0 Bootstrap Module\n *\n * Provides the MJBootstrapComponent and all necessary services for MemberJunction Angular applications.\n * This module encapsulates all the authentication and initialization logic that was previously\n * spread across app.component.ts and app.module.ts.\n *\n * Usage:\n * ```typescript\n * @NgModule({\n * imports: [\n * BrowserModule,\n * BrowserAnimationsModule,\n * MJBootstrapModule.forRoot(environment),\n * // ... other MJ modules\n * ],\n * bootstrap: [AppComponent]\n * })\n * export class AppModule {}\n * ```\n */\n\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MJBootstrapComponent } from './bootstrap.component';\nimport { MJAuthShellComponent } from './components/auth-shell.component';\nimport { MJInitializationService } from './services/initialization.service';\nimport { MJEnvironmentConfig, MJ_ENVIRONMENT } from './bootstrap.types';\nimport { MJAuthBase } from '@memberjunction/ng-auth-services';\n\n/**\n * Initialize auth provider before Angular routing starts\n * This ensures auth providers can process OAuth redirect responses before Angular's router\n * consumes the URL hash\n */\nexport function initializeAuth(authService: MJAuthBase): () => Promise<void> {\n return () => authService.initialize();\n}\n\n@NgModule({\n declarations: [\n MJBootstrapComponent,\n MJAuthShellComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n MJBootstrapComponent,\n MJAuthShellComponent\n ]\n})\nexport class MJBootstrapModule {\n /**\n * Configure the bootstrap module with environment settings\n *\n * @param environment - Environment configuration for the application\n * @returns ModuleWithProviders with environment configuration and all services\n *\n * @example\n * ```typescript\n * import { environment } from '../environments/environment';\n *\n * @NgModule({\n * imports: [\n * MJBootstrapModule.forRoot(environment)\n * ]\n * })\n * export class AppModule {}\n * ```\n */\n static forRoot(environment: MJEnvironmentConfig): ModuleWithProviders<MJBootstrapModule> {\n return {\n ngModule: MJBootstrapModule,\n providers: [\n { provide: MJ_ENVIRONMENT, useValue: environment },\n // MJInitializationService uses providedIn: 'root'\n {\n provide: APP_INITIALIZER,\n useFactory: initializeAuth,\n deps: [MJAuthBase],\n multi: true\n }\n ]\n };\n }\n}\n","/**\n * AUTO-GENERATED FILE - DO NOT EDIT\n * Generated by mj codegen manifest\n * App: @memberjunction/ng-bootstrap\n * Dependency tree: 490 packages walked, 14 contain @RegisterClass\n *\n * This file imports every @RegisterClass decorated class by name and places\n * them in an exported array, creating a static code path that prevents\n * tree-shaking from removing them.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n// @memberjunction/actions-base (2 classes)\nimport {\n ActionEntityExtended,\n EntityActionEntityExtended,\n} from '@memberjunction/actions-base';\n\n// @memberjunction/ai-core-plus (7 classes)\nimport {\n AIAgentEntityExtended,\n AIAgentRunEntityExtended,\n AIAgentRunStepEntityExtended,\n AIModelEntityExtended,\n AIPromptCategoryEntityExtended,\n AIPromptEntityExtended,\n AIPromptRunEntityExtended,\n} from '@memberjunction/ai-core-plus';\n\n// @memberjunction/ai-engine-base (4 classes)\nimport {\n AICredentialBindingEntityExtended,\n PerHundredThousandTokensPriceUnitType,\n PerMillionTokensPriceUnitType,\n PerThousandTokensPriceUnitType,\n} from '@memberjunction/ai-engine-base';\n\n// @memberjunction/communication-types (1 classes)\nimport {\n CommunicationProviderEntityExtended,\n} from '@memberjunction/communication-types';\n\n// @memberjunction/core-entities (282 classes)\nimport {\n AIActionEntity,\n AIAgentActionEntity,\n AIAgentArtifactTypeEntity,\n AIAgentConfigurationEntity,\n AIAgentDataSourceEntity,\n AIAgentEntity,\n AIAgentExampleEntity,\n AIAgentLearningCycleEntity,\n AIAgentModalityEntity,\n AIAgentModelEntity,\n AIAgentNoteEntity,\n AIAgentNoteTypeEntity,\n AIAgentPermissionEntity,\n AIAgentPromptEntity,\n AIAgentRelationshipEntity,\n AIAgentRequestEntity,\n AIAgentRunEntity,\n AIAgentRunMediaEntity,\n AIAgentRunStepEntity,\n AIAgentStepEntity,\n AIAgentStepPathEntity,\n AIAgentTypeEntity,\n AIArchitectureEntity,\n AIConfigurationEntity,\n AIConfigurationParamEntity,\n AICredentialBindingEntity,\n AIModalityEntity,\n AIModelActionEntity,\n AIModelArchitectureEntity,\n AIModelCostEntity,\n AIModelEntity,\n AIModelModalityEntity,\n AIModelPriceTypeEntity,\n AIModelPriceUnitTypeEntity,\n AIModelTypeEntity,\n AIModelVendorEntity,\n AIPromptCategoryEntity,\n AIPromptEntity,\n AIPromptModelEntity,\n AIPromptRunEntity,\n AIPromptRunMediaEntity,\n AIPromptTypeEntity,\n AIResultCacheEntity,\n AIVendorEntity,\n AIVendorTypeDefinitionEntity,\n AIVendorTypeEntity,\n APIApplicationEntity,\n APIApplicationScopeEntity,\n APIKeyApplicationEntity,\n APIKeyEntity,\n APIKeyScopeEntity,\n APIKeyUsageLogEntity,\n APIScopeEntity,\n AccessControlRuleEntity,\n ActionAuthorizationEntity,\n ActionCategoryEntity,\n ActionContextEntity,\n ActionContextTypeEntity,\n ActionEntity,\n ActionExecutionLogEntity,\n ActionFilterEntity,\n ActionLibraryEntity,\n ActionParamEntity,\n ActionResultCodeEntity,\n ApplicationEntity,\n ApplicationEntityEntity,\n ApplicationSettingEntity,\n ArtifactEntity,\n ArtifactPermissionEntity,\n ArtifactTypeEntity,\n ArtifactUseEntity,\n ArtifactVersionAttributeEntity,\n ArtifactVersionEntity,\n AuditLogEntity,\n AuditLogTypeEntity,\n AuthorizationEntity,\n AuthorizationRoleEntity,\n CollectionArtifactEntity,\n CollectionEntity,\n CollectionPermissionEntity,\n CommunicationBaseMessageTypeEntity,\n CommunicationLogEntity,\n CommunicationProviderEntity,\n CommunicationProviderMessageTypeEntity,\n CommunicationRunEntity,\n CompanyEntity,\n CompanyIntegrationEntity,\n CompanyIntegrationRecordMapEntity,\n CompanyIntegrationRunAPILogEntity,\n CompanyIntegrationRunDetailEntity,\n CompanyIntegrationRunEntity,\n ComponentDependencyEntity,\n ComponentEntity,\n ComponentEntityExtended,\n ComponentLibraryEntity,\n ComponentLibraryLinkEntity,\n ComponentRegistryEntity,\n ContentFileTypeEntity,\n ContentItemAttributeEntity,\n ContentItemEntity,\n ContentItemTagEntity,\n ContentProcessRunEntity,\n ContentSourceEntity,\n ContentSourceParamEntity,\n ContentSourceTypeEntity,\n ContentSourceTypeParamEntity,\n ContentTypeAttributeEntity,\n ContentTypeEntity,\n ConversationArtifactEntity,\n ConversationArtifactPermissionEntity,\n ConversationArtifactVersionEntity,\n ConversationDetailArtifactEntity,\n ConversationDetailAttachmentEntity,\n ConversationDetailEntity,\n ConversationDetailRatingEntity,\n ConversationEntity,\n CredentialCategoryEntity,\n CredentialEntity,\n CredentialTypeEntity,\n DashboardCategoryEntity,\n DashboardCategoryLinkEntity,\n DashboardCategoryPermissionEntity,\n DashboardEntity,\n DashboardEntityExtended,\n DashboardPartTypeEntity,\n DashboardPermissionEntity,\n DashboardUserPreferenceEntity,\n DashboardUserStateEntity,\n DataContextEntity,\n DataContextItemEntity,\n DatasetEntity,\n DatasetItemEntity,\n DuplicateRunDetailEntity,\n DuplicateRunDetailMatchEntity,\n DuplicateRunEntity,\n EmployeeCompanyIntegrationEntity,\n EmployeeEntity,\n EmployeeRoleEntity,\n EmployeeSkillEntity,\n EncryptionAlgorithmEntity,\n EncryptionKeyEntity,\n EncryptionKeySourceEntity,\n EntityAIActionEntity,\n EntityActionEntity,\n EntityActionFilterEntity,\n EntityActionInvocationEntity,\n EntityActionInvocationTypeEntity,\n EntityActionParamEntity,\n EntityCommunicationFieldEntity,\n EntityCommunicationMessageTypeEntity,\n EntityDocumentEntity,\n EntityDocumentRunEntity,\n EntityDocumentSettingEntity,\n EntityDocumentTypeEntity,\n EntityEntity,\n EntityEntityExtended,\n EntityFieldEntity,\n EntityFieldEntityExtended,\n EntityFieldValueEntity,\n EntityPermissionEntity,\n EntityRecordDocumentEntity,\n EntityRelationshipDisplayComponentEntity,\n EntityRelationshipEntity,\n EntitySettingEntity,\n EnvironmentEntity,\n EnvironmentEntityExtended,\n ErrorLogEntity,\n ExplorerNavigationItemEntity,\n FileCategoryEntity,\n FileEntity,\n FileEntityRecordLinkEntity,\n FileStorageAccountEntity,\n FileStorageProviderEntity,\n GeneratedCodeCategoryEntity,\n GeneratedCodeEntity,\n IntegrationEntity,\n IntegrationURLFormatEntity,\n LibraryEntity,\n LibraryItemEntity,\n ListCategoryEntity,\n ListDetailEntity,\n ListDetailEntityExtended,\n ListEntity,\n ListInvitationEntity,\n ListShareEntity,\n MCPServerConnectionEntity,\n MCPServerConnectionPermissionEntity,\n MCPServerConnectionToolEntity,\n MCPServerEntity,\n MCPServerToolEntity,\n MCPToolExecutionLogEntity,\n OAuthAuthServerMetadataCacheEntity,\n OAuthAuthorizationStateEntity,\n OAuthClientRegistrationEntity,\n OAuthTokenEntity,\n OutputDeliveryTypeEntity,\n OutputFormatTypeEntity,\n OutputTriggerTypeEntity,\n ProjectEntity,\n PublicLinkEntity,\n QueryCategoryEntity,\n QueryEntity,\n QueryEntityEntity,\n QueryFieldEntity,\n QueryParameterEntity,\n QueryPermissionEntity,\n QueueEntity,\n QueueTaskEntity,\n QueueTypeEntity,\n RecommendationEntity,\n RecommendationItemEntity,\n RecommendationProviderEntity,\n RecommendationRunEntity,\n RecordChangeEntity,\n RecordChangeReplayRunEntity,\n RecordLinkEntity,\n RecordMergeDeletionLogEntity,\n RecordMergeLogEntity,\n ReportCategoryEntity,\n ReportEntity,\n ReportSnapshotEntity,\n ReportUserStateEntity,\n ReportVersionEntity,\n ResourceLinkEntity,\n ResourcePermissionEntity,\n ResourcePermissionEntityExtended,\n ResourceTypeEntity,\n RoleEntity,\n RowLevelSecurityFilterEntity,\n ScheduledActionEntity,\n ScheduledActionEntityExtended,\n ScheduledActionParamEntity,\n ScheduledJobEntity,\n ScheduledJobRunEntity,\n ScheduledJobTypeEntity,\n SchemaInfoEntity,\n SkillEntity,\n TagEntity,\n TaggedItemEntity,\n TaskDependencyEntity,\n TaskEntity,\n TaskTypeEntity,\n TemplateCategoryEntity,\n TemplateContentEntity,\n TemplateContentTypeEntity,\n TemplateEntity,\n TemplateEntityExtended,\n TemplateParamEntity,\n TestEntity,\n TestRubricEntity,\n TestRunEntity,\n TestRunFeedbackEntity,\n TestSuiteEntity,\n TestSuiteRunEntity,\n TestSuiteTestEntity,\n TestTypeEntity,\n UserApplicationEntity,\n UserApplicationEntityEntity,\n UserEntity,\n UserFavoriteEntity,\n UserNotificationEntity,\n UserNotificationPreferenceEntity,\n UserNotificationTypeEntity,\n UserRecordLogEntity,\n UserRoleEntity,\n UserSettingEntity,\n UserViewCategoryEntity,\n UserViewEntity,\n UserViewEntityExtended,\n UserViewRunDetailEntity,\n UserViewRunEntity,\n VectorDatabaseEntity,\n VectorIndexEntity,\n VersionInstallationEntity,\n VersionLabelEntity,\n VersionLabelItemEntity,\n VersionLabelRestoreEntity,\n WorkflowEngineEntity,\n WorkflowEntity,\n WorkflowRunEntity,\n WorkspaceEntity,\n WorkspaceItemEntity,\n} from '@memberjunction/core-entities';\n\n// @memberjunction/entity-communications-base (1 classes)\nimport {\n EntityCommunicationMessageTypeExtended,\n} from '@memberjunction/entity-communications-base';\n\n// @memberjunction/ng-artifacts (6 classes)\nimport {\n CodeArtifactViewerComponent,\n ComponentArtifactViewerComponent,\n HtmlArtifactViewerComponent,\n JsonArtifactViewerComponent,\n MarkdownArtifactViewerComponent,\n SvgArtifactViewerComponent,\n} from '@memberjunction/ng-artifacts';\n\n// @memberjunction/ng-auth-services (3 classes)\nimport {\n MJAuth0Provider,\n MJMSALProvider,\n MJOktaProvider,\n} from '@memberjunction/ng-auth-services';\n\n// @memberjunction/ng-core-entity-forms (1 classes)\nimport {\n FlowAgentFormSectionComponent,\n} from '@memberjunction/ng-core-entity-forms';\n\n// @memberjunction/ng-dashboard-viewer (8 classes)\nimport {\n ArtifactConfigPanelComponent,\n ArtifactPartComponent,\n QueryConfigPanelComponent,\n QueryPartComponent,\n ViewConfigPanelComponent,\n ViewPartComponent,\n WebURLConfigPanelComponent,\n WebURLPartComponent,\n} from '@memberjunction/ng-dashboard-viewer';\n\n// @memberjunction/ng-dashboards (52 classes)\nimport {\n APIKeysResourceComponent,\n ActionExplorerComponent,\n ActionsOverviewComponent,\n AgentConfigurationComponent,\n CodeManagementComponent,\n CommunicationDashboardComponent,\n CommunicationLogsResourceComponent,\n CommunicationMonitorResourceComponent,\n CommunicationProvidersResourceComponent,\n CommunicationRunsResourceComponent,\n CommunicationTemplatesResourceComponent,\n ComponentStudioDashboardComponent,\n CredentialsAuditResourceComponent,\n CredentialsCategoriesResourceComponent,\n CredentialsDashboardComponent,\n CredentialsListResourceComponent,\n CredentialsOverviewResourceComponent,\n CredentialsTypesResourceComponent,\n DashboardBrowserResourceComponent,\n DataExplorerDashboardComponent,\n DataExplorerResourceComponent,\n EntityAdminDashboardComponent,\n EntityIntegrationComponent,\n ExecutionMonitoringComponent,\n HomeApplication,\n HomeDashboardComponent,\n ListsBrowseResource,\n ListsCategoriesResource,\n ListsMyListsResource,\n ListsOperationsResource,\n MCPDashboardComponent,\n ModelManagementComponent,\n PromptManagementComponent,\n QueryBrowserResourceComponent,\n ScheduledActionsComponent,\n SchedulingActivityResourceComponent,\n SchedulingDashboardComponent,\n SchedulingJobsResourceComponent,\n SchedulingOverviewResourceComponent,\n SecurityPermissionsComponent,\n SystemConfigurationComponent,\n SystemDiagnosticsComponent,\n TestingAnalyticsResourceComponent,\n TestingDashboardComponent,\n TestingDashboardTabResourceComponent,\n TestingExplorerResourceComponent,\n TestingReviewResourceComponent,\n TestingRunsResourceComponent,\n VersionHistoryDiffResourceComponent,\n VersionHistoryGraphResourceComponent,\n VersionHistoryLabelsResourceComponent,\n VersionHistoryRestoreResourceComponent,\n} from '@memberjunction/ng-dashboards';\n\n// @memberjunction/ng-explorer-core (8 classes)\nimport {\n ArtifactResource,\n ChatConversationsResource,\n DashboardResource,\n EntityRecordResource,\n ListDetailResource,\n QueryResource,\n SearchResultsResource,\n UserViewResource,\n} from '@memberjunction/ng-explorer-core';\n\n// @memberjunction/ng-explorer-settings (6 classes)\nimport {\n ApplicationManagementComponent,\n EntityPermissionsComponent,\n RoleManagementComponent,\n SettingsComponent,\n SqlLoggingComponent,\n UserManagementComponent,\n} from '@memberjunction/ng-explorer-settings';\n\n// @memberjunction/ng-file-storage (1 classes)\nimport {\n FileBrowserResource,\n} from '@memberjunction/ng-file-storage';\n\n/**\n * Runtime references to every @RegisterClass decorated class.\n * This array creates a static code path the bundler cannot tree-shake.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const CLASS_REGISTRATIONS: any[] = [\n ActionEntityExtended,\n EntityActionEntityExtended,\n AIAgentEntityExtended,\n AIAgentRunEntityExtended,\n AIAgentRunStepEntityExtended,\n AIModelEntityExtended,\n AIPromptCategoryEntityExtended,\n AIPromptEntityExtended,\n AIPromptRunEntityExtended,\n AICredentialBindingEntityExtended,\n PerHundredThousandTokensPriceUnitType,\n PerMillionTokensPriceUnitType,\n PerThousandTokensPriceUnitType,\n CommunicationProviderEntityExtended,\n AIActionEntity,\n AIAgentActionEntity,\n AIAgentArtifactTypeEntity,\n AIAgentConfigurationEntity,\n AIAgentDataSourceEntity,\n AIAgentEntity,\n AIAgentExampleEntity,\n AIAgentLearningCycleEntity,\n AIAgentModalityEntity,\n AIAgentModelEntity,\n AIAgentNoteEntity,\n AIAgentNoteTypeEntity,\n AIAgentPermissionEntity,\n AIAgentPromptEntity,\n AIAgentRelationshipEntity,\n AIAgentRequestEntity,\n AIAgentRunEntity,\n AIAgentRunMediaEntity,\n AIAgentRunStepEntity,\n AIAgentStepEntity,\n AIAgentStepPathEntity,\n AIAgentTypeEntity,\n AIArchitectureEntity,\n AIConfigurationEntity,\n AIConfigurationParamEntity,\n AICredentialBindingEntity,\n AIModalityEntity,\n AIModelActionEntity,\n AIModelArchitectureEntity,\n AIModelCostEntity,\n AIModelEntity,\n AIModelModalityEntity,\n AIModelPriceTypeEntity,\n AIModelPriceUnitTypeEntity,\n AIModelTypeEntity,\n AIModelVendorEntity,\n AIPromptCategoryEntity,\n AIPromptEntity,\n AIPromptModelEntity,\n AIPromptRunEntity,\n AIPromptRunMediaEntity,\n AIPromptTypeEntity,\n AIResultCacheEntity,\n AIVendorEntity,\n AIVendorTypeDefinitionEntity,\n AIVendorTypeEntity,\n APIApplicationEntity,\n APIApplicationScopeEntity,\n APIKeyApplicationEntity,\n APIKeyEntity,\n APIKeyScopeEntity,\n APIKeyUsageLogEntity,\n APIScopeEntity,\n AccessControlRuleEntity,\n ActionAuthorizationEntity,\n ActionCategoryEntity,\n ActionContextEntity,\n ActionContextTypeEntity,\n ActionEntity,\n ActionExecutionLogEntity,\n ActionFilterEntity,\n ActionLibraryEntity,\n ActionParamEntity,\n ActionResultCodeEntity,\n ApplicationEntity,\n ApplicationEntityEntity,\n ApplicationSettingEntity,\n ArtifactEntity,\n ArtifactPermissionEntity,\n ArtifactTypeEntity,\n ArtifactUseEntity,\n ArtifactVersionAttributeEntity,\n ArtifactVersionEntity,\n AuditLogEntity,\n AuditLogTypeEntity,\n AuthorizationEntity,\n AuthorizationRoleEntity,\n CollectionArtifactEntity,\n CollectionEntity,\n CollectionPermissionEntity,\n CommunicationBaseMessageTypeEntity,\n CommunicationLogEntity,\n CommunicationProviderEntity,\n CommunicationProviderMessageTypeEntity,\n CommunicationRunEntity,\n CompanyEntity,\n CompanyIntegrationEntity,\n CompanyIntegrationRecordMapEntity,\n CompanyIntegrationRunAPILogEntity,\n CompanyIntegrationRunDetailEntity,\n CompanyIntegrationRunEntity,\n ComponentDependencyEntity,\n ComponentEntity,\n ComponentEntityExtended,\n ComponentLibraryEntity,\n ComponentLibraryLinkEntity,\n ComponentRegistryEntity,\n ContentFileTypeEntity,\n ContentItemAttributeEntity,\n ContentItemEntity,\n ContentItemTagEntity,\n ContentProcessRunEntity,\n ContentSourceEntity,\n ContentSourceParamEntity,\n ContentSourceTypeEntity,\n ContentSourceTypeParamEntity,\n ContentTypeAttributeEntity,\n ContentTypeEntity,\n ConversationArtifactEntity,\n ConversationArtifactPermissionEntity,\n ConversationArtifactVersionEntity,\n ConversationDetailArtifactEntity,\n ConversationDetailAttachmentEntity,\n ConversationDetailEntity,\n ConversationDetailRatingEntity,\n ConversationEntity,\n CredentialCategoryEntity,\n CredentialEntity,\n CredentialTypeEntity,\n DashboardCategoryEntity,\n DashboardCategoryLinkEntity,\n DashboardCategoryPermissionEntity,\n DashboardEntity,\n DashboardEntityExtended,\n DashboardPartTypeEntity,\n DashboardPermissionEntity,\n DashboardUserPreferenceEntity,\n DashboardUserStateEntity,\n DataContextEntity,\n DataContextItemEntity,\n DatasetEntity,\n DatasetItemEntity,\n DuplicateRunDetailEntity,\n DuplicateRunDetailMatchEntity,\n DuplicateRunEntity,\n EmployeeCompanyIntegrationEntity,\n EmployeeEntity,\n EmployeeRoleEntity,\n EmployeeSkillEntity,\n EncryptionAlgorithmEntity,\n EncryptionKeyEntity,\n EncryptionKeySourceEntity,\n EntityAIActionEntity,\n EntityActionEntity,\n EntityActionFilterEntity,\n EntityActionInvocationEntity,\n EntityActionInvocationTypeEntity,\n EntityActionParamEntity,\n EntityCommunicationFieldEntity,\n EntityCommunicationMessageTypeEntity,\n EntityDocumentEntity,\n EntityDocumentRunEntity,\n EntityDocumentSettingEntity,\n EntityDocumentTypeEntity,\n EntityEntity,\n EntityEntityExtended,\n EntityFieldEntity,\n EntityFieldEntityExtended,\n EntityFieldValueEntity,\n EntityPermissionEntity,\n EntityRecordDocumentEntity,\n EntityRelationshipDisplayComponentEntity,\n EntityRelationshipEntity,\n EntitySettingEntity,\n EnvironmentEntity,\n EnvironmentEntityExtended,\n ErrorLogEntity,\n ExplorerNavigationItemEntity,\n FileCategoryEntity,\n FileEntity,\n FileEntityRecordLinkEntity,\n FileStorageAccountEntity,\n FileStorageProviderEntity,\n GeneratedCodeCategoryEntity,\n GeneratedCodeEntity,\n IntegrationEntity,\n IntegrationURLFormatEntity,\n LibraryEntity,\n LibraryItemEntity,\n ListCategoryEntity,\n ListDetailEntity,\n ListDetailEntityExtended,\n ListEntity,\n ListInvitationEntity,\n ListShareEntity,\n MCPServerConnectionEntity,\n MCPServerConnectionPermissionEntity,\n MCPServerConnectionToolEntity,\n MCPServerEntity,\n MCPServerToolEntity,\n MCPToolExecutionLogEntity,\n OAuthAuthServerMetadataCacheEntity,\n OAuthAuthorizationStateEntity,\n OAuthClientRegistrationEntity,\n OAuthTokenEntity,\n OutputDeliveryTypeEntity,\n OutputFormatTypeEntity,\n OutputTriggerTypeEntity,\n ProjectEntity,\n PublicLinkEntity,\n QueryCategoryEntity,\n QueryEntity,\n QueryEntityEntity,\n QueryFieldEntity,\n QueryParameterEntity,\n QueryPermissionEntity,\n QueueEntity,\n QueueTaskEntity,\n QueueTypeEntity,\n RecommendationEntity,\n RecommendationItemEntity,\n RecommendationProviderEntity,\n RecommendationRunEntity,\n RecordChangeEntity,\n RecordChangeReplayRunEntity,\n RecordLinkEntity,\n RecordMergeDeletionLogEntity,\n RecordMergeLogEntity,\n ReportCategoryEntity,\n ReportEntity,\n ReportSnapshotEntity,\n ReportUserStateEntity,\n ReportVersionEntity,\n ResourceLinkEntity,\n ResourcePermissionEntity,\n ResourcePermissionEntityExtended,\n ResourceTypeEntity,\n RoleEntity,\n RowLevelSecurityFilterEntity,\n ScheduledActionEntity,\n ScheduledActionEntityExtended,\n ScheduledActionParamEntity,\n ScheduledJobEntity,\n ScheduledJobRunEntity,\n ScheduledJobTypeEntity,\n SchemaInfoEntity,\n SkillEntity,\n TagEntity,\n TaggedItemEntity,\n TaskDependencyEntity,\n TaskEntity,\n TaskTypeEntity,\n TemplateCategoryEntity,\n TemplateContentEntity,\n TemplateContentTypeEntity,\n TemplateEntity,\n TemplateEntityExtended,\n TemplateParamEntity,\n TestEntity,\n TestRubricEntity,\n TestRunEntity,\n TestRunFeedbackEntity,\n TestSuiteEntity,\n TestSuiteRunEntity,\n TestSuiteTestEntity,\n TestTypeEntity,\n UserApplicationEntity,\n UserApplicationEntityEntity,\n UserEntity,\n UserFavoriteEntity,\n UserNotificationEntity,\n UserNotificationPreferenceEntity,\n UserNotificationTypeEntity,\n UserRecordLogEntity,\n UserRoleEntity,\n UserSettingEntity,\n UserViewCategoryEntity,\n UserViewEntity,\n UserViewEntityExtended,\n UserViewRunDetailEntity,\n UserViewRunEntity,\n VectorDatabaseEntity,\n VectorIndexEntity,\n VersionInstallationEntity,\n VersionLabelEntity,\n VersionLabelItemEntity,\n VersionLabelRestoreEntity,\n WorkflowEngineEntity,\n WorkflowEntity,\n WorkflowRunEntity,\n WorkspaceEntity,\n WorkspaceItemEntity,\n EntityCommunicationMessageTypeExtended,\n CodeArtifactViewerComponent,\n ComponentArtifactViewerComponent,\n HtmlArtifactViewerComponent,\n JsonArtifactViewerComponent,\n MarkdownArtifactViewerComponent,\n SvgArtifactViewerComponent,\n MJAuth0Provider,\n MJMSALProvider,\n MJOktaProvider,\n FlowAgentFormSectionComponent,\n ArtifactConfigPanelComponent,\n ArtifactPartComponent,\n QueryConfigPanelComponent,\n QueryPartComponent,\n ViewConfigPanelComponent,\n ViewPartComponent,\n WebURLConfigPanelComponent,\n WebURLPartComponent,\n APIKeysResourceComponent,\n ActionExplorerComponent,\n ActionsOverviewComponent,\n AgentConfigurationComponent,\n CodeManagementComponent,\n CommunicationDashboardComponent,\n CommunicationLogsResourceComponent,\n CommunicationMonitorResourceComponent,\n CommunicationProvidersResourceComponent,\n CommunicationRunsResourceComponent,\n CommunicationTemplatesResourceComponent,\n ComponentStudioDashboardComponent,\n CredentialsAuditResourceComponent,\n CredentialsCategoriesResourceComponent,\n CredentialsDashboardComponent,\n CredentialsListResourceComponent,\n CredentialsOverviewResourceComponent,\n CredentialsTypesResourceComponent,\n DashboardBrowserResourceComponent,\n DataExplorerDashboardComponent,\n DataExplorerResourceComponent,\n EntityAdminDashboardComponent,\n EntityIntegrationComponent,\n ExecutionMonitoringComponent,\n HomeApplication,\n HomeDashboardComponent,\n ListsBrowseResource,\n ListsCategoriesResource,\n ListsMyListsResource,\n ListsOperationsResource,\n MCPDashboardComponent,\n ModelManagementComponent,\n PromptManagementComponent,\n QueryBrowserResourceComponent,\n ScheduledActionsComponent,\n SchedulingActivityResourceComponent,\n SchedulingDashboardComponent,\n SchedulingJobsResourceComponent,\n SchedulingOverviewResourceComponent,\n SecurityPermissionsComponent,\n SystemConfigurationComponent,\n SystemDiagnosticsComponent,\n TestingAnalyticsResourceComponent,\n TestingDashboardComponent,\n TestingDashboardTabResourceComponent,\n TestingExplorerResourceComponent,\n TestingReviewResourceComponent,\n TestingRunsResourceComponent,\n VersionHistoryDiffResourceComponent,\n VersionHistoryGraphResourceComponent,\n VersionHistoryLabelsResourceComponent,\n VersionHistoryRestoreResourceComponent,\n ArtifactResource,\n ChatConversationsResource,\n DashboardResource,\n EntityRecordResource,\n ListDetailResource,\n QueryResource,\n SearchResultsResource,\n UserViewResource,\n ApplicationManagementComponent,\n EntityPermissionsComponent,\n RoleManagementComponent,\n SettingsComponent,\n SqlLoggingComponent,\n UserManagementComponent,\n FileBrowserResource,\n];\n\n/** Marker constant indicating the manifest has been loaded. */\nexport const CLASS_REGISTRATIONS_MANIFEST_LOADED = true;\n\n/** Total @RegisterClass decorated classes discovered in dependency tree */\nexport const CLASS_REGISTRATIONS_COUNT = 382;\n\n/** Packages imported by this manifest */\nexport const CLASS_REGISTRATIONS_PACKAGES = [\n '@memberjunction/actions-base',\n '@memberjunction/ai-core-plus',\n '@memberjunction/ai-engine-base',\n '@memberjunction/communication-types',\n '@memberjunction/core-entities',\n '@memberjunction/entity-communications-base',\n '@memberjunction/ng-artifacts',\n '@memberjunction/ng-auth-services',\n '@memberjunction/ng-core-entity-forms',\n '@memberjunction/ng-dashboard-viewer',\n '@memberjunction/ng-dashboards',\n '@memberjunction/ng-explorer-core',\n '@memberjunction/ng-explorer-settings',\n '@memberjunction/ng-file-storage',\n] as const;\n","/**\n * Public API Surface of @memberjunction/ng-bootstrap\n */\n\nexport * from './lib/bootstrap.module';\nexport * from './lib/bootstrap.component';\nexport * from './lib/bootstrap.types';\nexport * from './lib/services/initialization.service';\nexport * from './lib/components/auth-shell.component';\n\n/**\n * Pre-built class registrations manifest for all @memberjunction/* Angular packages.\n * Importing this module prevents tree-shaking of MJ's dynamically registered classes.\n * Generated at MJ build time and ships with the package.\n */\nexport * from './generated/mj-class-registrations';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.MJInitializationService"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-bootstrap",
3
- "version": "4.0.0",
3
+ "version": "4.2.0",
4
4
  "description": "MemberJunction Angular Bootstrap - Encapsulates all Angular authentication and initialization logic",
5
5
  "keywords": [
6
6
  "memberjunction",
@@ -17,23 +17,23 @@
17
17
  "rxjs": "^7.8.2"
18
18
  },
19
19
  "dependencies": {
20
- "@memberjunction/actions-base": "4.0.0",
21
- "@memberjunction/ai-core-plus": "4.0.0",
22
- "@memberjunction/ai-engine-base": "4.0.0",
23
- "@memberjunction/communication-types": "4.0.0",
24
- "@memberjunction/core": "4.0.0",
25
- "@memberjunction/core-entities": "4.0.0",
26
- "@memberjunction/entity-communications-base": "4.0.0",
27
- "@memberjunction/graphql-dataprovider": "4.0.0",
28
- "@memberjunction/ng-artifacts": "4.0.0",
29
- "@memberjunction/ng-auth-services": "4.0.0",
30
- "@memberjunction/ng-core-entity-forms": "4.0.0",
31
- "@memberjunction/ng-dashboard-viewer": "4.0.0",
32
- "@memberjunction/ng-dashboards": "4.0.0",
33
- "@memberjunction/ng-explorer-core": "4.0.0",
34
- "@memberjunction/ng-explorer-settings": "4.0.0",
35
- "@memberjunction/ng-file-storage": "4.0.0",
36
- "@memberjunction/ng-shared": "4.0.0",
20
+ "@memberjunction/actions-base": "4.2.0",
21
+ "@memberjunction/ai-core-plus": "4.2.0",
22
+ "@memberjunction/ai-engine-base": "4.2.0",
23
+ "@memberjunction/communication-types": "4.2.0",
24
+ "@memberjunction/core": "4.2.0",
25
+ "@memberjunction/core-entities": "4.2.0",
26
+ "@memberjunction/entity-communications-base": "4.2.0",
27
+ "@memberjunction/graphql-dataprovider": "4.2.0",
28
+ "@memberjunction/ng-artifacts": "4.2.0",
29
+ "@memberjunction/ng-auth-services": "4.2.0",
30
+ "@memberjunction/ng-core-entity-forms": "4.2.0",
31
+ "@memberjunction/ng-dashboard-viewer": "4.2.0",
32
+ "@memberjunction/ng-dashboards": "4.2.0",
33
+ "@memberjunction/ng-explorer-core": "4.2.0",
34
+ "@memberjunction/ng-explorer-settings": "4.2.0",
35
+ "@memberjunction/ng-file-storage": "4.2.0",
36
+ "@memberjunction/ng-shared": "4.2.0",
37
37
  "rxjs": "^7.8.2",
38
38
  "tslib": "^2.3.0"
39
39
  },
@@ -229,7 +229,7 @@ declare class MJBootstrapModule {
229
229
  * AUTO-GENERATED FILE - DO NOT EDIT
230
230
  * Generated by mj codegen manifest
231
231
  * App: @memberjunction/ng-bootstrap
232
- * Dependency tree: 491 packages walked, 14 contain @RegisterClass
232
+ * Dependency tree: 490 packages walked, 14 contain @RegisterClass
233
233
  *
234
234
  * This file imports every @RegisterClass decorated class by name and places
235
235
  * them in an exported array, creating a static code path that prevents
@@ -243,7 +243,7 @@ declare const CLASS_REGISTRATIONS: any[];
243
243
  /** Marker constant indicating the manifest has been loaded. */
244
244
  declare const CLASS_REGISTRATIONS_MANIFEST_LOADED = true;
245
245
  /** Total @RegisterClass decorated classes discovered in dependency tree */
246
- declare const CLASS_REGISTRATIONS_COUNT = 383;
246
+ declare const CLASS_REGISTRATIONS_COUNT = 382;
247
247
  /** Packages imported by this manifest */
248
248
  declare const CLASS_REGISTRATIONS_PACKAGES: readonly ["@memberjunction/actions-base", "@memberjunction/ai-core-plus", "@memberjunction/ai-engine-base", "@memberjunction/communication-types", "@memberjunction/core-entities", "@memberjunction/entity-communications-base", "@memberjunction/ng-artifacts", "@memberjunction/ng-auth-services", "@memberjunction/ng-core-entity-forms", "@memberjunction/ng-dashboard-viewer", "@memberjunction/ng-dashboards", "@memberjunction/ng-explorer-core", "@memberjunction/ng-explorer-settings", "@memberjunction/ng-file-storage"];
249
249