@ieeesa-npm/dashboard 0.0.0-stage → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +75 -3
- package/esm2022/ieeesa-npm-dashboard.mjs +5 -0
- package/esm2022/lib/assets/constants.json +141 -0
- package/esm2022/lib/assets/dashboard-mock.mjs +217 -0
- package/esm2022/lib/assets/dashboard-route-paths.mock.mjs +12 -0
- package/esm2022/lib/assets/dashboard-user-permissions.mock.mjs +23 -0
- package/esm2022/lib/assets/date-formats.mjs +28 -0
- package/esm2022/lib/components/event-group-card/event-group-card.component.mjs +277 -0
- package/esm2022/lib/components/meeting-attendance-row/meeting-attendance-row.component.mjs +181 -0
- package/esm2022/lib/components/member-level-badge/member-level-badge.component.mjs +79 -0
- package/esm2022/lib/components/upcoming-meetings-events/upcoming-meetings-events.component.mjs +163 -0
- package/esm2022/lib/components/welcome-header/dashboard-welcome-header.component.mjs +151 -0
- package/esm2022/lib/components/your-groups/your-groups.component.mjs +206 -0
- package/esm2022/lib/dashboard.component.mjs +377 -0
- package/esm2022/lib/dashboard.module.mjs +16 -0
- package/esm2022/lib/dashboard.routes.mjs +7 -0
- package/esm2022/lib/models/attendance-action-permissions.model.mjs +2 -0
- package/esm2022/lib/models/attendance-state.model.mjs +7 -0
- package/esm2022/lib/models/dashboard-list-response.model.mjs +2 -0
- package/esm2022/lib/models/dashboard-route-config.model.mjs +2 -0
- package/esm2022/lib/models/dashboard-section-state.model.mjs +9 -0
- package/esm2022/lib/models/dashboard-user-info.model.mjs +2 -0
- package/esm2022/lib/models/group-row.model.mjs +2 -0
- package/esm2022/lib/models/meeting-row.model.mjs +2 -0
- package/esm2022/lib/models/page-change.model.mjs +2 -0
- package/esm2022/lib/models/upcoming-event.model.mjs +2 -0
- package/esm2022/lib/services/attendance-reducers.mjs +54 -0
- package/esm2022/lib/services/dashboard.service.mjs +208 -0
- package/esm2022/lib/services/user-permissions.service.mjs +50 -0
- package/esm2022/lib/utils/attendance-action.util.mjs +53 -0
- package/esm2022/public-api.mjs +34 -0
- package/fesm2022/ieeesa-npm-dashboard.mjs +2234 -0
- package/fesm2022/ieeesa-npm-dashboard.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/assets/dashboard-mock.d.ts +31 -0
- package/lib/assets/dashboard-route-paths.mock.d.ts +2 -0
- package/lib/assets/dashboard-user-permissions.mock.d.ts +2 -0
- package/lib/assets/date-formats.d.ts +27 -0
- package/lib/components/event-group-card/event-group-card.component.d.ts +300 -0
- package/lib/components/meeting-attendance-row/meeting-attendance-row.component.d.ts +239 -0
- package/lib/components/member-level-badge/member-level-badge.component.d.ts +161 -0
- package/lib/components/upcoming-meetings-events/upcoming-meetings-events.component.d.ts +238 -0
- package/lib/components/welcome-header/dashboard-welcome-header.component.d.ts +98 -0
- package/lib/components/your-groups/your-groups.component.d.ts +110 -0
- package/lib/dashboard.component.d.ts +376 -0
- package/lib/dashboard.module.d.ts +7 -0
- package/lib/dashboard.routes.d.ts +2 -0
- package/lib/models/attendance-action-permissions.model.d.ts +4 -0
- package/lib/models/attendance-state.model.d.ts +4 -0
- package/lib/models/dashboard-list-response.model.d.ts +5 -0
- package/lib/models/dashboard-route-config.model.d.ts +7 -0
- package/lib/models/dashboard-section-state.model.d.ts +6 -0
- package/lib/models/dashboard-user-info.model.d.ts +5 -0
- package/lib/models/group-row.model.d.ts +8 -0
- package/lib/models/meeting-row.model.d.ts +12 -0
- package/lib/models/page-change.model.d.ts +4 -0
- package/lib/models/upcoming-event.model.d.ts +13 -0
- package/lib/services/attendance-reducers.d.ts +43 -0
- package/lib/services/dashboard.service.d.ts +119 -0
- package/lib/services/user-permissions.service.d.ts +31 -0
- package/lib/utils/attendance-action.util.d.ts +38 -0
- package/package.json +30 -3
- package/public-api.d.ts +24 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
3
|
+
import { DateTime } from 'luxon';
|
|
4
|
+
import { AttendanceState } from '../../models/attendance-state.model';
|
|
5
|
+
import { DateFormats } from '../../assets/date-formats';
|
|
6
|
+
import { AttendanceAction, resolveAttendanceAction, } from '../../utils/attendance-action.util';
|
|
7
|
+
import * as constants from '../../assets/constants.json';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common";
|
|
10
|
+
/**
|
|
11
|
+
* Meeting_Attendance_Row renders a single meeting within an event-group card:
|
|
12
|
+
* the meeting-name link, group/committee, room/location, date, and
|
|
13
|
+
* time+timezone (all luxon-formatted), together with the attendance action
|
|
14
|
+
* button that drives the per-meeting attendance state machine.
|
|
15
|
+
*
|
|
16
|
+
* The component is purely presentational — it emits navigation and attendance
|
|
17
|
+
* intents via `@Output()` and never performs navigation or HTTP itself. The
|
|
18
|
+
* action button delegates to the pure `resolveAttendanceAction` handler so the
|
|
19
|
+
* emit/guard logic is shared with the property-tested core (Property 1), and the
|
|
20
|
+
* displayed state only advances when the host updates `attendanceState`.
|
|
21
|
+
* @export
|
|
22
|
+
* @class MeetingAttendanceRowComponent
|
|
23
|
+
*/
|
|
24
|
+
export class MeetingAttendanceRowComponent {
|
|
25
|
+
constructor() {
|
|
26
|
+
this.constants = constants;
|
|
27
|
+
/** The current attendance state controlling label/indicator and action. */
|
|
28
|
+
this.attendanceState = AttendanceState.NOT_ATTENDING;
|
|
29
|
+
/** Whether an attendance action for this meeting is awaiting resolution. */
|
|
30
|
+
this.isInFlight = false;
|
|
31
|
+
/** Host permissions gating the log-attendance / leave-meeting buttons. */
|
|
32
|
+
this.permissions = {
|
|
33
|
+
canLogAttendance: false,
|
|
34
|
+
canLeaveMeeting: false,
|
|
35
|
+
};
|
|
36
|
+
/** Emits the meeting id when the meeting-name link is activated (Req 7.4). */
|
|
37
|
+
this.openMeeting = new EventEmitter();
|
|
38
|
+
/** Emits the meeting id to request logging attendance (Req 7.7). */
|
|
39
|
+
this.logAttendance = new EventEmitter();
|
|
40
|
+
/** Emits the meeting id to request leaving the meeting (Req 7.8). */
|
|
41
|
+
this.leaveMeeting = new EventEmitter();
|
|
42
|
+
/** Expose the enum to the template for state comparisons. */
|
|
43
|
+
this.AttendanceState = AttendanceState;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Whether this row is actionable — a non-empty `meetingId` is required for the
|
|
47
|
+
* meeting-name link and action button to emit anything (Req 7.10).
|
|
48
|
+
* @return {boolean} True when the row has a usable meeting id.
|
|
49
|
+
* @memberof MeetingAttendanceRowComponent
|
|
50
|
+
*/
|
|
51
|
+
get isActionable() {
|
|
52
|
+
return !!this.meeting?.meetingId;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Whether the row is in the currently-attending state, which shows the
|
|
56
|
+
* currently-attending indicator and the leave-meeting action (Req 7.5).
|
|
57
|
+
* @return {boolean} True when the attendance state is `CURRENTLY_ATTENDING`.
|
|
58
|
+
* @memberof MeetingAttendanceRowComponent
|
|
59
|
+
*/
|
|
60
|
+
get isCurrentlyAttending() {
|
|
61
|
+
return this.attendanceState === AttendanceState.CURRENTLY_ATTENDING;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Whether the log-attendance button should be shown: only when the row is in
|
|
65
|
+
* the log state (not currently attending) and the host grants
|
|
66
|
+
* `canLogAttendance` (Req 7.6, 12.1).
|
|
67
|
+
* @return {boolean} True when the log-attendance button is visible.
|
|
68
|
+
* @memberof MeetingAttendanceRowComponent
|
|
69
|
+
*/
|
|
70
|
+
get showLogAttendanceButton() {
|
|
71
|
+
return !this.isCurrentlyAttending && !!this.permissions?.canLogAttendance;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Whether the leave-meeting button should be shown: only when the row is in
|
|
75
|
+
* the currently-attending state and the host grants `canLeaveMeeting`
|
|
76
|
+
* (Req 7.5, 12.2).
|
|
77
|
+
* @return {boolean} True when the leave-meeting button is visible.
|
|
78
|
+
* @memberof MeetingAttendanceRowComponent
|
|
79
|
+
*/
|
|
80
|
+
get showLeaveMeetingButton() {
|
|
81
|
+
return this.isCurrentlyAttending && !!this.permissions?.canLeaveMeeting;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Resolves a group-or-committee / room-or-location field value, substituting
|
|
85
|
+
* the empty-field placeholder from `constants.json` when the value is empty or
|
|
86
|
+
* undefined (Req 7.2).
|
|
87
|
+
* @param {string | undefined} value - The raw field value from the meeting.
|
|
88
|
+
* @return {string} The value to display, or the empty-field placeholder.
|
|
89
|
+
* @memberof MeetingAttendanceRowComponent
|
|
90
|
+
*/
|
|
91
|
+
resolveFieldValue(value) {
|
|
92
|
+
const placeholder = this.constants?.meetingRow?.emptyFieldPlaceholder ?? '—';
|
|
93
|
+
return value && value.trim().length > 0 ? value : placeholder;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Formats the meeting date for display using the shared luxon display format
|
|
97
|
+
* (Req 7.3). Falls back to the raw value when it cannot be parsed.
|
|
98
|
+
* @return {string} The formatted meeting date.
|
|
99
|
+
* @memberof MeetingAttendanceRowComponent
|
|
100
|
+
*/
|
|
101
|
+
get formattedDate() {
|
|
102
|
+
return this.formatIso(this.meeting?.meetingDate, DateFormats.displayFormat);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Formats the meeting time + timezone for display using luxon (Req 7.3).
|
|
106
|
+
* The timezone abbreviation from the meeting model is appended to the parsed
|
|
107
|
+
* time. Falls back to the raw value when it cannot be parsed.
|
|
108
|
+
* @return {string} The formatted meeting time with timezone.
|
|
109
|
+
* @memberof MeetingAttendanceRowComponent
|
|
110
|
+
*/
|
|
111
|
+
get formattedTime() {
|
|
112
|
+
const time = this.formatIso(this.meeting?.meetingTime, DateFormats.timeMeridiemFormat);
|
|
113
|
+
const timezone = this.meeting?.timezone ?? '';
|
|
114
|
+
return timezone ? `${time} ${timezone}` : time;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Handles activation of the attendance action button. Delegates to the pure
|
|
118
|
+
* `resolveAttendanceAction` handler and emits exactly one event based on the
|
|
119
|
+
* resolved action: `logAttendance` for `LOG_ATTENDANCE`, `leaveMeeting` for
|
|
120
|
+
* `LEAVE_MEETING`, and nothing for `NONE` (empty id or in-flight)
|
|
121
|
+
* (Req 7.7, 7.8, 7.9, 7.10, 13.6).
|
|
122
|
+
* @memberof MeetingAttendanceRowComponent
|
|
123
|
+
*/
|
|
124
|
+
onAttendanceAction() {
|
|
125
|
+
const action = resolveAttendanceAction(this.attendanceState, this.isInFlight, this.meeting?.meetingId);
|
|
126
|
+
if (action === AttendanceAction.LOG_ATTENDANCE) {
|
|
127
|
+
this.logAttendance.emit(this.meeting.meetingId);
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
if (action === AttendanceAction.LEAVE_MEETING) {
|
|
131
|
+
this.leaveMeeting.emit(this.meeting.meetingId);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Handles activation of the meeting-name link. Emits the meeting id only when
|
|
136
|
+
* the row is actionable (non-empty meeting id) (Req 7.4, 7.10).
|
|
137
|
+
* @memberof MeetingAttendanceRowComponent
|
|
138
|
+
*/
|
|
139
|
+
onOpenMeeting() {
|
|
140
|
+
if (!this.isActionable) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
this.openMeeting.emit(this.meeting.meetingId);
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Parses an ISO string with luxon and formats it with the supplied token,
|
|
147
|
+
* returning the raw value unchanged when it is missing or unparseable.
|
|
148
|
+
* @param {string | undefined} isoValue - The ISO date/time string.
|
|
149
|
+
* @param {string} format - The luxon format token.
|
|
150
|
+
* @return {string} The formatted value or the raw/empty fallback.
|
|
151
|
+
* @memberof MeetingAttendanceRowComponent
|
|
152
|
+
*/
|
|
153
|
+
formatIso(isoValue, format) {
|
|
154
|
+
if (!isoValue) {
|
|
155
|
+
return '';
|
|
156
|
+
}
|
|
157
|
+
const parsed = DateTime.fromISO(isoValue, { setZone: true });
|
|
158
|
+
return parsed.isValid ? parsed.toFormat(format) : isoValue;
|
|
159
|
+
}
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MeetingAttendanceRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
161
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MeetingAttendanceRowComponent, isStandalone: true, selector: "ieeesa-meeting-attendance-row", inputs: { meeting: "meeting", attendanceState: "attendanceState", isInFlight: "isInFlight", permissions: "permissions" }, outputs: { openMeeting: "openMeeting", logAttendance: "logAttendance", leaveMeeting: "leaveMeeting" }, ngImport: i0, template: "<div class=\"ieeesa-meeting-attendance-row\">\r\n <div class=\"ieeesa-meeting-attendance-row__details\">\r\n <!-- Meeting-name link (emits openMeeting; non-actionable when id missing). -->\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__name-link\"\r\n [disabled]=\"!isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.meetingNameLink ?? 'View meeting details'\"\r\n (click)=\"onOpenMeeting()\"\r\n >\r\n {{ meeting?.meetingName }}\r\n </button>\r\n\r\n <dl class=\"ieeesa-meeting-attendance-row__meta\">\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">\r\n {{ constants?.groupsSection?.columns?.group ?? 'Group' }}\r\n </dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ resolveFieldValue(meeting?.groupOrCommittee) }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">\r\n {{ constants?.groupsSection?.columns?.affiliation ?? 'Location' }}\r\n </dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ resolveFieldValue(meeting?.roomOrLocation) }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">Date</dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ formattedDate }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">Time</dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ formattedTime }}\r\n </dd>\r\n </div>\r\n </dl>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__actions\">\r\n <!-- Currently-attending indicator shown only in the attending state. -->\r\n <span\r\n *ngIf=\"isCurrentlyAttending\"\r\n class=\"ieeesa-meeting-attendance-row__attending-indicator\"\r\n >\r\n {{ constants?.meetingRow?.currentlyAttendingIndicator ?? 'Currently Attending' }}\r\n </span>\r\n\r\n <!-- Log-attendance button: shown in the log state with the permission. -->\r\n <button\r\n *ngIf=\"showLogAttendanceButton\"\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__action-button ieeesa-meeting-attendance-row__action-button--log\"\r\n [disabled]=\"isInFlight || !isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.logAttendance ?? 'Log attendance for this meeting'\"\r\n (click)=\"onAttendanceAction()\"\r\n >\r\n {{ constants?.meetingRow?.logAttendanceLabel ?? 'Log Attendance' }}\r\n </button>\r\n\r\n <!-- Leave-meeting button: shown in the attending state with the permission. -->\r\n <button\r\n *ngIf=\"showLeaveMeetingButton\"\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__action-button ieeesa-meeting-attendance-row__action-button--leave\"\r\n [disabled]=\"isInFlight || !isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.leaveMeeting ?? 'Leave this meeting'\"\r\n (click)=\"onAttendanceAction()\"\r\n >\r\n {{ constants?.meetingRow?.leaveMeetingLabel ?? 'Leave Meeting' }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-meeting-attendance-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #d7d6d6}.ieeesa-meeting-attendance-row__details{display:flex;flex-direction:column;gap:8px;min-width:0}.ieeesa-meeting-attendance-row__name-link{padding:0;border:0;background:none;text-align:left;text-decoration:underline;color:#00629b;cursor:pointer}.ieeesa-meeting-attendance-row__name-link:disabled{color:#939094;text-decoration:none;cursor:default}.ieeesa-meeting-attendance-row__meta{display:flex;flex-wrap:wrap;gap:4px 24px;margin:0}.ieeesa-meeting-attendance-row__meta-item{display:flex;flex-direction:column;gap:4px}.ieeesa-meeting-attendance-row__meta-term{margin:0;font-size:.75rem;color:#939094}.ieeesa-meeting-attendance-row__meta-value{margin:0;font-size:.875rem;color:#000}.ieeesa-meeting-attendance-row__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.ieeesa-meeting-attendance-row__attending-indicator{display:inline-flex;align-items:center;padding:4px 12px;border-radius:16px;font-size:.8125rem;color:#00629b;background-color:#f0f5f9}.ieeesa-meeting-attendance-row__action-button{padding:8px 16px;border-radius:4px;font-size:.875rem;cursor:pointer}.ieeesa-meeting-attendance-row__action-button--log{border:1px solid #00629b;background-color:#00629b;color:#fff}.ieeesa-meeting-attendance-row__action-button--leave{border:1px solid #00629b;background-color:#fff;color:#00629b}.ieeesa-meeting-attendance-row__action-button:disabled{border-color:#939094;background-color:#939094;color:#fff;cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
162
|
+
}
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MeetingAttendanceRowComponent, decorators: [{
|
|
164
|
+
type: Component,
|
|
165
|
+
args: [{ selector: 'ieeesa-meeting-attendance-row', standalone: true, imports: [CommonModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-meeting-attendance-row\">\r\n <div class=\"ieeesa-meeting-attendance-row__details\">\r\n <!-- Meeting-name link (emits openMeeting; non-actionable when id missing). -->\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__name-link\"\r\n [disabled]=\"!isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.meetingNameLink ?? 'View meeting details'\"\r\n (click)=\"onOpenMeeting()\"\r\n >\r\n {{ meeting?.meetingName }}\r\n </button>\r\n\r\n <dl class=\"ieeesa-meeting-attendance-row__meta\">\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">\r\n {{ constants?.groupsSection?.columns?.group ?? 'Group' }}\r\n </dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ resolveFieldValue(meeting?.groupOrCommittee) }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">\r\n {{ constants?.groupsSection?.columns?.affiliation ?? 'Location' }}\r\n </dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ resolveFieldValue(meeting?.roomOrLocation) }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">Date</dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ formattedDate }}\r\n </dd>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__meta-item\">\r\n <dt class=\"ieeesa-meeting-attendance-row__meta-term\">Time</dt>\r\n <dd class=\"ieeesa-meeting-attendance-row__meta-value\">\r\n {{ formattedTime }}\r\n </dd>\r\n </div>\r\n </dl>\r\n </div>\r\n\r\n <div class=\"ieeesa-meeting-attendance-row__actions\">\r\n <!-- Currently-attending indicator shown only in the attending state. -->\r\n <span\r\n *ngIf=\"isCurrentlyAttending\"\r\n class=\"ieeesa-meeting-attendance-row__attending-indicator\"\r\n >\r\n {{ constants?.meetingRow?.currentlyAttendingIndicator ?? 'Currently Attending' }}\r\n </span>\r\n\r\n <!-- Log-attendance button: shown in the log state with the permission. -->\r\n <button\r\n *ngIf=\"showLogAttendanceButton\"\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__action-button ieeesa-meeting-attendance-row__action-button--log\"\r\n [disabled]=\"isInFlight || !isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.logAttendance ?? 'Log attendance for this meeting'\"\r\n (click)=\"onAttendanceAction()\"\r\n >\r\n {{ constants?.meetingRow?.logAttendanceLabel ?? 'Log Attendance' }}\r\n </button>\r\n\r\n <!-- Leave-meeting button: shown in the attending state with the permission. -->\r\n <button\r\n *ngIf=\"showLeaveMeetingButton\"\r\n type=\"button\"\r\n class=\"ieeesa-meeting-attendance-row__action-button ieeesa-meeting-attendance-row__action-button--leave\"\r\n [disabled]=\"isInFlight || !isActionable\"\r\n [attr.aria-label]=\"constants?.meetingRow?.ariaLabel?.leaveMeeting ?? 'Leave this meeting'\"\r\n (click)=\"onAttendanceAction()\"\r\n >\r\n {{ constants?.meetingRow?.leaveMeetingLabel ?? 'Leave Meeting' }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-meeting-attendance-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #d7d6d6}.ieeesa-meeting-attendance-row__details{display:flex;flex-direction:column;gap:8px;min-width:0}.ieeesa-meeting-attendance-row__name-link{padding:0;border:0;background:none;text-align:left;text-decoration:underline;color:#00629b;cursor:pointer}.ieeesa-meeting-attendance-row__name-link:disabled{color:#939094;text-decoration:none;cursor:default}.ieeesa-meeting-attendance-row__meta{display:flex;flex-wrap:wrap;gap:4px 24px;margin:0}.ieeesa-meeting-attendance-row__meta-item{display:flex;flex-direction:column;gap:4px}.ieeesa-meeting-attendance-row__meta-term{margin:0;font-size:.75rem;color:#939094}.ieeesa-meeting-attendance-row__meta-value{margin:0;font-size:.875rem;color:#000}.ieeesa-meeting-attendance-row__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.ieeesa-meeting-attendance-row__attending-indicator{display:inline-flex;align-items:center;padding:4px 12px;border-radius:16px;font-size:.8125rem;color:#00629b;background-color:#f0f5f9}.ieeesa-meeting-attendance-row__action-button{padding:8px 16px;border-radius:4px;font-size:.875rem;cursor:pointer}.ieeesa-meeting-attendance-row__action-button--log{border:1px solid #00629b;background-color:#00629b;color:#fff}.ieeesa-meeting-attendance-row__action-button--leave{border:1px solid #00629b;background-color:#fff;color:#00629b}.ieeesa-meeting-attendance-row__action-button:disabled{border-color:#939094;background-color:#939094;color:#fff;cursor:default}\n"] }]
|
|
166
|
+
}], propDecorators: { meeting: [{
|
|
167
|
+
type: Input
|
|
168
|
+
}], attendanceState: [{
|
|
169
|
+
type: Input
|
|
170
|
+
}], isInFlight: [{
|
|
171
|
+
type: Input
|
|
172
|
+
}], permissions: [{
|
|
173
|
+
type: Input
|
|
174
|
+
}], openMeeting: [{
|
|
175
|
+
type: Output
|
|
176
|
+
}], logAttendance: [{
|
|
177
|
+
type: Output
|
|
178
|
+
}], leaveMeeting: [{
|
|
179
|
+
type: Output
|
|
180
|
+
}] } });
|
|
181
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVldGluZy1hdHRlbmRhbmNlLXJvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9jb21wb25lbnRzL21lZXRpbmctYXR0ZW5kYW5jZS1yb3cvbWVldGluZy1hdHRlbmRhbmNlLXJvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9jb21wb25lbnRzL21lZXRpbmctYXR0ZW5kYW5jZS1yb3cvbWVldGluZy1hdHRlbmRhbmNlLXJvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUVqQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEdBQ3hCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxLQUFLLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBRXpEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFVSCxNQUFNLE9BQU8sNkJBQTZCO0lBVDFDO1FBVUUsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUt0QiwyRUFBMkU7UUFDbEUsb0JBQWUsR0FBb0IsZUFBZSxDQUFDLGFBQWEsQ0FBQztRQUUxRSw0RUFBNEU7UUFDbkUsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUU1QiwwRUFBMEU7UUFDakUsZ0JBQVcsR0FBZ0M7WUFDbEQsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixlQUFlLEVBQUUsS0FBSztTQUN2QixDQUFDO1FBRUYsOEVBQThFO1FBQ3BFLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVuRCxvRUFBb0U7UUFDMUQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXJELHFFQUFxRTtRQUMzRCxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFcEQsNkRBQTZEO1FBQ3BELG9CQUFlLEdBQUcsZUFBZSxDQUFDO0tBd0k1QztJQXRJQzs7Ozs7T0FLRztJQUNILElBQUksWUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsbUJBQW1CLENBQUM7SUFDdEUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7SUFDNUUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILElBQUksc0JBQXNCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQztJQUMxRSxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILGlCQUFpQixDQUFDLEtBQXlCO1FBQ3pDLE1BQU0sV0FBVyxHQUNmLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLHFCQUFxQixJQUFJLEdBQUcsQ0FBQztRQUMzRCxPQUFPLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDaEUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsSUFBSSxhQUFhO1FBQ2YsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FDekIsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQ3pCLFdBQVcsQ0FBQyxrQkFBa0IsQ0FDL0IsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUM5QyxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILGtCQUFrQjtRQUNoQixNQUFNLE1BQU0sR0FBRyx1QkFBdUIsQ0FDcEMsSUFBSSxDQUFDLGVBQWUsRUFDcEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FDeEIsQ0FBQztRQUVGLElBQUksTUFBTSxLQUFLLGdCQUFnQixDQUFDLGNBQWMsRUFBRTtZQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2hELE9BQU87U0FDUjtRQUVELElBQUksTUFBTSxLQUFLLGdCQUFnQixDQUFDLGFBQWEsRUFBRTtZQUM3QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNLLFNBQVMsQ0FBQyxRQUE0QixFQUFFLE1BQWM7UUFDNUQsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQzdELENBQUM7K0dBbktVLDZCQUE2QjttR0FBN0IsNkJBQTZCLDBUQzFDMUMseStHQWtGQSw0MVVEN0NZLFlBQVk7OzRGQUtYLDZCQUE2QjtrQkFUekMsU0FBUzsrQkFFRSwrQkFBK0IsY0FDN0IsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLGlCQUdSLGlCQUFpQixDQUFDLElBQUk7OEJBTTVCLE9BQU87c0JBQWYsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFNSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdHLGFBQWE7c0JBQXRCLE1BQU07Z0JBR0csWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBBdHRlbmRhbmNlQWN0aW9uUGVybWlzc2lvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXR0ZW5kYW5jZS1hY3Rpb24tcGVybWlzc2lvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBBdHRlbmRhbmNlU3RhdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXR0ZW5kYW5jZS1zdGF0ZS5tb2RlbCc7XHJcbmltcG9ydCB7IE1lZXRpbmdSb3cgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVldGluZy1yb3cubW9kZWwnO1xyXG5pbXBvcnQgeyBEYXRlRm9ybWF0cyB9IGZyb20gJy4uLy4uL2Fzc2V0cy9kYXRlLWZvcm1hdHMnO1xyXG5pbXBvcnQge1xyXG4gIEF0dGVuZGFuY2VBY3Rpb24sXHJcbiAgcmVzb2x2ZUF0dGVuZGFuY2VBY3Rpb24sXHJcbn0gZnJvbSAnLi4vLi4vdXRpbHMvYXR0ZW5kYW5jZS1hY3Rpb24udXRpbCc7XHJcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuLi8uLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5cclxuLyoqXHJcbiAqIE1lZXRpbmdfQXR0ZW5kYW5jZV9Sb3cgcmVuZGVycyBhIHNpbmdsZSBtZWV0aW5nIHdpdGhpbiBhbiBldmVudC1ncm91cCBjYXJkOlxyXG4gKiB0aGUgbWVldGluZy1uYW1lIGxpbmssIGdyb3VwL2NvbW1pdHRlZSwgcm9vbS9sb2NhdGlvbiwgZGF0ZSwgYW5kXHJcbiAqIHRpbWUrdGltZXpvbmUgKGFsbCBsdXhvbi1mb3JtYXR0ZWQpLCB0b2dldGhlciB3aXRoIHRoZSBhdHRlbmRhbmNlIGFjdGlvblxyXG4gKiBidXR0b24gdGhhdCBkcml2ZXMgdGhlIHBlci1tZWV0aW5nIGF0dGVuZGFuY2Ugc3RhdGUgbWFjaGluZS5cclxuICpcclxuICogVGhlIGNvbXBvbmVudCBpcyBwdXJlbHkgcHJlc2VudGF0aW9uYWwg4oCUIGl0IGVtaXRzIG5hdmlnYXRpb24gYW5kIGF0dGVuZGFuY2VcclxuICogaW50ZW50cyB2aWEgYEBPdXRwdXQoKWAgYW5kIG5ldmVyIHBlcmZvcm1zIG5hdmlnYXRpb24gb3IgSFRUUCBpdHNlbGYuIFRoZVxyXG4gKiBhY3Rpb24gYnV0dG9uIGRlbGVnYXRlcyB0byB0aGUgcHVyZSBgcmVzb2x2ZUF0dGVuZGFuY2VBY3Rpb25gIGhhbmRsZXIgc28gdGhlXHJcbiAqIGVtaXQvZ3VhcmQgbG9naWMgaXMgc2hhcmVkIHdpdGggdGhlIHByb3BlcnR5LXRlc3RlZCBjb3JlIChQcm9wZXJ0eSAxKSwgYW5kIHRoZVxyXG4gKiBkaXNwbGF5ZWQgc3RhdGUgb25seSBhZHZhbmNlcyB3aGVuIHRoZSBob3N0IHVwZGF0ZXMgYGF0dGVuZGFuY2VTdGF0ZWAuXHJcbiAqIEBleHBvcnRcclxuICogQGNsYXNzIE1lZXRpbmdBdHRlbmRhbmNlUm93Q29tcG9uZW50XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3cnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lZXRpbmctYXR0ZW5kYW5jZS1yb3cuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lZXRpbmctYXR0ZW5kYW5jZS1yb3cuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVldGluZ0F0dGVuZGFuY2VSb3dDb21wb25lbnQge1xyXG4gIGNvbnN0YW50cyA9IGNvbnN0YW50cztcclxuXHJcbiAgLyoqIFRoZSBtZWV0aW5nIHJlbmRlcmVkIGJ5IHRoaXMgcm93LiAqL1xyXG4gIEBJbnB1dCgpIG1lZXRpbmchOiBNZWV0aW5nUm93O1xyXG5cclxuICAvKiogVGhlIGN1cnJlbnQgYXR0ZW5kYW5jZSBzdGF0ZSBjb250cm9sbGluZyBsYWJlbC9pbmRpY2F0b3IgYW5kIGFjdGlvbi4gKi9cclxuICBASW5wdXQoKSBhdHRlbmRhbmNlU3RhdGU6IEF0dGVuZGFuY2VTdGF0ZSA9IEF0dGVuZGFuY2VTdGF0ZS5OT1RfQVRURU5ESU5HO1xyXG5cclxuICAvKiogV2hldGhlciBhbiBhdHRlbmRhbmNlIGFjdGlvbiBmb3IgdGhpcyBtZWV0aW5nIGlzIGF3YWl0aW5nIHJlc29sdXRpb24uICovXHJcbiAgQElucHV0KCkgaXNJbkZsaWdodCA9IGZhbHNlO1xyXG5cclxuICAvKiogSG9zdCBwZXJtaXNzaW9ucyBnYXRpbmcgdGhlIGxvZy1hdHRlbmRhbmNlIC8gbGVhdmUtbWVldGluZyBidXR0b25zLiAqL1xyXG4gIEBJbnB1dCgpIHBlcm1pc3Npb25zOiBBdHRlbmRhbmNlQWN0aW9uUGVybWlzc2lvbnMgPSB7XHJcbiAgICBjYW5Mb2dBdHRlbmRhbmNlOiBmYWxzZSxcclxuICAgIGNhbkxlYXZlTWVldGluZzogZmFsc2UsXHJcbiAgfTtcclxuXHJcbiAgLyoqIEVtaXRzIHRoZSBtZWV0aW5nIGlkIHdoZW4gdGhlIG1lZXRpbmctbmFtZSBsaW5rIGlzIGFjdGl2YXRlZCAoUmVxIDcuNCkuICovXHJcbiAgQE91dHB1dCgpIG9wZW5NZWV0aW5nID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIC8qKiBFbWl0cyB0aGUgbWVldGluZyBpZCB0byByZXF1ZXN0IGxvZ2dpbmcgYXR0ZW5kYW5jZSAoUmVxIDcuNykuICovXHJcbiAgQE91dHB1dCgpIGxvZ0F0dGVuZGFuY2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgLyoqIEVtaXRzIHRoZSBtZWV0aW5nIGlkIHRvIHJlcXVlc3QgbGVhdmluZyB0aGUgbWVldGluZyAoUmVxIDcuOCkuICovXHJcbiAgQE91dHB1dCgpIGxlYXZlTWVldGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvKiogRXhwb3NlIHRoZSBlbnVtIHRvIHRoZSB0ZW1wbGF0ZSBmb3Igc3RhdGUgY29tcGFyaXNvbnMuICovXHJcbiAgcmVhZG9ubHkgQXR0ZW5kYW5jZVN0YXRlID0gQXR0ZW5kYW5jZVN0YXRlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRoaXMgcm93IGlzIGFjdGlvbmFibGUg4oCUIGEgbm9uLWVtcHR5IGBtZWV0aW5nSWRgIGlzIHJlcXVpcmVkIGZvciB0aGVcclxuICAgKiBtZWV0aW5nLW5hbWUgbGluayBhbmQgYWN0aW9uIGJ1dHRvbiB0byBlbWl0IGFueXRoaW5nIChSZXEgNy4xMCkuXHJcbiAgICogQHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSB3aGVuIHRoZSByb3cgaGFzIGEgdXNhYmxlIG1lZXRpbmcgaWQuXHJcbiAgICogQG1lbWJlcm9mIE1lZXRpbmdBdHRlbmRhbmNlUm93Q29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0IGlzQWN0aW9uYWJsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMubWVldGluZz8ubWVldGluZ0lkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciB0aGUgcm93IGlzIGluIHRoZSBjdXJyZW50bHktYXR0ZW5kaW5nIHN0YXRlLCB3aGljaCBzaG93cyB0aGVcclxuICAgKiBjdXJyZW50bHktYXR0ZW5kaW5nIGluZGljYXRvciBhbmQgdGhlIGxlYXZlLW1lZXRpbmcgYWN0aW9uIChSZXEgNy41KS5cclxuICAgKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIHdoZW4gdGhlIGF0dGVuZGFuY2Ugc3RhdGUgaXMgYENVUlJFTlRMWV9BVFRFTkRJTkdgLlxyXG4gICAqIEBtZW1iZXJvZiBNZWV0aW5nQXR0ZW5kYW5jZVJvd0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldCBpc0N1cnJlbnRseUF0dGVuZGluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmF0dGVuZGFuY2VTdGF0ZSA9PT0gQXR0ZW5kYW5jZVN0YXRlLkNVUlJFTlRMWV9BVFRFTkRJTkc7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRoZSBsb2ctYXR0ZW5kYW5jZSBidXR0b24gc2hvdWxkIGJlIHNob3duOiBvbmx5IHdoZW4gdGhlIHJvdyBpcyBpblxyXG4gICAqIHRoZSBsb2cgc3RhdGUgKG5vdCBjdXJyZW50bHkgYXR0ZW5kaW5nKSBhbmQgdGhlIGhvc3QgZ3JhbnRzXHJcbiAgICogYGNhbkxvZ0F0dGVuZGFuY2VgIChSZXEgNy42LCAxMi4xKS5cclxuICAgKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIHdoZW4gdGhlIGxvZy1hdHRlbmRhbmNlIGJ1dHRvbiBpcyB2aXNpYmxlLlxyXG4gICAqIEBtZW1iZXJvZiBNZWV0aW5nQXR0ZW5kYW5jZVJvd0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldCBzaG93TG9nQXR0ZW5kYW5jZUJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhdGhpcy5pc0N1cnJlbnRseUF0dGVuZGluZyAmJiAhIXRoaXMucGVybWlzc2lvbnM/LmNhbkxvZ0F0dGVuZGFuY2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRoZSBsZWF2ZS1tZWV0aW5nIGJ1dHRvbiBzaG91bGQgYmUgc2hvd246IG9ubHkgd2hlbiB0aGUgcm93IGlzIGluXHJcbiAgICogdGhlIGN1cnJlbnRseS1hdHRlbmRpbmcgc3RhdGUgYW5kIHRoZSBob3N0IGdyYW50cyBgY2FuTGVhdmVNZWV0aW5nYFxyXG4gICAqIChSZXEgNy41LCAxMi4yKS5cclxuICAgKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIHdoZW4gdGhlIGxlYXZlLW1lZXRpbmcgYnV0dG9uIGlzIHZpc2libGUuXHJcbiAgICogQG1lbWJlcm9mIE1lZXRpbmdBdHRlbmRhbmNlUm93Q29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0IHNob3dMZWF2ZU1lZXRpbmdCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0N1cnJlbnRseUF0dGVuZGluZyAmJiAhIXRoaXMucGVybWlzc2lvbnM/LmNhbkxlYXZlTWVldGluZztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc29sdmVzIGEgZ3JvdXAtb3ItY29tbWl0dGVlIC8gcm9vbS1vci1sb2NhdGlvbiBmaWVsZCB2YWx1ZSwgc3Vic3RpdHV0aW5nXHJcbiAgICogdGhlIGVtcHR5LWZpZWxkIHBsYWNlaG9sZGVyIGZyb20gYGNvbnN0YW50cy5qc29uYCB3aGVuIHRoZSB2YWx1ZSBpcyBlbXB0eSBvclxyXG4gICAqIHVuZGVmaW5lZCAoUmVxIDcuMikuXHJcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IHZhbHVlIC0gVGhlIHJhdyBmaWVsZCB2YWx1ZSBmcm9tIHRoZSBtZWV0aW5nLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIHZhbHVlIHRvIGRpc3BsYXksIG9yIHRoZSBlbXB0eS1maWVsZCBwbGFjZWhvbGRlci5cclxuICAgKiBAbWVtYmVyb2YgTWVldGluZ0F0dGVuZGFuY2VSb3dDb21wb25lbnRcclxuICAgKi9cclxuICByZXNvbHZlRmllbGRWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBsYWNlaG9sZGVyID1cclxuICAgICAgdGhpcy5jb25zdGFudHM/Lm1lZXRpbmdSb3c/LmVtcHR5RmllbGRQbGFjZWhvbGRlciA/PyAn4oCUJztcclxuICAgIHJldHVybiB2YWx1ZSAmJiB2YWx1ZS50cmltKCkubGVuZ3RoID4gMCA/IHZhbHVlIDogcGxhY2Vob2xkZXI7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGb3JtYXRzIHRoZSBtZWV0aW5nIGRhdGUgZm9yIGRpc3BsYXkgdXNpbmcgdGhlIHNoYXJlZCBsdXhvbiBkaXNwbGF5IGZvcm1hdFxyXG4gICAqIChSZXEgNy4zKS4gRmFsbHMgYmFjayB0byB0aGUgcmF3IHZhbHVlIHdoZW4gaXQgY2Fubm90IGJlIHBhcnNlZC5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IFRoZSBmb3JtYXR0ZWQgbWVldGluZyBkYXRlLlxyXG4gICAqIEBtZW1iZXJvZiBNZWV0aW5nQXR0ZW5kYW5jZVJvd0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldCBmb3JtYXR0ZWREYXRlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtYXRJc28odGhpcy5tZWV0aW5nPy5tZWV0aW5nRGF0ZSwgRGF0ZUZvcm1hdHMuZGlzcGxheUZvcm1hdCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGb3JtYXRzIHRoZSBtZWV0aW5nIHRpbWUgKyB0aW1lem9uZSBmb3IgZGlzcGxheSB1c2luZyBsdXhvbiAoUmVxIDcuMykuXHJcbiAgICogVGhlIHRpbWV6b25lIGFiYnJldmlhdGlvbiBmcm9tIHRoZSBtZWV0aW5nIG1vZGVsIGlzIGFwcGVuZGVkIHRvIHRoZSBwYXJzZWRcclxuICAgKiB0aW1lLiBGYWxscyBiYWNrIHRvIHRoZSByYXcgdmFsdWUgd2hlbiBpdCBjYW5ub3QgYmUgcGFyc2VkLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIGZvcm1hdHRlZCBtZWV0aW5nIHRpbWUgd2l0aCB0aW1lem9uZS5cclxuICAgKiBAbWVtYmVyb2YgTWVldGluZ0F0dGVuZGFuY2VSb3dDb21wb25lbnRcclxuICAgKi9cclxuICBnZXQgZm9ybWF0dGVkVGltZSgpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdGltZSA9IHRoaXMuZm9ybWF0SXNvKFxyXG4gICAgICB0aGlzLm1lZXRpbmc/Lm1lZXRpbmdUaW1lLFxyXG4gICAgICBEYXRlRm9ybWF0cy50aW1lTWVyaWRpZW1Gb3JtYXRcclxuICAgICk7XHJcbiAgICBjb25zdCB0aW1lem9uZSA9IHRoaXMubWVldGluZz8udGltZXpvbmUgPz8gJyc7XHJcbiAgICByZXR1cm4gdGltZXpvbmUgPyBgJHt0aW1lfSAke3RpbWV6b25lfWAgOiB0aW1lO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBhY3RpdmF0aW9uIG9mIHRoZSBhdHRlbmRhbmNlIGFjdGlvbiBidXR0b24uIERlbGVnYXRlcyB0byB0aGUgcHVyZVxyXG4gICAqIGByZXNvbHZlQXR0ZW5kYW5jZUFjdGlvbmAgaGFuZGxlciBhbmQgZW1pdHMgZXhhY3RseSBvbmUgZXZlbnQgYmFzZWQgb24gdGhlXHJcbiAgICogcmVzb2x2ZWQgYWN0aW9uOiBgbG9nQXR0ZW5kYW5jZWAgZm9yIGBMT0dfQVRURU5EQU5DRWAsIGBsZWF2ZU1lZXRpbmdgIGZvclxyXG4gICAqIGBMRUFWRV9NRUVUSU5HYCwgYW5kIG5vdGhpbmcgZm9yIGBOT05FYCAoZW1wdHkgaWQgb3IgaW4tZmxpZ2h0KVxyXG4gICAqIChSZXEgNy43LCA3LjgsIDcuOSwgNy4xMCwgMTMuNikuXHJcbiAgICogQG1lbWJlcm9mIE1lZXRpbmdBdHRlbmRhbmNlUm93Q29tcG9uZW50XHJcbiAgICovXHJcbiAgb25BdHRlbmRhbmNlQWN0aW9uKCk6IHZvaWQge1xyXG4gICAgY29uc3QgYWN0aW9uID0gcmVzb2x2ZUF0dGVuZGFuY2VBY3Rpb24oXHJcbiAgICAgIHRoaXMuYXR0ZW5kYW5jZVN0YXRlLFxyXG4gICAgICB0aGlzLmlzSW5GbGlnaHQsXHJcbiAgICAgIHRoaXMubWVldGluZz8ubWVldGluZ0lkXHJcbiAgICApO1xyXG5cclxuICAgIGlmIChhY3Rpb24gPT09IEF0dGVuZGFuY2VBY3Rpb24uTE9HX0FUVEVOREFOQ0UpIHtcclxuICAgICAgdGhpcy5sb2dBdHRlbmRhbmNlLmVtaXQodGhpcy5tZWV0aW5nLm1lZXRpbmdJZCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYWN0aW9uID09PSBBdHRlbmRhbmNlQWN0aW9uLkxFQVZFX01FRVRJTkcpIHtcclxuICAgICAgdGhpcy5sZWF2ZU1lZXRpbmcuZW1pdCh0aGlzLm1lZXRpbmcubWVldGluZ0lkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgYWN0aXZhdGlvbiBvZiB0aGUgbWVldGluZy1uYW1lIGxpbmsuIEVtaXRzIHRoZSBtZWV0aW5nIGlkIG9ubHkgd2hlblxyXG4gICAqIHRoZSByb3cgaXMgYWN0aW9uYWJsZSAobm9uLWVtcHR5IG1lZXRpbmcgaWQpIChSZXEgNy40LCA3LjEwKS5cclxuICAgKiBAbWVtYmVyb2YgTWVldGluZ0F0dGVuZGFuY2VSb3dDb21wb25lbnRcclxuICAgKi9cclxuICBvbk9wZW5NZWV0aW5nKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzQWN0aW9uYWJsZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLm9wZW5NZWV0aW5nLmVtaXQodGhpcy5tZWV0aW5nLm1lZXRpbmdJZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQYXJzZXMgYW4gSVNPIHN0cmluZyB3aXRoIGx1eG9uIGFuZCBmb3JtYXRzIGl0IHdpdGggdGhlIHN1cHBsaWVkIHRva2VuLFxyXG4gICAqIHJldHVybmluZyB0aGUgcmF3IHZhbHVlIHVuY2hhbmdlZCB3aGVuIGl0IGlzIG1pc3Npbmcgb3IgdW5wYXJzZWFibGUuXHJcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IGlzb1ZhbHVlIC0gVGhlIElTTyBkYXRlL3RpbWUgc3RyaW5nLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmb3JtYXQgLSBUaGUgbHV4b24gZm9ybWF0IHRva2VuLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIGZvcm1hdHRlZCB2YWx1ZSBvciB0aGUgcmF3L2VtcHR5IGZhbGxiYWNrLlxyXG4gICAqIEBtZW1iZXJvZiBNZWV0aW5nQXR0ZW5kYW5jZVJvd0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgZm9ybWF0SXNvKGlzb1ZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghaXNvVmFsdWUpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgY29uc3QgcGFyc2VkID0gRGF0ZVRpbWUuZnJvbUlTTyhpc29WYWx1ZSwgeyBzZXRab25lOiB0cnVlIH0pO1xyXG4gICAgcmV0dXJuIHBhcnNlZC5pc1ZhbGlkID8gcGFyc2VkLnRvRm9ybWF0KGZvcm1hdCkgOiBpc29WYWx1ZTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93XCI+XHJcbiAgPGRpdiBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19kZXRhaWxzXCI+XHJcbiAgICA8IS0tIE1lZXRpbmctbmFtZSBsaW5rIChlbWl0cyBvcGVuTWVldGluZzsgbm9uLWFjdGlvbmFibGUgd2hlbiBpZCBtaXNzaW5nKS4gLS0+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19uYW1lLWxpbmtcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiIWlzQWN0aW9uYWJsZVwiXHJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29uc3RhbnRzPy5tZWV0aW5nUm93Py5hcmlhTGFiZWw/Lm1lZXRpbmdOYW1lTGluayA/PyAnVmlldyBtZWV0aW5nIGRldGFpbHMnXCJcclxuICAgICAgKGNsaWNrKT1cIm9uT3Blbk1lZXRpbmcoKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IG1lZXRpbmc/Lm1lZXRpbmdOYW1lIH19XHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8ZGwgY2xhc3M9XCJpZWVlc2EtbWVldGluZy1hdHRlbmRhbmNlLXJvd19fbWV0YVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtaXRlbVwiPlxyXG4gICAgICAgIDxkdCBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19tZXRhLXRlcm1cIj5cclxuICAgICAgICAgIHt7IGNvbnN0YW50cz8uZ3JvdXBzU2VjdGlvbj8uY29sdW1ucz8uZ3JvdXAgPz8gJ0dyb3VwJyB9fVxyXG4gICAgICAgIDwvZHQ+XHJcbiAgICAgICAgPGRkIGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtdmFsdWVcIj5cclxuICAgICAgICAgIHt7IHJlc29sdmVGaWVsZFZhbHVlKG1lZXRpbmc/Lmdyb3VwT3JDb21taXR0ZWUpIH19XHJcbiAgICAgICAgPC9kZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtaXRlbVwiPlxyXG4gICAgICAgIDxkdCBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19tZXRhLXRlcm1cIj5cclxuICAgICAgICAgIHt7IGNvbnN0YW50cz8uZ3JvdXBzU2VjdGlvbj8uY29sdW1ucz8uYWZmaWxpYXRpb24gPz8gJ0xvY2F0aW9uJyB9fVxyXG4gICAgICAgIDwvZHQ+XHJcbiAgICAgICAgPGRkIGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtdmFsdWVcIj5cclxuICAgICAgICAgIHt7IHJlc29sdmVGaWVsZFZhbHVlKG1lZXRpbmc/LnJvb21PckxvY2F0aW9uKSB9fVxyXG4gICAgICAgIDwvZGQ+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19tZXRhLWl0ZW1cIj5cclxuICAgICAgICA8ZHQgY2xhc3M9XCJpZWVlc2EtbWVldGluZy1hdHRlbmRhbmNlLXJvd19fbWV0YS10ZXJtXCI+RGF0ZTwvZHQ+XHJcbiAgICAgICAgPGRkIGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtdmFsdWVcIj5cclxuICAgICAgICAgIHt7IGZvcm1hdHRlZERhdGUgfX1cclxuICAgICAgICA8L2RkPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpZWVlc2EtbWVldGluZy1hdHRlbmRhbmNlLXJvd19fbWV0YS1pdGVtXCI+XHJcbiAgICAgICAgPGR0IGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX21ldGEtdGVybVwiPlRpbWU8L2R0PlxyXG4gICAgICAgIDxkZCBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19tZXRhLXZhbHVlXCI+XHJcbiAgICAgICAgICB7eyBmb3JtYXR0ZWRUaW1lIH19XHJcbiAgICAgICAgPC9kZD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2RsPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX2FjdGlvbnNcIj5cclxuICAgIDwhLS0gQ3VycmVudGx5LWF0dGVuZGluZyBpbmRpY2F0b3Igc2hvd24gb25seSBpbiB0aGUgYXR0ZW5kaW5nIHN0YXRlLiAtLT5cclxuICAgIDxzcGFuXHJcbiAgICAgICpuZ0lmPVwiaXNDdXJyZW50bHlBdHRlbmRpbmdcIlxyXG4gICAgICBjbGFzcz1cImllZWVzYS1tZWV0aW5nLWF0dGVuZGFuY2Utcm93X19hdHRlbmRpbmctaW5kaWNhdG9yXCJcclxuICAgID5cclxuICAgICAge3sgY29uc3RhbnRzPy5tZWV0aW5nUm93Py5jdXJyZW50bHlBdHRlbmRpbmdJbmRpY2F0b3IgPz8gJ0N1cnJlbnRseSBBdHRlbmRpbmcnIH19XHJcbiAgICA8L3NwYW4+XHJcblxyXG4gICAgPCEtLSBMb2ctYXR0ZW5kYW5jZSBidXR0b246IHNob3duIGluIHRoZSBsb2cgc3RhdGUgd2l0aCB0aGUgcGVybWlzc2lvbi4gLS0+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICpuZ0lmPVwic2hvd0xvZ0F0dGVuZGFuY2VCdXR0b25cIlxyXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgY2xhc3M9XCJpZWVlc2EtbWVldGluZy1hdHRlbmRhbmNlLXJvd19fYWN0aW9uLWJ1dHRvbiBpZWVlc2EtbWVldGluZy1hdHRlbmRhbmNlLXJvd19fYWN0aW9uLWJ1dHRvbi0tbG9nXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImlzSW5GbGlnaHQgfHwgIWlzQWN0aW9uYWJsZVwiXHJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29uc3RhbnRzPy5tZWV0aW5nUm93Py5hcmlhTGFiZWw/LmxvZ0F0dGVuZGFuY2UgPz8gJ0xvZyBhdHRlbmRhbmNlIGZvciB0aGlzIG1lZXRpbmcnXCJcclxuICAgICAgKGNsaWNrKT1cIm9uQXR0ZW5kYW5jZUFjdGlvbigpXCJcclxuICAgID5cclxuICAgICAge3sgY29uc3RhbnRzPy5tZWV0aW5nUm93Py5sb2dBdHRlbmRhbmNlTGFiZWwgPz8gJ0xvZyBBdHRlbmRhbmNlJyB9fVxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPCEtLSBMZWF2ZS1tZWV0aW5nIGJ1dHRvbjogc2hvd24gaW4gdGhlIGF0dGVuZGluZyBzdGF0ZSB3aXRoIHRoZSBwZXJtaXNzaW9uLiAtLT5cclxuICAgIDxidXR0b25cclxuICAgICAgKm5nSWY9XCJzaG93TGVhdmVNZWV0aW5nQnV0dG9uXCJcclxuICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgIGNsYXNzPVwiaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX2FjdGlvbi1idXR0b24gaWVlZXNhLW1lZXRpbmctYXR0ZW5kYW5jZS1yb3dfX2FjdGlvbi1idXR0b24tLWxlYXZlXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImlzSW5GbGlnaHQgfHwgIWlzQWN0aW9uYWJsZVwiXHJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29uc3RhbnRzPy5tZWV0aW5nUm93Py5hcmlhTGFiZWw/LmxlYXZlTWVldGluZyA/PyAnTGVhdmUgdGhpcyBtZWV0aW5nJ1wiXHJcbiAgICAgIChjbGljayk9XCJvbkF0dGVuZGFuY2VBY3Rpb24oKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IGNvbnN0YW50cz8ubWVldGluZ1Jvdz8ubGVhdmVNZWV0aW5nTGFiZWwgPz8gJ0xlYXZlIE1lZXRpbmcnIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { LegendComponent } from '@ieeesa-npm/presentation';
|
|
4
|
+
import * as constants from '../../assets/constants.json';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
/**
|
|
8
|
+
* Member_Level_Badge renders a single member-level value as a colored pill.
|
|
9
|
+
* It reuses the Presentation_Library Legend component for the pill primitive,
|
|
10
|
+
* sourcing the level-to-color mapping from `constants.json` (`memberLevel.colorMap`)
|
|
11
|
+
* with a nullish-coalescing fallback to the configured default color.
|
|
12
|
+
* @export
|
|
13
|
+
* @class MemberLevelBadgeComponent
|
|
14
|
+
*/
|
|
15
|
+
export class MemberLevelBadgeComponent {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.constants = constants;
|
|
18
|
+
this.memberLevelValue = '';
|
|
19
|
+
/** The Legend input consumed by the Presentation_Library Legend component. */
|
|
20
|
+
this.legends = this.buildLegends('');
|
|
21
|
+
}
|
|
22
|
+
set memberLevel(value) {
|
|
23
|
+
this.memberLevelValue = value ?? '';
|
|
24
|
+
this.legends = this.buildLegends(this.memberLevelValue);
|
|
25
|
+
}
|
|
26
|
+
get memberLevel() {
|
|
27
|
+
return this.memberLevelValue;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Builds the single-item Legend list for the supplied member level, resolving
|
|
31
|
+
* the pill color from the `constants.json` color map and falling back to the
|
|
32
|
+
* configured default color when the level has no explicit mapping.
|
|
33
|
+
* @param {string} memberLevel - The member-level label to render.
|
|
34
|
+
* @return {Legend[]} A single-element Legend array for the Legend component.
|
|
35
|
+
* @memberof MemberLevelBadgeComponent
|
|
36
|
+
*/
|
|
37
|
+
buildLegends(memberLevel) {
|
|
38
|
+
return [
|
|
39
|
+
{
|
|
40
|
+
label: memberLevel,
|
|
41
|
+
color: this.resolveColorClass(memberLevel),
|
|
42
|
+
hierarchy: 0,
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Resolves the CSS modifier class for a member level from the `constants.json`
|
|
48
|
+
* color map, using the `??` fallback to the `default` entry when the level is
|
|
49
|
+
* missing from the map.
|
|
50
|
+
* @param {string} memberLevel - The member-level label to resolve a color for.
|
|
51
|
+
* @return {string} The CSS modifier class applied to the pill.
|
|
52
|
+
* @memberof MemberLevelBadgeComponent
|
|
53
|
+
*/
|
|
54
|
+
resolveColorClass(memberLevel) {
|
|
55
|
+
const colorMap = this.constants?.memberLevel?.colorMap;
|
|
56
|
+
const token = colorMap?.[memberLevel] ?? colorMap?.['default'] ?? '$ieeesa-color-neutral';
|
|
57
|
+
return this.toColorClass(token);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Converts a shared-styles color token (for example `$ieeesa-color-success`)
|
|
61
|
+
* into a valid BEM-style CSS modifier class defined in this component's SCSS.
|
|
62
|
+
* @param {string} token - The color token from the color map.
|
|
63
|
+
* @return {string} A valid CSS class name.
|
|
64
|
+
* @memberof MemberLevelBadgeComponent
|
|
65
|
+
*/
|
|
66
|
+
toColorClass(token) {
|
|
67
|
+
const normalized = token.replace(/^\$ieeesa-color-/, '').replace(/^\$/, '');
|
|
68
|
+
return `ieeesa-member-level-badge--${normalized || 'neutral'}`;
|
|
69
|
+
}
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MemberLevelBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MemberLevelBadgeComponent, isStandalone: true, selector: "ieeesa-member-level-badge", inputs: { memberLevel: "memberLevel" }, ngImport: i0, template: "<span\r\n class=\"ieeesa-member-level-badge\"\r\n [attr.aria-label]=\"memberLevel\"\r\n>\r\n <ieeesa-legend\r\n *ngIf=\"memberLevel\"\r\n [legends]=\"legends\"\r\n ></ieeesa-legend>\r\n</span>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-member-level-badge,.ieeesa-member-level-badge .ieeesa-legend{display:inline-flex}.ieeesa-member-level-badge .ieeesa-legend__indicator{align-items:center;gap:4px;padding:4px 12px;border-radius:16px;background-color:#f0f5f9}.ieeesa-member-level-badge .ieeesa-legend__square{width:8px;min-width:8px;height:8px;margin:0;border-radius:50%}.ieeesa-member-level-badge .ieeesa-legend p{margin:0}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--success{background-color:#78d7ef}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--info{background-color:#00b5e2}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--warning{background-color:#ffd92e}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--primary{background-color:#00629b}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--neutral{background-color:#939094}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LegendComponent, selector: "ieeesa-legend", inputs: ["legends", "isSorting"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MemberLevelBadgeComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'ieeesa-member-level-badge', standalone: true, imports: [CommonModule, LegendComponent], encapsulation: ViewEncapsulation.None, template: "<span\r\n class=\"ieeesa-member-level-badge\"\r\n [attr.aria-label]=\"memberLevel\"\r\n>\r\n <ieeesa-legend\r\n *ngIf=\"memberLevel\"\r\n [legends]=\"legends\"\r\n ></ieeesa-legend>\r\n</span>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-member-level-badge,.ieeesa-member-level-badge .ieeesa-legend{display:inline-flex}.ieeesa-member-level-badge .ieeesa-legend__indicator{align-items:center;gap:4px;padding:4px 12px;border-radius:16px;background-color:#f0f5f9}.ieeesa-member-level-badge .ieeesa-legend__square{width:8px;min-width:8px;height:8px;margin:0;border-radius:50%}.ieeesa-member-level-badge .ieeesa-legend p{margin:0}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--success{background-color:#78d7ef}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--info{background-color:#00b5e2}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--warning{background-color:#ffd92e}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--primary{background-color:#00629b}.ieeesa-member-level-badge .ieeesa-legend__square.ieeesa-member-level-badge--neutral{background-color:#939094}\n"] }]
|
|
76
|
+
}], propDecorators: { memberLevel: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}] } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtYmVyLWxldmVsLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvbWVtYmVyLWxldmVsLWJhZGdlL21lbWJlci1sZXZlbC1iYWRnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9jb21wb25lbnRzL21lbWJlci1sZXZlbC1iYWRnZS9tZW1iZXItbGV2ZWwtYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBVSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEtBQUssU0FBUyxNQUFNLDZCQUE2QixDQUFDOzs7QUFFekQ7Ozs7Ozs7R0FPRztBQVVILE1BQU0sT0FBTyx5QkFBeUI7SUFUdEM7UUFVRSxjQUFTLEdBQUcsU0FBUyxDQUFDO1FBRWQscUJBQWdCLEdBQUcsRUFBRSxDQUFDO1FBVzlCLDhFQUE4RTtRQUM5RSxZQUFPLEdBQWEsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztLQWdEM0M7SUExREMsSUFDSSxXQUFXLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUNELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFLRDs7Ozs7OztPQU9HO0lBQ0ssWUFBWSxDQUFDLFdBQW1CO1FBQ3RDLE9BQU87WUFDTDtnQkFDRSxLQUFLLEVBQUUsV0FBVztnQkFDbEIsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUM7Z0JBQzFDLFNBQVMsRUFBRSxDQUFDO2FBQ2I7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSyxpQkFBaUIsQ0FBQyxXQUFtQjtRQUMzQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxRQUVqQyxDQUFDO1FBQ2QsTUFBTSxLQUFLLEdBQ1QsUUFBUSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksdUJBQXVCLENBQUM7UUFDOUUsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxZQUFZLENBQUMsS0FBYTtRQUNoQyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUUsT0FBTyw4QkFBOEIsVUFBVSxJQUFJLFNBQVMsRUFBRSxDQUFDO0lBQ2pFLENBQUM7K0dBOURVLHlCQUF5QjttR0FBekIseUJBQXlCLDZIQ3RCdEMsZ05BU0EsNHRURFFZLFlBQVksbUlBQUUsZUFBZTs7NEZBSzVCLHlCQUF5QjtrQkFUckMsU0FBUzsrQkFFRSwyQkFBMkIsY0FDekIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxpQkFHekIsaUJBQWlCLENBQUMsSUFBSTs4QkFRakMsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTGVnZW5kLCBMZWdlbmRDb21wb25lbnQgfSBmcm9tICdAaWVlZXNhLW5wbS9wcmVzZW50YXRpb24nO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuXHJcbi8qKlxyXG4gKiBNZW1iZXJfTGV2ZWxfQmFkZ2UgcmVuZGVycyBhIHNpbmdsZSBtZW1iZXItbGV2ZWwgdmFsdWUgYXMgYSBjb2xvcmVkIHBpbGwuXHJcbiAqIEl0IHJldXNlcyB0aGUgUHJlc2VudGF0aW9uX0xpYnJhcnkgTGVnZW5kIGNvbXBvbmVudCBmb3IgdGhlIHBpbGwgcHJpbWl0aXZlLFxyXG4gKiBzb3VyY2luZyB0aGUgbGV2ZWwtdG8tY29sb3IgbWFwcGluZyBmcm9tIGBjb25zdGFudHMuanNvbmAgKGBtZW1iZXJMZXZlbC5jb2xvck1hcGApXHJcbiAqIHdpdGggYSBudWxsaXNoLWNvYWxlc2NpbmcgZmFsbGJhY2sgdG8gdGhlIGNvbmZpZ3VyZWQgZGVmYXVsdCBjb2xvci5cclxuICogQGV4cG9ydFxyXG4gKiBAY2xhc3MgTWVtYmVyTGV2ZWxCYWRnZUNvbXBvbmVudFxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ2llZWVzYS1tZW1iZXItbGV2ZWwtYmFkZ2UnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTGVnZW5kQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWVtYmVyLWxldmVsLWJhZGdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZW1iZXItbGV2ZWwtYmFkZ2UuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVtYmVyTGV2ZWxCYWRnZUNvbXBvbmVudCB7XHJcbiAgY29uc3RhbnRzID0gY29uc3RhbnRzO1xyXG5cclxuICBwcml2YXRlIG1lbWJlckxldmVsVmFsdWUgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgbWVtYmVyTGV2ZWwodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5tZW1iZXJMZXZlbFZhbHVlID0gdmFsdWUgPz8gJyc7XHJcbiAgICB0aGlzLmxlZ2VuZHMgPSB0aGlzLmJ1aWxkTGVnZW5kcyh0aGlzLm1lbWJlckxldmVsVmFsdWUpO1xyXG4gIH1cclxuICBnZXQgbWVtYmVyTGV2ZWwoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm1lbWJlckxldmVsVmFsdWU7XHJcbiAgfVxyXG5cclxuICAvKiogVGhlIExlZ2VuZCBpbnB1dCBjb25zdW1lZCBieSB0aGUgUHJlc2VudGF0aW9uX0xpYnJhcnkgTGVnZW5kIGNvbXBvbmVudC4gKi9cclxuICBsZWdlbmRzOiBMZWdlbmRbXSA9IHRoaXMuYnVpbGRMZWdlbmRzKCcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQnVpbGRzIHRoZSBzaW5nbGUtaXRlbSBMZWdlbmQgbGlzdCBmb3IgdGhlIHN1cHBsaWVkIG1lbWJlciBsZXZlbCwgcmVzb2x2aW5nXHJcbiAgICogdGhlIHBpbGwgY29sb3IgZnJvbSB0aGUgYGNvbnN0YW50cy5qc29uYCBjb2xvciBtYXAgYW5kIGZhbGxpbmcgYmFjayB0byB0aGVcclxuICAgKiBjb25maWd1cmVkIGRlZmF1bHQgY29sb3Igd2hlbiB0aGUgbGV2ZWwgaGFzIG5vIGV4cGxpY2l0IG1hcHBpbmcuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lbWJlckxldmVsIC0gVGhlIG1lbWJlci1sZXZlbCBsYWJlbCB0byByZW5kZXIuXHJcbiAgICogQHJldHVybiB7TGVnZW5kW119IEEgc2luZ2xlLWVsZW1lbnQgTGVnZW5kIGFycmF5IGZvciB0aGUgTGVnZW5kIGNvbXBvbmVudC5cclxuICAgKiBAbWVtYmVyb2YgTWVtYmVyTGV2ZWxCYWRnZUNvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYnVpbGRMZWdlbmRzKG1lbWJlckxldmVsOiBzdHJpbmcpOiBMZWdlbmRbXSB7XHJcbiAgICByZXR1cm4gW1xyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6IG1lbWJlckxldmVsLFxyXG4gICAgICAgIGNvbG9yOiB0aGlzLnJlc29sdmVDb2xvckNsYXNzKG1lbWJlckxldmVsKSxcclxuICAgICAgICBoaWVyYXJjaHk6IDAsXHJcbiAgICAgIH0sXHJcbiAgICBdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzb2x2ZXMgdGhlIENTUyBtb2RpZmllciBjbGFzcyBmb3IgYSBtZW1iZXIgbGV2ZWwgZnJvbSB0aGUgYGNvbnN0YW50cy5qc29uYFxyXG4gICAqIGNvbG9yIG1hcCwgdXNpbmcgdGhlIGA/P2AgZmFsbGJhY2sgdG8gdGhlIGBkZWZhdWx0YCBlbnRyeSB3aGVuIHRoZSBsZXZlbCBpc1xyXG4gICAqIG1pc3NpbmcgZnJvbSB0aGUgbWFwLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBtZW1iZXJMZXZlbCAtIFRoZSBtZW1iZXItbGV2ZWwgbGFiZWwgdG8gcmVzb2x2ZSBhIGNvbG9yIGZvci5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IFRoZSBDU1MgbW9kaWZpZXIgY2xhc3MgYXBwbGllZCB0byB0aGUgcGlsbC5cclxuICAgKiBAbWVtYmVyb2YgTWVtYmVyTGV2ZWxCYWRnZUNvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVzb2x2ZUNvbG9yQ2xhc3MobWVtYmVyTGV2ZWw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBjb2xvck1hcCA9IHRoaXMuY29uc3RhbnRzPy5tZW1iZXJMZXZlbD8uY29sb3JNYXAgYXNcclxuICAgICAgfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XHJcbiAgICAgIHwgdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgdG9rZW4gPVxyXG4gICAgICBjb2xvck1hcD8uW21lbWJlckxldmVsXSA/PyBjb2xvck1hcD8uWydkZWZhdWx0J10gPz8gJyRpZWVlc2EtY29sb3ItbmV1dHJhbCc7XHJcbiAgICByZXR1cm4gdGhpcy50b0NvbG9yQ2xhc3ModG9rZW4pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgYSBzaGFyZWQtc3R5bGVzIGNvbG9yIHRva2VuIChmb3IgZXhhbXBsZSBgJGllZWVzYS1jb2xvci1zdWNjZXNzYClcclxuICAgKiBpbnRvIGEgdmFsaWQgQkVNLXN0eWxlIENTUyBtb2RpZmllciBjbGFzcyBkZWZpbmVkIGluIHRoaXMgY29tcG9uZW50J3MgU0NTUy5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gdG9rZW4gLSBUaGUgY29sb3IgdG9rZW4gZnJvbSB0aGUgY29sb3IgbWFwLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gQSB2YWxpZCBDU1MgY2xhc3MgbmFtZS5cclxuICAgKiBAbWVtYmVyb2YgTWVtYmVyTGV2ZWxCYWRnZUNvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgdG9Db2xvckNsYXNzKHRva2VuOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IHRva2VuLnJlcGxhY2UoL15cXCRpZWVlc2EtY29sb3ItLywgJycpLnJlcGxhY2UoL15cXCQvLCAnJyk7XHJcbiAgICByZXR1cm4gYGllZWVzYS1tZW1iZXItbGV2ZWwtYmFkZ2UtLSR7bm9ybWFsaXplZCB8fCAnbmV1dHJhbCd9YDtcclxuICB9XHJcbn1cclxuIiwiPHNwYW5cclxuICBjbGFzcz1cImllZWVzYS1tZW1iZXItbGV2ZWwtYmFkZ2VcIlxyXG4gIFthdHRyLmFyaWEtbGFiZWxdPVwibWVtYmVyTGV2ZWxcIlxyXG4+XHJcbiAgPGllZWVzYS1sZWdlbmRcclxuICAgICpuZ0lmPVwibWVtYmVyTGV2ZWxcIlxyXG4gICAgW2xlZ2VuZHNdPVwibGVnZW5kc1wiXHJcbiAgPjwvaWVlZXNhLWxlZ2VuZD5cclxuPC9zcGFuPlxyXG4iXX0=
|