@memberjunction/ng-explorer-core 5.47.0 → 5.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/generated/lazy-feature-config.d.ts +1 -1
  2. package/dist/generated/lazy-feature-config.d.ts.map +1 -1
  3. package/dist/generated/lazy-feature-config.js +132 -128
  4. package/dist/generated/lazy-feature-config.js.map +1 -1
  5. package/dist/lib/omnibar/index.d.ts +15 -0
  6. package/dist/lib/omnibar/index.d.ts.map +1 -0
  7. package/dist/lib/omnibar/index.js +24 -0
  8. package/dist/lib/omnibar/index.js.map +1 -0
  9. package/dist/lib/omnibar/omnibar-palette.component.d.ts +130 -0
  10. package/dist/lib/omnibar/omnibar-palette.component.d.ts.map +1 -0
  11. package/dist/lib/omnibar/omnibar-palette.component.js +838 -0
  12. package/dist/lib/omnibar/omnibar-palette.component.js.map +1 -0
  13. package/dist/lib/omnibar/omnibar-provider.d.ts +94 -0
  14. package/dist/lib/omnibar/omnibar-provider.d.ts.map +1 -0
  15. package/dist/lib/omnibar/omnibar-provider.js +84 -0
  16. package/dist/lib/omnibar/omnibar-provider.js.map +1 -0
  17. package/dist/lib/omnibar/omnibar-shortcut.d.ts +12 -0
  18. package/dist/lib/omnibar/omnibar-shortcut.d.ts.map +1 -0
  19. package/dist/lib/omnibar/omnibar-shortcut.js +16 -0
  20. package/dist/lib/omnibar/omnibar-shortcut.js.map +1 -0
  21. package/dist/lib/omnibar/omnibar-user-setting.d.ts +38 -0
  22. package/dist/lib/omnibar/omnibar-user-setting.d.ts.map +1 -0
  23. package/dist/lib/omnibar/omnibar-user-setting.js +53 -0
  24. package/dist/lib/omnibar/omnibar-user-setting.js.map +1 -0
  25. package/dist/lib/omnibar/providers/omnibar-agent.provider.d.ts +24 -0
  26. package/dist/lib/omnibar/providers/omnibar-agent.provider.d.ts.map +1 -0
  27. package/dist/lib/omnibar/providers/omnibar-agent.provider.js +69 -0
  28. package/dist/lib/omnibar/providers/omnibar-agent.provider.js.map +1 -0
  29. package/dist/lib/omnibar/providers/omnibar-command.provider.d.ts +29 -0
  30. package/dist/lib/omnibar/providers/omnibar-command.provider.d.ts.map +1 -0
  31. package/dist/lib/omnibar/providers/omnibar-command.provider.js +130 -0
  32. package/dist/lib/omnibar/providers/omnibar-command.provider.js.map +1 -0
  33. package/dist/lib/omnibar/providers/omnibar-record.provider.d.ts +35 -0
  34. package/dist/lib/omnibar/providers/omnibar-record.provider.d.ts.map +1 -0
  35. package/dist/lib/omnibar/providers/omnibar-record.provider.js +176 -0
  36. package/dist/lib/omnibar/providers/omnibar-record.provider.js.map +1 -0
  37. package/dist/lib/omnibar/providers/omnibar-search.provider.d.ts +21 -0
  38. package/dist/lib/omnibar/providers/omnibar-search.provider.d.ts.map +1 -0
  39. package/dist/lib/omnibar/providers/omnibar-search.provider.js +94 -0
  40. package/dist/lib/omnibar/providers/omnibar-search.provider.js.map +1 -0
  41. package/dist/lib/profile/profile-dialog.component.d.ts +29 -0
  42. package/dist/lib/profile/profile-dialog.component.d.ts.map +1 -1
  43. package/dist/lib/profile/profile-dialog.component.js +325 -78
  44. package/dist/lib/profile/profile-dialog.component.js.map +1 -1
  45. package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts +16 -0
  46. package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts.map +1 -1
  47. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js +66 -6
  48. package/dist/lib/resource-wrappers/chat-conversations-resource.component.js.map +1 -1
  49. package/dist/lib/resource-wrappers/view-resource.component.d.ts.map +1 -1
  50. package/dist/lib/resource-wrappers/view-resource.component.js +6 -2
  51. package/dist/lib/resource-wrappers/view-resource.component.js.map +1 -1
  52. package/dist/lib/shell/components/tabs/tab-container.component.d.ts +7 -0
  53. package/dist/lib/shell/components/tabs/tab-container.component.d.ts.map +1 -1
  54. package/dist/lib/shell/components/tabs/tab-container.component.js +26 -4
  55. package/dist/lib/shell/components/tabs/tab-container.component.js.map +1 -1
  56. package/dist/lib/shell/shell.component.d.ts +76 -10
  57. package/dist/lib/shell/shell.component.d.ts.map +1 -1
  58. package/dist/lib/shell/shell.component.js +503 -270
  59. package/dist/lib/shell/shell.component.js.map +1 -1
  60. package/dist/lib/shell/shell.module.d.ts +8 -7
  61. package/dist/lib/shell/shell.module.d.ts.map +1 -1
  62. package/dist/lib/shell/shell.module.js +5 -2
  63. package/dist/lib/shell/shell.module.js.map +1 -1
  64. package/dist/lib/single-list-detail/single-list-detail.component.d.ts.map +1 -1
  65. package/dist/lib/single-list-detail/single-list-detail.component.js +39 -27
  66. package/dist/lib/single-list-detail/single-list-detail.component.js.map +1 -1
  67. package/dist/public-api.d.ts +1 -0
  68. package/dist/public-api.d.ts.map +1 -1
  69. package/dist/public-api.js +2 -0
  70. package/dist/public-api.js.map +1 -1
  71. package/package.json +52 -50
