@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.
- package/dist/generated/lazy-feature-config.d.ts +1 -1
- package/dist/generated/lazy-feature-config.d.ts.map +1 -1
- package/dist/generated/lazy-feature-config.js +132 -128
- package/dist/generated/lazy-feature-config.js.map +1 -1
- package/dist/lib/omnibar/index.d.ts +15 -0
- package/dist/lib/omnibar/index.d.ts.map +1 -0
- package/dist/lib/omnibar/index.js +24 -0
- package/dist/lib/omnibar/index.js.map +1 -0
- package/dist/lib/omnibar/omnibar-palette.component.d.ts +130 -0
- package/dist/lib/omnibar/omnibar-palette.component.d.ts.map +1 -0
- package/dist/lib/omnibar/omnibar-palette.component.js +838 -0
- package/dist/lib/omnibar/omnibar-palette.component.js.map +1 -0
- package/dist/lib/omnibar/omnibar-provider.d.ts +94 -0
- package/dist/lib/omnibar/omnibar-provider.d.ts.map +1 -0
- package/dist/lib/omnibar/omnibar-provider.js +84 -0
- package/dist/lib/omnibar/omnibar-provider.js.map +1 -0
- package/dist/lib/omnibar/omnibar-shortcut.d.ts +12 -0
- package/dist/lib/omnibar/omnibar-shortcut.d.ts.map +1 -0
- package/dist/lib/omnibar/omnibar-shortcut.js +16 -0
- package/dist/lib/omnibar/omnibar-shortcut.js.map +1 -0
- package/dist/lib/omnibar/omnibar-user-setting.d.ts +38 -0
- package/dist/lib/omnibar/omnibar-user-setting.d.ts.map +1 -0
- package/dist/lib/omnibar/omnibar-user-setting.js +53 -0
- package/dist/lib/omnibar/omnibar-user-setting.js.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-agent.provider.d.ts +24 -0
- package/dist/lib/omnibar/providers/omnibar-agent.provider.d.ts.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-agent.provider.js +69 -0
- package/dist/lib/omnibar/providers/omnibar-agent.provider.js.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-command.provider.d.ts +29 -0
- package/dist/lib/omnibar/providers/omnibar-command.provider.d.ts.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-command.provider.js +130 -0
- package/dist/lib/omnibar/providers/omnibar-command.provider.js.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-record.provider.d.ts +35 -0
- package/dist/lib/omnibar/providers/omnibar-record.provider.d.ts.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-record.provider.js +176 -0
- package/dist/lib/omnibar/providers/omnibar-record.provider.js.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-search.provider.d.ts +21 -0
- package/dist/lib/omnibar/providers/omnibar-search.provider.d.ts.map +1 -0
- package/dist/lib/omnibar/providers/omnibar-search.provider.js +94 -0
- package/dist/lib/omnibar/providers/omnibar-search.provider.js.map +1 -0
- package/dist/lib/profile/profile-dialog.component.d.ts +29 -0
- package/dist/lib/profile/profile-dialog.component.d.ts.map +1 -1
- package/dist/lib/profile/profile-dialog.component.js +325 -78
- package/dist/lib/profile/profile-dialog.component.js.map +1 -1
- package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts +16 -0
- package/dist/lib/resource-wrappers/chat-conversations-resource.component.d.ts.map +1 -1
- package/dist/lib/resource-wrappers/chat-conversations-resource.component.js +66 -6
- package/dist/lib/resource-wrappers/chat-conversations-resource.component.js.map +1 -1
- package/dist/lib/resource-wrappers/view-resource.component.d.ts.map +1 -1
- package/dist/lib/resource-wrappers/view-resource.component.js +6 -2
- package/dist/lib/resource-wrappers/view-resource.component.js.map +1 -1
- package/dist/lib/shell/components/tabs/tab-container.component.d.ts +7 -0
- package/dist/lib/shell/components/tabs/tab-container.component.d.ts.map +1 -1
- package/dist/lib/shell/components/tabs/tab-container.component.js +26 -4
- package/dist/lib/shell/components/tabs/tab-container.component.js.map +1 -1
- package/dist/lib/shell/shell.component.d.ts +76 -10
- package/dist/lib/shell/shell.component.d.ts.map +1 -1
- package/dist/lib/shell/shell.component.js +503 -270
- package/dist/lib/shell/shell.component.js.map +1 -1
- package/dist/lib/shell/shell.module.d.ts +8 -7
- package/dist/lib/shell/shell.module.d.ts.map +1 -1
- package/dist/lib/shell/shell.module.js +5 -2
- package/dist/lib/shell/shell.module.js.map +1 -1
- package/dist/lib/single-list-detail/single-list-detail.component.d.ts.map +1 -1
- package/dist/lib/single-list-detail/single-list-detail.component.js +39 -27
- package/dist/lib/single-list-detail/single-list-detail.component.js.map +1 -1
- package/dist/public-api.d.ts +1 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +2 -0
- package/dist/public-api.js.map +1 -1
- 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
|
|
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
|
|
129
|
+
function ProfileDialogComponent_Conditional_44_Template(rf, ctx) { if (rf & 1) {
|
|
88
130
|
i0.ɵɵelementStart(0, "div", 30);
|
|
89
|
-
i0.ɵɵelement(1, "i",
|
|
131
|
+
i0.ɵɵelement(1, "i", 54);
|
|
90
132
|
i0.ɵɵtext(2, " Loading\u2026 ");
|
|
91
133
|
i0.ɵɵelementEnd();
|
|
92
134
|
} }
|
|
93
|
-
function
|
|
94
|
-
i0.ɵɵelement(0, "i",
|
|
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
|
|
97
|
-
i0.ɵɵelementStart(0, "span",
|
|
98
|
-
i0.ɵɵelement(1, "span",
|
|
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
|
|
102
|
-
i0.ɵɵclassProp("mj-profile__switch--on",
|
|
143
|
+
const ch_r6 = i0.ɵɵnextContext().$implicit;
|
|
144
|
+
i0.ɵɵclassProp("mj-profile__switch--on", ch_r6.enabled);
|
|
103
145
|
} }
|
|
104
|
-
function
|
|
105
|
-
const
|
|
106
|
-
i0.ɵɵelementStart(0, "button",
|
|
107
|
-
i0.ɵɵlistener("click", function
|
|
108
|
-
i0.ɵɵelementStart(1, "div",
|
|
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",
|
|
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,
|
|
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
|
|
119
|
-
i0.ɵɵclassProp("mj-profile__channel--on",
|
|
120
|
-
i0.ɵɵproperty("disabled",
|
|
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(
|
|
164
|
+
i0.ɵɵclassMap(ch_r6.icon);
|
|
123
165
|
i0.ɵɵadvance(2);
|
|
124
|
-
i0.ɵɵtextInterpolate(
|
|
166
|
+
i0.ɵɵtextInterpolate(ch_r6.label);
|
|
125
167
|
i0.ɵɵadvance(2);
|
|
126
|
-
i0.ɵɵconditional(
|
|
168
|
+
i0.ɵɵconditional(ch_r6.saving ? 6 : 7);
|
|
127
169
|
} }
|
|
128
|
-
function
|
|
170
|
+
function ProfileDialogComponent_Conditional_45_Template(rf, ctx) { if (rf & 1) {
|
|
129
171
|
i0.ɵɵelementStart(0, "div", 31);
|
|
130
|
-
i0.ɵɵrepeaterCreate(1,
|
|
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
|
|
179
|
+
function ProfileDialogComponent_Conditional_60_Template(rf, ctx) { if (rf & 1) {
|
|
138
180
|
i0.ɵɵelement(0, "mj-user-profile-settings");
|
|
139
181
|
} }
|
|
140
|
-
function
|
|
141
|
-
i0.ɵɵelementStart(0, "div",
|
|
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
|
|
187
|
+
const theme_r8 = i0.ɵɵnextContext().$implicit;
|
|
146
188
|
i0.ɵɵadvance();
|
|
147
|
-
i0.ɵɵtextInterpolate(
|
|
189
|
+
i0.ɵɵtextInterpolate(theme_r8.description);
|
|
148
190
|
} }
|
|
149
|
-
function
|
|
150
|
-
i0.ɵɵelement(0, "i",
|
|
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
|
|
153
|
-
i0.ɵɵelement(0, "i",
|
|
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
|
|
156
|
-
const
|
|
157
|
-
i0.ɵɵelementStart(0, "button",
|
|
158
|
-
i0.ɵɵlistener("click", function
|
|
159
|
-
i0.ɵɵelementStart(1, "div",
|
|
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",
|
|
204
|
+
i0.ɵɵelementStart(3, "div", 63)(4, "div", 64);
|
|
163
205
|
i0.ɵɵtext(5);
|
|
164
206
|
i0.ɵɵelementEnd();
|
|
165
|
-
i0.ɵɵconditionalCreate(6,
|
|
207
|
+
i0.ɵɵconditionalCreate(6, ProfileDialogComponent_Conditional_61_For_2_Conditional_6_Template, 2, 1, "div", 65);
|
|
166
208
|
i0.ɵɵelementEnd();
|
|
167
|
-
i0.ɵɵconditionalCreate(7,
|
|
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
|
|
212
|
+
const theme_r8 = ctx.$implicit;
|
|
171
213
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
172
|
-
i0.ɵɵclassProp("mj-profile__theme--active",
|
|
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--" +
|
|
217
|
+
i0.ɵɵclassMap("mj-profile__theme-swatch--" + theme_r8.swatch);
|
|
176
218
|
i0.ɵɵadvance();
|
|
177
|
-
i0.ɵɵclassMap(
|
|
219
|
+
i0.ɵɵclassMap(theme_r8.icon);
|
|
178
220
|
i0.ɵɵadvance(3);
|
|
179
|
-
i0.ɵɵtextInterpolate(
|
|
221
|
+
i0.ɵɵtextInterpolate(theme_r8.name);
|
|
180
222
|
i0.ɵɵadvance();
|
|
181
|
-
i0.ɵɵconditional(
|
|
223
|
+
i0.ɵɵconditional(theme_r8.description ? 6 : -1);
|
|
182
224
|
i0.ɵɵadvance();
|
|
183
|
-
i0.ɵɵconditional(ctx_r1.SavingTheme ===
|
|
225
|
+
i0.ɵɵconditional(ctx_r1.SavingTheme === theme_r8.id ? 7 : theme_r8.id === ctx_r1.ThemePreference ? 8 : -1);
|
|
184
226
|
} }
|
|
185
|
-
function
|
|
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,
|
|
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:
|
|
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.ɵɵ
|
|
500
|
-
i0.ɵɵ
|
|
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(
|
|
697
|
+
i0.ɵɵconditionalCreate(43, ProfileDialogComponent_Conditional_43_Template, 2, 1, "span", 29);
|
|
503
698
|
i0.ɵɵelementEnd();
|
|
504
|
-
i0.ɵɵconditionalCreate(
|
|
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(
|
|
507
|
-
i0.ɵɵlistener("click", function
|
|
508
|
-
i0.ɵɵelement(
|
|
509
|
-
i0.ɵɵtext(
|
|
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(
|
|
512
|
-
i0.ɵɵelementStart(
|
|
513
|
-
i0.ɵɵlistener("click", function
|
|
514
|
-
i0.ɵɵtext(
|
|
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(
|
|
517
|
-
i0.ɵɵlistener("click", function
|
|
518
|
-
i0.ɵɵelement(
|
|
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(
|
|
521
|
-
i0.ɵɵtext(
|
|
715
|
+
i0.ɵɵelementStart(57, "h3", 41);
|
|
716
|
+
i0.ɵɵtext(58);
|
|
522
717
|
i0.ɵɵelementEnd()();
|
|
523
|
-
i0.ɵɵelementStart(
|
|
524
|
-
i0.ɵɵconditionalCreate(
|
|
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(
|
|
543
|
-
i0.ɵɵconditional(ctx.
|
|
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 ?
|
|
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" ?
|
|
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 & 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:
|
|
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
|