@memberjunction/ng-explorer-settings 4.2.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/__tests__/explorer-settings.test.d.ts +2 -0
  2. package/dist/__tests__/explorer-settings.test.d.ts.map +1 -0
  3. package/dist/__tests__/explorer-settings.test.js +23 -0
  4. package/dist/__tests__/explorer-settings.test.js.map +1 -0
  5. package/dist/lib/account-info/account-info.component.d.ts +3 -2
  6. package/dist/lib/account-info/account-info.component.d.ts.map +1 -1
  7. package/dist/lib/account-info/account-info.component.js +9 -5
  8. package/dist/lib/account-info/account-info.component.js.map +1 -1
  9. package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts +2 -0
  10. package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts.map +1 -1
  11. package/dist/lib/application-management/application-dialog/application-dialog.component.js +19 -5
  12. package/dist/lib/application-management/application-dialog/application-dialog.component.js.map +1 -1
  13. package/dist/lib/application-management/application-management.component.d.ts +3 -2
  14. package/dist/lib/application-management/application-management.component.d.ts.map +1 -1
  15. package/dist/lib/application-management/application-management.component.js +17 -6
  16. package/dist/lib/application-management/application-management.component.js.map +1 -1
  17. package/dist/lib/application-settings/application-settings.component.d.ts +3 -2
  18. package/dist/lib/application-settings/application-settings.component.d.ts.map +1 -1
  19. package/dist/lib/application-settings/application-settings.component.js +13 -7
  20. package/dist/lib/application-settings/application-settings.component.js.map +1 -1
  21. package/dist/lib/entity-permissions/entity-permissions.component.d.ts +4 -2
  22. package/dist/lib/entity-permissions/entity-permissions.component.d.ts.map +1 -1
  23. package/dist/lib/entity-permissions/entity-permissions.component.js +11 -4
  24. package/dist/lib/entity-permissions/entity-permissions.component.js.map +1 -1
  25. package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.d.ts +1 -0
  26. package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.d.ts.map +1 -1
  27. package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.js +10 -3
  28. package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.js.map +1 -1
  29. package/dist/lib/role-management/role-dialog/role-dialog.component.d.ts +2 -0
  30. package/dist/lib/role-management/role-dialog/role-dialog.component.d.ts.map +1 -1
  31. package/dist/lib/role-management/role-dialog/role-dialog.component.js +11 -3
  32. package/dist/lib/role-management/role-dialog/role-dialog.component.js.map +1 -1
  33. package/dist/lib/role-management/role-management.component.d.ts +4 -2
  34. package/dist/lib/role-management/role-management.component.d.ts.map +1 -1
  35. package/dist/lib/role-management/role-management.component.js +15 -5
  36. package/dist/lib/role-management/role-management.component.js.map +1 -1
  37. package/dist/lib/settings/settings.component.d.ts +4 -2
  38. package/dist/lib/settings/settings.component.d.ts.map +1 -1
  39. package/dist/lib/settings/settings.component.js +16 -6
  40. package/dist/lib/settings/settings.component.js.map +1 -1
  41. package/dist/lib/user-app-config/user-app-config.component.d.ts +3 -2
  42. package/dist/lib/user-app-config/user-app-config.component.d.ts.map +1 -1
  43. package/dist/lib/user-app-config/user-app-config.component.js +13 -7
  44. package/dist/lib/user-app-config/user-app-config.component.js.map +1 -1
  45. package/dist/lib/user-management/user-dialog/user-dialog.component.d.ts +2 -0
  46. package/dist/lib/user-management/user-dialog/user-dialog.component.d.ts.map +1 -1
  47. package/dist/lib/user-management/user-dialog/user-dialog.component.js +11 -3
  48. package/dist/lib/user-management/user-dialog/user-dialog.component.js.map +1 -1
  49. package/dist/lib/user-management/user-management.component.d.ts +4 -2
  50. package/dist/lib/user-management/user-management.component.d.ts.map +1 -1
  51. package/dist/lib/user-management/user-management.component.js +39 -11
  52. package/dist/lib/user-management/user-management.component.js.map +1 -1
  53. package/dist/lib/user-profile-settings/user-profile-settings.component.d.ts +4 -2
  54. package/dist/lib/user-profile-settings/user-profile-settings.component.d.ts.map +1 -1
  55. package/dist/lib/user-profile-settings/user-profile-settings.component.js +23 -7
  56. package/dist/lib/user-profile-settings/user-profile-settings.component.js.map +1 -1
  57. package/package.json +19 -19
@@ -1,4 +1,4 @@
1
- import { OnInit, ChangeDetectorRef } from '@angular/core';
1
+ import { OnInit, ChangeDetectorRef, NgZone } from '@angular/core';
2
2
  import { ApplicationManager, BaseApplication } from '@memberjunction/ng-base-application';
3
3
  import { SharedService } from '@memberjunction/ng-shared';
4
4
  import * as i0 from "@angular/core";
