@ieeesa-npm/groups 0.15.10 → 0.15.12
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/esm2022/lib/assets/constants.json +35 -3
- package/esm2022/lib/assets/country-calling-codes.mjs +83 -0
- package/esm2022/lib/assets/form-validations.mjs +7 -2
- package/esm2022/lib/components/add-user-roster/add-user-roster.component.mjs +160 -3
- package/esm2022/lib/components/edit-user-roles/edit-user-roles.component.mjs +102 -4
- package/esm2022/lib/components/roster-import/roster-import.component.mjs +120 -28
- package/esm2022/lib/components/view-roster/view-roster.component.mjs +13 -4
- package/esm2022/lib/groups.component.mjs +24 -2
- package/esm2022/lib/models/add-new-user.model.mjs +1 -1
- package/esm2022/lib/models/add-or-edit-user-group.model.mjs +1 -1
- package/esm2022/lib/models/group-user-info.model.mjs +1 -1
- package/esm2022/lib/models/required-profile-fields.model.mjs +2 -0
- package/esm2022/lib/models/roster-import.model.mjs +1 -1
- package/esm2022/lib/models/table-column-schema-user-group.model.mjs +3 -1
- package/esm2022/lib/models/user-info.model.mjs +1 -1
- package/esm2022/lib/models/user.model.mjs +1 -1
- package/esm2022/lib/services/groups.service.mjs +81 -7
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ieeesa-npm-groups.mjs +616 -46
- package/fesm2022/ieeesa-npm-groups.mjs.map +1 -1
- package/lib/assets/country-calling-codes.d.ts +14 -0
- package/lib/assets/form-validations.d.ts +3 -0
- package/lib/components/add-user-roster/add-user-roster.component.d.ts +18 -0
- package/lib/components/create-group/create-group.component.d.ts +7 -2
- package/lib/components/edit-user-roles/edit-user-roles.component.d.ts +19 -0
- package/lib/components/roster-import/roster-import.component.d.ts +48 -8
- package/lib/groups.component.d.ts +14 -1
- package/lib/models/add-new-user.model.d.ts +3 -0
- package/lib/models/add-or-edit-user-group.model.d.ts +3 -0
- package/lib/models/group-user-info.model.d.ts +3 -0
- package/lib/models/required-profile-fields.model.d.ts +20 -0
- package/lib/models/roster-import.model.d.ts +6 -3
- package/lib/models/table-column-schema-user-group.model.d.ts +3 -1
- package/lib/models/user-info.model.d.ts +3 -0
- package/lib/models/user.model.d.ts +6 -0
- package/lib/services/groups.service.d.ts +49 -4
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -7,7 +7,7 @@ import { FormsModule, Validators, FormControl } from '@angular/forms';
|
|
|
7
7
|
import * as i2$1 from '@ieeesa-npm/presentation';
|
|
8
8
|
import { SlideToggleComponent, AlignType, FormControlType, DynamicFormComponent, MenuComponent, IconButtonComponent, TextTruncatedDirective, TableColumnType, DataTableComponent, RadioComponent, TabsComponent, SearchType, ExportFormat, PolicyConfirmationDialogComponent, ExportSuccessDialogComponent, ChipsType, TableColumnSortDirection, ModalConfirmationComponent, ExportFormatPopoverComponent, ModalComponent, SearchComponent, SelectComponent, LegendComponent } from '@ieeesa-npm/presentation';
|
|
9
9
|
import * as i2 from '@ieeesa-npm/utility';
|
|
10
|
-
import { AlertsService } from '@ieeesa-npm/utility';
|
|
10
|
+
import { StorageKeys, AlertsService } from '@ieeesa-npm/utility';
|
|
11
11
|
import * as i1$1 from '@angular/common/http';
|
|
12
12
|
import { HttpErrorResponse, HttpParams } from '@angular/common/http';
|
|
13
13
|
import * as i1 from '@angular/material/dialog';
|
|
@@ -42,6 +42,9 @@ var addUserRoster = {
|
|
|
42
42
|
fullName: "Name",
|
|
43
43
|
firstName: "First Name",
|
|
44
44
|
lastName: "Last Name",
|
|
45
|
+
phoneCountryCode: "Country Code",
|
|
46
|
+
phoneNumber: "Phone Number",
|
|
47
|
+
address: "Address",
|
|
45
48
|
role: "Role",
|
|
46
49
|
classification: "Classification",
|
|
47
50
|
representingOrganization: "Representing Organization",
|
|
@@ -51,6 +54,9 @@ var addUserRoster = {
|
|
|
51
54
|
fullName: "Full name",
|
|
52
55
|
firstName: "First Name",
|
|
53
56
|
lastName: "Last Name",
|
|
57
|
+
phoneCountryCode: "Phone Country Code",
|
|
58
|
+
phoneNumber: "Phone Number",
|
|
59
|
+
address: "Address",
|
|
54
60
|
role: "Role",
|
|
55
61
|
classification: "Classification",
|
|
56
62
|
memberType: "Member Type",
|
|
@@ -61,6 +67,9 @@ var addUserRoster = {
|
|
|
61
67
|
fullName: "ariaFullName",
|
|
62
68
|
firstName: "ariaFirstName",
|
|
63
69
|
lastName: "ariaLastName",
|
|
70
|
+
phoneCountryCode: "ariaPhoneCountryCode",
|
|
71
|
+
phoneNumber: "ariaPhoneNumber",
|
|
72
|
+
address: "ariaAddress",
|
|
64
73
|
role: "ariaRole",
|
|
65
74
|
classification: "ariaClassification",
|
|
66
75
|
memberType: "ariaMemberType",
|
|
@@ -72,12 +81,15 @@ var addUserRoster = {
|
|
|
72
81
|
required: "This field is required.",
|
|
73
82
|
limit: {
|
|
74
83
|
representingOrganizationMaxChars: "Representing Organization must not be greater than 250 characters long.",
|
|
75
|
-
representingOrganizationMinChars: "Representing Organization must not be lesser than 3 characters."
|
|
84
|
+
representingOrganizationMinChars: "Representing Organization must not be lesser than 3 characters.",
|
|
85
|
+
phoneNumberMaxChars: "Phone Number must not be greater than 20 characters long.",
|
|
86
|
+
addressMaxChars: "Address must not be greater than 500 characters long."
|
|
76
87
|
},
|
|
77
88
|
pattern: {
|
|
78
89
|
email: "Please enter valid email.",
|
|
79
90
|
representingOrganization: "Representing Organization contains invalid characters. Please enter alphanumeric, special characters and whitespace only.",
|
|
80
|
-
firstOrLastName: "This field is required."
|
|
91
|
+
firstOrLastName: "This field is required.",
|
|
92
|
+
phoneNumber: "Please enter a valid phone number."
|
|
81
93
|
}
|
|
82
94
|
},
|
|
83
95
|
success: {
|
|
@@ -89,11 +101,17 @@ var addUserRoster = {
|
|
|
89
101
|
fullName: "Enter user full name.",
|
|
90
102
|
firstName: "Enter user's first name.",
|
|
91
103
|
lastName: "Enter user's last name.",
|
|
104
|
+
phoneNumber: "Enter user's phone number.",
|
|
105
|
+
address: "Enter user's address.",
|
|
92
106
|
role: "<strong>Note:</strong> In order to remove all roles, please remove the user from the system user group.",
|
|
93
107
|
roleForIndividualRoster: "Select Role(s) from the options.",
|
|
94
108
|
classification: "Select Classification from the dropdown.",
|
|
95
109
|
memberType: "Select Member Type from the dropdown.",
|
|
96
110
|
representingOrganization: "Enter the name of the representing organization. Check the box next to all that apply. If the organization is not listed, type the full name and press Enter."
|
|
111
|
+
},
|
|
112
|
+
characterLimit: {
|
|
113
|
+
phoneNumber: 20,
|
|
114
|
+
address: 500
|
|
97
115
|
}
|
|
98
116
|
};
|
|
99
117
|
var createGroup = {
|
|
@@ -326,7 +344,9 @@ var viewRoster = {
|
|
|
326
344
|
memberType: "Member Type",
|
|
327
345
|
organizationName: "Representing Org",
|
|
328
346
|
classification: "Classification",
|
|
329
|
-
role: "Role"
|
|
347
|
+
role: "Role",
|
|
348
|
+
phoneNumber: "Phone Number",
|
|
349
|
+
address: "Address"
|
|
330
350
|
},
|
|
331
351
|
searchPlaceholderSystemUsers: "Search by Name/Email Address",
|
|
332
352
|
searchPlaceholderIndividual: "Search by Name/Email Address/Representing Org",
|
|
@@ -399,6 +419,16 @@ var rosterImport = {
|
|
|
399
419
|
"Producer"
|
|
400
420
|
]
|
|
401
421
|
],
|
|
422
|
+
tenantFieldLabels: {
|
|
423
|
+
phone: "Phone Number",
|
|
424
|
+
address: "Address",
|
|
425
|
+
employer: "Employer"
|
|
426
|
+
},
|
|
427
|
+
tenantFieldSampleValues: {
|
|
428
|
+
phone: "+1 555 000 1234",
|
|
429
|
+
address: "123 Main St, City, Country",
|
|
430
|
+
employer: "Acme Corp"
|
|
431
|
+
},
|
|
402
432
|
uploadLabel: "Upload your file",
|
|
403
433
|
downloadSampleLabel: "Download Sample File",
|
|
404
434
|
sampleFileName: "Roster_Sample.csv",
|
|
@@ -424,6 +454,7 @@ var rosterImport = {
|
|
|
424
454
|
singleFileOnly: "Please upload a single file at a time.",
|
|
425
455
|
noDataRecords: "No roster data found. The selected file contains headers but no roster records.",
|
|
426
456
|
missingHeaders: "Incorrect file format. Mandatory column headers are missing",
|
|
457
|
+
forbidden: "You do not have permission to import a roster for this group.",
|
|
427
458
|
uploadFailed: "An error occurred while importing the roster. Please try again."
|
|
428
459
|
},
|
|
429
460
|
errorLog: {
|
|
@@ -509,6 +540,7 @@ var errors = {
|
|
|
509
540
|
"1037": "Group and parent group should not be same.",
|
|
510
541
|
"1038": "Reassigning parent for this group is not allowed.",
|
|
511
542
|
"1039": "You may not remove yourself from admin role.",
|
|
543
|
+
"1071": "You do not have permission to import a roster for this group.",
|
|
512
544
|
"1072": "Incorrect file type. Only .xlsx and .csv files are supported.",
|
|
513
545
|
"1073": "File size exceeds the maximum allowed size of 10MB.",
|
|
514
546
|
"1074": "The file exceeds the maximum allowed limit of 10,000 rows.",
|
|
@@ -626,7 +658,12 @@ const GroupsValidationPatterns = {
|
|
|
626
658
|
// Representing Organization field regular expression which accept Alpha Numeric, Special Characters and whitespace.
|
|
627
659
|
representingOrganization: /^(?=.*[a-zA-Z])[\w\s!"#$%&'()*+,-.\/\:;<=>?@[\]^_`{|}~\\]+$/i,
|
|
628
660
|
// First or Last Name field regular expression which does not allow only whitespace or empty string.
|
|
629
|
-
firstOrLastName: /^(?!\s*$)
|
|
661
|
+
firstOrLastName: /^(?!\s*$).+/,
|
|
662
|
+
// Phone Number field regular expression which accepts digits, spaces and the common phone characters + - ( ) .
|
|
663
|
+
phoneNumber: /^[+]?[0-9\s\-().]{1,20}$/,
|
|
664
|
+
phoneNumberMaxLength: 20,
|
|
665
|
+
// Address field maximum length.
|
|
666
|
+
addressMaxLength: 500
|
|
630
667
|
};
|
|
631
668
|
|
|
632
669
|
/* eslint-disable no-unused-vars */
|
|
@@ -713,6 +750,89 @@ var GroupRosterType;
|
|
|
713
750
|
GroupRosterType["ENTITY"] = "Entity";
|
|
714
751
|
})(GroupRosterType || (GroupRosterType = {}));
|
|
715
752
|
|
|
753
|
+
/**
|
|
754
|
+
* Frontend-only static list of country calling (dialing) codes used by the
|
|
755
|
+
* Phone Number field's country-code dropdown in the add-user-roster form.
|
|
756
|
+
*
|
|
757
|
+
* This is static reference data (it does not change per request), so it is kept
|
|
758
|
+
* on the frontend rather than fetched from an API — no extra dependency needed.
|
|
759
|
+
* Both `id` and `name` are the raw calling code (e.g. `+1`) so the dropdown
|
|
760
|
+
* shows only the code and that same code is what gets persisted/sent to the
|
|
761
|
+
* backend. Countries that share a calling code are represented once.
|
|
762
|
+
*/
|
|
763
|
+
const COUNTRY_CALLING_CODES = [
|
|
764
|
+
{ id: '+1', name: '+1' },
|
|
765
|
+
{ id: '+7', name: '+7' },
|
|
766
|
+
{ id: '+20', name: '+20' },
|
|
767
|
+
{ id: '+27', name: '+27' },
|
|
768
|
+
{ id: '+30', name: '+30' },
|
|
769
|
+
{ id: '+31', name: '+31' },
|
|
770
|
+
{ id: '+32', name: '+32' },
|
|
771
|
+
{ id: '+33', name: '+33' },
|
|
772
|
+
{ id: '+34', name: '+34' },
|
|
773
|
+
{ id: '+36', name: '+36' },
|
|
774
|
+
{ id: '+39', name: '+39' },
|
|
775
|
+
{ id: '+40', name: '+40' },
|
|
776
|
+
{ id: '+41', name: '+41' },
|
|
777
|
+
{ id: '+43', name: '+43' },
|
|
778
|
+
{ id: '+44', name: '+44' },
|
|
779
|
+
{ id: '+45', name: '+45' },
|
|
780
|
+
{ id: '+46', name: '+46' },
|
|
781
|
+
{ id: '+47', name: '+47' },
|
|
782
|
+
{ id: '+48', name: '+48' },
|
|
783
|
+
{ id: '+49', name: '+49' },
|
|
784
|
+
{ id: '+51', name: '+51' },
|
|
785
|
+
{ id: '+52', name: '+52' },
|
|
786
|
+
{ id: '+53', name: '+53' },
|
|
787
|
+
{ id: '+54', name: '+54' },
|
|
788
|
+
{ id: '+55', name: '+55' },
|
|
789
|
+
{ id: '+56', name: '+56' },
|
|
790
|
+
{ id: '+57', name: '+57' },
|
|
791
|
+
{ id: '+58', name: '+58' },
|
|
792
|
+
{ id: '+60', name: '+60' },
|
|
793
|
+
{ id: '+61', name: '+61' },
|
|
794
|
+
{ id: '+62', name: '+62' },
|
|
795
|
+
{ id: '+63', name: '+63' },
|
|
796
|
+
{ id: '+64', name: '+64' },
|
|
797
|
+
{ id: '+65', name: '+65' },
|
|
798
|
+
{ id: '+66', name: '+66' },
|
|
799
|
+
{ id: '+81', name: '+81' },
|
|
800
|
+
{ id: '+82', name: '+82' },
|
|
801
|
+
{ id: '+84', name: '+84' },
|
|
802
|
+
{ id: '+86', name: '+86' },
|
|
803
|
+
{ id: '+90', name: '+90' },
|
|
804
|
+
{ id: '+91', name: '+91' },
|
|
805
|
+
{ id: '+92', name: '+92' },
|
|
806
|
+
{ id: '+93', name: '+93' },
|
|
807
|
+
{ id: '+94', name: '+94' },
|
|
808
|
+
{ id: '+95', name: '+95' },
|
|
809
|
+
{ id: '+98', name: '+98' },
|
|
810
|
+
{ id: '+212', name: '+212' },
|
|
811
|
+
{ id: '+213', name: '+213' },
|
|
812
|
+
{ id: '+234', name: '+234' },
|
|
813
|
+
{ id: '+254', name: '+254' },
|
|
814
|
+
{ id: '+255', name: '+255' },
|
|
815
|
+
{ id: '+256', name: '+256' },
|
|
816
|
+
{ id: '+351', name: '+351' },
|
|
817
|
+
{ id: '+352', name: '+352' },
|
|
818
|
+
{ id: '+353', name: '+353' },
|
|
819
|
+
{ id: '+354', name: '+354' },
|
|
820
|
+
{ id: '+358', name: '+358' },
|
|
821
|
+
{ id: '+380', name: '+380' },
|
|
822
|
+
{ id: '+420', name: '+420' },
|
|
823
|
+
{ id: '+421', name: '+421' },
|
|
824
|
+
{ id: '+852', name: '+852' },
|
|
825
|
+
{ id: '+880', name: '+880' },
|
|
826
|
+
{ id: '+886', name: '+886' },
|
|
827
|
+
{ id: '+966', name: '+966' },
|
|
828
|
+
{ id: '+971', name: '+971' },
|
|
829
|
+
{ id: '+972', name: '+972' },
|
|
830
|
+
{ id: '+974', name: '+974' },
|
|
831
|
+
{ id: '+977', name: '+977' },
|
|
832
|
+
];
|
|
833
|
+
/** Default country calling code option id (US/Canada), used when none is set. */
|
|
834
|
+
const DEFAULT_COUNTRY_CALLING_CODE = '+1';
|
|
835
|
+
|
|
716
836
|
/* eslint-disable no-unused-vars */
|
|
717
837
|
var PermissionType;
|
|
718
838
|
(function (PermissionType) {
|
|
@@ -883,6 +1003,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
883
1003
|
}]
|
|
884
1004
|
}], ctorParameters: function () { return [{ type: GroupPermissionsMapService }]; } });
|
|
885
1005
|
|
|
1006
|
+
/**
|
|
1007
|
+
* Local storage key under which the hosting application caches the tenant's
|
|
1008
|
+
* required profile fields at login (shape: `{ appId, requiredFields }`). The
|
|
1009
|
+
* add-user / edit-user forms read this cache as the source of truth so they
|
|
1010
|
+
* always reflect the tenant configuration regardless of @Input/resolver timing.
|
|
1011
|
+
*/
|
|
1012
|
+
const REQUIRED_PROFILE_FIELDS_STORAGE_KEY = 'REQUIRED_PROFILE_FIELDS';
|
|
886
1013
|
/**
|
|
887
1014
|
* Groups service is an abstract layer and responsible for managing groups REST API calls.
|
|
888
1015
|
* @class GroupsService
|
|
@@ -897,13 +1024,23 @@ class GroupsService {
|
|
|
897
1024
|
// eslint-disable-next-line no-unused-vars
|
|
898
1025
|
groupPermissionsService,
|
|
899
1026
|
// eslint-disable-next-line no-unused-vars
|
|
900
|
-
alertService
|
|
1027
|
+
alertService,
|
|
1028
|
+
// eslint-disable-next-line no-unused-vars
|
|
1029
|
+
storageService // eslint-disable-next-line no-empty-function
|
|
901
1030
|
) {
|
|
902
1031
|
this.httpService = httpService;
|
|
903
1032
|
this.userPermissionsService = userPermissionsService;
|
|
904
1033
|
this.groupPermissionsService = groupPermissionsService;
|
|
905
1034
|
this.alertService = alertService;
|
|
1035
|
+
this.storageService = storageService;
|
|
906
1036
|
this.groupsText = errors;
|
|
1037
|
+
/**
|
|
1038
|
+
* Tenant-level required profile fields (e.g. ['phone','address','employer'])
|
|
1039
|
+
* supplied by the host app from its cached tenant configuration. Consumed by
|
|
1040
|
+
* the roster import to append tenant-mandated columns to the required-column
|
|
1041
|
+
* list and the sample file. Empty when the tenant has none configured.
|
|
1042
|
+
*/
|
|
1043
|
+
this.requiredProfileFields = [];
|
|
907
1044
|
this.openModalNotifier = new BehaviorSubject(GroupFunctionType.VIEW_ROSTER);
|
|
908
1045
|
this.canShowMessage = false;
|
|
909
1046
|
this.isParentGroupChanged = false;
|
|
@@ -932,6 +1069,44 @@ class GroupsService {
|
|
|
932
1069
|
this.apiBaseUrl = apiBaseUrl;
|
|
933
1070
|
this.userPermission = userPermission;
|
|
934
1071
|
}
|
|
1072
|
+
/**
|
|
1073
|
+
* Stores the tenant-level required profile fields provided by the host app.
|
|
1074
|
+
* @param {string[]} requiredProfileFields - Field keys (e.g. 'phone').
|
|
1075
|
+
* @memberof GroupsService
|
|
1076
|
+
*/
|
|
1077
|
+
setRequiredProfileFields(requiredProfileFields) {
|
|
1078
|
+
this.requiredProfileFields = requiredProfileFields ?? [];
|
|
1079
|
+
}
|
|
1080
|
+
/**
|
|
1081
|
+
* Returns the tenant-level required profile fields (never null).
|
|
1082
|
+
*
|
|
1083
|
+
* Reads the local storage cache the hosting application writes at login (key
|
|
1084
|
+
* `REQUIRED_PROFILE_FIELDS`) as the source of truth, so the add-user /
|
|
1085
|
+
* edit-user forms always reflect the tenant configuration regardless of the
|
|
1086
|
+
* @Input/resolver timing.
|
|
1087
|
+
*
|
|
1088
|
+
* The cache is only trusted when it is well-formed for the active
|
|
1089
|
+
* application: its `appId` must match the current user's `appId` and its
|
|
1090
|
+
* `requiredFields` must be an array. This guards against (a) a stale cache
|
|
1091
|
+
* from a previously opened application applying another tenant's fields, and
|
|
1092
|
+
* (b) a malformed cache crashing the forms when callers run
|
|
1093
|
+
* `requiredFields.includes(...)` on a non-array value. When the cache is
|
|
1094
|
+
* missing, for another app, or malformed, it falls back to the in-memory
|
|
1095
|
+
* value set via {@link setRequiredProfileFields} (the host @Input), then to
|
|
1096
|
+
* an empty list.
|
|
1097
|
+
* @return {string[]}
|
|
1098
|
+
* @memberof GroupsService
|
|
1099
|
+
*/
|
|
1100
|
+
getRequiredProfileFields() {
|
|
1101
|
+
const cached = this.storageService?.getValue(REQUIRED_PROFILE_FIELDS_STORAGE_KEY);
|
|
1102
|
+
const activeAppId = this.getUserInfo()?.appId;
|
|
1103
|
+
const isCacheUsable = !!cached &&
|
|
1104
|
+
Array.isArray(cached.requiredFields) &&
|
|
1105
|
+
(!activeAppId || cached.appId === activeAppId);
|
|
1106
|
+
if (isCacheUsable)
|
|
1107
|
+
return cached.requiredFields;
|
|
1108
|
+
return this.requiredProfileFields ?? [];
|
|
1109
|
+
}
|
|
935
1110
|
/**
|
|
936
1111
|
* Gets application group types from API and returns it as an observable.
|
|
937
1112
|
* @return {Observable<GroupTypeResponse>} -It returns group types if success else error.
|
|
@@ -1267,6 +1442,9 @@ class GroupsService {
|
|
|
1267
1442
|
: null,
|
|
1268
1443
|
organization: organizations,
|
|
1269
1444
|
employer: item.employer?.orgName ?? null,
|
|
1445
|
+
phoneCountryCode: item.phoneCountryCode ?? null,
|
|
1446
|
+
phoneNumber: item.phoneNumber ?? null,
|
|
1447
|
+
address: item.address ?? null,
|
|
1270
1448
|
canDelete: !(item?.userId === this.userInfo?.userId &&
|
|
1271
1449
|
this.isAdminUser() &&
|
|
1272
1450
|
this.getBusinessRuleOfSelectedGroup()?.isAdmin),
|
|
@@ -1441,12 +1619,17 @@ class GroupsService {
|
|
|
1441
1619
|
this.userInfo = userInfo;
|
|
1442
1620
|
}
|
|
1443
1621
|
/**
|
|
1444
|
-
* Returns the logged in user information.
|
|
1622
|
+
* Returns the logged in user information. Falls back to the USER_INFO blob
|
|
1623
|
+
* the host app persists to local storage when the userInfo input hasn't
|
|
1624
|
+
* been set yet (e.g. host wiring not completed or timing race on init).
|
|
1445
1625
|
* @return {LoggedInUserInfo}
|
|
1446
1626
|
* @memberof GroupsService
|
|
1447
1627
|
*/
|
|
1448
1628
|
getUserInfo() {
|
|
1449
|
-
|
|
1629
|
+
if (this.userInfo?.appId)
|
|
1630
|
+
return this.userInfo;
|
|
1631
|
+
const storedUserInfo = this.storageService?.getValue(StorageKeys.USER_INFO);
|
|
1632
|
+
return storedUserInfo?.appId ? storedUserInfo : this.userInfo;
|
|
1450
1633
|
}
|
|
1451
1634
|
/**
|
|
1452
1635
|
* Validates permission based access for provided feature.
|
|
@@ -1550,6 +1733,15 @@ class GroupsService {
|
|
|
1550
1733
|
getMemberTypes() {
|
|
1551
1734
|
return this.memberTypes;
|
|
1552
1735
|
}
|
|
1736
|
+
/**
|
|
1737
|
+
* Returns the frontend-only static list of country calling codes for the
|
|
1738
|
+
* Phone Number field's country-code dropdown.
|
|
1739
|
+
* @return {SelectOption[]}
|
|
1740
|
+
* @memberof GroupsService
|
|
1741
|
+
*/
|
|
1742
|
+
getCountryCallingCodes() {
|
|
1743
|
+
return COUNTRY_CALLING_CODES;
|
|
1744
|
+
}
|
|
1553
1745
|
/**
|
|
1554
1746
|
* Build a reciprocal-credit endpoint URL from apiBaseUrl + the base path,
|
|
1555
1747
|
* guarding against accidental double slashes if apiBaseUrl has a trailing slash.
|
|
@@ -1619,7 +1811,7 @@ class GroupsService {
|
|
|
1619
1811
|
throw error;
|
|
1620
1812
|
}));
|
|
1621
1813
|
}
|
|
1622
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, deps: [{ token: i2.HttpService }, { token: UserPermissionsService }, { token: GroupPermissionsMapService }, { token: i2.AlertsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1814
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, deps: [{ token: i2.HttpService }, { token: UserPermissionsService }, { token: GroupPermissionsMapService }, { token: i2.AlertsService }, { token: i2.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1623
1815
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, providedIn: 'root' }); }
|
|
1624
1816
|
}
|
|
1625
1817
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, decorators: [{
|
|
@@ -1627,7 +1819,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1627
1819
|
args: [{
|
|
1628
1820
|
providedIn: 'root',
|
|
1629
1821
|
}]
|
|
1630
|
-
}], ctorParameters: function () { return [{ type: i2.HttpService }, { type: UserPermissionsService }, { type: GroupPermissionsMapService }, { type: i2.AlertsService }]; } });
|
|
1822
|
+
}], ctorParameters: function () { return [{ type: i2.HttpService }, { type: UserPermissionsService }, { type: GroupPermissionsMapService }, { type: i2.AlertsService }, { type: i2.StorageService }]; } });
|
|
1631
1823
|
|
|
1632
1824
|
/**
|
|
1633
1825
|
* Reciprocal Credit configuration section shown inside the group create/edit
|
|
@@ -3688,7 +3880,10 @@ class EditUserRolesComponent {
|
|
|
3688
3880
|
this.organizations = [];
|
|
3689
3881
|
this.hasClassification = false;
|
|
3690
3882
|
this.representingOrganizations = [];
|
|
3883
|
+
this.countryCallingCodes = [];
|
|
3691
3884
|
this.orgSearchValue = '';
|
|
3885
|
+
// Tenant-configured optional profile fields (e.g. 'phone', 'address') to show on the edit-user form.
|
|
3886
|
+
this.requiredProfileFields = [];
|
|
3692
3887
|
/**
|
|
3693
3888
|
* True when the org field holds an uncommitted, invalid free-text token. Used
|
|
3694
3889
|
* to keep Save disabled even when a valid chip already exists.
|
|
@@ -3704,6 +3899,7 @@ class EditUserRolesComponent {
|
|
|
3704
3899
|
*/
|
|
3705
3900
|
ngOnInit() {
|
|
3706
3901
|
this.selectedUserInfo = this.groupsService?.getSelectedUserInfo();
|
|
3902
|
+
this.countryCallingCodes = this.groupsService?.getCountryCallingCodes();
|
|
3707
3903
|
this.groupsService.representingOrganizations.forEach((user) => {
|
|
3708
3904
|
if (this.selectedUserInfo.userId === user.userId &&
|
|
3709
3905
|
user.organizations?.length) {
|
|
@@ -3745,7 +3941,9 @@ class EditUserRolesComponent {
|
|
|
3745
3941
|
this.getClassifications();
|
|
3746
3942
|
this.getMemberTypes();
|
|
3747
3943
|
}
|
|
3748
|
-
|
|
3944
|
+
// Build the form only once the required-profile-fields response is known,
|
|
3945
|
+
// so the phone/address fields aren't shown then yanked away.
|
|
3946
|
+
this.getRequiredProfileFields();
|
|
3749
3947
|
}
|
|
3750
3948
|
}
|
|
3751
3949
|
/**
|
|
@@ -3780,6 +3978,61 @@ class EditUserRolesComponent {
|
|
|
3780
3978
|
ariaMultiline: false,
|
|
3781
3979
|
isResize: true,
|
|
3782
3980
|
},
|
|
3981
|
+
// Phone (combined country code + number), shown only when the
|
|
3982
|
+
// tenant's required-profile-fields config requests it. Prefilled
|
|
3983
|
+
// from the selected user; read-only with a pencil toggle when a
|
|
3984
|
+
// value exists, else editable directly.
|
|
3985
|
+
...(this.requiredProfileFields.includes('phone')
|
|
3986
|
+
? [
|
|
3987
|
+
{
|
|
3988
|
+
type: FormControlType.PHONE,
|
|
3989
|
+
label: this.addUserRosterTexts?.label?.phoneNumber + '*',
|
|
3990
|
+
controlName: 'phone',
|
|
3991
|
+
dropdownOptions: this.countryCallingCodes,
|
|
3992
|
+
value: {
|
|
3993
|
+
countryCode: this.selectedUserInfo?.phoneCountryCode ??
|
|
3994
|
+
DEFAULT_COUNTRY_CALLING_CODE,
|
|
3995
|
+
phoneNumber: this.selectedUserInfo?.phoneNumber ?? '',
|
|
3996
|
+
},
|
|
3997
|
+
isEditToggle: !!this.selectedUserInfo?.phoneNumber,
|
|
3998
|
+
validation: [Validators.required],
|
|
3999
|
+
maxLength: GroupsValidationPatterns.phoneNumberMaxLength,
|
|
4000
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
4001
|
+
supportMessage: this.addUserRosterTexts?.supportText?.phoneNumber,
|
|
4002
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel?.phoneNumber,
|
|
4003
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
4004
|
+
?.phoneNumber,
|
|
4005
|
+
},
|
|
4006
|
+
]
|
|
4007
|
+
: []),
|
|
4008
|
+
// Address, shown only when the tenant's required-profile-fields
|
|
4009
|
+
// config requests it. Prefilled from the selected user; read-only
|
|
4010
|
+
// with a pencil toggle when a value exists, else editable directly.
|
|
4011
|
+
...(this.requiredProfileFields.includes('address')
|
|
4012
|
+
? [
|
|
4013
|
+
{
|
|
4014
|
+
type: FormControlType.TEXT_AREA,
|
|
4015
|
+
label: this.addUserRosterTexts?.label?.address + '*',
|
|
4016
|
+
controlName: 'address',
|
|
4017
|
+
value: this.selectedUserInfo?.address ?? '',
|
|
4018
|
+
isEditToggle: !!this.selectedUserInfo?.address,
|
|
4019
|
+
validation: [
|
|
4020
|
+
Validators.required,
|
|
4021
|
+
Validators.maxLength(GroupsValidationPatterns.addressMaxLength),
|
|
4022
|
+
],
|
|
4023
|
+
maxLength: GroupsValidationPatterns.addressMaxLength,
|
|
4024
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
4025
|
+
maxErrorMessage: this.addUserRosterTexts?.message?.error?.limit
|
|
4026
|
+
?.addressMaxChars,
|
|
4027
|
+
supportMessage: this.addUserRosterTexts?.supportText?.address,
|
|
4028
|
+
isResize: false,
|
|
4029
|
+
ariaMultiline: true,
|
|
4030
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel?.address,
|
|
4031
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
4032
|
+
?.address,
|
|
4033
|
+
},
|
|
4034
|
+
]
|
|
4035
|
+
: []),
|
|
3783
4036
|
{
|
|
3784
4037
|
type: FormControlType.CHECKBOX,
|
|
3785
4038
|
label: this.groupRosterType === GroupRosterType.INDIVIDUAL
|
|
@@ -3983,8 +4236,33 @@ class EditUserRolesComponent {
|
|
|
3983
4236
|
groupId: this.groupsService?.selectedGroupInfo?.groupId,
|
|
3984
4237
|
},
|
|
3985
4238
|
};
|
|
4239
|
+
// Optional contact fields — apply to both roster types.
|
|
4240
|
+
this.appendContactDetailsToPayload(payload, formData);
|
|
3986
4241
|
return payload;
|
|
3987
4242
|
}
|
|
4243
|
+
/**
|
|
4244
|
+
* Appends the optional contact fields (phone country code, phone number and
|
|
4245
|
+
* address) to the payload. Reads from the combined PHONE control value
|
|
4246
|
+
* ({ countryCode, phoneNumber }) and the address control. Sends the country
|
|
4247
|
+
* code only when a number is present; omits empty values.
|
|
4248
|
+
* @param {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)} payload
|
|
4249
|
+
* @param {*} formData
|
|
4250
|
+
* @memberof EditUserRolesComponent
|
|
4251
|
+
*/
|
|
4252
|
+
appendContactDetailsToPayload(payload,
|
|
4253
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4254
|
+
formData) {
|
|
4255
|
+
const phoneNumber = formData?.phone?.phoneNumber?.trim();
|
|
4256
|
+
const phoneCountryCode = formData?.phone?.countryCode;
|
|
4257
|
+
const address = formData?.address?.trim();
|
|
4258
|
+
if (phoneNumber) {
|
|
4259
|
+
payload.payload.phoneNumber = phoneNumber;
|
|
4260
|
+
if (phoneCountryCode)
|
|
4261
|
+
payload.payload.phoneCountryCode = phoneCountryCode;
|
|
4262
|
+
}
|
|
4263
|
+
if (address)
|
|
4264
|
+
payload.payload.address = address;
|
|
4265
|
+
}
|
|
3988
4266
|
/**
|
|
3989
4267
|
* Emits form cancel event.
|
|
3990
4268
|
* @memberof EditUserRolesComponent
|
|
@@ -4057,6 +4335,17 @@ class EditUserRolesComponent {
|
|
|
4057
4335
|
this.isSubmitButtonDisabled = true;
|
|
4058
4336
|
}
|
|
4059
4337
|
}
|
|
4338
|
+
/**
|
|
4339
|
+
* Gets the tenant's required profile fields so the edit-user form only shows
|
|
4340
|
+
* the phone/address fields the tenant has configured as required. Builds the
|
|
4341
|
+
* form once resolved (or immediately if the appId isn't available).
|
|
4342
|
+
* @memberof EditUserRolesComponent
|
|
4343
|
+
*/
|
|
4344
|
+
getRequiredProfileFields() {
|
|
4345
|
+
this.requiredProfileFields =
|
|
4346
|
+
this.groupsService.getRequiredProfileFields() ?? [];
|
|
4347
|
+
this.editUserRolesFormGroup();
|
|
4348
|
+
}
|
|
4060
4349
|
/**
|
|
4061
4350
|
* Gets the classifications from master data.
|
|
4062
4351
|
* @memberof EditUserRolesComponent
|
|
@@ -4198,11 +4487,11 @@ class EditUserRolesComponent {
|
|
|
4198
4487
|
this.destroy$.unsubscribe();
|
|
4199
4488
|
}
|
|
4200
4489
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditUserRolesComponent, deps: [{ token: GroupsService }, { token: i2.GlobalErrorHandlerService }, { token: i2.AlertsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4201
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditUserRolesComponent, isStandalone: true, selector: "ieeesa-edit-user-roles", outputs: { submitFormResponse: "submitFormResponse", formCancel: "formCancel" }, viewQueries: [{ propertyName: "dynamicFormComponent", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<ieeesa-dynamic-form\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"editUserRoleFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onEditUserRoleFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onEditUserRoleCancelled()\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formChange)=\"onEditUserRoleFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Prefilled with the user's\r\n existing organizations and synced to the reactive `representingOrg` control\r\n via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"isIndividualRoster\"\r\n class=\"ieeesa-edit-user-roles__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"representingOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-edit-user-roles .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:1.5em;padding:3em 1em .75em .8em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field{margin-bottom:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field{width:100%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DynamicFormComponent, selector: "ieeesa-dynamic-form", inputs: ["formGroups", "submitResponse", "searchResponse", "fileUploadStatus", "colWidth", "isLegendVisible", "rightButtonLabel", "leftButtonLabel", "isSubmitButtonDisabled", "isLeftButtonDisabled", "isLeftButtonNeeded", "isRightButtonNeeded", "actionButtonAlign", "projectedContentAfterControlName", "fileDownloadAndDeleteConfig"], outputs: ["formSubmit", "formChange", "formInput", "formLeftButtonClicked", "formSearchApply", "formGroupsReference", "dropdownChange", "formCheckboxSelection", "formDateSelected", "formSelectSearch", "formControlChange", "formAutoCompleteSearch", "formAutoCompleteClearSearchValue", "autoCompleteOptionSelected", "formAfterContentInit", "formSelectedDateRange", "addFormGroup", "formTimeSelected", "supportTextLinkClick", "formSlideToggleChange", "formFileUpload", "dropdownOpenedChange", "formColorPickerChange", "formRadioOptionSelected", "ctaButtonClick", "formMultiSelectAutoCompleteSearch", "formMultiSelectAutoCompleteClearSearchValue", "multiSelectAutoCompleteOptionsSelected", "formRichTextEditorContentChange"], exportAs: ["dynamicForm"] }, { kind: "component", type: OrgMultiSelectComponent, selector: "ieeesa-org-multi-select", inputs: ["label", "placeholder", "supportMessage", "ariaLabel", "options", "selectedOptions", "required", "removeIconURL", "clearAllIconURL"], outputs: ["search", "selectionChange", "fieldBlur", "invalidFreeText"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4490
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditUserRolesComponent, isStandalone: true, selector: "ieeesa-edit-user-roles", outputs: { submitFormResponse: "submitFormResponse", formCancel: "formCancel" }, viewQueries: [{ propertyName: "dynamicFormComponent", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<ieeesa-dynamic-form\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"editUserRoleFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onEditUserRoleFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onEditUserRoleCancelled()\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formChange)=\"onEditUserRoleFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Prefilled with the user's\r\n existing organizations and synced to the reactive `representingOrg` control\r\n via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"isIndividualRoster\"\r\n class=\"ieeesa-edit-user-roles__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"representingOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-edit-user-roles .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:1.5em;padding:3em 1em .75em .8em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-text-area-field .mat-mdc-form-field{width:100%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-text-area-field .address{height:96px!important;min-height:96px!important;max-height:96px!important;overflow-y:auto!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field{margin-bottom:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field{width:100%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DynamicFormComponent, selector: "ieeesa-dynamic-form", inputs: ["formGroups", "submitResponse", "searchResponse", "fileUploadStatus", "colWidth", "isLegendVisible", "rightButtonLabel", "leftButtonLabel", "isSubmitButtonDisabled", "isLeftButtonDisabled", "isLeftButtonNeeded", "isRightButtonNeeded", "actionButtonAlign", "projectedContentAfterControlName", "fileDownloadAndDeleteConfig"], outputs: ["formSubmit", "formChange", "formInput", "formLeftButtonClicked", "formSearchApply", "formGroupsReference", "dropdownChange", "formCheckboxSelection", "formDateSelected", "formSelectSearch", "formControlChange", "formAutoCompleteSearch", "formAutoCompleteClearSearchValue", "autoCompleteOptionSelected", "formAfterContentInit", "formSelectedDateRange", "addFormGroup", "formTimeSelected", "supportTextLinkClick", "formSlideToggleChange", "formFileUpload", "dropdownOpenedChange", "formColorPickerChange", "formRadioOptionSelected", "ctaButtonClick", "formMultiSelectAutoCompleteSearch", "formMultiSelectAutoCompleteClearSearchValue", "multiSelectAutoCompleteOptionsSelected", "formRichTextEditorContentChange"], exportAs: ["dynamicForm"] }, { kind: "component", type: OrgMultiSelectComponent, selector: "ieeesa-org-multi-select", inputs: ["label", "placeholder", "supportMessage", "ariaLabel", "options", "selectedOptions", "required", "removeIconURL", "clearAllIconURL"], outputs: ["search", "selectionChange", "fieldBlur", "invalidFreeText"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4202
4491
|
}
|
|
4203
4492
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditUserRolesComponent, decorators: [{
|
|
4204
4493
|
type: Component,
|
|
4205
|
-
args: [{ selector: 'ieeesa-edit-user-roles', standalone: true, imports: [CommonModule, DynamicFormComponent, OrgMultiSelectComponent], encapsulation: ViewEncapsulation.None, template: "<ieeesa-dynamic-form\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"editUserRoleFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onEditUserRoleFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onEditUserRoleCancelled()\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formChange)=\"onEditUserRoleFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Prefilled with the user's\r\n existing organizations and synced to the reactive `representingOrg` control\r\n via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"isIndividualRoster\"\r\n class=\"ieeesa-edit-user-roles__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"representingOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-edit-user-roles .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:1.5em;padding:3em 1em .75em .8em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field{margin-bottom:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field{width:100%}}\n"] }]
|
|
4494
|
+
args: [{ selector: 'ieeesa-edit-user-roles', standalone: true, imports: [CommonModule, DynamicFormComponent, OrgMultiSelectComponent], encapsulation: ViewEncapsulation.None, template: "<ieeesa-dynamic-form\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"editUserRoleFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onEditUserRoleFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onEditUserRoleCancelled()\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formChange)=\"onEditUserRoleFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Prefilled with the user's\r\n existing organizations and synced to the reactive `representingOrg` control\r\n via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"isIndividualRoster\"\r\n class=\"ieeesa-edit-user-roles__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"representingOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-edit-user-roles .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__form-field .ieeesa-select-field .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:1.5em;padding:3em 1em .75em .8em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-text-area-field .mat-mdc-form-field{width:100%}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-text-area-field .address{height:96px!important;min-height:96px!important;max-height:96px!important;overflow-y:auto!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field{margin-bottom:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .email .mat-mdc-text-field-wrapper,.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-edit-user-roles .ieeesa-modal .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field{width:100%}}\n"] }]
|
|
4206
4495
|
}], ctorParameters: function () { return [{ type: GroupsService }, { type: i2.GlobalErrorHandlerService }, { type: i2.AlertsService }]; }, propDecorators: { dynamicFormComponent: [{
|
|
4207
4496
|
type: ViewChild,
|
|
4208
4497
|
args: [DynamicFormComponent]
|
|
@@ -4440,9 +4729,76 @@ class RosterImportComponent {
|
|
|
4440
4729
|
/** Accepted file extensions (must match the BE contract: only .csv / .xlsx). */
|
|
4441
4730
|
this.ACCEPTED_EXTENSIONS = ['.csv', '.xlsx'];
|
|
4442
4731
|
}
|
|
4443
|
-
/**
|
|
4732
|
+
/**
|
|
4733
|
+
* Required column headers for display and the sample file. This is the static
|
|
4734
|
+
* base set from constants PLUS any tenant-level required profile fields the
|
|
4735
|
+
* host app configured (e.g. phone / address / employer), mapped to friendly
|
|
4736
|
+
* headers and de-duplicated (case-insensitive) against the base columns.
|
|
4737
|
+
* @return {string[]}
|
|
4738
|
+
*/
|
|
4444
4739
|
get requiredColumns() {
|
|
4445
|
-
|
|
4740
|
+
const base = this.screenTexts?.requiredColumns ?? [];
|
|
4741
|
+
return this.mergeTenantColumns(base);
|
|
4742
|
+
}
|
|
4743
|
+
/**
|
|
4744
|
+
* Appends the tenant-configured columns (from {@link tenantExtraColumns}) to
|
|
4745
|
+
* the base column headers.
|
|
4746
|
+
* @param {string[]} base - The static base column headers.
|
|
4747
|
+
* @return {string[]}
|
|
4748
|
+
* @memberof RosterImportComponent
|
|
4749
|
+
*/
|
|
4750
|
+
mergeTenantColumns(base) {
|
|
4751
|
+
const extras = this.tenantExtraColumns(base);
|
|
4752
|
+
return extras.length ? [...base, ...extras.map((c) => c.label)] : base;
|
|
4753
|
+
}
|
|
4754
|
+
/**
|
|
4755
|
+
* Resolves the tenant-configured required profile fields into the EXTRA
|
|
4756
|
+
* columns to append after the base set — the single source of truth shared by
|
|
4757
|
+
* both the header list ({@link requiredColumns}) and the sample file
|
|
4758
|
+
* ({@link downloadSampleFile}) so the two never drift out of alignment.
|
|
4759
|
+
*
|
|
4760
|
+
* Each field becomes one column with its friendly `label` (known keys use the
|
|
4761
|
+
* label map; unknown keys fall back to a title-cased key) and a `sampleValue`
|
|
4762
|
+
* for the sample row. Fields whose label already exists in the base set
|
|
4763
|
+
* (case-insensitive) are skipped so a tenant field like "employer" that is
|
|
4764
|
+
* already a base column is not duplicated.
|
|
4765
|
+
* @param {string[]} base - The static base column headers.
|
|
4766
|
+
* @return {{ label: string; sampleValue: string }[]}
|
|
4767
|
+
* @memberof RosterImportComponent
|
|
4768
|
+
*/
|
|
4769
|
+
tenantExtraColumns(base) {
|
|
4770
|
+
const tenantFields = this.groupService?.getRequiredProfileFields() ?? [];
|
|
4771
|
+
if (!tenantFields.length) {
|
|
4772
|
+
return [];
|
|
4773
|
+
}
|
|
4774
|
+
const sampleMap = this.screenTexts?.tenantFieldSampleValues ?? {};
|
|
4775
|
+
const seen = new Set(base.map((col) => col.toLowerCase()));
|
|
4776
|
+
const extras = [];
|
|
4777
|
+
tenantFields.forEach((field) => {
|
|
4778
|
+
const label = this.tenantFieldLabel(field);
|
|
4779
|
+
if (label && !seen.has(label.toLowerCase())) {
|
|
4780
|
+
seen.add(label.toLowerCase());
|
|
4781
|
+
extras.push({ label, sampleValue: sampleMap[field] ?? '' });
|
|
4782
|
+
}
|
|
4783
|
+
});
|
|
4784
|
+
return extras;
|
|
4785
|
+
}
|
|
4786
|
+
/**
|
|
4787
|
+
* Maps a tenant field key to its display header. Known keys use the configured
|
|
4788
|
+
* label map; unknown keys fall back to a title-cased key.
|
|
4789
|
+
* @param {string} field - The tenant field key (e.g. 'phone').
|
|
4790
|
+
* @return {string}
|
|
4791
|
+
* @memberof RosterImportComponent
|
|
4792
|
+
*/
|
|
4793
|
+
tenantFieldLabel(field) {
|
|
4794
|
+
const labels = this.screenTexts?.tenantFieldLabels ?? {};
|
|
4795
|
+
if (labels[field]) {
|
|
4796
|
+
return labels[field];
|
|
4797
|
+
}
|
|
4798
|
+
// Fallback: "phone_number" -> "Phone Number".
|
|
4799
|
+
return field
|
|
4800
|
+
.replace(/[_-]+/g, ' ')
|
|
4801
|
+
.replace(/\b\w/g, (char) => char.toUpperCase());
|
|
4446
4802
|
}
|
|
4447
4803
|
/** Comma-separated accepted file types for the input element. */
|
|
4448
4804
|
get acceptedFileTypes() {
|
|
@@ -4628,6 +4984,8 @@ class RosterImportComponent {
|
|
|
4628
4984
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4629
4985
|
handleImportError(error) {
|
|
4630
4986
|
this.importState = 'upload';
|
|
4987
|
+
// BE error codes take priority when present (e.g. 1071 no permission, 1072
|
|
4988
|
+
// format, 1073 too large, 1074 row limit, 1075 invalid status).
|
|
4631
4989
|
const errorCodes = error?.error?.body?.errorCodes;
|
|
4632
4990
|
if (Array.isArray(errorCodes) && errorCodes.length) {
|
|
4633
4991
|
const code = errorCodes[0];
|
|
@@ -4637,6 +4995,16 @@ class RosterImportComponent {
|
|
|
4637
4995
|
'An error occurred while importing the roster. Please try again.';
|
|
4638
4996
|
return;
|
|
4639
4997
|
}
|
|
4998
|
+
// A 403 with no error-code body comes from the endpoint's @PreAuthorize
|
|
4999
|
+
// (the user lacks Manage Group Member / Manage All Rosters for this group).
|
|
5000
|
+
// Show the permission message — retrying will not help.
|
|
5001
|
+
const status = error?.status ?? error?.error?.status;
|
|
5002
|
+
if (status === 403) {
|
|
5003
|
+
this.errorMessage =
|
|
5004
|
+
this.screenTexts?.validation?.forbidden ??
|
|
5005
|
+
'You do not have permission to import a roster for this group.';
|
|
5006
|
+
return;
|
|
5007
|
+
}
|
|
4640
5008
|
this.errorMessage =
|
|
4641
5009
|
this.screenTexts?.validation?.uploadFailed ??
|
|
4642
5010
|
'An error occurred while importing the roster. Please try again.';
|
|
@@ -4662,36 +5030,43 @@ class RosterImportComponent {
|
|
|
4662
5030
|
}
|
|
4663
5031
|
}
|
|
4664
5032
|
/**
|
|
4665
|
-
*
|
|
5033
|
+
* Normalizes the BE `error_report` into row-error view models.
|
|
4666
5034
|
*
|
|
4667
|
-
* The BE
|
|
4668
|
-
*
|
|
4669
|
-
*
|
|
4670
|
-
*
|
|
4671
|
-
*
|
|
4672
|
-
*
|
|
5035
|
+
* The BE wraps the per-row entries in a `{ rows: [ { row, field, message } ] }`
|
|
5036
|
+
* document, but that value has been observed to arrive in MULTIPLE shapes:
|
|
5037
|
+
* - a parsed object `{ rows: [...] }` (confirm response — the common case),
|
|
5038
|
+
* - a raw JSON string of the same object (JSONB passthrough), or
|
|
5039
|
+
* - a bare array `[ { row, field, message } ]`.
|
|
5040
|
+
* This handles all three (and `null`) so the error log renders regardless of
|
|
5041
|
+
* how the field is serialized.
|
|
5042
|
+
* @param {*} errorReport - The BE error_report (object, string, array, or null).
|
|
4673
5043
|
* @return {RosterImportRowError[]}
|
|
4674
5044
|
* @memberof RosterImportComponent
|
|
4675
5045
|
*/
|
|
5046
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4676
5047
|
parseErrorReport(errorReport) {
|
|
4677
5048
|
if (!errorReport) {
|
|
4678
5049
|
return [];
|
|
4679
5050
|
}
|
|
4680
|
-
|
|
4681
|
-
|
|
4682
|
-
|
|
4683
|
-
|
|
4684
|
-
|
|
4685
|
-
|
|
4686
|
-
|
|
4687
|
-
|
|
4688
|
-
|
|
4689
|
-
}));
|
|
4690
|
-
}
|
|
4691
|
-
catch {
|
|
4692
|
-
// Malformed error report — surface no per-row errors rather than crash.
|
|
4693
|
-
return [];
|
|
5051
|
+
// If it's a string, parse it first; on parse failure, no row errors.
|
|
5052
|
+
let value = errorReport;
|
|
5053
|
+
if (typeof errorReport === 'string') {
|
|
5054
|
+
try {
|
|
5055
|
+
value = JSON.parse(errorReport);
|
|
5056
|
+
}
|
|
5057
|
+
catch {
|
|
5058
|
+
return [];
|
|
5059
|
+
}
|
|
4694
5060
|
}
|
|
5061
|
+
// Accept either a bare array or a { rows: [...] } wrapper object.
|
|
5062
|
+
const entries = Array.isArray(value)
|
|
5063
|
+
? value
|
|
5064
|
+
: (value?.rows ?? []);
|
|
5065
|
+
return entries.map((entry) => ({
|
|
5066
|
+
rowNumber: entry?.row,
|
|
5067
|
+
field: entry?.field,
|
|
5068
|
+
errorMessage: entry?.message,
|
|
5069
|
+
}));
|
|
4695
5070
|
}
|
|
4696
5071
|
/**
|
|
4697
5072
|
* Whether the result state should show the summary cards (added / skipped).
|
|
@@ -4723,10 +5098,16 @@ class RosterImportComponent {
|
|
|
4723
5098
|
.map((col) => this.toCsvCell(col))
|
|
4724
5099
|
.join(',');
|
|
4725
5100
|
// Sample data rows so the downloaded file shows the expected format, not
|
|
4726
|
-
// just the column headers.
|
|
4727
|
-
//
|
|
4728
|
-
|
|
4729
|
-
|
|
5101
|
+
// just the column headers. The base row values come from constants; sample
|
|
5102
|
+
// values for any tenant-configured columns are appended (from the SAME
|
|
5103
|
+
// source that builds the headers) so every row lines up with the
|
|
5104
|
+
// (base + tenant) header set.
|
|
5105
|
+
const base = this.screenTexts?.requiredColumns ?? [];
|
|
5106
|
+
const baseSampleRows = this.screenTexts?.sampleRows ?? [];
|
|
5107
|
+
const tenantSampleCells = this.tenantExtraColumns(base).map((col) => col.sampleValue);
|
|
5108
|
+
const dataLines = baseSampleRows.map((row) => [...row, ...tenantSampleCells]
|
|
5109
|
+
.map((cell) => this.toCsvCell(cell))
|
|
5110
|
+
.join(','));
|
|
4730
5111
|
const csvContent = [headerLine, ...dataLines].join('\r\n') + '\r\n';
|
|
4731
5112
|
const blob = new Blob([csvContent], {
|
|
4732
5113
|
type: 'text/csv;charset=utf-8;',
|
|
@@ -5281,6 +5662,9 @@ class AddUserRosterComponent {
|
|
|
5281
5662
|
this.hasClassification = false;
|
|
5282
5663
|
this.isUserExist = false;
|
|
5283
5664
|
this.selectedOrganizations = [];
|
|
5665
|
+
this.countryCallingCodes = [];
|
|
5666
|
+
// Tenant-configured optional profile fields (e.g. 'phone', 'address') to show on the add-user form.
|
|
5667
|
+
this.requiredProfileFields = [];
|
|
5284
5668
|
/**
|
|
5285
5669
|
* True when the org field holds an uncommitted, invalid free-text token. Used
|
|
5286
5670
|
* to keep Save disabled even when a valid chip already exists.
|
|
@@ -5295,6 +5679,8 @@ class AddUserRosterComponent {
|
|
|
5295
5679
|
*/
|
|
5296
5680
|
ngOnInit() {
|
|
5297
5681
|
this.userRoles = this.groupService.getGroupTypeUserRoles();
|
|
5682
|
+
this.countryCallingCodes = this.groupService.getCountryCallingCodes();
|
|
5683
|
+
this.getRequiredProfileFields();
|
|
5298
5684
|
const groupType = this.groupService.getBusinessRuleOfSelectedGroup();
|
|
5299
5685
|
this.hasClassification = groupType?.hasClassification ?? false;
|
|
5300
5686
|
this.groupRosterType = groupType?.rosterType;
|
|
@@ -5521,6 +5907,66 @@ class AddUserRosterComponent {
|
|
|
5521
5907
|
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
5522
5908
|
?.fullName,
|
|
5523
5909
|
},
|
|
5910
|
+
// Phone (combined country code + number in one field), shown
|
|
5911
|
+
// only when the tenant's required-profile-fields config
|
|
5912
|
+
// requests it. Prefilled from the response; when a value
|
|
5913
|
+
// exists it starts read-only with a pencil toggle, else editable.
|
|
5914
|
+
...(this.requiredProfileFields.includes('phone')
|
|
5915
|
+
? [
|
|
5916
|
+
{
|
|
5917
|
+
type: FormControlType.PHONE,
|
|
5918
|
+
label: this.addUserRosterTexts?.label?.phoneNumber + '*',
|
|
5919
|
+
controlName: 'phone',
|
|
5920
|
+
dropdownOptions: this.countryCallingCodes,
|
|
5921
|
+
value: {
|
|
5922
|
+
countryCode: this.userInfo?.phoneCountryCode ??
|
|
5923
|
+
DEFAULT_COUNTRY_CALLING_CODE,
|
|
5924
|
+
phoneNumber: this.userInfo?.phoneNumber ?? '',
|
|
5925
|
+
},
|
|
5926
|
+
isEditToggle: !!this.userInfo?.phoneNumber,
|
|
5927
|
+
validation: [Validators.required],
|
|
5928
|
+
maxLength: GroupsValidationPatterns.phoneNumberMaxLength,
|
|
5929
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
5930
|
+
supportMessage: this.addUserRosterTexts?.supportText?.phoneNumber,
|
|
5931
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel
|
|
5932
|
+
?.phoneNumber,
|
|
5933
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
5934
|
+
?.phoneNumber,
|
|
5935
|
+
},
|
|
5936
|
+
]
|
|
5937
|
+
: []),
|
|
5938
|
+
// Address (editable), shown only when the tenant's
|
|
5939
|
+
// required-profile-fields config requests it. Prefilled when
|
|
5940
|
+
// present, empty when null. Fixed-size box (see component SCSS).
|
|
5941
|
+
...(this.requiredProfileFields.includes('address')
|
|
5942
|
+
? [
|
|
5943
|
+
{
|
|
5944
|
+
type: FormControlType.TEXT_AREA,
|
|
5945
|
+
label: this.addUserRosterTexts?.label?.address + '*',
|
|
5946
|
+
controlName: 'address',
|
|
5947
|
+
value: this.userInfo?.address ?? '',
|
|
5948
|
+
// When a value exists, start read-only with a pencil toggle;
|
|
5949
|
+
// when null, start directly editable.
|
|
5950
|
+
isEditToggle: !!this.userInfo?.address,
|
|
5951
|
+
validation: [
|
|
5952
|
+
Validators.required,
|
|
5953
|
+
Validators.maxLength(GroupsValidationPatterns.addressMaxLength),
|
|
5954
|
+
],
|
|
5955
|
+
// No live character counter — follow the Representing
|
|
5956
|
+
// Organization pattern: hard maxLength + error on breach.
|
|
5957
|
+
maxLength: GroupsValidationPatterns.addressMaxLength,
|
|
5958
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
5959
|
+
maxErrorMessage: this.addUserRosterTexts?.message?.error?.limit
|
|
5960
|
+
?.addressMaxChars,
|
|
5961
|
+
supportMessage: this.addUserRosterTexts?.supportText?.address,
|
|
5962
|
+
isResize: false,
|
|
5963
|
+
ariaMultiline: true,
|
|
5964
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel?.address,
|
|
5965
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
5966
|
+
?.address,
|
|
5967
|
+
},
|
|
5968
|
+
]
|
|
5969
|
+
: []),
|
|
5524
5970
|
]
|
|
5525
5971
|
: [
|
|
5526
5972
|
{
|
|
@@ -5555,6 +6001,62 @@ class AddUserRosterComponent {
|
|
|
5555
6001
|
?.lastName,
|
|
5556
6002
|
supportMessage: this.addUserRosterTexts?.supportText?.lastName,
|
|
5557
6003
|
},
|
|
6004
|
+
// Phone (combined country code + number). New user: always
|
|
6005
|
+
// editable, country code defaults to +1. Shown only when the
|
|
6006
|
+
// tenant's required-profile-fields config requests it.
|
|
6007
|
+
...(this.requiredProfileFields.includes('phone')
|
|
6008
|
+
? [
|
|
6009
|
+
{
|
|
6010
|
+
type: FormControlType.PHONE,
|
|
6011
|
+
label: this.addUserRosterTexts?.label?.phoneNumber + '*',
|
|
6012
|
+
controlName: 'phone',
|
|
6013
|
+
dropdownOptions: this.countryCallingCodes,
|
|
6014
|
+
value: {
|
|
6015
|
+
countryCode: DEFAULT_COUNTRY_CALLING_CODE,
|
|
6016
|
+
phoneNumber: '',
|
|
6017
|
+
},
|
|
6018
|
+
validation: [Validators.required],
|
|
6019
|
+
maxLength: GroupsValidationPatterns.phoneNumberMaxLength,
|
|
6020
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
6021
|
+
supportMessage: this.addUserRosterTexts?.supportText?.phoneNumber,
|
|
6022
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel
|
|
6023
|
+
?.phoneNumber,
|
|
6024
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
6025
|
+
?.phoneNumber,
|
|
6026
|
+
},
|
|
6027
|
+
]
|
|
6028
|
+
: []),
|
|
6029
|
+
// Address, shown only when the tenant's required-profile-fields
|
|
6030
|
+
// config requests it.
|
|
6031
|
+
...(this.requiredProfileFields.includes('address')
|
|
6032
|
+
? [
|
|
6033
|
+
{
|
|
6034
|
+
type: FormControlType.TEXT_AREA,
|
|
6035
|
+
label: this.addUserRosterTexts?.label?.address + '*',
|
|
6036
|
+
controlName: 'address',
|
|
6037
|
+
validation: [
|
|
6038
|
+
Validators.required,
|
|
6039
|
+
Validators.maxLength(GroupsValidationPatterns.addressMaxLength),
|
|
6040
|
+
],
|
|
6041
|
+
// No live character counter — follow the Representing
|
|
6042
|
+
// Organization pattern: hard maxLength + error on breach.
|
|
6043
|
+
maxLength: GroupsValidationPatterns.addressMaxLength,
|
|
6044
|
+
requiredErrorMessage: this.addUserRosterTexts?.message?.error?.required,
|
|
6045
|
+
maxErrorMessage: this.addUserRosterTexts?.message?.error?.limit
|
|
6046
|
+
?.addressMaxChars,
|
|
6047
|
+
supportMessage: this.addUserRosterTexts?.supportText?.address,
|
|
6048
|
+
// Keep the box a fixed size (no drag-resize). The fixed
|
|
6049
|
+
// height with internal scroll is enforced via component SCSS
|
|
6050
|
+
// so the field doesn't grow as the user types, matching the
|
|
6051
|
+
// Representing Organization field's fixed-box behavior.
|
|
6052
|
+
isResize: false,
|
|
6053
|
+
ariaMultiline: true,
|
|
6054
|
+
ariaLabel: this.addUserRosterTexts?.label?.ariaLabel?.address,
|
|
6055
|
+
ariaDescribedById: this.addUserRosterTexts?.label?.ariaDescribedById
|
|
6056
|
+
?.address,
|
|
6057
|
+
},
|
|
6058
|
+
]
|
|
6059
|
+
: []),
|
|
5558
6060
|
]),
|
|
5559
6061
|
{
|
|
5560
6062
|
type: FormControlType.CHECKBOX,
|
|
@@ -5740,6 +6242,15 @@ class AddUserRosterComponent {
|
|
|
5740
6242
|
onFormCancel() {
|
|
5741
6243
|
this.formCancel.emit();
|
|
5742
6244
|
}
|
|
6245
|
+
/**
|
|
6246
|
+
* Gets the tenant's required profile fields so the add-user form only shows
|
|
6247
|
+
* the phone/address fields the tenant has configured as required.
|
|
6248
|
+
* @memberof AddUserRosterComponent
|
|
6249
|
+
*/
|
|
6250
|
+
getRequiredProfileFields() {
|
|
6251
|
+
this.requiredProfileFields =
|
|
6252
|
+
this.groupService.getRequiredProfileFields() ?? [];
|
|
6253
|
+
}
|
|
5743
6254
|
/**
|
|
5744
6255
|
* Gets the classifications from master data.
|
|
5745
6256
|
* @memberof AddUserRosterComponent
|
|
@@ -5960,8 +6471,34 @@ class AddUserRosterComponent {
|
|
|
5960
6471
|
payload.payload.firstName = formData?.firstName?.trim();
|
|
5961
6472
|
payload.payload.lastName = formData?.lastName?.trim();
|
|
5962
6473
|
}
|
|
6474
|
+
// Optional contact fields — apply to both new and existing users.
|
|
6475
|
+
this.appendContactDetailsToPayload(payload, formData);
|
|
5963
6476
|
return payload;
|
|
5964
6477
|
}
|
|
6478
|
+
/**
|
|
6479
|
+
* Appends the optional contact fields (phone country code, phone number and
|
|
6480
|
+
* address) to the payload. The country code is sent only when a phone number
|
|
6481
|
+
* is provided; phone number and address are included only when the user
|
|
6482
|
+
* entered a value (so nulls/empties are not sent to the backend).
|
|
6483
|
+
* @param {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)} payload
|
|
6484
|
+
* @param {*} formData
|
|
6485
|
+
* @memberof AddUserRosterComponent
|
|
6486
|
+
*/
|
|
6487
|
+
appendContactDetailsToPayload(payload,
|
|
6488
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
6489
|
+
formData) {
|
|
6490
|
+
// The combined PHONE control stores { countryCode, phoneNumber }.
|
|
6491
|
+
const phoneNumber = formData?.phone?.phoneNumber?.trim();
|
|
6492
|
+
const phoneCountryCode = formData?.phone?.countryCode;
|
|
6493
|
+
const address = formData?.address?.trim();
|
|
6494
|
+
if (phoneNumber) {
|
|
6495
|
+
payload.payload.phoneNumber = phoneNumber;
|
|
6496
|
+
if (phoneCountryCode)
|
|
6497
|
+
payload.payload.phoneCountryCode = phoneCountryCode;
|
|
6498
|
+
}
|
|
6499
|
+
if (address)
|
|
6500
|
+
payload.payload.address = address;
|
|
6501
|
+
}
|
|
5965
6502
|
/**
|
|
5966
6503
|
* Disables form submit button when org name length is less than minCharToSearch and greater than zero.
|
|
5967
6504
|
* @memberof AddUserRosterComponent
|
|
@@ -6017,7 +6554,7 @@ class AddUserRosterComponent {
|
|
|
6017
6554
|
}
|
|
6018
6555
|
}
|
|
6019
6556
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddUserRosterComponent, deps: [{ token: GroupsService }, { token: i2.GlobalErrorHandlerService }, { token: i2.AlertsService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6020
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddUserRosterComponent, isStandalone: true, selector: "ieeesa-add-user-roster", outputs: { submitFormResponse: "submitFormResponse", formCancel: "formCancel" }, providers: [AlertsService], viewQueries: [{ propertyName: "dynamicFormComponent", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<ieeesa-dynamic-form\r\n *ngIf=\"searchUserFormGroup && isSearchUserForm\"\r\n class=\"ieeesa-search-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"searchUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onSearchUserFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n></ieeesa-dynamic-form>\r\n\r\n<ieeesa-dynamic-form\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm\"\r\n class=\"ieeesa-add-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"addUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onAddUserFormSubmit($event)\"\r\n (formSearchApply)=\"formSearchApply($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n (formGroupsReference)=\"getAddUserFormGroupRef($event)\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formChange)=\"onAddUserFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Its value stays synced to\r\n the reactive `representingOrg` control via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm && isIndividualRoster\"\r\n class=\"ieeesa-add-user-form__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"selectedOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-add-user-roster{max-width:97vw!important}.ieeesa-modal-dialog.ieeesa-add-user-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-search-user-form .ieeesa-dynamic-form__actions,.ieeesa-add-user-form .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:.5em;padding:2em 1em .75em;margin-top:2em}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field{display:flex}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid{border:2px solid #ba0c2f}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input{position:relative}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field{padding-top:0;margin-bottom:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-search-user-form .ieeesa-checkbox-field .mat-mdc-list,.ieeesa-add-user-form .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}.ieeesa-search-user-form .mat-mdc-form-field-subscript-wrapper,.ieeesa-add-user-form .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-search-user-form .ieeesa-dynamic-form__actions--right-btn{min-width:175px!important}@media (min-width: 767px){.ieeesa-search-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-search-field .mat-mdc-form-field{width:32%}.ieeesa-modal-dialog.ieeesa-add-user-roster{max-width:65vw!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DynamicFormComponent, selector: "ieeesa-dynamic-form", inputs: ["formGroups", "submitResponse", "searchResponse", "fileUploadStatus", "colWidth", "isLegendVisible", "rightButtonLabel", "leftButtonLabel", "isSubmitButtonDisabled", "isLeftButtonDisabled", "isLeftButtonNeeded", "isRightButtonNeeded", "actionButtonAlign", "projectedContentAfterControlName", "fileDownloadAndDeleteConfig"], outputs: ["formSubmit", "formChange", "formInput", "formLeftButtonClicked", "formSearchApply", "formGroupsReference", "dropdownChange", "formCheckboxSelection", "formDateSelected", "formSelectSearch", "formControlChange", "formAutoCompleteSearch", "formAutoCompleteClearSearchValue", "autoCompleteOptionSelected", "formAfterContentInit", "formSelectedDateRange", "addFormGroup", "formTimeSelected", "supportTextLinkClick", "formSlideToggleChange", "formFileUpload", "dropdownOpenedChange", "formColorPickerChange", "formRadioOptionSelected", "ctaButtonClick", "formMultiSelectAutoCompleteSearch", "formMultiSelectAutoCompleteClearSearchValue", "multiSelectAutoCompleteOptionsSelected", "formRichTextEditorContentChange"], exportAs: ["dynamicForm"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "component", type: OrgMultiSelectComponent, selector: "ieeesa-org-multi-select", inputs: ["label", "placeholder", "supportMessage", "ariaLabel", "options", "selectedOptions", "required", "removeIconURL", "clearAllIconURL"], outputs: ["search", "selectionChange", "fieldBlur", "invalidFreeText"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
6557
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddUserRosterComponent, isStandalone: true, selector: "ieeesa-add-user-roster", outputs: { submitFormResponse: "submitFormResponse", formCancel: "formCancel" }, providers: [AlertsService], viewQueries: [{ propertyName: "dynamicFormComponent", first: true, predicate: DynamicFormComponent, descendants: true }], ngImport: i0, template: "<ieeesa-dynamic-form\r\n *ngIf=\"searchUserFormGroup && isSearchUserForm\"\r\n class=\"ieeesa-search-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"searchUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onSearchUserFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n></ieeesa-dynamic-form>\r\n\r\n<ieeesa-dynamic-form\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm\"\r\n class=\"ieeesa-add-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"addUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onAddUserFormSubmit($event)\"\r\n (formSearchApply)=\"formSearchApply($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n (formGroupsReference)=\"getAddUserFormGroupRef($event)\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formChange)=\"onAddUserFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Its value stays synced to\r\n the reactive `representingOrg` control via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm && isIndividualRoster\"\r\n class=\"ieeesa-add-user-form__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"selectedOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-add-user-roster{max-width:97vw!important}.ieeesa-modal-dialog.ieeesa-add-user-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-search-user-form .ieeesa-dynamic-form__actions,.ieeesa-add-user-form .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:.5em;padding:2em 1em .75em;margin-top:2em}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field{display:flex}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid{border:2px solid #ba0c2f}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input{position:relative}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field{padding-top:0;margin-bottom:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-text-area-field .address,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-text-area-field .address{height:96px!important;min-height:96px!important;max-height:96px!important;overflow-y:auto!important}.ieeesa-search-user-form .ieeesa-checkbox-field .mat-mdc-list,.ieeesa-add-user-form .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}.ieeesa-search-user-form .mat-mdc-form-field-subscript-wrapper,.ieeesa-add-user-form .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-search-user-form .ieeesa-dynamic-form__actions--right-btn{min-width:175px!important}@media (min-width: 767px){.ieeesa-search-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-phone-field__box,.ieeesa-add-user-form .ieeesa-phone-field__box{width:32%}.ieeesa-modal-dialog.ieeesa-add-user-roster{max-width:65vw!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DynamicFormComponent, selector: "ieeesa-dynamic-form", inputs: ["formGroups", "submitResponse", "searchResponse", "fileUploadStatus", "colWidth", "isLegendVisible", "rightButtonLabel", "leftButtonLabel", "isSubmitButtonDisabled", "isLeftButtonDisabled", "isLeftButtonNeeded", "isRightButtonNeeded", "actionButtonAlign", "projectedContentAfterControlName", "fileDownloadAndDeleteConfig"], outputs: ["formSubmit", "formChange", "formInput", "formLeftButtonClicked", "formSearchApply", "formGroupsReference", "dropdownChange", "formCheckboxSelection", "formDateSelected", "formSelectSearch", "formControlChange", "formAutoCompleteSearch", "formAutoCompleteClearSearchValue", "autoCompleteOptionSelected", "formAfterContentInit", "formSelectedDateRange", "addFormGroup", "formTimeSelected", "supportTextLinkClick", "formSlideToggleChange", "formFileUpload", "dropdownOpenedChange", "formColorPickerChange", "formRadioOptionSelected", "ctaButtonClick", "formMultiSelectAutoCompleteSearch", "formMultiSelectAutoCompleteClearSearchValue", "multiSelectAutoCompleteOptionsSelected", "formRichTextEditorContentChange"], exportAs: ["dynamicForm"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "component", type: OrgMultiSelectComponent, selector: "ieeesa-org-multi-select", inputs: ["label", "placeholder", "supportMessage", "ariaLabel", "options", "selectedOptions", "required", "removeIconURL", "clearAllIconURL"], outputs: ["search", "selectionChange", "fieldBlur", "invalidFreeText"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
6021
6558
|
}
|
|
6022
6559
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddUserRosterComponent, decorators: [{
|
|
6023
6560
|
type: Component,
|
|
@@ -6026,7 +6563,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
6026
6563
|
DynamicFormComponent,
|
|
6027
6564
|
MatDialogModule,
|
|
6028
6565
|
OrgMultiSelectComponent,
|
|
6029
|
-
], encapsulation: ViewEncapsulation.None, providers: [AlertsService], template: "<ieeesa-dynamic-form\r\n *ngIf=\"searchUserFormGroup && isSearchUserForm\"\r\n class=\"ieeesa-search-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"searchUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onSearchUserFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n></ieeesa-dynamic-form>\r\n\r\n<ieeesa-dynamic-form\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm\"\r\n class=\"ieeesa-add-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"addUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onAddUserFormSubmit($event)\"\r\n (formSearchApply)=\"formSearchApply($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n (formGroupsReference)=\"getAddUserFormGroupRef($event)\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formChange)=\"onAddUserFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Its value stays synced to\r\n the reactive `representingOrg` control via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm && isIndividualRoster\"\r\n class=\"ieeesa-add-user-form__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"selectedOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-add-user-roster{max-width:97vw!important}.ieeesa-modal-dialog.ieeesa-add-user-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-search-user-form .ieeesa-dynamic-form__actions,.ieeesa-add-user-form .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:.5em;padding:2em 1em .75em;margin-top:2em}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field{display:flex}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid{border:2px solid #ba0c2f}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input{position:relative}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field{padding-top:0;margin-bottom:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-search-user-form .ieeesa-checkbox-field .mat-mdc-list,.ieeesa-add-user-form .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}.ieeesa-search-user-form .mat-mdc-form-field-subscript-wrapper,.ieeesa-add-user-form .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-search-user-form .ieeesa-dynamic-form__actions--right-btn{min-width:175px!important}@media (min-width: 767px){.ieeesa-search-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-search-field .mat-mdc-form-field{width:32%}.ieeesa-modal-dialog.ieeesa-add-user-roster{max-width:65vw!important}}\n"] }]
|
|
6566
|
+
], encapsulation: ViewEncapsulation.None, providers: [AlertsService], template: "<ieeesa-dynamic-form\r\n *ngIf=\"searchUserFormGroup && isSearchUserForm\"\r\n class=\"ieeesa-search-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"searchUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onSearchUserFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n></ieeesa-dynamic-form>\r\n\r\n<ieeesa-dynamic-form\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm\"\r\n class=\"ieeesa-add-user-form\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"false\"\r\n [isSubmitButtonDisabled]=\"isSubmitButtonDisabled\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"addUserFormGroup\"\r\n [isLeftButtonNeeded]=\"true\"\r\n (formSubmit)=\"onAddUserFormSubmit($event)\"\r\n (formSearchApply)=\"formSearchApply($event)\"\r\n (formLeftButtonClicked)=\"onFormCancel()\"\r\n (formGroupsReference)=\"getAddUserFormGroupRef($event)\"\r\n (formCheckboxSelection)=\"onUserRoleSelection($event)\"\r\n (formChange)=\"onAddUserFormChange($event)\"\r\n>\r\n <!--\r\n Representing Organization (INDIVIDUAL rosters only). Projected into the\r\n dynamic form's [component] slot so it renders after the other fields but\r\n BEFORE the Save/Cancel action buttons. Uses the custom multi-select field so\r\n multiple orgs can be picked from an open dropdown without the Material\r\n autocomplete closing or clearing the typed text. Its value stays synced to\r\n the reactive `representingOrg` control via getSelectedOrganizations().\r\n -->\r\n <ieeesa-org-multi-select\r\n component\r\n *ngIf=\"addUserFormGroup && !isSearchUserForm && isIndividualRoster\"\r\n class=\"ieeesa-add-user-form__org\"\r\n [label]=\"addUserRosterTexts?.label?.representingOrganization + '*'\"\r\n [ariaLabel]=\"addUserRosterTexts?.label?.ariaLabel?.representingOrganization\"\r\n [supportMessage]=\"addUserRosterTexts?.supportText?.representingOrganization\"\r\n [options]=\"organizations\"\r\n [selectedOptions]=\"selectedOrganizations\"\r\n (search)=\"getOrganizations($event)\"\r\n (selectionChange)=\"getSelectedOrganizations($event)\"\r\n (invalidFreeText)=\"onOrgInvalidFreeText($event)\"\r\n ></ieeesa-org-multi-select>\r\n</ieeesa-dynamic-form>\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-modal-dialog.ieeesa-add-user-roster{max-width:97vw!important}.ieeesa-modal-dialog.ieeesa-add-user-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0 1em .75em!important}.ieeesa-search-user-form .ieeesa-dynamic-form__actions,.ieeesa-add-user-form .ieeesa-dynamic-form__actions{flex-direction:row-reverse;gap:.5em;padding:2em 1em .75em;margin-top:2em}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-autocomplete .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-mdc-form-field{display:flex}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-search-field .mat-form-field-invalid{border:2px solid #ba0c2f}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-multi-select-autocomplete__input{position:relative}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field{padding-top:0;margin-bottom:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay{background:#fff;padding:0;border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mat-mdc-form-field-focus-overlay .mat-mdc-form-field-infix{min-height:2.375em;padding-top:.0625em;padding-bottom:.375em}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-search-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:before,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name.ieeesa-dynamic-form__form-field .ieeesa-text-area-field .mat-mdc-form-field .mdc-line-ripple:after{border:0}.ieeesa-search-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper,.ieeesa-add-user-form .ieeesa-dynamic-form .full-name .mat-mdc-text-field-wrapper{border:unset!important}.ieeesa-search-user-form .ieeesa-dynamic-form .ieeesa-text-area-field .address,.ieeesa-add-user-form .ieeesa-dynamic-form .ieeesa-text-area-field .address{height:96px!important;min-height:96px!important;max-height:96px!important;overflow-y:auto!important}.ieeesa-search-user-form .ieeesa-checkbox-field .mat-mdc-list,.ieeesa-add-user-form .ieeesa-checkbox-field .mat-mdc-list{margin-left:-.625em}.ieeesa-search-user-form .mat-mdc-form-field-subscript-wrapper,.ieeesa-add-user-form .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-search-user-form .ieeesa-dynamic-form__actions--right-btn{min-width:175px!important}@media (min-width: 767px){.ieeesa-search-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-input-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-select-field .mat-mdc-form-field,.ieeesa-add-user-form .ieeesa-search-field .mat-mdc-form-field,.ieeesa-search-user-form .ieeesa-phone-field__box,.ieeesa-add-user-form .ieeesa-phone-field__box{width:32%}.ieeesa-modal-dialog.ieeesa-add-user-roster{max-width:65vw!important}}\n"] }]
|
|
6030
6567
|
}], ctorParameters: function () { return [{ type: GroupsService }, { type: i2.GlobalErrorHandlerService }, { type: i2.AlertsService }, { type: i0.ElementRef }]; }, propDecorators: { dynamicFormComponent: [{
|
|
6031
6568
|
type: ViewChild,
|
|
6032
6569
|
args: [DynamicFormComponent]
|
|
@@ -6054,6 +6591,8 @@ var TableColumnSchemaUserGroup;
|
|
|
6054
6591
|
TableColumnSchemaUserGroup["CLASSIFICATION"] = "classification";
|
|
6055
6592
|
TableColumnSchemaUserGroup["ORGANIZATION"] = "org_name";
|
|
6056
6593
|
TableColumnSchemaUserGroup["MEMBER_TYPE"] = "memberType";
|
|
6594
|
+
TableColumnSchemaUserGroup["PHONE_NUMBER"] = "phone_number";
|
|
6595
|
+
TableColumnSchemaUserGroup["ADDRESS"] = "address";
|
|
6057
6596
|
})(TableColumnSchemaUserGroup || (TableColumnSchemaUserGroup = {}));
|
|
6058
6597
|
|
|
6059
6598
|
/**
|
|
@@ -6624,7 +7163,10 @@ class ViewRosterComponent {
|
|
|
6624
7163
|
];
|
|
6625
7164
|
if (this.hasClassification) {
|
|
6626
7165
|
this.getClassifications();
|
|
6627
|
-
|
|
7166
|
+
// Insert Classification immediately before the Role column (its original position).
|
|
7167
|
+
const roleColumnIndex = this.columnSchema.findIndex((column) => column.columnDef === TableColumnSchemaUserGroup.ROLE);
|
|
7168
|
+
const classificationInsertIndex = roleColumnIndex === -1 ? this.columnSchema.length - 1 : roleColumnIndex;
|
|
7169
|
+
this.columnSchema.splice(classificationInsertIndex, 0, {
|
|
6628
7170
|
id: 7,
|
|
6629
7171
|
columnDef: TableColumnSchemaUserGroup.CLASSIFICATION,
|
|
6630
7172
|
heading: this.tableColumnsForIndividual?.classification,
|
|
@@ -7122,6 +7664,9 @@ class ViewRosterComponent {
|
|
|
7122
7664
|
organization: selectedUserInfo[0]?.organization,
|
|
7123
7665
|
memberStatus: selectedUserInfo[0]?.memberStatus,
|
|
7124
7666
|
canDelete: selectedUserInfo[0]?.canDelete,
|
|
7667
|
+
phoneCountryCode: selectedUserInfo[0]?.phoneCountryCode,
|
|
7668
|
+
phoneNumber: selectedUserInfo[0]?.phoneNumber,
|
|
7669
|
+
address: selectedUserInfo[0]?.address,
|
|
7125
7670
|
});
|
|
7126
7671
|
else
|
|
7127
7672
|
this.groupService.setSelectedUserInfo({
|
|
@@ -7130,6 +7675,9 @@ class ViewRosterComponent {
|
|
|
7130
7675
|
role: selectedUserInfo[0]?.role,
|
|
7131
7676
|
userId: selectedUserInfo[0]?.userId,
|
|
7132
7677
|
canDelete: selectedUserInfo[0]?.canDelete,
|
|
7678
|
+
phoneCountryCode: selectedUserInfo[0]?.phoneCountryCode,
|
|
7679
|
+
phoneNumber: selectedUserInfo[0]?.phoneNumber,
|
|
7680
|
+
address: selectedUserInfo[0]?.address,
|
|
7133
7681
|
});
|
|
7134
7682
|
this.groupService?.openModalNotifier?.next(GroupFunctionType.EDIT_ROSTER_USER_ROLE);
|
|
7135
7683
|
}
|
|
@@ -7262,7 +7810,7 @@ class ViewRosterComponent {
|
|
|
7262
7810
|
this.destroy$.unsubscribe();
|
|
7263
7811
|
}
|
|
7264
7812
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewRosterComponent, deps: [{ token: i1.MatDialog }, { token: GroupsService }, { token: i2.AlertsService }, { token: i0.ChangeDetectorRef }, { token: i2.GlobalErrorHandlerService }, { token: RosterExportService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7265
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ViewRosterComponent, isStandalone: true, selector: "ieeesa-view-roster", host: { listeners: { "window:resize": "closeAddMenuOnViewportChange()", "window:scroll": "closeAddMenuOnViewportChange()" } }, viewQueries: [{ propertyName: "addMenuTrigger", first: true, predicate: ["addMenuTrigger"], descendants: true }, { propertyName: "addMenuAnchor", first: true, predicate: ["addMenuTrigger"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ieeesa-data-table\r\n [tableDataInfo]=\"tableData\"\r\n [columnSchemaInfo]=\"columnSchema\"\r\n [searchPlaceHolderText]=\"searchPlaceholderText\"\r\n [tableActions]=\"rosterActions\"\r\n [isCellTextOverflowEllipsis]=\"true\"\r\n [filters]=\"filters\"\r\n [className]=\"dataTableClassName\"\r\n [selectedFilterOptions]=\"filterOptions\"\r\n [defaultSortedColumn]=\"defaultSortedColumn\"\r\n (selectedFilter)=\"setSelectedFilterOptions($event)\"\r\n (removeFilteredOption)=\"onFilterGroupUsers($event)\"\r\n (filteredOptions)=\"onFilterGroupUsers($event)\"\r\n (searchedValue)=\"onSearchGroupUsers($event)\"\r\n (selectedRowToEdit)=\"onEditUserRoles($event)\"\r\n (selectedRowsToDelete)=\"openUserDeleteConfirmationModal($event)\"\r\n (sortChange)=\"onSortGroupUsers($event)\"\r\n (addRow)=\"onAddIconClick()\"\r\n>\r\n <!-- Export Roster action \u2014 projected into the data-table action row,\r\n inline after the delete icon. -->\r\n <div dataTableActions class=\"ieeesa-view-roster__export-wrapper\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__export-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterExport?.ariaLabel\"\r\n [disabled]=\"!tableData?.length || (rosterExportService.isExportInProgress$ | async)\"\r\n (click)=\"onExportClick()\"\r\n >\r\n <svg class=\"ieeesa-view-roster__export-btn-icon\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-export\"></use>\r\n </svg>\r\n {{ constants?.rosterExport?.buttonLabel }}\r\n </button>\r\n\r\n <!-- View History action \u2014 opens the import-history popup (mock data). -->\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__history-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterImportHistory?.ariaLabel\"\r\n (click)=\"onViewHistory()\"\r\n >\r\n {{ constants?.rosterImportHistory?.buttonLabel }}\r\n </button>\r\n\r\n <ieeesa-export-format-popover\r\n [formatOptions]=\"rosterExportService.exportFormatOptions\"\r\n [isOpen]=\"(rosterExportService.isPopoverOpen$ | async) ?? false\"\r\n [popoverTitle]=\"rosterExportService.popoverTitle\"\r\n [formatSubtitles]=\"rosterExportService.exportFormatSubtitles\"\r\n (formatSelected)=\"onExportFormatSelected($event)\"\r\n (closed)=\"rosterExportService.closePopover()\"\r\n ></ieeesa-export-format-popover>\r\n\r\n <!-- Invisible anchor for the \"Add\" menu (Add Manually / Bulk Import).\r\n The add-user icon lives inside the data-table and only emits (addRow);\r\n onAddIconClick() opens this menu programmatically, anchored here so it\r\n appears just under the add icon. -->\r\n <span\r\n #addMenuTrigger=\"matMenuTrigger\"\r\n [matMenuTriggerFor]=\"addMenu\"\r\n class=\"ieeesa-view-roster__add-menu-anchor\"\r\n aria-hidden=\"true\"\r\n ></span>\r\n <mat-menu\r\n #addMenu=\"matMenu\"\r\n class=\"ieeesa-view-roster__add-menu\"\r\n xPosition=\"before\"\r\n yPosition=\"below\"\r\n >\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onAddManually()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.addManually?.title ?? 'Add Manually' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.addManually?.subtitle ?? 'Search by email, fill details' }}\r\n </span>\r\n </button>\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onImportRoster()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.bulkImport?.title ?? 'Bulk Import' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.bulkImport?.subtitle ?? 'Upload CSV or XLS file' }}\r\n </span>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</ieeesa-data-table>\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-modal-dialog.ieeesa-view-roster{max-width:90vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:3em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0;min-height:405px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__content{height:500px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__no-table-data{height:auto}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__filter{padding-bottom:1em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter{--mdc-checkbox-state-layer-size: 2.5em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter .ieeesa-chip .mat-mdc-chip{background-color:#fffbfe!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .cdk-column-select{width:7%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-name{width:11.25em;max-width:11.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-email{width:15em;max-width:15em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-name{width:11em;max-width:11em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-email{width:13em;max-width:13em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-memberType,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-role,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-employer{width:8.25em;max-width:8.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-org_name,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column{width:10em;max-width:10em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-classification{width:15em;max-width:15em}@media (max-width: 576px){.ieeesa-modal-dialog.ieeesa-view-roster{max-width:95vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table{padding-right:0!important}}.ieeesa-view-roster__export-wrapper{position:relative;display:inline-flex;align-items:center;gap:8px}.ieeesa-view-roster__add-menu-anchor{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu{min-width:232px;max-width:320px;font-family:Calibri Regular,sans-serif;border-radius:8px;border:1px solid #eceef1;box-shadow:0 8px 24px #00000029;background:#fff;overflow:hidden}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu .mat-mdc-menu-content{padding:0}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;line-height:1.3;padding:12px 16px;min-height:0;height:auto}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item:hover:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-keyboard-focused:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-program-focused:not([disabled]){background-color:#f4f9fc}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item+.ieeesa-view-roster__add-menu-item{border-top:1px solid #eceef1}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item .mdc-list-item__primary-text{display:flex;flex-direction:column;gap:2px;white-space:normal;overflow:visible;text-overflow:clip}.ieeesa-view-roster__add-menu-item-title{display:block;width:100%;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;line-height:1.35;color:#1f2937}.ieeesa-view-roster__add-menu-item-subtitle{display:block;width:100%;margin-top:2px;font-family:Calibri Regular,sans-serif;font-size:12px;font-weight:400;line-height:1.35;color:#6f7782}.ieeesa-view-roster__export-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.ieeesa-view-roster__export-btn-icon{width:16px;height:16px;flex-shrink:0}.ieeesa-view-roster__history-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "component", type: DataTableComponent, selector: "ieeesa-data-table", inputs: ["tableDataInfo", "nestedTableDataInfo", "columnSchemaInfo", "nestedTableColumnSchemaInfo", "tableActions", "hasNestedTable", "tableColumnActions", "tableColumnActionMenuSize", "tableRowActions", "nestedTableRowActions", "caption", "viewAll", "paginatorConfig", "nestedPaginatorConfig", "legends", "pageIndex", "pageSize", "searchPlaceHolderText", "rowEditButton", "rowDeleteButton", "tableEditButton", "tableDeleteButton", "rowExpandButton", "rowCollapseButton", "isNestedTableHeaderNeeded", "addButton", "defaultColumnSortDirection", "defaultSortedColumn", "isClearSortNeeded", "filters", "selectedFilterOptions", "appliedFilterOptions", "searchType", "className", "searchSupportMessage", "inbuiltSortingNeeded", "isCellTextOverflowEllipsis", "isTableHeaderNeeded", "tableColumnsHeaderText", "verticalColumnHeaderNumber", "scrollbarSupportMessage", "isScrollSupportMessageNeeded", "isStickyHeaderNeeded", "customStickyHeaderNeeded", "headerElementClassName", "minCharToSearch", "searchResultMessage", "rowMenuActionIcon", "canDisableCheckbox", "isEllipsisRequiredForLink"], outputs: ["rowSelected", "selectedRowToEdit", "selectedRowToDelete", "selectedRowsToDelete", "rowLink", "addRow", "columnDataOnRowLinkClick", "menuActionClick", "selectActionMenu", "paginationChange", "selectedFilter", "removeFilteredOption", "filteredOptions", "searchedValue", "sortChange", "selectedRowsInfo", "rowExpansionClick", "tableColumnMenuActionClick", "tableColumnMenuToggleButton", "rowSlideToggle"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: ExportFormatPopoverComponent, selector: "ieeesa-export-format-popover", inputs: ["formatOptions", "origin", "isOpen", "popoverTitle", "formatSubtitles"], outputs: ["formatSelected", "closed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
7813
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ViewRosterComponent, isStandalone: true, selector: "ieeesa-view-roster", host: { listeners: { "window:resize": "closeAddMenuOnViewportChange()", "window:scroll": "closeAddMenuOnViewportChange()" } }, viewQueries: [{ propertyName: "addMenuTrigger", first: true, predicate: ["addMenuTrigger"], descendants: true }, { propertyName: "addMenuAnchor", first: true, predicate: ["addMenuTrigger"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ieeesa-data-table\r\n [tableDataInfo]=\"tableData\"\r\n [columnSchemaInfo]=\"columnSchema\"\r\n [searchPlaceHolderText]=\"searchPlaceholderText\"\r\n [tableActions]=\"rosterActions\"\r\n [isCellTextOverflowEllipsis]=\"true\"\r\n [filters]=\"filters\"\r\n [className]=\"dataTableClassName\"\r\n [selectedFilterOptions]=\"filterOptions\"\r\n [defaultSortedColumn]=\"defaultSortedColumn\"\r\n (selectedFilter)=\"setSelectedFilterOptions($event)\"\r\n (removeFilteredOption)=\"onFilterGroupUsers($event)\"\r\n (filteredOptions)=\"onFilterGroupUsers($event)\"\r\n (searchedValue)=\"onSearchGroupUsers($event)\"\r\n (selectedRowToEdit)=\"onEditUserRoles($event)\"\r\n (selectedRowsToDelete)=\"openUserDeleteConfirmationModal($event)\"\r\n (sortChange)=\"onSortGroupUsers($event)\"\r\n (addRow)=\"onAddIconClick()\"\r\n>\r\n <!-- Export Roster action \u2014 projected into the data-table action row,\r\n inline after the delete icon. -->\r\n <div dataTableActions class=\"ieeesa-view-roster__actions-slot\">\r\n <div class=\"ieeesa-view-roster__export-anchor\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__export-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterExport?.ariaLabel\"\r\n [disabled]=\"!tableData?.length || (rosterExportService.isExportInProgress$ | async)\"\r\n (click)=\"onExportClick()\"\r\n >\r\n <svg class=\"ieeesa-view-roster__export-btn-icon\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-export\"></use>\r\n </svg>\r\n {{ constants?.rosterExport?.buttonLabel }}\r\n </button>\r\n <ieeesa-export-format-popover\r\n [formatOptions]=\"rosterExportService.exportFormatOptions\"\r\n [isOpen]=\"(rosterExportService.isPopoverOpen$ | async) ?? false\"\r\n [popoverTitle]=\"rosterExportService.popoverTitle\"\r\n [formatSubtitles]=\"rosterExportService.exportFormatSubtitles\"\r\n (formatSelected)=\"onExportFormatSelected($event)\"\r\n (closed)=\"rosterExportService.closePopover()\"\r\n ></ieeesa-export-format-popover>\r\n </div>\r\n\r\n <!-- View History action \u2014 opens the import-history popup (mock data). -->\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__history-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterImportHistory?.ariaLabel\"\r\n (click)=\"onViewHistory()\"\r\n >\r\n {{ constants?.rosterImportHistory?.buttonLabel }}\r\n </button>\r\n\r\n <!-- Invisible anchor for the \"Add\" menu (Add Manually / Bulk Import).\r\n The add-user icon lives inside the data-table and only emits (addRow);\r\n onAddIconClick() opens this menu programmatically, anchored here so it\r\n appears just under the add icon. -->\r\n <span\r\n #addMenuTrigger=\"matMenuTrigger\"\r\n [matMenuTriggerFor]=\"addMenu\"\r\n class=\"ieeesa-view-roster__add-menu-anchor\"\r\n aria-hidden=\"true\"\r\n ></span>\r\n <mat-menu\r\n #addMenu=\"matMenu\"\r\n class=\"ieeesa-view-roster__add-menu\"\r\n xPosition=\"before\"\r\n yPosition=\"below\"\r\n >\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onAddManually()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.addManually?.title ?? 'Add Manually' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.addManually?.subtitle ?? 'Search by email, fill details' }}\r\n </span>\r\n </button>\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onImportRoster()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.bulkImport?.title ?? 'Bulk Import' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.bulkImport?.subtitle ?? 'Upload CSV or XLS file' }}\r\n </span>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</ieeesa-data-table>\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-modal-dialog.ieeesa-view-roster{max-width:90vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:3em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0;min-height:405px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__content{height:500px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__no-table-data{height:auto}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__filter{padding-bottom:1em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions{align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:.5rem}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions ieeesa-filter.col-md-7,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions ieeesa-filter.col-lg-6{flex:0 1 auto;width:auto;max-width:100%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions>.col-md-5,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions>.col-lg-6{flex:1 1 34rem;width:auto;max-width:100%;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:.5rem!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions .ieeesa-data-table__search-wrapper{width:12rem!important;min-width:11rem;flex:0 1 12rem}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter{--mdc-checkbox-state-layer-size: 2.5em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter .ieeesa-chip .mat-mdc-chip{background-color:#fffbfe!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .cdk-column-select{width:7%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-name{width:11.25em;max-width:11.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-email{width:15em;max-width:15em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-name{width:11em;max-width:11em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-email{width:13em;max-width:13em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-memberType,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-role,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-employer{width:8.25em;max-width:8.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-org_name,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column{width:10em;max-width:10em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-classification{width:15em;max-width:15em}@media (max-width: 576px){.ieeesa-modal-dialog.ieeesa-view-roster{max-width:95vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table{padding-right:0!important}}.ieeesa-view-roster__actions-slot{display:contents}.ieeesa-view-roster__export-anchor{position:relative;display:inline-flex;align-items:center}.ieeesa-view-roster__add-menu-anchor{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu{min-width:232px;max-width:320px;font-family:Calibri Regular,sans-serif;border-radius:8px;border:1px solid #eceef1;box-shadow:0 8px 24px #00000029;background:#fff;overflow:hidden}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu .mat-mdc-menu-content{padding:0}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;line-height:1.3;padding:12px 16px;min-height:0;height:auto}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item:hover:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-keyboard-focused:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-program-focused:not([disabled]){background-color:#f4f9fc}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item+.ieeesa-view-roster__add-menu-item{border-top:1px solid #eceef1}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item .mdc-list-item__primary-text{display:flex;flex-direction:column;gap:2px;white-space:normal;overflow:visible;text-overflow:clip}.ieeesa-view-roster__add-menu-item-title{display:block;width:100%;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;line-height:1.35;color:#1f2937}.ieeesa-view-roster__add-menu-item-subtitle{display:block;width:100%;margin-top:2px;font-family:Calibri Regular,sans-serif;font-size:12px;font-weight:400;line-height:1.35;color:#6f7782}.ieeesa-view-roster__export-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.ieeesa-view-roster__export-btn-icon{width:16px;height:16px;flex-shrink:0}.ieeesa-view-roster__history-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "component", type: DataTableComponent, selector: "ieeesa-data-table", inputs: ["tableDataInfo", "nestedTableDataInfo", "columnSchemaInfo", "nestedTableColumnSchemaInfo", "tableActions", "hasNestedTable", "tableColumnActions", "tableColumnActionMenuSize", "tableRowActions", "nestedTableRowActions", "caption", "viewAll", "paginatorConfig", "nestedPaginatorConfig", "legends", "pageIndex", "pageSize", "searchPlaceHolderText", "rowEditButton", "rowDeleteButton", "tableEditButton", "tableDeleteButton", "rowExpandButton", "rowCollapseButton", "isNestedTableHeaderNeeded", "addButton", "defaultColumnSortDirection", "defaultSortedColumn", "isClearSortNeeded", "filters", "selectedFilterOptions", "appliedFilterOptions", "searchType", "className", "searchSupportMessage", "inbuiltSortingNeeded", "isCellTextOverflowEllipsis", "isTableHeaderNeeded", "tableColumnsHeaderText", "verticalColumnHeaderNumber", "scrollbarSupportMessage", "isScrollSupportMessageNeeded", "isStickyHeaderNeeded", "customStickyHeaderNeeded", "headerElementClassName", "minCharToSearch", "searchResultMessage", "rowMenuActionIcon", "canDisableCheckbox", "isEllipsisRequiredForLink"], outputs: ["rowSelected", "selectedRowToEdit", "selectedRowToDelete", "selectedRowsToDelete", "rowLink", "addRow", "columnDataOnRowLinkClick", "menuActionClick", "selectActionMenu", "paginationChange", "selectedFilter", "removeFilteredOption", "filteredOptions", "searchedValue", "sortChange", "selectedRowsInfo", "rowExpansionClick", "tableColumnMenuActionClick", "tableColumnMenuToggleButton", "rowSlideToggle"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: ExportFormatPopoverComponent, selector: "ieeesa-export-format-popover", inputs: ["formatOptions", "origin", "isOpen", "popoverTitle", "formatSubtitles"], outputs: ["formatSelected", "closed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
7266
7814
|
}
|
|
7267
7815
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewRosterComponent, decorators: [{
|
|
7268
7816
|
type: Component,
|
|
@@ -7273,7 +7821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
7273
7821
|
MatButtonModule,
|
|
7274
7822
|
MatMenuModule,
|
|
7275
7823
|
ExportFormatPopoverComponent,
|
|
7276
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ieeesa-data-table\r\n [tableDataInfo]=\"tableData\"\r\n [columnSchemaInfo]=\"columnSchema\"\r\n [searchPlaceHolderText]=\"searchPlaceholderText\"\r\n [tableActions]=\"rosterActions\"\r\n [isCellTextOverflowEllipsis]=\"true\"\r\n [filters]=\"filters\"\r\n [className]=\"dataTableClassName\"\r\n [selectedFilterOptions]=\"filterOptions\"\r\n [defaultSortedColumn]=\"defaultSortedColumn\"\r\n (selectedFilter)=\"setSelectedFilterOptions($event)\"\r\n (removeFilteredOption)=\"onFilterGroupUsers($event)\"\r\n (filteredOptions)=\"onFilterGroupUsers($event)\"\r\n (searchedValue)=\"onSearchGroupUsers($event)\"\r\n (selectedRowToEdit)=\"onEditUserRoles($event)\"\r\n (selectedRowsToDelete)=\"openUserDeleteConfirmationModal($event)\"\r\n (sortChange)=\"onSortGroupUsers($event)\"\r\n (addRow)=\"onAddIconClick()\"\r\n>\r\n <!-- Export Roster action \u2014 projected into the data-table action row,\r\n inline after the delete icon. -->\r\n <div dataTableActions class=\"ieeesa-view-roster__export-wrapper\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__export-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterExport?.ariaLabel\"\r\n [disabled]=\"!tableData?.length || (rosterExportService.isExportInProgress$ | async)\"\r\n (click)=\"onExportClick()\"\r\n >\r\n <svg class=\"ieeesa-view-roster__export-btn-icon\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-export\"></use>\r\n </svg>\r\n {{ constants?.rosterExport?.buttonLabel }}\r\n </button>\r\n\r\n <!-- View History action \u2014 opens the import-history popup (mock data). -->\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__history-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterImportHistory?.ariaLabel\"\r\n (click)=\"onViewHistory()\"\r\n >\r\n {{ constants?.rosterImportHistory?.buttonLabel }}\r\n </button>\r\n\r\n <ieeesa-export-format-popover\r\n [formatOptions]=\"rosterExportService.exportFormatOptions\"\r\n [isOpen]=\"(rosterExportService.isPopoverOpen$ | async) ?? false\"\r\n [popoverTitle]=\"rosterExportService.popoverTitle\"\r\n [formatSubtitles]=\"rosterExportService.exportFormatSubtitles\"\r\n (formatSelected)=\"onExportFormatSelected($event)\"\r\n (closed)=\"rosterExportService.closePopover()\"\r\n ></ieeesa-export-format-popover>\r\n\r\n <!-- Invisible anchor for the \"Add\" menu (Add Manually / Bulk Import).\r\n The add-user icon lives inside the data-table and only emits (addRow);\r\n onAddIconClick() opens this menu programmatically, anchored here so it\r\n appears just under the add icon. -->\r\n <span\r\n #addMenuTrigger=\"matMenuTrigger\"\r\n [matMenuTriggerFor]=\"addMenu\"\r\n class=\"ieeesa-view-roster__add-menu-anchor\"\r\n aria-hidden=\"true\"\r\n ></span>\r\n <mat-menu\r\n #addMenu=\"matMenu\"\r\n class=\"ieeesa-view-roster__add-menu\"\r\n xPosition=\"before\"\r\n yPosition=\"below\"\r\n >\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onAddManually()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.addManually?.title ?? 'Add Manually' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.addManually?.subtitle ?? 'Search by email, fill details' }}\r\n </span>\r\n </button>\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onImportRoster()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.bulkImport?.title ?? 'Bulk Import' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.bulkImport?.subtitle ?? 'Upload CSV or XLS file' }}\r\n </span>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</ieeesa-data-table>\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-modal-dialog.ieeesa-view-roster{max-width:90vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:3em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0;min-height:405px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__content{height:500px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__no-table-data{height:auto}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__filter{padding-bottom:1em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter{--mdc-checkbox-state-layer-size: 2.5em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter .ieeesa-chip .mat-mdc-chip{background-color:#fffbfe!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .cdk-column-select{width:7%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-name{width:11.25em;max-width:11.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-email{width:15em;max-width:15em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-name{width:11em;max-width:11em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-email{width:13em;max-width:13em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-memberType,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-role,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-employer{width:8.25em;max-width:8.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-org_name,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column{width:10em;max-width:10em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-classification{width:15em;max-width:15em}@media (max-width: 576px){.ieeesa-modal-dialog.ieeesa-view-roster{max-width:95vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table{padding-right:0!important}}.ieeesa-view-roster__export-wrapper{position:relative;display:inline-flex;align-items:center;gap:8px}.ieeesa-view-roster__add-menu-anchor{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu{min-width:232px;max-width:320px;font-family:Calibri Regular,sans-serif;border-radius:8px;border:1px solid #eceef1;box-shadow:0 8px 24px #00000029;background:#fff;overflow:hidden}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu .mat-mdc-menu-content{padding:0}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;line-height:1.3;padding:12px 16px;min-height:0;height:auto}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item:hover:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-keyboard-focused:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-program-focused:not([disabled]){background-color:#f4f9fc}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item+.ieeesa-view-roster__add-menu-item{border-top:1px solid #eceef1}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item .mdc-list-item__primary-text{display:flex;flex-direction:column;gap:2px;white-space:normal;overflow:visible;text-overflow:clip}.ieeesa-view-roster__add-menu-item-title{display:block;width:100%;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;line-height:1.35;color:#1f2937}.ieeesa-view-roster__add-menu-item-subtitle{display:block;width:100%;margin-top:2px;font-family:Calibri Regular,sans-serif;font-size:12px;font-weight:400;line-height:1.35;color:#6f7782}.ieeesa-view-roster__export-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.ieeesa-view-roster__export-btn-icon{width:16px;height:16px;flex-shrink:0}.ieeesa-view-roster__history-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}\n"] }]
|
|
7824
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ieeesa-data-table\r\n [tableDataInfo]=\"tableData\"\r\n [columnSchemaInfo]=\"columnSchema\"\r\n [searchPlaceHolderText]=\"searchPlaceholderText\"\r\n [tableActions]=\"rosterActions\"\r\n [isCellTextOverflowEllipsis]=\"true\"\r\n [filters]=\"filters\"\r\n [className]=\"dataTableClassName\"\r\n [selectedFilterOptions]=\"filterOptions\"\r\n [defaultSortedColumn]=\"defaultSortedColumn\"\r\n (selectedFilter)=\"setSelectedFilterOptions($event)\"\r\n (removeFilteredOption)=\"onFilterGroupUsers($event)\"\r\n (filteredOptions)=\"onFilterGroupUsers($event)\"\r\n (searchedValue)=\"onSearchGroupUsers($event)\"\r\n (selectedRowToEdit)=\"onEditUserRoles($event)\"\r\n (selectedRowsToDelete)=\"openUserDeleteConfirmationModal($event)\"\r\n (sortChange)=\"onSortGroupUsers($event)\"\r\n (addRow)=\"onAddIconClick()\"\r\n>\r\n <!-- Export Roster action \u2014 projected into the data-table action row,\r\n inline after the delete icon. -->\r\n <div dataTableActions class=\"ieeesa-view-roster__actions-slot\">\r\n <div class=\"ieeesa-view-roster__export-anchor\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__export-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterExport?.ariaLabel\"\r\n [disabled]=\"!tableData?.length || (rosterExportService.isExportInProgress$ | async)\"\r\n (click)=\"onExportClick()\"\r\n >\r\n <svg class=\"ieeesa-view-roster__export-btn-icon\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-export\"></use>\r\n </svg>\r\n {{ constants?.rosterExport?.buttonLabel }}\r\n </button>\r\n <ieeesa-export-format-popover\r\n [formatOptions]=\"rosterExportService.exportFormatOptions\"\r\n [isOpen]=\"(rosterExportService.isPopoverOpen$ | async) ?? false\"\r\n [popoverTitle]=\"rosterExportService.popoverTitle\"\r\n [formatSubtitles]=\"rosterExportService.exportFormatSubtitles\"\r\n (formatSelected)=\"onExportFormatSelected($event)\"\r\n (closed)=\"rosterExportService.closePopover()\"\r\n ></ieeesa-export-format-popover>\r\n </div>\r\n\r\n <!-- View History action \u2014 opens the import-history popup (mock data). -->\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-view-roster__history-btn\"\r\n type=\"button\"\r\n [attr.aria-label]=\"constants?.rosterImportHistory?.ariaLabel\"\r\n (click)=\"onViewHistory()\"\r\n >\r\n {{ constants?.rosterImportHistory?.buttonLabel }}\r\n </button>\r\n\r\n <!-- Invisible anchor for the \"Add\" menu (Add Manually / Bulk Import).\r\n The add-user icon lives inside the data-table and only emits (addRow);\r\n onAddIconClick() opens this menu programmatically, anchored here so it\r\n appears just under the add icon. -->\r\n <span\r\n #addMenuTrigger=\"matMenuTrigger\"\r\n [matMenuTriggerFor]=\"addMenu\"\r\n class=\"ieeesa-view-roster__add-menu-anchor\"\r\n aria-hidden=\"true\"\r\n ></span>\r\n <mat-menu\r\n #addMenu=\"matMenu\"\r\n class=\"ieeesa-view-roster__add-menu\"\r\n xPosition=\"before\"\r\n yPosition=\"below\"\r\n >\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onAddManually()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.addManually?.title ?? 'Add Manually' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.addManually?.subtitle ?? 'Search by email, fill details' }}\r\n </span>\r\n </button>\r\n <button\r\n mat-menu-item\r\n type=\"button\"\r\n class=\"ieeesa-view-roster__add-menu-item\"\r\n (click)=\"onImportRoster()\"\r\n >\r\n <span class=\"ieeesa-view-roster__add-menu-item-title\">\r\n {{ constants?.addRosterMenu?.bulkImport?.title ?? 'Bulk Import' }}\r\n </span>\r\n <span class=\"ieeesa-view-roster__add-menu-item-subtitle\">\r\n {{ constants?.addRosterMenu?.bulkImport?.subtitle ?? 'Upload CSV or XLS file' }}\r\n </span>\r\n </button>\r\n </mat-menu>\r\n </div>\r\n</ieeesa-data-table>\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-modal-dialog.ieeesa-view-roster{max-width:90vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:3em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-modal .mat-mdc-dialog-content{padding:0;min-height:405px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__content{height:500px}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__no-table-data{height:auto}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__filter{padding-bottom:1em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions{align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:.5rem}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions ieeesa-filter.col-md-7,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions ieeesa-filter.col-lg-6{flex:0 1 auto;width:auto;max-width:100%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions>.col-md-5,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions>.col-lg-6{flex:1 1 34rem;width:auto;max-width:100%;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:.5rem!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table__actions .ieeesa-data-table__search-wrapper{width:12rem!important;min-width:11rem;flex:0 1 12rem}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter{--mdc-checkbox-state-layer-size: 2.5em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-filter .ieeesa-chip .mat-mdc-chip{background-color:#fffbfe!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .cdk-column-select{width:7%}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-name{width:11.25em;max-width:11.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-system-users-roster .cdk-column-email{width:15em;max-width:15em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-name{width:11em;max-width:11em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-email{width:13em;max-width:13em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-memberType,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-role,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-employer{width:8.25em;max-width:8.25em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-org_name,.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column{width:10em;max-width:10em}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table .ieeesa-individual-roster .cdk-column-classification{width:15em;max-width:15em}@media (max-width: 576px){.ieeesa-modal-dialog.ieeesa-view-roster{max-width:95vw!important}.ieeesa-modal-dialog.ieeesa-view-roster .ieeesa-data-table{padding-right:0!important}}.ieeesa-view-roster__actions-slot{display:contents}.ieeesa-view-roster__export-anchor{position:relative;display:inline-flex;align-items:center}.ieeesa-view-roster__add-menu-anchor{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu{min-width:232px;max-width:320px;font-family:Calibri Regular,sans-serif;border-radius:8px;border:1px solid #eceef1;box-shadow:0 8px 24px #00000029;background:#fff;overflow:hidden}.mat-mdc-menu-panel.ieeesa-view-roster__add-menu .mat-mdc-menu-content{padding:0}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;line-height:1.3;padding:12px 16px;min-height:0;height:auto}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item:hover:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-keyboard-focused:not([disabled]),.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item.cdk-program-focused:not([disabled]){background-color:#f4f9fc}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item+.ieeesa-view-roster__add-menu-item{border-top:1px solid #eceef1}.ieeesa-view-roster__add-menu-item.mat-mdc-menu-item .mdc-list-item__primary-text{display:flex;flex-direction:column;gap:2px;white-space:normal;overflow:visible;text-overflow:clip}.ieeesa-view-roster__add-menu-item-title{display:block;width:100%;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;line-height:1.35;color:#1f2937}.ieeesa-view-roster__add-menu-item-subtitle{display:block;width:100%;margin-top:2px;font-family:Calibri Regular,sans-serif;font-size:12px;font-weight:400;line-height:1.35;color:#6f7782}.ieeesa-view-roster__export-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.ieeesa-view-roster__export-btn-icon{width:16px;height:16px;flex-shrink:0}.ieeesa-view-roster__history-btn.mat-mdc-button.mat-mdc-button-base{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;white-space:nowrap}\n"] }]
|
|
7277
7825
|
}], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: GroupsService }, { type: i2.AlertsService }, { type: i0.ChangeDetectorRef }, { type: i2.GlobalErrorHandlerService }, { type: RosterExportService }]; }, propDecorators: { addMenuTrigger: [{
|
|
7278
7826
|
type: ViewChild,
|
|
7279
7827
|
args: ['addMenuTrigger']
|
|
@@ -7293,6 +7841,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
7293
7841
|
* @class GroupsComponent
|
|
7294
7842
|
*/
|
|
7295
7843
|
class GroupsComponent {
|
|
7844
|
+
/**
|
|
7845
|
+
* Tenant-level required profile fields (e.g. ['phone','address','employer'])
|
|
7846
|
+
* supplied by the host app from its cached tenant configuration. Passed to
|
|
7847
|
+
* GroupsService so the roster import appends them to its required columns and
|
|
7848
|
+
* sample file. Optional — defaults to none.
|
|
7849
|
+
*
|
|
7850
|
+
* Implemented as a setter so EVERY input update (including a late,
|
|
7851
|
+
* async-resolved value that arrives after ngOnInit) is propagated to the
|
|
7852
|
+
* singleton GroupsService — not just the initial binding.
|
|
7853
|
+
*/
|
|
7854
|
+
set requiredProfileFields(value) {
|
|
7855
|
+
this._requiredProfileFields = value ?? [];
|
|
7856
|
+
this.groupsService?.setRequiredProfileFields(this._requiredProfileFields);
|
|
7857
|
+
}
|
|
7858
|
+
get requiredProfileFields() {
|
|
7859
|
+
return this._requiredProfileFields;
|
|
7860
|
+
}
|
|
7296
7861
|
constructor(
|
|
7297
7862
|
// eslint-disable-next-line no-unused-vars
|
|
7298
7863
|
dialog,
|
|
@@ -7352,6 +7917,7 @@ class GroupsComponent {
|
|
|
7352
7917
|
groupsTitle: this.viewGroupTexts?.groupsTitle,
|
|
7353
7918
|
groupsDescription: this.viewGroupTexts?.groupsDescription,
|
|
7354
7919
|
};
|
|
7920
|
+
this._requiredProfileFields = [];
|
|
7355
7921
|
this.permissionType = PermissionType;
|
|
7356
7922
|
this.alignmentType = AlignType;
|
|
7357
7923
|
this.canReopenViewRosterModal = false;
|
|
@@ -7383,6 +7949,8 @@ class GroupsComponent {
|
|
|
7383
7949
|
this.userPermissionsService.filterUserGroupPermissions(this.userPermissions, this.groupPermissionsService?.getGlobalGroupPermissions());
|
|
7384
7950
|
this.groupsService.setUserGroupPermissions(this.userGroupPermissions);
|
|
7385
7951
|
this.groupsService?.setAppConfig(this.apiBaseURL, this.userPermissions);
|
|
7952
|
+
// requiredProfileFields is propagated to the service by its @Input setter
|
|
7953
|
+
// (covers both the initial binding and any later async-resolved update).
|
|
7386
7954
|
this.getGroupTypes();
|
|
7387
7955
|
this.groupsService?.openModalNotifier
|
|
7388
7956
|
?.pipe(takeUntil(this.destroy$))
|
|
@@ -7985,7 +8553,7 @@ class GroupsComponent {
|
|
|
7985
8553
|
this.destroy$.unsubscribe();
|
|
7986
8554
|
}
|
|
7987
8555
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsComponent, deps: [{ token: i1.MatDialog }, { token: GroupsService }, { token: i2.AlertsService }, { token: i2$1.BreakpointObserverService }, { token: i2.GlobalErrorHandlerService }, { token: UserPermissionsService }, { token: GroupPermissionsMapService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7988
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GroupsComponent, isStandalone: true, selector: "ieeesa-groups", inputs: { groupsPageInfo: "groupsPageInfo", applicationId: "applicationId", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions", userInfo: "userInfo" }, providers: [AlertsService], ngImport: i0, template: "<div class=\"ieeesa-groups px-4\">\r\n <div\r\n class=\"ieeesa-groups__info d-flex justify-content-between pb-3 align-items-center\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__info--white-bg'\r\n : 'ieeesa-groups__info--blue-bg'\r\n \"\r\n >\r\n <p\r\n class=\"mb-0\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-title-lg-24 p-0'\r\n : 'ieeesa-headline-lg-32 ieeesa-groups__info__heading'\r\n \"\r\n >\r\n {{ groupsPageInfo?.groupsTitle }}\r\n </p>\r\n <div\r\n class=\"d-flex d-sm-flex d-md-none d-lg-none d-xl-none ieeesa-groups__mobile-icons gap-2\"\r\n >\r\n <ieeesa-icon-button\r\n [iconButton]=\"createGroupIcon\"\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n (iconButtonClick)=\"openCreateGroupForm()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"filterGroupIcon\"\r\n (iconButtonClick)=\"showGroupFilter()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"searchGroupIcon\"\r\n (iconButtonClick)=\"onGroupSearch()\"\r\n >\r\n </ieeesa-icon-button>\r\n </div>\r\n </div>\r\n <div\r\n class=\"ieeesa-groups__actions\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__actions--white-bg'\r\n : 'ieeesa-groups__actions--blue-bg'\r\n \"\r\n >\r\n <div class=\"ieeesa-groups__actions--search row\">\r\n <div\r\n class=\"order-2 order-sm-1 col-12 col-md-7 col-lg-7 col-xl-7 d-flex flex-column justify-content-between\"\r\n >\r\n <p class=\"ieeesa-body-md-16\">\r\n {{ groupsPageInfo?.groupsDescription }}\r\n </p>\r\n <button\r\n [ngClass]=\"\r\n isMobileView ? 'p-0' : 'ieeesa-groups__actions__add-group-btn'\r\n \"\r\n mat-button\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n class=\"ieeesa-groups__create-subgroup mat-tertiary-button d-none d-sm-none d-md-block d-lg-block d-xl-block\"\r\n (click)=\"openCreateGroupForm()\"\r\n [attr.aria-label]=\"constants?.viewGroups?.ariaLabel?.addGroup\"\r\n >\r\n {{ constants?.viewGroups?.addGroup }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"\r\n ((isGroupSearchActive || isGroupFilterActive) && isMobileView) ||\r\n !isMobileView\r\n \"\r\n class=\"order-1 order-sm-2 col-12 col-md-5 col-lg-5 col-xl-5 d-flex flex-column\"\r\n [ngClass]=\"isMobileView ? 'ieeesa-search-mobile-view' : ''\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isGroupSearchActive || !isMobileView\"\r\n (searchValue)=\"onGroupSearchClick($event)\"\r\n [searchTerm]=\"trimmedSearchTerm\"\r\n [searchType]=\"searchType\"\r\n [placeholderLabel]=\"searchPlaceHolderText\"\r\n [minCharacterToSearch]=\"minCharacterToSearch\"\r\n [supportMessage]=\"supportMessage\"\r\n ></ieeesa-search>\r\n\r\n <ieeesa-select\r\n *ngIf=\"isGroupFilterActive || !isMobileView\"\r\n class=\"align-self-end pt-lg-4 pt-md-4 pt-xl-4\"\r\n [isSortNeeded]=\"false\"\r\n [dropdownOptions]=\"selectGroupOptions\"\r\n [isLabelAlignedLeft]=\"true\"\r\n [selectLabel]=\"constants?.viewGroups?.filterByLabel\"\r\n (optionSelected)=\"onGroupTypeFiltered($event)\"\r\n [placeholderText]=\"filterPlaceHolderText\"\r\n [selectedOptions]=\"selectedGroupType\"\r\n ></ieeesa-select>\r\n </div>\r\n </div>\r\n <ieeesa-tree\r\n *ngIf=\"parentGroupsInfo && parentGroupsInfo.length > 0\"\r\n [parentGroupsInfo]=\"parentGroupsInfo\"\r\n [childGroupsInfo]=\"childGroupsInfo\"\r\n [deletedGroupIdInfo]=\"deletedGroupId\"\r\n [isGroupSearchOrFilterActive]=\"isGroupSearchOrFilterActive\"\r\n [userGroupPermissions]=\"userGroupPermissions\"\r\n (toggleGroupClick)=\"getGroups($event)\"\r\n (createGroupClick)=\"openCreateGroupForm($event)\"\r\n (deleteGroupClick)=\"openDeleteConfirmationModal($event)\"\r\n (viewRosterClick)=\"viewRoster($event)\"\r\n (editGroupClick)=\"openEditGroupForm($event)\"\r\n (manageInterestFormClick)=\"openRosterInterests($event)\"\r\n ></ieeesa-tree>\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-groups{background-color:#f2f2f2}.ieeesa-groups__mobile-icons .ieeesa-icon-button__svg{height:1.5em!important;width:1.5em!important}.ieeesa-groups__mobile-icons .ieeesa-icon-button__3{display:flex;padding-top:0}.ieeesa-groups__info--white-bg{background-color:#fff;padding:16px 24px 0}.ieeesa-groups__info__heading{padding:12px 0}.ieeesa-groups__actions{background-color:#fff;box-shadow:0 2px #00b5e2 inset;padding:16px 24px 48px}.ieeesa-groups__actions--white-bg{background-color:#fff;box-shadow:none}.ieeesa-groups__actions__add-group-btn{max-width:8.125em}.ieeesa-groups__actions--search .ieeesa-search-mobile-view{margin-bottom:1em}.ieeesa-groups .ieeesa-select-field__label{width:max-content;padding-right:9px}.ieeesa-groups .ieeesa-select-field__label-left{display:flex;align-items:center}.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field{width:auto}.ieeesa-groups .ieeesa-select-field .ieeesa-form-support-text,.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field-subscript-wrapper{display:none}@media (min-width: 767px){.ieeesa-groups__actions--search{margin-bottom:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: SearchComponent, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchTerm", "supportMessage", "searchType", "minCharacterToSearch"], outputs: ["searchValue"] }, { kind: "component", type: SelectComponent, selector: "ieeesa-select", inputs: ["isSortNeeded", "dropdownOptions", "selectedOptions", "formControlName", "isMultiLevel", "isLabelAlignedLeft", "selectLabel", "isMultiSelect", "isDisabled", "isSearch", "placeholderText"], outputs: ["optionSelected", "optionSearched", "dropdownOpenedChange"] }, { kind: "component", type: TreeViewComponent, selector: "ieeesa-tree", inputs: ["parentGroupsInfo", "childGroupsInfo", "isGroupSearchOrFilterActive", "deletedGroupIdInfo", "userGroupPermissions"], outputs: ["toggleGroupClick", "createGroupClick", "editGroupClick", "deleteGroupClick", "viewRosterClick", "manageInterestFormClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
8556
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GroupsComponent, isStandalone: true, selector: "ieeesa-groups", inputs: { groupsPageInfo: "groupsPageInfo", applicationId: "applicationId", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions", userInfo: "userInfo", requiredProfileFields: "requiredProfileFields" }, providers: [AlertsService], ngImport: i0, template: "<div class=\"ieeesa-groups px-4\">\r\n <div\r\n class=\"ieeesa-groups__info d-flex justify-content-between pb-3 align-items-center\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__info--white-bg'\r\n : 'ieeesa-groups__info--blue-bg'\r\n \"\r\n >\r\n <p\r\n class=\"mb-0\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-title-lg-24 p-0'\r\n : 'ieeesa-headline-lg-32 ieeesa-groups__info__heading'\r\n \"\r\n >\r\n {{ groupsPageInfo?.groupsTitle }}\r\n </p>\r\n <div\r\n class=\"d-flex d-sm-flex d-md-none d-lg-none d-xl-none ieeesa-groups__mobile-icons gap-2\"\r\n >\r\n <ieeesa-icon-button\r\n [iconButton]=\"createGroupIcon\"\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n (iconButtonClick)=\"openCreateGroupForm()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"filterGroupIcon\"\r\n (iconButtonClick)=\"showGroupFilter()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"searchGroupIcon\"\r\n (iconButtonClick)=\"onGroupSearch()\"\r\n >\r\n </ieeesa-icon-button>\r\n </div>\r\n </div>\r\n <div\r\n class=\"ieeesa-groups__actions\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__actions--white-bg'\r\n : 'ieeesa-groups__actions--blue-bg'\r\n \"\r\n >\r\n <div class=\"ieeesa-groups__actions--search row\">\r\n <div\r\n class=\"order-2 order-sm-1 col-12 col-md-7 col-lg-7 col-xl-7 d-flex flex-column justify-content-between\"\r\n >\r\n <p class=\"ieeesa-body-md-16\">\r\n {{ groupsPageInfo?.groupsDescription }}\r\n </p>\r\n <button\r\n [ngClass]=\"\r\n isMobileView ? 'p-0' : 'ieeesa-groups__actions__add-group-btn'\r\n \"\r\n mat-button\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n class=\"ieeesa-groups__create-subgroup mat-tertiary-button d-none d-sm-none d-md-block d-lg-block d-xl-block\"\r\n (click)=\"openCreateGroupForm()\"\r\n [attr.aria-label]=\"constants?.viewGroups?.ariaLabel?.addGroup\"\r\n >\r\n {{ constants?.viewGroups?.addGroup }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"\r\n ((isGroupSearchActive || isGroupFilterActive) && isMobileView) ||\r\n !isMobileView\r\n \"\r\n class=\"order-1 order-sm-2 col-12 col-md-5 col-lg-5 col-xl-5 d-flex flex-column\"\r\n [ngClass]=\"isMobileView ? 'ieeesa-search-mobile-view' : ''\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isGroupSearchActive || !isMobileView\"\r\n (searchValue)=\"onGroupSearchClick($event)\"\r\n [searchTerm]=\"trimmedSearchTerm\"\r\n [searchType]=\"searchType\"\r\n [placeholderLabel]=\"searchPlaceHolderText\"\r\n [minCharacterToSearch]=\"minCharacterToSearch\"\r\n [supportMessage]=\"supportMessage\"\r\n ></ieeesa-search>\r\n\r\n <ieeesa-select\r\n *ngIf=\"isGroupFilterActive || !isMobileView\"\r\n class=\"align-self-end pt-lg-4 pt-md-4 pt-xl-4\"\r\n [isSortNeeded]=\"false\"\r\n [dropdownOptions]=\"selectGroupOptions\"\r\n [isLabelAlignedLeft]=\"true\"\r\n [selectLabel]=\"constants?.viewGroups?.filterByLabel\"\r\n (optionSelected)=\"onGroupTypeFiltered($event)\"\r\n [placeholderText]=\"filterPlaceHolderText\"\r\n [selectedOptions]=\"selectedGroupType\"\r\n ></ieeesa-select>\r\n </div>\r\n </div>\r\n <ieeesa-tree\r\n *ngIf=\"parentGroupsInfo && parentGroupsInfo.length > 0\"\r\n [parentGroupsInfo]=\"parentGroupsInfo\"\r\n [childGroupsInfo]=\"childGroupsInfo\"\r\n [deletedGroupIdInfo]=\"deletedGroupId\"\r\n [isGroupSearchOrFilterActive]=\"isGroupSearchOrFilterActive\"\r\n [userGroupPermissions]=\"userGroupPermissions\"\r\n (toggleGroupClick)=\"getGroups($event)\"\r\n (createGroupClick)=\"openCreateGroupForm($event)\"\r\n (deleteGroupClick)=\"openDeleteConfirmationModal($event)\"\r\n (viewRosterClick)=\"viewRoster($event)\"\r\n (editGroupClick)=\"openEditGroupForm($event)\"\r\n (manageInterestFormClick)=\"openRosterInterests($event)\"\r\n ></ieeesa-tree>\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-groups{background-color:#f2f2f2}.ieeesa-groups__mobile-icons .ieeesa-icon-button__svg{height:1.5em!important;width:1.5em!important}.ieeesa-groups__mobile-icons .ieeesa-icon-button__3{display:flex;padding-top:0}.ieeesa-groups__info--white-bg{background-color:#fff;padding:16px 24px 0}.ieeesa-groups__info__heading{padding:12px 0}.ieeesa-groups__actions{background-color:#fff;box-shadow:0 2px #00b5e2 inset;padding:16px 24px 48px}.ieeesa-groups__actions--white-bg{background-color:#fff;box-shadow:none}.ieeesa-groups__actions__add-group-btn{max-width:8.125em}.ieeesa-groups__actions--search .ieeesa-search-mobile-view{margin-bottom:1em}.ieeesa-groups .ieeesa-select-field__label{width:max-content;padding-right:9px}.ieeesa-groups .ieeesa-select-field__label-left{display:flex;align-items:center}.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field{width:auto}.ieeesa-groups .ieeesa-select-field .ieeesa-form-support-text,.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field-subscript-wrapper{display:none}@media (min-width: 767px){.ieeesa-groups__actions--search{margin-bottom:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: SearchComponent, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchTerm", "supportMessage", "searchType", "minCharacterToSearch"], outputs: ["searchValue"] }, { kind: "component", type: SelectComponent, selector: "ieeesa-select", inputs: ["isSortNeeded", "dropdownOptions", "selectedOptions", "formControlName", "isMultiLevel", "isLabelAlignedLeft", "selectLabel", "isMultiSelect", "isDisabled", "isSearch", "placeholderText"], outputs: ["optionSelected", "optionSearched", "dropdownOpenedChange"] }, { kind: "component", type: TreeViewComponent, selector: "ieeesa-tree", inputs: ["parentGroupsInfo", "childGroupsInfo", "isGroupSearchOrFilterActive", "deletedGroupIdInfo", "userGroupPermissions"], outputs: ["toggleGroupClick", "createGroupClick", "editGroupClick", "deleteGroupClick", "viewRosterClick", "manageInterestFormClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
7989
8557
|
}
|
|
7990
8558
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsComponent, decorators: [{
|
|
7991
8559
|
type: Component,
|
|
@@ -8009,6 +8577,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
8009
8577
|
type: Input
|
|
8010
8578
|
}], userInfo: [{
|
|
8011
8579
|
type: Input
|
|
8580
|
+
}], requiredProfileFields: [{
|
|
8581
|
+
type: Input
|
|
8012
8582
|
}] } });
|
|
8013
8583
|
|
|
8014
8584
|
/* eslint-disable no-unused-vars */
|