@memberjunction/ng-explorer-core 6.1.0-edge.4 → 6.1.0-edge.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/README.md +19 -0
  2. package/dist/generated/lazy-feature-config.d.ts.map +1 -1
  3. package/dist/generated/lazy-feature-config.js +12 -6
  4. package/dist/generated/lazy-feature-config.js.map +1 -1
  5. package/dist/lib/about/about-dialog.component.js +4 -4
  6. package/dist/lib/about/about-dialog.component.js.map +1 -1
  7. package/dist/lib/command-palette/command-palette.component.d.ts +13 -0
  8. package/dist/lib/command-palette/command-palette.component.d.ts.map +1 -1
  9. package/dist/lib/command-palette/command-palette.component.js +106 -42
  10. package/dist/lib/command-palette/command-palette.component.js.map +1 -1
  11. package/dist/lib/conversation-feedback/conversation-feedback.js +1 -1
  12. package/dist/lib/dashboard-preferences-dialog/dashboard-preferences-dialog.component.js +1 -1
  13. package/dist/lib/oauth/oauth-callback.component.js +1 -1
  14. package/dist/lib/omnibar/omnibar-palette.component.d.ts.map +1 -1
  15. package/dist/lib/omnibar/omnibar-palette.component.js +9 -3
  16. package/dist/lib/omnibar/omnibar-palette.component.js.map +1 -1
  17. package/dist/lib/omnibar/providers/omnibar-record.provider.d.ts.map +1 -1
  18. package/dist/lib/omnibar/providers/omnibar-record.provider.js +9 -3
  19. package/dist/lib/omnibar/providers/omnibar-record.provider.js.map +1 -1
  20. package/dist/lib/profile/profile-dialog.component.js +1 -1
  21. package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts.map +1 -1
  22. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js +13 -12
  23. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js.map +1 -1
  24. package/dist/lib/resource-wrappers/chat-deeplink-params.d.ts +24 -0
  25. package/dist/lib/resource-wrappers/chat-deeplink-params.d.ts.map +1 -0
  26. package/dist/lib/resource-wrappers/chat-deeplink-params.js +27 -0
  27. package/dist/lib/resource-wrappers/chat-deeplink-params.js.map +1 -0
  28. package/dist/lib/resource-wrappers/dashboard-resource.component.d.ts +7 -0
  29. package/dist/lib/resource-wrappers/dashboard-resource.component.d.ts.map +1 -1
  30. package/dist/lib/resource-wrappers/dashboard-resource.component.js +29 -14
  31. package/dist/lib/resource-wrappers/dashboard-resource.component.js.map +1 -1
  32. package/dist/lib/resource-wrappers/list-detail-resource.component.js +1 -1
  33. package/dist/lib/resource-wrappers/list-detail-resource.component.js.map +1 -1
  34. package/dist/lib/resource-wrappers/query-resource.component.js +1 -1
  35. package/dist/lib/resource-wrappers/query-resource.component.js.map +1 -1
  36. package/dist/lib/resource-wrappers/record-resource.component.d.ts +3 -0
  37. package/dist/lib/resource-wrappers/record-resource.component.d.ts.map +1 -1
  38. package/dist/lib/resource-wrappers/record-resource.component.js +18 -4
  39. package/dist/lib/resource-wrappers/record-resource.component.js.map +1 -1
  40. package/dist/lib/resource-wrappers/search-results-resource.component.d.ts.map +1 -1
  41. package/dist/lib/resource-wrappers/search-results-resource.component.js +6 -2
  42. package/dist/lib/resource-wrappers/search-results-resource.component.js.map +1 -1
  43. package/dist/lib/resource-wrappers/view-resource.component.d.ts.map +1 -1
  44. package/dist/lib/resource-wrappers/view-resource.component.js +6 -3
  45. package/dist/lib/resource-wrappers/view-resource.component.js.map +1 -1
  46. package/dist/lib/server-connectivity/server-connectivity-banner.component.d.ts +20 -8
  47. package/dist/lib/server-connectivity/server-connectivity-banner.component.d.ts.map +1 -1
  48. package/dist/lib/server-connectivity/server-connectivity-banner.component.js +25 -20
  49. package/dist/lib/server-connectivity/server-connectivity-banner.component.js.map +1 -1
  50. package/dist/lib/shell/components/dialogs/app-access-dialog.component.js +2 -2
  51. package/dist/lib/shell/components/dialogs/app-access-dialog.component.js.map +1 -1
  52. package/dist/lib/shell/components/header/app-nav.component.js +1 -1
  53. package/dist/lib/shell/components/header/app-switcher.component.js +82 -83
  54. package/dist/lib/shell/components/header/app-switcher.component.js.map +1 -1
  55. package/dist/lib/shell/components/record-open/record-bar.component.js +1 -1
  56. package/dist/lib/shell/components/record-open/record-origin-crumb.component.js +1 -1
  57. package/dist/lib/shell/components/record-open/record-switcher-sheet.component.js +1 -1
  58. package/dist/lib/shell/components/record-open/records-hub-pill.component.js +1 -1
  59. package/dist/lib/shell/components/tabs/tab-container.component.d.ts +25 -0
  60. package/dist/lib/shell/components/tabs/tab-container.component.d.ts.map +1 -1
  61. package/dist/lib/shell/components/tabs/tab-container.component.js +88 -4
  62. package/dist/lib/shell/components/tabs/tab-container.component.js.map +1 -1
  63. package/dist/lib/shell/services/sharing-center-dialog-host.component.js +2 -2
  64. package/dist/lib/shell/services/sharing-center-dialog-host.component.js.map +1 -1
  65. package/dist/lib/shell/shell-chrome-policy.d.ts +54 -0
  66. package/dist/lib/shell/shell-chrome-policy.d.ts.map +1 -0
  67. package/dist/lib/shell/shell-chrome-policy.js +62 -0
  68. package/dist/lib/shell/shell-chrome-policy.js.map +1 -0
  69. package/dist/lib/shell/shell.component.d.ts +42 -0
  70. package/dist/lib/shell/shell.component.d.ts.map +1 -1
  71. package/dist/lib/shell/shell.component.js +394 -255
  72. package/dist/lib/shell/shell.component.js.map +1 -1
  73. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.js +1 -1
  74. package/dist/lib/single-dashboard/single-dashboard.component.js +1 -1
  75. package/dist/lib/single-list-detail/single-list-detail.component.d.ts +9 -0
  76. package/dist/lib/single-list-detail/single-list-detail.component.d.ts.map +1 -1
  77. package/dist/lib/single-list-detail/single-list-detail.component.js +34 -15
  78. package/dist/lib/single-list-detail/single-list-detail.component.js.map +1 -1
  79. package/dist/lib/single-record/single-record.component.d.ts +10 -0
  80. package/dist/lib/single-record/single-record.component.d.ts.map +1 -1
  81. package/dist/lib/single-record/single-record.component.js +23 -3
  82. package/dist/lib/single-record/single-record.component.js.map +1 -1
  83. package/dist/lib/single-search-result/single-search-result.component.d.ts.map +1 -1
  84. package/dist/lib/single-search-result/single-search-result.component.js +5 -2
  85. package/dist/lib/single-search-result/single-search-result.component.js.map +1 -1
  86. package/dist/lib/user-notifications/user-notifications.component.js +11 -12
  87. package/dist/lib/user-notifications/user-notifications.component.js.map +1 -1
  88. package/dist/lib/user-profile/user-profile.component.js +1 -1
  89. package/dist/public-api.d.ts +1 -0
  90. package/dist/public-api.d.ts.map +1 -1
  91. package/dist/public-api.js +1 -0
  92. package/dist/public-api.js.map +1 -1
  93. package/package.json +62 -62