@@ -22,6 +22,7 @@ export declare class ApplicationSettingsComponent implements OnInit {
22
22
  private appManager;
23
23
  private sharedService;
24
24
  private cdr;
25
+ private ngZone;
25
26
  AllApps: AppConfigItem[];
26
27
  ActiveApps: AppConfigItem[];
27
28
  AvailableApps: AppConfigItem[];
@@ -32,7 +33,7 @@ export declare class ApplicationSettingsComponent implements OnInit {
32
33
  private draggedItem;
33
34
  private draggedIndex;
34
35
  private dropTargetIndex;
35
- constructor(appManager: ApplicationManager, sharedService: SharedService, cdr: ChangeDetectorRef);
36
+ constructor(appManager: ApplicationManager, sharedService: SharedService, cdr: ChangeDetectorRef, ngZone: NgZone);
36
37
  ngOnInit(): Promise<void>;
37
38
  /**
38
39
  * Loads the user's current app configuration
@@ -1 +1 @@
1
- {"version":3,"file":"application-settings.component.d.ts","sourceRoot":"","sources":["../../../src/lib/application-settings/application-settings.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGrE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;;AAE1D;;GAEG;AACH,UAAU,aAAa;IACrB,GAAG,EAAE,eAAe,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAMa,4BAA6B,YAAW,MAAM;IAqBvD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,GAAG;IArBb,OAAO,EAAE,aAAa,EAAE,CAAM;IAG9B,UAAU,EAAE,aAAa,EAAE,CAAM;IAGjC,aAAa,EAAE,aAAa,EAAE,CAAM;IAEpC,SAAS,UAAS;IAClB,QAAQ,UAAS;IACjB,YAAY,SAAM;IAClB,cAAc,SAAM;IAGpB,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,eAAe,CAAM;gBAGnB,UAAU,EAAE,kBAAkB,EAC9B,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,iBAAiB;IAG1B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoCxC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAUvE;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAOlC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKlD;;OAEG;IACH,SAAS,IAAI,IAAI;IAMjB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAyB9B;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAOjC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAepC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAkBjC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAkBnC;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA4C3B;;OAEG;YACW,qBAAqB;IAgBnC;;OAEG;YACW,qBAAqB;IAmBnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;yCA3VzB,4BAA4B;2CAA5B,4BAA4B;CA8VxC"}
1
+ {"version":3,"file":"application-settings.component.d.ts","sourceRoot":"","sources":["../../../src/lib/application-settings/application-settings.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG7E,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;;AAE1D;;GAEG;AACH,UAAU,aAAa;IACrB,GAAG,EAAE,eAAe,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAMa,4BAA6B,YAAW,MAAM;IAqBvD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;IAtBhB,OAAO,EAAE,aAAa,EAAE,CAAM;IAG9B,UAAU,EAAE,aAAa,EAAE,CAAM;IAGjC,aAAa,EAAE,aAAa,EAAE,CAAM;IAEpC,SAAS,UAAS;IAClB,QAAQ,UAAS;IACjB,YAAY,SAAM;IAClB,cAAc,SAAM;IAGpB,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,eAAe,CAAM;gBAGnB,UAAU,EAAE,kBAAkB,EAC9B,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM;IAGlB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCxC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAUvE;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAOlC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKlD;;OAEG;IACH,SAAS,IAAI,IAAI;IAMjB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAyB9B;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAOjC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAepC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAkBjC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAkBnC;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C3B;;OAEG;YACW,qBAAqB;IAgBnC;;OAEG;YACW,qBAAqB;IAmBnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;yCAhWzB,4BAA4B;2CAA5B,4BAA4B;CAmWxC"}
@@ -198,6 +198,7 @@ export class ApplicationSettingsComponent {
198
198
  appManager;
199
199
  sharedService;
200
200
  cdr;
201
+ ngZone;
201
202
  // All available apps from the system
202
203
  AllApps = [];
203
204
  // User's selected apps (active and ordered)
@@ -212,10 +213,11 @@ export class ApplicationSettingsComponent {
212
213
  draggedItem = null;
213
214
  draggedIndex = -1;
214
215
  dropTargetIndex = -1;
215
- constructor(appManager, sharedService, cdr) {
216
+ constructor(appManager, sharedService, cdr, ngZone) {
216
217
  this.appManager = appManager;
217
218
  this.sharedService = sharedService;
218
219
  this.cdr = cdr;
220
+ this.ngZone = ngZone;
219
221
  }
220
222
  async ngOnInit() {
221
223
  await this.LoadConfiguration();
@@ -249,8 +251,10 @@ export class ApplicationSettingsComponent {
249
251
  LogError('Error loading app configuration:', undefined, error instanceof Error ? error.message : String(error));
250
252
  }
251
253
  finally {
252
- this.IsLoading = false;
253
- this.cdr.detectChanges();
254
+ this.ngZone.run(() => {
255
+ this.IsLoading = false;
256
+ this.cdr.detectChanges();
257
+ });
254
258
  }
255
259
  }
256
260
  /**
@@ -441,8 +445,10 @@ export class ApplicationSettingsComponent {
441
445
  LogError('Error saving app configuration:', undefined, error instanceof Error ? error.message : String(error));
442
446
  }
443
447
  finally {
444
- this.IsSaving = false;
445
- this.cdr.detectChanges();
448
+ this.ngZone.run(() => {
449
+ this.IsSaving = false;
450
+ this.cdr.detectChanges();
451
+ });
446
452
  }
447
453
  }
448
454
  /**
@@ -491,7 +497,7 @@ export class ApplicationSettingsComponent {
491
497
  IsDropTarget(index) {
492
498
  return this.dropTargetIndex === index;
493
499
  }
494
- static ɵfac = function ApplicationSettingsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ApplicationSettingsComponent)(i0.ɵɵdirectiveInject(i1.ApplicationManager), i0.ɵɵdirectiveInject(i2.SharedService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
500
+ static ɵfac = function ApplicationSettingsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ApplicationSettingsComponent)(i0.ɵɵdirectiveInject(i1.ApplicationManager), i0.ɵɵdirectiveInject(i2.SharedService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.NgZone)); };
495
501
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ApplicationSettingsComponent, selectors: [["mj-application-settings"]], standalone: false, decls: 9, vars: 4, consts: [[1, "application-settings"], [1, "section-title"], [1, "section-description"], [1, "loading-container"], [1, "message", "error"], [1, "message", "success"], ["text", "Loading applications..."], [1, "fa-solid", "fa-exclamation-circle"], [1, "fa-solid", "fa-check-circle"], [1, "app-config-layout"], [1, "app-panel", "available-panel"], [1, "panel-header"], [1, "panel-title"], [1, "fa-solid", "fa-grid-2"], [1, "panel-count"], [1, "panel-content"], [1, "empty-state"], [1, "app-item"], [1, "app-panel", "selected-panel"], [1, "fa-solid", "fa-star"], [1, "panel-content", 3, "dragover"], ["draggable", "true", 1, "app-item", "selected", 3, "drop-target", "dirty"], [1, "action-bar"], [1, "btn", "btn-secondary", 3, "click", "disabled"], [1, "fa-solid", "fa-undo"], [1, "btn", "btn-primary", 3, "click", "disabled"], [1, "app-item", 3, "click"], [1, "app-icon"], [1, "app-info"], [1, "app-name"], [1, "app-desc"], ["title", "Add to selected", 1, "app-action", "add-btn", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "fa-solid", "fa-arrow-left"], ["draggable", "true", 1, "app-item", "selected", 3, "dragstart", "dragenter", "dragend", "drop"], ["title", "Drag to reorder", 1, "drag-handle"], [1, "fa-solid", "fa-grip-vertical"], [1, "app-sequence"], [1, "app-actions"], ["title", "Move up", 1, "action-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-up"], ["title", "Move down", 1, "action-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-down"], ["title", "Remove", 1, "action-btn", "remove-btn", 3, "click"], [1, "fa-solid", "fa-times"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-save"]], template: function ApplicationSettingsComponent_Template(rf, ctx) { if (rf & 1) {
496
502
  i0.ɵɵelementStart(0, "div", 0)(1, "h2", 1);
497
503
  i0.ɵɵtext(2, "Applications");
@@ -518,6 +524,6 @@ export class ApplicationSettingsComponent {
518
524
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApplicationSettingsComponent, [{
519
525
  type: Component,
520
526
  args: [{ standalone: false, selector: 'mj-application-settings', template: "<div class=\"application-settings\">\n <h2 class=\"section-title\">Applications</h2>\n <p class=\"section-description\">Choose which applications appear in your app switcher and set their order</p>\n\n @if (IsLoading) {\n <div class=\"loading-container\">\n <mj-loading text=\"Loading applications...\"></mj-loading>\n </div>\n }\n\n @if (ErrorMessage && !IsLoading) {\n <div class=\"message error\">\n <i class=\"fa-solid fa-exclamation-circle\"></i>\n <span>{{ ErrorMessage }}</span>\n </div>\n }\n\n @if (SuccessMessage && !IsLoading) {\n <div class=\"message success\">\n <i class=\"fa-solid fa-check-circle\"></i>\n <span>{{ SuccessMessage }}</span>\n </div>\n }\n\n @if (!IsLoading && !ErrorMessage) {\n <div class=\"app-config-layout\">\n <!-- Available Apps Panel -->\n <div class=\"app-panel available-panel\">\n <div class=\"panel-header\">\n <h3 class=\"panel-title\">\n <i class=\"fa-solid fa-grid-2\"></i>\n Available Applications\n </h3>\n <span class=\"panel-count\">{{ AvailableApps.length }}</span>\n </div>\n <div class=\"panel-content\">\n @if (AvailableApps.length === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-check-circle\"></i>\n <span>All applications are selected</span>\n </div>\n }\n @for (item of AvailableApps; track item.App.ID) {\n <div class=\"app-item\" (click)=\"AddApp(item)\">\n <div class=\"app-icon\">\n <i [class]=\"item.App.Icon || 'fa-solid fa-window-maximize'\"></i>\n </div>\n <div class=\"app-info\">\n <span class=\"app-name\">{{ item.App.Name }}</span>\n @if (item.App.Description) {\n <span class=\"app-desc\">{{ item.App.Description }}</span>\n }\n </div>\n <button\n class=\"app-action add-btn\"\n (click)=\"AddApp(item); $event.stopPropagation()\"\n title=\"Add to selected\"\n >\n <i class=\"fa-solid fa-plus\"></i>\n </button>\n </div>\n }\n </div>\n </div>\n\n <!-- Selected Apps Panel -->\n <div class=\"app-panel selected-panel\">\n <div class=\"panel-header\">\n <h3 class=\"panel-title\">\n <i class=\"fa-solid fa-star\"></i>\n Your Applications\n </h3>\n <span class=\"panel-count\">{{ ActiveApps.length }}</span>\n </div>\n <div class=\"panel-content\" (dragover)=\"OnDragOver($event)\">\n @if (ActiveApps.length === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-arrow-left\"></i>\n <span>Add applications from the list</span>\n </div>\n }\n @for (item of ActiveApps; track item.App.ID; let i = $index; let first = $first; let last = $last) {\n <div\n class=\"app-item selected\"\n [class.drop-target]=\"IsDropTarget(i)\"\n [class.dirty]=\"item.IsDirty\"\n draggable=\"true\"\n (dragstart)=\"OnDragStart($event, item, i)\"\n (dragenter)=\"OnDragEnter($event, i)\"\n (dragend)=\"OnDragEnd()\"\n (drop)=\"OnDrop($event)\"\n >\n <div class=\"drag-handle\" title=\"Drag to reorder\">\n <i class=\"fa-solid fa-grip-vertical\"></i>\n </div>\n <div class=\"app-icon\">\n <i [class]=\"item.App.Icon || 'fa-solid fa-window-maximize'\"></i>\n </div>\n <div class=\"app-info\">\n <span class=\"app-name\">{{ item.App.Name }}</span>\n <span class=\"app-sequence\">Position {{ i + 1 }}</span>\n </div>\n <div class=\"app-actions\">\n <button\n class=\"action-btn\"\n [disabled]=\"first\"\n (click)=\"MoveUp(item)\"\n title=\"Move up\"\n >\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <button\n class=\"action-btn\"\n [disabled]=\"last\"\n (click)=\"MoveDown(item)\"\n title=\"Move down\"\n >\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n <button\n class=\"action-btn remove-btn\"\n (click)=\"RemoveApp(item)\"\n title=\"Remove\"\n >\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"action-bar\">\n <button\n class=\"btn btn-secondary\"\n (click)=\"Reset()\"\n [disabled]=\"!HasChanges() || IsSaving\"\n >\n <i class=\"fa-solid fa-undo\"></i>\n Reset\n </button>\n <button\n class=\"btn btn-primary\"\n (click)=\"Save()\"\n [disabled]=\"!HasChanges() || IsSaving\"\n >\n @if (IsSaving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n Save Changes\n }\n </button>\n </div>\n }\n</div>\n", styles: [".application-settings {\n padding: 0;\n}\n\n.section-title {\n font-size: 1.5rem;\n font-weight: 600;\n margin: 0 0 0.5rem 0;\n color: var(--mj-text-primary, #1a1a1a);\n}\n\n.section-description {\n font-size: 0.875rem;\n color: var(--mj-text-secondary, #666);\n margin: 0 0 1.5rem 0;\n}\n\n.loading-container {\n display: flex;\n justify-content: center;\n padding: 3rem;\n}\n\n.message {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 1rem;\n border-radius: 8px;\n font-size: 0.875rem;\n margin-bottom: 1rem;\n}\n\n.message.error {\n background-color: var(--mj-error-bg, #fef2f2);\n color: var(--mj-error-text, #dc2626);\n}\n\n.message.success {\n background-color: var(--mj-success-bg, #dcfce7);\n color: var(--mj-success-text, #16a34a);\n}\n\n.app-config-layout {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 1.5rem;\n margin-bottom: 1.5rem;\n}\n\n@media (max-width: 768px) {\n .app-config-layout {\n grid-template-columns: 1fr;\n }\n}\n\n.app-panel {\n background: var(--mj-surface-color, #fff);\n border: 1px solid var(--mj-border-color, #e5e7eb);\n border-radius: 12px;\n overflow: hidden;\n}\n\n.panel-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 1rem 1.25rem;\n background: var(--mj-surface-secondary, #f9fafb);\n border-bottom: 1px solid var(--mj-border-color, #e5e7eb);\n}\n\n.panel-title {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.875rem;\n font-weight: 600;\n margin: 0;\n color: var(--mj-text-primary, #1f2937);\n}\n\n.panel-title i {\n color: var(--mj-primary-color, #3b82f6);\n}\n\n.panel-count {\n background: var(--mj-primary-color, #3b82f6);\n color: white;\n font-size: 0.75rem;\n font-weight: 600;\n padding: 0.125rem 0.5rem;\n border-radius: 9999px;\n}\n\n.panel-content {\n padding: 0.5rem;\n max-height: 400px;\n overflow-y: auto;\n}\n\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 2rem;\n color: var(--mj-text-secondary, #6b7280);\n text-align: center;\n}\n\n.empty-state i {\n font-size: 1.5rem;\n margin-bottom: 0.5rem;\n opacity: 0.5;\n}\n\n.app-item {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n padding: 0.75rem;\n border-radius: 8px;\n cursor: pointer;\n transition: background-color 0.15s ease;\n}\n\n.app-item:hover {\n background-color: var(--mj-hover-bg, #f3f4f6);\n}\n\n.app-item.selected {\n cursor: grab;\n}\n\n.app-item.selected:active {\n cursor: grabbing;\n}\n\n.app-item.drop-target {\n background-color: var(--mj-primary-light, #dbeafe);\n border: 2px dashed var(--mj-primary-color, #3b82f6);\n}\n\n.app-item.dirty {\n background-color: var(--mj-warning-bg-light, #fefce8);\n}\n\n.drag-handle {\n color: var(--mj-text-tertiary, #9ca3af);\n cursor: grab;\n padding: 0.25rem;\n}\n\n.drag-handle:active {\n cursor: grabbing;\n}\n\n.app-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n background: var(--mj-primary-light, #dbeafe);\n color: var(--mj-primary-color, #3b82f6);\n border-radius: 8px;\n flex-shrink: 0;\n}\n\n.app-info {\n flex: 1;\n min-width: 0;\n}\n\n.app-name {\n display: block;\n font-weight: 500;\n color: var(--mj-text-primary, #1f2937);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.app-desc {\n display: block;\n font-size: 0.75rem;\n color: var(--mj-text-secondary, #6b7280);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.app-sequence {\n display: block;\n font-size: 0.75rem;\n color: var(--mj-text-tertiary, #9ca3af);\n}\n\n.app-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.add-btn {\n background: var(--mj-success-bg, #dcfce7);\n color: var(--mj-success-text, #16a34a);\n}\n\n.add-btn:hover {\n background: var(--mj-success-color, #16a34a);\n color: white;\n}\n\n.app-actions {\n display: flex;\n gap: 0.25rem;\n}\n\n.action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n border: none;\n background: transparent;\n color: var(--mj-text-secondary, #6b7280);\n border-radius: 4px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.action-btn:hover:not(:disabled) {\n background: var(--mj-hover-bg, #f3f4f6);\n color: var(--mj-text-primary, #1f2937);\n}\n\n.action-btn:disabled {\n opacity: 0.3;\n cursor: not-allowed;\n}\n\n.action-btn.remove-btn:hover:not(:disabled) {\n background: var(--mj-error-bg, #fef2f2);\n color: var(--mj-error-text, #dc2626);\n}\n\n.action-bar {\n display: flex;\n justify-content: flex-end;\n gap: 0.75rem;\n padding-top: 1rem;\n border-top: 1px solid var(--mj-border-color, #e5e7eb);\n}\n\n.btn {\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.625rem 1.25rem;\n border-radius: 8px;\n font-size: 0.875rem;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n border: none;\n}\n\n.btn:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.btn-secondary {\n background: var(--mj-surface-secondary, #f3f4f6);\n color: var(--mj-text-primary, #1f2937);\n}\n\n.btn-secondary:hover:not(:disabled) {\n background: var(--mj-hover-bg, #e5e7eb);\n}\n\n.btn-primary {\n background: var(--mj-primary-color, #3b82f6);\n color: white;\n}\n\n.btn-primary:hover:not(:disabled) {\n background: var(--mj-primary-dark, #2563eb);\n}\n"] }]
521
- }], () => [{ type: i1.ApplicationManager }, { type: i2.SharedService }, { type: i0.ChangeDetectorRef }], null); })();
527
+ }], () => [{ type: i1.ApplicationManager }, { type: i2.SharedService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], null); })();
522
528
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ApplicationSettingsComponent, { className: "ApplicationSettingsComponent", filePath: "src/lib/application-settings/application-settings.component.ts", lineNumber: 30 }); })();
523
529
  //# sourceMappingURL=application-settings.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-settings.component.js","sourceRoot":"","sources":["../../../src/lib/application-settings/application-settings.component.ts","../../../src/lib/application-settings/application-settings.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application-settings.component.js","sourceRoot":"","sources":["../../../src/lib/application-settings/application-settings.component.ts","../../../src/lib/application-settings/application-settings.component.html"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { OnDestroy } from '@angular/core';
1
+ import { OnDestroy, ChangeDetectorRef, NgZone } from '@angular/core';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { EntityPermissionEntity, EntityEntity, RoleEntity, ResourceData } from '@memberjunction/core-entities';
4
4
  import { BaseDashboard } from '@memberjunction/ng-shared';
@@ -28,6 +28,8 @@ interface PermissionLevel {
28
28
  canDelete: boolean;
29
29
  }
30
30
  export declare class EntityPermissionsComponent extends BaseDashboard implements OnDestroy {
31
+ private cdr;
32
+ private ngZone;
31
33
  entityAccess: EntityAccess[];
32
34
  filteredEntityAccess: EntityAccess[];
33
35
  roles: RoleEntity[];
@@ -42,7 +44,7 @@ export declare class EntityPermissionsComponent extends BaseDashboard implements
42
44
  showMobileFilters: boolean;
43
45
  private destroy$;
44
46
  private metadata;
45
- constructor();
47
+ constructor(cdr: ChangeDetectorRef, ngZone: NgZone);
46
48
  GetResourceDisplayName(data: ResourceData): Promise<string>;
47
49
  protected initDashboard(): void;
48
50
  protected loadData(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"entity-permissions.component.d.ts","sourceRoot":"","sources":["../../../src/lib/entity-permissions/entity-permissions.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-permissions.component.d.ts","sourceRoot":"","sources":["../../../src/lib/entity-permissions/entity-permissions.component.ts"],"names":[],"mappings":"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"}
@@ -413,6 +413,8 @@ function EntityPermissionsComponent_Conditional_80_Template(rf, ctx) { if (rf &
413
413
  i0.ɵɵrepeater(ctx_r2.roles);
414
414
  } }
415
415
  let EntityPermissionsComponent = class EntityPermissionsComponent extends BaseDashboard {
416
+ cdr;
417
+ ngZone;
416
418
  // State management
417
419
  entityAccess = [];
418
420
  filteredEntityAccess = [];
@@ -441,8 +443,10 @@ let EntityPermissionsComponent = class EntityPermissionsComponent extends BaseDa
441
443
  showMobileFilters = false;
442
444
  destroy$ = new Subject();
443
445
  metadata = new Metadata();
444
- constructor() {
446
+ constructor(cdr, ngZone) {
445
447
  super();
448
+ this.cdr = cdr;
449
+ this.ngZone = ngZone;
446
450
  }
447
451
  async GetResourceDisplayName(data) {
448
452
  return "Permissions";
@@ -479,7 +483,10 @@ let EntityPermissionsComponent = class EntityPermissionsComponent extends BaseDa
479
483
  this.error = 'Failed to load permissions data. Please try again.';
480
484
  }
481
485
  finally {
482
- this.isLoading = false;
486
+ this.ngZone.run(() => {
487
+ this.isLoading = false;
488
+ this.cdr.markForCheck();
489
+ });
483
490
  }
484
491
  }
485
492
  async loadEntities() {
@@ -673,7 +680,7 @@ let EntityPermissionsComponent = class EntityPermissionsComponent extends BaseDa
673
680
  setViewMode(mode) {
674
681
  this.viewMode = mode;
675
682
  }
676
- static ɵfac = function EntityPermissionsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EntityPermissionsComponent)(); };
683
+ static ɵfac = function EntityPermissionsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EntityPermissionsComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.NgZone)); };
677
684
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EntityPermissionsComponent, selectors: [["mj-entity-permissions"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 81, vars: 34, consts: [[1, "entity-permissions-container"], [1, "sticky-header"], ["role", "toolbar", "aria-label", "Entity permissions actions", 1, "action-buttons"], [1, "mj-view-toggle"], ["role", "button", "tabindex", "0", "title", "List View", 1, "mj-btn", "mj-btn-ghost", 3, "click", "keydown.enter", "keydown.space"], ["aria-hidden", "true", 1, "fa-solid", "fa-list"], ["role", "button", "tabindex", "0", "title", "Grid View", 1, "mj-btn", "mj-btn-ghost", 3, "click", "keydown.enter", "keydown.space"], ["aria-hidden", "true", 1, "fa-solid", "fa-th"], ["aria-label", "Refresh entity permissions data", "title", "Refresh", 1, "mj-btn", "mj-btn-secondary", "mj-btn-icon-mobile", 3, "click", "disabled"], ["aria-hidden", "true", 1, "fa-solid", "fa-refresh"], [1, "btn-text"], ["role", "region", "aria-label", "Permission statistics", 1, "mj-grid-4"], ["role", "article", "aria-label", "Total entities statistic", 1, "mj-card"], ["aria-hidden", "true", 1, "stat-icon", "stat-icon-total"], [1, "fa-solid", "fa-database"], [1, "stat-content"], ["aria-label", "Total entities count", 1, "stat-value"], [1, "stat-label"], ["role", "article", "aria-label", "Public entities statistic", 1, "mj-card"], ["aria-hidden", "true", 1, "stat-icon", "stat-icon-public"], [1, "fa-solid", "fa-globe"], ["aria-label", "Public entities count", 1, "stat-value"], ["role", "article", "aria-label", "Restricted entities statistic", 1, "mj-card"], ["aria-hidden", "true", 1, "stat-icon", "stat-icon-restricted"], [1, "fa-solid", "fa-lock"], ["aria-label", "Restricted entities count", 1, "stat-value"], ["role", "article", "aria-label", "Total permissions statistic", 1, "mj-card"], ["aria-hidden", "true", 1, "stat-icon", "stat-icon-permissions"], [1, "fa-solid", "fa-key"], ["aria-label", "Total permissions count", 1, "stat-value"], ["role", "search", "aria-label", "Entity filters", 1, "filters-section"], [1, "filters-row"], [1, "mobile-search-container"], [1, "mj-search"], ["aria-hidden", "true", 1, "fa-solid", "fa-search", "mj-search-icon"], ["type", "text", "placeholder", "Search entities by name or description...", "aria-label", "Search entities", 1, "mj-search-input", 3, "input", "value"], ["aria-label", "Open filters", 1, "filter-button", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-filter"], [1, "mj-filter-group"], ["id", "access-level-label", 1, "mj-filter-label"], ["role", "group", "aria-labelledby", "access-level-label", 1, "mj-filter-buttons"], ["aria-label", "Show all access levels", 1, "mj-btn", "mj-btn-ghost", 3, "click"], ["aria-label", "Show only public entities", 1, "mj-btn", "mj-btn-ghost", 3, "click"], ["aria-label", "Show only restricted entities", 1, "mj-btn", "mj-btn-ghost", 3, "click"], ["aria-label", "Show only custom access entities", 1, "mj-btn", "mj-btn-ghost", 3, "click"], ["for", "role-filter", 1, "mj-filter-label"], ["id", "role-filter", "aria-label", "Filter entities by role", 1, "mj-filter-select", 3, "change"], ["value", ""], [3, "value"], [1, "scrollable-content"], ["role", "status", "aria-live", "polite", "aria-busy", "true", 1, "loading-container"], ["role", "alert", "aria-live", "assertive", 1, "error-container"], [1, "content-area"], [3, "result", "visible", "data"], ["role", "presentation", 1, "filter-modal-backdrop"], ["text", "Loading entity permissions...", "size", "medium"], [1, "error-content"], ["aria-hidden", "true", 1, "fa-solid", "fa-exclamation-triangle", "error-icon"], [1, "error-message"], ["aria-label", "Retry loading entity permissions", 1, "mj-btn", "mj-btn-primary", 3, "click"], ["role", "list", "aria-label", "Entity permissions list", 1, "entities-list"], ["role", "list", "aria-label", "Entity permissions grid", 1, "entities-grid"], ["role", "status", 1, "empty-state"], ["role", "listitem", 1, "entity-card", 3, "expanded"], ["role", "listitem", 1, "entity-card"], ["tabindex", "0", "role", "button", 1, "entity-header", 3, "click", "keydown.enter", "keydown.space"], [1, "entity-info"], ["aria-hidden", "true", 1, "entity-icon-wrapper"], [1, "fa-solid", "fa-table"], [1, "entity-details"], [1, "entity-name"], [1, "entity-description"], [1, "entity-meta"], [1, "access-badge"], ["aria-hidden", "true"], [1, "entity-actions", 3, "click"], ["title", "Edit Permissions", 1, "mj-btn", "mj-btn-ghost", "mj-btn-sm", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-edit"], [1, "expand-btn"], ["aria-hidden", "true", 1, "fa-solid", "fa-chevron-down"], ["role", "region", 1, "entity-content"], [1, "mobile-actions-bar", 3, "click"], [1, "mobile-action-buttons"], [1, "btn-label"], ["role", "table", "aria-label", "Role permissions", 1, "permissions-grid"], [1, "no-permissions"], ["role", "rowgroup", 1, "permissions-header"], ["role", "row"], ["scope", "col", "role", "columnheader", 1, "role-header"], ["scope", "col", "role", "columnheader", 1, "permission-header"], ["role", "rowgroup"], ["role", "row", 1, "permission-row"], ["role", "cell", 1, "role-name"], ["role", "cell", 1, "permission-cell"], [1, "entity-grid-card", 3, "class"], [1, "entity-grid-card"], [1, "grid-card-header"], ["aria-hidden", "true", 1, "fa-solid", "fa-table"], [1, "grid-card-title"], [1, "grid-card-description"], [1, "grid-card-footer"], [1, "access-label"], [1, "permission-count"], ["aria-hidden", "true", 1, "fa-solid", "fa-shield-alt", "empty-state-icon"], [1, "empty-text"], [1, "empty-subtext"], ["aria-label", "Refresh permissions data", 1, "mj-btn", "mj-btn-primary", 3, "click"], ["role", "presentation", 1, "filter-modal-backdrop", 3, "click"], ["role", "dialog", "aria-modal", "true", "aria-labelledby", "filter-modal-title", 1, "filter-modal", 3, "click"], [1, "filter-modal-header"], ["id", "filter-modal-title", 1, "filter-modal-title"], ["aria-label", "Close filters", 1, "filter-modal-close", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-times"], [1, "filter-modal-body"], [1, "filter-options-container"], [1, "filter-group"], [1, "filter-group-label"], [1, "filter-group-options"], [1, "filter-option"], ["type", "radio", "name", "accessLevel", "value", "all", 3, "change", "checked"], [1, "filter-option-label"], ["type", "radio", "name", "accessLevel", "value", "public", 3, "change", "checked"], ["type", "radio", "name", "accessLevel", "value", "restricted", 3, "change", "checked"], ["type", "radio", "name", "accessLevel", "value", "custom", 3, "change", "checked"], ["type", "radio", "name", "role", "value", "", 3, "change", "checked"], [1, "filter-option", 3, "selected"], [1, "filter-modal-footer"], [1, "mj-btn", "mj-btn-primary", 3, "click"], [1, "mj-btn", "mj-btn-secondary", 3, "click"], ["type", "radio", "name", "role", 3, "change", "value", "checked"]], template: function EntityPermissionsComponent_Template(rf, ctx) { if (rf & 1) {
678
685
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "button", 4);
679
686
  i0.ɵɵlistener("click", function EntityPermissionsComponent_Template_button_click_4_listener() { return ctx.setViewMode("list"); })("keydown.enter", function EntityPermissionsComponent_Template_button_keydown_enter_4_listener() { return ctx.setViewMode("list"); })("keydown.space", function EntityPermissionsComponent_Template_button_keydown_space_4_listener($event) { ctx.setViewMode("list"); return $event.preventDefault(); });
@@ -829,6 +836,6 @@ export { EntityPermissionsComponent };
829
836
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntityPermissionsComponent, [{
830
837
  type: Component,
831
838
  args: [{ standalone: false, selector: 'mj-entity-permissions', template: "<div class=\"entity-permissions-container\">\n <!-- Sticky Header Section - Contains controls that should always be visible -->\n <div class=\"sticky-header\">\n <!-- Action Buttons -->\n <div class=\"action-buttons\" role=\"toolbar\" aria-label=\"Entity permissions actions\">\n <div class=\"mj-view-toggle\">\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"viewMode === 'list'\"\n (click)=\"setViewMode('list')\"\n (keydown.enter)=\"setViewMode('list')\"\n (keydown.space)=\"setViewMode('list'); $event.preventDefault()\"\n [attr.aria-label]=\"'List view' + (viewMode === 'list' ? ' (active)' : '')\"\n [attr.aria-pressed]=\"viewMode === 'list'\"\n role=\"button\"\n tabindex=\"0\"\n title=\"List View\"\n >\n <i class=\"fa-solid fa-list\" aria-hidden=\"true\"></i>\n </button>\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"viewMode === 'grid'\"\n (click)=\"setViewMode('grid')\"\n (keydown.enter)=\"setViewMode('grid')\"\n (keydown.space)=\"setViewMode('grid'); $event.preventDefault()\"\n [attr.aria-label]=\"'Grid view' + (viewMode === 'grid' ? ' (active)' : '')\"\n [attr.aria-pressed]=\"viewMode === 'grid'\"\n role=\"button\"\n tabindex=\"0\"\n title=\"Grid View\"\n >\n <i class=\"fa-solid fa-th\" aria-hidden=\"true\"></i>\n </button>\n </div>\n <button\n class=\"mj-btn mj-btn-secondary mj-btn-icon-mobile\"\n (click)=\"refreshData()\"\n [disabled]=\"isLoading\"\n aria-label=\"Refresh entity permissions data\"\n title=\"Refresh\"\n >\n <i class=\"fa-solid fa-refresh\" [class.fa-spin]=\"isLoading\" aria-hidden=\"true\"></i>\n <span class=\"btn-text\">Refresh</span>\n </button>\n </div>\n\n <!-- Stats Cards -->\n <div class=\"mj-grid-4\" role=\"region\" aria-label=\"Permission statistics\">\n <div class=\"mj-card\" role=\"article\" aria-label=\"Total entities statistic\">\n <div class=\"stat-icon stat-icon-total\" aria-hidden=\"true\">\n <i class=\"fa-solid fa-database\"></i>\n </div>\n <div class=\"stat-content\">\n <div class=\"stat-value\" aria-label=\"Total entities count\">{{ stats.totalEntities }}</div>\n <div class=\"stat-label\">Total Entities</div>\n </div>\n </div>\n\n <div class=\"mj-card\" role=\"article\" aria-label=\"Public entities statistic\">\n <div class=\"stat-icon stat-icon-public\" aria-hidden=\"true\">\n <i class=\"fa-solid fa-globe\"></i>\n </div>\n <div class=\"stat-content\">\n <div class=\"stat-value\" aria-label=\"Public entities count\">{{ stats.publicEntities }}</div>\n <div class=\"stat-label\">Public Entities</div>\n </div>\n </div>\n\n <div class=\"mj-card\" role=\"article\" aria-label=\"Restricted entities statistic\">\n <div class=\"stat-icon stat-icon-restricted\" aria-hidden=\"true\">\n <i class=\"fa-solid fa-lock\"></i>\n </div>\n <div class=\"stat-content\">\n <div class=\"stat-value\" aria-label=\"Restricted entities count\">{{ stats.restrictedEntities }}</div>\n <div class=\"stat-label\">Restricted Entities</div>\n </div>\n </div>\n\n <div class=\"mj-card\" role=\"article\" aria-label=\"Total permissions statistic\">\n <div class=\"stat-icon stat-icon-permissions\" aria-hidden=\"true\">\n <i class=\"fa-solid fa-key\"></i>\n </div>\n <div class=\"stat-content\">\n <div class=\"stat-value\" aria-label=\"Total permissions count\">{{ stats.totalPermissions }}</div>\n <div class=\"stat-label\">Total Permissions</div>\n </div>\n </div>\n </div>\n\n <!-- Filters Section -->\n <div class=\"filters-section\" role=\"search\" aria-label=\"Entity filters\">\n <div class=\"filters-row\">\n <!-- Mobile: Search + Filter Button Container -->\n <div class=\"mobile-search-container\">\n <!-- Entity Search -->\n <div class=\"mj-search\">\n <i class=\"fa-solid fa-search mj-search-icon\" aria-hidden=\"true\"></i>\n <input\n type=\"text\"\n class=\"mj-search-input\"\n placeholder=\"Search entities by name or description...\"\n (input)=\"onSearchChange($event)\"\n [value]=\"filters$.value.entitySearch\"\n aria-label=\"Search entities\"\n />\n </div>\n\n <!-- Filter Button (Mobile Only) -->\n <button\n class=\"filter-button\"\n (click)=\"showMobileFilters = true\"\n aria-label=\"Open filters\"\n >\n <i class=\"fa-solid fa-filter\" aria-hidden=\"true\"></i>\n <span>Filters</span>\n </button>\n </div>\n\n <!-- Access Level Filter -->\n <div class=\"mj-filter-group\">\n <label class=\"mj-filter-label\" id=\"access-level-label\">Access Level</label>\n <div class=\"mj-filter-buttons\" role=\"group\" aria-labelledby=\"access-level-label\">\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"filters$.value.accessLevel === 'all'\"\n (click)=\"onAccessLevelChange('all')\"\n [attr.aria-pressed]=\"filters$.value.accessLevel === 'all'\"\n aria-label=\"Show all access levels\"\n >\n All\n </button>\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"filters$.value.accessLevel === 'public'\"\n (click)=\"onAccessLevelChange('public')\"\n [attr.aria-pressed]=\"filters$.value.accessLevel === 'public'\"\n aria-label=\"Show only public entities\"\n >\n Public\n </button>\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"filters$.value.accessLevel === 'restricted'\"\n (click)=\"onAccessLevelChange('restricted')\"\n [attr.aria-pressed]=\"filters$.value.accessLevel === 'restricted'\"\n aria-label=\"Show only restricted entities\"\n >\n Restricted\n </button>\n <button\n class=\"mj-btn mj-btn-ghost\"\n [class.mj-btn-primary]=\"filters$.value.accessLevel === 'custom'\"\n (click)=\"onAccessLevelChange('custom')\"\n [attr.aria-pressed]=\"filters$.value.accessLevel === 'custom'\"\n aria-label=\"Show only custom access entities\"\n >\n Custom\n </button>\n </div>\n </div>\n\n <!-- Role Filter -->\n <div class=\"mj-filter-group\">\n <label class=\"mj-filter-label\" for=\"role-filter\">Filter by Role</label>\n <select\n id=\"role-filter\"\n class=\"mj-filter-select\"\n (change)=\"onRoleFilterChange($event)\"\n aria-label=\"Filter entities by role\"\n >\n <option value=\"\">All Roles</option>\n @for (role of roles; track role.ID) {\n <option [value]=\"role.ID\">{{ role.Name }}</option>\n }\n </select>\n </div>\n </div>\n </div>\n </div><!-- End Sticky Header -->\n\n <!-- Scrollable Content Section -->\n <div class=\"scrollable-content\">\n <!-- Loading State -->\n @if (isLoading) {\n <div class=\"loading-container\" role=\"status\" aria-live=\"polite\" aria-busy=\"true\">\n <mj-loading text=\"Loading entity permissions...\" size=\"medium\"></mj-loading>\n </div>\n }\n\n <!-- Error State -->\n @if (error && !isLoading) {\n <div class=\"error-container\" role=\"alert\" aria-live=\"assertive\">\n <div class=\"error-content\">\n <i class=\"fa-solid fa-exclamation-triangle error-icon\" aria-hidden=\"true\"></i>\n <p class=\"error-message\">{{ error }}</p>\n <button\n class=\"mj-btn mj-btn-primary\"\n (click)=\"loadInitialData()\"\n aria-label=\"Retry loading entity permissions\"\n >\n <i class=\"fa-solid fa-refresh\" aria-hidden=\"true\"></i>\n Try Again\n </button>\n </div>\n </div>\n }\n\n <!-- Content Area -->\n @if (!isLoading && !error) {\n <div class=\"content-area\">\n @if (viewMode === 'list') {\n <!-- List View -->\n <div class=\"entities-list\" role=\"list\" aria-label=\"Entity permissions list\">\n @for (ea of filteredEntityAccess; track ea.entity.ID) {\n <div\n class=\"entity-card\"\n [class.expanded]=\"isEntityExpanded(ea.entity.ID)\"\n role=\"listitem\"\n [attr.aria-expanded]=\"isEntityExpanded(ea.entity.ID)\"\n >\n <div\n class=\"entity-header\"\n (click)=\"toggleEntityExpansion(ea.entity.ID)\"\n (keydown.enter)=\"toggleEntityExpansion(ea.entity.ID)\"\n (keydown.space)=\"toggleEntityExpansion(ea.entity.ID); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-label]=\"'Expand permissions for ' + ea.entity.Name\"\n >\n <div class=\"entity-info\">\n <div class=\"entity-icon-wrapper\" aria-hidden=\"true\">\n <i class=\"fa-solid fa-table\"></i>\n </div>\n <div class=\"entity-details\">\n <h3 class=\"entity-name\">{{ ea.entity.Name }}</h3>\n <p class=\"entity-description\">{{ ea.entity.Description || 'No description available' }}</p>\n </div>\n </div>\n\n <div class=\"entity-meta\">\n <span\n class=\"access-badge\"\n [class]=\"getAccessLevelClass(ea)\"\n [attr.aria-label]=\"'Access level: ' + getAccessLevelLabel(ea)\"\n >\n <i\n [class]=\"getAccessLevelClass(ea) === 'access-public' ? 'fa-solid fa-globe' :\n getAccessLevelClass(ea) === 'access-restricted' ? 'fa-solid fa-lock' :\n 'fa-solid fa-key'\"\n aria-hidden=\"true\"\n ></i>\n {{ getAccessLevelLabel(ea) }}\n </span>\n <div class=\"entity-actions\" (click)=\"$event.stopPropagation()\">\n <button\n class=\"mj-btn mj-btn-ghost mj-btn-sm\"\n (click)=\"editEntityPermissions(ea)\"\n title=\"Edit Permissions\"\n [attr.aria-label]=\"'Edit permissions for ' + ea.entity.Name\"\n >\n <i class=\"fa-solid fa-edit\" aria-hidden=\"true\"></i>\n </button>\n </div>\n <button\n class=\"expand-btn\"\n [attr.aria-label]=\"(isEntityExpanded(ea.entity.ID) ? 'Collapse' : 'Expand') + ' permissions for ' + ea.entity.Name\"\n >\n <i class=\"fa-solid fa-chevron-down\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n\n @if (isEntityExpanded(ea.entity.ID)) {\n <div class=\"entity-content\" role=\"region\" [attr.aria-label]=\"'Permissions for ' + ea.entity.Name\">\n <!-- Mobile-only actions bar -->\n <div class=\"mobile-actions-bar\" (click)=\"$event.stopPropagation()\">\n <span class=\"access-badge\" [class]=\"getAccessLevelClass(ea)\">\n <i\n [class]=\"getAccessLevelClass(ea) === 'access-public' ? 'fa-solid fa-globe' :\n getAccessLevelClass(ea) === 'access-restricted' ? 'fa-solid fa-lock' :\n 'fa-solid fa-key'\"\n aria-hidden=\"true\"\n ></i>\n {{ getAccessLevelLabel(ea) }}\n </span>\n <div class=\"mobile-action-buttons\">\n <button\n class=\"mj-btn mj-btn-ghost mj-btn-sm\"\n (click)=\"editEntityPermissions(ea)\"\n title=\"Edit Permissions\"\n [attr.aria-label]=\"'Edit permissions for ' + ea.entity.Name\"\n >\n <i class=\"fa-solid fa-edit\" aria-hidden=\"true\"></i>\n <span class=\"btn-label\">Edit</span>\n </button>\n </div>\n </div>\n\n @if (ea.permissions.length > 0) {\n <table class=\"permissions-grid\" role=\"table\" aria-label=\"Role permissions\">\n <thead class=\"permissions-header\" role=\"rowgroup\">\n <tr role=\"row\">\n <th class=\"role-header\" scope=\"col\" role=\"columnheader\">Role</th>\n <th class=\"permission-header\" scope=\"col\" role=\"columnheader\">Create</th>\n <th class=\"permission-header\" scope=\"col\" role=\"columnheader\">Read</th>\n <th class=\"permission-header\" scope=\"col\" role=\"columnheader\">Update</th>\n <th class=\"permission-header\" scope=\"col\" role=\"columnheader\">Delete</th>\n </tr>\n </thead>\n <tbody role=\"rowgroup\">\n @for (roleId of ea.rolePermissions.keys(); track roleId) {\n <tr class=\"permission-row\" role=\"row\">\n <td class=\"role-name\" role=\"cell\">{{ getRoleName(roleId) }}</td>\n <td class=\"permission-cell\" role=\"cell\" [attr.aria-label]=\"'Create: ' + (hasPermission(ea, roleId, 'canCreate') ? 'allowed' : 'denied')\">\n <i\n [class]=\"hasPermission(ea, roleId, 'canCreate') ?\n 'fa-solid fa-check text-success' :\n 'fa-solid fa-times text-muted'\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </td>\n <td class=\"permission-cell\" role=\"cell\" [attr.aria-label]=\"'Read: ' + (hasPermission(ea, roleId, 'canRead') ? 'allowed' : 'denied')\">\n <i\n [class]=\"hasPermission(ea, roleId, 'canRead') ?\n 'fa-solid fa-check text-success' :\n 'fa-solid fa-times text-muted'\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </td>\n <td class=\"permission-cell\" role=\"cell\" [attr.aria-label]=\"'Update: ' + (hasPermission(ea, roleId, 'canUpdate') ? 'allowed' : 'denied')\">\n <i\n [class]=\"hasPermission(ea, roleId, 'canUpdate') ?\n 'fa-solid fa-check text-success' :\n 'fa-solid fa-times text-muted'\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </td>\n <td class=\"permission-cell\" role=\"cell\" [attr.aria-label]=\"'Delete: ' + (hasPermission(ea, roleId, 'canDelete') ? 'allowed' : 'denied')\">\n <i\n [class]=\"hasPermission(ea, roleId, 'canDelete') ?\n 'fa-solid fa-check text-success' :\n 'fa-solid fa-times text-muted'\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </td>\n </tr>\n }\n </tbody>\n </table>\n } @else {\n <p class=\"no-permissions\">\n @if (ea.isPublic) {\n This entity is publicly accessible by all users.\n } @else {\n No specific role permissions configured. Access is restricted to system administrators.\n }\n </p>\n }\n </div>\n }\n </div>\n }\n </div>\n } @else {\n <!-- Grid View -->\n <div class=\"entities-grid\" role=\"list\" aria-label=\"Entity permissions grid\">\n @for (ea of filteredEntityAccess; track ea.entity.ID) {\n <article\n class=\"entity-grid-card\"\n [class]=\"getAccessLevelClass(ea)\"\n [attr.aria-label]=\"'Entity: ' + ea.entity.Name\"\n >\n <div class=\"grid-card-header\">\n <i class=\"fa-solid fa-table\" aria-hidden=\"true\"></i>\n <button\n class=\"mj-btn mj-btn-ghost mj-btn-sm\"\n (click)=\"editEntityPermissions(ea)\"\n [attr.aria-label]=\"'Edit permissions for ' + ea.entity.Name\"\n title=\"Edit Permissions\"\n >\n <i class=\"fa-solid fa-edit\" aria-hidden=\"true\"></i>\n </button>\n </div>\n <h4 class=\"grid-card-title\">{{ ea.entity.Name }}</h4>\n <p class=\"grid-card-description\">{{ ea.entity.Description || 'No description' }}</p>\n <div class=\"grid-card-footer\">\n <span\n class=\"access-label\"\n [attr.aria-label]=\"'Access level: ' + getAccessLevelLabel(ea)\"\n >\n <i\n [class]=\"getAccessLevelClass(ea) === 'access-public' ? 'fa-solid fa-globe' :\n getAccessLevelClass(ea) === 'access-restricted' ? 'fa-solid fa-lock' :\n 'fa-solid fa-key'\"\n aria-hidden=\"true\"\n ></i>\n {{ getAccessLevelLabel(ea) }}\n </span>\n @if (ea.permissions.length > 0) {\n <span\n class=\"permission-count\"\n [attr.aria-label]=\"ea.permissions.length + ' permission' + (ea.permissions.length === 1 ? '' : 's')\"\n >\n {{ ea.permissions.length }} permission{{ ea.permissions.length === 1 ? '' : 's' }}\n </span>\n }\n </div>\n </article>\n }\n </div>\n }\n\n @if (filteredEntityAccess.length === 0) {\n <div class=\"empty-state\" role=\"status\">\n <i class=\"fa-solid fa-shield-alt empty-state-icon\" aria-hidden=\"true\"></i>\n <h3 class=\"empty-text\">No Permissions Found</h3>\n <p class=\"empty-subtext\">Try adjusting your filters or refresh the data.</p>\n <button\n class=\"mj-btn mj-btn-primary\"\n (click)=\"refreshData()\"\n aria-label=\"Refresh permissions data\"\n >\n <i class=\"fa-solid fa-refresh\" aria-hidden=\"true\"></i>\n Refresh\n </button>\n </div>\n }\n </div>\n }\n </div><!-- End Scrollable Content -->\n\n <!-- Permission Edit Dialog -->\n <mj-permission-dialog\n [visible]=\"showPermissionDialog\"\n [data]=\"permissionDialogData\"\n (result)=\"onPermissionDialogResult($event)\"\n ></mj-permission-dialog>\n\n <!-- Mobile Filter Modal -->\n @if (showMobileFilters) {\n <div\n class=\"filter-modal-backdrop\"\n (click)=\"showMobileFilters = false\"\n role=\"presentation\"\n >\n <div\n class=\"filter-modal\"\n (click)=\"$event.stopPropagation()\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"filter-modal-title\"\n >\n <div class=\"filter-modal-header\">\n <h3 class=\"filter-modal-title\" id=\"filter-modal-title\">\n <i class=\"fa-solid fa-filter\" aria-hidden=\"true\"></i>\n Filters\n </h3>\n <button\n class=\"filter-modal-close\"\n (click)=\"showMobileFilters = false\"\n aria-label=\"Close filters\"\n >\n <i class=\"fa-solid fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n <div class=\"filter-modal-body\">\n <div class=\"filter-options-container\">\n <!-- Access Level Filter -->\n <div class=\"filter-group\">\n <h4 class=\"filter-group-label\">Access Level</h4>\n <div class=\"filter-group-options\">\n <label\n class=\"filter-option\"\n [class.selected]=\"filters$.value.accessLevel === 'all'\"\n >\n <input\n type=\"radio\"\n name=\"accessLevel\"\n value=\"all\"\n [checked]=\"filters$.value.accessLevel === 'all'\"\n (change)=\"onAccessLevelChange('all')\"\n />\n <span class=\"filter-option-label\">All Levels</span>\n </label>\n <label\n class=\"filter-option\"\n [class.selected]=\"filters$.value.accessLevel === 'public'\"\n >\n <input\n type=\"radio\"\n name=\"accessLevel\"\n value=\"public\"\n [checked]=\"filters$.value.accessLevel === 'public'\"\n (change)=\"onAccessLevelChange('public')\"\n />\n <span class=\"filter-option-label\">Public Entities</span>\n </label>\n <label\n class=\"filter-option\"\n [class.selected]=\"filters$.value.accessLevel === 'restricted'\"\n >\n <input\n type=\"radio\"\n name=\"accessLevel\"\n value=\"restricted\"\n [checked]=\"filters$.value.accessLevel === 'restricted'\"\n (change)=\"onAccessLevelChange('restricted')\"\n />\n <span class=\"filter-option-label\">Restricted Entities</span>\n </label>\n <label\n class=\"filter-option\"\n [class.selected]=\"filters$.value.accessLevel === 'custom'\"\n >\n <input\n type=\"radio\"\n name=\"accessLevel\"\n value=\"custom\"\n [checked]=\"filters$.value.accessLevel === 'custom'\"\n (change)=\"onAccessLevelChange('custom')\"\n />\n <span class=\"filter-option-label\">Custom Access Entities</span>\n </label>\n </div>\n </div>\n\n <!-- Role Filter -->\n <div class=\"filter-group\">\n <h4 class=\"filter-group-label\">Filter by Role</h4>\n <div class=\"filter-group-options\">\n <label class=\"filter-option\" [class.selected]=\"!filters$.value.roleId\">\n <input\n type=\"radio\"\n name=\"role\"\n value=\"\"\n [checked]=\"!filters$.value.roleId\"\n (change)=\"onRoleFilterChange($event)\"\n />\n <span class=\"filter-option-label\">All Roles</span>\n </label>\n @for (role of roles; track role.ID) {\n <label\n class=\"filter-option\"\n [class.selected]=\"filters$.value.roleId === role.ID\"\n >\n <input\n type=\"radio\"\n name=\"role\"\n [value]=\"role.ID\"\n [checked]=\"filters$.value.roleId === role.ID\"\n (change)=\"onRoleFilterChange($event)\"\n />\n <span class=\"filter-option-label\">{{ role.Name }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"filter-modal-footer\">\n <button\n class=\"mj-btn mj-btn-primary\"\n (click)=\"showMobileFilters = false\"\n >\n Apply Filters\n </button>\n <button\n class=\"mj-btn mj-btn-secondary\"\n (click)=\"showMobileFilters = false\"\n >\n Cancel\n </button>\n </div>\n </div>\n </div>\n }\n</div>\n", styles: ["/* ==============================================\n Entity Permissions Component - Material Design 3\n ============================================== */\n\n/* ==============================================\n CSS Custom Properties (Design Tokens)\n ============================================== */\n:host {\n /* Primary - Deep Blue */\n --md-primary: #0076B6;\n --md-on-primary: #FFFFFF;\n --md-primary-container: #AAE7FD;\n --md-on-primary-container: #001F2A;\n\n /* Secondary - Light Orange */\n --md-secondary: #F5A623;\n --md-on-secondary: #FFFFFF;\n --md-secondary-container: #FFECD6;\n --md-on-secondary-container: #2D1600;\n\n /* Tertiary - Light Green */\n --md-tertiary: #4CAF50;\n --md-on-tertiary: #FFFFFF;\n --md-tertiary-container: #C8E6C9;\n --md-on-tertiary-container: #002204;\n\n /* Error - Red */\n --md-error: #D32F2F;\n --md-on-error: #FFFFFF;\n --md-error-container: #FFCDD2;\n --md-on-error-container: #410002;\n\n /* Surface Colors */\n --md-surface: #FAFCFF;\n --md-surface-container-lowest: #FFFFFF;\n --md-surface-container-low: #F3F5F9;\n --md-surface-container: #EDF0F4;\n --md-surface-container-high: #E7EAEE;\n --md-surface-container-highest: #E1E3E8;\n --md-on-surface: #191C20;\n --md-on-surface-variant: #43474E;\n --md-outline: #74777F;\n --md-outline-variant: #C4C6D0;\n\n /* Elevation */\n --md-elevation-1: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08);\n --md-elevation-2: 0 2px 4px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.08);\n --md-elevation-3: 0 4px 8px rgba(0, 0, 0, 0.1), 0 8px 16px rgba(0, 0, 0, 0.08);\n --md-elevation-4: 0 6px 12px rgba(0, 0, 0, 0.1), 0 12px 24px rgba(0, 0, 0, 0.08);\n --md-elevation-5: 0 8px 16px rgba(0, 0, 0, 0.12), 0 16px 32px rgba(0, 0, 0, 0.1);\n\n /* Corner Radii */\n --md-corner-extra-small: 4px;\n --md-corner-small: 8px;\n --md-corner-medium: 12px;\n --md-corner-large: 16px;\n --md-corner-extra-large: 28px;\n --md-corner-full: 9999px;\n\n /* Host element fills container */\n display: flex;\n flex-direction: column;\n height: 100%;\n width: 100%;\n overflow: hidden;\n}\n\n/* ==============================================\n Container Layout\n ============================================== */\n.entity-permissions-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n position: relative;\n max-width: 1920px;\n margin: 0 auto;\n width: 100%;\n background: var(--md-surface);\n}\n\n/* ==============================================\n Sticky Header\n ============================================== */\n.sticky-header {\n flex-shrink: 0;\n background: var(--md-surface-container-lowest);\n padding: 1rem;\n border-bottom: 1px solid var(--md-outline-variant);\n box-shadow: var(--md-elevation-1);\n z-index: 10;\n}\n\n@media (min-width: 640px) {\n .sticky-header {\n padding: 1.25rem;\n }\n}\n\n@media (min-width: 768px) {\n .sticky-header {\n padding: 1.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .sticky-header {\n padding: 1.5rem 2rem;\n }\n}\n\n/* ==============================================\n Scrollable Content\n ============================================== */\n.scrollable-content {\n flex: 1;\n overflow-y: auto;\n overflow-x: hidden;\n -webkit-overflow-scrolling: touch;\n padding: 1rem;\n background: var(--md-surface-container-low);\n}\n\n@media (min-width: 640px) {\n .scrollable-content {\n padding: 1.25rem;\n }\n}\n\n@media (min-width: 768px) {\n .scrollable-content {\n padding: 1.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .scrollable-content {\n padding: 1.5rem 2rem;\n }\n}\n\n/* ==============================================\n Button System - MD3 Style\n ============================================== */\n.mj-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.75rem 1.5rem;\n font-size: 0.875rem;\n font-weight: 600;\n border: none;\n border-radius: var(--md-corner-full);\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n white-space: nowrap;\n min-width: 44px;\n min-height: 44px;\n text-decoration: none;\n}\n\n.mj-btn:focus-visible {\n outline: 2px solid var(--md-primary);\n outline-offset: 2px;\n}\n\n.mj-btn:disabled {\n opacity: 0.38;\n cursor: not-allowed;\n}\n\n/* Primary Button - Dark, lightens on hover */\n.mj-btn-primary,\n.mj-btn.mj-btn-primary {\n background: var(--md-primary);\n color: var(--md-on-primary);\n box-shadow: var(--md-elevation-1);\n}\n\n.mj-btn-primary:hover:not(:disabled),\n.mj-btn.mj-btn-primary:hover:not(:disabled) {\n background: #3395C8;\n box-shadow: var(--md-elevation-2);\n}\n\n.mj-btn-primary:active:not(:disabled),\n.mj-btn.mj-btn-primary:active:not(:disabled) {\n background: #4BA5D4;\n transform: scale(0.98);\n}\n\n/* Secondary Button - Light, darkens on hover */\n.mj-btn-secondary {\n background: var(--md-surface);\n color: var(--md-primary);\n border: 1px solid var(--md-outline);\n}\n\n.mj-btn-secondary:hover:not(:disabled) {\n background: var(--md-primary);\n color: var(--md-on-primary);\n border-color: var(--md-primary);\n}\n\n.mj-btn-secondary:active:not(:disabled) {\n background: #005A8C;\n border-color: #005A8C;\n}\n\n/* Ghost Button - Transparent, fills on hover */\n.mj-btn-ghost {\n background: transparent;\n color: var(--md-on-surface-variant);\n padding: 0.75rem 1rem;\n}\n\n.mj-btn-ghost:hover:not(:disabled) {\n background: var(--md-primary);\n color: var(--md-on-primary);\n}\n\n.mj-btn-ghost:active:not(:disabled) {\n background: #005A8C;\n}\n\n/* Icon-only Button */\n.mj-btn-icon-only {\n padding: 0.625rem;\n min-width: 44px;\n min-height: 44px;\n}\n\n/* Small Button */\n.mj-btn-sm {\n padding: 0.5rem 0.875rem;\n min-height: 36px;\n min-width: 36px;\n font-size: 0.8125rem;\n}\n\n/* Icon-only on Mobile Button */\n.mj-btn-icon-mobile {\n padding: 0.75rem 1.5rem;\n}\n\n@media (min-width: 640px) {\n .mj-btn-icon-mobile {\n padding: 0.75rem 1.5rem;\n }\n}\n\n@media (max-width: 639px) {\n .mj-btn-icon-mobile .btn-text {\n display: none;\n }\n\n .mj-btn-icon-mobile {\n padding: 0.625rem;\n gap: 0;\n }\n}\n\n/* ==============================================\n Action Buttons\n ============================================== */\n.action-buttons {\n display: flex;\n gap: 0.75rem;\n justify-content: space-between;\n margin-bottom: 1rem;\n flex-wrap: wrap;\n align-items: center;\n}\n\n@media (min-width: 768px) {\n .action-buttons {\n margin-bottom: 1.25rem;\n }\n}\n\n/* ==============================================\n Mobile Navigation Rail - MD3 Style\n ============================================== */\n@media (max-width: 639px) {\n .sticky-header {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n padding: 0.75rem 1rem;\n }\n\n .action-buttons {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n margin-bottom: 0;\n order: 1;\n width: 100%;\n }\n\n .mj-view-toggle {\n flex-shrink: 0;\n background: var(--md-surface-container);\n border-radius: var(--md-corner-medium);\n padding: 3px;\n gap: 2px;\n }\n\n .mj-view-toggle .mj-btn {\n padding: 0.5rem 0.625rem;\n min-width: 36px;\n min-height: 36px;\n border-radius: var(--md-corner-small);\n }\n\n .mj-view-toggle .mj-btn.mj-btn-primary {\n box-shadow: none;\n }\n\n .action-buttons > .mj-btn-secondary {\n flex-shrink: 0;\n padding: 0.5rem 0.625rem;\n min-width: 36px;\n min-height: 36px;\n border-radius: var(--md-corner-medium);\n }\n\n .filters-section {\n order: 2;\n width: 100%;\n background: #F3F5F9;\n border: 1px solid var(--md-outline-variant);\n padding: 0.75rem;\n margin-bottom: 0.5rem;\n border-radius: var(--md-corner-medium);\n }\n\n .filters-row {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.5rem;\n flex-wrap: nowrap;\n }\n\n /* Mobile search container */\n .mobile-search-container {\n display: flex;\n gap: 0.5rem;\n align-items: center;\n flex: 1;\n min-width: 0;\n }\n\n .mj-search {\n flex: 1;\n min-width: 0;\n }\n\n .mj-search .mj-search-input {\n padding: 0.75rem 1rem 0.75rem 2.5rem;\n min-height: 44px;\n font-size: 1rem;\n border-width: 1.5px;\n border-radius: var(--md-corner-full);\n box-sizing: border-box;\n width: 100%;\n }\n\n .mj-search .mj-search-icon {\n left: 0.875rem;\n font-size: 1rem;\n }\n\n .mj-search .mj-search-input::placeholder {\n font-size: 0.875rem;\n }\n\n /* Hide filter groups on mobile - they go in modal */\n .mj-filter-group {\n display: none !important;\n }\n\n .mj-filter-label {\n display: none;\n }\n\n .mj-filter-select {\n display: none;\n }\n\n /* Show filter button on mobile */\n .filter-button {\n display: inline-flex !important;\n flex-shrink: 0;\n }\n}\n\n/* ==============================================\n View Toggle\n ============================================== */\n.mj-view-toggle {\n display: flex;\n background: var(--md-surface-container);\n border-radius: var(--md-corner-full);\n padding: 4px;\n gap: 2px;\n}\n\n.mj-view-toggle .mj-btn {\n padding: 0.5rem 1rem;\n border-radius: var(--md-corner-full);\n background: transparent;\n color: var(--md-on-surface-variant);\n border: none;\n font-size: 0.875rem;\n font-weight: 500;\n}\n\n.mj-view-toggle .mj-btn:hover:not(:disabled):not(.mj-btn-primary) {\n background: var(--md-primary);\n color: var(--md-on-primary);\n}\n\n.mj-view-toggle .mj-btn.mj-btn-primary {\n background: var(--md-primary);\n color: var(--md-on-primary);\n box-shadow: var(--md-elevation-1);\n}\n\n/* ==============================================\n Stats Grid - Static Display Cards\n ============================================== */\n.mj-grid-4 {\n display: grid;\n gap: 0.75rem;\n margin-bottom: 1rem;\n width: 100%;\n grid-template-columns: repeat(2, 1fr);\n}\n\n@media (max-width: 639px) {\n .mj-grid-4 {\n display: none !important;\n }\n}\n\n@media (min-width: 640px) {\n .mj-grid-4 {\n gap: 1rem;\n }\n}\n\n@media (min-width: 768px) {\n .mj-grid-4 {\n grid-template-columns: repeat(4, 1fr);\n gap: 1.25rem;\n margin-bottom: 1.25rem;\n }\n}\n\n/* Stat Card - Static (Non-interactive) */\n.mj-card {\n background: var(--md-surface-container-low);\n border-radius: var(--md-corner-medium);\n padding: 1rem;\n display: flex;\n align-items: center;\n gap: 1rem;\n min-width: 0;\n border: 1px solid var(--md-outline-variant);\n cursor: default;\n pointer-events: none;\n}\n\n@media (min-width: 768px) {\n .mj-card {\n padding: 1rem 1.25rem;\n }\n}\n\n/* Stat Icon Containers */\n.stat-icon {\n width: 48px;\n height: 48px;\n border-radius: var(--md-corner-medium);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 1.25rem;\n flex-shrink: 0;\n}\n\n@media (min-width: 768px) {\n .stat-icon {\n width: 52px;\n height: 52px;\n font-size: 1.375rem;\n }\n}\n\n/* Total stat - Primary Blue */\n.stat-icon-total {\n background: var(--md-primary-container);\n color: var(--md-primary);\n}\n\n/* Public stat - Tertiary Green */\n.stat-icon-public {\n background: var(--md-tertiary-container);\n color: var(--md-tertiary);\n}\n\n/* Restricted stat - Error Red */\n.stat-icon-restricted {\n background: var(--md-error-container);\n color: var(--md-error);\n}\n\n/* Permissions stat - Secondary Orange */\n.stat-icon-permissions {\n background: var(--md-secondary-container);\n color: #B5751A;\n}\n\n/* Stat Content */\n.stat-content {\n flex: 1;\n min-width: 0;\n}\n\n.stat-content .stat-value {\n font-size: 1.75rem;\n font-weight: 700;\n color: var(--md-on-surface);\n line-height: 1;\n letter-spacing: -0.02em;\n}\n\n@media (min-width: 768px) {\n .stat-content .stat-value {\n font-size: 1.875rem;\n }\n}\n\n.stat-content .stat-label {\n font-size: 0.75rem;\n font-weight: 500;\n color: var(--md-on-surface-variant);\n text-transform: uppercase;\n letter-spacing: 0.05em;\n margin-top: 0.25rem;\n}\n\n@media (min-width: 768px) {\n .stat-content .stat-label {\n font-size: 0.8125rem;\n }\n}\n\n/* ==============================================\n Filters Section\n ============================================== */\n.filters-section {\n background: #F3F5F9;\n border-radius: var(--md-corner-large);\n padding: 1rem;\n margin-bottom: 0;\n border: 1px solid var(--md-outline-variant);\n width: 100%;\n}\n\n@media (min-width: 768px) {\n .filters-section {\n padding: 1rem 1.25rem;\n }\n}\n\n@media (min-width: 1024px) {\n .filters-section {\n padding: 1.25rem 1.5rem;\n }\n}\n\n/* Filters Row */\n.filters-row {\n display: flex;\n gap: 1rem;\n align-items: flex-end;\n flex-wrap: wrap;\n}\n\n@media (max-width: 639px) {\n .filters-row {\n flex-direction: column;\n align-items: stretch;\n gap: 0.75rem;\n }\n}\n\n@media (min-width: 1024px) {\n .filters-row {\n gap: 1.5rem;\n }\n}\n\n/* ==============================================\n Search Input - MD3 Style\n ============================================== */\n.mj-search {\n position: relative;\n flex: 1;\n min-width: 200px;\n}\n\n@media (max-width: 639px) {\n .mj-search {\n min-width: 100%;\n }\n}\n\n.mj-search .mj-search-icon {\n position: absolute;\n left: 1rem;\n top: 50%;\n transform: translateY(-50%);\n color: var(--md-on-surface-variant);\n font-size: 1rem;\n pointer-events: none;\n transition: color 0.2s ease;\n}\n\n.mj-search .mj-search-input {\n width: 100%;\n padding: 0.875rem 1rem 0.875rem 2.75rem;\n border: 2px solid var(--md-outline-variant);\n border-radius: var(--md-corner-full);\n font-size: 1rem;\n background: var(--md-surface);\n color: var(--md-on-surface);\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n min-height: 44px;\n}\n\n.mj-search .mj-search-input::placeholder {\n color: var(--md-on-surface-variant);\n}\n\n.mj-search .mj-search-input:hover {\n border-color: var(--md-primary);\n background: var(--md-surface-container-lowest);\n}\n\n.mj-search .mj-search-input:focus {\n outline: none;\n border-color: var(--md-primary);\n box-shadow: 0 0 0 3px rgba(0, 118, 182, 0.2);\n background: var(--md-surface);\n}\n\n.mj-search:focus-within .mj-search-icon {\n color: var(--md-primary);\n}\n\n@media (min-width: 1024px) {\n .mj-search .mj-search-input {\n padding: 1rem 1.25rem 1rem 3rem;\n }\n\n .mj-search .mj-search-icon {\n left: 1.125rem;\n font-size: 1.125rem;\n }\n}\n\n/* ==============================================\n Filter Group - MD3 Style\n ============================================== */\n.mj-filter-group {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n justify-content: flex-end;\n}\n\n.mj-filter-label {\n font-size: 0.8125rem;\n font-weight: 500;\n color: var(--md-on-surface);\n line-height: 1.2;\n}\n\n.mj-filter-buttons {\n display: flex;\n background: var(--md-surface-container);\n border-radius: var(--md-corner-full);\n padding: 4px;\n gap: 2px;\n flex-wrap: wrap;\n}\n\n.mj-filter-buttons .mj-btn {\n padding: 0.5rem 1rem;\n border-radius: var(--md-corner-full);\n font-size: 0.875rem;\n font-weight: 500;\n background: transparent;\n color: var(--md-on-surface-variant);\n border: none;\n}\n\n.mj-filter-buttons .mj-btn:hover:not(:disabled):not(.mj-btn-primary) {\n background: var(--md-primary);\n color: var(--md-on-primary);\n}\n\n.mj-filter-buttons .mj-btn.mj-btn-primary {\n background: var(--md-primary);\n color: var(--md-on-primary);\n box-shadow: var(--md-elevation-1);\n}\n\n@media (max-width: 639px) {\n .mj-filter-buttons {\n flex-direction: row;\n flex-wrap: wrap;\n }\n\n .mj-filter-buttons .mj-btn {\n flex: 1;\n min-width: calc(50% - 4px);\n padding: 0.5rem 0.75rem;\n font-size: 0.75rem;\n }\n}\n\n/* Filter Select Dropdown */\n.mj-filter-select {\n padding: 0.5rem 1rem;\n border: 2px solid var(--md-outline-variant);\n border-radius: var(--md-corner-full);\n font-size: 0.875rem;\n font-weight: 500;\n background: var(--md-surface);\n color: var(--md-on-surface);\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n min-height: 44px;\n height: 44px;\n min-width: 150px;\n box-sizing: border-box;\n}\n\n.mj-filter-select:hover {\n border-color: var(--md-primary);\n background: var(--md-surface-container-lowest);\n}\n\n.mj-filter-select:focus {\n outline: none;\n border-color: var(--md-primary);\n box-shadow: 0 0 0 3px rgba(0, 118, 182, 0.2);\n}\n\n@media (max-width: 639px) {\n .mj-filter-select {\n width: 100%;\n }\n}\n\n/* ==============================================\n Mobile Search Container (Desktop Default)\n ============================================== */\n.mobile-search-container {\n display: contents;\n}\n\n/* ==============================================\n Filter Button (Mobile Only)\n ============================================== */\n.filter-button {\n display: none;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.75rem 1.25rem;\n border: 2px solid var(--md-outline-variant);\n background: var(--md-surface);\n color: var(--md-on-surface);\n border-radius: var(--md-corner-full);\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n min-height: 44px;\n min-width: 44px;\n}\n\n.filter-button:hover {\n border-color: var(--md-primary);\n background: var(--md-surface-container-lowest);\n}\n\n.filter-button:active {\n background: var(--md-primary);\n color: var(--md-on-primary);\n border-color: var(--md-primary);\n}\n\n.filter-button i {\n font-size: 1rem;\n}\n\n.filter-button .filter-badge {\n position: absolute;\n top: -4px;\n right: -4px;\n background: var(--md-error);\n color: var(--md-on-error);\n font-size: 0.625rem;\n font-weight: 700;\n min-width: 18px;\n height: 18px;\n border-radius: 9px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 4px;\n}\n\n/* ==============================================\n Filter Modal (Mobile)\n ============================================== */\n.filter-modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.4);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: flex-end;\n justify-content: center;\n z-index: 1000;\n animation: fadeIn 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n padding: 0;\n}\n\n.filter-modal {\n background: var(--md-surface);\n border-radius: var(--md-corner-extra-large) var(--md-corner-extra-large) 0 0;\n box-shadow: var(--md-elevation-5);\n width: 100%;\n max-height: 80vh;\n overflow: hidden;\n animation: slideUpFromBottom 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n display: flex;\n flex-direction: column;\n}\n\n.filter-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 1.25rem 1.5rem;\n border-bottom: 1px solid var(--md-outline-variant);\n flex-shrink: 0;\n}\n\n.filter-modal-title {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n font-size: 1.25rem;\n font-weight: 600;\n color: var(--md-on-surface);\n margin: 0;\n}\n\n.filter-modal-title i {\n color: var(--md-primary);\n font-size: 1.375rem;\n}\n\n.filter-modal-close {\n padding: 0.625rem;\n border: none;\n background: transparent;\n color: var(--md-on-surface-variant);\n font-size: 1.25rem;\n cursor: pointer;\n border-radius: var(--md-corner-full);\n transition: all 0.2s ease;\n min-width: 44px;\n min-height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.filter-modal-close:hover {\n background: var(--md-primary);\n color: var(--md-on-primary);\n}\n\n.filter-modal-body {\n padding: 1.5rem;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n flex: 1;\n}\n\n.filter-modal-footer {\n display: flex;\n gap: 0.75rem;\n padding: 1.25rem 1.5rem;\n border-top: 1px solid var(--md-outline-variant);\n background: var(--md-surface-container-low);\n flex-shrink: 0;\n}\n\n.filter-modal-footer button {\n flex: 1;\n margin: 0;\n}\n\n/* Filter Options Container (Inside Modal) */\n.filter-options-container {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n}\n\n.filter-group {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.filter-group-label {\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--md-on-surface);\n text-transform: uppercase;\n letter-spacing: 0.05em;\n margin: 0;\n}\n\n.filter-group-options {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.filter-option {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n padding: 0.875rem 1rem;\n background: var(--md-surface-container-low);\n border: 2px solid var(--md-outline-variant);\n border-radius: var(--md-corner-medium);\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n min-height: 56px;\n}\n\n.filter-option:hover {\n border-color: var(--md-primary);\n background: var(--md-surface-container);\n}\n\n.filter-option.selected {\n background: var(--md-primary-container);\n border-color: var(--md-primary);\n color: var(--md-primary);\n}\n\n.filter-option input[type=\"checkbox\"],\n.filter-option input[type=\"radio\"] {\n width: 20px;\n height: 20px;\n cursor: pointer;\n accent-color: var(--md-primary);\n flex-shrink: 0;\n}\n\n.filter-option-label {\n flex: 1;\n font-size: 1rem;\n font-weight: 500;\n color: var(--md-on-surface);\n}\n\n.filter-option.selected .filter-option-label {\n color: var(--md-primary);\n font-weight: 600;\n}\n\n/* Animations */\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes slideUpFromBottom {\n from {\n transform: translateY(100%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n/* ==============================================\n Loading Container\n ============================================== */\n.loading-container {\n display: flex;\n justify-content: center;\n align-items: center;\n min-height: 200px;\n padding: 3rem 1.5rem;\n}\n\n/* ==============================================\n Content Area\n ============================================== */\n.content-area {\n flex: 1 1 auto;\n overflow: visible;\n position: relative;\n background: var(--md-surface-container-lowest);\n border-radius: var(--md-corner-large);\n box-shadow: var(--md-elevation-2);\n padding: 1.25rem;\n border: 1px solid var(--md-outline-variant);\n}\n\n@media (min-width: 768px) {\n .content-area {\n padding: 1.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .content-area {\n padding: 1.75rem;\n }\n}\n\n/* ==============================================\n Entities List\n ============================================== */\n.entities-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n overflow: visible;\n}\n\n@media (min-width: 768px) {\n .entities-list {\n gap: 1rem;\n }\n}\n\n/* ==============================================\n Entity Card - Interactive\n ============================================== */\n.entity-card {\n background: var(--md-surface);\n border: 1px solid var(--md-outline-variant);\n border-radius: var(--md-corner-large);\n overflow: hidden;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.entity-card:hover {\n box-shadow: var(--md-elevation-2);\n border-color: var(--md-primary);\n}\n\n.entity-card.expanded {\n box-shadow: var(--md-elevation-3);\n border-color: var(--md-primary);\n}\n\n.entity-card.expanded .expand-btn i {\n transform: rotate(180deg);\n}\n\n/* Entity Header */\n.entity-header {\n padding: 1rem;\n display: flex;\n justify-content: space-between;\n align-items: center;\n cursor: pointer;\n background: var(--md-surface-container-lowest);\n transition: background-color 0.2s ease;\n gap: 0.75rem;\n}\n\n.entity-header:hover {\n background: var(--md-surface-container-low);\n}\n\n@media (min-width: 768px) {\n .entity-header {\n padding: 1.25rem 1.5rem;\n }\n}\n\n/* Entity Info */\n.entity-info {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n flex: 1;\n min-width: 0;\n}\n\n@media (min-width: 768px) {\n .entity-info {\n gap: 1rem;\n }\n}\n\n/* Entity Icon Container - Primary */\n.entity-icon-wrapper {\n width: 48px;\n height: 48px;\n border-radius: var(--md-corner-medium);\n background: var(--md-primary-container);\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--md-primary);\n font-size: 1.25rem;\n flex-shrink: 0;\n}\n\n@media (min-width: 768px) {\n .entity-icon-wrapper {\n width: 52px;\n height: 52px;\n font-size: 1.375rem;\n }\n}\n\n/* Entity Details */\n.entity-details {\n flex: 1;\n min-width: 0;\n}\n\n.entity-details .entity-name {\n font-size: 1rem;\n font-weight: 600;\n color: var(--md-on-surface);\n margin: 0 0 0.25rem 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n@media (min-width: 768px) {\n .entity-details .entity-name {\n font-size: 1.125rem;\n }\n}\n\n.entity-details .entity-description {\n font-size: 0.8125rem;\n color: var(--md-on-surface-variant);\n margin: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n@media (min-width: 768px) {\n .entity-details .entity-description {\n font-size: 0.875rem;\n }\n}\n\n/* Entity Meta */\n.entity-meta {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n flex-shrink: 0;\n}\n\n@media (min-width: 768px) {\n .entity-meta {\n gap: 0.75rem;\n }\n}\n\n/* ==============================================\n Access Badges - MD3 Style\n ============================================== */\n.access-badge {\n display: inline-flex;\n align-items: center;\n gap: 0.375rem;\n padding: 0.375rem 0.875rem;\n border-radius: var(--md-corner-full);\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n white-space: nowrap;\n}\n\n@media (min-width: 768px) {\n .access-badge {\n padding: 0.5rem 1rem;\n font-size: 0.8125rem;\n }\n}\n\n/* Public Access - Tertiary Green */\n.access-badge.access-public {\n background: var(--md-tertiary-container);\n color: #1B5E20;\n border: 1px solid var(--md-tertiary);\n}\n\n/* Restricted Access - Error Red */\n.access-badge.access-restricted {\n background: var(--md-error-container);\n color: var(--md-on-error-container);\n border: 1px solid var(--md-error);\n}\n\n/* Custom Access - Secondary Orange */\n.access-badge.access-custom {\n background: var(--md-secondary-container);\n color: #7A4D0C;\n border: 1px solid var(--md-secondary);\n}\n\n/* Entity Actions - Hide on mobile */\n.entity-actions {\n display: none;\n}\n\n@media (min-width: 640px) {\n .entity-actions {\n display: flex;\n gap: 0.25rem;\n }\n}\n\n@media (max-width: 639px) {\n .entity-meta > .access-badge {\n display: none;\n }\n}\n\n/* Expand Button */\n.expand-btn {\n padding: 0.625rem;\n border: none;\n background: transparent;\n color: var(--md-on-surface-variant);\n font-size: 1rem;\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n min-width: 44px;\n min-height: 44px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--md-corner-full);\n}\n\n.expand-btn:hover {\n background: var(--md-primary);\n color: var(--md-on-primary);\n}\n\n.expand-btn:focus-visible {\n outline: 2px solid var(--md-primary);\n outline-offset: 2px;\n}\n\n.expand-btn i {\n transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n/* ==============================================\n Entity Content - Expanded Area\n ============================================== */\n.entity-content {\n padding: 1.25rem;\n background: var(--md-surface-container-lowest);\n border-top: 1px solid var(--md-outline-variant);\n animation: slideDown 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n@media (min-width: 768px) {\n .entity-content {\n padding: 1.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .entity-content {\n padding: 1.75rem;\n }\n}\n\n/* ==============================================\n Mobile Actions Bar\n ============================================== */\n.mobile-actions-bar {\n display: none;\n}\n\n@media (max-width: 639px) {\n .mobile-actions-bar {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.75rem;\n margin: -1.25rem -1.25rem 1rem -1.25rem;\n background: var(--md-surface-container-low);\n border-bottom: 1px solid var(--md-outline-variant);\n }\n\n .mobile-action-buttons {\n display: flex;\n gap: 0.5rem;\n }\n\n .mobile-action-buttons .mj-btn {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n }\n\n .mobile-action-buttons .btn-label {\n font-size: 0.8125rem;\n }\n}\n\n/* ==============================================\n Permissions Grid (Table)\n ============================================== */\n.permissions-grid {\n width: 100%;\n background: var(--md-surface-container-low);\n border-radius: var(--md-corner-medium);\n overflow: hidden;\n border: 1px solid var(--md-outline-variant);\n border-collapse: collapse;\n}\n\n/* Permissions Header */\n.permissions-header tr {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr 1fr;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n background: var(--md-surface-container-high);\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--md-on-surface);\n}\n\n@media (min-width: 768px) {\n .permissions-header tr {\n padding: 1rem 1.25rem;\n gap: 0.75rem;\n }\n}\n\n@media (max-width: 639px) {\n .permissions-header tr {\n grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr;\n padding: 0.625rem 0.75rem;\n font-size: 0.75rem;\n }\n}\n\n/* Permission Row */\n.permission-row {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr 1fr;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n border-bottom: 1px solid var(--md-outline-variant);\n transition: background-color 0.2s ease;\n}\n\n.permission-row:hover {\n background: var(--md-surface-container-lowest);\n}\n\n.permission-row:last-child {\n border-bottom: none;\n}\n\n@media (min-width: 768px) {\n .permission-row {\n padding: 1rem 1.25rem;\n gap: 0.75rem;\n }\n}\n\n@media (max-width: 639px) {\n .permission-row {\n grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr;\n padding: 0.625rem 0.75rem;\n }\n}\n\n.role-header,\n.permission-header {\n text-align: left;\n}\n\n.permission-header {\n text-align: center;\n}\n\n.role-name {\n font-weight: 500;\n color: var(--md-on-surface);\n font-size: 0.875rem;\n display: flex;\n align-items: center;\n}\n\n@media (max-width: 639px) {\n .role-name {\n font-size: 0.75rem;\n }\n}\n\n.permission-cell {\n text-align: center;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Success text - Tertiary Green */\n.text-success {\n color: var(--md-tertiary);\n}\n\n.text-muted {\n color: var(--md-outline);\n opacity: 0.6;\n}\n\n.no-permissions {\n color: var(--md-on-surface-variant);\n font-size: 0.875rem;\n margin: 0;\n padding: 1rem;\n background: var(--md-surface-container-low);\n border-radius: var(--md-corner-medium);\n text-align: center;\n}\n\n/* ==============================================\n Entities Grid (Grid View)\n ============================================== */\n.entities-grid {\n display: grid;\n gap: 0.75rem;\n grid-template-columns: 1fr;\n}\n\n@media (min-width: 640px) {\n .entities-grid {\n grid-template-columns: repeat(2, 1fr);\n gap: 1rem;\n }\n}\n\n@media (min-width: 768px) {\n .entities-grid {\n gap: 1.25rem;\n }\n}\n\n@media (min-width: 1024px) {\n .entities-grid {\n grid-template-columns: repeat(3, 1fr);\n gap: 1.5rem;\n }\n}\n\n/* Entity Grid Card */\n.entity-grid-card {\n background: var(--md-surface);\n border: 1px solid var(--md-outline-variant);\n border-radius: var(--md-corner-large);\n padding: 1.25rem;\n position: relative;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.entity-grid-card:hover {\n box-shadow: var(--md-elevation-2);\n border-color: var(--md-primary);\n}\n\n/* Public - Green border */\n.entity-grid-card.access-public {\n border-left: 4px solid var(--md-tertiary);\n}\n\n/* Restricted - Red border */\n.entity-grid-card.access-restricted {\n border-left: 4px solid var(--md-error);\n}\n\n/* Custom - Orange border */\n.entity-grid-card.access-custom {\n border-left: 4px solid var(--md-secondary);\n}\n\n@media (min-width: 768px) {\n .entity-grid-card {\n padding: 1.5rem;\n }\n}\n\n/* Grid Card Header */\n.grid-card-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 0.75rem;\n font-size: 1.5rem;\n color: var(--md-primary);\n}\n\n@media (min-width: 768px) {\n .grid-card-header {\n margin-bottom: 1rem;\n }\n}\n\n/* Grid Card Title */\n.grid-card-title {\n font-size: 1rem;\n font-weight: 600;\n color: var(--md-on-surface);\n margin: 0 0 0.5rem 0;\n}\n\n@media (min-width: 768px) {\n .grid-card-title {\n font-size: 1.125rem;\n }\n}\n\n/* Grid Card Description */\n.grid-card-description {\n font-size: 0.8125rem;\n color: var(--md-on-surface-variant);\n margin: 0 0 0.75rem 0;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n@media (min-width: 768px) {\n .grid-card-description {\n font-size: 0.875rem;\n margin: 0 0 1rem 0;\n }\n}\n\n/* Grid Card Footer */\n.grid-card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-size: 0.8125rem;\n}\n\n/* Access Label */\n.access-label {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n font-weight: 500;\n}\n\n.permission-count {\n color: var(--md-on-surface-variant);\n}\n\n/* ==============================================\n Empty State\n ============================================== */\n.empty-state {\n text-align: center;\n padding: 4rem 2rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n}\n\n@media (min-width: 768px) {\n .empty-state {\n padding: 5rem 2.5rem;\n }\n}\n\n.empty-state .empty-state-icon {\n font-size: 4rem;\n color: var(--md-outline-variant);\n margin-bottom: 0.5rem;\n}\n\n.empty-state .empty-text {\n font-size: 1.25rem;\n font-weight: 600;\n color: var(--md-on-surface);\n margin: 0;\n}\n\n.empty-state .empty-subtext {\n font-size: 1rem;\n color: var(--md-on-surface-variant);\n margin: 0;\n}\n\n/* ==============================================\n Error Container\n ============================================== */\n.error-container {\n text-align: center;\n padding: 4rem 2rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 200px;\n}\n\n@media (min-width: 768px) {\n .error-container {\n padding: 5rem 2.5rem;\n }\n}\n\n.error-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n}\n\n.error-container .error-icon {\n font-size: 3.5rem;\n color: var(--md-error);\n margin-bottom: 0.5rem;\n}\n\n.error-container .error-message {\n font-size: 1.0625rem;\n color: var(--md-on-surface);\n margin: 0 0 1.5rem 0;\n}\n\n/* ==============================================\n Animations\n ============================================== */\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes slideUp {\n from {\n transform: translateY(20px);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n max-height: 0;\n }\n to {\n opacity: 1;\n max-height: 800px;\n }\n}\n\n/* ==============================================\n Very Small Mobile (< 375px)\n ============================================== */\n@media (max-width: 374px) {\n .filters-section {\n padding: 0.5rem;\n margin-bottom: 0.375rem;\n }\n\n .filters-row {\n gap: 0.375rem;\n }\n\n .mobile-search-container {\n gap: 0.375rem;\n }\n\n .mj-search .mj-search-input {\n padding: 0.625rem 0.75rem 0.625rem 2.25rem;\n font-size: 0.875rem;\n }\n\n .mj-search .mj-search-icon {\n left: 0.75rem;\n font-size: 0.875rem;\n }\n\n .filter-button {\n padding: 0.625rem;\n min-width: 40px;\n flex-shrink: 0;\n }\n\n .filter-button span {\n display: none;\n }\n\n .filter-modal-header {\n padding: 1rem 1.25rem;\n }\n\n .filter-modal-body {\n padding: 1.25rem;\n }\n\n .filter-modal-footer {\n padding: 1rem 1.25rem;\n }\n}\n\n/* ==============================================\n Reduced Motion Support\n ============================================== */\n@media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n }\n}\n"] }]
832
- }], () => [], null); })();
839
+ }], () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }], null); })();
833
840
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EntityPermissionsComponent, { className: "EntityPermissionsComponent", filePath: "src/lib/entity-permissions/entity-permissions.component.ts", lineNumber: 49 }); })();
834
841
  //# sourceMappingURL=entity-permissions.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-permissions.component.js","sourceRoot":"","sources":["../../../src/lib/entity-permissions/entity-permissions.component.ts","../../../src/lib/entity-permissions/entity-permissions.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-permissions.component.js","sourceRoot":"","sources":["../../../src/lib/entity-permissions/entity-permissions.component.ts","../../../src/lib/entity-permissions/entity-permissions.component.html"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ export declare class PermissionDialogComponent implements OnInit, OnDestroy, OnC
