@ieeesa-npm/groups 0.15.7 → 0.15.8
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 +62 -0
- package/esm2022/lib/assets/roster-import-mocks.mjs +98 -0
- package/esm2022/lib/components/add-user-roster/add-user-roster.component.mjs +2 -2
- package/esm2022/lib/components/create-group/create-group.component.mjs +2 -2
- package/esm2022/lib/components/edit-user-roles/edit-user-roles.component.mjs +1 -1
- package/esm2022/lib/components/roster-import/roster-import.component.mjs +376 -0
- package/esm2022/lib/components/view-roster/view-roster.component.mjs +87 -7
- package/esm2022/lib/groups.component.mjs +58 -3
- package/esm2022/lib/models/group-function-type.model.mjs +2 -1
- package/esm2022/lib/models/roster-import.model.mjs +26 -0
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/ieeesa-npm-groups.mjs +707 -13
- package/fesm2022/ieeesa-npm-groups.mjs.map +1 -1
- package/lib/assets/roster-import-mocks.d.ts +27 -0
- package/lib/components/roster-import/roster-import.component.d.ts +179 -0
- package/lib/components/view-roster/view-roster.component.d.ts +38 -3
- package/lib/groups.component.d.ts +8 -0
- package/lib/models/group-function-type.model.d.ts +2 -1
- package/lib/models/roster-import.model.d.ts +55 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ViewEncapsulation, Inject, Injectable, EventEmitter, Input, Output, ViewChild, ChangeDetectionStrategy, NgModule } from '@angular/core';
|
|
2
|
+
import { Component, ViewEncapsulation, Inject, Injectable, EventEmitter, Input, Output, ViewChild, ElementRef, ChangeDetectionStrategy, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i3$1 from '@angular/forms';
|
|
@@ -12,7 +12,7 @@ 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';
|
|
14
14
|
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
15
|
-
import { BehaviorSubject, map, catchError, Subject, takeUntil, forkJoin, merge, EMPTY } from 'rxjs';
|
|
15
|
+
import { BehaviorSubject, map, catchError, Subject, takeUntil, forkJoin, merge, interval, takeWhile, timer, EMPTY } from 'rxjs';
|
|
16
16
|
import { AlertType, FormStatus, ModalType } from '@ieeesa-npm/models';
|
|
17
17
|
import * as i4 from '@angular/material/button';
|
|
18
18
|
import { MatButtonModule } from '@angular/material/button';
|
|
@@ -23,6 +23,10 @@ import * as i4$1 from '@angular/material/tree';
|
|
|
23
23
|
import { MatTreeModule } from '@angular/material/tree';
|
|
24
24
|
import * as i5 from '@angular/material/tooltip';
|
|
25
25
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
26
|
+
import * as i3$2 from '@angular/material/progress-bar';
|
|
27
|
+
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
28
|
+
import * as i7 from '@angular/material/menu';
|
|
29
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
26
30
|
import { saveAs } from 'file-saver';
|
|
27
31
|
|
|
28
32
|
var addUserRoster = {
|
|
@@ -313,6 +317,72 @@ var rosterExport = {
|
|
|
313
317
|
exportFailed: "Failed to export roster. Please try again."
|
|
314
318
|
}
|
|
315
319
|
};
|
|
320
|
+
var addRosterMenu = {
|
|
321
|
+
addManually: {
|
|
322
|
+
title: "Add Manually",
|
|
323
|
+
subtitle: "Search by email, fill details"
|
|
324
|
+
},
|
|
325
|
+
bulkImport: {
|
|
326
|
+
title: "Bulk Import",
|
|
327
|
+
subtitle: "Upload CSV or XLS file"
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
var rosterImport = {
|
|
331
|
+
heading: "Import Roster",
|
|
332
|
+
subHeading: "Bulk Import Participants",
|
|
333
|
+
backToRosters: "Back to Rosters",
|
|
334
|
+
requiredColumnsTitle: "Required columns",
|
|
335
|
+
requiredColumns: [
|
|
336
|
+
"Name",
|
|
337
|
+
"Email",
|
|
338
|
+
"Role",
|
|
339
|
+
"Member Type",
|
|
340
|
+
"Employer",
|
|
341
|
+
"Affiliation",
|
|
342
|
+
"Classification"
|
|
343
|
+
],
|
|
344
|
+
uploadLabel: "Upload your file",
|
|
345
|
+
downloadSampleLabel: "Download Sample File",
|
|
346
|
+
sampleFileName: "Roster_Sample.csv",
|
|
347
|
+
dropzoneText: "Drag & drop a file here, or click to browse",
|
|
348
|
+
dropzoneHint: "Accepted formats: .csv, .xls, .xlsx",
|
|
349
|
+
processingLabel: "Processing file records....",
|
|
350
|
+
processedLabel: "Processing file records....",
|
|
351
|
+
buttons: {
|
|
352
|
+
cancel: "Cancel",
|
|
353
|
+
"import": "Import Roster",
|
|
354
|
+
downloadErrorLog: "Download Error log"
|
|
355
|
+
},
|
|
356
|
+
result: {
|
|
357
|
+
successCardLabel: "Rosters added successfully",
|
|
358
|
+
skippedCardLabel: "Skipped Rows",
|
|
359
|
+
allRowsSkippedHeader: "All Rows are skipped",
|
|
360
|
+
errorsHeader: "Row errors — these rows will be skipped"
|
|
361
|
+
},
|
|
362
|
+
validation: {
|
|
363
|
+
unsupportedType: "Incorrect file type. Please upload a valid .csv, .xls, or .xlsx file.",
|
|
364
|
+
emptyFile: "The selected file is empty. Please upload a file with roster records.",
|
|
365
|
+
fileTooLarge: "File size exceeds the maximum allowed size of 5 MB.",
|
|
366
|
+
singleFileOnly: "Please upload a single file at a time.",
|
|
367
|
+
noDataRecords: "No roster data found. The selected file contains headers but no roster records.",
|
|
368
|
+
missingHeaders: "Incorrect file format. Mandatory column headers are missing",
|
|
369
|
+
uploadFailed: "An error occurred while importing the roster. Please try again."
|
|
370
|
+
},
|
|
371
|
+
errorLog: {
|
|
372
|
+
headers: [
|
|
373
|
+
"Row",
|
|
374
|
+
"Field",
|
|
375
|
+
"Error"
|
|
376
|
+
],
|
|
377
|
+
fileName: "Roster_Import_Error_Log.csv"
|
|
378
|
+
},
|
|
379
|
+
ariaLabel: {
|
|
380
|
+
downloadSample: "Download Sample File",
|
|
381
|
+
dropzone: "Drag and drop file upload area",
|
|
382
|
+
remove: "Remove selected file",
|
|
383
|
+
downloadErrorLog: "Download Error log"
|
|
384
|
+
}
|
|
385
|
+
};
|
|
316
386
|
var editUserRoles = {
|
|
317
387
|
heading: "Edit System User",
|
|
318
388
|
message: {
|
|
@@ -398,6 +468,8 @@ var constants = {
|
|
|
398
468
|
deleteUsersGroup: deleteUsersGroup,
|
|
399
469
|
viewRoster: viewRoster,
|
|
400
470
|
rosterExport: rosterExport,
|
|
471
|
+
addRosterMenu: addRosterMenu,
|
|
472
|
+
rosterImport: rosterImport,
|
|
401
473
|
editUserRoles: editUserRoles,
|
|
402
474
|
errors: errors,
|
|
403
475
|
ariaLabel: ariaLabel
|
|
@@ -405,6 +477,7 @@ var constants = {
|
|
|
405
477
|
|
|
406
478
|
var screenTexts = /*#__PURE__*/Object.freeze({
|
|
407
479
|
__proto__: null,
|
|
480
|
+
addRosterMenu: addRosterMenu,
|
|
408
481
|
addUserRoster: addUserRoster,
|
|
409
482
|
ariaLabel: ariaLabel,
|
|
410
483
|
createGroup: createGroup,
|
|
@@ -415,6 +488,7 @@ var screenTexts = /*#__PURE__*/Object.freeze({
|
|
|
415
488
|
editUserRoles: editUserRoles,
|
|
416
489
|
errors: errors,
|
|
417
490
|
rosterExport: rosterExport,
|
|
491
|
+
rosterImport: rosterImport,
|
|
418
492
|
viewGroups: viewGroups,
|
|
419
493
|
viewRoster: viewRoster
|
|
420
494
|
});
|
|
@@ -481,6 +555,7 @@ var GroupFunctionType;
|
|
|
481
555
|
GroupFunctionType["REASSIGN_PARENT_GROUP"] = "REASSIGN_PARENT_GROUP";
|
|
482
556
|
GroupFunctionType["EDIT_ROSTER_USER_ROLE"] = "EDIT_ROSTER_USER_ROLE";
|
|
483
557
|
GroupFunctionType["ADD_USER_TO_ROSTER"] = "ADD_USER_TO_ROSTER";
|
|
558
|
+
GroupFunctionType["IMPORT_ROSTER"] = "IMPORT_ROSTER";
|
|
484
559
|
})(GroupFunctionType || (GroupFunctionType = {}));
|
|
485
560
|
|
|
486
561
|
/**
|
|
@@ -2308,7 +2383,7 @@ class CreateGroupComponent {
|
|
|
2308
2383
|
this.destroy$.unsubscribe();
|
|
2309
2384
|
}
|
|
2310
2385
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateGroupComponent, deps: [{ token: GroupsService }, { token: i2.GlobalErrorHandlerService }, { token: i2.AlertsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2311
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateGroupComponent, isStandalone: true, selector: "ieeesa-create-group", 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=\"formGroup\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"isLegendVisible\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"formGroup\"\r\n [isLeftButtonNeeded]=\"isLeftButtonNeeded\"\r\n (formSubmit)=\"onFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"createGroupCancelled()\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formSlideToggleChange)=\"onFormSlideToggleChange($event)\"\r\n (formChange)=\"onCreateGroupFormChange($event)\"\r\n>\r\n <!-- Reciprocal Credit section \u2014 Working Groups in EDIT mode only.\r\n Hidden during create (no home group id yet; create flow pending client team).\r\n Projected via [component] so it renders ABOVE the form's Save/Cancel buttons. -->\r\n <ieeesa-reciprocal-credit-section\r\n component\r\n *ngIf=\"isReciprocalSectionVisible\"\r\n [homeGroupId]=\"reciprocalHomeGroupId\"\r\n [parentCommitteeName]=\"reciprocalParentCommitteeName\"\r\n (enabledChange)=\"onReciprocalEnabledChange($event)\"\r\n (selectionChange)=\"onReciprocalSelectionChange($event)\"\r\n (removedConfigIdsChange)=\"onReciprocalRemovedConfigIdsChange($event)\"\r\n ></ieeesa-reciprocal-credit-section>\r\n</ieeesa-dynamic-form>", 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-create-group .mat-mdc-dialog-container,.ieeesa-modal-dialog.ieeesa-edit-group .mat-mdc-dialog-container{box-shadow:none}.ieeesa-modal-dialog.ieeesa-create-group .mat-mdc-dialog-surface,.ieeesa-modal-dialog.ieeesa-edit-group .mat-mdc-dialog-surface{border-radius:0;margin:1em 0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:.5em}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__actions,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;padding:3em 1em .75em 0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field{margin-bottom:1em;padding:0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field:not(.group-scope) .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field:not(.group-scope) .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field.group-scope .ieeesa-text-area-field__resize,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field.group-scope .ieeesa-text-area-field__resize{resize:auto}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field{display:flex;width:43%}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .mat-mdc-form-field-subscript-wrapper,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .mat-mdc-dialog-content,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .mat-mdc-dialog-content{padding:1.5em 1em .75em!important;margin:0 1em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .short-name .ieeesa-input-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", "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: ReciprocalCreditSectionComponent, selector: "ieeesa-reciprocal-credit-section", inputs: ["homeGroupId", "eventId", "parentCommitteeName"], outputs: ["enabledChange", "selectionChange", "removedConfigIdsChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
2386
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateGroupComponent, isStandalone: true, selector: "ieeesa-create-group", 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=\"formGroup\"\r\n [leftButtonLabel]=\"leftButtonLabel\"\r\n [rightButtonLabel]=\"rightButtonLabel\"\r\n [isLegendVisible]=\"isLegendVisible\"\r\n [colWidth]=\"colWidth\"\r\n [actionButtonAlign]=\"actionButtonAlign\"\r\n [formGroups]=\"formGroup\"\r\n [isLeftButtonNeeded]=\"isLeftButtonNeeded\"\r\n (formSubmit)=\"onFormSubmit($event)\"\r\n (formLeftButtonClicked)=\"createGroupCancelled()\"\r\n (formGroupsReference)=\"getFormGroupReference($event)\"\r\n (formSlideToggleChange)=\"onFormSlideToggleChange($event)\"\r\n (formChange)=\"onCreateGroupFormChange($event)\"\r\n>\r\n <!-- Reciprocal Credit section \u2014 Working Groups in EDIT mode only.\r\n Hidden during create (no home group id yet; create flow pending client team).\r\n Projected via [component] so it renders ABOVE the form's Save/Cancel buttons. -->\r\n <ieeesa-reciprocal-credit-section\r\n component\r\n *ngIf=\"isReciprocalSectionVisible\"\r\n [homeGroupId]=\"reciprocalHomeGroupId\"\r\n [parentCommitteeName]=\"reciprocalParentCommitteeName\"\r\n (enabledChange)=\"onReciprocalEnabledChange($event)\"\r\n (selectionChange)=\"onReciprocalSelectionChange($event)\"\r\n (removedConfigIdsChange)=\"onReciprocalRemovedConfigIdsChange($event)\"\r\n ></ieeesa-reciprocal-credit-section>\r\n</ieeesa-dynamic-form>", 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-create-group .mat-mdc-dialog-container,.ieeesa-modal-dialog.ieeesa-edit-group .mat-mdc-dialog-container{box-shadow:none}.ieeesa-modal-dialog.ieeesa-create-group .mat-mdc-dialog-surface,.ieeesa-modal-dialog.ieeesa-edit-group .mat-mdc-dialog-surface{border-radius:0;margin:1em 0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal{box-shadow:0 3px #11b7e5 inset,0 4px 24px #00000080;padding-bottom:.5em}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__actions,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__actions{flex-direction:row-reverse;padding:3em 1em .75em 0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field{margin-bottom:1em;padding:0}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field:not(.group-scope) .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field:not(.group-scope) .mat-mdc-form-field{display:flex}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .ieeesa-dynamic-form__form-field.group-scope .ieeesa-text-area-field__resize,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .ieeesa-dynamic-form__form-field.group-scope .ieeesa-text-area-field__resize{resize:auto}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field{width:43%}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field{display:flex;width:43%}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .mat-mdc-form-field-subscript-wrapper,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .mat-mdc-dialog-content,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .mat-mdc-dialog-content{padding:1.5em 1em .75em!important;margin:0 1em}@media (max-width: 767px){.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .new-parent-group .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .group-type .ieeesa-select-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-create-group .ieeesa-modal .short-name .ieeesa-input-field .mat-mdc-form-field,.ieeesa-modal-dialog.ieeesa-edit-group .ieeesa-modal .short-name .ieeesa-input-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: "ngmodule", type: MatDialogModule }, { kind: "component", type: ReciprocalCreditSectionComponent, selector: "ieeesa-reciprocal-credit-section", inputs: ["homeGroupId", "eventId", "parentCommitteeName"], outputs: ["enabledChange", "selectionChange", "removedConfigIdsChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
2312
2387
|
}
|
|
2313
2388
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateGroupComponent, decorators: [{
|
|
2314
2389
|
type: Component,
|
|
@@ -3531,7 +3606,7 @@ class EditUserRolesComponent {
|
|
|
3531
3606
|
this.destroy$.unsubscribe();
|
|
3532
3607
|
}
|
|
3533
3608
|
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 }); }
|
|
3534
|
-
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 (formMultiSelectAutoCompleteSearch)=\"getOrganizations($event)\"\r\n (multiSelectAutoCompleteOptionsSelected)=\"getSelectedOrganizations($event)\"\r\n (formMultiSelectAutoCompleteClearSearchValue)=\"disableSubmitButton()\"\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: "component", type: DynamicFormComponent, selector: "ieeesa-dynamic-form", inputs: ["formGroups", "submitResponse", "searchResponse", "fileUploadStatus", "colWidth", "isLegendVisible", "rightButtonLabel", "leftButtonLabel", "isSubmitButtonDisabled", "isLeftButtonDisabled", "isLeftButtonNeeded", "isRightButtonNeeded", "actionButtonAlign", "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"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
3609
|
+
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 (formMultiSelectAutoCompleteSearch)=\"getOrganizations($event)\"\r\n (multiSelectAutoCompleteOptionsSelected)=\"getSelectedOrganizations($event)\"\r\n (formMultiSelectAutoCompleteClearSearchValue)=\"disableSubmitButton()\"\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: "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"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
3535
3610
|
}
|
|
3536
3611
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditUserRolesComponent, decorators: [{
|
|
3537
3612
|
type: Component,
|
|
@@ -3545,6 +3620,493 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3545
3620
|
type: Output
|
|
3546
3621
|
}] } });
|
|
3547
3622
|
|
|
3623
|
+
/* eslint-disable no-unused-vars */
|
|
3624
|
+
/**
|
|
3625
|
+
* Terminal status of a roster bulk-upload job.
|
|
3626
|
+
*/
|
|
3627
|
+
var RosterUploadStatus;
|
|
3628
|
+
(function (RosterUploadStatus) {
|
|
3629
|
+
RosterUploadStatus["PROCESSING"] = "PROCESSING";
|
|
3630
|
+
RosterUploadStatus["COMPLETED"] = "COMPLETED";
|
|
3631
|
+
RosterUploadStatus["FAILED"] = "FAILED";
|
|
3632
|
+
})(RosterUploadStatus || (RosterUploadStatus = {}));
|
|
3633
|
+
/**
|
|
3634
|
+
* The kind of mock scenario to simulate, so the UI can be exercised against
|
|
3635
|
+
* each Figma state without a backend.
|
|
3636
|
+
*/
|
|
3637
|
+
var RosterImportMockScenario;
|
|
3638
|
+
(function (RosterImportMockScenario) {
|
|
3639
|
+
/** All rows imported successfully (Figma: 30 added / 0 skipped). */
|
|
3640
|
+
RosterImportMockScenario["ALL_SUCCESS"] = "ALL_SUCCESS";
|
|
3641
|
+
/** Some rows imported, some skipped with errors (partial). */
|
|
3642
|
+
RosterImportMockScenario["PARTIAL"] = "PARTIAL";
|
|
3643
|
+
/** Every row skipped with errors (Figma: 0 added / 30 skipped). */
|
|
3644
|
+
RosterImportMockScenario["ALL_SKIPPED"] = "ALL_SKIPPED";
|
|
3645
|
+
/** File contained headers but zero data rows (Figma: "No roster data found"). */
|
|
3646
|
+
RosterImportMockScenario["EMPTY"] = "EMPTY";
|
|
3647
|
+
})(RosterImportMockScenario || (RosterImportMockScenario = {}));
|
|
3648
|
+
|
|
3649
|
+
/**
|
|
3650
|
+
* Mock responses for the roster import flow, used to build and exercise the UI
|
|
3651
|
+
* before the real backend API is available. Each scenario maps to one of the
|
|
3652
|
+
* Figma result screens.
|
|
3653
|
+
*
|
|
3654
|
+
* Once the API is wired up, `RosterImportComponent` will call the real service
|
|
3655
|
+
* method instead of `RosterImportMocks.getMockResponse(...)`.
|
|
3656
|
+
*/
|
|
3657
|
+
class RosterImportMocks {
|
|
3658
|
+
/** Row errors mirroring the Figma "All Rows are skipped" screen. */
|
|
3659
|
+
static { this.mockRowErrors = [
|
|
3660
|
+
{
|
|
3661
|
+
rowNumber: 2,
|
|
3662
|
+
field: 'Name',
|
|
3663
|
+
errorMessage: '"Name" record is missing values',
|
|
3664
|
+
},
|
|
3665
|
+
{
|
|
3666
|
+
rowNumber: 3,
|
|
3667
|
+
field: 'Email',
|
|
3668
|
+
errorMessage: '"Email" is not a valid email address',
|
|
3669
|
+
},
|
|
3670
|
+
{
|
|
3671
|
+
rowNumber: 4,
|
|
3672
|
+
field: 'Role',
|
|
3673
|
+
value: 'Supervisor',
|
|
3674
|
+
errorMessage: 'Role "Supervisor" is not an allowed role',
|
|
3675
|
+
},
|
|
3676
|
+
{
|
|
3677
|
+
rowNumber: 5,
|
|
3678
|
+
field: 'Member Type',
|
|
3679
|
+
value: 'Gold Member',
|
|
3680
|
+
errorMessage: 'Member Type "Gold Member" is not an allowed value',
|
|
3681
|
+
},
|
|
3682
|
+
{
|
|
3683
|
+
rowNumber: 6,
|
|
3684
|
+
field: 'Member Type',
|
|
3685
|
+
value: 'Gold Member',
|
|
3686
|
+
errorMessage: 'Member Type "Gold Member" is not an allowed value',
|
|
3687
|
+
},
|
|
3688
|
+
]; }
|
|
3689
|
+
/** All 30 rows added successfully (Figma: 30 / 0). */
|
|
3690
|
+
static { this.allSuccess = {
|
|
3691
|
+
uploadJobId: 'MOCK_JOB_SUCCESS',
|
|
3692
|
+
status: RosterUploadStatus.COMPLETED,
|
|
3693
|
+
totalRecords: 30,
|
|
3694
|
+
successCount: 30,
|
|
3695
|
+
failureCount: 0,
|
|
3696
|
+
rowErrors: [],
|
|
3697
|
+
}; }
|
|
3698
|
+
/** Partial import: some added, some skipped. */
|
|
3699
|
+
static { this.partial = {
|
|
3700
|
+
uploadJobId: 'MOCK_JOB_PARTIAL',
|
|
3701
|
+
status: RosterUploadStatus.COMPLETED,
|
|
3702
|
+
totalRecords: 30,
|
|
3703
|
+
successCount: 25,
|
|
3704
|
+
failureCount: 5,
|
|
3705
|
+
rowErrors: RosterImportMocks.mockRowErrors,
|
|
3706
|
+
}; }
|
|
3707
|
+
/** Every row skipped (Figma: 0 / 30, "All Rows are skipped"). */
|
|
3708
|
+
static { this.allSkipped = {
|
|
3709
|
+
uploadJobId: 'MOCK_JOB_SKIPPED',
|
|
3710
|
+
status: RosterUploadStatus.COMPLETED,
|
|
3711
|
+
totalRecords: 30,
|
|
3712
|
+
successCount: 0,
|
|
3713
|
+
failureCount: 30,
|
|
3714
|
+
rowErrors: RosterImportMocks.mockRowErrors,
|
|
3715
|
+
}; }
|
|
3716
|
+
/** Headers only, zero data rows (Figma: "No roster data found"). */
|
|
3717
|
+
static { this.empty = {
|
|
3718
|
+
uploadJobId: 'MOCK_JOB_EMPTY',
|
|
3719
|
+
status: RosterUploadStatus.COMPLETED,
|
|
3720
|
+
totalRecords: 0,
|
|
3721
|
+
successCount: 0,
|
|
3722
|
+
failureCount: 0,
|
|
3723
|
+
rowErrors: [],
|
|
3724
|
+
}; }
|
|
3725
|
+
/**
|
|
3726
|
+
* Returns the mock upload response for a given scenario.
|
|
3727
|
+
* @param {RosterImportMockScenario} scenario - The scenario to simulate.
|
|
3728
|
+
* @return {RosterUploadResponse}
|
|
3729
|
+
*/
|
|
3730
|
+
static getMockResponse(scenario) {
|
|
3731
|
+
switch (scenario) {
|
|
3732
|
+
case RosterImportMockScenario.ALL_SUCCESS:
|
|
3733
|
+
return RosterImportMocks.allSuccess;
|
|
3734
|
+
case RosterImportMockScenario.PARTIAL:
|
|
3735
|
+
return RosterImportMocks.partial;
|
|
3736
|
+
case RosterImportMockScenario.ALL_SKIPPED:
|
|
3737
|
+
return RosterImportMocks.allSkipped;
|
|
3738
|
+
case RosterImportMockScenario.EMPTY:
|
|
3739
|
+
return RosterImportMocks.empty;
|
|
3740
|
+
default:
|
|
3741
|
+
return RosterImportMocks.allSuccess;
|
|
3742
|
+
}
|
|
3743
|
+
}
|
|
3744
|
+
}
|
|
3745
|
+
|
|
3746
|
+
/** Simulated processing duration (ms) for the mock flow. */
|
|
3747
|
+
const MOCK_PROCESSING_MS = 1800;
|
|
3748
|
+
/**
|
|
3749
|
+
* Roster Import dialog (MOCK data phase).
|
|
3750
|
+
*
|
|
3751
|
+
* Lets an admin upload a CSV/XLS/XLSX roster file, shows a processing progress
|
|
3752
|
+
* bar, then a result summary (added / skipped) with per-row errors and an
|
|
3753
|
+
* error-log download. Mirrors the events-and-meetings bulk-import-participants
|
|
3754
|
+
* flow. The real backend is not wired yet — {@link onImport} resolves a mock
|
|
3755
|
+
* response after a short delay so every Figma state can be exercised.
|
|
3756
|
+
*
|
|
3757
|
+
* @export
|
|
3758
|
+
* @class RosterImportComponent
|
|
3759
|
+
*/
|
|
3760
|
+
class RosterImportComponent {
|
|
3761
|
+
constructor() {
|
|
3762
|
+
/** Emitted after an import that added at least one row (parent refreshes). */
|
|
3763
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3764
|
+
this.submitFormResponse = new EventEmitter();
|
|
3765
|
+
/** Emitted when the user cancels/closes without a successful add. */
|
|
3766
|
+
this.formCancel = new EventEmitter();
|
|
3767
|
+
this.destroy$ = new Subject();
|
|
3768
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3769
|
+
this.constants = screenTexts;
|
|
3770
|
+
this.screenTexts = this.constants?.rosterImport;
|
|
3771
|
+
/** Current state of the import flow. */
|
|
3772
|
+
this.importState = 'upload';
|
|
3773
|
+
/** The selected file. */
|
|
3774
|
+
this.selectedFile = null;
|
|
3775
|
+
/** File drag-over state. */
|
|
3776
|
+
this.isDragOver = false;
|
|
3777
|
+
/** Processing progress percentage (0–100) shown next to the progress bar. */
|
|
3778
|
+
this.progressValue = 0;
|
|
3779
|
+
/** Terminal upload result (mock). */
|
|
3780
|
+
this.uploadResult = null;
|
|
3781
|
+
/** Row-level errors for the completed job. */
|
|
3782
|
+
this.jobErrors = [];
|
|
3783
|
+
/** Inline validation / API error message. */
|
|
3784
|
+
this.errorMessage = null;
|
|
3785
|
+
/**
|
|
3786
|
+
* Info banner shown when the file has headers but no data rows
|
|
3787
|
+
* (Figma: "No roster data found...").
|
|
3788
|
+
*/
|
|
3789
|
+
this.noDataMessage = null;
|
|
3790
|
+
/** Maximum file size in bytes (5 MB). */
|
|
3791
|
+
this.MAX_FILE_SIZE = 5242880;
|
|
3792
|
+
/** Accepted file extensions. */
|
|
3793
|
+
this.ACCEPTED_EXTENSIONS = ['.csv', '.xls', '.xlsx'];
|
|
3794
|
+
/**
|
|
3795
|
+
* MOCK ONLY: which scenario the next import simulates. Cycles through the
|
|
3796
|
+
* scenarios so QA can see every result state by importing repeatedly. Remove
|
|
3797
|
+
* when the real API is wired in.
|
|
3798
|
+
*/
|
|
3799
|
+
this.mockScenarios = [
|
|
3800
|
+
RosterImportMockScenario.ALL_SUCCESS,
|
|
3801
|
+
RosterImportMockScenario.PARTIAL,
|
|
3802
|
+
RosterImportMockScenario.ALL_SKIPPED,
|
|
3803
|
+
RosterImportMockScenario.EMPTY,
|
|
3804
|
+
];
|
|
3805
|
+
this.mockScenarioIndex = 0;
|
|
3806
|
+
}
|
|
3807
|
+
/** Required column headers for display. */
|
|
3808
|
+
get requiredColumns() {
|
|
3809
|
+
return this.screenTexts?.requiredColumns ?? [];
|
|
3810
|
+
}
|
|
3811
|
+
/** Comma-separated accepted file types for the input element. */
|
|
3812
|
+
get acceptedFileTypes() {
|
|
3813
|
+
return this.ACCEPTED_EXTENSIONS.join(',');
|
|
3814
|
+
}
|
|
3815
|
+
/**
|
|
3816
|
+
* Cleans up subscriptions when the component is destroyed.
|
|
3817
|
+
* @memberof RosterImportComponent
|
|
3818
|
+
*/
|
|
3819
|
+
ngOnDestroy() {
|
|
3820
|
+
this.destroy$.next(true);
|
|
3821
|
+
this.destroy$.complete();
|
|
3822
|
+
}
|
|
3823
|
+
/**
|
|
3824
|
+
* Handles a file selected via the browse dialog.
|
|
3825
|
+
* @param {Event} event - The change event from the hidden file input.
|
|
3826
|
+
* @memberof RosterImportComponent
|
|
3827
|
+
*/
|
|
3828
|
+
onFileSelected(event) {
|
|
3829
|
+
const input = event.target;
|
|
3830
|
+
if (!input.files || input.files.length === 0) {
|
|
3831
|
+
return;
|
|
3832
|
+
}
|
|
3833
|
+
if (input.files.length > 1) {
|
|
3834
|
+
this.showSingleFileOnlyError();
|
|
3835
|
+
return;
|
|
3836
|
+
}
|
|
3837
|
+
this.processFile(input.files[0]);
|
|
3838
|
+
}
|
|
3839
|
+
/**
|
|
3840
|
+
* Handles a file dropped onto the dropzone.
|
|
3841
|
+
* @param {DragEvent} event - The drop event.
|
|
3842
|
+
* @memberof RosterImportComponent
|
|
3843
|
+
*/
|
|
3844
|
+
onFileDrop(event) {
|
|
3845
|
+
event.preventDefault();
|
|
3846
|
+
event.stopPropagation();
|
|
3847
|
+
this.isDragOver = false;
|
|
3848
|
+
const files = event.dataTransfer?.files;
|
|
3849
|
+
if (!files || files.length === 0) {
|
|
3850
|
+
return;
|
|
3851
|
+
}
|
|
3852
|
+
if (files.length > 1) {
|
|
3853
|
+
this.showSingleFileOnlyError();
|
|
3854
|
+
return;
|
|
3855
|
+
}
|
|
3856
|
+
this.processFile(files[0]);
|
|
3857
|
+
}
|
|
3858
|
+
/**
|
|
3859
|
+
* Handles drag-over on the dropzone.
|
|
3860
|
+
* @param {DragEvent} event - The dragover event.
|
|
3861
|
+
* @memberof RosterImportComponent
|
|
3862
|
+
*/
|
|
3863
|
+
onDragOver(event) {
|
|
3864
|
+
event.preventDefault();
|
|
3865
|
+
event.stopPropagation();
|
|
3866
|
+
this.isDragOver = true;
|
|
3867
|
+
}
|
|
3868
|
+
/**
|
|
3869
|
+
* Handles drag-leave on the dropzone.
|
|
3870
|
+
* @param {DragEvent} event - The dragleave event.
|
|
3871
|
+
* @memberof RosterImportComponent
|
|
3872
|
+
*/
|
|
3873
|
+
onDragLeave(event) {
|
|
3874
|
+
event.preventDefault();
|
|
3875
|
+
event.stopPropagation();
|
|
3876
|
+
this.isDragOver = false;
|
|
3877
|
+
}
|
|
3878
|
+
/**
|
|
3879
|
+
* Validates the file type and size, then either sets it or shows an error.
|
|
3880
|
+
* @param {File} file - The candidate file.
|
|
3881
|
+
* @memberof RosterImportComponent
|
|
3882
|
+
*/
|
|
3883
|
+
processFile(file) {
|
|
3884
|
+
this.errorMessage = null;
|
|
3885
|
+
this.noDataMessage = null;
|
|
3886
|
+
this.uploadResult = null;
|
|
3887
|
+
// Clear any previously selected (valid) file so an invalid new selection
|
|
3888
|
+
// can't leave the Import button enabled for a stale file.
|
|
3889
|
+
this.selectedFile = null;
|
|
3890
|
+
const fileName = file.name.toLowerCase();
|
|
3891
|
+
const isValidExtension = this.ACCEPTED_EXTENSIONS.some((ext) => fileName.endsWith(ext));
|
|
3892
|
+
if (!isValidExtension) {
|
|
3893
|
+
this.errorMessage =
|
|
3894
|
+
this.screenTexts?.validation?.unsupportedType ??
|
|
3895
|
+
'Incorrect file type. Please upload a valid .csv or .xlsx file.';
|
|
3896
|
+
return;
|
|
3897
|
+
}
|
|
3898
|
+
if (file.size === 0) {
|
|
3899
|
+
this.errorMessage =
|
|
3900
|
+
this.screenTexts?.validation?.emptyFile ??
|
|
3901
|
+
'The selected file is empty. Please upload a file with roster records.';
|
|
3902
|
+
return;
|
|
3903
|
+
}
|
|
3904
|
+
if (file.size > this.MAX_FILE_SIZE) {
|
|
3905
|
+
this.errorMessage =
|
|
3906
|
+
this.screenTexts?.validation?.fileTooLarge ??
|
|
3907
|
+
'File size exceeds the maximum allowed size of 5 MB.';
|
|
3908
|
+
return;
|
|
3909
|
+
}
|
|
3910
|
+
this.selectedFile = file;
|
|
3911
|
+
}
|
|
3912
|
+
/**
|
|
3913
|
+
* Shows the single-file-only validation message.
|
|
3914
|
+
* @memberof RosterImportComponent
|
|
3915
|
+
*/
|
|
3916
|
+
showSingleFileOnlyError() {
|
|
3917
|
+
this.errorMessage =
|
|
3918
|
+
this.screenTexts?.validation?.singleFileOnly ??
|
|
3919
|
+
'Please upload a single file at a time.';
|
|
3920
|
+
}
|
|
3921
|
+
/**
|
|
3922
|
+
* Removes the currently selected file and resets to the upload state.
|
|
3923
|
+
* @memberof RosterImportComponent
|
|
3924
|
+
*/
|
|
3925
|
+
onRemoveFile() {
|
|
3926
|
+
this.selectedFile = null;
|
|
3927
|
+
this.errorMessage = null;
|
|
3928
|
+
this.noDataMessage = null;
|
|
3929
|
+
this.uploadResult = null;
|
|
3930
|
+
this.importState = 'upload';
|
|
3931
|
+
}
|
|
3932
|
+
/**
|
|
3933
|
+
* MOCK: "uploads" the file by simulating a short processing delay, then
|
|
3934
|
+
* resolves the next mock scenario. Replace the timer + mock lookup with the
|
|
3935
|
+
* real service call once the API is available.
|
|
3936
|
+
* @memberof RosterImportComponent
|
|
3937
|
+
*/
|
|
3938
|
+
onImport() {
|
|
3939
|
+
if (!this.selectedFile) {
|
|
3940
|
+
return;
|
|
3941
|
+
}
|
|
3942
|
+
this.errorMessage = null;
|
|
3943
|
+
this.noDataMessage = null;
|
|
3944
|
+
this.uploadResult = null;
|
|
3945
|
+
this.jobErrors = [];
|
|
3946
|
+
this.progressValue = 0;
|
|
3947
|
+
this.importState = 'processing';
|
|
3948
|
+
const scenario = this.nextMockScenario();
|
|
3949
|
+
// MOCK: animate the progress bar from 0 → 100 over the processing window,
|
|
3950
|
+
// then finalize with the mock result. Replace with real upload progress /
|
|
3951
|
+
// job-status polling once the API is available.
|
|
3952
|
+
const steps = 20;
|
|
3953
|
+
const stepMs = MOCK_PROCESSING_MS / steps;
|
|
3954
|
+
interval(stepMs)
|
|
3955
|
+
.pipe(takeWhile(() => this.progressValue < 100), takeUntil(this.destroy$))
|
|
3956
|
+
.subscribe(() => {
|
|
3957
|
+
this.progressValue = Math.min(100, this.progressValue + 100 / steps);
|
|
3958
|
+
});
|
|
3959
|
+
timer(MOCK_PROCESSING_MS)
|
|
3960
|
+
.pipe(takeUntil(this.destroy$))
|
|
3961
|
+
.subscribe(() => {
|
|
3962
|
+
this.progressValue = 100;
|
|
3963
|
+
const response = RosterImportMocks.getMockResponse(scenario);
|
|
3964
|
+
this.finalizeResult(response);
|
|
3965
|
+
});
|
|
3966
|
+
}
|
|
3967
|
+
/**
|
|
3968
|
+
* Stores the terminal result and moves to the result state. When the file
|
|
3969
|
+
* had no data rows, shows the "no roster data" info banner instead of the
|
|
3970
|
+
* summary cards.
|
|
3971
|
+
* @param {RosterUploadResponse} body - The terminal (mock) result.
|
|
3972
|
+
* @memberof RosterImportComponent
|
|
3973
|
+
*/
|
|
3974
|
+
finalizeResult(body) {
|
|
3975
|
+
this.uploadResult = body;
|
|
3976
|
+
this.jobErrors = body.rowErrors ?? [];
|
|
3977
|
+
this.importState = 'result';
|
|
3978
|
+
if (body.totalRecords === 0) {
|
|
3979
|
+
this.noDataMessage =
|
|
3980
|
+
this.screenTexts?.validation?.noDataRecords ??
|
|
3981
|
+
'No roster data found. The selected file contains headers but no roster records.';
|
|
3982
|
+
}
|
|
3983
|
+
}
|
|
3984
|
+
/**
|
|
3985
|
+
* Whether the result state should show the summary cards (added / skipped).
|
|
3986
|
+
* Hidden for the "no data records" case.
|
|
3987
|
+
* @return {boolean}
|
|
3988
|
+
* @memberof RosterImportComponent
|
|
3989
|
+
*/
|
|
3990
|
+
get showSummaryCards() {
|
|
3991
|
+
return !!this.uploadResult && this.uploadResult.totalRecords > 0;
|
|
3992
|
+
}
|
|
3993
|
+
/**
|
|
3994
|
+
* Whether every processed row was skipped (drives the "All Rows are skipped"
|
|
3995
|
+
* header on the errors card).
|
|
3996
|
+
* @return {boolean}
|
|
3997
|
+
* @memberof RosterImportComponent
|
|
3998
|
+
*/
|
|
3999
|
+
get allRowsSkipped() {
|
|
4000
|
+
return (!!this.uploadResult &&
|
|
4001
|
+
this.uploadResult.totalRecords > 0 &&
|
|
4002
|
+
this.uploadResult.successCount === 0);
|
|
4003
|
+
}
|
|
4004
|
+
/**
|
|
4005
|
+
* Builds a client-side CSV sample file from the required columns and triggers
|
|
4006
|
+
* a browser download. (Client-side generation until the template API exists.)
|
|
4007
|
+
* @memberof RosterImportComponent
|
|
4008
|
+
*/
|
|
4009
|
+
downloadSampleFile() {
|
|
4010
|
+
const headers = this.requiredColumns
|
|
4011
|
+
.map((col) => this.toCsvCell(col))
|
|
4012
|
+
.join(',');
|
|
4013
|
+
const blob = new Blob([headers + '\r\n'], {
|
|
4014
|
+
type: 'text/csv;charset=utf-8;',
|
|
4015
|
+
});
|
|
4016
|
+
const fileName = this.screenTexts?.sampleFileName ?? 'Roster_Sample.csv';
|
|
4017
|
+
this.triggerDownload(blob, fileName);
|
|
4018
|
+
}
|
|
4019
|
+
/**
|
|
4020
|
+
* Builds a CSV from the row-level errors and triggers a browser download so
|
|
4021
|
+
* the user can correct and re-upload.
|
|
4022
|
+
* @memberof RosterImportComponent
|
|
4023
|
+
*/
|
|
4024
|
+
downloadErrorLog() {
|
|
4025
|
+
if (!this.jobErrors.length) {
|
|
4026
|
+
return;
|
|
4027
|
+
}
|
|
4028
|
+
const headers = this.screenTexts?.errorLog?.headers ?? [
|
|
4029
|
+
'Row',
|
|
4030
|
+
'Field',
|
|
4031
|
+
'Error',
|
|
4032
|
+
];
|
|
4033
|
+
const rows = this.jobErrors.map((rowErr) => [rowErr.rowNumber, rowErr.field, rowErr.errorMessage]
|
|
4034
|
+
.map((value) => this.toCsvCell(value))
|
|
4035
|
+
.join(','));
|
|
4036
|
+
const csvContent = [
|
|
4037
|
+
headers.map((header) => this.toCsvCell(header)).join(','),
|
|
4038
|
+
...rows,
|
|
4039
|
+
].join('\r\n');
|
|
4040
|
+
const fileName = this.screenTexts?.errorLog?.fileName ?? 'Roster_Import_Error_Log.csv';
|
|
4041
|
+
const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });
|
|
4042
|
+
this.triggerDownload(blob, fileName);
|
|
4043
|
+
}
|
|
4044
|
+
/**
|
|
4045
|
+
* Escapes a value for safe inclusion in a CSV cell.
|
|
4046
|
+
* @param {(string | number | undefined | null)} value - The raw cell value.
|
|
4047
|
+
* @return {string} - the CSV-safe cell string.
|
|
4048
|
+
* @memberof RosterImportComponent
|
|
4049
|
+
*/
|
|
4050
|
+
toCsvCell(value) {
|
|
4051
|
+
const raw = value === undefined || value === null ? '' : String(value);
|
|
4052
|
+
if (/[",\r\n]/.test(raw)) {
|
|
4053
|
+
return `"${raw.replace(/"/g, '""')}"`;
|
|
4054
|
+
}
|
|
4055
|
+
return raw;
|
|
4056
|
+
}
|
|
4057
|
+
/**
|
|
4058
|
+
* Closes the dialog. Emits submitFormResponse when at least one row was added
|
|
4059
|
+
* so the parent refreshes; otherwise emits formCancel.
|
|
4060
|
+
* @memberof RosterImportComponent
|
|
4061
|
+
*/
|
|
4062
|
+
onCancel() {
|
|
4063
|
+
if (this.uploadResult && this.uploadResult.successCount > 0) {
|
|
4064
|
+
this.submitFormResponse.emit(this.uploadResult);
|
|
4065
|
+
}
|
|
4066
|
+
else {
|
|
4067
|
+
this.formCancel.emit();
|
|
4068
|
+
}
|
|
4069
|
+
}
|
|
4070
|
+
/**
|
|
4071
|
+
* Triggers a browser download for a generated blob.
|
|
4072
|
+
* @param {Blob} blob - The file content.
|
|
4073
|
+
* @param {string} fileName - The suggested filename.
|
|
4074
|
+
* @memberof RosterImportComponent
|
|
4075
|
+
*/
|
|
4076
|
+
triggerDownload(blob, fileName) {
|
|
4077
|
+
const url = URL.createObjectURL(blob);
|
|
4078
|
+
const link = document.createElement('a');
|
|
4079
|
+
link.href = url;
|
|
4080
|
+
link.download = fileName;
|
|
4081
|
+
link.click();
|
|
4082
|
+
URL.revokeObjectURL(url);
|
|
4083
|
+
}
|
|
4084
|
+
/**
|
|
4085
|
+
* MOCK ONLY: returns the next scenario in the cycle so repeated imports show
|
|
4086
|
+
* every result state.
|
|
4087
|
+
* @return {RosterImportMockScenario}
|
|
4088
|
+
* @memberof RosterImportComponent
|
|
4089
|
+
*/
|
|
4090
|
+
nextMockScenario() {
|
|
4091
|
+
const scenario = this.mockScenarios[this.mockScenarioIndex];
|
|
4092
|
+
this.mockScenarioIndex =
|
|
4093
|
+
(this.mockScenarioIndex + 1) % this.mockScenarios.length;
|
|
4094
|
+
return scenario;
|
|
4095
|
+
}
|
|
4096
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RosterImportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4097
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RosterImportComponent, isStandalone: true, selector: "ieeesa-roster-import", inputs: { componentData: "componentData" }, outputs: { submitFormResponse: "submitFormResponse", formCancel: "formCancel" }, ngImport: i0, template: "<div class=\"ieeesa-roster-import\">\r\n <!-- Sub-heading band: \"Bulk Import Participants\" on the left, Import Roster\r\n action on the right (appears once a file is selected) \u2014 matches the Figma.\r\n The \"\u2190 Back to Rosters / Import Roster\" title row + X are rendered by the\r\n shared ModalComponent above this. -->\r\n <div class=\"ieeesa-roster-import__subheader\">\r\n <span class=\"ieeesa-roster-import__subheader-title\">\r\n {{ screenTexts?.subHeading ?? 'Bulk Import Participants' }}\r\n </span>\r\n <button\r\n *ngIf=\"selectedFile\"\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button ieeesa-roster-import__import-btn\"\r\n [disabled]=\"importState === 'processing'\"\r\n (click)=\"onImport()\"\r\n [attr.aria-label]=\"screenTexts?.buttons?.import ?? 'Import Roster'\"\r\n >\r\n <svg class=\"ieeesa-roster-import__import-btn-icon\" width=\"14\" height=\"14\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-import\"></use>\r\n </svg>\r\n {{ screenTexts?.buttons?.import ?? 'Import Roster' }}\r\n </button>\r\n </div>\r\n\r\n <!-- Required Columns Info -->\r\n <div class=\"ieeesa-roster-import__columns-card\">\r\n <div class=\"ieeesa-roster-import__columns-content\">\r\n <p class=\"ieeesa-roster-import__columns-title\">\r\n {{ screenTexts?.requiredColumnsTitle ?? 'Required columns' }}\r\n </p>\r\n <div class=\"ieeesa-roster-import__columns-chips\">\r\n <span\r\n *ngFor=\"let col of requiredColumns\"\r\n class=\"ieeesa-roster-import__chip\"\r\n >\r\n {{ col }}\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"ieeesa-roster-import__sample-wrapper\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-roster-import__download-btn\"\r\n (click)=\"downloadSampleFile()\"\r\n type=\"button\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.downloadSample ?? 'Download Sample File'\"\r\n >\r\n <svg\r\n class=\"ieeesa-roster-import__download-btn-icon\"\r\n aria-hidden=\"true\"\r\n >\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ screenTexts?.downloadSampleLabel ?? 'Download Sample File' }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <p class=\"ieeesa-roster-import__upload-label\">\r\n {{ screenTexts?.uploadLabel ?? 'Upload your file' }}\r\n </p>\r\n\r\n <!-- Upload State -->\r\n <ng-container *ngIf=\"importState === 'upload'\">\r\n <!-- Hidden file input -->\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n [accept]=\"acceptedFileTypes\"\r\n (change)=\"onFileSelected($event)\"\r\n hidden\r\n [attr.aria-label]=\"screenTexts?.uploadLabel ?? 'Upload your file'\"\r\n />\r\n\r\n <!-- Drag & Drop Zone -->\r\n <div\r\n class=\"ieeesa-roster-import__dropzone\"\r\n [class.ieeesa-roster-import__dropzone--active]=\"isDragOver\"\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onFileDrop($event)\"\r\n (click)=\"fileInput.click()\"\r\n role=\"button\"\r\n tabindex=\"0\"\r\n (keydown.enter)=\"fileInput.click()\"\r\n (keydown.space)=\"fileInput.click()\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.dropzone ?? 'Drag and drop file upload area'\"\r\n >\r\n <ng-container *ngIf=\"!selectedFile\">\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <p class=\"ieeesa-roster-import__dropzone-text\">\r\n {{ screenTexts?.dropzoneText ?? 'Drag & drop a file here, or click to browse' }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__dropzone-hint\">\r\n {{ screenTexts?.dropzoneHint ?? 'Accepted formats: .csv, .xls, .xlsx' }}\r\n </p>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedFile\">\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <div class=\"ieeesa-roster-import__file-row\">\r\n <p class=\"ieeesa-roster-import__file-name\">\r\n <svg width=\"14\" height=\"14\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ selectedFile.name }}\r\n </p>\r\n <button\r\n mat-button\r\n class=\"ieeesa-roster-import__remove-file-btn\"\r\n (click)=\"onRemoveFile(); $event.stopPropagation()\"\r\n type=\"button\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.remove ?? 'Remove selected file'\"\r\n >\r\n ×\r\n </button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Inline Error Message -->\r\n <div\r\n *ngIf=\"errorMessage\"\r\n class=\"ieeesa-roster-import__error-banner\"\r\n role=\"alert\"\r\n >\r\n {{ errorMessage }}\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Processing / Result share the file display + progress bar -->\r\n <ng-container *ngIf=\"importState === 'processing' || importState === 'result'\">\r\n <div\r\n class=\"ieeesa-roster-import__dropzone ieeesa-roster-import__dropzone--result\"\r\n >\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <p class=\"ieeesa-roster-import__file-name\">\r\n <svg width=\"14\" height=\"14\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ selectedFile?.name }}\r\n </p>\r\n </div>\r\n\r\n <!-- Progress label + percentage -->\r\n <div class=\"ieeesa-roster-import__progress-head\">\r\n <span class=\"ieeesa-roster-import__progress-label\">\r\n {{ screenTexts?.processingLabel ?? 'Processing file records....' }}\r\n </span>\r\n <span class=\"ieeesa-roster-import__progress-percent\">\r\n {{ progressValue | number: '1.0-0' }}%\r\n </span>\r\n </div>\r\n <mat-progress-bar\r\n class=\"ieeesa-roster-import__progress-bar\"\r\n mode=\"determinate\"\r\n [value]=\"progressValue\"\r\n [attr.aria-label]=\"screenTexts?.processingLabel ?? 'Processing file records....'\"\r\n ></mat-progress-bar>\r\n </ng-container>\r\n\r\n <!-- Result State (summary + errors) -->\r\n <ng-container *ngIf=\"importState === 'result' && uploadResult\">\r\n <!-- No data records banner (headers only, zero rows) -->\r\n <div\r\n *ngIf=\"noDataMessage\"\r\n class=\"ieeesa-roster-import__no-data-banner\"\r\n role=\"status\"\r\n >\r\n {{ noDataMessage }}\r\n </div>\r\n\r\n <!-- Summary cards -->\r\n <div *ngIf=\"showSummaryCards\" class=\"ieeesa-roster-import__summary-cards\">\r\n <div\r\n class=\"ieeesa-roster-import__summary-card ieeesa-roster-import__summary-card--success\"\r\n >\r\n <p class=\"ieeesa-roster-import__summary-card-count\">\r\n {{ uploadResult.successCount }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__summary-card-label\">\r\n {{ screenTexts?.result?.successCardLabel ?? 'Rosters added successfully' }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-roster-import__summary-card ieeesa-roster-import__summary-card--skipped\"\r\n >\r\n <p class=\"ieeesa-roster-import__summary-card-count\">\r\n {{ uploadResult.failureCount }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__summary-card-label\">\r\n {{ screenTexts?.result?.skippedCardLabel ?? 'Skipped Rows' }}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n <!-- Row Errors Card -->\r\n <div *ngIf=\"jobErrors.length\" class=\"ieeesa-roster-import__errors-card\">\r\n <p class=\"ieeesa-roster-import__errors-header\">\r\n <ng-container *ngIf=\"allRowsSkipped; else someErrors\">\r\n {{ screenTexts?.result?.allRowsSkippedHeader ?? 'All Rows are skipped' }}\r\n </ng-container>\r\n <ng-template #someErrors>\r\n {{ screenTexts?.result?.errorsHeader ?? 'Row errors \u2014 these rows will be skipped' }}\r\n </ng-template>\r\n </p>\r\n <div class=\"ieeesa-roster-import__errors-body\">\r\n <div\r\n *ngFor=\"let rowErr of jobErrors\"\r\n class=\"ieeesa-roster-import__error-row\"\r\n >\r\n <p class=\"ieeesa-roster-import__error-row-title\">\r\n Row {{ rowErr.rowNumber }} \u2014 {{ rowErr.errorMessage }}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Footer actions -->\r\n <div class=\"ieeesa-roster-import__actions\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-roster-import__cancel-btn\"\r\n (click)=\"onCancel()\"\r\n type=\"button\"\r\n >\r\n {{ screenTexts?.buttons?.cancel ?? 'Cancel' }}\r\n </button>\r\n <button\r\n *ngIf=\"importState === 'result' && jobErrors.length\"\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-primary-button ieeesa-roster-import__error-log-btn\"\r\n (click)=\"downloadErrorLog()\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.downloadErrorLog ?? 'Download Error log'\"\r\n >\r\n {{ screenTexts?.buttons?.downloadErrorLog ?? 'Download Error log' }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.mat-mdc-dialog-content:has(>.ieeesa-roster-import),.mdc-dialog__content:has(>.ieeesa-roster-import),.mat-mdc-dialog-content:has(.ieeesa-roster-import),.mdc-dialog__content:has(.ieeesa-roster-import){max-height:none!important;min-height:320px!important;height:auto!important;overflow:visible!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog{width:720px!important;max-width:calc(100vw - 32px)!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal{box-shadow:0 4px 24px #00000080!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog [mat-dialog-content],.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mdc-dialog__content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-container .mdc-dialog__content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-surface,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mdc-dialog__surface,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal>.ieeesa-label-lg-16{max-height:none!important;overflow:visible!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal-title{border-bottom:1px solid #e5e7eb;padding-bottom:16px;margin-bottom:16px!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-content{min-height:0!important;padding:0!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal-title{display:flex;align-items:center;gap:4px}.ieeesa-roster-import{background:#fff;position:relative;box-sizing:border-box;width:100%;font-family:Calibri Regular,sans-serif}.ieeesa-roster-import strong,.ieeesa-roster-import b,.ieeesa-roster-import .ieeesa-roster-import__subheader-title,.ieeesa-roster-import .ieeesa-roster-import__columns-title,.ieeesa-roster-import .ieeesa-roster-import__import-btn,.ieeesa-roster-import .ieeesa-roster-import__summary-card-count{font-family:Calibri Bold,sans-serif}.ieeesa-roster-import__subheader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 1.5em;margin:0 -1.5em 20px;min-height:48px;background-color:#f4f5f7}.ieeesa-roster-import__subheader-title{font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__import-btn.mat-tertiary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:auto;width:auto;border:1px solid #00629b;color:#00629b;border-radius:4px;background-color:#fff;font-size:13px;font-weight:600;line-height:1;height:36px!important;min-height:36px!important;padding:0 16px!important;white-space:nowrap;box-shadow:none}.ieeesa-roster-import__import-btn.mat-tertiary-button .mdc-button__label{display:inline-flex;align-items:center;gap:6px}.ieeesa-roster-import__import-btn.mat-tertiary-button:hover:not(:disabled){background-color:#f7fbff}.ieeesa-roster-import__import-btn.mat-tertiary-button:disabled{border-color:#cbd5e1;color:#9aa4b2}.ieeesa-roster-import__import-btn-icon{width:14px;height:14px;flex-shrink:0;display:block;vertical-align:middle}.ieeesa-roster-import__columns-card{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #2f9fe6;border-radius:6px;background:#f3f9ff;padding:10px;margin:0 0 24px}.ieeesa-roster-import__columns-content{flex:1;min-width:0}.ieeesa-roster-import__columns-title{margin:0 0 10px;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;color:#005587}.ieeesa-roster-import__columns-chips{display:flex;flex-wrap:wrap;gap:6px}.ieeesa-roster-import__chip{display:inline-block;font-family:Calibri Bold,sans-serif;border:1px solid #d4d8e1;border-radius:4px;background:#e9edf4;padding:6px 12px;color:#6b7280;font-size:12px;font-weight:600}.ieeesa-roster-import__download-btn.mat-tertiary-button{display:inline-flex;align-items:center;gap:4px;min-width:auto;width:auto;border:1px solid #00629b;color:#00629b;border-radius:4px;background-color:#fff;font-size:12px;font-weight:600;line-height:18px;height:30px!important;min-height:30px!important;padding:0 12px!important;white-space:nowrap;box-shadow:none}.ieeesa-roster-import__download-btn.mat-tertiary-button:hover{background-color:#f7fbff}.ieeesa-roster-import__download-btn-icon{width:14px;height:14px;flex-shrink:0}.ieeesa-roster-import__upload-label{margin:0 0 8px;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__dropzone{border:2px dashed #cccccc;border-radius:8px;min-height:108px;padding:20px 16px;margin:0 0 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;background:#fafafa}.ieeesa-roster-import__dropzone:hover,.ieeesa-roster-import__dropzone--active{border-color:#00629b;background:#f4f9fc}.ieeesa-roster-import__dropzone--result{cursor:default;pointer-events:none}.ieeesa-roster-import__upload-icon{color:#5c6371;font-size:18px;line-height:1;margin-bottom:8px}.ieeesa-roster-import__dropzone-text{margin:0;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__dropzone-hint{margin:6px 0 0;font-family:Calibri Regular,sans-serif;font-size:12px;color:#99a1af}.ieeesa-roster-import__file-row{display:flex;align-items:center;justify-content:center;gap:6px}.ieeesa-roster-import__file-name{margin:0;font-size:14px;font-weight:600;color:#00629b;display:flex;align-items:center;gap:4px}.ieeesa-roster-import__remove-file-btn{display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;color:#ba0c2f;min-width:auto;width:20px;height:20px;padding:0;cursor:pointer}.ieeesa-roster-import__error-banner{display:flex;flex-direction:column;padding:10px 14px;background-color:#fdecea;border:1px solid #ff6467;border-radius:4px;margin:0 0 12px;font-size:12px;color:#ba0c2f}.ieeesa-roster-import__no-data-banner{padding:10px 14px;background-color:#fefce8;border:1px solid #fdc700;border-radius:4px;margin:16px 0 0;font-size:13px;color:#894b00}.ieeesa-roster-import__progress-head{display:flex;align-items:center;justify-content:space-between;margin:16px 0 8px}.ieeesa-roster-import__progress-label{font-family:Calibri Regular,sans-serif;font-size:14px;color:#6f7782}.ieeesa-roster-import__progress-percent{font-family:Calibri Regular,sans-serif;font-size:14px;font-weight:600;color:#6f7782}.ieeesa-roster-import__progress-bar{--mdc-linear-progress-active-indicator-color: #00629b;--mdc-linear-progress-track-color: #dce6ef;border-radius:6px;height:14px;margin:0 0 8px;overflow:hidden}.ieeesa-roster-import__progress-bar .mdc-linear-progress__bar-inner{border-color:#00629b}.ieeesa-roster-import__summary-cards{display:flex;gap:16px;margin:16px 0}.ieeesa-roster-import__summary-card{flex:1;border:1px solid #e3e5e8;border-radius:6px;padding:14px 16px;background:#fff}.ieeesa-roster-import__summary-card-count{margin:0 0 4px;font-family:Calibri Bold,sans-serif;font-size:28px;font-weight:700;line-height:1.1}.ieeesa-roster-import__summary-card--success .ieeesa-roster-import__summary-card-count{color:#27783a}.ieeesa-roster-import__summary-card--skipped .ieeesa-roster-import__summary-card-count{color:#ba0c2f}.ieeesa-roster-import__summary-card-label{margin:0;font-family:Calibri Regular,sans-serif;font-size:14px;color:#6f7782}.ieeesa-roster-import__errors-card{border:1px solid #ff6467;border-radius:4px;margin:0 0 16px;background-color:#fdecea;overflow:hidden}.ieeesa-roster-import__errors-header{margin:0;padding:8px 14px;font-size:12px;font-weight:700;color:#ba0c2f;background-color:#fcd9dd;border-bottom:1px solid #ff6467}.ieeesa-roster-import__errors-body{max-height:200px;overflow-y:auto;padding:10px 14px}.ieeesa-roster-import__error-row{margin-bottom:8px}.ieeesa-roster-import__error-row:last-child{margin-bottom:0}.ieeesa-roster-import__error-row-title{margin:0;font-size:12px;font-weight:400;color:#ba0c2f;line-height:1.5}.ieeesa-roster-import__actions{display:flex;align-items:center;gap:14px;margin:20px -1.5em 0;padding:16px 1.5em 0;border-top:1px solid #e5e7eb}.ieeesa-roster-import__import-submit-btn{background-color:#00629b;color:#fff;font-size:13px;font-weight:600;border-radius:4px;padding:7px 14px}.ieeesa-roster-import__error-log-btn{margin-left:auto;background-color:#00629b;color:#fff;font-size:13px;font-weight:600;border-radius:4px;padding:7px 14px}.ieeesa-roster-import__error-log-btn:hover{background-color:#005587}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { 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: MatProgressBarModule }, { kind: "component", type: i3$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4098
|
+
}
|
|
4099
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RosterImportComponent, decorators: [{
|
|
4100
|
+
type: Component,
|
|
4101
|
+
args: [{ selector: 'ieeesa-roster-import', standalone: true, imports: [CommonModule, MatButtonModule, MatProgressBarModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-roster-import\">\r\n <!-- Sub-heading band: \"Bulk Import Participants\" on the left, Import Roster\r\n action on the right (appears once a file is selected) \u2014 matches the Figma.\r\n The \"\u2190 Back to Rosters / Import Roster\" title row + X are rendered by the\r\n shared ModalComponent above this. -->\r\n <div class=\"ieeesa-roster-import__subheader\">\r\n <span class=\"ieeesa-roster-import__subheader-title\">\r\n {{ screenTexts?.subHeading ?? 'Bulk Import Participants' }}\r\n </span>\r\n <button\r\n *ngIf=\"selectedFile\"\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button ieeesa-roster-import__import-btn\"\r\n [disabled]=\"importState === 'processing'\"\r\n (click)=\"onImport()\"\r\n [attr.aria-label]=\"screenTexts?.buttons?.import ?? 'Import Roster'\"\r\n >\r\n <svg class=\"ieeesa-roster-import__import-btn-icon\" width=\"14\" height=\"14\" aria-hidden=\"true\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-import\"></use>\r\n </svg>\r\n {{ screenTexts?.buttons?.import ?? 'Import Roster' }}\r\n </button>\r\n </div>\r\n\r\n <!-- Required Columns Info -->\r\n <div class=\"ieeesa-roster-import__columns-card\">\r\n <div class=\"ieeesa-roster-import__columns-content\">\r\n <p class=\"ieeesa-roster-import__columns-title\">\r\n {{ screenTexts?.requiredColumnsTitle ?? 'Required columns' }}\r\n </p>\r\n <div class=\"ieeesa-roster-import__columns-chips\">\r\n <span\r\n *ngFor=\"let col of requiredColumns\"\r\n class=\"ieeesa-roster-import__chip\"\r\n >\r\n {{ col }}\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"ieeesa-roster-import__sample-wrapper\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-roster-import__download-btn\"\r\n (click)=\"downloadSampleFile()\"\r\n type=\"button\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.downloadSample ?? 'Download Sample File'\"\r\n >\r\n <svg\r\n class=\"ieeesa-roster-import__download-btn-icon\"\r\n aria-hidden=\"true\"\r\n >\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ screenTexts?.downloadSampleLabel ?? 'Download Sample File' }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <p class=\"ieeesa-roster-import__upload-label\">\r\n {{ screenTexts?.uploadLabel ?? 'Upload your file' }}\r\n </p>\r\n\r\n <!-- Upload State -->\r\n <ng-container *ngIf=\"importState === 'upload'\">\r\n <!-- Hidden file input -->\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n [accept]=\"acceptedFileTypes\"\r\n (change)=\"onFileSelected($event)\"\r\n hidden\r\n [attr.aria-label]=\"screenTexts?.uploadLabel ?? 'Upload your file'\"\r\n />\r\n\r\n <!-- Drag & Drop Zone -->\r\n <div\r\n class=\"ieeesa-roster-import__dropzone\"\r\n [class.ieeesa-roster-import__dropzone--active]=\"isDragOver\"\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onFileDrop($event)\"\r\n (click)=\"fileInput.click()\"\r\n role=\"button\"\r\n tabindex=\"0\"\r\n (keydown.enter)=\"fileInput.click()\"\r\n (keydown.space)=\"fileInput.click()\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.dropzone ?? 'Drag and drop file upload area'\"\r\n >\r\n <ng-container *ngIf=\"!selectedFile\">\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <p class=\"ieeesa-roster-import__dropzone-text\">\r\n {{ screenTexts?.dropzoneText ?? 'Drag & drop a file here, or click to browse' }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__dropzone-hint\">\r\n {{ screenTexts?.dropzoneHint ?? 'Accepted formats: .csv, .xls, .xlsx' }}\r\n </p>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedFile\">\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <div class=\"ieeesa-roster-import__file-row\">\r\n <p class=\"ieeesa-roster-import__file-name\">\r\n <svg width=\"14\" height=\"14\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ selectedFile.name }}\r\n </p>\r\n <button\r\n mat-button\r\n class=\"ieeesa-roster-import__remove-file-btn\"\r\n (click)=\"onRemoveFile(); $event.stopPropagation()\"\r\n type=\"button\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.remove ?? 'Remove selected file'\"\r\n >\r\n ×\r\n </button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Inline Error Message -->\r\n <div\r\n *ngIf=\"errorMessage\"\r\n class=\"ieeesa-roster-import__error-banner\"\r\n role=\"alert\"\r\n >\r\n {{ errorMessage }}\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Processing / Result share the file display + progress bar -->\r\n <ng-container *ngIf=\"importState === 'processing' || importState === 'result'\">\r\n <div\r\n class=\"ieeesa-roster-import__dropzone ieeesa-roster-import__dropzone--result\"\r\n >\r\n <svg class=\"ieeesa-roster-import__upload-icon\" width=\"22\" height=\"22\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-upload-gray\"></use>\r\n </svg>\r\n <p class=\"ieeesa-roster-import__file-name\">\r\n <svg width=\"14\" height=\"14\">\r\n <use xlink:href=\"assets/images/sprites/sprites.svg#icon-file-doc\"></use>\r\n </svg>\r\n {{ selectedFile?.name }}\r\n </p>\r\n </div>\r\n\r\n <!-- Progress label + percentage -->\r\n <div class=\"ieeesa-roster-import__progress-head\">\r\n <span class=\"ieeesa-roster-import__progress-label\">\r\n {{ screenTexts?.processingLabel ?? 'Processing file records....' }}\r\n </span>\r\n <span class=\"ieeesa-roster-import__progress-percent\">\r\n {{ progressValue | number: '1.0-0' }}%\r\n </span>\r\n </div>\r\n <mat-progress-bar\r\n class=\"ieeesa-roster-import__progress-bar\"\r\n mode=\"determinate\"\r\n [value]=\"progressValue\"\r\n [attr.aria-label]=\"screenTexts?.processingLabel ?? 'Processing file records....'\"\r\n ></mat-progress-bar>\r\n </ng-container>\r\n\r\n <!-- Result State (summary + errors) -->\r\n <ng-container *ngIf=\"importState === 'result' && uploadResult\">\r\n <!-- No data records banner (headers only, zero rows) -->\r\n <div\r\n *ngIf=\"noDataMessage\"\r\n class=\"ieeesa-roster-import__no-data-banner\"\r\n role=\"status\"\r\n >\r\n {{ noDataMessage }}\r\n </div>\r\n\r\n <!-- Summary cards -->\r\n <div *ngIf=\"showSummaryCards\" class=\"ieeesa-roster-import__summary-cards\">\r\n <div\r\n class=\"ieeesa-roster-import__summary-card ieeesa-roster-import__summary-card--success\"\r\n >\r\n <p class=\"ieeesa-roster-import__summary-card-count\">\r\n {{ uploadResult.successCount }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__summary-card-label\">\r\n {{ screenTexts?.result?.successCardLabel ?? 'Rosters added successfully' }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-roster-import__summary-card ieeesa-roster-import__summary-card--skipped\"\r\n >\r\n <p class=\"ieeesa-roster-import__summary-card-count\">\r\n {{ uploadResult.failureCount }}\r\n </p>\r\n <p class=\"ieeesa-roster-import__summary-card-label\">\r\n {{ screenTexts?.result?.skippedCardLabel ?? 'Skipped Rows' }}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n <!-- Row Errors Card -->\r\n <div *ngIf=\"jobErrors.length\" class=\"ieeesa-roster-import__errors-card\">\r\n <p class=\"ieeesa-roster-import__errors-header\">\r\n <ng-container *ngIf=\"allRowsSkipped; else someErrors\">\r\n {{ screenTexts?.result?.allRowsSkippedHeader ?? 'All Rows are skipped' }}\r\n </ng-container>\r\n <ng-template #someErrors>\r\n {{ screenTexts?.result?.errorsHeader ?? 'Row errors \u2014 these rows will be skipped' }}\r\n </ng-template>\r\n </p>\r\n <div class=\"ieeesa-roster-import__errors-body\">\r\n <div\r\n *ngFor=\"let rowErr of jobErrors\"\r\n class=\"ieeesa-roster-import__error-row\"\r\n >\r\n <p class=\"ieeesa-roster-import__error-row-title\">\r\n Row {{ rowErr.rowNumber }} \u2014 {{ rowErr.errorMessage }}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Footer actions -->\r\n <div class=\"ieeesa-roster-import__actions\">\r\n <button\r\n mat-button\r\n class=\"mat-tertiary-button ieeesa-roster-import__cancel-btn\"\r\n (click)=\"onCancel()\"\r\n type=\"button\"\r\n >\r\n {{ screenTexts?.buttons?.cancel ?? 'Cancel' }}\r\n </button>\r\n <button\r\n *ngIf=\"importState === 'result' && jobErrors.length\"\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-primary-button ieeesa-roster-import__error-log-btn\"\r\n (click)=\"downloadErrorLog()\"\r\n [attr.aria-label]=\"screenTexts?.ariaLabel?.downloadErrorLog ?? 'Download Error log'\"\r\n >\r\n {{ screenTexts?.buttons?.downloadErrorLog ?? 'Download Error log' }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.mat-mdc-dialog-content:has(>.ieeesa-roster-import),.mdc-dialog__content:has(>.ieeesa-roster-import),.mat-mdc-dialog-content:has(.ieeesa-roster-import),.mdc-dialog__content:has(.ieeesa-roster-import){max-height:none!important;min-height:320px!important;height:auto!important;overflow:visible!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog{width:720px!important;max-width:calc(100vw - 32px)!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal{box-shadow:0 4px 24px #00000080!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog [mat-dialog-content],.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mdc-dialog__content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-container .mdc-dialog__content,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-surface,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mdc-dialog__surface,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal,.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal>.ieeesa-label-lg-16{max-height:none!important;overflow:visible!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal-title{border-bottom:1px solid #e5e7eb;padding-bottom:16px;margin-bottom:16px!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .mat-mdc-dialog-content{min-height:0!important;padding:0!important}.ieeesa-modal-dialog.ieeesa-roster-import-dialog .ieeesa-modal-title{display:flex;align-items:center;gap:4px}.ieeesa-roster-import{background:#fff;position:relative;box-sizing:border-box;width:100%;font-family:Calibri Regular,sans-serif}.ieeesa-roster-import strong,.ieeesa-roster-import b,.ieeesa-roster-import .ieeesa-roster-import__subheader-title,.ieeesa-roster-import .ieeesa-roster-import__columns-title,.ieeesa-roster-import .ieeesa-roster-import__import-btn,.ieeesa-roster-import .ieeesa-roster-import__summary-card-count{font-family:Calibri Bold,sans-serif}.ieeesa-roster-import__subheader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 1.5em;margin:0 -1.5em 20px;min-height:48px;background-color:#f4f5f7}.ieeesa-roster-import__subheader-title{font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__import-btn.mat-tertiary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:auto;width:auto;border:1px solid #00629b;color:#00629b;border-radius:4px;background-color:#fff;font-size:13px;font-weight:600;line-height:1;height:36px!important;min-height:36px!important;padding:0 16px!important;white-space:nowrap;box-shadow:none}.ieeesa-roster-import__import-btn.mat-tertiary-button .mdc-button__label{display:inline-flex;align-items:center;gap:6px}.ieeesa-roster-import__import-btn.mat-tertiary-button:hover:not(:disabled){background-color:#f7fbff}.ieeesa-roster-import__import-btn.mat-tertiary-button:disabled{border-color:#cbd5e1;color:#9aa4b2}.ieeesa-roster-import__import-btn-icon{width:14px;height:14px;flex-shrink:0;display:block;vertical-align:middle}.ieeesa-roster-import__columns-card{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #2f9fe6;border-radius:6px;background:#f3f9ff;padding:10px;margin:0 0 24px}.ieeesa-roster-import__columns-content{flex:1;min-width:0}.ieeesa-roster-import__columns-title{margin:0 0 10px;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:700;color:#005587}.ieeesa-roster-import__columns-chips{display:flex;flex-wrap:wrap;gap:6px}.ieeesa-roster-import__chip{display:inline-block;font-family:Calibri Bold,sans-serif;border:1px solid #d4d8e1;border-radius:4px;background:#e9edf4;padding:6px 12px;color:#6b7280;font-size:12px;font-weight:600}.ieeesa-roster-import__download-btn.mat-tertiary-button{display:inline-flex;align-items:center;gap:4px;min-width:auto;width:auto;border:1px solid #00629b;color:#00629b;border-radius:4px;background-color:#fff;font-size:12px;font-weight:600;line-height:18px;height:30px!important;min-height:30px!important;padding:0 12px!important;white-space:nowrap;box-shadow:none}.ieeesa-roster-import__download-btn.mat-tertiary-button:hover{background-color:#f7fbff}.ieeesa-roster-import__download-btn-icon{width:14px;height:14px;flex-shrink:0}.ieeesa-roster-import__upload-label{margin:0 0 8px;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__dropzone{border:2px dashed #cccccc;border-radius:8px;min-height:108px;padding:20px 16px;margin:0 0 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;background:#fafafa}.ieeesa-roster-import__dropzone:hover,.ieeesa-roster-import__dropzone--active{border-color:#00629b;background:#f4f9fc}.ieeesa-roster-import__dropzone--result{cursor:default;pointer-events:none}.ieeesa-roster-import__upload-icon{color:#5c6371;font-size:18px;line-height:1;margin-bottom:8px}.ieeesa-roster-import__dropzone-text{margin:0;font-family:Calibri Bold,sans-serif;font-size:14px;font-weight:600;color:#4a5565}.ieeesa-roster-import__dropzone-hint{margin:6px 0 0;font-family:Calibri Regular,sans-serif;font-size:12px;color:#99a1af}.ieeesa-roster-import__file-row{display:flex;align-items:center;justify-content:center;gap:6px}.ieeesa-roster-import__file-name{margin:0;font-size:14px;font-weight:600;color:#00629b;display:flex;align-items:center;gap:4px}.ieeesa-roster-import__remove-file-btn{display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;color:#ba0c2f;min-width:auto;width:20px;height:20px;padding:0;cursor:pointer}.ieeesa-roster-import__error-banner{display:flex;flex-direction:column;padding:10px 14px;background-color:#fdecea;border:1px solid #ff6467;border-radius:4px;margin:0 0 12px;font-size:12px;color:#ba0c2f}.ieeesa-roster-import__no-data-banner{padding:10px 14px;background-color:#fefce8;border:1px solid #fdc700;border-radius:4px;margin:16px 0 0;font-size:13px;color:#894b00}.ieeesa-roster-import__progress-head{display:flex;align-items:center;justify-content:space-between;margin:16px 0 8px}.ieeesa-roster-import__progress-label{font-family:Calibri Regular,sans-serif;font-size:14px;color:#6f7782}.ieeesa-roster-import__progress-percent{font-family:Calibri Regular,sans-serif;font-size:14px;font-weight:600;color:#6f7782}.ieeesa-roster-import__progress-bar{--mdc-linear-progress-active-indicator-color: #00629b;--mdc-linear-progress-track-color: #dce6ef;border-radius:6px;height:14px;margin:0 0 8px;overflow:hidden}.ieeesa-roster-import__progress-bar .mdc-linear-progress__bar-inner{border-color:#00629b}.ieeesa-roster-import__summary-cards{display:flex;gap:16px;margin:16px 0}.ieeesa-roster-import__summary-card{flex:1;border:1px solid #e3e5e8;border-radius:6px;padding:14px 16px;background:#fff}.ieeesa-roster-import__summary-card-count{margin:0 0 4px;font-family:Calibri Bold,sans-serif;font-size:28px;font-weight:700;line-height:1.1}.ieeesa-roster-import__summary-card--success .ieeesa-roster-import__summary-card-count{color:#27783a}.ieeesa-roster-import__summary-card--skipped .ieeesa-roster-import__summary-card-count{color:#ba0c2f}.ieeesa-roster-import__summary-card-label{margin:0;font-family:Calibri Regular,sans-serif;font-size:14px;color:#6f7782}.ieeesa-roster-import__errors-card{border:1px solid #ff6467;border-radius:4px;margin:0 0 16px;background-color:#fdecea;overflow:hidden}.ieeesa-roster-import__errors-header{margin:0;padding:8px 14px;font-size:12px;font-weight:700;color:#ba0c2f;background-color:#fcd9dd;border-bottom:1px solid #ff6467}.ieeesa-roster-import__errors-body{max-height:200px;overflow-y:auto;padding:10px 14px}.ieeesa-roster-import__error-row{margin-bottom:8px}.ieeesa-roster-import__error-row:last-child{margin-bottom:0}.ieeesa-roster-import__error-row-title{margin:0;font-size:12px;font-weight:400;color:#ba0c2f;line-height:1.5}.ieeesa-roster-import__actions{display:flex;align-items:center;gap:14px;margin:20px -1.5em 0;padding:16px 1.5em 0;border-top:1px solid #e5e7eb}.ieeesa-roster-import__import-submit-btn{background-color:#00629b;color:#fff;font-size:13px;font-weight:600;border-radius:4px;padding:7px 14px}.ieeesa-roster-import__error-log-btn{margin-left:auto;background-color:#00629b;color:#fff;font-size:13px;font-weight:600;border-radius:4px;padding:7px 14px}.ieeesa-roster-import__error-log-btn:hover{background-color:#005587}\n"] }]
|
|
4102
|
+
}], propDecorators: { componentData: [{
|
|
4103
|
+
type: Input
|
|
4104
|
+
}], submitFormResponse: [{
|
|
4105
|
+
type: Output
|
|
4106
|
+
}], formCancel: [{
|
|
4107
|
+
type: Output
|
|
4108
|
+
}] } });
|
|
4109
|
+
|
|
3548
4110
|
/* eslint-disable no-unused-vars */
|
|
3549
4111
|
var RosterFunctionType;
|
|
3550
4112
|
(function (RosterFunctionType) {
|
|
@@ -4308,7 +4870,7 @@ class AddUserRosterComponent {
|
|
|
4308
4870
|
}
|
|
4309
4871
|
}
|
|
4310
4872
|
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 }); }
|
|
4311
|
-
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 (formMultiSelectAutoCompleteSearch)=\"getOrganizations($event)\"\r\n (multiSelectAutoCompleteOptionsSelected)=\"getSelectedOrganizations($event)\"\r\n (formMultiSelectAutoCompleteClearSearchValue)=\"disableSubmitButton()\"\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", "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 }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4873
|
+
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 (formMultiSelectAutoCompleteSearch)=\"getOrganizations($event)\"\r\n (multiSelectAutoCompleteOptionsSelected)=\"getSelectedOrganizations($event)\"\r\n (formMultiSelectAutoCompleteClearSearchValue)=\"disableSubmitButton()\"\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 }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4312
4874
|
}
|
|
4313
4875
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddUserRosterComponent, decorators: [{
|
|
4314
4876
|
type: Component,
|
|
@@ -5420,12 +5982,77 @@ class ViewRosterComponent {
|
|
|
5420
5982
|
this.groupService?.openModalNotifier?.next(GroupFunctionType.EDIT_ROSTER_USER_ROLE);
|
|
5421
5983
|
}
|
|
5422
5984
|
/**
|
|
5423
|
-
*
|
|
5985
|
+
* Handles a click on the data-table's add-user icon. The add icon lives inside
|
|
5986
|
+
* the shared DataTableComponent and only emits (addRow), so we can't attach a
|
|
5987
|
+
* menu trigger to it directly. Instead we position an invisible, fixed-position
|
|
5988
|
+
* anchor at the add icon's on-screen location, then open the menu from that
|
|
5989
|
+
* anchor — so the menu appears directly beneath the add icon (matching the
|
|
5990
|
+
* Figma) rather than at the far-right export area.
|
|
5424
5991
|
* @memberof ViewRosterComponent
|
|
5425
5992
|
*/
|
|
5426
|
-
|
|
5993
|
+
onAddIconClick() {
|
|
5994
|
+
this.positionAddMenuAnchorAtAddIcon();
|
|
5995
|
+
this.addMenuTrigger?.openMenu();
|
|
5996
|
+
}
|
|
5997
|
+
/**
|
|
5998
|
+
* Closes the "Add" menu on window resize/scroll. The menu is anchored to a
|
|
5999
|
+
* point measured at open time, so a layout change (resize/scroll) would leave
|
|
6000
|
+
* it detached from the add icon; closing it avoids showing it in a stale spot.
|
|
6001
|
+
* The user can simply click the add icon again.
|
|
6002
|
+
* @memberof ViewRosterComponent
|
|
6003
|
+
*/
|
|
6004
|
+
closeAddMenuOnViewportChange() {
|
|
6005
|
+
if (this.addMenuTrigger?.menuOpen) {
|
|
6006
|
+
this.addMenuTrigger.closeMenu();
|
|
6007
|
+
}
|
|
6008
|
+
}
|
|
6009
|
+
/**
|
|
6010
|
+
* Places the add-menu anchor at the add-user icon's bottom edge. Locates the
|
|
6011
|
+
* icon by finding the add-user sprite (icon-add-user) within the roster's
|
|
6012
|
+
* data-table action row.
|
|
6013
|
+
* @memberof ViewRosterComponent
|
|
6014
|
+
*/
|
|
6015
|
+
positionAddMenuAnchorAtAddIcon() {
|
|
6016
|
+
const anchor = this.addMenuAnchor?.nativeElement;
|
|
6017
|
+
if (!anchor) {
|
|
6018
|
+
return;
|
|
6019
|
+
}
|
|
6020
|
+
const scope = anchor.closest('.ieeesa-modal, .mat-mdc-dialog-container') ??
|
|
6021
|
+
document.body;
|
|
6022
|
+
// The add-user icon is the data-table action button with aria-label
|
|
6023
|
+
// "Add user(s)" (dataTable.buttons[2], id 3 → class ieeesa-icon-button__3).
|
|
6024
|
+
// Target it within the actions row specifically so we don't match a row-level
|
|
6025
|
+
// action button elsewhere in the table.
|
|
6026
|
+
const addIcon = (scope?.querySelector('.ieeesa-data-table__actions .ieeesa-icon-button__3') ??
|
|
6027
|
+
scope?.querySelector('.ieeesa-data-table__actions button[aria-label="Add user(s)"]'));
|
|
6028
|
+
if (!addIcon) {
|
|
6029
|
+
return;
|
|
6030
|
+
}
|
|
6031
|
+
const rect = addIcon.getBoundingClientRect();
|
|
6032
|
+
// Anchor is a zero-size point at the add icon's bottom-RIGHT corner. With the
|
|
6033
|
+
// menu's xPosition="before" the menu's right edge aligns to this point, so the
|
|
6034
|
+
// menu opens leftward from the add icon (matching the Figma, where the icon
|
|
6035
|
+
// sits above the right portion of the popover).
|
|
6036
|
+
anchor.style.position = 'fixed';
|
|
6037
|
+
anchor.style.top = `${rect.bottom}px`;
|
|
6038
|
+
anchor.style.left = `${rect.right}px`;
|
|
6039
|
+
anchor.style.width = '0';
|
|
6040
|
+
anchor.style.height = '0';
|
|
6041
|
+
}
|
|
6042
|
+
/**
|
|
6043
|
+
* "Add Manually" menu option — opens the existing add-user-to-roster flow.
|
|
6044
|
+
* @memberof ViewRosterComponent
|
|
6045
|
+
*/
|
|
6046
|
+
onAddManually() {
|
|
5427
6047
|
this.groupService?.openModalNotifier?.next(GroupFunctionType.ADD_USER_TO_ROSTER);
|
|
5428
6048
|
}
|
|
6049
|
+
/**
|
|
6050
|
+
* "Bulk Import" menu option — opens the bulk roster import dialog.
|
|
6051
|
+
* @memberof ViewRosterComponent
|
|
6052
|
+
*/
|
|
6053
|
+
onImportRoster() {
|
|
6054
|
+
this.groupService?.openModalNotifier?.next(GroupFunctionType.IMPORT_ROSTER);
|
|
6055
|
+
}
|
|
5429
6056
|
/**
|
|
5430
6057
|
* Handles alerts for success, error, warning.
|
|
5431
6058
|
* @param {(string | string[])} message -error or warning message
|
|
@@ -5476,7 +6103,7 @@ class ViewRosterComponent {
|
|
|
5476
6103
|
this.destroy$.unsubscribe();
|
|
5477
6104
|
}
|
|
5478
6105
|
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 }); }
|
|
5479
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ViewRosterComponent, isStandalone: true, selector: "ieeesa-view-roster", 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)=\"onAddNewUser()\"\r\n>\r\n <!-- Export Roster Button + Popover \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 <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</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}.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}\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: "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 }); }
|
|
6106
|
+
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 <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}\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 }); }
|
|
5480
6107
|
}
|
|
5481
6108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewRosterComponent, decorators: [{
|
|
5482
6109
|
type: Component,
|
|
@@ -5485,9 +6112,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5485
6112
|
DataTableComponent,
|
|
5486
6113
|
MatDialogModule,
|
|
5487
6114
|
MatButtonModule,
|
|
6115
|
+
MatMenuModule,
|
|
5488
6116
|
ExportFormatPopoverComponent,
|
|
5489
|
-
], 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)=\"onAddNewUser()\"\r\n>\r\n <!-- Export Roster Button + Popover \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 <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</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}.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}\n"] }]
|
|
5490
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: GroupsService }, { type: i2.AlertsService }, { type: i0.ChangeDetectorRef }, { type: i2.GlobalErrorHandlerService }, { type: RosterExportService }]; }
|
|
6117
|
+
], 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 <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}\n"] }]
|
|
6118
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: GroupsService }, { type: i2.AlertsService }, { type: i0.ChangeDetectorRef }, { type: i2.GlobalErrorHandlerService }, { type: RosterExportService }]; }, propDecorators: { addMenuTrigger: [{
|
|
6119
|
+
type: ViewChild,
|
|
6120
|
+
args: ['addMenuTrigger']
|
|
6121
|
+
}], addMenuAnchor: [{
|
|
6122
|
+
type: ViewChild,
|
|
6123
|
+
args: ['addMenuTrigger', { read: ElementRef }]
|
|
6124
|
+
}], closeAddMenuOnViewportChange: [{
|
|
6125
|
+
type: HostListener,
|
|
6126
|
+
args: ['window:resize']
|
|
6127
|
+
}, {
|
|
6128
|
+
type: HostListener,
|
|
6129
|
+
args: ['window:scroll']
|
|
6130
|
+
}] } });
|
|
5491
6131
|
|
|
5492
6132
|
/**
|
|
5493
6133
|
* Groups component is a wrapper or container component for groups management reusable component and in this component integrates all group management functionalities and this will be entry component for managing groups when it is consumed in other applications.
|
|
@@ -5596,6 +6236,9 @@ class GroupsComponent {
|
|
|
5596
6236
|
if (response === GroupFunctionType.ADD_USER_TO_ROSTER) {
|
|
5597
6237
|
this.openAddUserRosterModal(selectedGroupInfo);
|
|
5598
6238
|
}
|
|
6239
|
+
if (response === GroupFunctionType.IMPORT_ROSTER) {
|
|
6240
|
+
this.openRosterImportModal(selectedGroupInfo);
|
|
6241
|
+
}
|
|
5599
6242
|
});
|
|
5600
6243
|
}
|
|
5601
6244
|
/**
|
|
@@ -5681,6 +6324,34 @@ class GroupsComponent {
|
|
|
5681
6324
|
this.groupsService?.setGroupFunctionType(this.functionType);
|
|
5682
6325
|
this.openModal(dialogOptions, 'ieeesa-add-user-roster');
|
|
5683
6326
|
}
|
|
6327
|
+
/**
|
|
6328
|
+
* Sets the dialog options for the bulk roster import modal and opens it.
|
|
6329
|
+
* Passes the selected group's id/name to the dynamically-instantiated
|
|
6330
|
+
* RosterImportComponent via the ModalComponent dynamic-input pattern.
|
|
6331
|
+
* @param {GroupInfo} selectedGroupInfo
|
|
6332
|
+
* @memberof GroupsComponent
|
|
6333
|
+
*/
|
|
6334
|
+
openRosterImportModal(selectedGroupInfo) {
|
|
6335
|
+
const dialogOptions = {
|
|
6336
|
+
// Modal title row: "← Back to Rosters / Import Roster" + X close.
|
|
6337
|
+
// The "Bulk Import Participants" band + Import Roster action button are
|
|
6338
|
+
// rendered by RosterImportComponent itself (per the Figma).
|
|
6339
|
+
backButtonLabel: this.constants?.rosterImport?.backToRosters,
|
|
6340
|
+
heading: this.constants?.rosterImport?.heading,
|
|
6341
|
+
headingClass: 'ieeesa-modal-title__heading--breadcrumb',
|
|
6342
|
+
isCloseNeeded: true,
|
|
6343
|
+
componentReference: RosterImportComponent,
|
|
6344
|
+
modalType: ModalType.FORM,
|
|
6345
|
+
data2DynamicComponent: {
|
|
6346
|
+
groupId: selectedGroupInfo?.groupId,
|
|
6347
|
+
groupName: selectedGroupInfo?.groupName,
|
|
6348
|
+
},
|
|
6349
|
+
dataInputName: 'componentData',
|
|
6350
|
+
};
|
|
6351
|
+
this.functionType = GroupFunctionType.IMPORT_ROSTER;
|
|
6352
|
+
this.groupsService?.setGroupFunctionType(this.functionType);
|
|
6353
|
+
this.openModal(dialogOptions, 'ieeesa-roster-import-dialog');
|
|
6354
|
+
}
|
|
5684
6355
|
/**
|
|
5685
6356
|
* Sets the dialog options for users modal and calls openModal method.
|
|
5686
6357
|
* @param {GroupInfo} group
|
|
@@ -5715,6 +6386,7 @@ class GroupsComponent {
|
|
|
5715
6386
|
width: this.functionType === GroupFunctionType.VIEW_ROSTER ||
|
|
5716
6387
|
this.functionType === GroupFunctionType.EDIT_ROSTER_USER_ROLE ||
|
|
5717
6388
|
this.functionType === GroupFunctionType.ADD_USER_TO_ROSTER ||
|
|
6389
|
+
this.functionType === GroupFunctionType.IMPORT_ROSTER ||
|
|
5718
6390
|
this.functionType === GroupFunctionType.CREATE ||
|
|
5719
6391
|
this.functionType === GroupFunctionType.EDIT
|
|
5720
6392
|
? ''
|
|
@@ -5722,6 +6394,20 @@ class GroupsComponent {
|
|
|
5722
6394
|
panelClass: ['ieeesa-modal-dialog', className],
|
|
5723
6395
|
ariaModal: true,
|
|
5724
6396
|
});
|
|
6397
|
+
// Optional modal back button (e.g. roster import "Back to Rosters") — close
|
|
6398
|
+
// and return to the roster preview.
|
|
6399
|
+
this.dialogRef?.componentInstance?.backClick
|
|
6400
|
+
?.pipe(takeUntil(this.destroy$))
|
|
6401
|
+
.subscribe(() => {
|
|
6402
|
+
// Clear the reopen flag before closing so the afterClosed handler (which
|
|
6403
|
+
// reopens the roster when canReopenViewRosterModal is true) does not fire
|
|
6404
|
+
// a second roster dialog — this handler performs the single reopen.
|
|
6405
|
+
this.canReopenViewRosterModal = false;
|
|
6406
|
+
this.dialogRef?.close();
|
|
6407
|
+
if (this.functionType === GroupFunctionType.IMPORT_ROSTER) {
|
|
6408
|
+
this.viewRoster(this.groupsService.selectedGroupInfo);
|
|
6409
|
+
}
|
|
6410
|
+
});
|
|
5725
6411
|
this.dialogRef?.componentInstance?.submitFormResponse
|
|
5726
6412
|
.pipe(takeUntil(this.destroy$))
|
|
5727
6413
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, no-unused-vars
|
|
@@ -5771,6 +6457,12 @@ class GroupsComponent {
|
|
|
5771
6457
|
this.groupsService.setRosterFunctionType(RosterFunctionType.ADD_USER_TO_ROSTER);
|
|
5772
6458
|
break;
|
|
5773
6459
|
}
|
|
6460
|
+
case GroupFunctionType?.IMPORT_ROSTER: {
|
|
6461
|
+
// Re-open the roster so the newly imported members are shown.
|
|
6462
|
+
this.canReopenViewRosterModal = false;
|
|
6463
|
+
this.viewRoster(this.groupsService.selectedGroupInfo);
|
|
6464
|
+
break;
|
|
6465
|
+
}
|
|
5774
6466
|
default:
|
|
5775
6467
|
break;
|
|
5776
6468
|
}
|
|
@@ -5780,7 +6472,8 @@ class GroupsComponent {
|
|
|
5780
6472
|
.subscribe(() => {
|
|
5781
6473
|
this.dialogRef?.close();
|
|
5782
6474
|
if (this.functionType === GroupFunctionType.ADD_USER_TO_ROSTER ||
|
|
5783
|
-
this.functionType === GroupFunctionType.EDIT_ROSTER_USER_ROLE
|
|
6475
|
+
this.functionType === GroupFunctionType.EDIT_ROSTER_USER_ROLE ||
|
|
6476
|
+
this.functionType === GroupFunctionType.IMPORT_ROSTER) {
|
|
5784
6477
|
this.canReopenViewRosterModal = false;
|
|
5785
6478
|
this.viewRoster(this.groupsService.selectedGroupInfo);
|
|
5786
6479
|
}
|
|
@@ -5790,7 +6483,8 @@ class GroupsComponent {
|
|
|
5790
6483
|
.pipe(takeUntil(this.destroy$))
|
|
5791
6484
|
.subscribe(() => {
|
|
5792
6485
|
if (this.functionType === GroupFunctionType.ADD_USER_TO_ROSTER ||
|
|
5793
|
-
this.functionType === GroupFunctionType.EDIT_ROSTER_USER_ROLE
|
|
6486
|
+
this.functionType === GroupFunctionType.EDIT_ROSTER_USER_ROLE ||
|
|
6487
|
+
this.functionType === GroupFunctionType.IMPORT_ROSTER) {
|
|
5794
6488
|
this.canReopenViewRosterModal = true;
|
|
5795
6489
|
}
|
|
5796
6490
|
});
|
|
@@ -6128,5 +6822,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
6128
6822
|
* Generated bundle index. Do not edit.
|
|
6129
6823
|
*/
|
|
6130
6824
|
|
|
6131
|
-
export { AddWorkingGroupsComponent, CreateGroupComponent, EditUserRolesComponent, FilterType, GroupAction, GroupFunctionType, GroupNode, GroupRosterType, Groups, GroupsComponent, GroupsDataSource, GroupsModule, GroupsService, GroupsValidationPatterns, ReciprocalCreditSectionComponent, RoleType, RosterExportService, RosterFunctionType, TableColumnSchemaUserGroup, TreeViewComponent, representingOrgRequiredValidator, skipWhenArray };
|
|
6825
|
+
export { AddWorkingGroupsComponent, CreateGroupComponent, EditUserRolesComponent, FilterType, GroupAction, GroupFunctionType, GroupNode, GroupRosterType, Groups, GroupsComponent, GroupsDataSource, GroupsModule, GroupsService, GroupsValidationPatterns, ReciprocalCreditSectionComponent, RoleType, RosterExportService, RosterFunctionType, RosterImportComponent, RosterImportMockScenario, RosterUploadStatus, TableColumnSchemaUserGroup, TreeViewComponent, representingOrgRequiredValidator, skipWhenArray };
|
|
6132
6826
|
//# sourceMappingURL=ieeesa-npm-groups.mjs.map
|