@memberjunction/ng-explorer-core 6.1.4 → 6.2.0-edge.1

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 (184) hide show
  1. package/dist/app-routing.module.d.ts +23 -1
  2. package/dist/app-routing.module.d.ts.map +1 -1
  3. package/dist/app-routing.module.js +73 -17
  4. package/dist/app-routing.module.js.map +1 -1
  5. package/dist/generated/lazy-feature-config.d.ts +1 -1
  6. package/dist/generated/lazy-feature-config.d.ts.map +1 -1
  7. package/dist/generated/lazy-feature-config.js +1 -8
  8. package/dist/generated/lazy-feature-config.js.map +1 -1
  9. package/dist/lib/command-palette/command-palette.component.d.ts +7 -1
  10. package/dist/lib/command-palette/command-palette.component.d.ts.map +1 -1
  11. package/dist/lib/command-palette/command-palette.component.js +28 -14
  12. package/dist/lib/command-palette/command-palette.component.js.map +1 -1
  13. package/dist/lib/conversation-feedback/conversation-feedback.d.ts +103 -13
  14. package/dist/lib/conversation-feedback/conversation-feedback.d.ts.map +1 -1
  15. package/dist/lib/conversation-feedback/conversation-feedback.js +219 -67
  16. package/dist/lib/conversation-feedback/conversation-feedback.js.map +1 -1
  17. package/dist/lib/dashboard-preferences-dialog/dashboard-preferences-dialog.component.d.ts +64 -10
  18. package/dist/lib/dashboard-preferences-dialog/dashboard-preferences-dialog.component.d.ts.map +1 -1
  19. package/dist/lib/dashboard-preferences-dialog/dashboard-preferences-dialog.component.js +172 -66
  20. package/dist/lib/dashboard-preferences-dialog/dashboard-preferences-dialog.component.js.map +1 -1
  21. package/dist/lib/generic/resource-container-component.d.ts +19 -5
  22. package/dist/lib/generic/resource-container-component.d.ts.map +1 -1
  23. package/dist/lib/generic/resource-container-component.js +43 -13
  24. package/dist/lib/generic/resource-container-component.js.map +1 -1
  25. package/dist/lib/guards/entities.guard.d.ts +4 -0
  26. package/dist/lib/guards/entities.guard.d.ts.map +1 -1
  27. package/dist/lib/guards/entities.guard.js +10 -2
  28. package/dist/lib/guards/entities.guard.js.map +1 -1
  29. package/dist/lib/identity-claims/claim-redeem.component.d.ts +4 -0
  30. package/dist/lib/identity-claims/claim-redeem.component.d.ts.map +1 -1
  31. package/dist/lib/identity-claims/claim-redeem.component.js +10 -2
  32. package/dist/lib/identity-claims/claim-redeem.component.js.map +1 -1
  33. package/dist/lib/oauth/oauth-callback.component.d.ts +4 -0
  34. package/dist/lib/oauth/oauth-callback.component.d.ts.map +1 -1
  35. package/dist/lib/oauth/oauth-callback.component.js +10 -2
  36. package/dist/lib/oauth/oauth-callback.component.js.map +1 -1
  37. package/dist/lib/profile/profile-dialog.component.d.ts.map +1 -1
  38. package/dist/lib/profile/profile-dialog.component.js +194 -191
  39. package/dist/lib/profile/profile-dialog.component.js.map +1 -1
  40. package/dist/lib/resource-wrappers/artifact-resource.component.d.ts +20 -2
  41. package/dist/lib/resource-wrappers/artifact-resource.component.d.ts.map +1 -1
  42. package/dist/lib/resource-wrappers/artifact-resource.component.js +33 -9
  43. package/dist/lib/resource-wrappers/artifact-resource.component.js.map +1 -1
  44. package/dist/lib/resource-wrappers/chat-collections-resource.component.d.ts +80 -10
  45. package/dist/lib/resource-wrappers/chat-collections-resource.component.d.ts.map +1 -1
  46. package/dist/lib/resource-wrappers/chat-collections-resource.component.js +168 -56
  47. package/dist/lib/resource-wrappers/chat-collections-resource.component.js.map +1 -1
  48. package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts +186 -23
  49. package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts.map +1 -1
  50. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js +500 -177
  51. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js.map +1 -1
  52. package/dist/lib/resource-wrappers/chat-deeplink-params.d.ts +2 -0
  53. package/dist/lib/resource-wrappers/chat-deeplink-params.d.ts.map +1 -1
  54. package/dist/lib/resource-wrappers/chat-deeplink-params.js +5 -1
  55. package/dist/lib/resource-wrappers/chat-deeplink-params.js.map +1 -1
  56. package/dist/lib/resource-wrappers/chat-search-routing.d.ts +25 -0
  57. package/dist/lib/resource-wrappers/chat-search-routing.d.ts.map +1 -0
  58. package/dist/lib/resource-wrappers/chat-search-routing.js +24 -0
  59. package/dist/lib/resource-wrappers/chat-search-routing.js.map +1 -0
  60. package/dist/lib/resource-wrappers/chat-tasks-resource.component.d.ts +14 -2
  61. package/dist/lib/resource-wrappers/chat-tasks-resource.component.d.ts.map +1 -1
  62. package/dist/lib/resource-wrappers/chat-tasks-resource.component.js +32 -8
  63. package/dist/lib/resource-wrappers/chat-tasks-resource.component.js.map +1 -1
  64. package/dist/lib/resource-wrappers/dashboard-resource.component.d.ts +54 -8
  65. package/dist/lib/resource-wrappers/dashboard-resource.component.d.ts.map +1 -1
  66. package/dist/lib/resource-wrappers/dashboard-resource.component.js +138 -46
  67. package/dist/lib/resource-wrappers/dashboard-resource.component.js.map +1 -1
  68. package/dist/lib/resource-wrappers/livekit-room-resource.component.d.ts +223 -30
  69. package/dist/lib/resource-wrappers/livekit-room-resource.component.d.ts.map +1 -1
  70. package/dist/lib/resource-wrappers/livekit-room-resource.component.js +438 -118
  71. package/dist/lib/resource-wrappers/livekit-room-resource.component.js.map +1 -1
  72. package/dist/lib/resource-wrappers/search-results-resource.component.d.ts +7 -3
  73. package/dist/lib/resource-wrappers/search-results-resource.component.d.ts.map +1 -1
  74. package/dist/lib/resource-wrappers/search-results-resource.component.js +23 -15
  75. package/dist/lib/resource-wrappers/search-results-resource.component.js.map +1 -1
  76. package/dist/lib/resource-wrappers/view-resource.component.d.ts +68 -10
  77. package/dist/lib/resource-wrappers/view-resource.component.d.ts.map +1 -1
  78. package/dist/lib/resource-wrappers/view-resource.component.js +178 -62
  79. package/dist/lib/resource-wrappers/view-resource.component.js.map +1 -1
  80. package/dist/lib/services/startup-validation.service.d.ts +4 -0
  81. package/dist/lib/services/startup-validation.service.d.ts.map +1 -1
  82. package/dist/lib/services/startup-validation.service.js +10 -2
  83. package/dist/lib/services/startup-validation.service.js.map +1 -1
  84. package/dist/lib/services/system-validation.service.d.ts +13 -1
  85. package/dist/lib/services/system-validation.service.d.ts.map +1 -1
  86. package/dist/lib/services/system-validation.service.js +29 -5
  87. package/dist/lib/services/system-validation.service.js.map +1 -1
  88. package/dist/lib/shell/components/dialogs/app-access-dialog.component.d.ts +54 -4
  89. package/dist/lib/shell/components/dialogs/app-access-dialog.component.d.ts.map +1 -1
  90. package/dist/lib/shell/components/dialogs/app-access-dialog.component.js +130 -40
  91. package/dist/lib/shell/components/dialogs/app-access-dialog.component.js.map +1 -1
  92. package/dist/lib/shell/components/header/app-nav.component.d.ts +29 -1
  93. package/dist/lib/shell/components/header/app-nav.component.d.ts.map +1 -1
  94. package/dist/lib/shell/components/header/app-nav.component.js +56 -12
  95. package/dist/lib/shell/components/header/app-nav.component.js.map +1 -1
  96. package/dist/lib/shell/components/header/app-switcher.component.d.ts +33 -5
  97. package/dist/lib/shell/components/header/app-switcher.component.d.ts.map +1 -1
  98. package/dist/lib/shell/components/header/app-switcher.component.js +85 -29
  99. package/dist/lib/shell/components/header/app-switcher.component.js.map +1 -1
  100. package/dist/lib/shell/components/record-open/record-origin-crumb.component.d.ts +7 -1
  101. package/dist/lib/shell/components/record-open/record-origin-crumb.component.d.ts.map +1 -1
  102. package/dist/lib/shell/components/record-open/record-origin-crumb.component.js +63 -9
  103. package/dist/lib/shell/components/record-open/record-origin-crumb.component.js.map +1 -1
  104. package/dist/lib/shell/components/tabs/component-cache-manager.d.ts +30 -1
  105. package/dist/lib/shell/components/tabs/component-cache-manager.d.ts.map +1 -1
  106. package/dist/lib/shell/components/tabs/component-cache-manager.js +63 -15
  107. package/dist/lib/shell/components/tabs/component-cache-manager.js.map +1 -1
  108. package/dist/lib/shell/components/tabs/tab-container.component.d.ts +99 -9
  109. package/dist/lib/shell/components/tabs/tab-container.component.d.ts.map +1 -1
  110. package/dist/lib/shell/components/tabs/tab-container.component.js +310 -110
  111. package/dist/lib/shell/components/tabs/tab-container.component.js.map +1 -1
  112. package/dist/lib/shell/loading-themes.d.ts +16 -12
  113. package/dist/lib/shell/loading-themes.d.ts.map +1 -1
  114. package/dist/lib/shell/loading-themes.js +145 -137
  115. package/dist/lib/shell/loading-themes.js.map +1 -1
  116. package/dist/lib/shell/readiness-beacon.d.ts +24 -0
  117. package/dist/lib/shell/readiness-beacon.d.ts.map +1 -0
  118. package/dist/lib/shell/readiness-beacon.js +40 -0
  119. package/dist/lib/shell/readiness-beacon.js.map +1 -0
  120. package/dist/lib/shell/services/about-dialog.service.d.ts +6 -0
  121. package/dist/lib/shell/services/about-dialog.service.d.ts.map +1 -1
  122. package/dist/lib/shell/services/about-dialog.service.js +16 -4
  123. package/dist/lib/shell/services/about-dialog.service.js.map +1 -1
  124. package/dist/lib/shell/services/profile-dialog.service.d.ts +6 -0
  125. package/dist/lib/shell/services/profile-dialog.service.d.ts.map +1 -1
  126. package/dist/lib/shell/services/profile-dialog.service.js +16 -4
  127. package/dist/lib/shell/services/profile-dialog.service.js.map +1 -1
  128. package/dist/lib/shell/services/user-sharing-center-dialog.service.d.ts +6 -0
  129. package/dist/lib/shell/services/user-sharing-center-dialog.service.d.ts.map +1 -1
  130. package/dist/lib/shell/services/user-sharing-center-dialog.service.js +15 -3
  131. package/dist/lib/shell/services/user-sharing-center-dialog.service.js.map +1 -1
  132. package/dist/lib/shell/shell.component.d.ts +275 -40
  133. package/dist/lib/shell/shell.component.d.ts.map +1 -1
  134. package/dist/lib/shell/shell.component.js +704 -290
  135. package/dist/lib/shell/shell.component.js.map +1 -1
  136. package/dist/lib/single-dashboard/Components/add-item/add-item.component.d.ts +64 -8
  137. package/dist/lib/single-dashboard/Components/add-item/add-item.component.d.ts.map +1 -1
  138. package/dist/lib/single-dashboard/Components/add-item/add-item.component.js +129 -37
  139. package/dist/lib/single-dashboard/Components/add-item/add-item.component.js.map +1 -1
  140. package/dist/lib/single-dashboard/Components/delete-item/delete-item.component.d.ts +26 -2
  141. package/dist/lib/single-dashboard/Components/delete-item/delete-item.component.d.ts.map +1 -1
  142. package/dist/lib/single-dashboard/Components/delete-item/delete-item.component.js +48 -10
  143. package/dist/lib/single-dashboard/Components/delete-item/delete-item.component.js.map +1 -1
  144. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.d.ts +84 -6
  145. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.d.ts.map +1 -1
  146. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.js +133 -29
  147. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.js.map +1 -1
  148. package/dist/lib/single-dashboard/single-dashboard.component.d.ts +173 -23
  149. package/dist/lib/single-dashboard/single-dashboard.component.d.ts.map +1 -1
  150. package/dist/lib/single-dashboard/single-dashboard.component.js +383 -109
  151. package/dist/lib/single-dashboard/single-dashboard.component.js.map +1 -1
  152. package/dist/lib/single-list-detail/single-list-detail.component.d.ts +383 -55
  153. package/dist/lib/single-list-detail/single-list-detail.component.d.ts.map +1 -1
  154. package/dist/lib/single-list-detail/single-list-detail.component.js +962 -326
  155. package/dist/lib/single-list-detail/single-list-detail.component.js.map +1 -1
  156. package/dist/lib/single-query/single-query.component.d.ts +22 -2
  157. package/dist/lib/single-query/single-query.component.d.ts.map +1 -1
  158. package/dist/lib/single-query/single-query.component.js +40 -10
  159. package/dist/lib/single-query/single-query.component.js.map +1 -1
  160. package/dist/lib/single-record/single-record.component.d.ts +41 -3
  161. package/dist/lib/single-record/single-record.component.d.ts.map +1 -1
  162. package/dist/lib/single-record/single-record.component.js +71 -11
  163. package/dist/lib/single-record/single-record.component.js.map +1 -1
  164. package/dist/lib/single-search-result/single-search-result.component.d.ts +23 -3
  165. package/dist/lib/single-search-result/single-search-result.component.d.ts.map +1 -1
  166. package/dist/lib/single-search-result/single-search-result.component.js +42 -12
  167. package/dist/lib/single-search-result/single-search-result.component.js.map +1 -1
  168. package/dist/lib/system-validation/system-validation-banner.component.d.ts +12 -2
  169. package/dist/lib/system-validation/system-validation-banner.component.d.ts.map +1 -1
  170. package/dist/lib/system-validation/system-validation-banner.component.js +25 -5
  171. package/dist/lib/system-validation/system-validation-banner.component.js.map +1 -1
  172. package/dist/lib/user-menu/user-menu.types.d.ts +4 -0
  173. package/dist/lib/user-menu/user-menu.types.d.ts.map +1 -1
  174. package/dist/lib/user-menu/user-menu.types.js +10 -2
  175. package/dist/lib/user-menu/user-menu.types.js.map +1 -1
  176. package/dist/lib/user-notifications/user-notifications.component.d.ts +59 -7
  177. package/dist/lib/user-notifications/user-notifications.component.d.ts.map +1 -1
  178. package/dist/lib/user-notifications/user-notifications.component.js +151 -47
  179. package/dist/lib/user-notifications/user-notifications.component.js.map +1 -1
  180. package/dist/lib/user-profile/user-profile.component.d.ts +3 -2
  181. package/dist/lib/user-profile/user-profile.component.d.ts.map +1 -1
  182. package/dist/lib/user-profile/user-profile.component.js +5 -4
  183. package/dist/lib/user-profile/user-profile.component.js.map +1 -1
  184. package/package.json +52 -52