23
23
  result: EventEmitter<PermissionDialogResult>;
24
24
  private fb;
25
25
  private cdr;
26
+ private ngZone;
26
27
  private metadata;
27
28
  permissionForm: FormGroup;
28
29
  isLoading: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"permission-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/entity-permissions/permission-dialog/permission-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAA8D,MAAM,eAAe,CAAC;AAEhL,OAAO,EAAiD,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE1F,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;;AAEjG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,qBAOa,yBAA0B,YAAW,MAAM,EAAE,SAAS,EAAE,SAAS;IACnE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAQ;IACzC,OAAO,UAAS;IACf,MAAM,uCAA8C;IAE9D,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,GAAG,CAA6B;IACxC,OAAO,CAAC,QAAQ,CAAkB;IAE3B,cAAc,EAAE,SAAS,CAAC;IAC1B,SAAS,UAAS;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC5B,eAAe,EAAE,eAAe,EAAE,CAAM;IACxC,cAAc,EAAE,UAAU,EAAE,CAAM;;IAMzC,QAAQ,IAAI,IAAI;IAIhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAkBzC,WAAW,IAAI,IAAI;IAInB,OAAO,CAAC,WAAW;IAMnB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM/B,IAAW,UAAU,IAAI,OAAO,CAE/B;IAEM,gBAAgB,CAAC,cAAc,EAAE,eAAe,GAAG,OAAO;IAIjE,OAAO,CAAC,kBAAkB;IA2Cb,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBxD,oBAAoB,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI;IAsBrD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBxB,kBAAkB;IAQzB,QAAQ,IAAI,IAAI;yCA1LZ,yBAAyB;2CAAzB,yBAAyB;CA6LrC"}