@@ -47,8 +47,8 @@ export class SharingCenterDialogHostComponent {
47
47
  case 'Resource Permissions':
48
48
  case 'Access Control Rules':
49
49
  if (row.ResourceType) {
50
- const key = new CompositeKey();
51
- key.KeyValuePairs.push({ FieldName: 'ID', Value: row.ResourceID });
50
+ // Resource types are MJ core entities (Dashboards, Reports, Queries, ...), all keyed by ID.
51
+ const key = CompositeKey.FromID(row.ResourceID); // first-pk-ok: ResourceType is one of the core resource entities (Dashboards, Reports, Queries, ...), all keyed by ID
52
52
  // Transient dialog: default origin capture (the page
53
53
  // behind it) is the right "back" target once it closes.
54
54
  this.navigationService.OpenEntityRecord(row.ResourceType, key);
@@ -1 +1 @@
1
- {"version":3,"file":"sharing-center-dialog-host.component.js","sourceRoot":"","sources":["../../../../src/lib/shell/services/sharing-center-dialog-host.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { CompositeKey, NormalizedPermission } from '@memberjunction/core';\nimport { MJDialogRef } from '@memberjunction/ng-ui-components';\nimport { UserSharingCenterComponent } from '@memberjunction/ng-resource-permissions';\nimport { NavigationService } from '@memberjunction/ng-shared';\nimport { ApplicationManager, BaseApplication } from '@memberjunction/ng-base-application';\n\n/**\n * Thin Explorer-side wrapper around the Generic {@link UserSharingCenterComponent}.\n *\n * The Generic component is intentionally Router-free; this host translates its\n * `ResourceClicked` and `CloseRequested` events into calls against `NavigationService`\n * (Explorer's wrapper around Angular Router) and `MJDialogRef` (its host dialog).\n *\n * Apps that don't use NavigationService can instantiate the Generic component\n * directly and provide their own routing strategy.\n */\n@Component({\n standalone: true,\n selector: 'mj-explorer-sharing-center-dialog-host',\n imports: [UserSharingCenterComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <mj-user-sharing-center\n [ShowCloseButton]=\"false\"\n (ResourceClicked)=\"OnResourceClicked($event)\"\n (CloseRequested)=\"OnCloseRequested()\">\n </mj-user-sharing-center>\n `,\n})\nexport class SharingCenterDialogHostComponent {\n private readonly dialogRef = inject(MJDialogRef, { optional: true });\n private readonly navigationService = inject(NavigationService);\n private readonly appManager = inject(ApplicationManager);\n\n async OnResourceClicked(row: NormalizedPermission): Promise<void> {\n if (!row.ResourceID) return;\n const opened = await this.openResourceForExplorer(row);\n if (opened) {\n this.dialogRef?.Close();\n }\n }\n\n OnCloseRequested(): void {\n this.dialogRef?.Close();\n }\n\n private async openResourceForExplorer(row: NormalizedPermission): Promise<boolean> {\n switch (row.DomainName) {\n case 'Dashboard Permissions':\n this.navigationService.OpenDashboard(row.ResourceID!, row.ResourceName ?? 'Dashboard');\n return true;\n\n case 'Artifact Permissions':\n this.navigationService.OpenArtifact(row.ResourceID!, row.ResourceName);\n return true;\n\n case 'Collection Permissions':\n return this.openCollection(row.ResourceID!);\n\n case 'Query Permissions':\n this.navigationService.OpenQuery(row.ResourceID!, row.ResourceName ?? 'Query');\n return true;\n\n case 'Resource Permissions':\n case 'Access Control Rules':\n if (row.ResourceType) {\n const key = new CompositeKey();\n key.KeyValuePairs.push({ FieldName: 'ID', Value: row.ResourceID! });\n // Transient dialog: default origin capture (the page\n // behind it) is the right \"back\" target once it closes.\n this.navigationService.OpenEntityRecord(row.ResourceType, key);\n return true;\n }\n return false;\n\n default:\n return false;\n }\n }\n\n /**\n * Collections have no NavigationService.Open* helper — they live behind the\n * 'Collections' nav item of the Chat app. Find whichever app exposes that nav\n * item (the Sharing Center can be opened from any app, so the ACTIVE app can't\n * be assumed) and switch to it with the collectionId as query params, which\n * drives both fresh tabs (initial param read) and cached ones (OnQueryParamsChanged).\n */\n private async openCollection(collectionId: string): Promise<boolean> {\n const apps: BaseApplication[] = await firstValueFrom(this.appManager.Applications).catch(() => []);\n for (const app of apps) {\n const navItems = await app.GetNavItems();\n // Match on DriverClass (stable identity — survives label renames/localization)\n // and only consider Active items (Status defaults to Active when unset).\n const collectionsNav = navItems.find(\n (item) => item.DriverClass === 'ChatCollectionsResource' && (item.Status ?? 'Active') === 'Active'\n );\n if (collectionsNav) {\n await this.navigationService.SwitchToApp(app.ID, collectionsNav.Label, { collectionId });\n return true;\n }\n }\n return false;\n }\n}\n"]}
1
+ {"version":3,"file":"sharing-center-dialog-host.component.js","sourceRoot":"","sources":["../../../../src/lib/shell/services/sharing-center-dialog-host.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { CompositeKey, NormalizedPermission } from '@memberjunction/core';\nimport { MJDialogRef } from '@memberjunction/ng-ui-components';\nimport { UserSharingCenterComponent } from '@memberjunction/ng-resource-permissions';\nimport { NavigationService } from '@memberjunction/ng-shared';\nimport { ApplicationManager, BaseApplication } from '@memberjunction/ng-base-application';\n\n/**\n * Thin Explorer-side wrapper around the Generic {@link UserSharingCenterComponent}.\n *\n * The Generic component is intentionally Router-free; this host translates its\n * `ResourceClicked` and `CloseRequested` events into calls against `NavigationService`\n * (Explorer's wrapper around Angular Router) and `MJDialogRef` (its host dialog).\n *\n * Apps that don't use NavigationService can instantiate the Generic component\n * directly and provide their own routing strategy.\n */\n@Component({\n standalone: true,\n selector: 'mj-explorer-sharing-center-dialog-host',\n imports: [UserSharingCenterComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <mj-user-sharing-center\n [ShowCloseButton]=\"false\"\n (ResourceClicked)=\"OnResourceClicked($event)\"\n (CloseRequested)=\"OnCloseRequested()\">\n </mj-user-sharing-center>\n `,\n})\nexport class SharingCenterDialogHostComponent {\n private readonly dialogRef = inject(MJDialogRef, { optional: true });\n private readonly navigationService = inject(NavigationService);\n private readonly appManager = inject(ApplicationManager);\n\n async OnResourceClicked(row: NormalizedPermission): Promise<void> {\n if (!row.ResourceID) return;\n const opened = await this.openResourceForExplorer(row);\n if (opened) {\n this.dialogRef?.Close();\n }\n }\n\n OnCloseRequested(): void {\n this.dialogRef?.Close();\n }\n\n private async openResourceForExplorer(row: NormalizedPermission): Promise<boolean> {\n switch (row.DomainName) {\n case 'Dashboard Permissions':\n this.navigationService.OpenDashboard(row.ResourceID!, row.ResourceName ?? 'Dashboard');\n return true;\n\n case 'Artifact Permissions':\n this.navigationService.OpenArtifact(row.ResourceID!, row.ResourceName);\n return true;\n\n case 'Collection Permissions':\n return this.openCollection(row.ResourceID!);\n\n case 'Query Permissions':\n this.navigationService.OpenQuery(row.ResourceID!, row.ResourceName ?? 'Query');\n return true;\n\n case 'Resource Permissions':\n case 'Access Control Rules':\n if (row.ResourceType) {\n // Resource types are MJ core entities (Dashboards, Reports, Queries, ...), all keyed by ID.\n const key = CompositeKey.FromID(row.ResourceID!); // first-pk-ok: ResourceType is one of the core resource entities (Dashboards, Reports, Queries, ...), all keyed by ID\n // Transient dialog: default origin capture (the page\n // behind it) is the right \"back\" target once it closes.\n this.navigationService.OpenEntityRecord(row.ResourceType, key);\n return true;\n }\n return false;\n\n default:\n return false;\n }\n }\n\n /**\n * Collections have no NavigationService.Open* helper — they live behind the\n * 'Collections' nav item of the Chat app. Find whichever app exposes that nav\n * item (the Sharing Center can be opened from any app, so the ACTIVE app can't\n * be assumed) and switch to it with the collectionId as query params, which\n * drives both fresh tabs (initial param read) and cached ones (OnQueryParamsChanged).\n */\n private async openCollection(collectionId: string): Promise<boolean> {\n const apps: BaseApplication[] = await firstValueFrom(this.appManager.Applications).catch(() => []);\n for (const app of apps) {\n const navItems = await app.GetNavItems();\n // Match on DriverClass (stable identity — survives label renames/localization)\n // and only consider Active items (Status defaults to Active when unset).\n const collectionsNav = navItems.find(\n (item) => item.DriverClass === 'ChatCollectionsResource' && (item.Status ?? 'Active') === 'Active'\n );\n if (collectionsNav) {\n await this.navigationService.SwitchToApp(app.ID, collectionsNav.Label, { collectionId });\n return true;\n }\n }\n return false;\n }\n}\n"]}
@@ -0,0 +1,54 @@
1
+ import { Subject } from 'rxjs';
2
+ import type { RecordOpenStyle } from '@memberjunction/ng-shared';
3
+ import type { AppSwitcherStyle } from './components/header/app-switcher.component';
4
+ /**
5
+ * The shell's chrome as one resolved set: which header affordances render and how the app
6
+ * switcher and record-opening behave. Instance Config supplies the platform-wide answer
7
+ * (`Shell.SearchBar.Enabled` and friends); a host's {@link BaseShellChromePolicy} may narrow it.
8
+ */
9
+ export interface ShellChromeFlags {
10
+ searchBar: boolean;
11
+ searchPreview: boolean;
12
+ notifications: boolean;
13
+ appSwitcher: boolean;
14
+ appSwitcherStyle: AppSwitcherStyle;
15
+ appNav: boolean;
16
+ recordOpenStyle: RecordOpenStyle;
17
+ }
18
+ /**
19
+ * Host hook for the shell's chrome, per user or tenant.
20
+ *
21
+ * Instance Config decides the platform-wide chrome and is the ceiling. A host that needs a
22
+ * narrower answer for SOME users — a white-label product hiding the search bar for
23
+ * organizations whose plan does not include browsing the knowledge base, say — registers a
24
+ * subclass and overrides {@link Resolve}. The shell consults the policy every time it
25
+ * resolves its flags, and re-resolves when the policy fires {@link Changed} (the user's
26
+ * organization or plan changed under them).
27
+ *
28
+ * Booleans can only be narrowed: a `true` from the policy never re-enables something Instance
29
+ * Config turned off, and `recordOpenStyle` is not the policy's to change (it is resolved at
30
+ * startup and pushed to collaborators). `appSwitcherStyle` may be replaced.
31
+ *
32
+ * Same ClassFactory pattern as {@link BaseUserMenu}:
33
+ * ```typescript
34
+ * @RegisterClass(BaseShellChromePolicy)
35
+ * export class MyChromePolicy extends BaseShellChromePolicy {
36
+ * public override Resolve(flags: ShellChromeFlags): ShellChromeFlags {
37
+ * return { ...flags, searchBar: flags.searchBar && this.orgHasKnowledgePlus() };
38
+ * }
39
+ * }
40
+ * ```
41
+ * The default (this class) is the identity: nothing changes for hosts that register nothing.
42
+ */
43
+ export declare class BaseShellChromePolicy {
44
+ /** Fire when the answer may have changed; the shell drops its cached flags and repaints. */
45
+ readonly Changed: Subject<void>;
46
+ /** Return the chrome this user should see, given what Instance Config allows. */
47
+ Resolve(flags: ShellChromeFlags): ShellChromeFlags;
48
+ }
49
+ /**
50
+ * Applies a policy's answer to the Instance Config baseline, enforcing the contract above:
51
+ * booleans narrow only, `recordOpenStyle` is kept, `appSwitcherStyle` is taken as given.
52
+ */
53
+ export declare function ApplyShellChromePolicy(baseline: ShellChromeFlags, policy: BaseShellChromePolicy): ShellChromeFlags;
54
+ //# sourceMappingURL=shell-chrome-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-chrome-policy.d.ts","sourceRoot":"","sources":["../../../src/lib/shell/shell-chrome-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAEnF;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,eAAe,CAAC;CAClC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,qBAAqB;IAChC,4FAA4F;IAC5F,SAAgB,OAAO,gBAAuB;IAE9C,iFAAiF;IAC1E,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB;CAG1D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,qBAAqB,GAAG,gBAAgB,CAoBlH"}
@@ -0,0 +1,62 @@
1
+ import { Subject } from 'rxjs';
2
+ import { LogError } from '@memberjunction/core';
3
+ /**
4
+ * Host hook for the shell's chrome, per user or tenant.
5
+ *
6
+ * Instance Config decides the platform-wide chrome and is the ceiling. A host that needs a
7
+ * narrower answer for SOME users — a white-label product hiding the search bar for
8
+ * organizations whose plan does not include browsing the knowledge base, say — registers a
9
+ * subclass and overrides {@link Resolve}. The shell consults the policy every time it
10
+ * resolves its flags, and re-resolves when the policy fires {@link Changed} (the user's
11
+ * organization or plan changed under them).
12
+ *
13
+ * Booleans can only be narrowed: a `true` from the policy never re-enables something Instance
14
+ * Config turned off, and `recordOpenStyle` is not the policy's to change (it is resolved at
15
+ * startup and pushed to collaborators). `appSwitcherStyle` may be replaced.
16
+ *
17
+ * Same ClassFactory pattern as {@link BaseUserMenu}:
18
+ * ```typescript
19
+ * @RegisterClass(BaseShellChromePolicy)
20
+ * export class MyChromePolicy extends BaseShellChromePolicy {
21
+ * public override Resolve(flags: ShellChromeFlags): ShellChromeFlags {
22
+ * return { ...flags, searchBar: flags.searchBar && this.orgHasKnowledgePlus() };
23
+ * }
24
+ * }
25
+ * ```
26
+ * The default (this class) is the identity: nothing changes for hosts that register nothing.
27
+ */
28
+ export class BaseShellChromePolicy {
29
+ /** Fire when the answer may have changed; the shell drops its cached flags and repaints. */
30
+ Changed = new Subject();
31
+ /** Return the chrome this user should see, given what Instance Config allows. */
32
+ Resolve(flags) {
33
+ return flags;
34
+ }
35
+ }
36
+ /**
37
+ * Applies a policy's answer to the Instance Config baseline, enforcing the contract above:
38
+ * booleans narrow only, `recordOpenStyle` is kept, `appSwitcherStyle` is taken as given.
39
+ */
40
+ export function ApplyShellChromePolicy(baseline, policy) {
41
+ let answer;
42
+ try {
43
+ answer = policy.Resolve({ ...baseline });
44
+ }
45
+ catch (error) {
46
+ // Host code. A throwing policy must not take the shell's chrome down with it: the reader
47
+ // keeps the Instance Config chrome, and the error names the subclass rather than
48
+ // surfacing as mysteriously missing buttons.
49
+ LogError(`Shell chrome policy ${policy.constructor.name}.Resolve threw; using the Instance Config chrome unchanged. ${error instanceof Error ? error.message : String(error)}`);
50
+ return { ...baseline };
51
+ }
52
+ return {
53
+ searchBar: baseline.searchBar && answer.searchBar,
54
+ searchPreview: baseline.searchPreview && answer.searchPreview,
55
+ notifications: baseline.notifications && answer.notifications,
56
+ appSwitcher: baseline.appSwitcher && answer.appSwitcher,
57
+ appSwitcherStyle: answer.appSwitcherStyle ?? baseline.appSwitcherStyle,
58
+ appNav: baseline.appNav && answer.appNav,
59
+ recordOpenStyle: baseline.recordOpenStyle,
60
+ };
61
+ }
62
+ //# sourceMappingURL=shell-chrome-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-chrome-policy.js","sourceRoot":"","sources":["../../../src/lib/shell/shell-chrome-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAmBhD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,qBAAqB;IAChC,4FAA4F;IAC5E,OAAO,GAAG,IAAI,OAAO,EAAQ,CAAC;IAE9C,iFAAiF;IAC1E,OAAO,CAAC,KAAuB;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAA0B,EAAE,MAA6B;IAC9F,IAAI,MAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,yFAAyF;QACzF,iFAAiF;QACjF,6CAA6C;QAC7C,QAAQ,CAAC,uBAAuB,MAAM,CAAC,WAAW,CAAC,IAAI,+DAA+D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChL,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC;IACzB,CAAC;IACD,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS;QACjD,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC7D,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC7D,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW;QACvD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,QAAQ,CAAC,gBAAgB;QACtE,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;QACxC,eAAe,EAAE,QAAQ,CAAC,eAAe;KAC1C,CAAC;AACJ,CAAC","sourcesContent":["import { Subject } from 'rxjs';\nimport { LogError } from '@memberjunction/core';\nimport type { RecordOpenStyle } from '@memberjunction/ng-shared';\nimport type { AppSwitcherStyle } from './components/header/app-switcher.component';\n\n/**\n * The shell's chrome as one resolved set: which header affordances render and how the app\n * switcher and record-opening behave. Instance Config supplies the platform-wide answer\n * (`Shell.SearchBar.Enabled` and friends); a host's {@link BaseShellChromePolicy} may narrow it.\n */\nexport interface ShellChromeFlags {\n searchBar: boolean;\n searchPreview: boolean;\n notifications: boolean;\n appSwitcher: boolean;\n appSwitcherStyle: AppSwitcherStyle;\n appNav: boolean;\n recordOpenStyle: RecordOpenStyle;\n}\n\n/**\n * Host hook for the shell's chrome, per user or tenant.\n *\n * Instance Config decides the platform-wide chrome and is the ceiling. A host that needs a\n * narrower answer for SOME users — a white-label product hiding the search bar for\n * organizations whose plan does not include browsing the knowledge base, say — registers a\n * subclass and overrides {@link Resolve}. The shell consults the policy every time it\n * resolves its flags, and re-resolves when the policy fires {@link Changed} (the user's\n * organization or plan changed under them).\n *\n * Booleans can only be narrowed: a `true` from the policy never re-enables something Instance\n * Config turned off, and `recordOpenStyle` is not the policy's to change (it is resolved at\n * startup and pushed to collaborators). `appSwitcherStyle` may be replaced.\n *\n * Same ClassFactory pattern as {@link BaseUserMenu}:\n * ```typescript\n * @RegisterClass(BaseShellChromePolicy)\n * export class MyChromePolicy extends BaseShellChromePolicy {\n * public override Resolve(flags: ShellChromeFlags): ShellChromeFlags {\n * return { ...flags, searchBar: flags.searchBar && this.orgHasKnowledgePlus() };\n * }\n * }\n * ```\n * The default (this class) is the identity: nothing changes for hosts that register nothing.\n */\nexport class BaseShellChromePolicy {\n /** Fire when the answer may have changed; the shell drops its cached flags and repaints. */\n public readonly Changed = new Subject<void>();\n\n /** Return the chrome this user should see, given what Instance Config allows. */\n public Resolve(flags: ShellChromeFlags): ShellChromeFlags {\n return flags;\n }\n}\n\n/**\n * Applies a policy's answer to the Instance Config baseline, enforcing the contract above:\n * booleans narrow only, `recordOpenStyle` is kept, `appSwitcherStyle` is taken as given.\n */\nexport function ApplyShellChromePolicy(baseline: ShellChromeFlags, policy: BaseShellChromePolicy): ShellChromeFlags {\n let answer: ShellChromeFlags;\n try {\n answer = policy.Resolve({ ...baseline });\n } catch (error) {\n // Host code. A throwing policy must not take the shell's chrome down with it: the reader\n // keeps the Instance Config chrome, and the error names the subclass rather than\n // surfacing as mysteriously missing buttons.\n LogError(`Shell chrome policy ${policy.constructor.name}.Resolve threw; using the Instance Config chrome unchanged. ${error instanceof Error ? error.message : String(error)}`);\n return { ...baseline };\n }\n return {\n searchBar: baseline.searchBar && answer.searchBar,\n searchPreview: baseline.searchPreview && answer.searchPreview,\n notifications: baseline.notifications && answer.notifications,\n appSwitcher: baseline.appSwitcher && answer.appSwitcher,\n appSwitcherStyle: answer.appSwitcherStyle ?? baseline.appSwitcherStyle,\n appNav: baseline.appNav && answer.appNav,\n recordOpenStyle: baseline.recordOpenStyle,\n };\n}\n"]}
@@ -20,6 +20,14 @@ import { FeedbackDialogService, FeedbackService } from '@memberjunction/ng-feedb
20
20
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
21
21
  import { AppSwitcherStyle } from './components/header/app-switcher.component';
22
22
  import * as i0 from "@angular/core";
23
+ /**
24
+ * Main shell component for the new Explorer UX.
25
+ *
26
+ * Provides:
27
+ * - App-centric header with app switcher and nav items
28
+ * - Golden Layout-based tab container
29
+ * - Unified workspace state management
30
+ */
23
31
  export declare class ShellComponent extends BaseAngularComponent implements OnInit, OnDestroy, AfterViewInit {
24
32
  private appManager;
25
33
  private workspaceManager;
@@ -107,15 +115,29 @@ export declare class ShellComponent extends BaseAngularComponent implements OnIn
107
115
  searchableEntities: EntityInfo[];
108
116
  selectedEntity: EntityInfo | null;
109
117
  searchInput: ElementRef<HTMLInputElement>;
118
+ /** Mobile drawer + its toggle — used to return focus to the toggle when the drawer closes. */
119
+ mobileNavDrawer?: ElementRef<HTMLElement>;
120
+ mobileNavToggle?: ElementRef<HTMLButtonElement>;
110
121
  LegacySearchOpen: boolean;
111
122
  private _chromeFlags;
123
+ /**
124
+ * The host's chrome policy (see {@link BaseShellChromePolicy}) — the identity unless a host
125
+ * registered a subclass. Consulted on every resolve; its `Changed` drops the cache.
126
+ */
127
+ private readonly chromePolicy;
112
128
  /**
113
129
  * Resolve the instance-config chrome flags once and cache them. Computed live
114
130
  * from the fail-open defaults until InstanceConfigEngine has loaded, then frozen
115
131
  * on the first post-load read — so the pre-load defaults are never cached over
116
132
  * the real values, and every steady-state read is a plain field access.
133
+ *
134
+ * Instance Config is the ceiling; the host's chrome policy may narrow it per user
135
+ * (see {@link BaseShellChromePolicy}). The cache is dropped when the policy fires
136
+ * `Changed`, so an organization or plan switch repaints the chrome.
117
137
  */
118
138
  private get chromeFlags();
139
+ /** The policy's answer may have changed: forget the cached flags and repaint. */
140
+ private onChromePolicyChanged;
119
141
  /** The record-open style resolved at startup ('records' until resolved) */
120
142
  private resolvedRecordOpenStyle;
121
143
  /**
@@ -380,6 +402,26 @@ export declare class ShellComponent extends BaseAngularComponent implements OnIn
380
402
  * Close mobile navigation drawer
381
403
  */
382
404
  closeMobileNav(): void;
405
+ /**
406
+ * When the drawer closes it becomes `inert`, which drops focus to <body> if focus was
407
+ * inside it — the user's place in the page is gone and the next Tab restarts at the top.
408
+ * Hand focus back to the control that opened it instead. No-op when focus was elsewhere
409
+ * (e.g. the drawer was closed from a keyboard shortcut while the user was in the content).
410
+ */
411
+ private returnFocusFromMobileNav;
412
+ /**
413
+ * Accessible name for the avatar button. The name must never depend on the avatar image
414
+ * rendering — a Gravatar CORS failure drops to the icon fallback, and an icon carries no
415
+ * name of its own — so it is set on the BUTTON and falls back to a generic label before
416
+ * the user record has loaded.
417
+ */
418
+ get avatarAriaLabel(): string;
419
+ /**
420
+ * Skip link target handoff (WCAG 2.4.1). Focus is moved programmatically rather than left
421
+ * to the browser's fragment navigation: the shell's main region is a Golden Layout host,
422
+ * and letting the URL hash change here would collide with the deep-link/tab restore path.
423
+ */
424
+ skipToMainContent(event: Event): void;
383
425
  /**
384
426
  * Toggle user menu visibility
385
427
  */
@@ -1 +1 @@
1
- {"version":3,"file":"shell.component.d.ts","sourceRoot":"","sources":["../../../src/lib/shell/shell.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.component.d.ts","sourceRoot":"","sources":["../../../src/lib/shell/shell.component.ts"],"names":[],"mappings":"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"}