@@ -16,7 +16,7 @@ const _forTrack1 = ($index, $item) => $item.key;
16
16
  const _forTrack2 = ($index, $item) => $item.id;
17
17
  function ProfileDialogComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
18
18
  const _r1 = i0.ɵɵgetCurrentView();
19
- i0.ɵɵelementStart(0, "img", 44);
19
+ i0.ɵɵelementStart(0, "img", 45);
20
20
  i0.ɵɵlistener("error", function ProfileDialogComponent_Conditional_8_Template_img_error_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.OnAvatarLoadError()); });
21
21
  i0.ɵɵelementEnd();
22
22
  } if (rf & 2) {
@@ -48,8 +48,8 @@ function ProfileDialogComponent_Conditional_18_For_2_Conditional_1_Template(rf,
48
48
  i0.ɵɵclassMap(chip_r3.icon);
49
49
  } }
50
50
  function ProfileDialogComponent_Conditional_18_For_2_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelementStart(0, "span", 46);
52
- i0.ɵɵconditionalCreate(1, ProfileDialogComponent_Conditional_18_For_2_Conditional_1_Template, 1, 2, "i", 47);
51
+ i0.ɵɵelementStart(0, "span", 47);
52
+ i0.ɵɵconditionalCreate(1, ProfileDialogComponent_Conditional_18_For_2_Conditional_1_Template, 1, 2, "i", 48);
53
53
  i0.ɵɵtext(2);
54
54
  i0.ɵɵelementEnd();
55
55
  } if (rf & 2) {
@@ -62,15 +62,15 @@ function ProfileDialogComponent_Conditional_18_For_2_Template(rf, ctx) { if (rf
62
62
  } }
63
63
  function ProfileDialogComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
64
64
  i0.ɵɵelementStart(0, "div", 15);
65
- i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_18_For_2_Template, 3, 4, "span", 45, _forTrack0);
65
+ i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_18_For_2_Template, 3, 4, "span", 46, _forTrack0);
66
66
  i0.ɵɵelementEnd();
67
67
  } if (rf & 2) {
68
68
  const ctx_r1 = i0.ɵɵnextContext();
69
69
  i0.ɵɵadvance();
70
70
  i0.ɵɵrepeater(ctx_r1.RoleChips);
71
71
  } }
72
- function ProfileDialogComponent_Conditional_28_Template(rf, ctx) { if (rf & 1) {
73
- i0.ɵɵelementStart(0, "span", 23);
72
+ function ProfileDialogComponent_Conditional_29_Template(rf, ctx) { if (rf & 1) {
73
+ i0.ɵɵelementStart(0, "span", 24);
74
74
  i0.ɵɵtext(1);
75
75
  i0.ɵɵelementEnd();
76
76
  } if (rf & 2) {
@@ -78,34 +78,34 @@ function ProfileDialogComponent_Conditional_28_Template(rf, ctx) { if (rf & 1) {
78
78
  i0.ɵɵadvance();
79
79
  i0.ɵɵtextInterpolate1(" \u00B7 ", ctx_r1.MemberSince);
80
80
  } }
81
- function ProfileDialogComponent_Conditional_38_Conditional_13_Template(rf, ctx) { if (rf & 1) {
82
- i0.ɵɵelement(0, "i", 54);
81
+ function ProfileDialogComponent_Conditional_39_Conditional_13_Template(rf, ctx) { if (rf & 1) {
82
+ i0.ɵɵelement(0, "i", 55);
83
83
  } }
84
- function ProfileDialogComponent_Conditional_38_Conditional_14_Template(rf, ctx) { if (rf & 1) {
85
- i0.ɵɵelementStart(0, "span", 56);
86
- i0.ɵɵelement(1, "span", 57);
84
+ function ProfileDialogComponent_Conditional_39_Conditional_14_Template(rf, ctx) { if (rf & 1) {
85
+ i0.ɵɵelementStart(0, "span", 57);
86
+ i0.ɵɵelement(1, "span", 58);
87
87
  i0.ɵɵelementEnd();
88
88
  } if (rf & 2) {
89
89
  const ctx_r1 = i0.ɵɵnextContext(2);
90
90
  i0.ɵɵclassProp("mj-profile__switch--on", ctx_r1.OmnibarEnabled);
91
91
  } }
92
- function ProfileDialogComponent_Conditional_38_Template(rf, ctx) { if (rf & 1) {
92
+ function ProfileDialogComponent_Conditional_39_Template(rf, ctx) { if (rf & 1) {
93
93
  const _r4 = i0.ɵɵgetCurrentView();
94
- i0.ɵɵelementStart(0, "div", 27)(1, "div", 28)(2, "h4");
94
+ i0.ɵɵelementStart(0, "div", 28)(1, "div", 29)(2, "h4");
95
95
  i0.ɵɵtext(3, "Command Palette");
96
96
  i0.ɵɵelementEnd()();
97
- i0.ɵɵelementStart(4, "div", 31)(5, "button", 48);
98
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_38_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.ToggleOmnibar()); });
99
- i0.ɵɵelementStart(6, "div", 49);
100
- i0.ɵɵelement(7, "i", 50);
97
+ i0.ɵɵelementStart(4, "div", 32)(5, "button", 49);
98
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_39_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.ToggleOmnibar()); });
99
+ i0.ɵɵelementStart(6, "div", 50);
100
+ i0.ɵɵelement(7, "i", 51);
101
101
  i0.ɵɵelementEnd();
102
- i0.ɵɵelementStart(8, "div", 51);
102
+ i0.ɵɵelementStart(8, "div", 52);
103
103
  i0.ɵɵtext(9, " Unified command palette ");
104
- i0.ɵɵelementStart(10, "div", 52);
104
+ i0.ɵɵelementStart(10, "div", 53);
105
105
  i0.ɵɵtext(11);
106
106
  i0.ɵɵelementEnd()();
107
- i0.ɵɵelementStart(12, "div", 53);
108
- i0.ɵɵconditionalCreate(13, ProfileDialogComponent_Conditional_38_Conditional_13_Template, 1, 0, "i", 54)(14, ProfileDialogComponent_Conditional_38_Conditional_14_Template, 2, 2, "span", 55);
107
+ i0.ɵɵelementStart(12, "div", 54);
108
+ i0.ɵɵconditionalCreate(13, ProfileDialogComponent_Conditional_39_Conditional_13_Template, 1, 0, "i", 55)(14, ProfileDialogComponent_Conditional_39_Conditional_14_Template, 2, 2, "span", 56);
109
109
  i0.ɵɵelementEnd()()()();
110
110
  } if (rf & 2) {
111
111
  const ctx_r1 = i0.ɵɵnextContext();
@@ -117,8 +117,8 @@ function ProfileDialogComponent_Conditional_38_Template(rf, ctx) { if (rf & 1) {
117
117
  i0.ɵɵadvance(2);
118
118
  i0.ɵɵconditional(ctx_r1.SavingOmnibar ? 13 : 14);
119
119
  } }
120
- function ProfileDialogComponent_Conditional_43_Template(rf, ctx) { if (rf & 1) {
121
- i0.ɵɵelementStart(0, "span", 29);
120
+ function ProfileDialogComponent_Conditional_44_Template(rf, ctx) { if (rf & 1) {
121
+ i0.ɵɵelementStart(0, "span", 30);
122
122
  i0.ɵɵtext(1);
123
123
  i0.ɵɵelementEnd();
124
124
  } if (rf & 2) {
@@ -126,35 +126,35 @@ function ProfileDialogComponent_Conditional_43_Template(rf, ctx) { if (rf & 1) {
126
126
  i0.ɵɵadvance();
127
127
  i0.ɵɵtextInterpolate1("", ctx_r1.UnreadCount, " unread");
128
128
  } }
129
- function ProfileDialogComponent_Conditional_44_Template(rf, ctx) { if (rf & 1) {
130
- i0.ɵɵelementStart(0, "div", 30);
131
- i0.ɵɵelement(1, "i", 54);
129
+ function ProfileDialogComponent_Conditional_45_Template(rf, ctx) { if (rf & 1) {
130
+ i0.ɵɵelementStart(0, "div", 31);
131
+ i0.ɵɵelement(1, "i", 55);
132
132
  i0.ɵɵtext(2, " Loading\u2026 ");
133
133
  i0.ɵɵelementEnd();
134
134
  } }
135
- function ProfileDialogComponent_Conditional_45_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
136
- i0.ɵɵelement(0, "i", 54);
135
+ function ProfileDialogComponent_Conditional_46_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
136
+ i0.ɵɵelement(0, "i", 55);
137
137
  } }
138
- function ProfileDialogComponent_Conditional_45_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
139
- i0.ɵɵelementStart(0, "span", 56);
140
- i0.ɵɵelement(1, "span", 57);
138
+ function ProfileDialogComponent_Conditional_46_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
139
+ i0.ɵɵelementStart(0, "span", 57);
140
+ i0.ɵɵelement(1, "span", 58);
141
141
  i0.ɵɵelementEnd();
142
142
  } if (rf & 2) {
143
143
  const ch_r6 = i0.ɵɵnextContext().$implicit;
144
144
  i0.ɵɵclassProp("mj-profile__switch--on", ch_r6.enabled);
145
145
  } }
146
- function ProfileDialogComponent_Conditional_45_For_2_Template(rf, ctx) { if (rf & 1) {
146
+ function ProfileDialogComponent_Conditional_46_For_2_Template(rf, ctx) { if (rf & 1) {
147
147
  const _r5 = i0.ɵɵgetCurrentView();
148
- i0.ɵɵelementStart(0, "button", 59);
149
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_45_For_2_Template_button_click_0_listener() { const ch_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.ToggleChannel(ch_r6)); });
150
- i0.ɵɵelementStart(1, "div", 49);
148
+ i0.ɵɵelementStart(0, "button", 60);
149
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_46_For_2_Template_button_click_0_listener() { const ch_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.ToggleChannel(ch_r6)); });
150
+ i0.ɵɵelementStart(1, "div", 50);
151
151
  i0.ɵɵelement(2, "i");
152
152
  i0.ɵɵelementEnd();
153
- i0.ɵɵelementStart(3, "div", 51);
153
+ i0.ɵɵelementStart(3, "div", 52);
154
154
  i0.ɵɵtext(4);
155
155
  i0.ɵɵelementEnd();
156
- i0.ɵɵelementStart(5, "div", 53);
157
- i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_45_For_2_Conditional_6_Template, 1, 0, "i", 54)(7, ProfileDialogComponent_Conditional_45_For_2_Conditional_7_Template, 2, 2, "span", 55);
156
+ i0.ɵɵelementStart(5, "div", 54);
157
+ i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_46_For_2_Conditional_6_Template, 1, 0, "i", 55)(7, ProfileDialogComponent_Conditional_46_For_2_Conditional_7_Template, 2, 2, "span", 56);
158
158
  i0.ɵɵelementEnd()();
159
159
  } if (rf & 2) {
160
160
  const ch_r6 = ctx.$implicit;
@@ -167,20 +167,20 @@ function ProfileDialogComponent_Conditional_45_For_2_Template(rf, ctx) { if (rf
167
167
  i0.ɵɵadvance(2);
168
168
  i0.ɵɵconditional(ch_r6.saving ? 6 : 7);
169
169
  } }
170
- function ProfileDialogComponent_Conditional_45_Template(rf, ctx) { if (rf & 1) {
171
- i0.ɵɵelementStart(0, "div", 31);
172
- i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_45_For_2_Template, 8, 7, "button", 58, _forTrack1);
170
+ function ProfileDialogComponent_Conditional_46_Template(rf, ctx) { if (rf & 1) {
171
+ i0.ɵɵelementStart(0, "div", 32);
172
+ i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_46_For_2_Template, 8, 7, "button", 59, _forTrack1);
173
173
  i0.ɵɵelementEnd();
174
174
  } if (rf & 2) {
175
175
  const ctx_r1 = i0.ɵɵnextContext();
176
176
  i0.ɵɵadvance();
177
177
  i0.ɵɵrepeater(ctx_r1.Channels);
178
178
  } }
179
- function ProfileDialogComponent_Conditional_60_Template(rf, ctx) { if (rf & 1) {
179
+ function ProfileDialogComponent_Conditional_61_Template(rf, ctx) { if (rf & 1) {
180
180
  i0.ɵɵelement(0, "mj-user-profile-settings");
181
181
  } }
182
- function ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
183
- i0.ɵɵelementStart(0, "div", 65);
182
+ function ProfileDialogComponent_Conditional_62_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
183
+ i0.ɵɵelementStart(0, "div", 66);
184
184
  i0.ɵɵtext(1);
185
185
  i0.ɵɵelementEnd();
186
186
  } if (rf & 2) {
@@ -188,25 +188,25 @@ function ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template(rf,
188
188
  i0.ɵɵadvance();
189
189
  i0.ɵɵtextInterpolate(theme_r8.description);
190
190
  } }
191
- function ProfileDialogComponent_Conditional_61_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
192
- i0.ɵɵelement(0, "i", 66);
193
- } }
194
- function ProfileDialogComponent_Conditional_61_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
191
+ function ProfileDialogComponent_Conditional_62_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
195
192
  i0.ɵɵelement(0, "i", 67);
196
193
  } }
197
- function ProfileDialogComponent_Conditional_61_For_2_Template(rf, ctx) { if (rf & 1) {
194
+ function ProfileDialogComponent_Conditional_62_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
195
+ i0.ɵɵelement(0, "i", 68);
196
+ } }
197
+ function ProfileDialogComponent_Conditional_62_For_2_Template(rf, ctx) { if (rf & 1) {
198
198
  const _r7 = i0.ɵɵgetCurrentView();
199
- i0.ɵɵelementStart(0, "button", 61);
200
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_61_For_2_Template_button_click_0_listener() { const theme_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.SelectTheme(theme_r8.id)); });
201
- i0.ɵɵelementStart(1, "div", 62);
199
+ i0.ɵɵelementStart(0, "button", 62);
200
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_62_For_2_Template_button_click_0_listener() { const theme_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.SelectTheme(theme_r8.id)); });
201
+ i0.ɵɵelementStart(1, "div", 63);
202
202
  i0.ɵɵelement(2, "i");
203
203
  i0.ɵɵelementEnd();
204
- i0.ɵɵelementStart(3, "div", 63)(4, "div", 64);
204
+ i0.ɵɵelementStart(3, "div", 64)(4, "div", 65);
205
205
  i0.ɵɵtext(5);
206
206
  i0.ɵɵelementEnd();
207
- i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template, 2, 1, "div", 65);
207
+ i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_62_For_2_Conditional_6_Template, 2, 1, "div", 66);
208
208
  i0.ɵɵelementEnd();