@@ -1,11 +1,14 @@
1
1
  import { Component, EventEmitter, Input, Output, ChangeDetectorRef, inject } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
+ import { RunView } from '@memberjunction/core';
3
4
  import { UUIDsEqual } from '@memberjunction/global';
4
5
  import { UserInfoEngine } from '@memberjunction/core-entities';
5
6
  import { MJAuthBase } from '@memberjunction/ng-auth-services';
6
7
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
7
8
  import { ThemeService, SharedService } from '@memberjunction/ng-shared';
8
9
  import { ExplorerSettingsModule } from '@memberjunction/ng-explorer-settings';
10
+ import { IsOmnibarAvailable, IsOmnibarEnabledForUser, OMNIBAR_USER_SETTING_KEY } from '../omnibar/omnibar-user-setting';
11
+ import { GetOmnibarShortcutLabel } from '../omnibar/omnibar-shortcut';
9
12
  import * as i0 from "@angular/core";
10
13
  import * as i1 from "@memberjunction/ng-explorer-settings";
11
14
  const _forTrack0 = ($index, $item) => $item.label;
@@ -75,7 +78,46 @@ function ProfileDialogComponent_Conditional_28_Template(rf, ctx) { if (rf & 1) {
75
78
  i0.ɵɵadvance();
76
79
  i0.ɵɵtextInterpolate1(" \u00B7 ", ctx_r1.MemberSince);
77
80
  } }
78
- function ProfileDialogComponent_Conditional_42_Template(rf, ctx) { if (rf & 1) {
81
+ function ProfileDialogComponent_Conditional_38_Conditional_13_Template(rf, ctx) { if (rf & 1) {
82
+ i0.ɵɵelement(0, "i", 54);
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);
87
+ i0.ɵɵelementEnd();
88
+ } if (rf & 2) {
89
+ const ctx_r1 = i0.ɵɵnextContext(2);
90
+ i0.ɵɵclassProp("mj-profile__switch--on", ctx_r1.OmnibarEnabled);
91
+ } }
92
+ function ProfileDialogComponent_Conditional_38_Template(rf, ctx) { if (rf & 1) {
93
+ const _r4 = i0.ɵɵgetCurrentView();
94
+ i0.ɵɵelementStart(0, "div", 27)(1, "div", 28)(2, "h4");
95
+ i0.ɵɵtext(3, "Command Palette");
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);
101
+ i0.ɵɵelementEnd();
102
+ i0.ɵɵelementStart(8, "div", 51);
103
+ i0.ɵɵtext(9, " Unified command palette ");
104
+ i0.ɵɵelementStart(10, "div", 52);
105
+ i0.ɵɵtext(11);
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);
109
+ i0.ɵɵelementEnd()()()();
110
+ } if (rf & 2) {
111
+ const ctx_r1 = i0.ɵɵnextContext();
112
+ i0.ɵɵadvance(5);
113
+ i0.ɵɵclassProp("mj-profile__channel--on", ctx_r1.OmnibarEnabled);
114
+ i0.ɵɵproperty("disabled", ctx_r1.SavingOmnibar);
115
+ i0.ɵɵadvance(6);
116
+ i0.ɵɵtextInterpolate1("", ctx_r1.OmnibarShortcutLabel, " \u2014 search, records, agents & commands in one bar");
117
+ i0.ɵɵadvance(2);
118
+ i0.ɵɵconditional(ctx_r1.SavingOmnibar ? 13 : 14);
119
+ } }
120
+ function ProfileDialogComponent_Conditional_43_Template(rf, ctx) { if (rf & 1) {
79
121
  i0.ɵɵelementStart(0, "span", 29);
80
122
  i0.ɵɵtext(1);
81
123
  i0.ɵɵelementEnd();
@@ -84,112 +126,157 @@ function ProfileDialogComponent_Conditional_42_Template(rf, ctx) { if (rf & 1) {
84
126
  i0.ɵɵadvance();
85
127
  i0.ɵɵtextInterpolate1("", ctx_r1.UnreadCount, " unread");
86
128
  } }
87
- function ProfileDialogComponent_Conditional_43_Template(rf, ctx) { if (rf & 1) {
129
+ function ProfileDialogComponent_Conditional_44_Template(rf, ctx) { if (rf & 1) {
88
130
  i0.ɵɵelementStart(0, "div", 30);
89
- i0.ɵɵelement(1, "i", 48);
131
+ i0.ɵɵelement(1, "i", 54);
90
132
  i0.ɵɵtext(2, " Loading\u2026 ");
91
133
  i0.ɵɵelementEnd();
92
134
  } }
93
- function ProfileDialogComponent_Conditional_44_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
94
- i0.ɵɵelement(0, "i", 48);
135
+ function ProfileDialogComponent_Conditional_45_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
136
+ i0.ɵɵelement(0, "i", 54);
95
137
  } }
96
- function ProfileDialogComponent_Conditional_44_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
97
- i0.ɵɵelementStart(0, "span", 55);
98
- i0.ɵɵelement(1, "span", 56);
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);
99
141
  i0.ɵɵelementEnd();
100
142
  } if (rf & 2) {
101
- const ch_r5 = i0.ɵɵnextContext().$implicit;
102
- i0.ɵɵclassProp("mj-profile__switch--on", ch_r5.enabled);
143
+ const ch_r6 = i0.ɵɵnextContext().$implicit;
144
+ i0.ɵɵclassProp("mj-profile__switch--on", ch_r6.enabled);
103
145
  } }