1
+ {"version":3,"file":"permission-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/entity-permissions/permission-dialog/permission-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAsE,MAAM,eAAe,CAAC;AAExL,OAAO,EAAiD,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE1F,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;;AAEjG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,qBAOa,yBAA0B,YAAW,MAAM,EAAE,SAAS,EAAE,SAAS;IACnE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAQ;IACzC,OAAO,UAAS;IACf,MAAM,uCAA8C;IAE9D,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,GAAG,CAA6B;IACxC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAkB;IAE3B,cAAc,EAAE,SAAS,CAAC;IAC1B,SAAS,UAAS;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC5B,eAAe,EAAE,eAAe,EAAE,CAAM;IACxC,cAAc,EAAE,UAAU,EAAE,CAAM;;IAMzC,QAAQ,IAAI,IAAI;IAIhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAkBzC,WAAW,IAAI,IAAI;IAInB,OAAO,CAAC,WAAW;IAMnB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM/B,IAAW,UAAU,IAAI,OAAO,CAE/B;IAEM,gBAAgB,CAAC,cAAc,EAAE,eAAe,GAAG,OAAO;IAIjE,OAAO,CAAC,kBAAkB;IA2Cb,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBxD,oBAAoB,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI;IAsBrD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YA8BxB,kBAAkB;IAQzB,QAAQ,IAAI,IAAI;yCAjMZ,yBAAyB;2CAAzB,yBAAyB;CAoMrC"}
@@ -1,4 +1,4 @@
1
- import { Component, Input, Output, EventEmitter, inject, HostListener, ChangeDetectorRef, ViewEncapsulation } from '@angular/core';
1
+ import { Component, Input, Output, EventEmitter, inject, HostListener, ChangeDetectorRef, NgZone, ViewEncapsulation } from '@angular/core';
2
2
  import { FormBuilder } from '@angular/forms';
3
3
  import { Metadata } from '@memberjunction/core';
4
4
  import * as i0 from "@angular/core";
@@ -300,6 +300,7 @@ export class PermissionDialogComponent {
300
300
  result = new EventEmitter();
301
301
  fb = inject(FormBuilder);
302
302
  cdr = inject(ChangeDetectorRef);
303
+ ngZone = inject(NgZone);
303
304
  metadata = new Metadata();
304
305
  permissionForm;
305
306
  isLoading = false;
@@ -438,10 +439,16 @@ export class PermissionDialogComponent {
438
439
  }
439
440
  catch (error) {
440
441
  console.error('Error saving permissions:', error);
441
- this.error = error.message || 'An unexpected error occurred while saving permissions';
442
+ this.ngZone.run(() => {
443
+ this.error = error instanceof Error ? error.message : 'An unexpected error occurred while saving permissions';
444
+ this.cdr.markForCheck();
445
+ });
442
446
  }
443
447
  finally {
444
- this.isLoading = false;
448
+ this.ngZone.run(() => {
449
+ this.isLoading = false;
450
+ this.cdr.markForCheck();
451
+ });
445
452
  }
446
453
  }
447
454
  async saveRolePermission(rolePermission) {