209
- i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_61_For_2_Conditional_7_Template, 1, 0, "i", 66)(8, ProfileDialogComponent_Conditional_61_For_2_Conditional_8_Template, 1, 0, "i", 67);
209
+ i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_62_For_2_Conditional_7_Template, 1, 0, "i", 67)(8, ProfileDialogComponent_Conditional_62_For_2_Conditional_8_Template, 1, 0, "i", 68);
210
210
  i0.ɵɵelementEnd();
211
211
  } if (rf & 2) {
212
212
  const theme_r8 = ctx.$implicit;
@@ -224,26 +224,26 @@ function ProfileDialogComponent_Conditional_61_For_2_Template(rf, ctx) { if (rf
224
224
  i0.ɵɵadvance();
225
225
  i0.ɵɵconditional(ctx_r1.SavingTheme === theme_r8.id ? 7 : theme_r8.id === ctx_r1.ThemePreference ? 8 : -1);
226
226
  } }
227
- function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_For_3_Template(rf, ctx) { if (rf & 1) {
227
+ function ProfileDialogComponent_Conditional_62_Conditional_3_For_3_For_3_Template(rf, ctx) { if (rf & 1) {
228
228
  i0.ɵɵelement(0, "i");
229
229
  } if (rf & 2) {
230
230
  const c_r11 = ctx.$implicit;
231
231
  i0.ɵɵstyleProp("background", c_r11);
232
232
  } }
233
- function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Conditional_7_Template(rf, ctx) { if (rf & 1) {
234
- i0.ɵɵelement(0, "i", 67);
233
+ function ProfileDialogComponent_Conditional_62_Conditional_3_For_3_Conditional_7_Template(rf, ctx) { if (rf & 1) {
234
+ i0.ɵɵelement(0, "i", 68);
235
235
  } }
236
- function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template(rf, ctx) { if (rf & 1) {
236
+ function ProfileDialogComponent_Conditional_62_Conditional_3_For_3_Template(rf, ctx) { if (rf & 1) {
237
237
  const _r9 = i0.ɵɵgetCurrentView();
238
- i0.ɵɵelementStart(0, "button", 70);
239
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template_button_click_0_listener() { const t_r10 = i0.ɵɵrestoreView(_r9).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.ApplyStarredTheme(t_r10)); });
240
- i0.ɵɵelementStart(1, "div", 71);
241
- i0.ɵɵrepeaterCreate(2, ProfileDialogComponent_Conditional_61_Conditional_3_For_3_For_3_Template, 1, 2, "i", 72, i0.ɵɵrepeaterTrackByIndex);
238
+ i0.ɵɵelementStart(0, "button", 71);
239
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_62_Conditional_3_For_3_Template_button_click_0_listener() { const t_r10 = i0.ɵɵrestoreView(_r9).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.ApplyStarredTheme(t_r10)); });
240
+ i0.ɵɵelementStart(1, "div", 72);
241
+ i0.ɵɵrepeaterCreate(2, ProfileDialogComponent_Conditional_62_Conditional_3_For_3_For_3_Template, 1, 2, "i", 73, i0.ɵɵrepeaterTrackByIndex);
242
242
  i0.ɵɵelementEnd();
243
- i0.ɵɵelementStart(4, "div", 63)(5, "div", 64);
243
+ i0.ɵɵelementStart(4, "div", 64)(5, "div", 65);
244
244
  i0.ɵɵtext(6);
245
245
  i0.ɵɵelementEnd()();
246
- i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Conditional_7_Template, 1, 0, "i", 67);
246
+ i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_62_Conditional_3_For_3_Conditional_7_Template, 1, 0, "i", 68);
247
247
  i0.ɵɵelementEnd();
248
248
  } if (rf & 2) {
249
249
  const t_r10 = ctx.$implicit;
@@ -256,20 +256,20 @@ function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template(rf,
256
256
  i0.ɵɵadvance();
257
257
  i0.ɵɵconditional(ctx_r1.IsAppliedBrand(t_r10.id) ? 7 : -1);
258
258
  } }
259
- function ProfileDialogComponent_Conditional_61_Conditional_3_Template(rf, ctx) { if (rf & 1) {
260
- i0.ɵɵelementStart(0, "div", 68);
259
+ function ProfileDialogComponent_Conditional_62_Conditional_3_Template(rf, ctx) { if (rf & 1) {
260
+ i0.ɵɵelementStart(0, "div", 69);
261
261
  i0.ɵɵtext(1, "Brand themes");
262
262
  i0.ɵɵelementEnd();
263
- i0.ɵɵrepeaterCreate(2, ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template, 8, 4, "button", 69, _forTrack2);
263
+ i0.ɵɵrepeaterCreate(2, ProfileDialogComponent_Conditional_62_Conditional_3_For_3_Template, 8, 4, "button", 70, _forTrack2);
264
264
  } if (rf & 2) {
265
265
  const ctx_r1 = i0.ɵɵnextContext(2);
266
266
  i0.ɵɵadvance(2);
267
267
  i0.ɵɵrepeater(ctx_r1.StarredThemes);
268
268
  } }
269
- function ProfileDialogComponent_Conditional_61_Template(rf, ctx) { if (rf & 1) {
270
- i0.ɵɵelementStart(0, "div", 43);
271
- i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_61_For_2_Template, 9, 12, "button", 60, _forTrack2);
272
- i0.ɵɵconditionalCreate(3, ProfileDialogComponent_Conditional_61_Conditional_3_Template, 4, 0);
269
+ function ProfileDialogComponent_Conditional_62_Template(rf, ctx) { if (rf & 1) {
270
+ i0.ɵɵelementStart(0, "div", 44);
271
+ i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_62_For_2_Template, 9, 12, "button", 61, _forTrack2);
272
+ i0.ɵɵconditionalCreate(3, ProfileDialogComponent_Conditional_62_Conditional_3_Template, 4, 0);
273
273
  i0.ɵɵelementEnd();
274
274
  } if (rf & 2) {
275
275
  const ctx_r1 = i0.ɵɵnextContext();
@@ -645,7 +645,7 @@ export class ProfileDialogComponent extends BaseAngularComponent {
645
645
  return preference === 'system' ? `${themeName} · System` : themeName;
646
646
  }
647
647
  static ɵfac = /*@__PURE__*/ (() => { let ɵProfileDialogComponent_BaseFactory; return function ProfileDialogComponent_Factory(__ngFactoryType__) { return (ɵProfileDialogComponent_BaseFactory || (ɵProfileDialogComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ProfileDialogComponent)))(__ngFactoryType__ || ProfileDialogComponent); }; })();
648
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileDialogComponent, selectors: [["mj-profile-dialog"]], inputs: { AvatarUrl: "AvatarUrl", AvatarIconClass: "AvatarIconClass" }, outputs: { CloseRequested: "CloseRequested" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 62, vars: 17, consts: [["role", "document", 1, "mj-profile"], ["type", "button", "aria-label", "Close", 1, "mj-profile__close", 3, "click"], [1, "fa-solid", "fa-xmark"], [1, "mj-profile__main"], [1, "mj-profile__hero"], [1, "mj-profile__hero-title"], [1, "mj-profile__avatar-zone"], ["alt", "", 1, "mj-profile__avatar", "mj-profile__avatar--img", 3, "src"], [1, "mj-profile__avatar", "mj-profile__avatar--icon"], [1, "mj-profile__avatar"], ["type", "button", "title", "Change photo", 1, "mj-profile__avatar-edit", 3, "click"], [1, "fa-solid", "fa-camera"], [1, "mj-profile__identity"], [1, "mj-profile__name"], [1, "mj-profile__email"], [1, "mj-profile__chips"], [1, "mj-profile__field-list"], [1, "mj-profile__field"], [1, "mj-profile__field-icon"], [1, "fa-solid", "fa-id-badge"], [1, "mj-profile__field-body"], [1, "mj-profile__field-label"], [1, "mj-profile__field-value"], [1, "mj-profile__field-muted"], ["type", "button", 1, "mj-profile__field", "mj-profile__field--button", 3, "click"], [1, "fa-solid", "fa-palette"], [1, "fa-solid", "fa-chevron-right", "mj-profile__field-chev"], [1, "mj-profile__section"], [1, "mj-profile__section-head"], [1, "mj-profile__unread"], [1, "mj-profile__channels-loading"], [1, "mj-profile__channels"], [1, "mj-profile__footer"], ["type", "button", 1, "mj-profile__btn", "mj-profile__btn--danger", 3, "click"], [1, "fa-solid", "fa-arrow-right-from-bracket"], [1, "mj-profile__spacer"], ["type", "button", 1, "mj-profile__btn", "mj-profile__btn--primary", 3, "click"], [1, "mj-profile__panel"], [1, "mj-profile__panel-header"], ["type", "button", "aria-label", "Back", 1, "mj-profile__panel-back", 3, "click"], [1, "fa-solid", "fa-arrow-left"], [1, "mj-profile__panel-title"], [1, "mj-profile__panel-body"], [1, "mj-profile__themes"], ["alt", "", 1, "mj-profile__avatar", "mj-profile__avatar--img", 3, "error", "src"], [1, "mj-profile__chip", 3, "class"], [1, "mj-profile__chip"], [3, "class"], ["type", "button", "data-testid", "omnibar-toggle", 1, "mj-profile__channel", 3, "click", "disabled"], [1, "mj-profile__channel-icon"], [1, "fa-solid", "fa-magnifying-glass"], [1, "mj-profile__channel-label"], [1, "mj-profile__channel-hint"], [1, "mj-profile__channel-state"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "mj-profile__switch", 3, "mj-profile__switch--on"], [1, "mj-profile__switch"], [1, "mj-profile__switch-knob"], ["type", "button", 1, "mj-profile__channel", 3, "mj-profile__channel--on", "disabled"], ["type", "button", 1, "mj-profile__channel", 3, "click", "disabled"], ["type", "button", 1, "mj-profile__theme", 3, "mj-profile__theme--active", "mj-profile__theme--saving", "disabled"], ["type", "button", 1, "mj-profile__theme", 3, "click", "disabled"], [1, "mj-profile__theme-swatch"], [1, "mj-profile__theme-info"], [1, "mj-profile__theme-name"], [1, "mj-profile__theme-desc"], [1, "fa-solid", "fa-spinner", "fa-spin", "mj-profile__theme-check"], [1, "fa-solid", "fa-check", "mj-profile__theme-check"], [1, "mj-profile__theme-sep"], ["type", "button", 1, "mj-profile__theme", 3, "mj-profile__theme--active"], ["type", "button", 1, "mj-profile__theme", 3, "click"], [1, "mj-profile__theme-swatch", "mj-profile__brand-swatch"], [3, "background"]], template: function ProfileDialogComponent_Template(rf, ctx) { if (rf & 1) {
648
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileDialogComponent, selectors: [["mj-profile-dialog"]], inputs: { AvatarUrl: "AvatarUrl", AvatarIconClass: "AvatarIconClass" }, outputs: { CloseRequested: "CloseRequested" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 63, vars: 17, consts: [["role", "document", 1, "mj-profile"], ["type", "button", "aria-label", "Close", 1, "mj-profile__close", 3, "click"], [1, "fa-solid", "fa-xmark"], [1, "mj-profile__main"], [1, "mj-profile__hero"], [1, "mj-profile__hero-title"], [1, "mj-profile__avatar-zone"], ["alt", "", 1, "mj-profile__avatar", "mj-profile__avatar--img", 3, "src"], [1, "mj-profile__avatar", "mj-profile__avatar--icon"], [1, "mj-profile__avatar"], ["type", "button", "title", "Change photo", 1, "mj-profile__avatar-edit", 3, "click"], [1, "fa-solid", "fa-camera"], [1, "mj-profile__identity"], [1, "mj-profile__name"], [1, "mj-profile__email"], [1, "mj-profile__chips"], [1, "mj-profile__scroll"], [1, "mj-profile__field-list"], [1, "mj-profile__field"], [1, "mj-profile__field-icon"], [1, "fa-solid", "fa-id-badge"], [1, "mj-profile__field-body"], [1, "mj-profile__field-label"], [1, "mj-profile__field-value"], [1, "mj-profile__field-muted"], ["type", "button", 1, "mj-profile__field", "mj-profile__field--button", 3, "click"], [1, "fa-solid", "fa-palette"], [1, "fa-solid", "fa-chevron-right", "mj-profile__field-chev"], [1, "mj-profile__section"], [1, "mj-profile__section-head"], [1, "mj-profile__unread"], [1, "mj-profile__channels-loading"], [1, "mj-profile__channels"], [1, "mj-profile__footer"], ["type", "button", 1, "mj-profile__btn", "mj-profile__btn--danger", 3, "click"], [1, "fa-solid", "fa-arrow-right-from-bracket"], [1, "mj-profile__spacer"], ["type", "button", 1, "mj-profile__btn", "mj-profile__btn--primary", 3, "click"], [1, "mj-profile__panel"], [1, "mj-profile__panel-header"], ["type", "button", "aria-label", "Back", 1, "mj-profile__panel-back", 3, "click"], [1, "fa-solid", "fa-arrow-left"], [1, "mj-profile__panel-title"], [1, "mj-profile__panel-body"], [1, "mj-profile__themes"], ["alt", "", 1, "mj-profile__avatar", "mj-profile__avatar--img", 3, "error", "src"], [1, "mj-profile__chip", 3, "class"], [1, "mj-profile__chip"], [3, "class"], ["type", "button", "data-testid", "omnibar-toggle", 1, "mj-profile__channel", 3, "click", "disabled"], [1, "mj-profile__channel-icon"], [1, "fa-solid", "fa-magnifying-glass"], [1, "mj-profile__channel-label"], [1, "mj-profile__channel-hint"], [1, "mj-profile__channel-state"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "mj-profile__switch", 3, "mj-profile__switch--on"], [1, "mj-profile__switch"], [1, "mj-profile__switch-knob"], ["type", "button", 1, "mj-profile__channel", 3, "mj-profile__channel--on", "disabled"], ["type", "button", 1, "mj-profile__channel", 3, "click", "disabled"], ["type", "button", 1, "mj-profile__theme", 3, "mj-profile__theme--active", "mj-profile__theme--saving", "disabled"], ["type", "button", 1, "mj-profile__theme", 3, "click", "disabled"], [1, "mj-profile__theme-swatch"], [1, "mj-profile__theme-info"], [1, "mj-profile__theme-name"], [1, "mj-profile__theme-desc"], [1, "fa-solid", "fa-spinner", "fa-spin", "mj-profile__theme-check"], [1, "fa-solid", "fa-check", "mj-profile__theme-check"], [1, "mj-profile__theme-sep"], ["type", "button", 1, "mj-profile__theme", 3, "mj-profile__theme--active"], ["type", "button", 1, "mj-profile__theme", 3, "click"], [1, "mj-profile__theme-swatch", "mj-profile__brand-swatch"], [3, "background"]], template: function ProfileDialogComponent_Template(rf, ctx) { if (rf & 1) {
649
649
  i0.ɵɵelementStart(0, "div", 0)(1, "button", 1);
650
650
  i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_1_listener() { return ctx.OnCloseClick(); });
651
651
  i0.ɵɵelement(2, "i", 2);
@@ -667,56 +667,56 @@ export class ProfileDialogComponent extends BaseAngularComponent {
667
667
  i0.ɵɵelementEnd();
668
668
  i0.ɵɵconditionalCreate(18, ProfileDialogComponent_Conditional_18_Template, 3, 0, "div", 15);
669
669
  i0.ɵɵelementEnd();
670
- i0.ɵɵelementStart(19, "div", 16)(20, "div", 17)(21, "div", 18);
671
- i0.ɵɵelement(22, "i", 19);
670
+ i0.ɵɵelementStart(19, "div", 16)(20, "div", 17)(21, "div", 18)(22, "div", 19);
671
+ i0.ɵɵelement(23, "i", 20);
672
672
  i0.ɵɵelementEnd();
673
- i0.ɵɵelementStart(23, "div", 20)(24, "div", 21);
674
- i0.ɵɵtext(25, "Account");
673
+ i0.ɵɵelementStart(24, "div", 21)(25, "div", 22);
674
+ i0.ɵɵtext(26, "Account");
675
675
  i0.ɵɵelementEnd();
676
- i0.ɵɵelementStart(26, "div", 22);
677
- i0.ɵɵtext(27);
678
- i0.ɵɵconditionalCreate(28, ProfileDialogComponent_Conditional_28_Template, 2, 1, "span", 23);
676
+ i0.ɵɵelementStart(27, "div", 23);
677
+ i0.ɵɵtext(28);
678
+ i0.ɵɵconditionalCreate(29, ProfileDialogComponent_Conditional_29_Template, 2, 1, "span", 24);
679
679
  i0.ɵɵelementEnd()()();
680
- i0.ɵɵelementStart(29, "button", 24);
681
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_29_listener() { return ctx.OpenPanel("theme"); });
682
- i0.ɵɵelementStart(30, "div", 18);
683
- i0.ɵɵelement(31, "i", 25);
680
+ i0.ɵɵelementStart(30, "button", 25);
681
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_30_listener() { return ctx.OpenPanel("theme"); });
682
+ i0.ɵɵelementStart(31, "div", 19);
683
+ i0.ɵɵelement(32, "i", 26);
684
684
  i0.ɵɵelementEnd();
685
- i0.ɵɵelementStart(32, "div", 20)(33, "div", 21);
686
- i0.ɵɵtext(34, "Theme");
685
+ i0.ɵɵelementStart(33, "div", 21)(34, "div", 22);
686
+ i0.ɵɵtext(35, "Theme");
687
687
  i0.ɵɵelementEnd();
688
- i0.ɵɵelementStart(35, "div", 22);
689
- i0.ɵɵtext(36);
688
+ i0.ɵɵelementStart(36, "div", 23);
689
+ i0.ɵɵtext(37);
690
690
  i0.ɵɵelementEnd()();
691
- i0.ɵɵelement(37, "i", 26);
691
+ i0.ɵɵelement(38, "i", 27);
692
692
  i0.ɵɵelementEnd()();
693
- i0.ɵɵconditionalCreate(38, ProfileDialogComponent_Conditional_38_Template, 15, 5, "div", 27);
694
- i0.ɵɵelementStart(39, "div", 27)(40, "div", 28)(41, "h4");
695
- i0.ɵɵtext(42, "Notifications");
696
- i0.ɵɵelementEnd();
697
- i0.ɵɵconditionalCreate(43, ProfileDialogComponent_Conditional_43_Template, 2, 1, "span", 29);
693
+ i0.ɵɵconditionalCreate(39, ProfileDialogComponent_Conditional_39_Template, 15, 5, "div", 28);
694
+ i0.ɵɵelementStart(40, "div", 28)(41, "div", 29)(42, "h4");
695
+ i0.ɵɵtext(43, "Notifications");
698
696
  i0.ɵɵelementEnd();
699
- i0.ɵɵconditionalCreate(44, ProfileDialogComponent_Conditional_44_Template, 3, 0, "div", 30)(45, ProfileDialogComponent_Conditional_45_Template, 3, 0, "div", 31);
697
+ i0.ɵɵconditionalCreate(44, ProfileDialogComponent_Conditional_44_Template, 2, 1, "span", 30);
700
698
  i0.ɵɵelementEnd();
701
- i0.ɵɵelementStart(46, "div", 32)(47, "button", 33);
702
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_47_listener() { return ctx.OnSignOut(); });
703
- i0.ɵɵelement(48, "i", 34);
704
- i0.ɵɵtext(49, " Sign out ");
699
+ i0.ɵɵconditionalCreate(45, ProfileDialogComponent_Conditional_45_Template, 3, 0, "div", 31)(46, ProfileDialogComponent_Conditional_46_Template, 3, 0, "div", 32);
700
+ i0.ɵɵelementEnd()();
701
+ i0.ɵɵelementStart(47, "div", 33)(48, "button", 34);
702
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_48_listener() { return ctx.OnSignOut(); });
703
+ i0.ɵɵelement(49, "i", 35);
704
+ i0.ɵɵtext(50, " Sign out ");
705
705
  i0.ɵɵelementEnd();
706
- i0.ɵɵelement(50, "span", 35);
707
- i0.ɵɵelementStart(51, "button", 36);
708
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_51_listener() { return ctx.OnCloseClick(); });
709
- i0.ɵɵtext(52, " Done ");
706
+ i0.ɵɵelement(51, "span", 36);
707
+ i0.ɵɵelementStart(52, "button", 37);
708
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_52_listener() { return ctx.OnCloseClick(); });
709
+ i0.ɵɵtext(53, " Done ");
710
710
  i0.ɵɵelementEnd()()();
711
- i0.ɵɵelementStart(53, "div", 37)(54, "div", 38)(55, "button", 39);
712
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_55_listener() { return ctx.ClosePanel(); });
713
- i0.ɵɵelement(56, "i", 40);
711
+ i0.ɵɵelementStart(54, "div", 38)(55, "div", 39)(56, "button", 40);
712
+ i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_56_listener() { return ctx.ClosePanel(); });
713
+ i0.ɵɵelement(57, "i", 41);
714
714
  i0.ɵɵelementEnd();
715
- i0.ɵɵelementStart(57, "h3", 41);
716
- i0.ɵɵtext(58);
715
+ i0.ɵɵelementStart(58, "h3", 42);
716
+ i0.ɵɵtext(59);
717
717
  i0.ɵɵelementEnd()();
718
- i0.ɵɵelementStart(59, "div", 42);
719
- i0.ɵɵconditionalCreate(60, ProfileDialogComponent_Conditional_60_Template, 1, 0, "mj-user-profile-settings")(61, ProfileDialogComponent_Conditional_61_Template, 4, 1, "div", 43);
718
+ i0.ɵɵelementStart(60, "div", 43);
719
+ i0.ɵɵconditionalCreate(61, ProfileDialogComponent_Conditional_61_Template, 1, 0, "mj-user-profile-settings")(62, ProfileDialogComponent_Conditional_62_Template, 4, 1, "div", 44);
720
720
  i0.ɵɵelementEnd()()();
721
721
  } if (rf & 2) {
722
722
  i0.ɵɵclassProp("mj-profile--panel-open", ctx.ActivePanel !== "none");
@@ -728,25 +728,25 @@ export class ProfileDialogComponent extends BaseAngularComponent {
728
728
  i0.ɵɵtextInterpolate(ctx.UserEmail);
729
729
  i0.ɵɵadvance();
730
730
  i0.ɵɵconditional(ctx.RoleChips.length > 0 ? 18 : -1);
731
- i0.ɵɵadvance(9);
731
+ i0.ɵɵadvance(10);
732
732
  i0.ɵɵtextInterpolate2(" ", ctx.AccountType, " \u00B7 ", ctx.AccountStatus, " ");
733
733
  i0.ɵɵadvance();
734
- i0.ɵɵconditional(ctx.MemberSince ? 28 : -1);
734
+ i0.ɵɵconditional(ctx.MemberSince ? 29 : -1);
735
735
  i0.ɵɵadvance(8);
736
736
  i0.ɵɵtextInterpolate(ctx.ThemeLabel);
737
737
  i0.ɵɵadvance(2);
738
- i0.ɵɵconditional(ctx.OmnibarAvailable ? 38 : -1);
738
+ i0.ɵɵconditional(ctx.OmnibarAvailable ? 39 : -1);
739
739
  i0.ɵɵadvance(5);
740
- i0.ɵɵconditional(ctx.UnreadCount > 0 ? 43 : -1);
740
+ i0.ɵɵconditional(ctx.UnreadCount > 0 ? 44 : -1);
741
741
  i0.ɵɵadvance();
742
- i0.ɵɵconditional(ctx.LoadingNotifications ? 44 : 45);
742
+ i0.ɵɵconditional(ctx.LoadingNotifications ? 45 : 46);
743
743
  i0.ɵɵadvance(9);
744
744
  i0.ɵɵclassProp("mj-profile__panel--open", ctx.ActivePanel !== "none");
745
745
  i0.ɵɵadvance(5);
746
746
  i0.ɵɵtextInterpolate(ctx.PanelTitle);
747
747
  i0.ɵɵadvance(2);
748
- i0.ɵɵconditional(ctx.ActivePanel === "photo" ? 60 : ctx.ActivePanel === "theme" ? 61 : -1);
749
- } }, dependencies: [CommonModule, ExplorerSettingsModule, i1.UserProfileSettingsComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n height: 100%;\n}\n.mj-profile[_ngcontent-%COMP%] {\n display: block;\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n height: 100%;\n min-height: 0;\n position: relative;\n font-family: inherit;\n overflow: hidden;\n}\n.mj-profile__close[_ngcontent-%COMP%] {\n position: absolute;\n top: 12px; right: 12px;\n width: 36px; height: 36px;\n border: none; border-radius: 8px;\n background: rgba(255, 255, 255, 0.18);\n backdrop-filter: blur(8px);\n color: #fff;\n cursor: pointer;\n font-size: 16px;\n display: flex; align-items: center; justify-content: center;\n transition: background 0.15s, opacity 0.2s;\n z-index: 4;\n}\n.mj-profile__close[_ngcontent-%COMP%]:hover { background: rgba(255, 255, 255, 0.3); }\n.mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__close[_ngcontent-%COMP%] { opacity: 0; pointer-events: none; }\n\n\n.mj-profile__main[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%;\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__main[_ngcontent-%COMP%] {\n transform: translateX(-12%);\n pointer-events: none;\n}\n\n.mj-profile__hero[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n padding: 22px 24px 56px;\n position: relative;\n overflow: hidden;\n flex-shrink: 0;\n}\n.mj-profile__hero[_ngcontent-%COMP%]::before {\n content: '';\n position: absolute;\n inset: -50%;\n background: radial-gradient(circle, rgba(255, 255, 255, 0.10) 0%, transparent 60%);\n animation: _ngcontent-%COMP%_mj-profile-rotate 24s linear infinite;\n pointer-events: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .mj-profile__hero[_ngcontent-%COMP%]::before { animation: none; }\n}\n@keyframes _ngcontent-%COMP%_mj-profile-rotate { to { transform: rotate(360deg); } }\n\n.mj-profile__hero-title[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 1.2px;\n opacity: 0.85;\n position: relative;\n z-index: 1;\n}\n\n.mj-profile__avatar-zone[_ngcontent-%COMP%] {\n position: relative;\n width: 96px;\n height: 96px;\n margin: -48px auto 12px;\n z-index: 2;\n}\n.mj-profile__avatar[_ngcontent-%COMP%] {\n width: 96px;\n height: 96px;\n border-radius: 50%;\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 32px;\n font-weight: 700;\n border: 4px solid var(--mj-bg-surface);\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);\n object-fit: cover;\n overflow: hidden;\n}\nimg.mj-profile__avatar[_ngcontent-%COMP%] { background: var(--mj-bg-surface-card); }\n.mj-profile__avatar--icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 36px; }\n\n.mj-profile__avatar-edit[_ngcontent-%COMP%] {\n position: absolute;\n bottom: 2px; right: 2px;\n width: 30px; height: 30px;\n border-radius: 50%;\n background: var(--mj-bg-surface);\n color: var(--mj-brand-primary);\n border: 2px solid var(--mj-bg-surface);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 12px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);\n transition: transform 0.15s;\n}\n.mj-profile__avatar-edit[_ngcontent-%COMP%]:hover { transform: scale(1.1); }\n\n.mj-profile__identity[_ngcontent-%COMP%] {\n text-align: center;\n padding: 0 24px 16px;\n flex-shrink: 0;\n}\n.mj-profile__name[_ngcontent-%COMP%] {\n margin: 0 0 4px;\n font-size: 22px;\n font-weight: 700;\n letter-spacing: -0.4px;\n color: var(--mj-text-primary);\n}\n.mj-profile__email[_ngcontent-%COMP%] {\n margin: 0 0 12px;\n color: var(--mj-text-muted);\n font-size: 13px;\n word-break: break-all;\n}\n.mj-profile__chips[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n justify-content: center;\n}\n.mj-profile__chip[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 9px;\n border-radius: 100px;\n font-size: 11px;\n font-weight: 600;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__chip--admin[_ngcontent-%COMP%] {\n background: color-mix(in srgb, #f59e0b 14%, transparent);\n color: #b45309;\n}\n.mj-profile__chip--dev[_ngcontent-%COMP%] {\n background: color-mix(in srgb, #10b981 14%, transparent);\n color: #047857;\n}\n\n.mj-profile__field-list[_ngcontent-%COMP%] {\n padding: 0 24px;\n flex-shrink: 0;\n}\n.mj-profile__field[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 12px 0;\n gap: 14px;\n border-top: 1px solid var(--mj-border-subtle);\n width: 100%;\n text-align: left;\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n color: inherit;\n}\n.mj-profile__field[_ngcontent-%COMP%]:first-child { border-top: none; }\n.mj-profile__field--button[_ngcontent-%COMP%] {\n cursor: pointer;\n transition: background 0.12s;\n margin: 0 -8px;\n padding-left: 8px;\n padding-right: 8px;\n border-radius: 8px;\n border-top: none;\n}\n.mj-profile__field--button[_ngcontent-%COMP%] + .mj-profile__field--button[_ngcontent-%COMP%] { margin-top: 0; }\n.mj-profile__field--button[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); }\n.mj-profile__field--button[_ngcontent-%COMP%]:hover .mj-profile__field-chev[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n.mj-profile__field-icon[_ngcontent-%COMP%] {\n width: 32px; height: 32px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 8px;\n color: var(--mj-text-secondary);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n flex-shrink: 0;\n}\n.mj-profile__field-body[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n.mj-profile__field-label[_ngcontent-%COMP%] {\n font-size: 10.5px;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.5px;\n}\n.mj-profile__field-value[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-primary);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__field-muted[_ngcontent-%COMP%] { color: var(--mj-text-muted); }\n.mj-profile__field-chev[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n font-size: 11px;\n transition: color 0.15s;\n}\n\n.mj-profile__section[_ngcontent-%COMP%] {\n padding: 16px 24px 8px;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n.mj-profile__section-head[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.mj-profile__section-head[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 11px;\n font-weight: 700;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.6px;\n}\n.mj-profile__unread[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 600;\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n padding: 2px 8px;\n border-radius: 100px;\n}\n.mj-profile__channels-loading[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n font-size: 12.5px;\n padding: 12px;\n text-align: center;\n}\n.mj-profile__channels[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__channel[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n text-align: left;\n width: 100%;\n}\n.mj-profile__channel[_ngcontent-%COMP%]:hover:not(:disabled) {\n border-color: var(--mj-border-default);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__channel[_ngcontent-%COMP%]:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__channel-icon[_ngcontent-%COMP%] {\n width: 32px; height: 32px;\n border-radius: 8px;\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n flex-shrink: 0;\n transition: all 0.15s;\n}\n.mj-profile__channel--on[_ngcontent-%COMP%] .mj-profile__channel-icon[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 14%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__channel-label[_ngcontent-%COMP%] {\n flex: 1;\n font-size: 13.5px;\n font-weight: 500;\n color: var(--mj-text-primary);\n}\n.mj-profile__channel-hint[_ngcontent-%COMP%] {\n font-size: 11.5px;\n font-weight: 400;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n.mj-profile__channel-state[_ngcontent-%COMP%] {\n flex-shrink: 0;\n color: var(--mj-text-muted);\n font-size: 13px;\n min-width: 36px;\n display: flex; justify-content: flex-end; align-items: center;\n}\n\n.mj-profile__switch[_ngcontent-%COMP%] {\n width: 36px;\n height: 20px;\n background: var(--mj-border-strong);\n border-radius: 100px;\n position: relative;\n transition: background 0.2s;\n display: inline-block;\n}\n.mj-profile__switch-knob[_ngcontent-%COMP%] {\n position: absolute;\n top: 2px; left: 2px;\n width: 16px; height: 16px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n.mj-profile__switch--on[_ngcontent-%COMP%] { background: var(--mj-brand-primary); }\n.mj-profile__switch--on[_ngcontent-%COMP%] .mj-profile__switch-knob[_ngcontent-%COMP%] { transform: translateX(16px); }\n\n.mj-profile__footer[_ngcontent-%COMP%] {\n border-top: 1px solid var(--mj-border-subtle);\n padding: 14px 20px;\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n.mj-profile__spacer[_ngcontent-%COMP%] { flex: 1; }\n.mj-profile__btn[_ngcontent-%COMP%] {\n padding: 9px 16px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n transition: all 0.15s;\n}\n.mj-profile__btn[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); border-color: var(--mj-border-strong); }\n.mj-profile__btn--primary[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border-color: var(--mj-brand-primary);\n}\n.mj-profile__btn--primary[_ngcontent-%COMP%]:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n}\n.mj-profile__btn--danger[_ngcontent-%COMP%] {\n color: var(--mj-status-error);\n border-color: color-mix(in srgb, var(--mj-status-error) 30%, var(--mj-border-default));\n}\n.mj-profile__btn--danger[_ngcontent-%COMP%]:hover {\n background: color-mix(in srgb, var(--mj-status-error) 8%, transparent);\n border-color: var(--mj-status-error);\n}\n\n\n.mj-profile__panel[_ngcontent-%COMP%] {\n position: absolute;\n inset: 0;\n background: var(--mj-bg-surface);\n transform: translateX(100%);\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n display: flex;\n flex-direction: column;\n z-index: 3;\n}\n.mj-profile__panel--open[_ngcontent-%COMP%] {\n transform: translateX(0);\n box-shadow: -8px 0 24px rgba(0, 0, 0, 0.06);\n}\n.mj-profile__panel-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 14px 18px;\n border-bottom: 1px solid var(--mj-border-subtle);\n background: var(--mj-bg-surface-card);\n flex-shrink: 0;\n}\n.mj-profile__panel-back[_ngcontent-%COMP%] {\n width: 34px; height: 34px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.mj-profile__panel-back[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n}\n.mj-profile__panel-title[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n letter-spacing: -0.2px;\n}\n.mj-profile__panel-body[_ngcontent-%COMP%] {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: 16px 20px 20px;\n}\n\n\n.mj-profile__themes[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__theme[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 12px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n text-align: left;\n width: 100%;\n font-family: inherit;\n}\n.mj-profile__theme[_ngcontent-%COMP%]:hover:not(:disabled) {\n border-color: var(--mj-brand-primary);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__theme[_ngcontent-%COMP%]:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__theme--active[_ngcontent-%COMP%] {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface-card));\n}\n.mj-profile__theme-swatch[_ngcontent-%COMP%] {\n width: 40px; height: 40px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n flex-shrink: 0;\n border: 1px solid var(--mj-border-default);\n}\n.mj-profile__theme-swatch--light[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);\n color: #f59e0b;\n}\n.mj-profile__theme-swatch--dark[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);\n color: #94a3b8;\n border-color: #334155;\n}\n.mj-profile__theme-swatch--system[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffffff 0%, #ffffff 49%, #1e293b 51%, #0f172a 100%);\n color: var(--mj-text-secondary);\n}\n.mj-profile__theme-info[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n.mj-profile__theme-name[_ngcontent-%COMP%] {\n font-size: 13.5px;\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n.mj-profile__theme-desc[_ngcontent-%COMP%] {\n font-size: 11.5px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__theme-check[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n\n.mj-profile__theme-sep[_ngcontent-%COMP%] {\n font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;\n color: var(--mj-text-muted); padding: 6px 4px 2px; margin-top: 6px;\n}\n.mj-profile__brand-swatch[_ngcontent-%COMP%] {\n display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0;\n}\n.mj-profile__brand-swatch[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n width: 33%; height: 100%; display: block;\n}\n\n@media (max-width: 480px) {\n .mj-profile__hero[_ngcontent-%COMP%] { padding: 20px 18px 48px; }\n .mj-profile__avatar-zone[_ngcontent-%COMP%] { width: 88px; height: 88px; margin-top: -44px; }\n .mj-profile__avatar[_ngcontent-%COMP%] { width: 88px; height: 88px; font-size: 28px; }\n .mj-profile__name[_ngcontent-%COMP%] { font-size: 19px; }\n .mj-profile__field-list[_ngcontent-%COMP%], \n .mj-profile__section[_ngcontent-%COMP%] { padding-left: 18px; padding-right: 18px; }\n .mj-profile__footer[_ngcontent-%COMP%] { padding: 12px 16px; }\n .mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__main[_ngcontent-%COMP%] { transform: translateX(-20%); }\n .mj-profile__panel-body[_ngcontent-%COMP%] { padding: 14px 16px 16px; }\n}"] });
748
+ i0.ɵɵconditional(ctx.ActivePanel === "photo" ? 61 : ctx.ActivePanel === "theme" ? 62 : -1);
749
+ } }, dependencies: [CommonModule, ExplorerSettingsModule, i1.UserProfileSettingsComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mj-profile[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n height: 100%;\n max-height: 100vh;\n max-height: 100dvh;\n min-height: 0;\n position: relative;\n font-family: inherit;\n overflow: hidden;\n}\n.mj-profile__close[_ngcontent-%COMP%] {\n position: absolute;\n top: 12px; right: 12px;\n width: 36px; height: 36px;\n border: none; border-radius: 8px;\n background: rgba(255, 255, 255, 0.18);\n backdrop-filter: blur(8px);\n color: #fff;\n cursor: pointer;\n font-size: 16px;\n display: flex; align-items: center; justify-content: center;\n transition: background 0.15s, opacity 0.2s;\n z-index: 4;\n}\n.mj-profile__close[_ngcontent-%COMP%]:hover { background: rgba(255, 255, 255, 0.3); }\n.mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__close[_ngcontent-%COMP%] { opacity: 0; pointer-events: none; }\n\n\n\n\n\n.mj-profile__main[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__main[_ngcontent-%COMP%] {\n transform: translateX(-12%);\n pointer-events: none;\n}\n\n.mj-profile__hero[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n padding: 22px 24px 56px;\n position: relative;\n overflow: hidden;\n flex-shrink: 0;\n}\n.mj-profile__hero[_ngcontent-%COMP%]::before {\n content: '';\n position: absolute;\n inset: -50%;\n background: radial-gradient(circle, rgba(255, 255, 255, 0.10) 0%, transparent 60%);\n animation: _ngcontent-%COMP%_mj-profile-rotate 24s linear infinite;\n pointer-events: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .mj-profile__hero[_ngcontent-%COMP%]::before { animation: none; }\n}\n@keyframes _ngcontent-%COMP%_mj-profile-rotate { to { transform: rotate(360deg); } }\n\n.mj-profile__hero-title[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 1.2px;\n opacity: 0.85;\n position: relative;\n z-index: 1;\n}\n\n.mj-profile__avatar-zone[_ngcontent-%COMP%] {\n position: relative;\n width: 96px;\n height: 96px;\n margin: -48px auto 12px;\n z-index: 2;\n}\n.mj-profile__avatar[_ngcontent-%COMP%] {\n width: 96px;\n height: 96px;\n border-radius: 50%;\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 32px;\n font-weight: 700;\n border: 4px solid var(--mj-bg-surface);\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);\n object-fit: cover;\n overflow: hidden;\n}\nimg.mj-profile__avatar[_ngcontent-%COMP%] { background: var(--mj-bg-surface-card); }\n.mj-profile__avatar--icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 36px; }\n\n.mj-profile__avatar-edit[_ngcontent-%COMP%] {\n position: absolute;\n bottom: 2px; right: 2px;\n width: 30px; height: 30px;\n border-radius: 50%;\n background: var(--mj-bg-surface);\n color: var(--mj-brand-primary);\n border: 2px solid var(--mj-bg-surface);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 12px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);\n transition: transform 0.15s;\n}\n.mj-profile__avatar-edit[_ngcontent-%COMP%]:hover { transform: scale(1.1); }\n\n.mj-profile__identity[_ngcontent-%COMP%] {\n text-align: center;\n padding: 0 24px 16px;\n flex-shrink: 0;\n}\n.mj-profile__name[_ngcontent-%COMP%] {\n margin: 0 0 4px;\n font-size: 22px;\n font-weight: 700;\n letter-spacing: -0.4px;\n color: var(--mj-text-primary);\n}\n.mj-profile__email[_ngcontent-%COMP%] {\n margin: 0 0 12px;\n color: var(--mj-text-muted);\n font-size: 13px;\n word-break: break-all;\n}\n.mj-profile__chips[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n justify-content: center;\n}\n.mj-profile__chip[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 9px;\n border-radius: 100px;\n font-size: 11px;\n font-weight: 600;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__chip--admin[_ngcontent-%COMP%] {\n background: color-mix(in srgb, #f59e0b 14%, transparent);\n color: #b45309;\n}\n.mj-profile__chip--dev[_ngcontent-%COMP%] {\n background: color-mix(in srgb, #10b981 14%, transparent);\n color: #047857;\n}\n\n\n\n\n\n.mj-profile__scroll[_ngcontent-%COMP%] {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.mj-profile__field-list[_ngcontent-%COMP%] {\n padding: 0 24px;\n}\n.mj-profile__field[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 12px 0;\n gap: 14px;\n border-top: 1px solid var(--mj-border-subtle);\n width: 100%;\n text-align: left;\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n color: inherit;\n}\n.mj-profile__field[_ngcontent-%COMP%]:first-child { border-top: none; }\n.mj-profile__field--button[_ngcontent-%COMP%] {\n cursor: pointer;\n transition: background 0.12s;\n margin: 0 -8px;\n padding-left: 8px;\n padding-right: 8px;\n border-radius: 8px;\n border-top: none;\n}\n.mj-profile__field--button[_ngcontent-%COMP%] + .mj-profile__field--button[_ngcontent-%COMP%] { margin-top: 0; }\n.mj-profile__field--button[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); }\n.mj-profile__field--button[_ngcontent-%COMP%]:hover .mj-profile__field-chev[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n.mj-profile__field-icon[_ngcontent-%COMP%] {\n width: 32px; height: 32px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 8px;\n color: var(--mj-text-secondary);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n flex-shrink: 0;\n}\n.mj-profile__field-body[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n.mj-profile__field-label[_ngcontent-%COMP%] {\n font-size: 10.5px;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.5px;\n}\n.mj-profile__field-value[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-primary);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__field-muted[_ngcontent-%COMP%] { color: var(--mj-text-muted); }\n.mj-profile__field-chev[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n font-size: 11px;\n transition: color 0.15s;\n}\n\n.mj-profile__section[_ngcontent-%COMP%] {\n padding: 16px 24px 8px;\n}\n.mj-profile__section-head[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.mj-profile__section-head[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 11px;\n font-weight: 700;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.6px;\n}\n.mj-profile__unread[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 600;\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n padding: 2px 8px;\n border-radius: 100px;\n}\n.mj-profile__channels-loading[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n font-size: 12.5px;\n padding: 12px;\n text-align: center;\n}\n.mj-profile__channels[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__channel[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n text-align: left;\n width: 100%;\n}\n.mj-profile__channel[_ngcontent-%COMP%]:hover:not(:disabled) {\n border-color: var(--mj-border-default);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__channel[_ngcontent-%COMP%]:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__channel-icon[_ngcontent-%COMP%] {\n width: 32px; height: 32px;\n border-radius: 8px;\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n flex-shrink: 0;\n transition: all 0.15s;\n}\n.mj-profile__channel--on[_ngcontent-%COMP%] .mj-profile__channel-icon[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 14%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__channel-label[_ngcontent-%COMP%] {\n flex: 1;\n font-size: 13.5px;\n font-weight: 500;\n color: var(--mj-text-primary);\n}\n.mj-profile__channel-hint[_ngcontent-%COMP%] {\n font-size: 11.5px;\n font-weight: 400;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n.mj-profile__channel-state[_ngcontent-%COMP%] {\n flex-shrink: 0;\n color: var(--mj-text-muted);\n font-size: 13px;\n min-width: 36px;\n display: flex; justify-content: flex-end; align-items: center;\n}\n\n.mj-profile__switch[_ngcontent-%COMP%] {\n width: 36px;\n height: 20px;\n background: var(--mj-border-strong);\n border-radius: 100px;\n position: relative;\n transition: background 0.2s;\n display: inline-block;\n}\n.mj-profile__switch-knob[_ngcontent-%COMP%] {\n position: absolute;\n top: 2px; left: 2px;\n width: 16px; height: 16px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n.mj-profile__switch--on[_ngcontent-%COMP%] { background: var(--mj-brand-primary); }\n.mj-profile__switch--on[_ngcontent-%COMP%] .mj-profile__switch-knob[_ngcontent-%COMP%] { transform: translateX(16px); }\n\n.mj-profile__footer[_ngcontent-%COMP%] {\n border-top: 1px solid var(--mj-border-subtle);\n padding: 14px 20px;\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n.mj-profile__spacer[_ngcontent-%COMP%] { flex: 1; }\n.mj-profile__btn[_ngcontent-%COMP%] {\n padding: 9px 16px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n transition: all 0.15s;\n}\n.mj-profile__btn[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); border-color: var(--mj-border-strong); }\n.mj-profile__btn--primary[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border-color: var(--mj-brand-primary);\n}\n.mj-profile__btn--primary[_ngcontent-%COMP%]:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n}\n.mj-profile__btn--danger[_ngcontent-%COMP%] {\n color: var(--mj-status-error);\n border-color: color-mix(in srgb, var(--mj-status-error) 30%, var(--mj-border-default));\n}\n.mj-profile__btn--danger[_ngcontent-%COMP%]:hover {\n background: color-mix(in srgb, var(--mj-status-error) 8%, transparent);\n border-color: var(--mj-status-error);\n}\n\n\n.mj-profile__panel[_ngcontent-%COMP%] {\n position: absolute;\n inset: 0;\n background: var(--mj-bg-surface);\n transform: translateX(100%);\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n display: flex;\n flex-direction: column;\n z-index: 3;\n}\n.mj-profile__panel--open[_ngcontent-%COMP%] {\n transform: translateX(0);\n box-shadow: -8px 0 24px rgba(0, 0, 0, 0.06);\n}\n.mj-profile__panel-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 14px 18px;\n border-bottom: 1px solid var(--mj-border-subtle);\n background: var(--mj-bg-surface-card);\n flex-shrink: 0;\n}\n.mj-profile__panel-back[_ngcontent-%COMP%] {\n width: 34px; height: 34px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.mj-profile__panel-back[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n}\n.mj-profile__panel-title[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n letter-spacing: -0.2px;\n}\n.mj-profile__panel-body[_ngcontent-%COMP%] {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: 16px 20px 20px;\n}\n\n\n.mj-profile__themes[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__theme[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 12px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n text-align: left;\n width: 100%;\n font-family: inherit;\n}\n.mj-profile__theme[_ngcontent-%COMP%]:hover:not(:disabled) {\n border-color: var(--mj-brand-primary);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__theme[_ngcontent-%COMP%]:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__theme--active[_ngcontent-%COMP%] {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface-card));\n}\n.mj-profile__theme-swatch[_ngcontent-%COMP%] {\n width: 40px; height: 40px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n flex-shrink: 0;\n border: 1px solid var(--mj-border-default);\n}\n.mj-profile__theme-swatch--light[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);\n color: #f59e0b;\n}\n.mj-profile__theme-swatch--dark[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);\n color: #94a3b8;\n border-color: #334155;\n}\n.mj-profile__theme-swatch--system[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffffff 0%, #ffffff 49%, #1e293b 51%, #0f172a 100%);\n color: var(--mj-text-secondary);\n}\n.mj-profile__theme-info[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n.mj-profile__theme-name[_ngcontent-%COMP%] {\n font-size: 13.5px;\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n.mj-profile__theme-desc[_ngcontent-%COMP%] {\n font-size: 11.5px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__theme-check[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n\n.mj-profile__theme-sep[_ngcontent-%COMP%] {\n font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;\n color: var(--mj-text-muted); padding: 6px 4px 2px; margin-top: 6px;\n}\n.mj-profile__brand-swatch[_ngcontent-%COMP%] {\n display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0;\n}\n.mj-profile__brand-swatch[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n width: 33%; height: 100%; display: block;\n}\n\n@media (max-width: 480px) {\n .mj-profile__hero[_ngcontent-%COMP%] { padding: 20px 18px 48px; }\n .mj-profile__avatar-zone[_ngcontent-%COMP%] { width: 88px; height: 88px; margin-top: -44px; }\n .mj-profile__avatar[_ngcontent-%COMP%] { width: 88px; height: 88px; font-size: 28px; }\n .mj-profile__name[_ngcontent-%COMP%] { font-size: 19px; }\n .mj-profile__field-list[_ngcontent-%COMP%], \n .mj-profile__section[_ngcontent-%COMP%] { padding-left: 18px; padding-right: 18px; }\n .mj-profile__footer[_ngcontent-%COMP%] { padding: 12px 16px; }\n .mj-profile--panel-open[_ngcontent-%COMP%] .mj-profile__main[_ngcontent-%COMP%] { transform: translateX(-20%); }\n .mj-profile__panel-body[_ngcontent-%COMP%] { padding: 14px 16px 16px; }\n}"] });
750
750
  }
751
751
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProfileDialogComponent, [{
752
752
  type: Component,
@@ -794,95 +794,98 @@ export class ProfileDialogComponent extends BaseAngularComponent {
794
794
  }
795
795
  </div>
796
796
 
797
- <div class="mj-profile__field-list">
798
- <div class="mj-profile__field">
799
- <div class="mj-profile__field-icon"><i class="fa-solid fa-id-badge"></i></div>
800
- <div class="mj-profile__field-body">
801
- <div class="mj-profile__field-label">Account</div>
802
- <div class="mj-profile__field-value">
803
- {{ AccountType }} · {{ AccountStatus }}
804
- @if (MemberSince) {
805
- <span class="mj-profile__field-muted"> · {{ MemberSince }}</span>
806
- }
807
- </div>
808
- </div>
809
- </div>
810
-
811
- <button class="mj-profile__field mj-profile__field--button" type="button" (click)="OpenPanel('theme')">
812
- <div class="mj-profile__field-icon"><i class="fa-solid fa-palette"></i></div>
813
- <div class="mj-profile__field-body">
814
- <div class="mj-profile__field-label">Theme</div>
815
- <div class="mj-profile__field-value">{{ ThemeLabel }}</div>
816
- </div>
817
- <i class="fa-solid fa-chevron-right mj-profile__field-chev"></i>
818
- </button>
819
- </div>
820
-
821
- @if (OmnibarAvailable) {
822
- <div class="mj-profile__section">
823
- <div class="mj-profile__section-head">
824
- <h4>Command Palette</h4>
825
- </div>
826
- <div class="mj-profile__channels">
827
- <button type="button"
828
- class="mj-profile__channel"
829
- data-testid="omnibar-toggle"
830
- [class.mj-profile__channel--on]="OmnibarEnabled"
831
- [disabled]="SavingOmnibar"
832
- (click)="ToggleOmnibar()">
833
- <div class="mj-profile__channel-icon"><i class="fa-solid fa-magnifying-glass"></i></div>
834
- <div class="mj-profile__channel-label">
835
- Unified command palette
836
- <div class="mj-profile__channel-hint">{{ OmnibarShortcutLabel }} — search, records, agents &amp; commands in one bar</div>
837
- </div>
838
- <div class="mj-profile__channel-state">
839
- @if (SavingOmnibar) {
840
- <i class="fa-solid fa-spinner fa-spin"></i>
841
- } @else {
842
- <span class="mj-profile__switch" [class.mj-profile__switch--on]="OmnibarEnabled">
843
- <span class="mj-profile__switch-knob"></span>
844
- </span>
797
+ <!-- The one scroll region: hero, avatar, identity and footer stay put; only the settings rows scroll. -->
798
+ <div class="mj-profile__scroll">
799
+ <div class="mj-profile__field-list">
800
+ <div class="mj-profile__field">
801
+ <div class="mj-profile__field-icon"><i class="fa-solid fa-id-badge"></i></div>
802
+ <div class="mj-profile__field-body">
803
+ <div class="mj-profile__field-label">Account</div>
804
+ <div class="mj-profile__field-value">
805
+ {{ AccountType }} · {{ AccountStatus }}
806
+ @if (MemberSince) {
807
+ <span class="mj-profile__field-muted"> · {{ MemberSince }}</span>
845
808
  }
846
809
  </div>
847
- </button>
810
+ </div>
848
811
  </div>
849
- </div>
850
- }
851
812
 
852
- <div class="mj-profile__section">
853
- <div class="mj-profile__section-head">
854
- <h4>Notifications</h4>
855
- @if (UnreadCount > 0) {
856
- <span class="mj-profile__unread">{{ UnreadCount }} unread</span>
857
- }
813
+ <button class="mj-profile__field mj-profile__field--button" type="button" (click)="OpenPanel('theme')">
814
+ <div class="mj-profile__field-icon"><i class="fa-solid fa-palette"></i></div>
815
+ <div class="mj-profile__field-body">
816
+ <div class="mj-profile__field-label">Theme</div>
817
+ <div class="mj-profile__field-value">{{ ThemeLabel }}</div>
818
+ </div>
819
+ <i class="fa-solid fa-chevron-right mj-profile__field-chev"></i>
820
+ </button>
858
821
  </div>
859
- @if (LoadingNotifications) {
860
- <div class="mj-profile__channels-loading">
861
- <i class="fa-solid fa-spinner fa-spin"></i> Loading…
862
- </div>
863
- } @else {
864
- <div class="mj-profile__channels">
865
- @for (ch of Channels; track ch.key) {
822
+
823
+ @if (OmnibarAvailable) {
824
+ <div class="mj-profile__section">
825
+ <div class="mj-profile__section-head">
826
+ <h4>Command Palette</h4>
827
+ </div>
828
+ <div class="mj-profile__channels">
866
829
  <button type="button"
867
830
  class="mj-profile__channel"
868
- [class.mj-profile__channel--on]="ch.enabled"
869
- [disabled]="ch.saving"
870
- (click)="ToggleChannel(ch)">
871
- <div class="mj-profile__channel-icon"><i [class]="ch.icon"></i></div>
872
- <div class="mj-profile__channel-label">{{ ch.label }}</div>
831
+ data-testid="omnibar-toggle"
832
+ [class.mj-profile__channel--on]="OmnibarEnabled"
833
+ [disabled]="SavingOmnibar"
834
+ (click)="ToggleOmnibar()">
835
+ <div class="mj-profile__channel-icon"><i class="fa-solid fa-magnifying-glass"></i></div>
836
+ <div class="mj-profile__channel-label">
837
+ Unified command palette
838
+ <div class="mj-profile__channel-hint">{{ OmnibarShortcutLabel }} — search, records, agents &amp; commands in one bar</div>
839
+ </div>
873
840
  <div class="mj-profile__channel-state">
874
- @if (ch.saving) {
841
+ @if (SavingOmnibar) {
875
842
  <i class="fa-solid fa-spinner fa-spin"></i>
876
843
  } @else {
877
- <span class="mj-profile__switch" [class.mj-profile__switch--on]="ch.enabled">
844
+ <span class="mj-profile__switch" [class.mj-profile__switch--on]="OmnibarEnabled">
878
845
  <span class="mj-profile__switch-knob"></span>
879
846
  </span>
880
847
  }
881
848
  </div>
882
849
  </button>
883
- }
850
+ </div>
884
851
  </div>
885
852
  }
853
+
854
+ <div class="mj-profile__section">
855
+ <div class="mj-profile__section-head">
856
+ <h4>Notifications</h4>
857
+ @if (UnreadCount > 0) {
858
+ <span class="mj-profile__unread">{{ UnreadCount }} unread</span>
859
+ }
860
+ </div>
861
+ @if (LoadingNotifications) {
862
+ <div class="mj-profile__channels-loading">
863
+ <i class="fa-solid fa-spinner fa-spin"></i> Loading…
864
+ </div>
865
+ } @else {
866
+ <div class="mj-profile__channels">
867
+ @for (ch of Channels; track ch.key) {
868
+ <button type="button"
869
+ class="mj-profile__channel"
870
+ [class.mj-profile__channel--on]="ch.enabled"
871
+ [disabled]="ch.saving"
872
+ (click)="ToggleChannel(ch)">
873
+ <div class="mj-profile__channel-icon"><i [class]="ch.icon"></i></div>
874
+ <div class="mj-profile__channel-label">{{ ch.label }}</div>
875
+ <div class="mj-profile__channel-state">
876
+ @if (ch.saving) {
877
+ <i class="fa-solid fa-spinner fa-spin"></i>
878
+ } @else {
879
+ <span class="mj-profile__switch" [class.mj-profile__switch--on]="ch.enabled">
880
+ <span class="mj-profile__switch-knob"></span>
881
+ </span>
882
+ }
883
+ </div>
884
+ </button>
885
+ }
886
+ </div>
887
+ }
888
+ </div>
886
889
  </div>
887
890
 
888
891
  <div class="mj-profile__footer">
@@ -957,7 +960,7 @@ export class ProfileDialogComponent extends BaseAngularComponent {
957
960
  </div>
958
961
  </div>
959
962
  </div>
960
- `, styles: ["\n:host {\n display: block;\n width: 100%;\n height: 100%;\n}\n.mj-profile {\n display: block;\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n height: 100%;\n min-height: 0;\n position: relative;\n font-family: inherit;\n overflow: hidden;\n}\n.mj-profile__close {\n position: absolute;\n top: 12px; right: 12px;\n width: 36px; height: 36px;\n border: none; border-radius: 8px;\n background: rgba(255, 255, 255, 0.18);\n backdrop-filter: blur(8px);\n color: #fff;\n cursor: pointer;\n font-size: 16px;\n display: flex; align-items: center; justify-content: center;\n transition: background 0.15s, opacity 0.2s;\n z-index: 4;\n}\n.mj-profile__close:hover { background: rgba(255, 255, 255, 0.3); }\n.mj-profile--panel-open .mj-profile__close { opacity: 0; pointer-events: none; }\n\n/* ============ MAIN VIEW ============ */\n.mj-profile__main {\n display: flex;\n flex-direction: column;\n height: 100%;\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mj-profile--panel-open .mj-profile__main {\n transform: translateX(-12%);\n pointer-events: none;\n}\n\n.mj-profile__hero {\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n padding: 22px 24px 56px;\n position: relative;\n overflow: hidden;\n flex-shrink: 0;\n}\n.mj-profile__hero::before {\n content: '';\n position: absolute;\n inset: -50%;\n background: radial-gradient(circle, rgba(255, 255, 255, 0.10) 0%, transparent 60%);\n animation: mj-profile-rotate 24s linear infinite;\n pointer-events: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .mj-profile__hero::before { animation: none; }\n}\n@keyframes mj-profile-rotate { to { transform: rotate(360deg); } }\n\n.mj-profile__hero-title {\n margin: 0;\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 1.2px;\n opacity: 0.85;\n position: relative;\n z-index: 1;\n}\n\n.mj-profile__avatar-zone {\n position: relative;\n width: 96px;\n height: 96px;\n margin: -48px auto 12px;\n z-index: 2;\n}\n.mj-profile__avatar {\n width: 96px;\n height: 96px;\n border-radius: 50%;\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 32px;\n font-weight: 700;\n border: 4px solid var(--mj-bg-surface);\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);\n object-fit: cover;\n overflow: hidden;\n}\nimg.mj-profile__avatar { background: var(--mj-bg-surface-card); }\n.mj-profile__avatar--icon i { font-size: 36px; }\n\n.mj-profile__avatar-edit {\n position: absolute;\n bottom: 2px; right: 2px;\n width: 30px; height: 30px;\n border-radius: 50%;\n background: var(--mj-bg-surface);\n color: var(--mj-brand-primary);\n border: 2px solid var(--mj-bg-surface);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 12px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);\n transition: transform 0.15s;\n}\n.mj-profile__avatar-edit:hover { transform: scale(1.1); }\n\n.mj-profile__identity {\n text-align: center;\n padding: 0 24px 16px;\n flex-shrink: 0;\n}\n.mj-profile__name {\n margin: 0 0 4px;\n font-size: 22px;\n font-weight: 700;\n letter-spacing: -0.4px;\n color: var(--mj-text-primary);\n}\n.mj-profile__email {\n margin: 0 0 12px;\n color: var(--mj-text-muted);\n font-size: 13px;\n word-break: break-all;\n}\n.mj-profile__chips {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n justify-content: center;\n}\n.mj-profile__chip {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 9px;\n border-radius: 100px;\n font-size: 11px;\n font-weight: 600;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__chip--admin {\n background: color-mix(in srgb, #f59e0b 14%, transparent);\n color: #b45309;\n}\n.mj-profile__chip--dev {\n background: color-mix(in srgb, #10b981 14%, transparent);\n color: #047857;\n}\n\n.mj-profile__field-list {\n padding: 0 24px;\n flex-shrink: 0;\n}\n.mj-profile__field {\n display: flex;\n align-items: center;\n padding: 12px 0;\n gap: 14px;\n border-top: 1px solid var(--mj-border-subtle);\n width: 100%;\n text-align: left;\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n color: inherit;\n}\n.mj-profile__field:first-child { border-top: none; }\n.mj-profile__field--button {\n cursor: pointer;\n transition: background 0.12s;\n margin: 0 -8px;\n padding-left: 8px;\n padding-right: 8px;\n border-radius: 8px;\n border-top: none;\n}\n.mj-profile__field--button + .mj-profile__field--button { margin-top: 0; }\n.mj-profile__field--button:hover { background: var(--mj-bg-surface-hover); }\n.mj-profile__field--button:hover .mj-profile__field-chev { color: var(--mj-brand-primary); }\n.mj-profile__field-icon {\n width: 32px; height: 32px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 8px;\n color: var(--mj-text-secondary);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n flex-shrink: 0;\n}\n.mj-profile__field-body { flex: 1; min-width: 0; }\n.mj-profile__field-label {\n font-size: 10.5px;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.5px;\n}\n.mj-profile__field-value {\n font-size: 13px;\n color: var(--mj-text-primary);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__field-muted { color: var(--mj-text-muted); }\n.mj-profile__field-chev {\n color: var(--mj-text-muted);\n font-size: 11px;\n transition: color 0.15s;\n}\n\n.mj-profile__section {\n padding: 16px 24px 8px;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n.mj-profile__section-head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.mj-profile__section-head h4 {\n margin: 0;\n font-size: 11px;\n font-weight: 700;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.6px;\n}\n.mj-profile__unread {\n font-size: 11px;\n font-weight: 600;\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n padding: 2px 8px;\n border-radius: 100px;\n}\n.mj-profile__channels-loading {\n color: var(--mj-text-muted);\n font-size: 12.5px;\n padding: 12px;\n text-align: center;\n}\n.mj-profile__channels {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__channel {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n text-align: left;\n width: 100%;\n}\n.mj-profile__channel:hover:not(:disabled) {\n border-color: var(--mj-border-default);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__channel:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__channel-icon {\n width: 32px; height: 32px;\n border-radius: 8px;\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n flex-shrink: 0;\n transition: all 0.15s;\n}\n.mj-profile__channel--on .mj-profile__channel-icon {\n background: color-mix(in srgb, var(--mj-brand-primary) 14%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__channel-label {\n flex: 1;\n font-size: 13.5px;\n font-weight: 500;\n color: var(--mj-text-primary);\n}\n.mj-profile__channel-hint {\n font-size: 11.5px;\n font-weight: 400;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n.mj-profile__channel-state {\n flex-shrink: 0;\n color: var(--mj-text-muted);\n font-size: 13px;\n min-width: 36px;\n display: flex; justify-content: flex-end; align-items: center;\n}\n\n.mj-profile__switch {\n width: 36px;\n height: 20px;\n background: var(--mj-border-strong);\n border-radius: 100px;\n position: relative;\n transition: background 0.2s;\n display: inline-block;\n}\n.mj-profile__switch-knob {\n position: absolute;\n top: 2px; left: 2px;\n width: 16px; height: 16px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n.mj-profile__switch--on { background: var(--mj-brand-primary); }\n.mj-profile__switch--on .mj-profile__switch-knob { transform: translateX(16px); }\n\n.mj-profile__footer {\n border-top: 1px solid var(--mj-border-subtle);\n padding: 14px 20px;\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n.mj-profile__spacer { flex: 1; }\n.mj-profile__btn {\n padding: 9px 16px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n transition: all 0.15s;\n}\n.mj-profile__btn:hover { background: var(--mj-bg-surface-hover); border-color: var(--mj-border-strong); }\n.mj-profile__btn--primary {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border-color: var(--mj-brand-primary);\n}\n.mj-profile__btn--primary:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n}\n.mj-profile__btn--danger {\n color: var(--mj-status-error);\n border-color: color-mix(in srgb, var(--mj-status-error) 30%, var(--mj-border-default));\n}\n.mj-profile__btn--danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 8%, transparent);\n border-color: var(--mj-status-error);\n}\n\n/* ============ SLIDE-IN PANEL ============ */\n.mj-profile__panel {\n position: absolute;\n inset: 0;\n background: var(--mj-bg-surface);\n transform: translateX(100%);\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n display: flex;\n flex-direction: column;\n z-index: 3;\n}\n.mj-profile__panel--open {\n transform: translateX(0);\n box-shadow: -8px 0 24px rgba(0, 0, 0, 0.06);\n}\n.mj-profile__panel-header {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 14px 18px;\n border-bottom: 1px solid var(--mj-border-subtle);\n background: var(--mj-bg-surface-card);\n flex-shrink: 0;\n}\n.mj-profile__panel-back {\n width: 34px; height: 34px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.mj-profile__panel-back:hover {\n background: var(--mj-bg-surface-hover);\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n}\n.mj-profile__panel-title {\n margin: 0;\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n letter-spacing: -0.2px;\n}\n.mj-profile__panel-body {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: 16px 20px 20px;\n}\n\n/* Theme picker */\n.mj-profile__themes {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__theme {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 12px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n text-align: left;\n width: 100%;\n font-family: inherit;\n}\n.mj-profile__theme:hover:not(:disabled) {\n border-color: var(--mj-brand-primary);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__theme:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__theme--active {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface-card));\n}\n.mj-profile__theme-swatch {\n width: 40px; height: 40px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n flex-shrink: 0;\n border: 1px solid var(--mj-border-default);\n}\n.mj-profile__theme-swatch--light {\n background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);\n color: #f59e0b;\n}\n.mj-profile__theme-swatch--dark {\n background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);\n color: #94a3b8;\n border-color: #334155;\n}\n.mj-profile__theme-swatch--system {\n background: linear-gradient(135deg, #ffffff 0%, #ffffff 49%, #1e293b 51%, #0f172a 100%);\n color: var(--mj-text-secondary);\n}\n.mj-profile__theme-info { flex: 1; min-width: 0; }\n.mj-profile__theme-name {\n font-size: 13.5px;\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n.mj-profile__theme-desc {\n font-size: 11.5px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__theme-check {\n color: var(--mj-brand-primary);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n/* Starred brand themes shown inline in the theme list */\n.mj-profile__theme-sep {\n font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;\n color: var(--mj-text-muted); padding: 6px 4px 2px; margin-top: 6px;\n}\n.mj-profile__brand-swatch {\n display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0;\n}\n.mj-profile__brand-swatch i {\n width: 33%; height: 100%; display: block;\n}\n\n@media (max-width: 480px) {\n .mj-profile__hero { padding: 20px 18px 48px; }\n .mj-profile__avatar-zone { width: 88px; height: 88px; margin-top: -44px; }\n .mj-profile__avatar { width: 88px; height: 88px; font-size: 28px; }\n .mj-profile__name { font-size: 19px; }\n .mj-profile__field-list,\n .mj-profile__section { padding-left: 18px; padding-right: 18px; }\n .mj-profile__footer { padding: 12px 16px; }\n .mj-profile--panel-open .mj-profile__main { transform: translateX(-20%); }\n .mj-profile__panel-body { padding: 14px 16px 16px; }\n}\n "] }]
963
+ `, styles: ["\n:host {\n display: block;\n width: 100%;\n height: 100%;\n}\n/* A flex column, so the dialog's height bound reaches the one scroll region inside the card.\n\n ProfileDialogService opens the dialog with a width and no height, so .mj-dialog-container is\n height:auto with max-height:90vh, and every box between it and this card is a shrinkable flex item\n (.mj-dialog-body and the host div inside it, both min-height:0). That chain already bounds the card\n at 90vh. What it could not bound was .mj-profile__main: while this element was display:block,\n __main's height:100% had nothing definite to resolve against, so it computed to auto, grew to its\n full content, and overflow:hidden here clipped the bottom of the card -- notification channels,\n footer, Sign out -- with nothing left to scroll. The same shape #4351 fixed for the user menu, one\n layer out.\n\n The flex chain is the fix: display:flex here, flex:1 + min-height:0 on __main, and flex:1 +\n min-height:0 + overflow-y:auto on __scroll. Flex hands the bounded height down; a percentage could\n not. Do not trade it for a max-height -- a max-height gives no child percentage a definite size to\n resolve against, so the clip would come back.\n\n max-height:100dvh (100vh first, for engines without dvh) is only a backstop. On desktop it never\n binds: the container's 90vh is tighter. It can bind on a phone (<768px wide), where the dialog\n forces the container to height:100vh and a mobile browser's dynamic toolbar can make 100dvh\n shorter. A max-height can only shorten the card, so there it can only lift the footer, never\n push it down. */\n.mj-profile {\n display: flex;\n flex-direction: column;\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n height: 100%;\n max-height: 100vh;\n max-height: 100dvh;\n min-height: 0;\n position: relative;\n font-family: inherit;\n overflow: hidden;\n}\n.mj-profile__close {\n position: absolute;\n top: 12px; right: 12px;\n width: 36px; height: 36px;\n border: none; border-radius: 8px;\n background: rgba(255, 255, 255, 0.18);\n backdrop-filter: blur(8px);\n color: #fff;\n cursor: pointer;\n font-size: 16px;\n display: flex; align-items: center; justify-content: center;\n transition: background 0.15s, opacity 0.2s;\n z-index: 4;\n}\n.mj-profile__close:hover { background: rgba(255, 255, 255, 0.3); }\n.mj-profile--panel-open .mj-profile__close { opacity: 0; pointer-events: none; }\n\n/* ============ MAIN VIEW ============ */\n/* flex:1 with min-height:0 rather than height:100%: the card is a flex column, so this takes the\n card's bounded height, and min-height:0 lets it shrink below its content -- without it a flex\n item's automatic minimum size refuses to, and __scroll would never be short enough to scroll. */\n.mj-profile__main {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mj-profile--panel-open .mj-profile__main {\n transform: translateX(-12%);\n pointer-events: none;\n}\n\n.mj-profile__hero {\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n padding: 22px 24px 56px;\n position: relative;\n overflow: hidden;\n flex-shrink: 0;\n}\n.mj-profile__hero::before {\n content: '';\n position: absolute;\n inset: -50%;\n background: radial-gradient(circle, rgba(255, 255, 255, 0.10) 0%, transparent 60%);\n animation: mj-profile-rotate 24s linear infinite;\n pointer-events: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .mj-profile__hero::before { animation: none; }\n}\n@keyframes mj-profile-rotate { to { transform: rotate(360deg); } }\n\n.mj-profile__hero-title {\n margin: 0;\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 1.2px;\n opacity: 0.85;\n position: relative;\n z-index: 1;\n}\n\n.mj-profile__avatar-zone {\n position: relative;\n width: 96px;\n height: 96px;\n margin: -48px auto 12px;\n z-index: 2;\n}\n.mj-profile__avatar {\n width: 96px;\n height: 96px;\n border-radius: 50%;\n background: linear-gradient(135deg, #264FAF 0%, #0076b6 100%);\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 32px;\n font-weight: 700;\n border: 4px solid var(--mj-bg-surface);\n box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);\n object-fit: cover;\n overflow: hidden;\n}\nimg.mj-profile__avatar { background: var(--mj-bg-surface-card); }\n.mj-profile__avatar--icon i { font-size: 36px; }\n\n.mj-profile__avatar-edit {\n position: absolute;\n bottom: 2px; right: 2px;\n width: 30px; height: 30px;\n border-radius: 50%;\n background: var(--mj-bg-surface);\n color: var(--mj-brand-primary);\n border: 2px solid var(--mj-bg-surface);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 12px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);\n transition: transform 0.15s;\n}\n.mj-profile__avatar-edit:hover { transform: scale(1.1); }\n\n.mj-profile__identity {\n text-align: center;\n padding: 0 24px 16px;\n flex-shrink: 0;\n}\n.mj-profile__name {\n margin: 0 0 4px;\n font-size: 22px;\n font-weight: 700;\n letter-spacing: -0.4px;\n color: var(--mj-text-primary);\n}\n.mj-profile__email {\n margin: 0 0 12px;\n color: var(--mj-text-muted);\n font-size: 13px;\n word-break: break-all;\n}\n.mj-profile__chips {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n justify-content: center;\n}\n.mj-profile__chip {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 9px;\n border-radius: 100px;\n font-size: 11px;\n font-weight: 600;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__chip--admin {\n background: color-mix(in srgb, #f59e0b 14%, transparent);\n color: #b45309;\n}\n.mj-profile__chip--dev {\n background: color-mix(in srgb, #10b981 14%, transparent);\n color: #047857;\n}\n\n/* The only flex-grow and the only scroller in __main. Hero, avatar, identity and footer hold their\n size; this takes whatever height they leave and scrolls the settings rows inside it. One region,\n not one per section: peer scrollers split the leftover height between them and each shrinks to\n its own padding on a short window. */\n.mj-profile__scroll {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.mj-profile__field-list {\n padding: 0 24px;\n}\n.mj-profile__field {\n display: flex;\n align-items: center;\n padding: 12px 0;\n gap: 14px;\n border-top: 1px solid var(--mj-border-subtle);\n width: 100%;\n text-align: left;\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n color: inherit;\n}\n.mj-profile__field:first-child { border-top: none; }\n.mj-profile__field--button {\n cursor: pointer;\n transition: background 0.12s;\n margin: 0 -8px;\n padding-left: 8px;\n padding-right: 8px;\n border-radius: 8px;\n border-top: none;\n}\n.mj-profile__field--button + .mj-profile__field--button { margin-top: 0; }\n.mj-profile__field--button:hover { background: var(--mj-bg-surface-hover); }\n.mj-profile__field--button:hover .mj-profile__field-chev { color: var(--mj-brand-primary); }\n.mj-profile__field-icon {\n width: 32px; height: 32px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 8px;\n color: var(--mj-text-secondary);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n flex-shrink: 0;\n}\n.mj-profile__field-body { flex: 1; min-width: 0; }\n.mj-profile__field-label {\n font-size: 10.5px;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n font-weight: 600;\n letter-spacing: 0.5px;\n}\n.mj-profile__field-value {\n font-size: 13px;\n color: var(--mj-text-primary);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__field-muted { color: var(--mj-text-muted); }\n.mj-profile__field-chev {\n color: var(--mj-text-muted);\n font-size: 11px;\n transition: color 0.15s;\n}\n\n.mj-profile__section {\n padding: 16px 24px 8px;\n}\n.mj-profile__section-head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.mj-profile__section-head h4 {\n margin: 0;\n font-size: 11px;\n font-weight: 700;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.6px;\n}\n.mj-profile__unread {\n font-size: 11px;\n font-weight: 600;\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n padding: 2px 8px;\n border-radius: 100px;\n}\n.mj-profile__channels-loading {\n color: var(--mj-text-muted);\n font-size: 12.5px;\n padding: 12px;\n text-align: center;\n}\n.mj-profile__channels {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__channel {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n font-family: inherit;\n text-align: left;\n width: 100%;\n}\n.mj-profile__channel:hover:not(:disabled) {\n border-color: var(--mj-border-default);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__channel:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__channel-icon {\n width: 32px; height: 32px;\n border-radius: 8px;\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n flex-shrink: 0;\n transition: all 0.15s;\n}\n.mj-profile__channel--on .mj-profile__channel-icon {\n background: color-mix(in srgb, var(--mj-brand-primary) 14%, transparent);\n color: var(--mj-brand-primary);\n}\n.mj-profile__channel-label {\n flex: 1;\n font-size: 13.5px;\n font-weight: 500;\n color: var(--mj-text-primary);\n}\n.mj-profile__channel-hint {\n font-size: 11.5px;\n font-weight: 400;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n.mj-profile__channel-state {\n flex-shrink: 0;\n color: var(--mj-text-muted);\n font-size: 13px;\n min-width: 36px;\n display: flex; justify-content: flex-end; align-items: center;\n}\n\n.mj-profile__switch {\n width: 36px;\n height: 20px;\n background: var(--mj-border-strong);\n border-radius: 100px;\n position: relative;\n transition: background 0.2s;\n display: inline-block;\n}\n.mj-profile__switch-knob {\n position: absolute;\n top: 2px; left: 2px;\n width: 16px; height: 16px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n.mj-profile__switch--on { background: var(--mj-brand-primary); }\n.mj-profile__switch--on .mj-profile__switch-knob { transform: translateX(16px); }\n\n.mj-profile__footer {\n border-top: 1px solid var(--mj-border-subtle);\n padding: 14px 20px;\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n.mj-profile__spacer { flex: 1; }\n.mj-profile__btn {\n padding: 9px 16px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n font-family: inherit;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n transition: all 0.15s;\n}\n.mj-profile__btn:hover { background: var(--mj-bg-surface-hover); border-color: var(--mj-border-strong); }\n.mj-profile__btn--primary {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n border-color: var(--mj-brand-primary);\n}\n.mj-profile__btn--primary:hover {\n background: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 88%, black);\n}\n.mj-profile__btn--danger {\n color: var(--mj-status-error);\n border-color: color-mix(in srgb, var(--mj-status-error) 30%, var(--mj-border-default));\n}\n.mj-profile__btn--danger:hover {\n background: color-mix(in srgb, var(--mj-status-error) 8%, transparent);\n border-color: var(--mj-status-error);\n}\n\n/* ============ SLIDE-IN PANEL ============ */\n.mj-profile__panel {\n position: absolute;\n inset: 0;\n background: var(--mj-bg-surface);\n transform: translateX(100%);\n transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);\n display: flex;\n flex-direction: column;\n z-index: 3;\n}\n.mj-profile__panel--open {\n transform: translateX(0);\n box-shadow: -8px 0 24px rgba(0, 0, 0, 0.06);\n}\n.mj-profile__panel-header {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 14px 18px;\n border-bottom: 1px solid var(--mj-border-subtle);\n background: var(--mj-bg-surface-card);\n flex-shrink: 0;\n}\n.mj-profile__panel-back {\n width: 34px; height: 34px;\n border-radius: 8px;\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface);\n color: var(--mj-text-primary);\n cursor: pointer;\n display: flex; align-items: center; justify-content: center;\n font-size: 13px;\n transition: all 0.15s;\n font-family: inherit;\n}\n.mj-profile__panel-back:hover {\n background: var(--mj-bg-surface-hover);\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n}\n.mj-profile__panel-title {\n margin: 0;\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n letter-spacing: -0.2px;\n}\n.mj-profile__panel-body {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: 16px 20px 20px;\n}\n\n/* Theme picker */\n.mj-profile__themes {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.mj-profile__theme {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 12px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.15s;\n text-align: left;\n width: 100%;\n font-family: inherit;\n}\n.mj-profile__theme:hover:not(:disabled) {\n border-color: var(--mj-brand-primary);\n background: var(--mj-bg-surface-hover);\n}\n.mj-profile__theme:disabled { cursor: wait; opacity: 0.7; }\n.mj-profile__theme--active {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface-card));\n}\n.mj-profile__theme-swatch {\n width: 40px; height: 40px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n flex-shrink: 0;\n border: 1px solid var(--mj-border-default);\n}\n.mj-profile__theme-swatch--light {\n background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);\n color: #f59e0b;\n}\n.mj-profile__theme-swatch--dark {\n background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);\n color: #94a3b8;\n border-color: #334155;\n}\n.mj-profile__theme-swatch--system {\n background: linear-gradient(135deg, #ffffff 0%, #ffffff 49%, #1e293b 51%, #0f172a 100%);\n color: var(--mj-text-secondary);\n}\n.mj-profile__theme-info { flex: 1; min-width: 0; }\n.mj-profile__theme-name {\n font-size: 13.5px;\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n.mj-profile__theme-desc {\n font-size: 11.5px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.mj-profile__theme-check {\n color: var(--mj-brand-primary);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n/* Starred brand themes shown inline in the theme list */\n.mj-profile__theme-sep {\n font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;\n color: var(--mj-text-muted); padding: 6px 4px 2px; margin-top: 6px;\n}\n.mj-profile__brand-swatch {\n display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0;\n}\n.mj-profile__brand-swatch i {\n width: 33%; height: 100%; display: block;\n}\n\n@media (max-width: 480px) {\n .mj-profile__hero { padding: 20px 18px 48px; }\n .mj-profile__avatar-zone { width: 88px; height: 88px; margin-top: -44px; }\n .mj-profile__avatar { width: 88px; height: 88px; font-size: 28px; }\n .mj-profile__name { font-size: 19px; }\n .mj-profile__field-list,\n .mj-profile__section { padding-left: 18px; padding-right: 18px; }\n .mj-profile__footer { padding: 12px 16px; }\n .mj-profile--panel-open .mj-profile__main { transform: translateX(-20%); }\n .mj-profile__panel-body { padding: 14px 16px 16px; }\n}\n "] }]
961
964
  }], null, { CloseRequested: [{
962
965
  type: Output
963
966
  }], AvatarUrl: [{
@@ -965,5 +968,5 @@ export class ProfileDialogComponent extends BaseAngularComponent {
965
968
  }], AvatarIconClass: [{
966
969
  type: Input
967
970
  }] }); })();
968
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileDialogComponent, { className: "ProfileDialogComponent", filePath: "src/lib/profile/profile-dialog.component.ts", lineNumber: 801 }); })();
971
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileDialogComponent, { className: "ProfileDialogComponent", filePath: "src/lib/profile/profile-dialog.component.ts", lineNumber: 838 }); })();
969
972
  //# sourceMappingURL=profile-dialog.component.js.map