104
- function ProfileDialogComponent_Conditional_44_For_2_Template(rf, ctx) { if (rf & 1) {
105
- const _r4 = i0.ɵɵgetCurrentView();
106
- i0.ɵɵelementStart(0, "button", 50);
107
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_44_For_2_Template_button_click_0_listener() { const ch_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.ToggleChannel(ch_r5)); });
108
- i0.ɵɵelementStart(1, "div", 51);
146
+ function ProfileDialogComponent_Conditional_45_For_2_Template(rf, ctx) { if (rf & 1) {
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);
109
151
  i0.ɵɵelement(2, "i");
110
152
  i0.ɵɵelementEnd();
111
- i0.ɵɵelementStart(3, "div", 52);
153
+ i0.ɵɵelementStart(3, "div", 51);
112
154
  i0.ɵɵtext(4);
113
155
  i0.ɵɵelementEnd();
114
156
  i0.ɵɵelementStart(5, "div", 53);
115
- i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_44_For_2_Conditional_6_Template, 1, 0, "i", 48)(7, ProfileDialogComponent_Conditional_44_For_2_Conditional_7_Template, 2, 2, "span", 54);
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);
116
158
  i0.ɵɵelementEnd()();
117
159
  } if (rf & 2) {
118
- const ch_r5 = ctx.$implicit;
119
- i0.ɵɵclassProp("mj-profile__channel--on", ch_r5.enabled);
120
- i0.ɵɵproperty("disabled", ch_r5.saving);
160
+ const ch_r6 = ctx.$implicit;
161
+ i0.ɵɵclassProp("mj-profile__channel--on", ch_r6.enabled);
162
+ i0.ɵɵproperty("disabled", ch_r6.saving);
121
163
  i0.ɵɵadvance(2);
122
- i0.ɵɵclassMap(ch_r5.icon);
164
+ i0.ɵɵclassMap(ch_r6.icon);
123
165
  i0.ɵɵadvance(2);
124
- i0.ɵɵtextInterpolate(ch_r5.label);
166
+ i0.ɵɵtextInterpolate(ch_r6.label);
125
167
  i0.ɵɵadvance(2);
126
- i0.ɵɵconditional(ch_r5.saving ? 6 : 7);
168
+ i0.ɵɵconditional(ch_r6.saving ? 6 : 7);
127
169
  } }
128
- function ProfileDialogComponent_Conditional_44_Template(rf, ctx) { if (rf & 1) {
170
+ function ProfileDialogComponent_Conditional_45_Template(rf, ctx) { if (rf & 1) {
129
171
  i0.ɵɵelementStart(0, "div", 31);
130
- i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_44_For_2_Template, 8, 7, "button", 49, _forTrack1);
172
+ i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_45_For_2_Template, 8, 7, "button", 58, _forTrack1);
131
173
  i0.ɵɵelementEnd();
132
174
  } if (rf & 2) {
133
175
  const ctx_r1 = i0.ɵɵnextContext();
134
176
  i0.ɵɵadvance();
135
177
  i0.ɵɵrepeater(ctx_r1.Channels);
136
178
  } }
137
- function ProfileDialogComponent_Conditional_59_Template(rf, ctx) { if (rf & 1) {
179
+ function ProfileDialogComponent_Conditional_60_Template(rf, ctx) { if (rf & 1) {
138
180
  i0.ɵɵelement(0, "mj-user-profile-settings");
139
181
  } }
140
- function ProfileDialogComponent_Conditional_60_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
141
- i0.ɵɵelementStart(0, "div", 62);
182
+ function ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
183
+ i0.ɵɵelementStart(0, "div", 65);
142
184
  i0.ɵɵtext(1);
143
185
  i0.ɵɵelementEnd();
144
186
  } if (rf & 2) {
145
- const theme_r7 = i0.ɵɵnextContext().$implicit;
187
+ const theme_r8 = i0.ɵɵnextContext().$implicit;
146
188
  i0.ɵɵadvance();
147
- i0.ɵɵtextInterpolate(theme_r7.description);
189
+ i0.ɵɵtextInterpolate(theme_r8.description);
148
190
  } }
149
- function ProfileDialogComponent_Conditional_60_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
150
- i0.ɵɵelement(0, "i", 63);
191
+ function ProfileDialogComponent_Conditional_61_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
192
+ i0.ɵɵelement(0, "i", 66);
151
193
  } }
152
- function ProfileDialogComponent_Conditional_60_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
153
- i0.ɵɵelement(0, "i", 64);
194
+ function ProfileDialogComponent_Conditional_61_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
195
+ i0.ɵɵelement(0, "i", 67);
154
196
  } }
155
- function ProfileDialogComponent_Conditional_60_For_2_Template(rf, ctx) { if (rf & 1) {
156
- const _r6 = i0.ɵɵgetCurrentView();
157
- i0.ɵɵelementStart(0, "button", 58);
158
- i0.ɵɵlistener("click", function ProfileDialogComponent_Conditional_60_For_2_Template_button_click_0_listener() { const theme_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.SelectTheme(theme_r7.id)); });
159
- i0.ɵɵelementStart(1, "div", 59);
197
+ function ProfileDialogComponent_Conditional_61_For_2_Template(rf, ctx) { if (rf & 1) {
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);
160
202
  i0.ɵɵelement(2, "i");
161
203
  i0.ɵɵelementEnd();
162
- i0.ɵɵelementStart(3, "div", 60)(4, "div", 61);
204
+ i0.ɵɵelementStart(3, "div", 63)(4, "div", 64);
163
205
  i0.ɵɵtext(5);
164
206
  i0.ɵɵelementEnd();
165
- i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_60_For_2_Conditional_6_Template, 2, 1, "div", 62);
207
+ i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template, 2, 1, "div", 65);
166
208
  i0.ɵɵelementEnd();
167
- i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_60_For_2_Conditional_7_Template, 1, 0, "i", 63)(8, ProfileDialogComponent_Conditional_60_For_2_Conditional_8_Template, 1, 0, "i", 64);
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);
168
210
  i0.ɵɵelementEnd();
169
211
  } if (rf & 2) {
170
- const theme_r7 = ctx.$implicit;
212
+ const theme_r8 = ctx.$implicit;
171
213
  const ctx_r1 = i0.ɵɵnextContext(2);
172
- i0.ɵɵclassProp("mj-profile__theme--active", theme_r7.id === ctx_r1.ThemePreference)("mj-profile__theme--saving", ctx_r1.SavingTheme === theme_r7.id);
214
+ i0.ɵɵclassProp("mj-profile__theme--active", theme_r8.id === ctx_r1.ThemePreference)("mj-profile__theme--saving", ctx_r1.SavingTheme === theme_r8.id);
173
215
  i0.ɵɵproperty("disabled", !!ctx_r1.SavingTheme);
174
216
  i0.ɵɵadvance();
175
- i0.ɵɵclassMap("mj-profile__theme-swatch--" + theme_r7.swatch);
217
+ i0.ɵɵclassMap("mj-profile__theme-swatch--" + theme_r8.swatch);
176
218
  i0.ɵɵadvance();
177
- i0.ɵɵclassMap(theme_r7.icon);
219
+ i0.ɵɵclassMap(theme_r8.icon);
178
220
  i0.ɵɵadvance(3);
179
- i0.ɵɵtextInterpolate(theme_r7.name);
221
+ i0.ɵɵtextInterpolate(theme_r8.name);
180
222
  i0.ɵɵadvance();
181
- i0.ɵɵconditional(theme_r7.description ? 6 : -1);
223
+ i0.ɵɵconditional(theme_r8.description ? 6 : -1);
182
224
  i0.ɵɵadvance();
183
- i0.ɵɵconditional(ctx_r1.SavingTheme === theme_r7.id ? 7 : theme_r7.id === ctx_r1.ThemePreference ? 8 : -1);
225
+ i0.ɵɵconditional(ctx_r1.SavingTheme === theme_r8.id ? 7 : theme_r8.id === ctx_r1.ThemePreference ? 8 : -1);
184
226
  } }
185
- function ProfileDialogComponent_Conditional_60_Template(rf, ctx) { if (rf & 1) {
227
+ function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_For_3_Template(rf, ctx) { if (rf & 1) {
228
+ i0.ɵɵelement(0, "i");
229
+ } if (rf & 2) {
230
+ const c_r11 = ctx.$implicit;
231
+ i0.ɵɵstyleProp("background", c_r11);
232
+ } }
233
+ function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Conditional_7_Template(rf, ctx) { if (rf & 1) {
234
+ i0.ɵɵelement(0, "i", 67);
235
+ } }
236
+ function ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template(rf, ctx) { if (rf & 1) {
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);
242
+ i0.ɵɵelementEnd();
243
+ i0.ɵɵelementStart(4, "div", 63)(5, "div", 64);
244
+ i0.ɵɵtext(6);
245
+ i0.ɵɵelementEnd()();
246
+ i0.ɵɵconditionalCreate(7, ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Conditional_7_Template, 1, 0, "i", 67);
247
+ i0.ɵɵelementEnd();
248
+ } if (rf & 2) {
249
+ const t_r10 = ctx.$implicit;
250
+ const ctx_r1 = i0.ɵɵnextContext(3);
251
+ i0.ɵɵclassProp("mj-profile__theme--active", ctx_r1.IsAppliedBrand(t_r10.id));
252
+ i0.ɵɵadvance(2);
253
+ i0.ɵɵrepeater(t_r10.swatches);
254
+ i0.ɵɵadvance(4);
255
+ i0.ɵɵtextInterpolate(t_r10.name);
256
+ i0.ɵɵadvance();
257
+ i0.ɵɵconditional(ctx_r1.IsAppliedBrand(t_r10.id) ? 7 : -1);
258
+ } }
259
+ function ProfileDialogComponent_Conditional_61_Conditional_3_Template(rf, ctx) { if (rf & 1) {
260
+ i0.ɵɵelementStart(0, "div", 68);
261
+ i0.ɵɵtext(1, "Brand themes");
262
+ i0.ɵɵelementEnd();
263
+ i0.ɵɵrepeaterCreate(2, ProfileDialogComponent_Conditional_61_Conditional_3_For_3_Template, 8, 4, "button", 69, _forTrack2);
264
+ } if (rf & 2) {
265
+ const ctx_r1 = i0.ɵɵnextContext(2);
266
+ i0.ɵɵadvance(2);
267
+ i0.ɵɵrepeater(ctx_r1.StarredThemes);
268
+ } }
269
+ function ProfileDialogComponent_Conditional_61_Template(rf, ctx) { if (rf & 1) {
186
270
  i0.ɵɵelementStart(0, "div", 43);
187
- i0.ɵɵrepeaterCreate(1, ProfileDialogComponent_Conditional_60_For_2_Template, 9, 12, "button", 57, _forTrack2);
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);
188
273
  i0.ɵɵelementEnd();
189
274
  } if (rf & 2) {
190
275
  const ctx_r1 = i0.ɵɵnextContext();
191
276
  i0.ɵɵadvance();
192
277
  i0.ɵɵrepeater(ctx_r1.ThemeOptions);
278
+ i0.ɵɵadvance(2);
279
+ i0.ɵɵconditional(ctx_r1.StarredThemes.length ? 3 : -1);
193
280
  } }
194
281
  /**
195
282
  * "Identity Card" profile dialog with slide-in detail panels for editing
@@ -215,11 +302,29 @@ export class ProfileDialogComponent extends BaseAngularComponent {
215
302
  { key: 'SMS', label: 'SMS', icon: 'fa-solid fa-mobile', enabled: false, saving: false }
216
303
  ];
217
304
  UnreadCount = 0;
305
+ // Omnibar per-user opt-in (shown only when the instance makes it available)
306
+ OmnibarAvailable = false;
307
+ OmnibarEnabled = false;
308
+ SavingOmnibar = false;
309
+ /** Platform-correct summon-shortcut label ('⌘K' on Mac, 'Ctrl+K' elsewhere). */
310
+ get OmnibarShortcutLabel() {
311
+ return GetOmnibarShortcutLabel();
312
+ }
218
313
  // Slide-in panel state
219
314
  ActivePanel = 'none';
220
315
  ThemeOptions = [];
221
316
  ThemePreference = '';
222
317
  SavingTheme = null;
318
+ // Starred brand themes shown inline in the theme list
319
+ StarredThemes = [];
320
+ get AppliedBrandId() {
321
+ return this.themeService.BrandOverlayId;
322
+ }
323
+ /** Whether a theme id is the applied brand overlay (case-insensitive GUID compare). */
324
+ IsAppliedBrand(id) {
325
+ const active = this.themeService.BrandOverlayId;
326
+ return !!active && UUIDsEqual(id, active);
327
+ }
223
328
  get PanelTitle() {
224
329
  switch (this.ActivePanel) {
225
330
  case 'photo': return 'Profile photo';
@@ -236,6 +341,8 @@ export class ProfileDialogComponent extends BaseAngularComponent {
236
341
  this.populateIdentity();
237
342
  this.populateThemeOptions();
238
343
  this.loadNotifications();
344
+ this.OmnibarAvailable = IsOmnibarAvailable();
345
+ this.OmnibarEnabled = IsOmnibarEnabledForUser();
239
346
  this.themeSub = this.themeService.Preference$.subscribe(pref => {
240
347
  this.ThemePreference = pref;
241
348
  this.ThemeLabel = this.computeThemeLabel();
@@ -258,6 +365,9 @@ export class ProfileDialogComponent extends BaseAngularComponent {
258
365
  }
259
366
  OpenPanel(panel) {
260
367
  this.ActivePanel = panel;
368
+ if (panel === 'theme') {
369
+ this.loadStarredThemes();
370
+ }
261
371
  }
262
372
  ClosePanel() {
263
373
  this.ActivePanel = 'none';
@@ -292,6 +402,90 @@ export class ProfileDialogComponent extends BaseAngularComponent {
292
402
  this.cdr.markForCheck();
293
403
  }
294
404
  }
405
+ // ========================================
406
+ // Starred brand themes
407
+ // ========================================
408
+ /** Load the user's starred brand themes to show inline in the theme list. */
409
+ async loadStarredThemes() {
410
+ this.StarredThemes = [];
411
+ try {
412
+ const ids = this.themeService.GetStarredThemeIds();
413
+ if (ids.length) {
414
+ const idList = ids.map((id) => `'${id.replace(/'/g, "''")}'`).join(', ');
415
+ const rv = new RunView();
416
+ const result = await rv.RunView({
417
+ EntityName: 'MJ: Themes',
418
+ ExtraFilter: `ID IN (${idList}) AND Status = 'Active'`,
419
+ OrderBy: 'Name',
420
+ ResultType: 'entity_object',
421
+ });
422
+ if (result.Success) {
423
+ this.StarredThemes = result.Results.map((t) => ({
424
+ id: t.ID,
425
+ name: t.Name,
426
+ seeds: t.Seeds,
427
+ swatches: this.swatchesFor(t.Seeds),
428
+ overrides: t.Overrides,
429
+ customCss: t.CustomCSS,
430
+ }));
431
+ }
432
+ }
433
+ }
434
+ catch {
435
+ /* non-fatal: the list just stays light/dark/system */
436
+ }
437
+ this.cdr.markForCheck();
438
+ }
439
+ /** Apply a starred brand theme to the running app and persist it as the user's choice. */
440
+ async ApplyStarredTheme(t) {
441
+ try {
442
+ this.themeService.RegisterBrandTheme({ id: t.id, name: t.name, seeds: t.seeds, overrides: t.overrides, customCss: t.customCss });
443
+ await this.themeService.ApplyBrandOverlay(t.id);
444
+ await this.themeService.SetSelectedBrandTheme(t.id);
445
+ }
446
+ catch (err) {
447
+ const msg = err instanceof Error ? err.message : 'Unknown error';
448
+ this.sharedService.CreateSimpleNotification(`Could not apply theme: ${msg}`, 'error', 3000);
449
+ }
450
+ finally {
451
+ this.cdr.markForCheck();
452
+ }
453
+ }
454
+ swatchesFor(seedsJson) {
455
+ try {
456
+ const s = JSON.parse(seedsJson);
457
+ return [s.primary, s.accent ?? s.primary, s.tertiary ?? s.accent ?? s.primary];
458
+ }
459
+ catch {
460
+ return ['#0076b6', '#38a9d9', '#8b5cf6'];
461
+ }
462
+ }
463
+ /**
464
+ * Per-user omnibar opt-in/out. Persists via UserInfoEngine (MJ: User
465
+ * Settings) so the choice follows the user across browsers/devices. The
466
+ * shell reads the same setting on every change-detection pass, so the
467
+ * header affordance and Ctrl+K behavior flip live — no reload needed.
468
+ */
469
+ async ToggleOmnibar() {
470
+ if (this.SavingOmnibar)
471
+ return;
472
+ const next = !this.OmnibarEnabled;
473
+ this.SavingOmnibar = true;
474
+ this.cdr.markForCheck();
475
+ try {
476
+ const saved = await UserInfoEngine.Instance.SetSetting(OMNIBAR_USER_SETTING_KEY, String(next));
477
+ if (saved) {
478
+ this.OmnibarEnabled = next;
479
+ }
480
+ else {
481
+ this.sharedService.CreateSimpleNotification('Could not save the command palette preference', 'error', 3000);
482
+ }
483
+ }
484
+ finally {
485
+ this.SavingOmnibar = false;
486
+ this.cdr.markForCheck();
487
+ }
488
+ }
295
489
  async ToggleChannel(channel) {
296
490
  if (channel.saving)
297
491
  return;
@@ -451,7 +645,7 @@ export class ProfileDialogComponent extends BaseAngularComponent {
451
645
  return preference === 'system' ? `${themeName} · System` : themeName;
452
646
  }
453
647
  static ɵfac = /*@__PURE__*/ (() => { let ɵProfileDialogComponent_BaseFactory; return function ProfileDialogComponent_Factory(__ngFactoryType__) { return (ɵProfileDialogComponent_BaseFactory || (ɵProfileDialogComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ProfileDialogComponent)))(__ngFactoryType__ || ProfileDialogComponent); }; })();
454
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileDialogComponent, selectors: [["mj-profile-dialog"]], inputs: { AvatarUrl: "AvatarUrl", AvatarIconClass: "AvatarIconClass" }, outputs: { CloseRequested: "CloseRequested" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 61, vars: 16, 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"], [1, "fa-solid", "fa-spinner", "fa-spin"], ["type", "button", 1, "mj-profile__channel", 3, "mj-profile__channel--on", "disabled"], ["type", "button", 1, "mj-profile__channel", 3, "click", "disabled"], [1, "mj-profile__channel-icon"], [1, "mj-profile__channel-label"], [1, "mj-profile__channel-state"], [1, "mj-profile__switch", 3, "mj-profile__switch--on"], [1, "mj-profile__switch"], [1, "mj-profile__switch-knob"], ["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"]], 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: 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) {
455
649
  i0.ɵɵelementStart(0, "div", 0)(1, "button", 1);
456
650
  i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_1_listener() { return ctx.OnCloseClick(); });
457
651
  i0.ɵɵelement(2, "i", 2);
@@ -496,32 +690,33 @@ export class ProfileDialogComponent extends BaseAngularComponent {
496
690
  i0.ɵɵelementEnd()();
497
691
  i0.ɵɵelement(37, "i", 26);
498
692
  i0.ɵɵelementEnd()();
499
- i0.ɵɵelementStart(38, "div", 27)(39, "div", 28)(40, "h4");
500
- i0.ɵɵtext(41, "Notifications");
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");
501
696
  i0.ɵɵelementEnd();
502
- i0.ɵɵconditionalCreate(42, ProfileDialogComponent_Conditional_42_Template, 2, 1, "span", 29);
697
+ i0.ɵɵconditionalCreate(43, ProfileDialogComponent_Conditional_43_Template, 2, 1, "span", 29);
503
698
  i0.ɵɵelementEnd();
504
- i0.ɵɵconditionalCreate(43, ProfileDialogComponent_Conditional_43_Template, 3, 0, "div", 30)(44, ProfileDialogComponent_Conditional_44_Template, 3, 0, "div", 31);
699
+ i0.ɵɵconditionalCreate(44, ProfileDialogComponent_Conditional_44_Template, 3, 0, "div", 30)(45, ProfileDialogComponent_Conditional_45_Template, 3, 0, "div", 31);
505
700
  i0.ɵɵelementEnd();
506
- i0.ɵɵelementStart(45, "div", 32)(46, "button", 33);
507
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_46_listener() { return ctx.OnSignOut(); });
508
- i0.ɵɵelement(47, "i", 34);
509
- i0.ɵɵtext(48, " Sign out ");
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 ");
510
705
  i0.ɵɵelementEnd();
511
- i0.ɵɵelement(49, "span", 35);
512
- i0.ɵɵelementStart(50, "button", 36);
513
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_50_listener() { return ctx.OnCloseClick(); });
514
- i0.ɵɵtext(51, " Done ");
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 ");
515
710
  i0.ɵɵelementEnd()()();
516
- i0.ɵɵelementStart(52, "div", 37)(53, "div", 38)(54, "button", 39);
517
- i0.ɵɵlistener("click", function ProfileDialogComponent_Template_button_click_54_listener() { return ctx.ClosePanel(); });
518
- i0.ɵɵelement(55, "i", 40);
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);
519
714
  i0.ɵɵelementEnd();
520
- i0.ɵɵelementStart(56, "h3", 41);
521
- i0.ɵɵtext(57);
715
+ i0.ɵɵelementStart(57, "h3", 41);
716
+ i0.ɵɵtext(58);
522
717
  i0.ɵɵelementEnd()();
523
- i0.ɵɵelementStart(58, "div", 42);
524
- i0.ɵɵconditionalCreate(59, ProfileDialogComponent_Conditional_59_Template, 1, 0, "mj-user-profile-settings")(60, ProfileDialogComponent_Conditional_60_Template, 3, 0, "div", 43);
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);
525
720
  i0.ɵɵelementEnd()()();
526
721
  } if (rf & 2) {
527
722
  i0.ɵɵclassProp("mj-profile--panel-open", ctx.ActivePanel !== "none");
@@ -539,17 +734,19 @@ export class ProfileDialogComponent extends BaseAngularComponent {
539
734
  i0.ɵɵconditional(ctx.MemberSince ? 28 : -1);
540
735
  i0.ɵɵadvance(8);
541
736
  i0.ɵɵtextInterpolate(ctx.ThemeLabel);
542
- i0.ɵɵadvance(6);
543
- i0.ɵɵconditional(ctx.UnreadCount > 0 ? 42 : -1);
737
+ i0.ɵɵadvance(2);
738
+ i0.ɵɵconditional(ctx.OmnibarAvailable ? 38 : -1);
739
+ i0.ɵɵadvance(5);
740
+ i0.ɵɵconditional(ctx.UnreadCount > 0 ? 43 : -1);
544
741
  i0.ɵɵadvance();
545
- i0.ɵɵconditional(ctx.LoadingNotifications ? 43 : 44);
742
+ i0.ɵɵconditional(ctx.LoadingNotifications ? 44 : 45);
546
743
  i0.ɵɵadvance(9);
547
744
  i0.ɵɵclassProp("mj-profile__panel--open", ctx.ActivePanel !== "none");
548
745
  i0.ɵɵadvance(5);
549
746
  i0.ɵɵtextInterpolate(ctx.PanelTitle);
550
747
  i0.ɵɵadvance(2);
551
- i0.ɵɵconditional(ctx.ActivePanel === "photo" ? 59 : ctx.ActivePanel === "theme" ? 60 : -1);
552
- } }, 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\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-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\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\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@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" ? 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\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\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\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\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}"] });
553
750
  }
554
751
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProfileDialogComponent, [{
555
752
  type: Component,
@@ -621,6 +818,37 @@ export class ProfileDialogComponent extends BaseAngularComponent {
621
818
  </button>
622
819
  </div>
623
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>
845
+ }
846
+ </div>
847
+ </button>
848
+ </div>
849
+ </div>
850
+ }
851
+
624
852
  <div class="mj-profile__section">
625
853
  <div class="mj-profile__section-head">
626
854
  <h4>Notifications</h4>
@@ -705,12 +933,31 @@ export class ProfileDialogComponent extends BaseAngularComponent {
705
933
  }
706
934
  </button>
707
935
  }
936
+ @if (StarredThemes.length) {
937
+ <div class="mj-profile__theme-sep">Brand themes</div>
938
+ @for (t of StarredThemes; track t.id) {
939
+ <button type="button"
940
+ class="mj-profile__theme"
941
+ [class.mj-profile__theme--active]="IsAppliedBrand(t.id)"
942
+ (click)="ApplyStarredTheme(t)">
943
+ <div class="mj-profile__theme-swatch mj-profile__brand-swatch">
944
+ @for (c of t.swatches; track $index) { <i [style.background]="c"></i> }
945
+ </div>
946
+ <div class="mj-profile__theme-info">
947
+ <div class="mj-profile__theme-name">{{ t.name }}</div>
948
+ </div>
949
+ @if (IsAppliedBrand(t.id)) {
950
+ <i class="fa-solid fa-check mj-profile__theme-check"></i>
951
+ }
952
+ </button>
953
+ }
954
+ }
708
955
  </div>
709
956
  }
710
957
  </div>
711
958
  </div>
712
959
  </div>
713
- `, 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-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@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 "] }]
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 "] }]
714
961
  }], null, { CloseRequested: [{
715
962
  type: Output
716
963
  }], AvatarUrl: [{
@@ -718,5 +965,5 @@ export class ProfileDialogComponent extends BaseAngularComponent {
718
965
  }], AvatarIconClass: [{
719
966
  type: Input
720
967
  }] }); })();
721
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileDialogComponent, { className: "ProfileDialogComponent", filePath: "src/lib/profile/profile-dialog.component.ts", lineNumber: 720 }); })();
968
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileDialogComponent, { className: "ProfileDialogComponent", filePath: "src/lib/profile/profile-dialog.component.ts", lineNumber: 801 }); })();
722
969
  //# sourceMappingURL=profile-dialog.component.js.map